diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml
index 2e9eca2..6fe16c7 100644
--- a/.github/workflows/test.yml
+++ b/.github/workflows/test.yml
@@ -12,7 +12,7 @@ jobs:
strategy:
matrix:
- node-version: [14.x, 16.x, 18.x]
+ node-version: [22.x, 24.x]
steps:
- uses: actions/checkout@v3
@@ -26,7 +26,7 @@ jobs:
run: npm install
- name: Check formatting
- run: node_modules/.bin/prettier --check $(find src -type f)
+ run: npm run format:check
- name: Check lint
run: npm run lint
diff --git a/.prettierignore b/.prettierignore
new file mode 100644
index 0000000..b5555cd
--- /dev/null
+++ b/.prettierignore
@@ -0,0 +1,7 @@
+node_modules
+coverage
+dist
+dist.browser
+tmp
+npm-debug.log*
+
diff --git a/.travis.yml b/.travis.yml
index b962165..70b329a 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -1,4 +1,4 @@
language: node_js
node_js:
- - "stable"
+ - 'stable'
diff --git a/.vscode/launch.json b/.vscode/launch.json
index 19fe8b0..95b961d 100644
--- a/.vscode/launch.json
+++ b/.vscode/launch.json
@@ -11,7 +11,7 @@
"internalConsoleOptions": "neverOpen",
"disableOptimisticBPs": true,
"windows": {
- "program": "${workspaceFolder}/node_modules/jest/bin/jest",
+ "program": "${workspaceFolder}/node_modules/jest/bin/jest"
}
},
{
@@ -19,16 +19,12 @@
"request": "launch",
"name": "Jest Current File",
"program": "${workspaceFolder}/node_modules/.bin/jest",
- "args": [
- "${fileBasenameNoExtension}",
- "--config",
- "jest.config.js"
- ],
+ "args": ["${fileBasenameNoExtension}", "--config", "jest.config.js"],
"console": "integratedTerminal",
"internalConsoleOptions": "neverOpen",
"disableOptimisticBPs": true,
"windows": {
- "program": "${workspaceFolder}/node_modules/jest/bin/jest",
+ "program": "${workspaceFolder}/node_modules/jest/bin/jest"
}
}
]
diff --git a/.vscode/settings.json b/.vscode/settings.json
index 15a5edb..f2770c3 100644
--- a/.vscode/settings.json
+++ b/.vscode/settings.json
@@ -1,21 +1,21 @@
{
- "cSpell.words": [
- "Aditi",
- "Bixby",
- "Celine",
- "Conchita",
- "Giorgio",
- "Mathieu",
- "Mizuki",
- "Raveena",
- "Salli",
- "Takumi",
- "dedent",
- "implicity",
- "speechmarkdown",
- "ssml",
- "transpiled",
- "tsify",
- "uglifyjs"
- ]
-}
\ No newline at end of file
+ "cSpell.words": [
+ "Aditi",
+ "Bixby",
+ "Celine",
+ "Conchita",
+ "Giorgio",
+ "Mathieu",
+ "Mizuki",
+ "Raveena",
+ "Salli",
+ "Takumi",
+ "dedent",
+ "implicity",
+ "speechmarkdown",
+ "ssml",
+ "transpiled",
+ "tsify",
+ "uglifyjs"
+ ]
+}
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 79679c0..e557cf1 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,67 +1,88 @@
# Change Log
+
All notable changes to the speechmarkdown-js project will be documented in this file.
## 2.1.0 - (December 22, 2022)
+
### Added
+
- Support for audio captions
## 2.0.0 - (October 28, 2021)
+
### Added
+
- Support for `voice` and `language` for `google-assistant`
- Formatters for `amazon-polly`, `amazon-polly-neural`, and `microsoft-azure`
## 0.8.0-beta.0 - (July 7, 2019)
+
### Added
+
- Support for sections with the `voice` and `lang` tags
## 0.7.0-alpha.0 - (July 6, 2019)
+
### Added
+
- Support for `audio` tag
## 0.6.0-alpha.0 - (July 6, 2019)
+
### Added
+
- Support for `voice` and `lang` tags
## 0.5.0-alpha.0 - (July 5, 2019)
+
### Fixed
+
- Issue #7 - Grammar - multiple modifiers for the same text
+
### Added
+
- Grammar and formatters for standard:
- - volume / vol
- - rate
- - pitch
- - sub
- - ipa
+ - volume / vol
+ - rate
+ - pitch
+ - sub
+ - ipa
## 0.4.0-alpha.0 - (June 30, 2019)
+
### Added
+
- Update grammar and formatters for standard:
- - emphasis
- - address
- - characters / chars
- - date (skipped tests)
- - expletive / bleep
- - fraction (skipped tests)
- - interjection
- - number
- - ordinal
- - phone / telephone (skipped tests)
- - time
- - unit
- - whisper
+ - emphasis
+ - address
+ - characters / chars
+ - date (skipped tests)
+ - expletive / bleep
+ - fraction (skipped tests)
+ - interjection
+ - number
+ - ordinal
+ - phone / telephone (skipped tests)
+ - time
+ - unit
+ - whisper
- Add tests to increase coverage
## 0.3.0-alpha.0 - (June 30, 2019)
+
### Added
+
- Update grammar and formatters for emphasis short format
- Change speechmarkdown.toString(markdown) to speechmarkdown.toText(markdown)
-
## 0.2.0-alpha.0 - (June 29, 2019)
+
### Added
+
- CHANGELOG.md
### Update
-- Links in package.json
\ No newline at end of file
+
+- Links in package.json
diff --git a/CODE-OF-CONDUCT.md b/CODE-OF-CONDUCT.md
index c7d10b6..f691a60 100644
--- a/CODE-OF-CONDUCT.md
+++ b/CODE-OF-CONDUCT.md
@@ -20,4 +20,4 @@ This code of conduct provides guidance on participation in Speech Markdown-manag
- Other conduct which could reasonably be considered inappropriate in a professional setting;
- Advocating for or encouraging any of the above behaviors.
-**Enforcement and Reporting Code of Conduct Issues.** Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting opensource-codeofconduct@speechmarkdown.org. All complaints will be reviewed and investigated and will result in a response that is deemed necessary and appropriate to the circumstances.
\ No newline at end of file
+**Enforcement and Reporting Code of Conduct Issues.** Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting opensource-codeofconduct@speechmarkdown.org. All complaints will be reviewed and investigated and will result in a response that is deemed necessary and appropriate to the circumstances.
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 28d33ef..fc6ded0 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -10,11 +10,11 @@ When you submit a pull request, our team is notified and will respond as quickly
We look forward to receiving your pull requests for:
-* New content you'd like to contribute (such as new code samples or tutorials)
-* Inaccuracies in the content
-* Information gaps in the content that need more detail to be complete
-* Typos or grammatical errors
-* Suggested rewrites that improve clarity and reduce confusion
+- New content you'd like to contribute (such as new code samples or tutorials)
+- Inaccuracies in the content
+- Information gaps in the content that need more detail to be complete
+- Typos or grammatical errors
+- Suggested rewrites that improve clarity and reduce confusion
**Note:** We all write differently, and you might not like how we've written or organized something currently. We want that feedback. But please be sure that your request for a rewrite is supported by the previous criteria. If it isn't, we might decline to merge it.
@@ -45,7 +45,6 @@ In addition to written content, we really appreciate new examples and code sampl
This project has adopted the [Speech Markdown Open Source Code of Conduct](https://github.com/speechmarkdown/speechmarkdown-js/blob/master/CODE-OF-CONDUCT). Contact [opensource-codeofconduct@speechmarkdown.org](mailto:opensource-codeofconduct@speechmarkdown.org) with any additional questions or comments.
-
## Licensing
See the [LICENSE](https://github.com/speechmarkdown/speechmarkdown-js/blob/master/LICENSE) file for this project's licensing. We will ask you to confirm the licensing of your contribution. We may ask you to sign a [Contributor License Agreement (CLA)](http://en.wikipedia.org/wiki/Contributor_License_Agreement) for larger changes.
diff --git a/README.md b/README.md
index 8f78c16..c57f924 100644
--- a/README.md
+++ b/README.md
@@ -11,12 +11,19 @@ Supported platforms:
- amazon-alexa
- amazon-polly
- amazon-polly-neural
+- apple-avspeechsynthesizer
- google-assistant
+- ibm-watson
- microsoft-azure
+- microsoft-sapi
+- w3c
- samsung-bixby
+- elevenlabs
Find the architecture [here](./docs/architecture.md)
+Platform-specific SSML notes are tracked in [`docs/platforms`](./docs/platforms/README.md). Use `npm run docs:update-voices` to refresh the auto-generated voice maps in `src/formatters/data` when vendor credentials are available.
+
## Quick start
### SSML - Amazon Alexa
@@ -126,9 +133,14 @@ Available options are:
- "amazon-alexa"
- "amazon-polly"
- "amazon-polly-neural"
+ - "apple-avspeechsynthesizer"
- "google-assistant"
+ - "ibm-watson"
- "microsoft-azure"
+ - "microsoft-sapi"
+ - "w3c"
- "samsung-bixby"
+ - "elevenlabs"
- `includeFormatterComment` (boolean) - Adds an XML comment to the SSML output indicating the formatter used. Default is `false`.
@@ -179,8 +191,14 @@ The biggest place we need help right now is with the completion of the grammar a
- [x] emphasis - moderate
- [x] emphasis - none
- [x] emphasis - reduced
-- [ ] ipa
-- [ ] sub
+- [x] ipa
+- [x] sub
+
+Short-form examples:
+
+- `(pecan)/'pi.kæn/` → `pecan `
+- `(Al){aluminum}` → `Al `
+- `/ˈdeɪtə/` → `ipa `
#### Standard Format
diff --git a/docs/architecture.md b/docs/architecture.md
index ba6875d..cad7aa0 100644
--- a/docs/architecture.md
+++ b/docs/architecture.md
@@ -1,13 +1,15 @@
# Architecture
## Simple Parser
+
Instead of a simple parser architecture as shown here:

## Parser-Formatter Architecture
+
Speech Markdown is first translated into an Abstract Syntax Tree (AST) and a formatter transforms that into the correct format:

-This is more powerful as formatters have the ability to customize the output based on the differences of each platform.
\ No newline at end of file
+This is more powerful as formatters have the ability to customize the output based on the differences of each platform.
diff --git a/docs/platforms/README.md b/docs/platforms/README.md
new file mode 100644
index 0000000..a6786bc
--- /dev/null
+++ b/docs/platforms/README.md
@@ -0,0 +1,22 @@
+# Speech platform reference
+
+This directory contains reference notes about the SSML dialects that Speech Markdown targets. Each page describes:
+
+- Links to the vendor documentation for the dialect.
+- Highlights of the current Speech Markdown formatter behaviour.
+- Known gaps that are not currently translated by the formatter.
+- A generated voice catalogue summarising the voices that expose the dialect when the provider shares the data programmatically.
+
+## Available platform notes
+
+- [Amazon Polly](./amazon-polly.md)
+- [Amazon Alexa](./amazon-alexa.md)
+- [Apple AVSpeechSynthesizer](./apple-avspeechsynthesizer.md)
+- [Google Cloud Text-to-Speech](./google-cloud-tts.md)
+- [IBM Watson Text to Speech](./ibm-watson-tts.md)
+- [ElevenLabs prompt controls](./elevenlabs.md)
+- [Microsoft Azure Speech Service](./azure.md)
+- [W3C SSML](./w3c.md)
+- [Microsoft Speech API (SAPI)](./microsoft-sapi.md)
+
+Voice catalogues are produced by the helper script `npm run docs:update-voices` which gathers voice metadata from the vendor APIs when credentials are available. The generated Markdown files live alongside the service documentation so that the catalogues can be versioned with the code base.
diff --git a/docs/platforms/amazon-alexa.md b/docs/platforms/amazon-alexa.md
new file mode 100644
index 0000000..ac0f4da
--- /dev/null
+++ b/docs/platforms/amazon-alexa.md
@@ -0,0 +1,20 @@
+# Amazon Alexa SSML
+
+## Official resources
+
+- [Alexa Skills SSML reference](https://developer.amazon.com/en-US/docs/alexa/custom-skills/speech-synthesis-markup-language-ssml-reference.html)
+- [Alexa voice catalogue](https://developer.amazon.com/en-US/docs/alexa/custom-skills/choose-the-voice-for-your-skill.html)
+- [Designing with domains and emotions](https://developer.amazon.com/en-US/docs/alexa/custom-skills/speechcons-reference-interjections-for-alexa.html#expressive-ssml)
+
+## Speech Markdown formatter coverage
+
+- **Say-as rendering.** Inline modifiers such as `address`, `characters`, `date`, `interjection`, `number`, `ordinal`, `telephone`, `time`, and `unit` are mapped to `` with sensible defaults for date and time formats so Alexa pronunciation fixes can stay in Speech Markdown.【F:src/formatters/AmazonAlexaSsmlFormatter.ts†L76-L106】
+- **Amazon-specific prosody.** Speech Markdown exposes `whisper`, `amazon:domain` (`dj` and `newscaster` modifiers), and `amazon:emotion` for `excited` and `disappointed`, emitting the appropriate tags and intensity attributes that Alexa recognises.【F:src/formatters/AmazonAlexaSsmlFormatter.ts†L107-L145】【F:src/formatters/AmazonAlexaSsmlFormatter.ts†L183-L201】
+- **Voice fallback.** When a voice name is not present in the built-in whitelist, the formatter now falls back to emitting `` so newly launched Alexa voices (for example Lupe or Aria) still render without code changes.【F:src/formatters/AmazonAlexaSsmlFormatter.ts†L49-L51】【F:src/formatters/SsmlFormatterBase.ts†L44-L57】
+- **Section-level wrappers.** `lang` and `voice` section modifiers wrap larger blocks, and Speech Markdown keeps Amazon-specific `music` and `news` domains available for long-form sections.【F:src/formatters/AmazonAlexaSsmlFormatter.ts†L174-L205】
+
+## Known gaps
+
+- **Expressive extensions.** The formatter currently emits only `amazon:effect`, `amazon:domain`, and `amazon:emotion`, so features like ``, ``, ``, and the long-form `` still require manual SSML until new modifiers are defined.【F:src/formatters/AmazonAlexaSsmlFormatter.ts†L40-L46】【F:src/formatters/AmazonAlexaSsmlFormatter.ts†L183-L205】
+- **Voice metadata.** The built-in whitelist predates the expanded Alexa voice line-up and lacks locale metadata for the neural voices, so Speech Markdown relies on the new fallback behaviour instead of providing locale validation for every published voice.【F:src/formatters/AmazonAlexaSsmlFormatter.ts†L5-L33】
+- **No automated catalogue.** Unlike Azure, Google, Polly, and Watson, Alexa does not expose a public API for voice discovery, so the documentation cannot yet include a generated voice table and must be refreshed manually from the developer portal.
diff --git a/docs/platforms/amazon-polly.md b/docs/platforms/amazon-polly.md
new file mode 100644
index 0000000..3f72e40
--- /dev/null
+++ b/docs/platforms/amazon-polly.md
@@ -0,0 +1,28 @@
+# Amazon Polly SSML
+
+## Official resources
+
+- [Supported SSML tags](https://docs.aws.amazon.com/polly/latest/dg/supportedtags.html)
+- [Voice catalogue](https://docs.aws.amazon.com/polly/latest/dg/voicelist.html)
+
+## Speech Markdown formatter coverage
+
+Speech Markdown ships two formatters for Amazon Polly.
+
+### `amazon-polly` (standard engine)
+
+- **Say-as pronunciations.** Modifiers such as `address`, `cardinal`, `characters`, `digits`, `fraction`, `number`, `ordinal`, `telephone`, and `unit` render as `` with sensible defaults for dates and times, mirroring Polly's SSML support.【F:src/formatters/AmazonPollySsmlFormatter.ts†L47-L72】
+- **Pronunciation controls.** The formatter exposes ``, ``, and `` so aliasing, IPA phonemes, and rate, pitch, or volume adjustments can be driven from Speech Markdown.【F:src/formatters/AmazonPollySsmlFormatter.ts†L78-L93】
+- **Amazon-specific effects.** Polly-only modifiers such as `whisper`, `timbre`, and `drc` produce `amazon:effect` tags, while inline `lang` modifiers wrap content in `` for mixed-language prompts.【F:src/formatters/AmazonPollySsmlFormatter.ts†L74-L105】
+- **Known gaps.** Inline `voice`, `excited`, and `disappointed` modifiers are defined but intentionally left without SSML output, and section-level variants such as `newscaster` are also ignored, so these behaviours still require manual SSML.【F:src/formatters/AmazonPollySsmlFormatter.ts†L107-L151】
+
+### `amazon-polly-neural`
+
+- **Shared say-as handling.** The neural formatter mirrors the standard engine for `address`, `characters`, `digits`, `fraction`, `number`, `ordinal`, `telephone`, `unit`, `date`, and `time` modifiers so pronunciation fixes work across both engines.【F:src/formatters/AmazonPollyNeuralSsmlFormatter.ts†L41-L67】
+- **Pronunciation helpers.** `sub`, `ipa`, and the rate or volume prosody controls are preserved, and `lang` plus `drc` continue to emit `` and `amazon:effect` tags respectively.【F:src/formatters/AmazonPollyNeuralSsmlFormatter.ts†L69-L91】
+- **Neural-only domains.** Section-level `newscaster` modifiers wrap content in `` to reach Polly's neural news style.【F:src/formatters/AmazonPollyNeuralSsmlFormatter.ts†L115-L134】
+- **Known gaps.** Neural voices do not currently expose `emphasis`, `whisper`, `voice`, `excited`, or `disappointed` output because the formatter drops those modifiers, matching the limitations of Polly's neural styles.【F:src/formatters/AmazonPollyNeuralSsmlFormatter.ts†L93-L145】
+
+## Voice catalogue
+
+Run `npm run docs:update-voices` with either `AWS_ACCESS_KEY_ID`/`AWS_SECRET_ACCESS_KEY` plus `AWS_REGION` (or `AWS_DEFAULT_REGION`) or the `POLLY_AWS_KEY_ID`/`POLLY_AWS_ACCESS_KEY`/`POLLY_REGION` equivalents to regenerate `data/amazon-polly-voices.md`. The helper script calls Polly's `ListVoices` API (with additional language codes enabled) and writes a Markdown table of each voice's identifier, language, gender, and supported engines so formatter validations stay aligned with Amazon's inventory.
diff --git a/docs/platforms/apple-avspeechsynthesizer.md b/docs/platforms/apple-avspeechsynthesizer.md
new file mode 100644
index 0000000..dfb06a1
--- /dev/null
+++ b/docs/platforms/apple-avspeechsynthesizer.md
@@ -0,0 +1,14 @@
+# Apple AVSpeechSynthesizer voices
+
+## Official resources
+
+- [AVSpeechSynthesizer documentation](https://developer.apple.com/documentation/avfaudio/avspeechsynthesizer)
+- [SSML support overview](https://developer.apple.com/documentation/avfoundation/speech_synthesis)
+
+## Speech Markdown status
+
+Speech Markdown now exposes an AVSpeechSynthesizer formatter that focuses on the subset of SSML Apple accepts. The formatter enables `say-as` for characters and numbers, preserves substitution and IPA hints, and keeps voice selections in the output while intentionally ignoring unsupported prosody keys such as `rate`, `pitch`, `volume`, and `whisper` so AVSpeechSynthesizer falls back to native utterance configuration.【F:src/formatters/FormatterFactory.ts†L1-L39】【F:src/formatters/AppleAvSpeechSynthesizerSsmlFormatter.ts†L6-L136】
+
+## Voice catalogue
+
+macOS, iOS, and iPadOS ship a large number of built-in system voices that vary by OS version and user downloads. The helper script can create or refresh `data/apple-avspeechsynthesizer-voices.md` as a staging area for curated lists gathered from `AVSpeechSynthesisVoice.speechVoices()` output when maintainers have access to Apple hardware. Export the array to JSON (for example using a small Swift snippet) and set `APPLE_VOICE_EXPORT` before running `npm run docs:update-voices` to update the table.
diff --git a/docs/platforms/azure.md b/docs/platforms/azure.md
new file mode 100644
index 0000000..cdebde1
--- /dev/null
+++ b/docs/platforms/azure.md
@@ -0,0 +1,25 @@
+# Microsoft Azure Speech Service SSML
+
+## Official resources
+
+- [SSML structure reference](https://learn.microsoft.com/azure/ai-services/speech-service/speech-synthesis-markup-structure)
+- [Voice gallery](https://learn.microsoft.com/azure/ai-services/speech-service/language-support?tabs=tts)
+
+## Speech Markdown formatter coverage
+
+Speech Markdown's `microsoft-azure` formatter layers Azure-specific behaviour on top of the shared SSML mapping:
+
+- **Say-as conversions.** Speech Markdown forwards modifiers such as `address`, `fraction`, `ordinal`, `telephone`, `number`, and `characters` to `` while automatically choosing `cardinal` or `digits` for numeric text.【F:src/formatters/MicrosoftAzureSsmlFormatter.ts†L9-L48】
+- **Dates and times.** The formatter emits `` and `` with Azure's default `ymd` and `hms12` formats when no explicit format is supplied.【F:src/formatters/MicrosoftAzureSsmlFormatter.ts†L49-L58】
+- **Pronunciation helpers.** `sub` and `ipa` modifiers become `` and ``, letting authors control pronunciation directly from Speech Markdown.【F:src/formatters/MicrosoftAzureSsmlFormatter.ts†L59-L66】
+- **Prosody and whispering.** Rate, pitch, and volume modifiers augment `` tags, and the `whisper` modifier approximates whispered delivery with `volume="x-soft"` and `rate="slow"` settings as recommended by Microsoft.【F:src/formatters/MicrosoftAzureSsmlFormatter.ts†L22-L27】【F:src/formatters/MicrosoftAzureSsmlFormatter.ts†L67-L75】
+- **Voice and style selection.** Inline `voice` modifiers add `` tags, and the section-level `newscaster` modifier wraps content in `` so maintainers can target Azure's neural styles.【F:src/formatters/MicrosoftAzureSsmlFormatter.ts†L23-L27】【F:src/formatters/MicrosoftAzureSsmlFormatter.ts†L76-L103】
+
+### Unsupported or manual features
+
+- The formatter explicitly disables Azure-only constructs such as `emphasis`, `expletive`, `interjection`, and `unit`, so those modifiers currently do not produce SSML output.【F:src/formatters/MicrosoftAzureSsmlFormatter.ts†L8-L17】
+- Additional expressive behaviours—including `excited`, `disappointed`, and other MSTTS styles—remain unmapped because the shared SSML base leaves those modifiers set to `null` pending future design work.【F:src/formatters/SsmlFormatterBase.ts†L63-L86】
+
+## Voice catalogue
+
+The generated catalogue `data/azure-voices.md` is produced by `npm run docs:update-voices` when either `AZURE_SPEECH_KEY`/`AZURE_SPEECH_REGION` or `MICROSOFT_TOKEN`/`MICROSOFT_REGION` environment variables are supplied. The file lists every voice name, locale, gender, type, style, and sample rate returned by the Speech Service REST API so that formatter validations can remain current.
diff --git a/docs/platforms/elevenlabs.md b/docs/platforms/elevenlabs.md
new file mode 100644
index 0000000..53a0ef9
--- /dev/null
+++ b/docs/platforms/elevenlabs.md
@@ -0,0 +1,19 @@
+# ElevenLabs prompt controls
+
+- **Vendor documentation:** [Prompt controls reference](https://elevenlabs.io/docs/best-practices/prompting/controls)
+- **Formatter entry point:** `platform: 'elevenlabs'`
+
+## Implemented Speech Markdown features
+
+The ElevenLabs API does not accept full SSML documents. The formatter therefore emits plain text with the inline tags that the service recognises:
+
+- `[break:""]` → ` `
+- `[break:""]` → ` ` with strength values mapped to approximate second values the engine accepts (`none` → `0s`, `x-weak` → `0.2s`, `weak` → `0.35s`, `medium` → `0.5s`, `strong` → `0.8s`, `x-strong` → `1.2s`).
+- `(word)[ipa:""]` → `word `
+
+All other Speech Markdown modifiers fall back to plain text because ElevenLabs relies on narrative prompting rather than SSML equivalents for emphasis, say-as, or voice selection.
+
+## Notes
+
+- ElevenLabs does not publish a programmatic voice catalogue. The formatter expects the caller to choose a voice through the API request payload instead of inside the generated prompt.
+- The formatter honours `includeFormatterComment` by inserting an HTML comment at the start of the prompt, but `includeSpeakTag` and `includeParagraphTag` are ignored because the target does not support container tags.
diff --git a/docs/platforms/google-cloud-tts.md b/docs/platforms/google-cloud-tts.md
new file mode 100644
index 0000000..81261ec
--- /dev/null
+++ b/docs/platforms/google-cloud-tts.md
@@ -0,0 +1,25 @@
+# Google Cloud Text-to-Speech SSML
+
+## Official resources
+
+- [SSML reference](https://cloud.google.com/text-to-speech/docs/ssml)
+- [Voice list](https://cloud.google.com/text-to-speech/docs/voices)
+
+## Speech Markdown formatter coverage
+
+Speech Markdown's `google-assistant` formatter targets the SSML dialect that Google Cloud Text-to-Speech accepts:
+
+- **Emphasis and say-as mappings.** Modifiers like `emphasis`, `address`, `fraction`, `number`, `ordinal`, `telephone`, and `unit` map to `` or `` tags so common pronunciations flow through automatically.【F:src/formatters/GoogleAssistantSsmlFormatter.ts†L25-L49】
+- **Date and time formatting.** Speech Markdown emits `` and `` with Google's default `ymd` and `hms12` formats unless authors override them.【F:src/formatters/GoogleAssistantSsmlFormatter.ts†L50-L57】
+- **Pronunciation control.** `sub` and `ipa` generate `` and `` tags respectively, while rate, pitch, and volume modifiers augment `` and the `whisper` modifier applies Google's recommended soft volume and slow rate.【F:src/formatters/GoogleAssistantSsmlFormatter.ts†L58-L77】
+- **Language and voice selection.** Inline and section-level `lang` modifiers wrap content in ``, and `voice` modifiers delegate to the formatter's built-in voice catalogue so that canonical Google Assistant names resolve without manual SSML.【F:src/formatters/GoogleAssistantSsmlFormatter.ts†L20-L35】【F:src/formatters/GoogleAssistantSsmlFormatter.ts†L78-L113】
+
+### Unsupported or manual features
+
+- The formatter disables the `interjection` modifier because Google Cloud's SSML does not provide a direct equivalent today.【F:src/formatters/GoogleAssistantSsmlFormatter.ts†L24-L27】
+- Speech Markdown still ships an older, hard-coded `validVoices` map that only covers the legacy Assistant inventory, so Cloud TTS voices such as WaveNet, Neural2, Studio, and Polyglot variants require manual SSML until the formatter is updated to query the modern voice list.【F:src/formatters/GoogleAssistantSsmlFormatter.ts†L6-L34】
+- Expressive domains like `newscaster`, `excited`, or `disappointed` fall back to raw text because those modifiers are left unset in the shared SSML base pending a Google-specific design.【F:src/formatters/SsmlFormatterBase.ts†L63-L86】
+
+## Voice catalogue
+
+Run `npm run docs:update-voices` with a `GOOGLE_TTS_API_KEY` to regenerate `data/google-cloud-voices.md`. The generated table captures the voice name, languages, gender, and natural sample rate returned by the Text-to-Speech REST API so that formatter validation can keep pace with Google's evolving inventory.
diff --git a/docs/platforms/ibm-watson-tts.md b/docs/platforms/ibm-watson-tts.md
new file mode 100644
index 0000000..3b70a5f
--- /dev/null
+++ b/docs/platforms/ibm-watson-tts.md
@@ -0,0 +1,14 @@
+# IBM Watson Text to Speech SSML
+
+## Official resources
+
+- [SSML documentation](https://cloud.ibm.com/apidocs/text-to-speech#synthesize)
+- [Voice list](https://cloud.ibm.com/docs/text-to-speech?topic=text-to-speech-voices)
+
+## Speech Markdown status
+
+Speech Markdown now ships an IBM Watson formatter that translates the core modifiers into Watson-compatible SSML. The implementation covers `say-as`, `sub`, `phoneme`, `emphasis`, and prosody attributes, while leaving Watson-exclusive constructs such as `` or voice transformations untouched so the generated markup stays within the documented subset of the service.【F:src/formatters/FormatterFactory.ts†L1-L39】【F:src/formatters/IbmWatsonSsmlFormatter.ts†L6-L213】
+
+## Voice catalogue
+
+Provide `WATSON_TTS_URL` (e.g. `https://api.us-south.text-to-speech.watson.cloud.ibm.com`) and `WATSON_TTS_API_KEY` to `npm run docs:update-voices` to refresh `data/ibm-watson-voices.md`. The script queries `/v1/voices` and writes a Markdown table that includes each voice's name, language, gender, and available expressive features so formatter validations can be cross-checked.
diff --git a/docs/platforms/microsoft-sapi.md b/docs/platforms/microsoft-sapi.md
new file mode 100644
index 0000000..f61e39a
--- /dev/null
+++ b/docs/platforms/microsoft-sapi.md
@@ -0,0 +1,13 @@
+# Microsoft Speech API (SAPI) voices
+
+## Official resources
+
+- [SAPI 5 XML reference]()
+
+## Speech Markdown status
+
+Speech Markdown routes Microsoft SAPI output through the shared W3C formatter so the generated SSML stays aligned with the [W3C Speech Synthesis Recommendation](https://www.w3.org/TR/speech-synthesis/). The shared formatter covers emphasis, `say-as`, prosody, phonemes, `lang`, and voice tags and falls back to `` when a voice is not present in the configured catalogue.【F:src/formatters/W3cSsmlFormatter.ts†L1-L210】 The SAPI adapter simply reuses that implementation while swapping the formatter comment so maintainers can tell the target engine in generated markup.【F:src/formatters/MicrosoftSapiSsmlFormatter.ts†L1-L11】【F:src/formatters/FormatterFactory.ts†L1-L40】 Unsupported Speech Markdown modifiers such as whisper effects or vendor-specific styles are ignored because the W3C dialect does not define them.
+
+## Voice catalogue
+
+SAPI voice availability is determined by the voices installed on the host machine. Developers can enumerate the voices locally via PowerShell (`Get-SPVoice`) or .NET (`SpeechSynthesizer.GetInstalledVoices()`). Documenting the complete list in-repo is impractical because it varies by Windows SKU and third-party voice packs. When maintainers export the installed voices to JSON (for example `Get-InstalledVoices | ConvertTo-Json > voices.json`) and set `SAPI_VOICE_EXPORT` to that file, `npm run docs:update-voices` will regenerate `data/microsoft-sapi-voices.md` with the captured baseline.
diff --git a/docs/platforms/w3c.md b/docs/platforms/w3c.md
new file mode 100644
index 0000000..63ff99a
--- /dev/null
+++ b/docs/platforms/w3c.md
@@ -0,0 +1,20 @@
+# W3C SSML
+
+## Official resources
+
+- [Speech Synthesis Markup Language (SSML) Version 1.1 Recommendation](https://www.w3.org/TR/speech-synthesis/)
+
+## Speech Markdown status
+
+Speech Markdown exposes a `w3c` formatter that emits spec-compliant SSML and serves as the foundation for engines that consume the standard, including Microsoft SAPI.【F:src/formatters/W3cSsmlFormatter.ts†L1-L210】【F:src/formatters/FormatterFactory.ts†L1-L40】 The formatter supports:
+
+- `` with optional level fallbacks when not supplied in the markup.
+- `` for numbers, digits, addresses, dates, times, ordinals, interjections, expletives, telephone numbers, and generic units.
+- `` attributes for rate, pitch, and volume adjustments on the same element.
+- `` for IPA transcriptions.
+- `` substitutions.
+- `` wrappers at inline and section scope.
+- `` tags driven by configured catalogues, with a fallback to `name="…"` for unlisted voices.
+- `` and `` elements produced by the Speech Markdown grammar.
+
+Unsupported Speech Markdown modifiers simply fall through so that the formatter does not generate non-standard tags when the Recommendation does not define an equivalent. When additional W3C features such as `` become exposed through Speech Markdown they can be added in the same formatter.
diff --git a/jest.config.js b/jest.config.js
index a839d46..6a1c2f3 100644
--- a/jest.config.js
+++ b/jest.config.js
@@ -1,20 +1,10 @@
module.exports = {
testEnvironment: 'node',
transform: {
- "^.+\\.tsx?$": "ts-jest"
+ '^.+\\.tsx?$': 'ts-jest',
},
- moduleFileExtensions: [
- "ts",
- "tsx",
- "js",
- "jsx",
- "json",
- "node",
- ],
+ moduleFileExtensions: ['ts', 'tsx', 'js', 'jsx', 'json', 'node'],
testRegex: '(/tests/.*|(\\.|/)(test|spec))\\.(ts|js)x?$',
coverageDirectory: 'coverage',
- collectCoverageFrom: [
- 'src/**/*.{ts,tsx,js,jsx}',
- '!src/**/*.d.ts',
- ],
+ collectCoverageFrom: ['src/**/*.{ts,tsx,js,jsx}', '!src/**/*.d.ts'],
};
diff --git a/package-lock.json b/package-lock.json
index af4f7d3..d9ebd95 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,40 +1,84 @@
{
"name": "speechmarkdown-js",
- "version": "2.1.0",
- "lockfileVersion": 1,
+ "version": "2.1.1",
+ "lockfileVersion": 3,
"requires": true,
- "dependencies": {
- "@ampproject/remapping": {
+ "packages": {
+ "": {
+ "name": "speechmarkdown-js",
+ "version": "2.1.1",
+ "license": "MIT",
+ "dependencies": {
+ "myna-parser": "^2.5.1",
+ "tslib": "^1.10.0"
+ },
+ "devDependencies": {
+ "@types/jest": "^24.0.18",
+ "@types/node": "^12.7.11",
+ "acorn": ">=5.7.4",
+ "aws4": "^1.13.2",
+ "browserify": "^16.5.0",
+ "https-proxy-agent": "^7.0.6",
+ "jest": "^29.3.1",
+ "npm-run-all": "^4.1.5",
+ "prettier": "^2.8.8",
+ "rimraf": "^3.0.0",
+ "ts-dedent": "^1.1.0",
+ "ts-jest": "^29.0.3",
+ "tsify": "^4.0.1",
+ "tslint": "^5.20.0",
+ "tslint-config-prettier": "1.18.0",
+ "tsutils": "^3.17.1",
+ "typescript": "^4.9.4",
+ "uglify-js": "^3.6.0"
+ },
+ "engines": {
+ "node": ">= 22"
+ }
+ },
+ "node_modules/@ampproject/remapping": {
"version": "2.2.0",
"resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz",
"integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==",
"dev": true,
- "requires": {
+ "dependencies": {
"@jridgewell/gen-mapping": "^0.1.0",
"@jridgewell/trace-mapping": "^0.3.9"
+ },
+ "engines": {
+ "node": ">=6.0.0"
}
},
- "@babel/code-frame": {
- "version": "7.18.6",
- "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz",
- "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==",
+ "node_modules/@babel/code-frame": {
+ "version": "7.27.1",
+ "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.27.1.tgz",
+ "integrity": "sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==",
"dev": true,
- "requires": {
- "@babel/highlight": "^7.18.6"
+ "license": "MIT",
+ "dependencies": {
+ "@babel/helper-validator-identifier": "^7.27.1",
+ "js-tokens": "^4.0.0",
+ "picocolors": "^1.1.1"
+ },
+ "engines": {
+ "node": ">=6.9.0"
}
},
- "@babel/compat-data": {
+ "node_modules/@babel/compat-data": {
"version": "7.20.5",
"resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.20.5.tgz",
"integrity": "sha512-KZXo2t10+/jxmkhNXc7pZTqRvSOIvVv/+lJwHS+B2rErwOyjuVRh60yVpb7liQ1U5t7lLJ1bz+t8tSypUZdm0g==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=6.9.0"
+ }
},
- "@babel/core": {
+ "node_modules/@babel/core": {
"version": "7.20.5",
"resolved": "https://registry.npmjs.org/@babel/core/-/core-7.20.5.tgz",
"integrity": "sha512-UdOWmk4pNWTm/4DlPUl/Pt4Gz4rcEMb7CY0Y3eJl5Yz1vI8ZJGmHWaVE55LoxRjdpx0z259GE9U5STA9atUinQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"@ampproject/remapping": "^2.1.0",
"@babel/code-frame": "^7.18.6",
"@babel/generator": "^7.20.5",
@@ -51,99 +95,117 @@
"json5": "^2.2.1",
"semver": "^6.3.0"
},
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/babel"
+ }
+ },
+ "node_modules/@babel/core/node_modules/semver": {
+ "version": "6.3.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+ "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
+ "dev": true,
+ "license": "ISC",
+ "bin": {
+ "semver": "bin/semver.js"
+ }
+ },
+ "node_modules/@babel/generator": {
+ "version": "7.28.3",
+ "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.28.3.tgz",
+ "integrity": "sha512-3lSpxGgvnmZznmBkCRnVREPUFJv2wrv9iAoFDvADJc0ypmdOxdUtcLeBgBJ6zE0PMeTKnxeQzyk0xTBq4Ep7zw==",
+ "dev": true,
+ "license": "MIT",
"dependencies": {
- "semver": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
- "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
- "dev": true
- }
+ "@babel/parser": "^7.28.3",
+ "@babel/types": "^7.28.2",
+ "@jridgewell/gen-mapping": "^0.3.12",
+ "@jridgewell/trace-mapping": "^0.3.28",
+ "jsesc": "^3.0.2"
+ },
+ "engines": {
+ "node": ">=6.9.0"
}
},
- "@babel/generator": {
- "version": "7.20.5",
- "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.5.tgz",
- "integrity": "sha512-jl7JY2Ykn9S0yj4DQP82sYvPU+T3g0HFcWTqDLqiuA9tGRNIj9VfbtXGAYTTkyNEnQk1jkMGOdYka8aG/lulCA==",
+ "node_modules/@babel/generator/node_modules/@jridgewell/gen-mapping": {
+ "version": "0.3.13",
+ "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz",
+ "integrity": "sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==",
"dev": true,
- "requires": {
- "@babel/types": "^7.20.5",
- "@jridgewell/gen-mapping": "^0.3.2",
- "jsesc": "^2.5.1"
- },
- "dependencies": {
- "@jridgewell/gen-mapping": {
- "version": "0.3.2",
- "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz",
- "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==",
- "dev": true,
- "requires": {
- "@jridgewell/set-array": "^1.0.1",
- "@jridgewell/sourcemap-codec": "^1.4.10",
- "@jridgewell/trace-mapping": "^0.3.9"
- }
- }
+ "license": "MIT",
+ "dependencies": {
+ "@jridgewell/sourcemap-codec": "^1.5.0",
+ "@jridgewell/trace-mapping": "^0.3.24"
}
},
- "@babel/helper-compilation-targets": {
+ "node_modules/@babel/helper-compilation-targets": {
"version": "7.20.0",
"resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.0.tgz",
"integrity": "sha512-0jp//vDGp9e8hZzBc6N/KwA5ZK3Wsm/pfm4CrY7vzegkVxc65SgSn6wYOnwHe9Js9HRQ1YTCKLGPzDtaS3RoLQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"@babel/compat-data": "^7.20.0",
"@babel/helper-validator-option": "^7.18.6",
"browserslist": "^4.21.3",
"semver": "^6.3.0"
},
- "dependencies": {
- "semver": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
- "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
- "dev": true
- }
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0"
}
},
- "@babel/helper-environment-visitor": {
+ "node_modules/@babel/helper-compilation-targets/node_modules/semver": {
+ "version": "6.3.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+ "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
+ "dev": true,
+ "license": "ISC",
+ "bin": {
+ "semver": "bin/semver.js"
+ }
+ },
+ "node_modules/@babel/helper-environment-visitor": {
"version": "7.18.9",
"resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz",
"integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==",
- "dev": true
- },
- "@babel/helper-function-name": {
- "version": "7.19.0",
- "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz",
- "integrity": "sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==",
"dev": true,
- "requires": {
- "@babel/template": "^7.18.10",
- "@babel/types": "^7.19.0"
+ "engines": {
+ "node": ">=6.9.0"
}
},
- "@babel/helper-hoist-variables": {
- "version": "7.18.6",
- "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz",
- "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==",
+ "node_modules/@babel/helper-globals": {
+ "version": "7.28.0",
+ "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.28.0.tgz",
+ "integrity": "sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==",
"dev": true,
- "requires": {
- "@babel/types": "^7.18.6"
+ "license": "MIT",
+ "engines": {
+ "node": ">=6.9.0"
}
},
- "@babel/helper-module-imports": {
+ "node_modules/@babel/helper-module-imports": {
"version": "7.18.6",
"resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz",
"integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==",
"dev": true,
- "requires": {
+ "dependencies": {
"@babel/types": "^7.18.6"
+ },
+ "engines": {
+ "node": ">=6.9.0"
}
},
- "@babel/helper-module-transforms": {
+ "node_modules/@babel/helper-module-transforms": {
"version": "7.20.2",
"resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.20.2.tgz",
"integrity": "sha512-zvBKyJXRbmK07XhMuujYoJ48B5yvvmM6+wcpv6Ivj4Yg6qO7NOZOSnvZN9CRl1zz1Z4cKf8YejmCMh8clOoOeA==",
"dev": true,
- "requires": {
+ "dependencies": {
"@babel/helper-environment-visitor": "^7.18.9",
"@babel/helper-module-imports": "^7.18.6",
"@babel/helper-simple-access": "^7.20.2",
@@ -152,275 +214,365 @@
"@babel/template": "^7.18.10",
"@babel/traverse": "^7.20.1",
"@babel/types": "^7.20.2"
+ },
+ "engines": {
+ "node": ">=6.9.0"
}
},
- "@babel/helper-plugin-utils": {
+ "node_modules/@babel/helper-plugin-utils": {
"version": "7.20.2",
"resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz",
"integrity": "sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=6.9.0"
+ }
},
- "@babel/helper-simple-access": {
+ "node_modules/@babel/helper-simple-access": {
"version": "7.20.2",
"resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz",
"integrity": "sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==",
"dev": true,
- "requires": {
+ "dependencies": {
"@babel/types": "^7.20.2"
+ },
+ "engines": {
+ "node": ">=6.9.0"
}
},
- "@babel/helper-split-export-declaration": {
+ "node_modules/@babel/helper-split-export-declaration": {
"version": "7.18.6",
"resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz",
"integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==",
"dev": true,
- "requires": {
+ "dependencies": {
"@babel/types": "^7.18.6"
+ },
+ "engines": {
+ "node": ">=6.9.0"
}
},
- "@babel/helper-string-parser": {
- "version": "7.19.4",
- "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz",
- "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==",
- "dev": true
+ "node_modules/@babel/helper-string-parser": {
+ "version": "7.27.1",
+ "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz",
+ "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6.9.0"
+ }
},
- "@babel/helper-validator-identifier": {
- "version": "7.19.1",
- "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz",
- "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==",
- "dev": true
+ "node_modules/@babel/helper-validator-identifier": {
+ "version": "7.27.1",
+ "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.27.1.tgz",
+ "integrity": "sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6.9.0"
+ }
},
- "@babel/helper-validator-option": {
+ "node_modules/@babel/helper-validator-option": {
"version": "7.18.6",
"resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz",
"integrity": "sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==",
- "dev": true
- },
- "@babel/helpers": {
- "version": "7.20.6",
- "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.20.6.tgz",
- "integrity": "sha512-Pf/OjgfgFRW5bApskEz5pvidpim7tEDPlFtKcNRXWmfHGn9IEI2W2flqRQXTFb7gIPTyK++N6rVHuwKut4XK6w==",
"dev": true,
- "requires": {
- "@babel/template": "^7.18.10",
- "@babel/traverse": "^7.20.5",
- "@babel/types": "^7.20.5"
+ "engines": {
+ "node": ">=6.9.0"
}
},
- "@babel/highlight": {
- "version": "7.18.6",
- "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz",
- "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==",
+ "node_modules/@babel/helpers": {
+ "version": "7.28.4",
+ "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.28.4.tgz",
+ "integrity": "sha512-HFN59MmQXGHVyYadKLVumYsA9dBFun/ldYxipEjzA4196jpLZd8UjEEBLkbEkvfYreDqJhZxYAWFPtrfhNpj4w==",
"dev": true,
- "requires": {
- "@babel/helper-validator-identifier": "^7.18.6",
- "chalk": "^2.0.0",
- "js-tokens": "^4.0.0"
+ "license": "MIT",
+ "dependencies": {
+ "@babel/template": "^7.27.2",
+ "@babel/types": "^7.28.4"
+ },
+ "engines": {
+ "node": ">=6.9.0"
}
},
- "@babel/parser": {
- "version": "7.20.5",
- "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.5.tgz",
- "integrity": "sha512-r27t/cy/m9uKLXQNWWebeCUHgnAZq0CpG1OwKRxzJMP1vpSU4bSIK2hq+/cp0bQxetkXx38n09rNu8jVkcK/zA==",
- "dev": true
+ "node_modules/@babel/parser": {
+ "version": "7.28.4",
+ "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.28.4.tgz",
+ "integrity": "sha512-yZbBqeM6TkpP9du/I2pUZnJsRMGGvOuIrhjzC1AwHwW+6he4mni6Bp/m8ijn0iOuZuPI2BfkCoSRunpyjnrQKg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/types": "^7.28.4"
+ },
+ "bin": {
+ "parser": "bin/babel-parser.js"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ }
},
- "@babel/plugin-syntax-async-generators": {
+ "node_modules/@babel/plugin-syntax-async-generators": {
"version": "7.8.4",
"resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz",
"integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==",
"dev": true,
- "requires": {
+ "dependencies": {
"@babel/helper-plugin-utils": "^7.8.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
}
},
- "@babel/plugin-syntax-bigint": {
+ "node_modules/@babel/plugin-syntax-bigint": {
"version": "7.8.3",
"resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz",
"integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==",
"dev": true,
- "requires": {
+ "dependencies": {
"@babel/helper-plugin-utils": "^7.8.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
}
},
- "@babel/plugin-syntax-class-properties": {
+ "node_modules/@babel/plugin-syntax-class-properties": {
"version": "7.12.13",
"resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz",
"integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==",
"dev": true,
- "requires": {
+ "dependencies": {
"@babel/helper-plugin-utils": "^7.12.13"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
}
},
- "@babel/plugin-syntax-import-meta": {
+ "node_modules/@babel/plugin-syntax-import-meta": {
"version": "7.10.4",
"resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz",
"integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==",
"dev": true,
- "requires": {
+ "dependencies": {
"@babel/helper-plugin-utils": "^7.10.4"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
}
},
- "@babel/plugin-syntax-json-strings": {
+ "node_modules/@babel/plugin-syntax-json-strings": {
"version": "7.8.3",
"resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz",
"integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==",
"dev": true,
- "requires": {
+ "dependencies": {
"@babel/helper-plugin-utils": "^7.8.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
}
},
- "@babel/plugin-syntax-jsx": {
+ "node_modules/@babel/plugin-syntax-jsx": {
"version": "7.18.6",
"resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.18.6.tgz",
"integrity": "sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q==",
"dev": true,
- "requires": {
+ "dependencies": {
"@babel/helper-plugin-utils": "^7.18.6"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
}
},
- "@babel/plugin-syntax-logical-assignment-operators": {
+ "node_modules/@babel/plugin-syntax-logical-assignment-operators": {
"version": "7.10.4",
"resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz",
"integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==",
"dev": true,
- "requires": {
+ "dependencies": {
"@babel/helper-plugin-utils": "^7.10.4"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
}
},
- "@babel/plugin-syntax-nullish-coalescing-operator": {
+ "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": {
"version": "7.8.3",
"resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz",
"integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"@babel/helper-plugin-utils": "^7.8.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
}
},
- "@babel/plugin-syntax-numeric-separator": {
+ "node_modules/@babel/plugin-syntax-numeric-separator": {
"version": "7.10.4",
"resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz",
"integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==",
"dev": true,
- "requires": {
+ "dependencies": {
"@babel/helper-plugin-utils": "^7.10.4"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
}
},
- "@babel/plugin-syntax-object-rest-spread": {
+ "node_modules/@babel/plugin-syntax-object-rest-spread": {
"version": "7.8.3",
"resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz",
"integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==",
"dev": true,
- "requires": {
+ "dependencies": {
"@babel/helper-plugin-utils": "^7.8.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
}
},
- "@babel/plugin-syntax-optional-catch-binding": {
+ "node_modules/@babel/plugin-syntax-optional-catch-binding": {
"version": "7.8.3",
"resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz",
"integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==",
"dev": true,
- "requires": {
+ "dependencies": {
"@babel/helper-plugin-utils": "^7.8.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
}
},
- "@babel/plugin-syntax-optional-chaining": {
+ "node_modules/@babel/plugin-syntax-optional-chaining": {
"version": "7.8.3",
"resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz",
"integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==",
"dev": true,
- "requires": {
+ "dependencies": {
"@babel/helper-plugin-utils": "^7.8.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
}
},
- "@babel/plugin-syntax-top-level-await": {
+ "node_modules/@babel/plugin-syntax-top-level-await": {
"version": "7.14.5",
"resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz",
"integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==",
"dev": true,
- "requires": {
+ "dependencies": {
"@babel/helper-plugin-utils": "^7.14.5"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
}
},
- "@babel/plugin-syntax-typescript": {
+ "node_modules/@babel/plugin-syntax-typescript": {
"version": "7.20.0",
"resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.20.0.tgz",
"integrity": "sha512-rd9TkG+u1CExzS4SM1BlMEhMXwFLKVjOAFFCDx9PbX5ycJWDoWMcwdJH9RhkPu1dOgn5TrxLot/Gx6lWFuAUNQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"@babel/helper-plugin-utils": "^7.19.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0-0"
}
},
- "@babel/template": {
- "version": "7.18.10",
- "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.10.tgz",
- "integrity": "sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==",
+ "node_modules/@babel/template": {
+ "version": "7.27.2",
+ "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.2.tgz",
+ "integrity": "sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw==",
"dev": true,
- "requires": {
- "@babel/code-frame": "^7.18.6",
- "@babel/parser": "^7.18.10",
- "@babel/types": "^7.18.10"
+ "license": "MIT",
+ "dependencies": {
+ "@babel/code-frame": "^7.27.1",
+ "@babel/parser": "^7.27.2",
+ "@babel/types": "^7.27.1"
+ },
+ "engines": {
+ "node": ">=6.9.0"
}
},
- "@babel/traverse": {
- "version": "7.20.5",
- "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.5.tgz",
- "integrity": "sha512-WM5ZNN3JITQIq9tFZaw1ojLU3WgWdtkxnhM1AegMS+PvHjkM5IXjmYEGY7yukz5XS4sJyEf2VzWjI8uAavhxBQ==",
+ "node_modules/@babel/traverse": {
+ "version": "7.28.4",
+ "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.28.4.tgz",
+ "integrity": "sha512-YEzuboP2qvQavAcjgQNVgsvHIDv6ZpwXvcvjmyySP2DIMuByS/6ioU5G9pYrWHM6T2YDfc7xga9iNzYOs12CFQ==",
"dev": true,
- "requires": {
- "@babel/code-frame": "^7.18.6",
- "@babel/generator": "^7.20.5",
- "@babel/helper-environment-visitor": "^7.18.9",
- "@babel/helper-function-name": "^7.19.0",
- "@babel/helper-hoist-variables": "^7.18.6",
- "@babel/helper-split-export-declaration": "^7.18.6",
- "@babel/parser": "^7.20.5",
- "@babel/types": "^7.20.5",
- "debug": "^4.1.0",
- "globals": "^11.1.0"
+ "license": "MIT",
+ "dependencies": {
+ "@babel/code-frame": "^7.27.1",
+ "@babel/generator": "^7.28.3",
+ "@babel/helper-globals": "^7.28.0",
+ "@babel/parser": "^7.28.4",
+ "@babel/template": "^7.27.2",
+ "@babel/types": "^7.28.4",
+ "debug": "^4.3.1"
+ },
+ "engines": {
+ "node": ">=6.9.0"
}
},
- "@babel/types": {
- "version": "7.20.5",
- "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.20.5.tgz",
- "integrity": "sha512-c9fst/h2/dcF7H+MJKZ2T0KjEQ8hY/BNnDk/H3XY8C4Aw/eWQXWn/lWntHF9ooUBnGmEvbfGrTgLWc+um0YDUg==",
+ "node_modules/@babel/types": {
+ "version": "7.28.4",
+ "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.28.4.tgz",
+ "integrity": "sha512-bkFqkLhh3pMBUQQkpVgWDWq/lqzc2678eUyDlTBhRqhCHFguYYGM0Efga7tYk4TogG/3x0EEl66/OQ+WGbWB/Q==",
"dev": true,
- "requires": {
- "@babel/helper-string-parser": "^7.19.4",
- "@babel/helper-validator-identifier": "^7.19.1",
- "to-fast-properties": "^2.0.0"
+ "license": "MIT",
+ "dependencies": {
+ "@babel/helper-string-parser": "^7.27.1",
+ "@babel/helper-validator-identifier": "^7.27.1"
+ },
+ "engines": {
+ "node": ">=6.9.0"
}
},
- "@bcoe/v8-coverage": {
+ "node_modules/@bcoe/v8-coverage": {
"version": "0.2.3",
"resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz",
"integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==",
"dev": true
},
- "@istanbuljs/load-nyc-config": {
+ "node_modules/@istanbuljs/load-nyc-config": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz",
"integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"camelcase": "^5.3.1",
"find-up": "^4.1.0",
"get-package-type": "^0.1.0",
"js-yaml": "^3.13.1",
"resolve-from": "^5.0.0"
+ },
+ "engines": {
+ "node": ">=8"
}
},
- "@istanbuljs/schema": {
+ "node_modules/@istanbuljs/schema": {
"version": "0.1.3",
"resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz",
"integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
},
- "@jest/console": {
+ "node_modules/@jest/console": {
"version": "29.3.1",
"resolved": "https://registry.npmjs.org/@jest/console/-/console-29.3.1.tgz",
"integrity": "sha512-IRE6GD47KwcqA09RIWrabKdHPiKDGgtAL31xDxbi/RjQMsr+lY+ppxmHwY0dUEV3qvvxZzoe5Hl0RXZJOjQNUg==",
"dev": true,
- "requires": {
+ "dependencies": {
"@jest/types": "^29.3.1",
"@types/node": "*",
"chalk": "^4.0.0",
@@ -428,64 +580,86 @@
"jest-util": "^29.3.1",
"slash": "^3.0.0"
},
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@jest/console/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/@jest/console/node_modules/chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "dev": true,
"dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "dev": true
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/chalk?sponsor=1"
+ }
+ },
+ "node_modules/@jest/console/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/@jest/console/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/@jest/console/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/@jest/console/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
}
},
- "@jest/core": {
+ "node_modules/@jest/core": {
"version": "29.3.1",
"resolved": "https://registry.npmjs.org/@jest/core/-/core-29.3.1.tgz",
"integrity": "sha512-0ohVjjRex985w5MmO5L3u5GR1O30DexhBSpuwx2P+9ftyqHdJXnk7IUWiP80oHMvt7ubHCJHxV0a0vlKVuZirw==",
"dev": true,
- "requires": {
+ "dependencies": {
"@jest/console": "^29.3.1",
"@jest/reporters": "^29.3.1",
"@jest/test-result": "^29.3.1",
@@ -515,121 +689,166 @@
"slash": "^3.0.0",
"strip-ansi": "^6.0.0"
},
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "dev": true
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ },
+ "peerDependencies": {
+ "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0"
+ },
+ "peerDependenciesMeta": {
+ "node-notifier": {
+ "optional": true
}
}
},
- "@jest/environment": {
+ "node_modules/@jest/core/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/@jest/core/node_modules/chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/chalk?sponsor=1"
+ }
+ },
+ "node_modules/@jest/core/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/@jest/core/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/@jest/core/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/@jest/core/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/@jest/environment": {
"version": "29.3.1",
"resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.3.1.tgz",
"integrity": "sha512-pMmvfOPmoa1c1QpfFW0nXYtNLpofqo4BrCIk6f2kW4JFeNlHV2t3vd+3iDLf31e2ot2Mec0uqZfmI+U0K2CFag==",
"dev": true,
- "requires": {
+ "dependencies": {
"@jest/fake-timers": "^29.3.1",
"@jest/types": "^29.3.1",
"@types/node": "*",
"jest-mock": "^29.3.1"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
}
},
- "@jest/expect": {
+ "node_modules/@jest/expect": {
"version": "29.3.1",
"resolved": "https://registry.npmjs.org/@jest/expect/-/expect-29.3.1.tgz",
"integrity": "sha512-QivM7GlSHSsIAWzgfyP8dgeExPRZ9BIe2LsdPyEhCGkZkoyA+kGsoIzbKAfZCvvRzfZioKwPtCZIt5SaoxYCvg==",
"dev": true,
- "requires": {
+ "dependencies": {
"expect": "^29.3.1",
"jest-snapshot": "^29.3.1"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
}
},
- "@jest/expect-utils": {
+ "node_modules/@jest/expect-utils": {
"version": "29.3.1",
"resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.3.1.tgz",
"integrity": "sha512-wlrznINZI5sMjwvUoLVk617ll/UYfGIZNxmbU+Pa7wmkL4vYzhV9R2pwVqUh4NWWuLQWkI8+8mOkxs//prKQ3g==",
"dev": true,
- "requires": {
+ "dependencies": {
"jest-get-type": "^29.2.0"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
}
},
- "@jest/fake-timers": {
+ "node_modules/@jest/fake-timers": {
"version": "29.3.1",
"resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.3.1.tgz",
"integrity": "sha512-iHTL/XpnDlFki9Tq0Q1GGuVeQ8BHZGIYsvCO5eN/O/oJaRzofG9Xndd9HuSDBI/0ZS79pg0iwn07OMTQ7ngF2A==",
"dev": true,
- "requires": {
+ "dependencies": {
"@jest/types": "^29.3.1",
"@sinonjs/fake-timers": "^9.1.2",
"@types/node": "*",
"jest-message-util": "^29.3.1",
"jest-mock": "^29.3.1",
"jest-util": "^29.3.1"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
}
},
- "@jest/globals": {
+ "node_modules/@jest/globals": {
"version": "29.3.1",
"resolved": "https://registry.npmjs.org/@jest/globals/-/globals-29.3.1.tgz",
"integrity": "sha512-cTicd134vOcwO59OPaB6AmdHQMCtWOe+/DitpTZVxWgMJ+YvXL1HNAmPyiGbSHmF/mXVBkvlm8YYtQhyHPnV6Q==",
"dev": true,
- "requires": {
+ "dependencies": {
"@jest/environment": "^29.3.1",
"@jest/expect": "^29.3.1",
"@jest/types": "^29.3.1",
"jest-mock": "^29.3.1"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
}
},
- "@jest/reporters": {
+ "node_modules/@jest/reporters": {
"version": "29.3.1",
"resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-29.3.1.tgz",
"integrity": "sha512-GhBu3YFuDrcAYW/UESz1JphEAbvUjaY2vShRZRoRY1mxpCMB3yGSJ4j9n0GxVlEOdCf7qjvUfBCrTUUqhVfbRA==",
"dev": true,
- "requires": {
+ "dependencies": {
"@bcoe/v8-coverage": "^0.2.3",
"@jest/console": "^29.3.1",
"@jest/test-result": "^29.3.1",
@@ -655,108 +874,150 @@
"strip-ansi": "^6.0.0",
"v8-to-istanbul": "^9.0.1"
},
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "dev": true
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ },
+ "peerDependencies": {
+ "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0"
+ },
+ "peerDependenciesMeta": {
+ "node-notifier": {
+ "optional": true
}
}
},
- "@jest/schemas": {
- "version": "29.0.0",
- "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.0.0.tgz",
- "integrity": "sha512-3Ab5HgYIIAnS0HjqJHQYZS+zXc4tUmTmBH3z83ajI6afXp8X3ZtdLX+nXx+I7LNkJD7uN9LAVhgnjDgZa2z0kA==",
+ "node_modules/@jest/reporters/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
"dev": true,
- "requires": {
- "@sinclair/typebox": "^0.24.1"
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
}
},
- "@jest/source-map": {
- "version": "29.2.0",
- "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-29.2.0.tgz",
- "integrity": "sha512-1NX9/7zzI0nqa6+kgpSdKPK+WU1p+SJk3TloWZf5MzPbxri9UEeXX5bWZAPCzbQcyuAzubcdUHA7hcNznmRqWQ==",
+ "node_modules/@jest/reporters/node_modules/chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
"dev": true,
- "requires": {
- "@jridgewell/trace-mapping": "^0.3.15",
- "callsites": "^3.0.0",
- "graceful-fs": "^4.2.9"
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/chalk?sponsor=1"
}
},
- "@jest/test-result": {
- "version": "29.3.1",
- "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-29.3.1.tgz",
- "integrity": "sha512-qeLa6qc0ddB0kuOZyZIhfN5q0e2htngokyTWsGriedsDhItisW7SDYZ7ceOe57Ii03sL988/03wAcBh3TChMGw==",
+ "node_modules/@jest/reporters/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
"dev": true,
- "requires": {
- "@jest/console": "^29.3.1",
- "@jest/types": "^29.3.1",
- "@types/istanbul-lib-coverage": "^2.0.0",
- "collect-v8-coverage": "^1.0.0"
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
}
},
- "@jest/test-sequencer": {
- "version": "29.3.1",
- "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-29.3.1.tgz",
- "integrity": "sha512-IqYvLbieTv20ArgKoAMyhLHNrVHJfzO6ARZAbQRlY4UGWfdDnLlZEF0BvKOMd77uIiIjSZRwq3Jb3Fa3I8+2UA==",
- "dev": true,
- "requires": {
+ "node_modules/@jest/reporters/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/@jest/reporters/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/@jest/reporters/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/@jest/schemas": {
+ "version": "29.0.0",
+ "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.0.0.tgz",
+ "integrity": "sha512-3Ab5HgYIIAnS0HjqJHQYZS+zXc4tUmTmBH3z83ajI6afXp8X3ZtdLX+nXx+I7LNkJD7uN9LAVhgnjDgZa2z0kA==",
+ "dev": true,
+ "dependencies": {
+ "@sinclair/typebox": "^0.24.1"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@jest/source-map": {
+ "version": "29.2.0",
+ "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-29.2.0.tgz",
+ "integrity": "sha512-1NX9/7zzI0nqa6+kgpSdKPK+WU1p+SJk3TloWZf5MzPbxri9UEeXX5bWZAPCzbQcyuAzubcdUHA7hcNznmRqWQ==",
+ "dev": true,
+ "dependencies": {
+ "@jridgewell/trace-mapping": "^0.3.15",
+ "callsites": "^3.0.0",
+ "graceful-fs": "^4.2.9"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@jest/test-result": {
+ "version": "29.3.1",
+ "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-29.3.1.tgz",
+ "integrity": "sha512-qeLa6qc0ddB0kuOZyZIhfN5q0e2htngokyTWsGriedsDhItisW7SDYZ7ceOe57Ii03sL988/03wAcBh3TChMGw==",
+ "dev": true,
+ "dependencies": {
+ "@jest/console": "^29.3.1",
+ "@jest/types": "^29.3.1",
+ "@types/istanbul-lib-coverage": "^2.0.0",
+ "collect-v8-coverage": "^1.0.0"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@jest/test-sequencer": {
+ "version": "29.3.1",
+ "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-29.3.1.tgz",
+ "integrity": "sha512-IqYvLbieTv20ArgKoAMyhLHNrVHJfzO6ARZAbQRlY4UGWfdDnLlZEF0BvKOMd77uIiIjSZRwq3Jb3Fa3I8+2UA==",
+ "dev": true,
+ "dependencies": {
"@jest/test-result": "^29.3.1",
"graceful-fs": "^4.2.9",
"jest-haste-map": "^29.3.1",
"slash": "^3.0.0"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
}
},
- "@jest/transform": {
+ "node_modules/@jest/transform": {
"version": "29.3.1",
"resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.3.1.tgz",
"integrity": "sha512-8wmCFBTVGYqFNLWfcOWoVuMuKYPUBTnTMDkdvFtAYELwDOl9RGwOsvQWGPFxDJ8AWY9xM/8xCXdqmPK3+Q5Lug==",
"dev": true,
- "requires": {
+ "dependencies": {
"@babel/core": "^7.11.6",
"@jest/types": "^29.3.1",
"@jridgewell/trace-mapping": "^0.3.15",
@@ -773,70 +1034,92 @@
"slash": "^3.0.0",
"write-file-atomic": "^4.0.1"
},
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@jest/transform/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
"dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
- "convert-source-map": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
- "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==",
- "dev": true
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "dev": true
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/@jest/transform/node_modules/chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/chalk?sponsor=1"
+ }
+ },
+ "node_modules/@jest/transform/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/@jest/transform/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/@jest/transform/node_modules/convert-source-map": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
+ "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==",
+ "dev": true
+ },
+ "node_modules/@jest/transform/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
}
},
- "@jest/types": {
+ "node_modules/@jest/transform/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/@jest/types": {
"version": "29.3.1",
"resolved": "https://registry.npmjs.org/@jest/types/-/types-29.3.1.tgz",
"integrity": "sha512-d0S0jmmTpjnhCmNpApgX3jrUZgZ22ivKJRvL2lli5hpCRoNnp1f85r2/wpKfXuYu8E7Jjh1hGfhPyup1NM5AmA==",
"dev": true,
- "requires": {
+ "dependencies": {
"@jest/schemas": "^29.0.0",
"@types/istanbul-lib-coverage": "^2.0.0",
"@types/istanbul-reports": "^3.0.0",
@@ -844,126 +1127,159 @@
"@types/yargs": "^17.0.8",
"chalk": "^4.0.0"
},
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@jest/types/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/@jest/types/node_modules/chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "dev": true,
"dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "dev": true
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/chalk?sponsor=1"
+ }
+ },
+ "node_modules/@jest/types/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/@jest/types/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/@jest/types/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/@jest/types/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
}
},
- "@jridgewell/gen-mapping": {
+ "node_modules/@jridgewell/gen-mapping": {
"version": "0.1.1",
"resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz",
"integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==",
"dev": true,
- "requires": {
+ "dependencies": {
"@jridgewell/set-array": "^1.0.0",
"@jridgewell/sourcemap-codec": "^1.4.10"
+ },
+ "engines": {
+ "node": ">=6.0.0"
}
},
- "@jridgewell/resolve-uri": {
+ "node_modules/@jridgewell/resolve-uri": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz",
"integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=6.0.0"
+ }
},
- "@jridgewell/set-array": {
+ "node_modules/@jridgewell/set-array": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz",
"integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=6.0.0"
+ }
},
- "@jridgewell/sourcemap-codec": {
- "version": "1.4.14",
- "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz",
- "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==",
- "dev": true
+ "node_modules/@jridgewell/sourcemap-codec": {
+ "version": "1.5.5",
+ "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz",
+ "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==",
+ "dev": true,
+ "license": "MIT"
},
- "@jridgewell/trace-mapping": {
- "version": "0.3.17",
- "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz",
- "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==",
+ "node_modules/@jridgewell/trace-mapping": {
+ "version": "0.3.31",
+ "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz",
+ "integrity": "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==",
"dev": true,
- "requires": {
- "@jridgewell/resolve-uri": "3.1.0",
- "@jridgewell/sourcemap-codec": "1.4.14"
+ "license": "MIT",
+ "dependencies": {
+ "@jridgewell/resolve-uri": "^3.1.0",
+ "@jridgewell/sourcemap-codec": "^1.4.14"
}
},
- "@sinclair/typebox": {
+ "node_modules/@sinclair/typebox": {
"version": "0.24.51",
"resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.24.51.tgz",
"integrity": "sha512-1P1OROm/rdubP5aFDSZQILU0vrLCJ4fvHt6EoqHEM+2D/G5MK3bIaymUKLit8Js9gbns5UyJnkP/TZROLw4tUA==",
"dev": true
},
- "@sinonjs/commons": {
+ "node_modules/@sinonjs/commons": {
"version": "1.8.6",
"resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.6.tgz",
"integrity": "sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"type-detect": "4.0.8"
}
},
- "@sinonjs/fake-timers": {
+ "node_modules/@sinonjs/fake-timers": {
"version": "9.1.2",
"resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-9.1.2.tgz",
"integrity": "sha512-BPS4ynJW/o92PUR4wgriz2Ud5gpST5vz6GQfMixEDK0Z8ZCUv2M7SkBLykH56T++Xs+8ln9zTGbOvNGIe02/jw==",
"dev": true,
- "requires": {
+ "dependencies": {
"@sinonjs/commons": "^1.7.0"
}
},
- "@types/babel__core": {
+ "node_modules/@types/babel__core": {
"version": "7.1.20",
"resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.20.tgz",
"integrity": "sha512-PVb6Bg2QuscZ30FvOU7z4guG6c926D9YRvOxEaelzndpMsvP+YM74Q/dAFASpg2l6+XLalxSGxcq/lrgYWZtyQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"@babel/parser": "^7.1.0",
"@babel/types": "^7.0.0",
"@types/babel__generator": "*",
@@ -971,279 +1287,307 @@
"@types/babel__traverse": "*"
}
},
- "@types/babel__generator": {
+ "node_modules/@types/babel__generator": {
"version": "7.6.4",
"resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.4.tgz",
"integrity": "sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==",
"dev": true,
- "requires": {
+ "dependencies": {
"@babel/types": "^7.0.0"
}
},
- "@types/babel__template": {
+ "node_modules/@types/babel__template": {
"version": "7.4.1",
"resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.1.tgz",
"integrity": "sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==",
"dev": true,
- "requires": {
+ "dependencies": {
"@babel/parser": "^7.1.0",
"@babel/types": "^7.0.0"
}
},
- "@types/babel__traverse": {
+ "node_modules/@types/babel__traverse": {
"version": "7.18.3",
"resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.18.3.tgz",
"integrity": "sha512-1kbcJ40lLB7MHsj39U4Sh1uTd2E7rLEa79kmDpI6cy+XiXsteB3POdQomoq4FxszMrO3ZYchkhYJw7A2862b3w==",
"dev": true,
- "requires": {
+ "dependencies": {
"@babel/types": "^7.3.0"
}
},
- "@types/graceful-fs": {
+ "node_modules/@types/graceful-fs": {
"version": "4.1.5",
"resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.5.tgz",
"integrity": "sha512-anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw==",
"dev": true,
- "requires": {
+ "dependencies": {
"@types/node": "*"
}
},
- "@types/istanbul-lib-coverage": {
+ "node_modules/@types/istanbul-lib-coverage": {
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz",
"integrity": "sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==",
"dev": true
},
- "@types/istanbul-lib-report": {
+ "node_modules/@types/istanbul-lib-report": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz",
"integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==",
"dev": true,
- "requires": {
+ "dependencies": {
"@types/istanbul-lib-coverage": "*"
}
},
- "@types/istanbul-reports": {
+ "node_modules/@types/istanbul-reports": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz",
"integrity": "sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==",
"dev": true,
- "requires": {
+ "dependencies": {
"@types/istanbul-lib-report": "*"
}
},
- "@types/jest": {
+ "node_modules/@types/jest": {
"version": "24.0.18",
"resolved": "https://registry.npmjs.org/@types/jest/-/jest-24.0.18.tgz",
"integrity": "sha512-jcDDXdjTcrQzdN06+TSVsPPqxvsZA/5QkYfIZlq1JMw7FdP5AZylbOc+6B/cuDurctRe+MziUMtQ3xQdrbjqyQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"@types/jest-diff": "*"
}
},
- "@types/jest-diff": {
+ "node_modules/@types/jest-diff": {
"version": "20.0.1",
"resolved": "https://registry.npmjs.org/@types/jest-diff/-/jest-diff-20.0.1.tgz",
"integrity": "sha512-yALhelO3i0hqZwhjtcr6dYyaLoCHbAMshwtj6cGxTvHZAKXHsYGdff6E8EPw3xLKY0ELUTQ69Q1rQiJENnccMA==",
"dev": true
},
- "@types/node": {
+ "node_modules/@types/node": {
"version": "12.7.11",
"resolved": "https://registry.npmjs.org/@types/node/-/node-12.7.11.tgz",
"integrity": "sha512-Otxmr2rrZLKRYIybtdG/sgeO+tHY20GxeDjcGmUnmmlCWyEnv2a2x1ZXBo3BTec4OiTXMQCiazB8NMBf0iRlFw==",
"dev": true
},
- "@types/prettier": {
+ "node_modules/@types/prettier": {
"version": "2.7.2",
"resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.7.2.tgz",
"integrity": "sha512-KufADq8uQqo1pYKVIYzfKbJfBAc0sOeXqGbFaSpv8MRmC/zXgowNZmFcbngndGk922QDmOASEXUZCaY48gs4cg==",
"dev": true
},
- "@types/stack-utils": {
+ "node_modules/@types/stack-utils": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz",
"integrity": "sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==",
"dev": true
},
- "@types/yargs": {
+ "node_modules/@types/yargs": {
"version": "17.0.17",
"resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.17.tgz",
"integrity": "sha512-72bWxFKTK6uwWJAVT+3rF6Jo6RTojiJ27FQo8Rf60AL+VZbzoVPnMFhKsUnbjR8A3BTCYQ7Mv3hnl8T0A+CX9g==",
"dev": true,
- "requires": {
+ "dependencies": {
"@types/yargs-parser": "*"
}
},
- "@types/yargs-parser": {
+ "node_modules/@types/yargs-parser": {
"version": "21.0.0",
"resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz",
"integrity": "sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==",
"dev": true
},
- "JSONStream": {
- "version": "1.3.5",
- "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz",
- "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==",
- "dev": true,
- "requires": {
- "jsonparse": "^1.2.0",
- "through": ">=2.2.7 <3"
- }
- },
- "abbrev": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz",
- "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==",
- "dev": true
- },
- "acorn": {
+ "node_modules/acorn": {
"version": "8.0.5",
"resolved": "https://registry.npmjs.org/acorn/-/acorn-8.0.5.tgz",
"integrity": "sha512-v+DieK/HJkJOpFBETDJioequtc3PfxsWMaxIdIwujtF7FEV/MAyDQLlm6/zPvr7Mix07mLh6ccVwIsloceodlg==",
- "dev": true
+ "dev": true,
+ "bin": {
+ "acorn": "bin/acorn"
+ },
+ "engines": {
+ "node": ">=0.4.0"
+ }
},
- "acorn-node": {
+ "node_modules/acorn-node": {
"version": "1.8.2",
"resolved": "https://registry.npmjs.org/acorn-node/-/acorn-node-1.8.2.tgz",
"integrity": "sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A==",
"dev": true,
- "requires": {
+ "dependencies": {
"acorn": "^7.0.0",
"acorn-walk": "^7.0.0",
"xtend": "^4.0.2"
+ }
+ },
+ "node_modules/acorn-node/node_modules/acorn": {
+ "version": "7.4.0",
+ "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.0.tgz",
+ "integrity": "sha512-+G7P8jJmCHr+S+cLfQxygbWhXy+8YTVGzAkpEbcLo2mLoL7tij/VG41QSHACSf5QgYRhMZYHuNc6drJaO0Da+w==",
+ "dev": true,
+ "bin": {
+ "acorn": "bin/acorn"
},
- "dependencies": {
- "acorn": {
- "version": "7.4.0",
- "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.0.tgz",
- "integrity": "sha512-+G7P8jJmCHr+S+cLfQxygbWhXy+8YTVGzAkpEbcLo2mLoL7tij/VG41QSHACSf5QgYRhMZYHuNc6drJaO0Da+w==",
- "dev": true
- },
- "acorn-walk": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.0.0.tgz",
- "integrity": "sha512-7Bv1We7ZGuU79zZbb6rRqcpxo3OY+zrdtloZWoyD8fmGX+FeXRjE+iuGkZjSXLVovLzrsvMGMy0EkwA0E0umxg==",
- "dev": true
- },
- "xtend": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz",
- "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==",
- "dev": true
- }
+ "engines": {
+ "node": ">=0.4.0"
}
},
- "amdefine": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz",
- "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=",
- "dev": true
+ "node_modules/acorn-node/node_modules/acorn-walk": {
+ "version": "7.0.0",
+ "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.0.0.tgz",
+ "integrity": "sha512-7Bv1We7ZGuU79zZbb6rRqcpxo3OY+zrdtloZWoyD8fmGX+FeXRjE+iuGkZjSXLVovLzrsvMGMy0EkwA0E0umxg==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.4.0"
+ }
+ },
+ "node_modules/acorn-node/node_modules/xtend": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz",
+ "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.4"
+ }
+ },
+ "node_modules/agent-base": {
+ "version": "7.1.4",
+ "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz",
+ "integrity": "sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 14"
+ }
},
- "ansi-escapes": {
+ "node_modules/ansi-escapes": {
"version": "4.3.2",
"resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz",
"integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"type-fest": "^0.21.3"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
}
},
- "ansi-regex": {
+ "node_modules/ansi-regex": {
"version": "5.0.1",
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
"integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
},
- "ansi-styles": {
+ "node_modules/ansi-styles": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
"integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
"dev": true,
- "requires": {
+ "dependencies": {
"color-convert": "^1.9.0"
+ },
+ "engines": {
+ "node": ">=4"
}
},
- "any-promise": {
+ "node_modules/any-promise": {
"version": "1.3.0",
"resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz",
"integrity": "sha1-q8av7tzqUugJzcA3au0845Y10X8=",
"dev": true
},
- "anymatch": {
+ "node_modules/anymatch": {
"version": "3.1.3",
"resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz",
"integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==",
"dev": true,
- "requires": {
+ "dependencies": {
"normalize-path": "^3.0.0",
"picomatch": "^2.0.4"
+ },
+ "engines": {
+ "node": ">= 8"
}
},
- "argparse": {
+ "node_modules/argparse": {
"version": "1.0.10",
"resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
"integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
"dev": true,
- "requires": {
+ "dependencies": {
"sprintf-js": "~1.0.2"
}
},
- "asn1.js": {
+ "node_modules/asn1.js": {
"version": "4.10.1",
"resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz",
"integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==",
"dev": true,
- "requires": {
+ "dependencies": {
"bn.js": "^4.0.0",
"inherits": "^2.0.1",
"minimalistic-assert": "^1.0.0"
}
},
- "assert": {
+ "node_modules/assert": {
"version": "1.5.0",
"resolved": "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz",
"integrity": "sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==",
"dev": true,
- "requires": {
+ "dependencies": {
"object-assign": "^4.1.1",
"util": "0.10.3"
- },
- "dependencies": {
- "inherits": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz",
- "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=",
- "dev": true
- },
- "util": {
- "version": "0.10.3",
- "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz",
- "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=",
- "dev": true,
- "requires": {
- "inherits": "2.0.1"
- }
- }
}
},
- "assign-symbols": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz",
- "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=",
+ "node_modules/assert/node_modules/inherits": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz",
+ "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=",
"dev": true
},
- "async": {
- "version": "0.1.22",
- "resolved": "https://registry.npmjs.org/async/-/async-0.1.22.tgz",
- "integrity": "sha1-D8GqoIig4+8Ovi2IMbqw3PiEUGE=",
- "dev": true
+ "node_modules/assert/node_modules/util": {
+ "version": "0.10.3",
+ "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz",
+ "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=",
+ "dev": true,
+ "dependencies": {
+ "inherits": "2.0.1"
+ }
+ },
+ "node_modules/available-typed-arrays": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz",
+ "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "possible-typed-array-names": "^1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/aws4": {
+ "version": "1.13.2",
+ "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.13.2.tgz",
+ "integrity": "sha512-lHe62zvbTB5eEABUVi/AwVh0ZKY9rMMDhmm+eeyuuUQbQ3+J+fONVQOZyj+DdrvD4BY33uYniyRJ4UJIaSKAfw==",
+ "dev": true,
+ "license": "MIT"
},
- "babel-jest": {
+ "node_modules/babel-jest": {
"version": "29.3.1",
"resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.3.1.tgz",
"integrity": "sha512-aard+xnMoxgjwV70t0L6wkW/3HQQtV+O0PEimxKgzNqCJnbYmroPojdP2tqKSOAt8QAKV/uSZU8851M7B5+fcA==",
"dev": true,
- "requires": {
+ "dependencies": {
"@jest/transform": "^29.3.1",
"@types/babel__core": "^7.1.14",
"babel-plugin-istanbul": "^6.1.1",
@@ -1252,89 +1596,120 @@
"graceful-fs": "^4.2.9",
"slash": "^3.0.0"
},
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "dev": true
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.8.0"
}
},
- "babel-plugin-istanbul": {
- "version": "6.1.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz",
- "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==",
+ "node_modules/babel-jest/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
"dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.0.0",
- "@istanbuljs/load-nyc-config": "^1.0.0",
- "@istanbuljs/schema": "^0.1.2",
- "istanbul-lib-instrument": "^5.0.4",
- "test-exclude": "^6.0.0"
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
}
},
- "babel-plugin-jest-hoist": {
- "version": "29.2.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.2.0.tgz",
- "integrity": "sha512-TnspP2WNiR3GLfCsUNHqeXw0RoQ2f9U5hQ5L3XFpwuO8htQmSrhh8qsB6vi5Yi8+kuynN1yjDjQsPfkebmB6ZA==",
+ "node_modules/babel-jest/node_modules/chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
"dev": true,
- "requires": {
- "@babel/template": "^7.3.3",
- "@babel/types": "^7.3.3",
- "@types/babel__core": "^7.1.14",
- "@types/babel__traverse": "^7.0.6"
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/chalk?sponsor=1"
}
},
- "babel-preset-current-node-syntax": {
- "version": "1.0.1",
+ "node_modules/babel-jest/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/babel-jest/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/babel-jest/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/babel-jest/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/babel-plugin-istanbul": {
+ "version": "6.1.1",
+ "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz",
+ "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==",
+ "dev": true,
+ "dependencies": {
+ "@babel/helper-plugin-utils": "^7.0.0",
+ "@istanbuljs/load-nyc-config": "^1.0.0",
+ "@istanbuljs/schema": "^0.1.2",
+ "istanbul-lib-instrument": "^5.0.4",
+ "test-exclude": "^6.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/babel-plugin-jest-hoist": {
+ "version": "29.2.0",
+ "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.2.0.tgz",
+ "integrity": "sha512-TnspP2WNiR3GLfCsUNHqeXw0RoQ2f9U5hQ5L3XFpwuO8htQmSrhh8qsB6vi5Yi8+kuynN1yjDjQsPfkebmB6ZA==",
+ "dev": true,
+ "dependencies": {
+ "@babel/template": "^7.3.3",
+ "@babel/types": "^7.3.3",
+ "@types/babel__core": "^7.1.14",
+ "@types/babel__traverse": "^7.0.6"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/babel-preset-current-node-syntax": {
+ "version": "1.0.1",
"resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz",
"integrity": "sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"@babel/plugin-syntax-async-generators": "^7.8.4",
"@babel/plugin-syntax-bigint": "^7.8.3",
"@babel/plugin-syntax-class-properties": "^7.8.3",
@@ -1347,99 +1722,113 @@
"@babel/plugin-syntax-optional-catch-binding": "^7.8.3",
"@babel/plugin-syntax-optional-chaining": "^7.8.3",
"@babel/plugin-syntax-top-level-await": "^7.8.3"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0"
}
},
- "babel-preset-jest": {
+ "node_modules/babel-preset-jest": {
"version": "29.2.0",
"resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.2.0.tgz",
"integrity": "sha512-z9JmMJppMxNv8N7fNRHvhMg9cvIkMxQBXgFkane3yKVEvEOP+kB50lk8DFRvF9PGqbyXxlmebKWhuDORO8RgdA==",
"dev": true,
- "requires": {
+ "dependencies": {
"babel-plugin-jest-hoist": "^29.2.0",
"babel-preset-current-node-syntax": "^1.0.0"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0"
}
},
- "balanced-match": {
+ "node_modules/balanced-match": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
"integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=",
"dev": true
},
- "base64-js": {
+ "node_modules/base64-js": {
"version": "1.3.1",
"resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz",
"integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==",
"dev": true
},
- "bn.js": {
+ "node_modules/bn.js": {
"version": "4.12.0",
"resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
"integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==",
"dev": true
},
- "brace-expansion": {
- "version": "1.1.11",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
- "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
+ "node_modules/brace-expansion": {
+ "version": "1.1.12",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz",
+ "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==",
"dev": true,
- "requires": {
+ "license": "MIT",
+ "dependencies": {
"balanced-match": "^1.0.0",
"concat-map": "0.0.1"
}
},
- "braces": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
- "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
+ "node_modules/braces": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz",
+ "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==",
"dev": true,
- "requires": {
- "fill-range": "^7.0.1"
+ "license": "MIT",
+ "dependencies": {
+ "fill-range": "^7.1.1"
+ },
+ "engines": {
+ "node": ">=8"
}
},
- "brorand": {
+ "node_modules/brorand": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz",
"integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=",
"dev": true
},
- "browser-pack": {
+ "node_modules/browser-pack": {
"version": "6.1.0",
"resolved": "https://registry.npmjs.org/browser-pack/-/browser-pack-6.1.0.tgz",
"integrity": "sha512-erYug8XoqzU3IfcU8fUgyHqyOXqIE4tUTTQ+7mqUjQlvnXkOO6OlT9c/ZoJVHYoAaqGxr09CN53G7XIsO4KtWA==",
"dev": true,
- "requires": {
- "JSONStream": "^1.0.3",
+ "dependencies": {
"combine-source-map": "~0.8.0",
"defined": "^1.0.0",
+ "JSONStream": "^1.0.3",
"safe-buffer": "^5.1.1",
"through2": "^2.0.0",
"umd": "^3.0.0"
+ },
+ "bin": {
+ "browser-pack": "bin/cmd.js"
}
},
- "browser-resolve": {
+ "node_modules/browser-resolve": {
"version": "1.11.3",
"resolved": "https://registry.npmjs.org/browser-resolve/-/browser-resolve-1.11.3.tgz",
"integrity": "sha512-exDi1BYWB/6raKHmDTCicQfTkqwN5fioMFV4j8BsfMU4R2DK/QfZfK7kOVkmWCNANf0snkBzqGqAJBao9gZMdQ==",
"dev": true,
- "requires": {
- "resolve": "1.1.7"
- },
"dependencies": {
- "resolve": {
- "version": "1.1.7",
- "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz",
- "integrity": "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=",
- "dev": true
- }
+ "resolve": "1.1.7"
}
},
- "browserify": {
+ "node_modules/browser-resolve/node_modules/resolve": {
+ "version": "1.1.7",
+ "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz",
+ "integrity": "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=",
+ "dev": true
+ },
+ "node_modules/browserify": {
"version": "16.5.0",
"resolved": "https://registry.npmjs.org/browserify/-/browserify-16.5.0.tgz",
"integrity": "sha512-6bfI3cl76YLAnCZ75AGu/XPOsqUhRyc0F/olGIJeCxtfxF2HvPKEcmjU9M8oAPxl4uBY1U7Nry33Q6koV3f2iw==",
"dev": true,
- "requires": {
- "JSONStream": "^1.0.3",
+ "dependencies": {
"assert": "^1.4.0",
"browser-pack": "^6.0.1",
"browser-resolve": "^1.11.0",
@@ -1461,6 +1850,7 @@
"https-browserify": "^1.0.0",
"inherits": "~2.0.1",
"insert-module-globals": "^7.0.0",
+ "JSONStream": "^1.0.3",
"labeled-stream-splicer": "^2.0.0",
"mkdirp": "^0.5.0",
"module-deps": "^6.0.0",
@@ -1488,21 +1878,19 @@
"vm-browserify": "^1.0.0",
"xtend": "^4.0.0"
},
- "dependencies": {
- "punycode": {
- "version": "1.4.1",
- "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz",
- "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=",
- "dev": true
- }
+ "bin": {
+ "browserify": "bin/cmd.js"
+ },
+ "engines": {
+ "node": ">= 0.8"
}
},
- "browserify-aes": {
+ "node_modules/browserify-aes": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz",
"integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==",
"dev": true,
- "requires": {
+ "dependencies": {
"buffer-xor": "^1.0.3",
"cipher-base": "^1.0.0",
"create-hash": "^1.1.0",
@@ -1511,352 +1899,542 @@
"safe-buffer": "^5.0.1"
}
},
- "browserify-cipher": {
+ "node_modules/browserify-cipher": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz",
"integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==",
"dev": true,
- "requires": {
+ "dependencies": {
"browserify-aes": "^1.0.4",
"browserify-des": "^1.0.0",
"evp_bytestokey": "^1.0.0"
}
},
- "browserify-des": {
+ "node_modules/browserify-des": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz",
"integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==",
"dev": true,
- "requires": {
+ "dependencies": {
"cipher-base": "^1.0.1",
"des.js": "^1.0.0",
"inherits": "^2.0.1",
"safe-buffer": "^5.1.2"
}
},
- "browserify-rsa": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz",
- "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=",
+ "node_modules/browserify-rsa": {
+ "version": "4.1.1",
+ "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.1.tgz",
+ "integrity": "sha512-YBjSAiTqM04ZVei6sXighu679a3SqWORA3qZTEqZImnlkDIFtKc6pNutpjyZ8RJTjQtuYfeetkxM11GwoYXMIQ==",
"dev": true,
- "requires": {
- "bn.js": "^4.1.0",
- "randombytes": "^2.0.1"
+ "license": "MIT",
+ "dependencies": {
+ "bn.js": "^5.2.1",
+ "randombytes": "^2.1.0",
+ "safe-buffer": "^5.2.1"
+ },
+ "engines": {
+ "node": ">= 0.10"
}
},
- "browserify-sign": {
- "version": "4.0.4",
- "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.0.4.tgz",
- "integrity": "sha1-qk62jl17ZYuqa/alfmMMvXqT0pg=",
+ "node_modules/browserify-rsa/node_modules/bn.js": {
+ "version": "5.2.2",
+ "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.2.tgz",
+ "integrity": "sha512-v2YAxEmKaBLahNwE1mjp4WON6huMNeuDvagFZW+ASCuA/ku0bXR9hSMw0XpiqMoA3+rmnyck/tPRSFQkoC9Cuw==",
"dev": true,
- "requires": {
- "bn.js": "^4.1.1",
- "browserify-rsa": "^4.0.0",
- "create-hash": "^1.1.0",
- "create-hmac": "^1.1.2",
- "elliptic": "^6.0.0",
- "inherits": "^2.0.1",
- "parse-asn1": "^5.0.0"
+ "license": "MIT"
+ },
+ "node_modules/browserify-rsa/node_modules/safe-buffer": {
+ "version": "5.2.1",
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
+ "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ],
+ "license": "MIT"
+ },
+ "node_modules/browserify-sign": {
+ "version": "4.2.3",
+ "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.3.tgz",
+ "integrity": "sha512-JWCZW6SKhfhjJxO8Tyiiy+XYB7cqd2S5/+WeYHsKdNKFlCBhKbblba1A/HN/90YwtxKc8tCErjffZl++UNmGiw==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "bn.js": "^5.2.1",
+ "browserify-rsa": "^4.1.0",
+ "create-hash": "^1.2.0",
+ "create-hmac": "^1.1.7",
+ "elliptic": "^6.5.5",
+ "hash-base": "~3.0",
+ "inherits": "^2.0.4",
+ "parse-asn1": "^5.1.7",
+ "readable-stream": "^2.3.8",
+ "safe-buffer": "^5.2.1"
+ },
+ "engines": {
+ "node": ">= 0.12"
}
},
- "browserify-zlib": {
+ "node_modules/browserify-sign/node_modules/bn.js": {
+ "version": "5.2.2",
+ "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.2.tgz",
+ "integrity": "sha512-v2YAxEmKaBLahNwE1mjp4WON6huMNeuDvagFZW+ASCuA/ku0bXR9hSMw0XpiqMoA3+rmnyck/tPRSFQkoC9Cuw==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/browserify-sign/node_modules/inherits": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
+ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
+ "dev": true,
+ "license": "ISC"
+ },
+ "node_modules/browserify-sign/node_modules/safe-buffer": {
+ "version": "5.2.1",
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
+ "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ],
+ "license": "MIT"
+ },
+ "node_modules/browserify-zlib": {
"version": "0.2.0",
"resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz",
"integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==",
"dev": true,
- "requires": {
+ "dependencies": {
"pako": "~1.0.5"
}
},
- "browserslist": {
+ "node_modules/browserify/node_modules/punycode": {
+ "version": "1.4.1",
+ "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz",
+ "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=",
+ "dev": true
+ },
+ "node_modules/browserslist": {
"version": "4.21.4",
"resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.4.tgz",
"integrity": "sha512-CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw==",
"dev": true,
- "requires": {
+ "funding": [
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/browserslist"
+ },
+ {
+ "type": "tidelift",
+ "url": "https://tidelift.com/funding/github/npm/browserslist"
+ }
+ ],
+ "dependencies": {
"caniuse-lite": "^1.0.30001400",
"electron-to-chromium": "^1.4.251",
"node-releases": "^2.0.6",
"update-browserslist-db": "^1.0.9"
+ },
+ "bin": {
+ "browserslist": "cli.js"
+ },
+ "engines": {
+ "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7"
}
},
- "bs-logger": {
+ "node_modules/bs-logger": {
"version": "0.2.6",
"resolved": "https://registry.npmjs.org/bs-logger/-/bs-logger-0.2.6.tgz",
"integrity": "sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==",
"dev": true,
- "requires": {
+ "dependencies": {
"fast-json-stable-stringify": "2.x"
+ },
+ "engines": {
+ "node": ">= 6"
}
},
- "bser": {
+ "node_modules/bser": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz",
"integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"node-int64": "^0.4.0"
}
},
- "buffer": {
+ "node_modules/buffer": {
"version": "5.4.3",
"resolved": "https://registry.npmjs.org/buffer/-/buffer-5.4.3.tgz",
"integrity": "sha512-zvj65TkFeIt3i6aj5bIvJDzjjQQGs4o/sNoezg1F1kYap9Nu2jcUdpwzRSJTHMMzG0H7bZkn4rNQpImhuxWX2A==",
"dev": true,
- "requires": {
+ "dependencies": {
"base64-js": "^1.0.2",
"ieee754": "^1.1.4"
}
},
- "buffer-from": {
+ "node_modules/buffer-from": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz",
"integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==",
"dev": true
},
- "buffer-xor": {
+ "node_modules/buffer-xor": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz",
"integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=",
"dev": true
},
- "builtin-modules": {
+ "node_modules/builtin-modules": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz",
"integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
},
- "builtin-status-codes": {
+ "node_modules/builtin-status-codes": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz",
"integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=",
"dev": true
},
- "cached-path-relative": {
+ "node_modules/cached-path-relative": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/cached-path-relative/-/cached-path-relative-1.1.0.tgz",
"integrity": "sha512-WF0LihfemtesFcJgO7xfOoOcnWzY/QHR4qeDqV44jPU3HTI54+LnfXK3SA27AVVGCdZFgjjFFaqUA9Jx7dMJZA==",
"dev": true
},
- "call-bind": {
+ "node_modules/call-bind": {
+ "version": "1.0.8",
+ "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.8.tgz",
+ "integrity": "sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bind-apply-helpers": "^1.0.0",
+ "es-define-property": "^1.0.0",
+ "get-intrinsic": "^1.2.4",
+ "set-function-length": "^1.2.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/call-bind-apply-helpers": {
"version": "1.0.2",
- "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz",
- "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==",
+ "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz",
+ "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==",
"dev": true,
- "requires": {
- "function-bind": "^1.1.1",
- "get-intrinsic": "^1.0.2"
+ "license": "MIT",
+ "dependencies": {
+ "es-errors": "^1.3.0",
+ "function-bind": "^1.1.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/call-bound": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz",
+ "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bind-apply-helpers": "^1.0.2",
+ "get-intrinsic": "^1.3.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "callsites": {
+ "node_modules/callsites": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
"integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=6"
+ }
},
- "camelcase": {
+ "node_modules/camelcase": {
"version": "5.3.1",
"resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz",
"integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=6"
+ }
},
- "caniuse-lite": {
+ "node_modules/caniuse-lite": {
"version": "1.0.30001441",
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001441.tgz",
"integrity": "sha512-OyxRR4Vof59I3yGWXws6i908EtGbMzVUi3ganaZQHmydk1iwDhRnvaPG2WaR0KcqrDFKrxVZHULT396LEPhXfg==",
- "dev": true
+ "dev": true,
+ "funding": [
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/browserslist"
+ },
+ {
+ "type": "tidelift",
+ "url": "https://tidelift.com/funding/github/npm/caniuse-lite"
+ }
+ ]
},
- "chalk": {
+ "node_modules/chalk": {
"version": "2.4.2",
"resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
"integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"ansi-styles": "^3.2.1",
"escape-string-regexp": "^1.0.5",
"supports-color": "^5.3.0"
+ },
+ "engines": {
+ "node": ">=4"
}
},
- "char-regex": {
+ "node_modules/char-regex": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz",
"integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=10"
+ }
},
- "ci-info": {
+ "node_modules/ci-info": {
"version": "3.7.0",
"resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.7.0.tgz",
"integrity": "sha512-2CpRNYmImPx+RXKLq6jko/L07phmS9I02TyqkcNU20GCF/GgaWvc58hPtjxDX8lPpkdwc9sNh72V9k00S7ezog==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
},
- "cipher-base": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz",
- "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==",
+ "node_modules/cipher-base": {
+ "version": "1.0.6",
+ "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.6.tgz",
+ "integrity": "sha512-3Ek9H3X6pj5TgenXYtNWdaBon1tgYCaebd+XPg0keyjEbEfkD4KkmAxkQ/i1vYvxdcT5nscLBfq9VJRmCBcFSw==",
"dev": true,
- "requires": {
- "inherits": "^2.0.1",
- "safe-buffer": "^5.0.1"
+ "license": "MIT",
+ "dependencies": {
+ "inherits": "^2.0.4",
+ "safe-buffer": "^5.2.1"
+ },
+ "engines": {
+ "node": ">= 0.10"
}
},
- "cjs-module-lexer": {
+ "node_modules/cipher-base/node_modules/inherits": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
+ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
+ "dev": true,
+ "license": "ISC"
+ },
+ "node_modules/cipher-base/node_modules/safe-buffer": {
+ "version": "5.2.1",
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
+ "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ],
+ "license": "MIT"
+ },
+ "node_modules/cjs-module-lexer": {
"version": "1.2.2",
"resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.2.tgz",
"integrity": "sha512-cOU9usZw8/dXIXKtwa8pM0OTJQuJkxMN6w30csNRUerHfeQ5R6U3kkU/FtJeIf3M202OHfY2U8ccInBG7/xogA==",
"dev": true
},
- "clean-css": {
- "version": "4.2.1",
- "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.1.tgz",
- "integrity": "sha512-4ZxI6dy4lrY6FHzfiy1aEOXgu4LIsW2MhwG0VBKdcoGoH/XLFgaHSdLTGr4O8Be6A8r3MOphEiI8Gc1n0ecf3g==",
- "dev": true,
- "requires": {
- "source-map": "~0.6.0"
- }
- },
- "cliui": {
+ "node_modules/cliui": {
"version": "8.0.1",
"resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz",
"integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"string-width": "^4.2.0",
"strip-ansi": "^6.0.1",
"wrap-ansi": "^7.0.0"
+ },
+ "engines": {
+ "node": ">=12"
}
},
- "co": {
+ "node_modules/co": {
"version": "4.6.0",
"resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz",
"integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==",
- "dev": true
- },
- "coffee-script": {
- "version": "1.3.3",
- "resolved": "https://registry.npmjs.org/coffee-script/-/coffee-script-1.3.3.tgz",
- "integrity": "sha1-FQ1rTLUiiUNp7+1qIQHCC8f0pPQ=",
- "dev": true
+ "dev": true,
+ "engines": {
+ "iojs": ">= 1.0.0",
+ "node": ">= 0.12.0"
+ }
},
- "collect-v8-coverage": {
+ "node_modules/collect-v8-coverage": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz",
"integrity": "sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg==",
"dev": true
},
- "color-convert": {
+ "node_modules/color-convert": {
"version": "1.9.3",
"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
"integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
"dev": true,
- "requires": {
+ "dependencies": {
"color-name": "1.1.3"
}
},
- "color-name": {
+ "node_modules/color-name": {
"version": "1.1.3",
"resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
"integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=",
"dev": true
},
- "colors": {
- "version": "0.6.2",
- "resolved": "https://registry.npmjs.org/colors/-/colors-0.6.2.tgz",
- "integrity": "sha1-JCP+ZnisDF2uiFLl0OW+CMmXq8w=",
- "dev": true
- },
- "combine-source-map": {
+ "node_modules/combine-source-map": {
"version": "0.8.0",
"resolved": "https://registry.npmjs.org/combine-source-map/-/combine-source-map-0.8.0.tgz",
"integrity": "sha1-pY0N8ELBhvz4IqjoAV9UUNLXmos=",
"dev": true,
- "requires": {
+ "dependencies": {
"convert-source-map": "~1.1.0",
"inline-source-map": "~0.6.0",
"lodash.memoize": "~3.0.3",
"source-map": "~0.5.3"
- },
- "dependencies": {
- "convert-source-map": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.1.3.tgz",
- "integrity": "sha1-SCnId+n+SbMWHzvzZziI4gRpmGA=",
- "dev": true
- },
- "source-map": {
- "version": "0.5.7",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
- "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
- "dev": true
- }
}
},
- "commander": {
+ "node_modules/combine-source-map/node_modules/convert-source-map": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.1.3.tgz",
+ "integrity": "sha1-SCnId+n+SbMWHzvzZziI4gRpmGA=",
+ "dev": true
+ },
+ "node_modules/combine-source-map/node_modules/source-map": {
+ "version": "0.5.7",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
+ "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/commander": {
"version": "2.20.0",
"resolved": "https://registry.npmjs.org/commander/-/commander-2.20.0.tgz",
"integrity": "sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ==",
"dev": true
},
- "concat-map": {
+ "node_modules/concat-map": {
"version": "0.0.1",
"resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
"integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
"dev": true
},
- "concat-stream": {
+ "node_modules/concat-stream": {
"version": "1.6.2",
"resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz",
"integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==",
"dev": true,
- "requires": {
+ "engines": [
+ "node >= 0.8"
+ ],
+ "dependencies": {
"buffer-from": "^1.0.0",
"inherits": "^2.0.3",
"readable-stream": "^2.2.2",
"typedarray": "^0.0.6"
}
},
- "console-browserify": {
+ "node_modules/console-browserify": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz",
"integrity": "sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=",
"dev": true,
- "requires": {
+ "dependencies": {
"date-now": "^0.1.4"
}
},
- "constants-browserify": {
+ "node_modules/constants-browserify": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz",
"integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=",
"dev": true
},
- "convert-source-map": {
+ "node_modules/convert-source-map": {
"version": "1.9.0",
"resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz",
"integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==",
"dev": true
},
- "core-util-is": {
+ "node_modules/core-util-is": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
"integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=",
"dev": true
},
- "create-ecdh": {
+ "node_modules/create-ecdh": {
"version": "4.0.3",
"resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.3.tgz",
"integrity": "sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw==",
"dev": true,
- "requires": {
+ "dependencies": {
"bn.js": "^4.1.0",
"elliptic": "^6.0.0"
}
},
- "create-hash": {
+ "node_modules/create-hash": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz",
"integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==",
"dev": true,
- "requires": {
+ "dependencies": {
"cipher-base": "^1.0.1",
"inherits": "^2.0.1",
"md5.js": "^1.3.4",
@@ -1864,12 +2442,12 @@
"sha.js": "^2.4.0"
}
},
- "create-hmac": {
+ "node_modules/create-hmac": {
"version": "1.1.7",
"resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz",
"integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==",
"dev": true,
- "requires": {
+ "dependencies": {
"cipher-base": "^1.0.3",
"create-hash": "^1.1.0",
"inherits": "^2.0.1",
@@ -1878,23 +2456,27 @@
"sha.js": "^2.4.8"
}
},
- "cross-spawn": {
- "version": "7.0.3",
- "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
- "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
+ "node_modules/cross-spawn": {
+ "version": "7.0.6",
+ "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz",
+ "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==",
"dev": true,
- "requires": {
+ "license": "MIT",
+ "dependencies": {
"path-key": "^3.1.0",
"shebang-command": "^2.0.0",
"which": "^2.0.1"
+ },
+ "engines": {
+ "node": ">= 8"
}
},
- "crypto-browserify": {
+ "node_modules/crypto-browserify": {
"version": "3.12.0",
"resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz",
"integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==",
"dev": true,
- "requires": {
+ "dependencies": {
"browserify-cipher": "^1.0.0",
"browserify-sign": "^4.0.0",
"create-ecdh": "^4.0.0",
@@ -1906,158 +2488,222 @@
"public-encrypt": "^4.0.0",
"randombytes": "^2.0.0",
"randomfill": "^1.0.3"
+ },
+ "engines": {
+ "node": "*"
}
},
- "dash-ast": {
+ "node_modules/dash-ast": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/dash-ast/-/dash-ast-1.0.0.tgz",
"integrity": "sha512-Vy4dx7gquTeMcQR/hDkYLGUnwVil6vk4FOOct+djUnHOUWt+zJPJAaRIXaAFkPXtJjvlY7o3rfRu0/3hpnwoUA==",
"dev": true
},
- "date-now": {
+ "node_modules/date-now": {
"version": "0.1.4",
"resolved": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz",
"integrity": "sha1-6vQ5/U1ISK105cx9vvIAZyueNFs=",
"dev": true
},
- "dateformat": {
- "version": "1.0.2-1.2.3",
- "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-1.0.2-1.2.3.tgz",
- "integrity": "sha1-sCIMAt6YYXQztyhRz0fePfLNvuk=",
- "dev": true
- },
- "debug": {
+ "node_modules/debug": {
"version": "4.3.4",
"resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
"integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"ms": "2.1.2"
+ },
+ "engines": {
+ "node": ">=6.0"
+ },
+ "peerDependenciesMeta": {
+ "supports-color": {
+ "optional": true
+ }
}
},
- "decamelize": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz",
- "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=",
- "dev": true
- },
- "dedent": {
+ "node_modules/dedent": {
"version": "0.7.0",
"resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz",
"integrity": "sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==",
"dev": true
},
- "deepmerge": {
+ "node_modules/deepmerge": {
"version": "4.2.2",
"resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz",
"integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/define-data-property": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz",
+ "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "es-define-property": "^1.0.0",
+ "es-errors": "^1.3.0",
+ "gopd": "^1.0.1"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
},
- "define-properties": {
+ "node_modules/define-properties": {
"version": "1.1.4",
"resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz",
"integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==",
"dev": true,
- "requires": {
+ "dependencies": {
"has-property-descriptors": "^1.0.0",
"object-keys": "^1.1.1"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "defined": {
+ "node_modules/defined": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz",
"integrity": "sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM=",
"dev": true
},
- "deps-sort": {
+ "node_modules/deps-sort": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/deps-sort/-/deps-sort-2.0.0.tgz",
"integrity": "sha1-CRckkC6EZYJg65EHSMzNGvbiH7U=",
"dev": true,
- "requires": {
+ "dependencies": {
"JSONStream": "^1.0.3",
"shasum": "^1.0.0",
"subarg": "^1.0.0",
"through2": "^2.0.0"
+ },
+ "bin": {
+ "deps-sort": "bin/cmd.js"
}
},
- "des.js": {
+ "node_modules/des.js": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.0.tgz",
"integrity": "sha1-wHTS4qpqipoH29YfmhXCzYPsjsw=",
"dev": true,
- "requires": {
+ "dependencies": {
"inherits": "^2.0.1",
"minimalistic-assert": "^1.0.0"
}
},
- "detect-newline": {
+ "node_modules/detect-newline": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz",
"integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
},
- "detective": {
+ "node_modules/detective": {
"version": "5.2.0",
"resolved": "https://registry.npmjs.org/detective/-/detective-5.2.0.tgz",
"integrity": "sha512-6SsIx+nUUbuK0EthKjv0zrdnajCCXVYGmbYYiYjFVpzcjwEs/JMDZ8tPRG29J/HhN56t3GJp2cGSWDRjjot8Pg==",
"dev": true,
- "requires": {
+ "dependencies": {
"acorn-node": "^1.6.1",
"defined": "^1.0.0",
"minimist": "^1.1.1"
+ },
+ "bin": {
+ "detective": "bin/detective.js"
+ },
+ "engines": {
+ "node": ">=0.8.0"
}
},
- "diff": {
+ "node_modules/diff": {
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/diff/-/diff-4.0.1.tgz",
"integrity": "sha512-s2+XdvhPCOF01LRQBC8hf4vhbVmI2CGS5aZnxLJlT5FtdhPCDFq80q++zK2KlrVorVDdL5BOGZ/VfLrVtYNF+Q==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=0.3.1"
+ }
},
- "diff-sequences": {
+ "node_modules/diff-sequences": {
"version": "29.3.1",
"resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.3.1.tgz",
"integrity": "sha512-hlM3QR272NXCi4pq+N4Kok4kOp6EsgOM3ZSpJI7Da3UAs+Ttsi8MRmB6trM/lhyzUxGfOgnpkHtgqm5Q/CTcfQ==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
},
- "diffie-hellman": {
+ "node_modules/diffie-hellman": {
"version": "5.0.3",
"resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz",
"integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==",
"dev": true,
- "requires": {
+ "dependencies": {
"bn.js": "^4.1.0",
"miller-rabin": "^4.0.0",
"randombytes": "^2.0.0"
}
},
- "domain-browser": {
+ "node_modules/domain-browser": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz",
"integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=0.4",
+ "npm": ">=1.2"
+ }
+ },
+ "node_modules/dunder-proto": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz",
+ "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bind-apply-helpers": "^1.0.1",
+ "es-errors": "^1.3.0",
+ "gopd": "^1.2.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
},
- "duplexer2": {
+ "node_modules/duplexer2": {
"version": "0.1.4",
"resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz",
"integrity": "sha1-ixLauHjA1p4+eJEFFmKjL8a93ME=",
"dev": true,
- "requires": {
+ "dependencies": {
"readable-stream": "^2.0.2"
}
},
- "electron-to-chromium": {
+ "node_modules/electron-to-chromium": {
"version": "1.4.284",
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.284.tgz",
"integrity": "sha512-M8WEXFuKXMYMVr45fo8mq0wUrrJHheiKZf6BArTKk9ZBYCKJEOU5H8cdWgDT+qCVZf7Na4lVUaZsA+h6uA9+PA==",
"dev": true
},
- "elliptic": {
- "version": "6.5.4",
- "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz",
- "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==",
+ "node_modules/elliptic": {
+ "version": "6.6.1",
+ "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.6.1.tgz",
+ "integrity": "sha512-RaddvvMatK2LJHqFJ+YA4WysVN5Ita9E35botqIYspQ4TkRAlCicdzKOjlyv/1Za5RyTNn7di//eEV0uTAfe3g==",
"dev": true,
- "requires": {
+ "license": "MIT",
+ "dependencies": {
"bn.js": "^4.11.9",
"brorand": "^1.1.0",
"hash.js": "^1.0.0",
@@ -2065,43 +2711,47 @@
"inherits": "^2.0.4",
"minimalistic-assert": "^1.0.1",
"minimalistic-crypto-utils": "^1.0.1"
- },
- "dependencies": {
- "inherits": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
- "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
- "dev": true
- }
}
},
- "emittery": {
+ "node_modules/elliptic/node_modules/inherits": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
+ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
+ "dev": true
+ },
+ "node_modules/emittery": {
"version": "0.13.1",
"resolved": "https://registry.npmjs.org/emittery/-/emittery-0.13.1.tgz",
"integrity": "sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/sindresorhus/emittery?sponsor=1"
+ }
},
- "emoji-regex": {
+ "node_modules/emoji-regex": {
"version": "8.0.0",
"resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
"integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
"dev": true
},
- "error-ex": {
+ "node_modules/error-ex": {
"version": "1.3.2",
"resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz",
"integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==",
"dev": true,
- "requires": {
+ "dependencies": {
"is-arrayish": "^0.2.1"
}
},
- "es-abstract": {
+ "node_modules/es-abstract": {
"version": "1.20.5",
"resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.20.5.tgz",
"integrity": "sha512-7h8MM2EQhsCA7pU/Nv78qOXFpD8Rhqd12gYiSJVkrH9+e8VuA8JlPJK/hQjjlLv6pJvx/z1iRFKzYb0XT/RuAQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"call-bind": "^1.0.2",
"es-to-primitive": "^1.2.1",
"function-bind": "^1.1.1",
@@ -2127,59 +2777,107 @@
"string.prototype.trimend": "^1.0.6",
"string.prototype.trimstart": "^1.0.6",
"unbox-primitive": "^1.0.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/es-define-property": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz",
+ "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/es-errors": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz",
+ "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/es-object-atoms": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz",
+ "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "es-errors": "^1.3.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
}
},
- "es-to-primitive": {
+ "node_modules/es-to-primitive": {
"version": "1.2.1",
"resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz",
"integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==",
"dev": true,
- "requires": {
+ "dependencies": {
"is-callable": "^1.1.4",
"is-date-object": "^1.0.1",
"is-symbol": "^1.0.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "escalade": {
+ "node_modules/escalade": {
"version": "3.1.1",
"resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
"integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=6"
+ }
},
- "escape-string-regexp": {
+ "node_modules/escape-string-regexp": {
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
"integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
- "dev": true
- },
- "eventemitter2": {
- "version": "0.4.14",
- "resolved": "https://registry.npmjs.org/eventemitter2/-/eventemitter2-0.4.14.tgz",
- "integrity": "sha1-j2G3XN4BKy6esoTUVFWDtWQ7Yas=",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=0.8.0"
+ }
},
- "events": {
+ "node_modules/events": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/events/-/events-2.1.0.tgz",
"integrity": "sha512-3Zmiobend8P9DjmKAty0Era4jV8oJ0yGYe2nJJAxgymF9+N8F2m0hhZiMoWtcfepExzNKZumFU3ksdQbInGWCg==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=0.4.x"
+ }
},
- "evp_bytestokey": {
+ "node_modules/evp_bytestokey": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz",
"integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==",
"dev": true,
- "requires": {
+ "dependencies": {
"md5.js": "^1.3.4",
"safe-buffer": "^5.1.1"
}
},
- "execa": {
+ "node_modules/execa": {
"version": "5.1.1",
"resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz",
"integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==",
"dev": true,
- "requires": {
+ "dependencies": {
"cross-spawn": "^7.0.3",
"get-stream": "^6.0.0",
"human-signals": "^2.1.0",
@@ -2189,1103 +2887,980 @@
"onetime": "^5.1.2",
"signal-exit": "^3.0.3",
"strip-final-newline": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sindresorhus/execa?sponsor=1"
}
},
- "exit": {
+ "node_modules/exit": {
"version": "0.1.2",
"resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz",
"integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">= 0.8.0"
+ }
},
- "expect": {
+ "node_modules/expect": {
"version": "29.3.1",
"resolved": "https://registry.npmjs.org/expect/-/expect-29.3.1.tgz",
"integrity": "sha512-gGb1yTgU30Q0O/tQq+z30KBWv24ApkMgFUpvKBkyLUBL68Wv8dHdJxTBZFl/iT8K/bqDHvUYRH6IIN3rToopPA==",
"dev": true,
- "requires": {
+ "dependencies": {
"@jest/expect-utils": "^29.3.1",
"jest-get-type": "^29.2.0",
"jest-matcher-utils": "^29.3.1",
"jest-message-util": "^29.3.1",
"jest-util": "^29.3.1"
- }
- },
- "extend-shallow": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz",
- "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=",
- "dev": true,
- "requires": {
- "assign-symbols": "^1.0.0",
- "is-extendable": "^1.0.1"
},
- "dependencies": {
- "is-extendable": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz",
- "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==",
- "dev": true,
- "requires": {
- "is-plain-object": "^2.0.4"
- }
- }
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
}
},
- "fast-json-stable-stringify": {
+ "node_modules/fast-json-stable-stringify": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
"integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==",
"dev": true
},
- "fb-watchman": {
+ "node_modules/fb-watchman": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz",
"integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==",
"dev": true,
- "requires": {
+ "dependencies": {
"bser": "2.1.1"
}
},
- "fill-range": {
- "version": "7.0.1",
- "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
- "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
+ "node_modules/fill-range": {
+ "version": "7.1.1",
+ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz",
+ "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==",
"dev": true,
- "requires": {
+ "license": "MIT",
+ "dependencies": {
"to-regex-range": "^5.0.1"
+ },
+ "engines": {
+ "node": ">=8"
}
},
- "find-up": {
+ "node_modules/find-up": {
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
"integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
"dev": true,
- "requires": {
+ "dependencies": {
"locate-path": "^5.0.0",
"path-exists": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
}
},
- "findup-sync": {
- "version": "0.1.3",
- "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-0.1.3.tgz",
- "integrity": "sha1-fz56l7gjksZTvwZYm9hRkOk8NoM=",
- "dev": true,
- "requires": {
- "glob": "~3.2.9",
- "lodash": "~2.4.1"
- },
- "dependencies": {
- "glob": {
- "version": "3.2.11",
- "resolved": "https://registry.npmjs.org/glob/-/glob-3.2.11.tgz",
- "integrity": "sha1-Spc/Y1uRkPcV0QmH1cAP0oFevj0=",
- "dev": true,
- "requires": {
- "inherits": "2",
- "minimatch": "0.3"
- }
- },
- "lodash": {
- "version": "2.4.2",
- "resolved": "https://registry.npmjs.org/lodash/-/lodash-2.4.2.tgz",
- "integrity": "sha1-+t2DS5aDBz2hebPq5tnA0VBT9z4=",
- "dev": true
- },
- "minimatch": {
- "version": "0.3.0",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-0.3.0.tgz",
- "integrity": "sha1-J12O2qxPG7MyZHIInnlJyDlGmd0=",
- "dev": true,
- "requires": {
- "lru-cache": "2",
- "sigmund": "~1.0.0"
- }
- }
+ "node_modules/for-each": {
+ "version": "0.3.5",
+ "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.5.tgz",
+ "integrity": "sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "is-callable": "^1.2.7"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "for-in": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz",
- "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=",
- "dev": true
- },
- "fs.realpath": {
+ "node_modules/fs.realpath": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
"integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
"dev": true
},
- "fsevents": {
+ "node_modules/fsevents": {
"version": "2.3.2",
"resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz",
"integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==",
"dev": true,
- "optional": true
+ "hasInstallScript": true,
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": "^8.16.0 || ^10.6.0 || >=11.0.0"
+ }
},
- "function-bind": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
- "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==",
- "dev": true
+ "node_modules/function-bind": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz",
+ "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==",
+ "dev": true,
+ "license": "MIT",
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
},
- "function.prototype.name": {
+ "node_modules/function.prototype.name": {
"version": "1.1.5",
"resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz",
"integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==",
"dev": true,
- "requires": {
+ "dependencies": {
"call-bind": "^1.0.2",
"define-properties": "^1.1.3",
"es-abstract": "^1.19.0",
"functions-have-names": "^1.2.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "functions-have-names": {
+ "node_modules/functions-have-names": {
"version": "1.2.3",
"resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz",
"integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==",
- "dev": true
+ "dev": true,
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
},
- "gensync": {
+ "node_modules/gensync": {
"version": "1.0.0-beta.2",
"resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz",
"integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=6.9.0"
+ }
},
- "get-assigned-identifiers": {
+ "node_modules/get-assigned-identifiers": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/get-assigned-identifiers/-/get-assigned-identifiers-1.2.0.tgz",
"integrity": "sha512-mBBwmeGTrxEMO4pMaaf/uUEFHnYtwr8FTe8Y/mer4rcV/bye0qGm6pw1bGZFGStxC5O76c5ZAVBGnqHmOaJpdQ==",
"dev": true
},
- "get-caller-file": {
+ "node_modules/get-caller-file": {
"version": "2.0.5",
"resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
"integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": "6.* || 8.* || >= 10.*"
+ }
},
- "get-intrinsic": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.3.tgz",
- "integrity": "sha512-QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==",
+ "node_modules/get-intrinsic": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz",
+ "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==",
"dev": true,
- "requires": {
- "function-bind": "^1.1.1",
- "has": "^1.0.3",
- "has-symbols": "^1.0.3"
+ "license": "MIT",
+ "dependencies": {
+ "call-bind-apply-helpers": "^1.0.2",
+ "es-define-property": "^1.0.1",
+ "es-errors": "^1.3.0",
+ "es-object-atoms": "^1.1.1",
+ "function-bind": "^1.1.2",
+ "get-proto": "^1.0.1",
+ "gopd": "^1.2.0",
+ "has-symbols": "^1.1.0",
+ "hasown": "^2.0.2",
+ "math-intrinsics": "^1.1.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "get-package-type": {
+ "node_modules/get-package-type": {
"version": "0.1.0",
"resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz",
"integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=8.0.0"
+ }
+ },
+ "node_modules/get-proto": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz",
+ "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "dunder-proto": "^1.0.1",
+ "es-object-atoms": "^1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
},
- "get-stream": {
+ "node_modules/get-stream": {
"version": "6.0.1",
"resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz",
"integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
},
- "get-symbol-description": {
+ "node_modules/get-symbol-description": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz",
"integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==",
"dev": true,
- "requires": {
+ "dependencies": {
"call-bind": "^1.0.2",
"get-intrinsic": "^1.1.1"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "getobject": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/getobject/-/getobject-0.1.0.tgz",
- "integrity": "sha1-BHpEl4n6Fg0Bj1SG7ZEyC27HiFw=",
- "dev": true
- },
- "glob": {
+ "node_modules/glob": {
"version": "7.1.4",
"resolved": "https://registry.npmjs.org/glob/-/glob-7.1.4.tgz",
"integrity": "sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A==",
+ "deprecated": "Glob versions prior to v9 are no longer supported",
"dev": true,
- "requires": {
+ "dependencies": {
"fs.realpath": "^1.0.0",
"inflight": "^1.0.4",
"inherits": "2",
"minimatch": "^3.0.4",
"once": "^1.3.0",
"path-is-absolute": "^1.0.0"
+ },
+ "engines": {
+ "node": "*"
}
},
- "globals": {
- "version": "11.12.0",
- "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz",
- "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==",
- "dev": true
- },
- "gopd": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz",
- "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==",
+ "node_modules/gopd": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz",
+ "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==",
"dev": true,
- "requires": {
- "get-intrinsic": "^1.1.3"
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "graceful-fs": {
+ "node_modules/graceful-fs": {
"version": "4.2.10",
"resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz",
"integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==",
"dev": true
},
- "growly": {
+ "node_modules/growly": {
"version": "1.3.0",
"resolved": "https://registry.npmjs.org/growly/-/growly-1.3.0.tgz",
"integrity": "sha1-8QdIy+dq+WS3yWyTxrzCivEgwIE=",
- "dev": true
- },
- "grunt": {
- "version": "0.4.5",
- "resolved": "https://registry.npmjs.org/grunt/-/grunt-0.4.5.tgz",
- "integrity": "sha1-VpN81RlDJK3/bSB2MYMqnWuk5/A=",
- "dev": true,
- "requires": {
- "async": "~0.1.22",
- "coffee-script": "~1.3.3",
- "colors": "~0.6.2",
- "dateformat": "1.0.2-1.2.3",
- "eventemitter2": "~0.4.13",
- "exit": "~0.1.1",
- "findup-sync": "~0.1.2",
- "getobject": "~0.1.0",
- "glob": "~3.1.21",
- "grunt-legacy-log": "~0.1.0",
- "grunt-legacy-util": "~0.2.0",
- "hooker": "~0.2.3",
- "iconv-lite": "~0.2.11",
- "js-yaml": "~2.0.5",
- "lodash": "~0.9.2",
- "minimatch": "~0.2.12",
- "nopt": "~1.0.10",
- "rimraf": "~2.2.8",
- "underscore.string": "~2.2.1",
- "which": "~1.0.5"
- },
- "dependencies": {
- "argparse": {
- "version": "0.1.16",
- "resolved": "https://registry.npmjs.org/argparse/-/argparse-0.1.16.tgz",
- "integrity": "sha1-z9AeD7uj1srtBJ+9dY1A9lGW9Xw=",
- "dev": true,
- "requires": {
- "underscore": "~1.7.0",
- "underscore.string": "~2.4.0"
- },
- "dependencies": {
- "underscore.string": {
- "version": "2.4.0",
- "resolved": "https://registry.npmjs.org/underscore.string/-/underscore.string-2.4.0.tgz",
- "integrity": "sha1-jN2PusTi0uoefi6Al8QvRCKA+Fs=",
- "dev": true
- }
- }
- },
- "esprima": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/esprima/-/esprima-1.0.4.tgz",
- "integrity": "sha1-n1V+CPw7TSbs6d00+Pv0drYlha0=",
- "dev": true
- },
- "glob": {
- "version": "3.1.21",
- "resolved": "https://registry.npmjs.org/glob/-/glob-3.1.21.tgz",
- "integrity": "sha1-0p4KBV3qUTj00H7UDomC6DwgZs0=",
- "dev": true,
- "requires": {
- "graceful-fs": "~1.2.0",
- "inherits": "1",
- "minimatch": "~0.2.11"
- }
- },
- "graceful-fs": {
- "version": "1.2.3",
- "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-1.2.3.tgz",
- "integrity": "sha1-FaSAaldUfLLS2/J/QuiajDRRs2Q=",
- "dev": true
- },
- "iconv-lite": {
- "version": "0.2.11",
- "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.2.11.tgz",
- "integrity": "sha1-HOYKOleGSiktEyH/RgnKS7llrcg=",
- "dev": true
- },
- "inherits": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/inherits/-/inherits-1.0.2.tgz",
- "integrity": "sha1-ykMJ2t7mtUzAuNJH6NfHoJdb3Js=",
- "dev": true
- },
- "js-yaml": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-2.0.5.tgz",
- "integrity": "sha1-olrmUJmZ6X3yeMZxnaEb0Gh3Q6g=",
- "dev": true,
- "requires": {
- "argparse": "~ 0.1.11",
- "esprima": "~ 1.0.2"
- }
- },
- "lodash": {
- "version": "0.9.2",
- "resolved": "https://registry.npmjs.org/lodash/-/lodash-0.9.2.tgz",
- "integrity": "sha1-jzSZxSRdNG1oLlsNO0B2fgnxqSw=",
- "dev": true
- },
- "minimatch": {
- "version": "0.2.14",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-0.2.14.tgz",
- "integrity": "sha1-x054BXT2PG+aCQ6Q775u9TpqdWo=",
- "dev": true,
- "requires": {
- "lru-cache": "2",
- "sigmund": "~1.0.0"
- }
- },
- "rimraf": {
- "version": "2.2.8",
- "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.2.8.tgz",
- "integrity": "sha1-5Dm+Kq7jJzIZUnMPmaiSnk/FBYI=",
- "dev": true
- },
- "underscore": {
- "version": "1.7.0",
- "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.7.0.tgz",
- "integrity": "sha1-a7rwh3UA02vjTsqlhODbn+8DUgk=",
- "dev": true
- },
- "underscore.string": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/underscore.string/-/underscore.string-2.2.1.tgz",
- "integrity": "sha1-18D6KvXVoaZ/QlPa7pgTLnM/Dxk=",
- "dev": true
- },
- "which": {
- "version": "1.0.9",
- "resolved": "https://registry.npmjs.org/which/-/which-1.0.9.tgz",
- "integrity": "sha1-RgwdoPgQED0DIam2M6+eV15kSG8=",
- "dev": true
- }
- }
- },
- "grunt-contrib-clean": {
- "version": "0.5.0",
- "resolved": "https://registry.npmjs.org/grunt-contrib-clean/-/grunt-contrib-clean-0.5.0.tgz",
- "integrity": "sha1-9T397ghJsce0Dp67umn0jExgecU=",
- "dev": true,
- "requires": {
- "rimraf": "~2.2.1"
- },
- "dependencies": {
- "rimraf": {
- "version": "2.2.8",
- "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.2.8.tgz",
- "integrity": "sha1-5Dm+Kq7jJzIZUnMPmaiSnk/FBYI=",
- "dev": true
- }
- }
- },
- "grunt-contrib-concat": {
- "version": "0.3.0",
- "resolved": "https://registry.npmjs.org/grunt-contrib-concat/-/grunt-contrib-concat-0.3.0.tgz",
- "integrity": "sha1-SPoNQzbSm2U62CJaa9b4VrRIPjI=",
- "dev": true
- },
- "grunt-contrib-copy": {
- "version": "0.5.0",
- "resolved": "https://registry.npmjs.org/grunt-contrib-copy/-/grunt-contrib-copy-0.5.0.tgz",
- "integrity": "sha1-QQB1rEWlhWuhkbHMclclRQ1KAhU=",
- "dev": true
- },
- "grunt-contrib-cssmin": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/grunt-contrib-cssmin/-/grunt-contrib-cssmin-0.6.1.tgz",
- "integrity": "sha1-U05jK/4ZUhshw2RncVe4sR4XPvw=",
- "dev": true,
- "requires": {
- "clean-css": "~1.0.4",
- "grunt-lib-contrib": "~0.6.0"
- },
- "dependencies": {
- "clean-css": {
- "version": "1.0.12",
- "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-1.0.12.tgz",
- "integrity": "sha1-5uDZd4YEZjY9kRChdCPSfNaHQwA=",
- "dev": true,
- "requires": {
- "commander": "1.3.x"
- }
- },
- "commander": {
- "version": "1.3.2",
- "resolved": "https://registry.npmjs.org/commander/-/commander-1.3.2.tgz",
- "integrity": "sha1-io8w7GcKb91kr1LxkUuQfXnq1bU=",
- "dev": true,
- "requires": {
- "keypress": "0.1.x"
- }
- }
- }
- },
- "grunt-contrib-uglify": {
- "version": "0.2.4",
- "resolved": "https://registry.npmjs.org/grunt-contrib-uglify/-/grunt-contrib-uglify-0.2.4.tgz",
- "integrity": "sha1-URE/KKckMlIeNeY/fxiiUf2i/Uk=",
- "dev": true,
- "requires": {
- "grunt-lib-contrib": "~0.6.1",
- "uglify-js": "~2.4.0"
- },
- "dependencies": {
- "async": {
- "version": "0.2.10",
- "resolved": "https://registry.npmjs.org/async/-/async-0.2.10.tgz",
- "integrity": "sha1-trvgsGdLnXGXCMo43owjfLUmw9E=",
- "dev": true
- },
- "camelcase": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz",
- "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=",
- "dev": true
- },
- "source-map": {
- "version": "0.1.34",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.34.tgz",
- "integrity": "sha1-p8/omux7FoLDsZjQrPtH19CQVms=",
- "dev": true,
- "requires": {
- "amdefine": ">=0.0.4"
- }
- },
- "uglify-js": {
- "version": "2.4.24",
- "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.4.24.tgz",
- "integrity": "sha1-+tV1XB4Vd2WLsG/5q25UjJW+vW4=",
- "dev": true,
- "requires": {
- "async": "~0.2.6",
- "source-map": "0.1.34",
- "uglify-to-browserify": "~1.0.0",
- "yargs": "~3.5.4"
- }
- },
- "wordwrap": {
- "version": "0.0.2",
- "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz",
- "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=",
- "dev": true
- },
- "yargs": {
- "version": "3.5.4",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.5.4.tgz",
- "integrity": "sha1-2K/49mXpTDS9JZvevRv68N3TU2E=",
- "dev": true,
- "requires": {
- "camelcase": "^1.0.2",
- "decamelize": "^1.0.0",
- "window-size": "0.1.0",
- "wordwrap": "0.0.2"
- }
- }
- }
- },
- "grunt-css-url-replace": {
- "version": "0.2.7",
- "resolved": "https://registry.npmjs.org/grunt-css-url-replace/-/grunt-css-url-replace-0.2.7.tgz",
- "integrity": "sha1-lcZb/x78FTvxfHlf0+EiLH+kp0U=",
- "dev": true
- },
- "grunt-legacy-log": {
- "version": "0.1.3",
- "resolved": "https://registry.npmjs.org/grunt-legacy-log/-/grunt-legacy-log-0.1.3.tgz",
- "integrity": "sha1-7ClCboAwIa9ZAp+H0vnNczWgVTE=",
- "dev": true,
- "requires": {
- "colors": "~0.6.2",
- "grunt-legacy-log-utils": "~0.1.1",
- "hooker": "~0.2.3",
- "lodash": "~2.4.1",
- "underscore.string": "~2.3.3"
- },
- "dependencies": {
- "lodash": {
- "version": "2.4.2",
- "resolved": "https://registry.npmjs.org/lodash/-/lodash-2.4.2.tgz",
- "integrity": "sha1-+t2DS5aDBz2hebPq5tnA0VBT9z4=",
- "dev": true
- },
- "underscore.string": {
- "version": "2.3.3",
- "resolved": "https://registry.npmjs.org/underscore.string/-/underscore.string-2.3.3.tgz",
- "integrity": "sha1-ccCL9rQosRM/N+ePo6Icgvcymw0=",
- "dev": true
- }
- }
- },
- "grunt-legacy-log-utils": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/grunt-legacy-log-utils/-/grunt-legacy-log-utils-0.1.1.tgz",
- "integrity": "sha1-wHBrndkGThFvNvI/5OawSGcsD34=",
- "dev": true,
- "requires": {
- "colors": "~0.6.2",
- "lodash": "~2.4.1",
- "underscore.string": "~2.3.3"
- },
- "dependencies": {
- "lodash": {
- "version": "2.4.2",
- "resolved": "https://registry.npmjs.org/lodash/-/lodash-2.4.2.tgz",
- "integrity": "sha1-+t2DS5aDBz2hebPq5tnA0VBT9z4=",
- "dev": true
- },
- "underscore.string": {
- "version": "2.3.3",
- "resolved": "https://registry.npmjs.org/underscore.string/-/underscore.string-2.3.3.tgz",
- "integrity": "sha1-ccCL9rQosRM/N+ePo6Icgvcymw0=",
- "dev": true
- }
- }
- },
- "grunt-legacy-util": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/grunt-legacy-util/-/grunt-legacy-util-0.2.0.tgz",
- "integrity": "sha1-kzJIhNv343qf98Am3/RR2UqeVUs=",
- "dev": true,
- "requires": {
- "async": "~0.1.22",
- "exit": "~0.1.1",
- "getobject": "~0.1.0",
- "hooker": "~0.2.3",
- "lodash": "~0.9.2",
- "underscore.string": "~2.2.1",
- "which": "~1.0.5"
- },
- "dependencies": {
- "lodash": {
- "version": "0.9.2",
- "resolved": "https://registry.npmjs.org/lodash/-/lodash-0.9.2.tgz",
- "integrity": "sha1-jzSZxSRdNG1oLlsNO0B2fgnxqSw=",
- "dev": true
- },
- "underscore.string": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/underscore.string/-/underscore.string-2.2.1.tgz",
- "integrity": "sha1-18D6KvXVoaZ/QlPa7pgTLnM/Dxk=",
- "dev": true
- },
- "which": {
- "version": "1.0.9",
- "resolved": "https://registry.npmjs.org/which/-/which-1.0.9.tgz",
- "integrity": "sha1-RgwdoPgQED0DIam2M6+eV15kSG8=",
- "dev": true
- }
- }
- },
- "grunt-lib-contrib": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/grunt-lib-contrib/-/grunt-lib-contrib-0.6.1.tgz",
- "integrity": "sha1-P1att9oG6BR5XuJBWw6+X7iQPrs=",
"dev": true,
- "requires": {
- "zlib-browserify": "0.0.1"
- }
+ "optional": true,
+ "peer": true
},
- "has": {
+ "node_modules/has": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
"integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
"dev": true,
- "requires": {
+ "dependencies": {
"function-bind": "^1.1.1"
+ },
+ "engines": {
+ "node": ">= 0.4.0"
}
},
- "has-bigints": {
+ "node_modules/has-bigints": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz",
"integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==",
- "dev": true
+ "dev": true,
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
},
- "has-flag": {
+ "node_modules/has-flag": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
"integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=4"
+ }
},
- "has-property-descriptors": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz",
- "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==",
+ "node_modules/has-property-descriptors": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz",
+ "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==",
"dev": true,
- "requires": {
- "get-intrinsic": "^1.1.1"
+ "license": "MIT",
+ "dependencies": {
+ "es-define-property": "^1.0.0"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "has-symbols": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz",
- "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==",
- "dev": true
+ "node_modules/has-symbols": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz",
+ "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
},
- "has-tostringtag": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz",
- "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==",
+ "node_modules/has-tostringtag": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz",
+ "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==",
"dev": true,
- "requires": {
- "has-symbols": "^1.0.2"
+ "license": "MIT",
+ "dependencies": {
+ "has-symbols": "^1.0.3"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "hash-base": {
+ "node_modules/hash-base": {
"version": "3.0.4",
"resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz",
"integrity": "sha1-X8hoaEfs1zSZQDMZprCj8/auSRg=",
"dev": true,
- "requires": {
+ "dependencies": {
"inherits": "^2.0.1",
"safe-buffer": "^5.0.1"
+ },
+ "engines": {
+ "node": ">=4"
}
},
- "hash.js": {
+ "node_modules/hash.js": {
"version": "1.1.7",
"resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz",
"integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==",
"dev": true,
- "requires": {
+ "dependencies": {
"inherits": "^2.0.3",
"minimalistic-assert": "^1.0.1"
}
},
- "hmac-drbg": {
+ "node_modules/hasown": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz",
+ "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "function-bind": "^1.1.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/hmac-drbg": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz",
"integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=",
"dev": true,
- "requires": {
+ "dependencies": {
"hash.js": "^1.0.3",
"minimalistic-assert": "^1.0.0",
"minimalistic-crypto-utils": "^1.0.1"
}
},
- "hooker": {
- "version": "0.2.3",
- "resolved": "https://registry.npmjs.org/hooker/-/hooker-0.2.3.tgz",
- "integrity": "sha1-uDT3I8xKJCqmWWNFnfbZhMXT2Vk=",
- "dev": true
- },
- "hosted-git-info": {
+ "node_modules/hosted-git-info": {
"version": "2.8.9",
"resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz",
"integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==",
"dev": true
},
- "html-escaper": {
+ "node_modules/html-escaper": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz",
"integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==",
"dev": true
},
- "htmlescape": {
+ "node_modules/htmlescape": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/htmlescape/-/htmlescape-1.1.1.tgz",
"integrity": "sha1-OgPtwiFLyjtmQko+eVk0lQnLA1E=",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=0.10"
+ }
},
- "https-browserify": {
+ "node_modules/https-browserify": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz",
"integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=",
"dev": true
},
- "human-signals": {
+ "node_modules/https-proxy-agent": {
+ "version": "7.0.6",
+ "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz",
+ "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "agent-base": "^7.1.2",
+ "debug": "4"
+ },
+ "engines": {
+ "node": ">= 14"
+ }
+ },
+ "node_modules/human-signals": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz",
"integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=10.17.0"
+ }
},
- "ieee754": {
+ "node_modules/ieee754": {
"version": "1.1.13",
"resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz",
"integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==",
"dev": true
},
- "import-local": {
+ "node_modules/import-local": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz",
"integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==",
"dev": true,
- "requires": {
+ "dependencies": {
"pkg-dir": "^4.2.0",
"resolve-cwd": "^3.0.0"
+ },
+ "bin": {
+ "import-local-fixture": "fixtures/cli.js"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
}
},
- "imurmurhash": {
+ "node_modules/imurmurhash": {
"version": "0.1.4",
"resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
"integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=0.8.19"
+ }
},
- "inflight": {
+ "node_modules/inflight": {
"version": "1.0.6",
"resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
"integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
+ "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.",
"dev": true,
- "requires": {
+ "dependencies": {
"once": "^1.3.0",
"wrappy": "1"
}
},
- "inherits": {
+ "node_modules/inherits": {
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
"integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=",
"dev": true
},
- "inline-source-map": {
+ "node_modules/inline-source-map": {
"version": "0.6.2",
"resolved": "https://registry.npmjs.org/inline-source-map/-/inline-source-map-0.6.2.tgz",
"integrity": "sha1-+Tk0ccGKedFyT4Y/o4tYY3Ct4qU=",
"dev": true,
- "requires": {
- "source-map": "~0.5.3"
- },
"dependencies": {
- "source-map": {
- "version": "0.5.7",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
- "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
- "dev": true
- }
+ "source-map": "~0.5.3"
+ }
+ },
+ "node_modules/inline-source-map/node_modules/source-map": {
+ "version": "0.5.7",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
+ "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
}
},
- "insert-module-globals": {
+ "node_modules/insert-module-globals": {
"version": "7.2.0",
"resolved": "https://registry.npmjs.org/insert-module-globals/-/insert-module-globals-7.2.0.tgz",
"integrity": "sha512-VE6NlW+WGn2/AeOMd496AHFYmE7eLKkUY6Ty31k4og5vmA3Fjuwe9v6ifH6Xx/Hz27QvdoMoviw1/pqWRB09Sw==",
"dev": true,
- "requires": {
- "JSONStream": "^1.0.3",
+ "dependencies": {
"acorn-node": "^1.5.2",
"combine-source-map": "^0.8.0",
"concat-stream": "^1.6.1",
"is-buffer": "^1.1.0",
+ "JSONStream": "^1.0.3",
"path-is-absolute": "^1.0.1",
"process": "~0.11.0",
"through2": "^2.0.0",
"undeclared-identifiers": "^1.1.2",
"xtend": "^4.0.0"
+ },
+ "bin": {
+ "insert-module-globals": "bin/cmd.js"
}
},
- "internal-slot": {
+ "node_modules/internal-slot": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.4.tgz",
"integrity": "sha512-tA8URYccNzMo94s5MQZgH8NB/XTa6HsOo0MLfXTKKEnHVVdegzaQoFZ7Jp44bdvLvY2waT5dc+j5ICEswhi7UQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"get-intrinsic": "^1.1.3",
"has": "^1.0.3",
"side-channel": "^1.0.4"
+ },
+ "engines": {
+ "node": ">= 0.4"
}
},
- "is-arrayish": {
+ "node_modules/is-arrayish": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz",
"integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=",
"dev": true
},
- "is-bigint": {
+ "node_modules/is-bigint": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz",
"integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==",
"dev": true,
- "requires": {
+ "dependencies": {
"has-bigints": "^1.0.1"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "is-boolean-object": {
+ "node_modules/is-boolean-object": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz",
"integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==",
"dev": true,
- "requires": {
+ "dependencies": {
"call-bind": "^1.0.2",
"has-tostringtag": "^1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "is-buffer": {
+ "node_modules/is-buffer": {
"version": "1.1.6",
"resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz",
"integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==",
"dev": true
},
- "is-callable": {
+ "node_modules/is-callable": {
"version": "1.2.7",
"resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz",
"integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
},
- "is-core-module": {
+ "node_modules/is-core-module": {
"version": "2.11.0",
"resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz",
"integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==",
"dev": true,
- "requires": {
+ "dependencies": {
"has": "^1.0.3"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "is-date-object": {
+ "node_modules/is-date-object": {
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz",
"integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"has-tostringtag": "^1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "is-docker": {
+ "node_modules/is-docker": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.1.1.tgz",
"integrity": "sha512-ZOoqiXfEwtGknTiuDEy8pN2CfE3TxMHprvNer1mXiqwkOT77Rw3YVrUQ52EqAOU3QAWDQ+bQdx7HJzrv7LS2Hw==",
- "dev": true
- },
- "is-extendable": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz",
- "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=",
- "dev": true
+ "dev": true,
+ "optional": true,
+ "peer": true,
+ "bin": {
+ "is-docker": "cli.js"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
},
- "is-fullwidth-code-point": {
+ "node_modules/is-fullwidth-code-point": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
"integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
},
- "is-generator-fn": {
+ "node_modules/is-generator-fn": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz",
"integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=6"
+ }
},
- "is-negative-zero": {
+ "node_modules/is-negative-zero": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz",
"integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
},
- "is-number": {
+ "node_modules/is-number": {
"version": "7.0.0",
"resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
"integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
- "dev": true
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.12.0"
+ }
},
- "is-number-object": {
+ "node_modules/is-number-object": {
"version": "1.0.7",
"resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz",
"integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"has-tostringtag": "^1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "is-plain-object": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz",
- "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==",
- "dev": true,
- "requires": {
- "isobject": "^3.0.1"
- }
- },
- "is-regex": {
+ "node_modules/is-regex": {
"version": "1.1.4",
"resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz",
"integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==",
"dev": true,
- "requires": {
+ "dependencies": {
"call-bind": "^1.0.2",
"has-tostringtag": "^1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "is-shared-array-buffer": {
+ "node_modules/is-shared-array-buffer": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz",
"integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==",
"dev": true,
- "requires": {
+ "dependencies": {
"call-bind": "^1.0.2"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "is-stream": {
+ "node_modules/is-stream": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz",
"integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
},
- "is-string": {
+ "node_modules/is-string": {
"version": "1.0.7",
"resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz",
"integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==",
"dev": true,
- "requires": {
+ "dependencies": {
"has-tostringtag": "^1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "is-symbol": {
+ "node_modules/is-symbol": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz",
"integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==",
"dev": true,
- "requires": {
+ "dependencies": {
"has-symbols": "^1.0.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-typed-array": {
+ "version": "1.1.15",
+ "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.15.tgz",
+ "integrity": "sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "which-typed-array": "^1.1.16"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "is-utf8": {
+ "node_modules/is-utf8": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz",
"integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=",
"dev": true
},
- "is-weakref": {
+ "node_modules/is-weakref": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz",
"integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"call-bind": "^1.0.2"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "isarray": {
+ "node_modules/isarray": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
"integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
"dev": true
},
- "isexe": {
+ "node_modules/isexe": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
"integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=",
"dev": true
},
- "isobject": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
- "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=",
- "dev": true
- },
- "istanbul-lib-coverage": {
+ "node_modules/istanbul-lib-coverage": {
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz",
"integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
},
- "istanbul-lib-instrument": {
+ "node_modules/istanbul-lib-instrument": {
"version": "5.2.1",
"resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz",
"integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==",
"dev": true,
- "requires": {
+ "dependencies": {
"@babel/core": "^7.12.3",
"@babel/parser": "^7.14.7",
"@istanbuljs/schema": "^0.1.2",
"istanbul-lib-coverage": "^3.2.0",
"semver": "^6.3.0"
},
- "dependencies": {
- "semver": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
- "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
- "dev": true
- }
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/istanbul-lib-instrument/node_modules/semver": {
+ "version": "6.3.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+ "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
+ "dev": true,
+ "license": "ISC",
+ "bin": {
+ "semver": "bin/semver.js"
}
},
- "istanbul-lib-report": {
+ "node_modules/istanbul-lib-report": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz",
"integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==",
"dev": true,
- "requires": {
+ "dependencies": {
"istanbul-lib-coverage": "^3.0.0",
"make-dir": "^3.0.0",
"supports-color": "^7.1.0"
},
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/istanbul-lib-report/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/istanbul-lib-report/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
"dependencies": {
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "dev": true
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
}
},
- "istanbul-lib-source-maps": {
+ "node_modules/istanbul-lib-source-maps": {
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz",
"integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==",
"dev": true,
- "requires": {
+ "dependencies": {
"debug": "^4.1.1",
"istanbul-lib-coverage": "^3.0.0",
"source-map": "^0.6.1"
+ },
+ "engines": {
+ "node": ">=10"
}
},
- "istanbul-reports": {
+ "node_modules/istanbul-reports": {
"version": "3.1.5",
"resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.5.tgz",
"integrity": "sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w==",
"dev": true,
- "requires": {
+ "dependencies": {
"html-escaper": "^2.0.0",
"istanbul-lib-report": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=8"
}
},
- "jest": {
+ "node_modules/jest": {
"version": "29.3.1",
"resolved": "https://registry.npmjs.org/jest/-/jest-29.3.1.tgz",
"integrity": "sha512-6iWfL5DTT0Np6UYs/y5Niu7WIfNv/wRTtN5RSXt2DIEft3dx3zPuw/3WJQBCJfmEzvDiEKwoqMbGD9n49+qLSA==",
"dev": true,
- "requires": {
+ "dependencies": {
"@jest/core": "^29.3.1",
"@jest/types": "^29.3.1",
"import-local": "^3.0.2",
"jest-cli": "^29.3.1"
+ },
+ "bin": {
+ "jest": "bin/jest.js"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ },
+ "peerDependencies": {
+ "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0"
+ },
+ "peerDependenciesMeta": {
+ "node-notifier": {
+ "optional": true
+ }
}
},
- "jest-changed-files": {
+ "node_modules/jest-changed-files": {
"version": "29.2.0",
"resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-29.2.0.tgz",
"integrity": "sha512-qPVmLLyBmvF5HJrY7krDisx6Voi8DmlV3GZYX0aFNbaQsZeoz1hfxcCMbqDGuQCxU1dJy9eYc2xscE8QrCCYaA==",
"dev": true,
- "requires": {
+ "dependencies": {
"execa": "^5.0.0",
"p-limit": "^3.1.0"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
}
},
- "jest-circus": {
+ "node_modules/jest-circus": {
"version": "29.3.1",
"resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-29.3.1.tgz",
"integrity": "sha512-wpr26sEvwb3qQQbdlmei+gzp6yoSSoSL6GsLPxnuayZSMrSd5Ka7IjAvatpIernBvT2+Ic6RLTg+jSebScmasg==",
"dev": true,
- "requires": {
+ "dependencies": {
"@jest/environment": "^29.3.1",
"@jest/expect": "^29.3.1",
"@jest/test-result": "^29.3.1",
@@ -3306,64 +3881,86 @@
"slash": "^3.0.0",
"stack-utils": "^2.0.3"
},
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/jest-circus/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
"dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "dev": true
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/jest-circus/node_modules/chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/chalk?sponsor=1"
+ }
+ },
+ "node_modules/jest-circus/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/jest-circus/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/jest-circus/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-circus/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
}
},
- "jest-cli": {
+ "node_modules/jest-cli": {
"version": "29.3.1",
"resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-29.3.1.tgz",
"integrity": "sha512-TO/ewvwyvPOiBBuWZ0gm04z3WWP8TIK8acgPzE4IxgsLKQgb377NYGrQLc3Wl/7ndWzIH2CDNNsUjGxwLL43VQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"@jest/core": "^29.3.1",
"@jest/test-result": "^29.3.1",
"@jest/types": "^29.3.1",
@@ -3377,64 +3974,97 @@
"prompts": "^2.0.1",
"yargs": "^17.3.1"
},
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "dev": true
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
+ "bin": {
+ "jest": "bin/jest.js"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ },
+ "peerDependencies": {
+ "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0"
+ },
+ "peerDependenciesMeta": {
+ "node-notifier": {
+ "optional": true
}
}
},
- "jest-config": {
+ "node_modules/jest-cli/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/jest-cli/node_modules/chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/chalk?sponsor=1"
+ }
+ },
+ "node_modules/jest-cli/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/jest-cli/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/jest-cli/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-cli/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-config": {
"version": "29.3.1",
"resolved": "https://registry.npmjs.org/jest-config/-/jest-config-29.3.1.tgz",
"integrity": "sha512-y0tFHdj2WnTEhxmGUK1T7fgLen7YK4RtfvpLFBXfQkh2eMJAQq24Vx9472lvn5wg0MAO6B+iPfJfzdR9hJYalg==",
"dev": true,
- "requires": {
+ "dependencies": {
"@babel/core": "^7.11.6",
"@jest/test-sequencer": "^29.3.1",
"@jest/types": "^29.3.1",
@@ -3458,319 +4088,442 @@
"slash": "^3.0.0",
"strip-json-comments": "^3.1.1"
},
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "dev": true
- },
- "strip-json-comments": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz",
- "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==",
- "dev": true
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ },
+ "peerDependencies": {
+ "@types/node": "*",
+ "ts-node": ">=9.0.0"
+ },
+ "peerDependenciesMeta": {
+ "@types/node": {
+ "optional": true
},
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
+ "ts-node": {
+ "optional": true
}
}
},
- "jest-diff": {
+ "node_modules/jest-config/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/jest-config/node_modules/chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/chalk?sponsor=1"
+ }
+ },
+ "node_modules/jest-config/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/jest-config/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/jest-config/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-config/node_modules/strip-json-comments": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz",
+ "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/jest-config/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-diff": {
"version": "29.3.1",
"resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.3.1.tgz",
"integrity": "sha512-vU8vyiO7568tmin2lA3r2DP8oRvzhvRcD4DjpXc6uGveQodyk7CKLhQlCSiwgx3g0pFaE88/KLZ0yaTWMc4Uiw==",
"dev": true,
- "requires": {
+ "dependencies": {
"chalk": "^4.0.0",
"diff-sequences": "^29.3.1",
"jest-get-type": "^29.2.0",
"pretty-format": "^29.3.1"
},
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "dev": true
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
}
},
- "jest-docblock": {
- "version": "29.2.0",
- "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.2.0.tgz",
- "integrity": "sha512-bkxUsxTgWQGbXV5IENmfiIuqZhJcyvF7tU4zJ/7ioTutdz4ToB5Yx6JOFBpgI+TphRY4lhOyCWGNH/QFQh5T6A==",
+ "node_modules/jest-diff/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
"dev": true,
- "requires": {
- "detect-newline": "^3.0.0"
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
}
},
- "jest-each": {
- "version": "29.3.1",
- "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-29.3.1.tgz",
- "integrity": "sha512-qrZH7PmFB9rEzCSl00BWjZYuS1BSOH8lLuC0azQE9lQrAx3PWGKHTDudQiOSwIy5dGAJh7KA0ScYlCP7JxvFYA==",
+ "node_modules/jest-diff/node_modules/chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
"dev": true,
- "requires": {
- "@jest/types": "^29.3.1",
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/chalk?sponsor=1"
+ }
+ },
+ "node_modules/jest-diff/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/jest-diff/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/jest-diff/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-diff/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-docblock": {
+ "version": "29.2.0",
+ "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.2.0.tgz",
+ "integrity": "sha512-bkxUsxTgWQGbXV5IENmfiIuqZhJcyvF7tU4zJ/7ioTutdz4ToB5Yx6JOFBpgI+TphRY4lhOyCWGNH/QFQh5T6A==",
+ "dev": true,
+ "dependencies": {
+ "detect-newline": "^3.0.0"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/jest-each": {
+ "version": "29.3.1",
+ "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-29.3.1.tgz",
+ "integrity": "sha512-qrZH7PmFB9rEzCSl00BWjZYuS1BSOH8lLuC0azQE9lQrAx3PWGKHTDudQiOSwIy5dGAJh7KA0ScYlCP7JxvFYA==",
+ "dev": true,
+ "dependencies": {
+ "@jest/types": "^29.3.1",
"chalk": "^4.0.0",
"jest-get-type": "^29.2.0",
"jest-util": "^29.3.1",
"pretty-format": "^29.3.1"
},
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/jest-each/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
"dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "dev": true
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/jest-each/node_modules/chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/chalk?sponsor=1"
+ }
+ },
+ "node_modules/jest-each/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
}
},
- "jest-environment-node": {
+ "node_modules/jest-each/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/jest-each/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-each/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-environment-node": {
"version": "29.3.1",
"resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.3.1.tgz",
"integrity": "sha512-xm2THL18Xf5sIHoU7OThBPtuH6Lerd+Y1NLYiZJlkE3hbE+7N7r8uvHIl/FkZ5ymKXJe/11SQuf3fv4v6rUMag==",
"dev": true,
- "requires": {
+ "dependencies": {
"@jest/environment": "^29.3.1",
"@jest/fake-timers": "^29.3.1",
"@jest/types": "^29.3.1",
"@types/node": "*",
"jest-mock": "^29.3.1",
"jest-util": "^29.3.1"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
}
},
- "jest-get-type": {
+ "node_modules/jest-get-type": {
"version": "29.2.0",
"resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.2.0.tgz",
"integrity": "sha512-uXNJlg8hKFEnDgFsrCjznB+sTxdkuqiCL6zMgA75qEbAJjJYTs9XPrvDctrEig2GDow22T/LvHgO57iJhXB/UA==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
},
- "jest-haste-map": {
+ "node_modules/jest-haste-map": {
"version": "29.3.1",
"resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.3.1.tgz",
"integrity": "sha512-/FFtvoG1xjbbPXQLFef+WSU4yrc0fc0Dds6aRPBojUid7qlPqZvxdUBA03HW0fnVHXVCnCdkuoghYItKNzc/0A==",
"dev": true,
- "requires": {
+ "dependencies": {
"@jest/types": "^29.3.1",
"@types/graceful-fs": "^4.1.3",
"@types/node": "*",
"anymatch": "^3.0.3",
"fb-watchman": "^2.0.0",
- "fsevents": "^2.3.2",
"graceful-fs": "^4.2.9",
"jest-regex-util": "^29.2.0",
"jest-util": "^29.3.1",
"jest-worker": "^29.3.1",
"micromatch": "^4.0.4",
"walker": "^1.0.8"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ },
+ "optionalDependencies": {
+ "fsevents": "^2.3.2"
}
},
- "jest-leak-detector": {
+ "node_modules/jest-leak-detector": {
"version": "29.3.1",
"resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-29.3.1.tgz",
"integrity": "sha512-3DA/VVXj4zFOPagGkuqHnSQf1GZBmmlagpguxEERO6Pla2g84Q1MaVIB3YMxgUaFIaYag8ZnTyQgiZ35YEqAQA==",
"dev": true,
- "requires": {
+ "dependencies": {
"jest-get-type": "^29.2.0",
"pretty-format": "^29.3.1"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
}
},
- "jest-matcher-utils": {
+ "node_modules/jest-matcher-utils": {
"version": "29.3.1",
"resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.3.1.tgz",
"integrity": "sha512-fkRMZUAScup3txIKfMe3AIZZmPEjWEdsPJFK3AIy5qRohWqQFg1qrmKfYXR9qEkNc7OdAu2N4KPHibEmy4HPeQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"chalk": "^4.0.0",
"jest-diff": "^29.3.1",
"jest-get-type": "^29.2.0",
"pretty-format": "^29.3.1"
},
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/jest-matcher-utils/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
"dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "dev": true
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
}
},
- "jest-message-util": {
+ "node_modules/jest-matcher-utils/node_modules/chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/chalk?sponsor=1"
+ }
+ },
+ "node_modules/jest-matcher-utils/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/jest-matcher-utils/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/jest-matcher-utils/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-matcher-utils/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-message-util": {
"version": "29.3.1",
"resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.3.1.tgz",
"integrity": "sha512-lMJTbgNcDm5z+6KDxWtqOFWlGQxD6XaYwBqHR8kmpkP+WWWG90I35kdtQHY67Ay5CSuydkTBbJG+tH9JShFCyA==",
"dev": true,
- "requires": {
+ "dependencies": {
"@babel/code-frame": "^7.12.13",
"@jest/types": "^29.3.1",
"@types/stack-utils": "^2.0.0",
@@ -3781,87 +4534,126 @@
"slash": "^3.0.0",
"stack-utils": "^2.0.3"
},
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/jest-message-util/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
"dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "dev": true
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/jest-message-util/node_modules/chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/chalk?sponsor=1"
+ }
+ },
+ "node_modules/jest-message-util/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/jest-message-util/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/jest-message-util/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
}
},
- "jest-mock": {
+ "node_modules/jest-message-util/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-mock": {
"version": "29.3.1",
"resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.3.1.tgz",
"integrity": "sha512-H8/qFDtDVMFvFP4X8NuOT3XRDzOUTz+FeACjufHzsOIBAxivLqkB1PoLCaJx9iPPQ8dZThHPp/G3WRWyMgA3JA==",
"dev": true,
- "requires": {
+ "dependencies": {
"@jest/types": "^29.3.1",
"@types/node": "*",
"jest-util": "^29.3.1"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
}
},
- "jest-pnp-resolver": {
+ "node_modules/jest-pnp-resolver": {
"version": "1.2.3",
"resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz",
"integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=6"
+ },
+ "peerDependencies": {
+ "jest-resolve": "*"
+ },
+ "peerDependenciesMeta": {
+ "jest-resolve": {
+ "optional": true
+ }
+ }
},
- "jest-regex-util": {
+ "node_modules/jest-regex-util": {
"version": "29.2.0",
"resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.2.0.tgz",
"integrity": "sha512-6yXn0kg2JXzH30cr2NlThF+70iuO/3irbaB4mh5WyqNIvLLP+B6sFdluO1/1RJmslyh/f9osnefECflHvTbwVA==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
},
- "jest-resolve": {
+ "node_modules/jest-resolve": {
"version": "29.3.1",
"resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.3.1.tgz",
"integrity": "sha512-amXJgH/Ng712w3Uz5gqzFBBjxV8WFLSmNjoreBGMqxgCz5cH7swmBZzgBaCIOsvb0NbpJ0vgaSFdJqMdT+rADw==",
"dev": true,
- "requires": {
+ "dependencies": {
"chalk": "^4.0.0",
"graceful-fs": "^4.2.9",
"jest-haste-map": "^29.3.1",
@@ -3872,74 +4664,99 @@
"resolve.exports": "^1.1.0",
"slash": "^3.0.0"
},
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "dev": true
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
}
},
- "jest-resolve-dependencies": {
+ "node_modules/jest-resolve-dependencies": {
"version": "29.3.1",
"resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-29.3.1.tgz",
"integrity": "sha512-Vk0cYq0byRw2WluNmNWGqPeRnZ3p3hHmjJMp2dyyZeYIfiBskwq4rpiuGFR6QGAdbj58WC7HN4hQHjf2mpvrLA==",
"dev": true,
- "requires": {
+ "dependencies": {
"jest-regex-util": "^29.2.0",
"jest-snapshot": "^29.3.1"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
}
},
- "jest-runner": {
+ "node_modules/jest-resolve/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/jest-resolve/node_modules/chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/chalk?sponsor=1"
+ }
+ },
+ "node_modules/jest-resolve/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/jest-resolve/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/jest-resolve/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-resolve/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-runner": {
"version": "29.3.1",
"resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-29.3.1.tgz",
"integrity": "sha512-oFvcwRNrKMtE6u9+AQPMATxFcTySyKfLhvso7Sdk/rNpbhg4g2GAGCopiInk1OP4q6gz3n6MajW4+fnHWlU3bA==",
"dev": true,
- "requires": {
+ "dependencies": {
"@jest/console": "^29.3.1",
"@jest/environment": "^29.3.1",
"@jest/test-result": "^29.3.1",
@@ -3962,64 +4779,86 @@
"p-limit": "^3.1.0",
"source-map-support": "0.5.13"
},
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/jest-runner/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
"dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "dev": true
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/jest-runner/node_modules/chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/chalk?sponsor=1"
}
},
- "jest-runtime": {
+ "node_modules/jest-runner/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/jest-runner/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/jest-runner/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-runner/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-runtime": {
"version": "29.3.1",
"resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-29.3.1.tgz",
"integrity": "sha512-jLzkIxIqXwBEOZx7wx9OO9sxoZmgT2NhmQKzHQm1xwR1kNW/dn0OjxR424VwHHf1SPN6Qwlb5pp1oGCeFTQ62A==",
"dev": true,
- "requires": {
+ "dependencies": {
"@jest/environment": "^29.3.1",
"@jest/fake-timers": "^29.3.1",
"@jest/globals": "^29.3.1",
@@ -4043,64 +4882,86 @@
"slash": "^3.0.0",
"strip-bom": "^4.0.0"
},
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/jest-runtime/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
"dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "dev": true
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/jest-runtime/node_modules/chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/chalk?sponsor=1"
+ }
+ },
+ "node_modules/jest-runtime/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/jest-runtime/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/jest-runtime/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-runtime/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
}
},
- "jest-snapshot": {
+ "node_modules/jest-snapshot": {
"version": "29.3.1",
"resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-29.3.1.tgz",
"integrity": "sha512-+3JOc+s28upYLI2OJM4PWRGK9AgpsMs/ekNryUV0yMBClT9B1DF2u2qay8YxcQd338PPYSFNb0lsar1B49sLDA==",
"dev": true,
- "requires": {
+ "dependencies": {
"@babel/core": "^7.11.6",
"@babel/generator": "^7.7.2",
"@babel/plugin-syntax-jsx": "^7.7.2",
@@ -4126,82 +4987,99 @@
"pretty-format": "^29.3.1",
"semver": "^7.3.5"
},
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/jest-snapshot/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
"dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "dev": true
- },
- "lru-cache": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
- "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
- "dev": true,
- "requires": {
- "yallist": "^4.0.0"
- }
- },
- "semver": {
- "version": "7.3.8",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz",
- "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==",
- "dev": true,
- "requires": {
- "lru-cache": "^6.0.0"
- }
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/jest-snapshot/node_modules/chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/chalk?sponsor=1"
+ }
+ },
+ "node_modules/jest-snapshot/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/jest-snapshot/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/jest-snapshot/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-snapshot/node_modules/semver": {
+ "version": "7.7.2",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz",
+ "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==",
+ "dev": true,
+ "license": "ISC",
+ "bin": {
+ "semver": "bin/semver.js"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/jest-snapshot/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
}
},
- "jest-util": {
+ "node_modules/jest-util": {
"version": "29.3.1",
"resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.3.1.tgz",
"integrity": "sha512-7YOVZaiX7RJLv76ZfHt4nbNEzzTRiMW/IiOG7ZOKmTXmoGBxUDefgMAxQubu6WPVqP5zSzAdZG0FfLcC7HOIFQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"@jest/types": "^29.3.1",
"@types/node": "*",
"chalk": "^4.0.0",
@@ -4209,64 +5087,86 @@
"graceful-fs": "^4.2.9",
"picomatch": "^2.2.3"
},
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/jest-util/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
"dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "dev": true
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/jest-util/node_modules/chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/chalk?sponsor=1"
+ }
+ },
+ "node_modules/jest-util/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/jest-util/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/jest-util/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-util/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
}
},
- "jest-validate": {
+ "node_modules/jest-validate": {
"version": "29.3.1",
"resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-29.3.1.tgz",
"integrity": "sha512-N9Lr3oYR2Mpzuelp1F8negJR3YE+L1ebk1rYA5qYo9TTY3f9OWdptLoNSPP9itOCBIRBqjt/S5XHlzYglLN67g==",
"dev": true,
- "requires": {
+ "dependencies": {
"@jest/types": "^29.3.1",
"camelcase": "^6.2.0",
"chalk": "^4.0.0",
@@ -4274,70 +5174,98 @@
"leven": "^3.1.0",
"pretty-format": "^29.3.1"
},
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/jest-validate/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
"dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "camelcase": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz",
- "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==",
- "dev": true
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "dev": true
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/jest-validate/node_modules/camelcase": {
+ "version": "6.3.0",
+ "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz",
+ "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==",
+ "dev": true,
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/jest-validate/node_modules/chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/chalk?sponsor=1"
+ }
+ },
+ "node_modules/jest-validate/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/jest-validate/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/jest-validate/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-validate/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
}
},
- "jest-watcher": {
+ "node_modules/jest-watcher": {
"version": "29.3.1",
"resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.3.1.tgz",
"integrity": "sha512-RspXG2BQFDsZSRKGCT/NiNa8RkQ1iKAjrO0//soTMWx/QUt+OcxMqMSBxz23PYGqUuWm2+m2mNNsmj0eIoOaFg==",
"dev": true,
- "requires": {
+ "dependencies": {
"@jest/test-result": "^29.3.1",
"@jest/types": "^29.3.1",
"@types/node": "*",
@@ -4347,392 +5275,485 @@
"jest-util": "^29.3.1",
"string-length": "^4.0.1"
},
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/jest-watcher/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
"dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "dev": true
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/jest-watcher/node_modules/chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/chalk?sponsor=1"
+ }
+ },
+ "node_modules/jest-watcher/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/jest-watcher/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/jest-watcher/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
}
},
- "jest-worker": {
+ "node_modules/jest-watcher/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-worker": {
"version": "29.3.1",
"resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.3.1.tgz",
"integrity": "sha512-lY4AnnmsEWeiXirAIA0c9SDPbuCBq8IYuDVL8PMm0MZ2PEs2yPvRA/J64QBXuZp7CYKrDM/rmNrc9/i3KJQncw==",
"dev": true,
- "requires": {
+ "dependencies": {
"@types/node": "*",
"jest-util": "^29.3.1",
"merge-stream": "^2.0.0",
"supports-color": "^8.0.0"
},
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/jest-worker/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jest-worker/node_modules/supports-color": {
+ "version": "8.1.1",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz",
+ "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==",
+ "dev": true,
"dependencies": {
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "dev": true
- },
- "supports-color": {
- "version": "8.1.1",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz",
- "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/supports-color?sponsor=1"
}
},
- "js-tokens": {
+ "node_modules/js-tokens": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
"integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==",
- "dev": true
+ "dev": true,
+ "license": "MIT"
},
- "js-yaml": {
+ "node_modules/js-yaml": {
"version": "3.13.1",
"resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz",
"integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==",
"dev": true,
- "requires": {
+ "dependencies": {
"argparse": "^1.0.7",
"esprima": "^4.0.0"
},
- "dependencies": {
- "esprima": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz",
- "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==",
- "dev": true
- }
+ "bin": {
+ "js-yaml": "bin/js-yaml.js"
}
},
- "jsesc": {
- "version": "2.5.2",
- "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz",
- "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==",
- "dev": true
+ "node_modules/js-yaml/node_modules/esprima": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz",
+ "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==",
+ "dev": true,
+ "bin": {
+ "esparse": "bin/esparse.js",
+ "esvalidate": "bin/esvalidate.js"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/jsesc": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz",
+ "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==",
+ "dev": true,
+ "license": "MIT",
+ "bin": {
+ "jsesc": "bin/jsesc"
+ },
+ "engines": {
+ "node": ">=6"
+ }
},
- "json-parse-better-errors": {
+ "node_modules/json-parse-better-errors": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz",
"integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==",
"dev": true
},
- "json-parse-even-better-errors": {
+ "node_modules/json-parse-even-better-errors": {
"version": "2.3.1",
"resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
"integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==",
"dev": true
},
- "json-stable-stringify": {
+ "node_modules/json-stable-stringify": {
"version": "0.0.1",
"resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-0.0.1.tgz",
"integrity": "sha1-YRwj6BTbN1Un34URk9tZ3Sryf0U=",
"dev": true,
- "requires": {
+ "dependencies": {
"jsonify": "~0.0.0"
}
},
- "json5": {
+ "node_modules/json5": {
"version": "2.2.2",
"resolved": "https://registry.npmjs.org/json5/-/json5-2.2.2.tgz",
"integrity": "sha512-46Tk9JiOL2z7ytNQWFLpj99RZkVgeHf87yGQKsIkaPz1qSH9UczKH1rO7K3wgRselo0tYMUNfecYpm/p1vC7tQ==",
- "dev": true
+ "dev": true,
+ "bin": {
+ "json5": "lib/cli.js"
+ },
+ "engines": {
+ "node": ">=6"
+ }
},
- "jsonify": {
+ "node_modules/jsonify": {
"version": "0.0.0",
"resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz",
"integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": "*"
+ }
},
- "jsonparse": {
+ "node_modules/jsonparse": {
"version": "1.3.1",
"resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz",
"integrity": "sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA=",
- "dev": true
+ "dev": true,
+ "engines": [
+ "node >= 0.2.0"
+ ]
},
- "keypress": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/keypress/-/keypress-0.1.0.tgz",
- "integrity": "sha1-SjGI1CkbZrT2XtuZ+AaqmuKTWSo=",
- "dev": true
+ "node_modules/JSONStream": {
+ "version": "1.3.5",
+ "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz",
+ "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==",
+ "dev": true,
+ "dependencies": {
+ "jsonparse": "^1.2.0",
+ "through": ">=2.2.7 <3"
+ },
+ "bin": {
+ "JSONStream": "bin.js"
+ },
+ "engines": {
+ "node": "*"
+ }
},
- "kleur": {
+ "node_modules/kleur": {
"version": "3.0.3",
"resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz",
"integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=6"
+ }
},
- "labeled-stream-splicer": {
+ "node_modules/labeled-stream-splicer": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/labeled-stream-splicer/-/labeled-stream-splicer-2.0.2.tgz",
"integrity": "sha512-Ca4LSXFFZUjPScRaqOcFxneA0VpKZr4MMYCljyQr4LIewTLb3Y0IUTIsnBBsVubIeEfxeSZpSjSsRM8APEQaAw==",
"dev": true,
- "requires": {
+ "dependencies": {
"inherits": "^2.0.1",
"stream-splicer": "^2.0.0"
}
},
- "leven": {
+ "node_modules/leven": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz",
"integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=6"
+ }
},
- "lines-and-columns": {
+ "node_modules/lines-and-columns": {
"version": "1.2.4",
"resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz",
"integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==",
"dev": true
},
- "load-json-file": {
+ "node_modules/load-json-file": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz",
"integrity": "sha512-Kx8hMakjX03tiGTLAIdJ+lL0htKnXjEZN6hk/tozf/WOuYGdZBJrZ+rCJRbVCugsjB3jMLn9746NsQIf5VjBMw==",
"dev": true,
- "requires": {
+ "dependencies": {
"graceful-fs": "^4.1.2",
"parse-json": "^4.0.0",
"pify": "^3.0.0",
"strip-bom": "^3.0.0"
},
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/load-json-file/node_modules/parse-json": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz",
+ "integrity": "sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==",
+ "dev": true,
"dependencies": {
- "parse-json": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz",
- "integrity": "sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==",
- "dev": true,
- "requires": {
- "error-ex": "^1.3.1",
- "json-parse-better-errors": "^1.0.1"
- }
- },
- "strip-bom": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz",
- "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==",
- "dev": true
- }
+ "error-ex": "^1.3.1",
+ "json-parse-better-errors": "^1.0.1"
+ },
+ "engines": {
+ "node": ">=4"
}
},
- "locate-path": {
+ "node_modules/load-json-file/node_modules/strip-bom": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz",
+ "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==",
+ "dev": true,
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/locate-path": {
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
"integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
"dev": true,
- "requires": {
+ "dependencies": {
"p-locate": "^4.1.0"
+ },
+ "engines": {
+ "node": ">=8"
}
},
- "lodash": {
- "version": "4.17.21",
- "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
- "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==",
- "dev": true
- },
- "lodash.memoize": {
+ "node_modules/lodash.memoize": {
"version": "3.0.4",
"resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-3.0.4.tgz",
"integrity": "sha1-LcvSwofLwKVcxCMovQxzYVDVPj8=",
"dev": true
},
- "lru-cache": {
- "version": "2.7.3",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-2.7.3.tgz",
- "integrity": "sha1-bUUk6LlV+V1PW1iFHOId1y+06VI=",
- "dev": true
- },
- "make-dir": {
+ "node_modules/make-dir": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz",
"integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==",
"dev": true,
- "requires": {
+ "dependencies": {
"semver": "^6.0.0"
},
- "dependencies": {
- "semver": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
- "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
- "dev": true
- }
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/make-dir/node_modules/semver": {
+ "version": "6.3.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+ "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
+ "dev": true,
+ "license": "ISC",
+ "bin": {
+ "semver": "bin/semver.js"
}
},
- "make-error": {
+ "node_modules/make-error": {
"version": "1.3.5",
"resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.5.tgz",
"integrity": "sha512-c3sIjNUow0+8swNwVpqoH4YCShKNFkMaw6oH1mNS2haDZQqkeZFlHS3dhoeEbKKmJB4vXpJucU6oH75aDYeE9g==",
"dev": true
},
- "makeerror": {
+ "node_modules/makeerror": {
"version": "1.0.12",
"resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz",
"integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==",
"dev": true,
- "requires": {
+ "dependencies": {
"tmpl": "1.0.5"
}
},
- "md5.js": {
+ "node_modules/math-intrinsics": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz",
+ "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/md5.js": {
"version": "1.3.5",
"resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz",
"integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==",
"dev": true,
- "requires": {
+ "dependencies": {
"hash-base": "^3.0.0",
"inherits": "^2.0.1",
"safe-buffer": "^5.1.2"
}
},
- "memorystream": {
+ "node_modules/memorystream": {
"version": "0.3.1",
"resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz",
"integrity": "sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">= 0.10.0"
+ }
},
- "merge-stream": {
+ "node_modules/merge-stream": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz",
"integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==",
"dev": true
},
- "micromatch": {
- "version": "4.0.5",
- "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz",
- "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==",
+ "node_modules/micromatch": {
+ "version": "4.0.8",
+ "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz",
+ "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==",
"dev": true,
- "requires": {
- "braces": "^3.0.2",
+ "license": "MIT",
+ "dependencies": {
+ "braces": "^3.0.3",
"picomatch": "^2.3.1"
+ },
+ "engines": {
+ "node": ">=8.6"
}
},
- "miller-rabin": {
+ "node_modules/miller-rabin": {
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz",
"integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==",
"dev": true,
- "requires": {
+ "dependencies": {
"bn.js": "^4.0.0",
"brorand": "^1.0.1"
+ },
+ "bin": {
+ "miller-rabin": "bin/miller-rabin"
}
},
- "mimic-fn": {
+ "node_modules/mimic-fn": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz",
"integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=6"
+ }
},
- "minimalistic-assert": {
+ "node_modules/minimalistic-assert": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz",
"integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==",
"dev": true
},
- "minimalistic-crypto-utils": {
+ "node_modules/minimalistic-crypto-utils": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz",
"integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=",
"dev": true
},
- "minimatch": {
- "version": "3.0.4",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
- "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
+ "node_modules/minimatch": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
+ "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
"dev": true,
- "requires": {
+ "license": "ISC",
+ "dependencies": {
"brace-expansion": "^1.1.7"
+ },
+ "engines": {
+ "node": "*"
}
},
- "minimist": {
+ "node_modules/minimist": {
"version": "1.2.8",
"resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz",
"integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==",
- "dev": true
- },
- "mixin-deep": {
- "version": "1.3.2",
- "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz",
- "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==",
- "dev": true,
- "requires": {
- "for-in": "^1.0.2",
- "is-extendable": "^1.0.1"
- },
- "dependencies": {
- "is-extendable": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz",
- "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==",
- "dev": true,
- "requires": {
- "is-plain-object": "^2.0.4"
- }
- }
+ "dev": true,
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "mkdirp": {
+ "node_modules/mkdirp": {
"version": "0.5.5",
"resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz",
"integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"minimist": "^1.2.5"
+ },
+ "bin": {
+ "mkdirp": "bin/cmd.js"
}
},
- "module-deps": {
+ "node_modules/module-deps": {
"version": "6.2.1",
"resolved": "https://registry.npmjs.org/module-deps/-/module-deps-6.2.1.tgz",
"integrity": "sha512-UnEn6Ah36Tu4jFiBbJVUtt0h+iXqxpLqDvPS8nllbw5RZFmNJ1+Mz5BjYnM9ieH80zyxHkARGLnMIHlPK5bu6A==",
"dev": true,
- "requires": {
- "JSONStream": "^1.0.3",
+ "dependencies": {
"browser-resolve": "^1.7.0",
"cached-path-relative": "^1.0.2",
"concat-stream": "~1.6.0",
@@ -4740,6 +5761,7 @@
"detective": "^5.0.2",
"duplexer2": "^0.1.2",
"inherits": "^2.0.1",
+ "JSONStream": "^1.0.3",
"parents": "^1.0.0",
"readable-stream": "^2.0.2",
"resolve": "^1.4.0",
@@ -4747,125 +5769,132 @@
"subarg": "^1.0.0",
"through2": "^2.0.0",
"xtend": "^4.0.0"
+ },
+ "bin": {
+ "module-deps": "bin/cmd.js"
+ },
+ "engines": {
+ "node": ">= 0.8.0"
}
},
- "ms": {
+ "node_modules/ms": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
"integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
"dev": true
},
- "myna-parser": {
+ "node_modules/myna-parser": {
"version": "2.5.1",
"resolved": "https://registry.npmjs.org/myna-parser/-/myna-parser-2.5.1.tgz",
"integrity": "sha512-eQBQpP91k1WiusCw2XPziVgUK+D8ISWyEKtJqmEWv28V+KYmEn9p+sm5l9502fIbzM8eVFH2PIx3JnptmQ1hGA=="
},
- "natural-compare": {
+ "node_modules/natural-compare": {
"version": "1.4.0",
"resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz",
"integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==",
"dev": true
},
- "nice-try": {
+ "node_modules/nice-try": {
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz",
"integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==",
"dev": true
},
- "node-int64": {
+ "node_modules/node-int64": {
"version": "0.4.0",
"resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz",
"integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==",
"dev": true
},
- "node-notifier": {
+ "node_modules/node-notifier": {
"version": "9.0.0",
"resolved": "https://registry.npmjs.org/node-notifier/-/node-notifier-9.0.0.tgz",
"integrity": "sha512-SkwNwGnMMlSPrcoeH4CSo9XyWe72acAHEJGDdPdB+CyBVHsIYaTQ4U/1wk3URsyzC75xZLg2vzU2YaALlqDF1Q==",
"dev": true,
- "requires": {
+ "optional": true,
+ "peer": true,
+ "dependencies": {
"growly": "^1.3.0",
"is-wsl": "^2.2.0",
"semver": "^7.3.2",
"shellwords": "^0.1.1",
"uuid": "^8.3.0",
"which": "^2.0.2"
- },
+ }
+ },
+ "node_modules/node-notifier/node_modules/is-wsl": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz",
+ "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==",
+ "dev": true,
+ "optional": true,
+ "peer": true,
"dependencies": {
- "is-wsl": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz",
- "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==",
- "dev": true,
- "requires": {
- "is-docker": "^2.0.0"
- }
- },
- "lru-cache": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
- "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
- "dev": true,
- "requires": {
- "yallist": "^4.0.0"
- }
- },
- "semver": {
- "version": "7.3.4",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz",
- "integrity": "sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==",
- "dev": true,
- "requires": {
- "lru-cache": "^6.0.0"
- }
- },
- "uuid": {
- "version": "8.3.2",
- "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz",
- "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==",
- "dev": true
- }
+ "is-docker": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/node-notifier/node_modules/semver": {
+ "version": "7.7.2",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz",
+ "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==",
+ "dev": true,
+ "license": "ISC",
+ "optional": true,
+ "peer": true,
+ "bin": {
+ "semver": "bin/semver.js"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/node-notifier/node_modules/uuid": {
+ "version": "8.3.2",
+ "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz",
+ "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==",
+ "dev": true,
+ "optional": true,
+ "peer": true,
+ "bin": {
+ "uuid": "dist/bin/uuid"
}
},
- "node-releases": {
+ "node_modules/node-releases": {
"version": "2.0.8",
"resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.8.tgz",
"integrity": "sha512-dFSmB8fFHEH/s81Xi+Y/15DQY6VHW81nXRj86EMSL3lmuTmK1e+aT4wrFCkTbm+gSwkw4KpX+rT/pMM2c1mF+A==",
"dev": true
},
- "nopt": {
- "version": "1.0.10",
- "resolved": "https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz",
- "integrity": "sha1-bd0hvSoxQXuScn3Vhfim83YI6+4=",
- "dev": true,
- "requires": {
- "abbrev": "1"
- }
- },
- "normalize-package-data": {
+ "node_modules/normalize-package-data": {
"version": "2.5.0",
"resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz",
"integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==",
"dev": true,
- "requires": {
+ "dependencies": {
"hosted-git-info": "^2.1.4",
"resolve": "^1.10.0",
"semver": "2 || 3 || 4 || 5",
"validate-npm-package-license": "^3.0.1"
}
},
- "normalize-path": {
+ "node_modules/normalize-path": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
"integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
},
- "npm-run-all": {
+ "node_modules/npm-run-all": {
"version": "4.1.5",
"resolved": "https://registry.npmjs.org/npm-run-all/-/npm-run-all-4.1.5.tgz",
"integrity": "sha512-Oo82gJDAVcaMdi3nuoKFavkIHBRVqQ1qvMb+9LHk/cF4P6B2m8aP04hGf7oL6wZ9BuGwX1onlLhpuoofSyoQDQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"ansi-styles": "^3.2.1",
"chalk": "^2.4.1",
"cross-spawn": "^6.0.5",
@@ -4876,341 +5905,564 @@
"shell-quote": "^1.6.1",
"string.prototype.padend": "^3.0.0"
},
+ "bin": {
+ "npm-run-all": "bin/npm-run-all/index.js",
+ "run-p": "bin/run-p/index.js",
+ "run-s": "bin/run-s/index.js"
+ },
+ "engines": {
+ "node": ">= 4"
+ }
+ },
+ "node_modules/npm-run-all/node_modules/cross-spawn": {
+ "version": "6.0.6",
+ "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.6.tgz",
+ "integrity": "sha512-VqCUuhcd1iB+dsv8gxPttb5iZh/D0iubSP21g36KXdEuf6I5JiioesUVjpCdHV9MZRUfVFlvwtIUyPfxo5trtw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "nice-try": "^1.0.4",
+ "path-key": "^2.0.1",
+ "semver": "^5.5.0",
+ "shebang-command": "^1.2.0",
+ "which": "^1.2.9"
+ },
+ "engines": {
+ "node": ">=4.8"
+ }
+ },
+ "node_modules/npm-run-all/node_modules/path-key": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz",
+ "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==",
+ "dev": true,
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/npm-run-all/node_modules/shebang-command": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz",
+ "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==",
+ "dev": true,
"dependencies": {
- "cross-spawn": {
- "version": "6.0.5",
- "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz",
- "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==",
- "dev": true,
- "requires": {
- "nice-try": "^1.0.4",
- "path-key": "^2.0.1",
- "semver": "^5.5.0",
- "shebang-command": "^1.2.0",
- "which": "^1.2.9"
- }
- },
- "path-key": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz",
- "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==",
- "dev": true
- },
- "shebang-command": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz",
- "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==",
- "dev": true,
- "requires": {
- "shebang-regex": "^1.0.0"
- }
- },
- "shebang-regex": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz",
- "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==",
- "dev": true
- },
- "which": {
- "version": "1.3.1",
- "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
- "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==",
- "dev": true,
- "requires": {
- "isexe": "^2.0.0"
- }
- }
+ "shebang-regex": "^1.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/npm-run-all/node_modules/shebang-regex": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz",
+ "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/npm-run-all/node_modules/which": {
+ "version": "1.3.1",
+ "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
+ "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==",
+ "dev": true,
+ "dependencies": {
+ "isexe": "^2.0.0"
+ },
+ "bin": {
+ "which": "bin/which"
}
},
- "npm-run-path": {
+ "node_modules/npm-run-path": {
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz",
"integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==",
"dev": true,
- "requires": {
+ "dependencies": {
"path-key": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=8"
}
},
- "object-assign": {
+ "node_modules/object-assign": {
"version": "4.1.1",
"resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
"integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
},
- "object-inspect": {
+ "node_modules/object-inspect": {
"version": "1.12.2",
"resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz",
"integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==",
- "dev": true
+ "dev": true,
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
},
- "object-keys": {
+ "node_modules/object-keys": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz",
"integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">= 0.4"
+ }
},
- "object.assign": {
+ "node_modules/object.assign": {
"version": "4.1.4",
"resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz",
"integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"call-bind": "^1.0.2",
"define-properties": "^1.1.4",
"has-symbols": "^1.0.3",
"object-keys": "^1.1.1"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "once": {
+ "node_modules/once": {
"version": "1.4.0",
"resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
"integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
"dev": true,
- "requires": {
+ "dependencies": {
"wrappy": "1"
}
},
- "onetime": {
+ "node_modules/onetime": {
"version": "5.1.2",
"resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz",
"integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==",
"dev": true,
- "requires": {
+ "dependencies": {
"mimic-fn": "^2.1.0"
+ },
+ "engines": {
+ "node": ">=6"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
}
},
- "os-browserify": {
+ "node_modules/os-browserify": {
"version": "0.3.0",
"resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz",
"integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=",
"dev": true
},
- "p-limit": {
+ "node_modules/p-limit": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz",
"integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"yocto-queue": "^0.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
}
},
- "p-locate": {
+ "node_modules/p-locate": {
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
"integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
"dev": true,
- "requires": {
+ "dependencies": {
"p-limit": "^2.2.0"
},
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/p-locate/node_modules/p-limit": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
+ "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
+ "dev": true,
"dependencies": {
- "p-limit": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
- "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
- "dev": true,
- "requires": {
- "p-try": "^2.0.0"
- }
- }
+ "p-try": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
}
},
- "p-try": {
+ "node_modules/p-try": {
"version": "2.2.0",
"resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
"integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=6"
+ }
},
- "pako": {
+ "node_modules/pako": {
"version": "1.0.10",
"resolved": "https://registry.npmjs.org/pako/-/pako-1.0.10.tgz",
"integrity": "sha512-0DTvPVU3ed8+HNXOu5Bs+o//Mbdj9VNQMUOe9oKCwh8l0GNwpTDMKCWbRjgtD291AWnkAgkqA/LOnQS8AmS1tw==",
"dev": true
},
- "parents": {
+ "node_modules/parents": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/parents/-/parents-1.0.1.tgz",
"integrity": "sha1-/t1NK/GTp3dF/nHjcdc8MwfZx1E=",
"dev": true,
- "requires": {
+ "dependencies": {
"path-platform": "~0.11.15"
}
},
- "parse-asn1": {
- "version": "5.1.5",
- "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.5.tgz",
- "integrity": "sha512-jkMYn1dcJqF6d5CpU689bq7w/b5ALS9ROVSpQDPrZsqqesUJii9qutvoT5ltGedNXMO2e16YUWIghG9KxaViTQ==",
+ "node_modules/parse-asn1": {
+ "version": "5.1.7",
+ "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.7.tgz",
+ "integrity": "sha512-CTM5kuWR3sx9IFamcl5ErfPl6ea/N8IYwiJ+vpeB2g+1iknv7zBl5uPwbMbRVznRVbrNY6lGuDoE5b30grmbqg==",
"dev": true,
- "requires": {
- "asn1.js": "^4.0.0",
- "browserify-aes": "^1.0.0",
- "create-hash": "^1.1.0",
- "evp_bytestokey": "^1.0.0",
- "pbkdf2": "^3.0.3",
- "safe-buffer": "^5.1.1"
+ "license": "ISC",
+ "dependencies": {
+ "asn1.js": "^4.10.1",
+ "browserify-aes": "^1.2.0",
+ "evp_bytestokey": "^1.0.3",
+ "hash-base": "~3.0",
+ "pbkdf2": "^3.1.2",
+ "safe-buffer": "^5.2.1"
+ },
+ "engines": {
+ "node": ">= 0.10"
}
},
- "parse-json": {
+ "node_modules/parse-asn1/node_modules/safe-buffer": {
+ "version": "5.2.1",
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
+ "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ],
+ "license": "MIT"
+ },
+ "node_modules/parse-json": {
"version": "5.2.0",
"resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz",
"integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==",
"dev": true,
- "requires": {
+ "dependencies": {
"@babel/code-frame": "^7.0.0",
"error-ex": "^1.3.1",
"json-parse-even-better-errors": "^2.3.0",
"lines-and-columns": "^1.1.6"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
}
},
- "path-browserify": {
+ "node_modules/path-browserify": {
"version": "0.0.1",
"resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.1.tgz",
"integrity": "sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==",
"dev": true
},
- "path-exists": {
+ "node_modules/path-exists": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
"integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
},
- "path-is-absolute": {
+ "node_modules/path-is-absolute": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
"integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
},
- "path-key": {
+ "node_modules/path-key": {
"version": "3.1.1",
"resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
"integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
},
- "path-parse": {
+ "node_modules/path-parse": {
"version": "1.0.7",
"resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
"integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==",
"dev": true
},
- "path-platform": {
+ "node_modules/path-platform": {
"version": "0.11.15",
"resolved": "https://registry.npmjs.org/path-platform/-/path-platform-0.11.15.tgz",
"integrity": "sha1-6GQhf3TDaFDwhSt43Hv31KVyG/I=",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">= 0.8.0"
+ }
},
- "path-type": {
+ "node_modules/path-type": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz",
"integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==",
"dev": true,
- "requires": {
+ "dependencies": {
"pify": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=4"
}
},
- "pbkdf2": {
- "version": "3.0.17",
- "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.17.tgz",
- "integrity": "sha512-U/il5MsrZp7mGg3mSQfn742na2T+1/vHDCG5/iTI3X9MKUuYUZVLQhyRsg06mCgDBTd57TxzgZt7P+fYfjRLtA==",
+ "node_modules/pbkdf2": {
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.3.tgz",
+ "integrity": "sha512-wfRLBZ0feWRhCIkoMB6ete7czJcnNnqRpcoWQBLqatqXXmelSRqfdDK4F3u9T2s2cXas/hQJcryI/4lAL+XTlA==",
"dev": true,
- "requires": {
- "create-hash": "^1.1.2",
- "create-hmac": "^1.1.4",
- "ripemd160": "^2.0.1",
- "safe-buffer": "^5.0.1",
- "sha.js": "^2.4.8"
+ "license": "MIT",
+ "dependencies": {
+ "create-hash": "~1.1.3",
+ "create-hmac": "^1.1.7",
+ "ripemd160": "=2.0.1",
+ "safe-buffer": "^5.2.1",
+ "sha.js": "^2.4.11",
+ "to-buffer": "^1.2.0"
+ },
+ "engines": {
+ "node": ">=0.12"
}
},
- "picocolors": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
- "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==",
- "dev": true
+ "node_modules/pbkdf2/node_modules/create-hash": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.1.3.tgz",
+ "integrity": "sha512-snRpch/kwQhcdlnZKYanNF1m0RDlrCdSKQaH87w1FCFPVPNCQ/Il9QJKAX2jVBZddRdaHBMC+zXa9Gw9tmkNUA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "cipher-base": "^1.0.1",
+ "inherits": "^2.0.1",
+ "ripemd160": "^2.0.0",
+ "sha.js": "^2.4.0"
+ }
+ },
+ "node_modules/pbkdf2/node_modules/hash-base": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-2.0.2.tgz",
+ "integrity": "sha512-0TROgQ1/SxE6KmxWSvXHvRj90/Xo1JvZShofnYF+f6ZsGtR4eES7WfrQzPalmyagfKZCXpVnitiRebZulWsbiw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "inherits": "^2.0.1"
+ }
},
- "picomatch": {
+ "node_modules/pbkdf2/node_modules/ripemd160": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.1.tgz",
+ "integrity": "sha512-J7f4wutN8mdbV08MJnXibYpCOPHR+yzy+iQ/AsjMv2j8cLavQ8VGagDFUwwTAdF8FmRKVeNpbTTEwNHCW1g94w==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "hash-base": "^2.0.0",
+ "inherits": "^2.0.1"
+ }
+ },
+ "node_modules/pbkdf2/node_modules/safe-buffer": {
+ "version": "5.2.1",
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
+ "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ],
+ "license": "MIT"
+ },
+ "node_modules/picocolors": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz",
+ "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==",
+ "dev": true,
+ "license": "ISC"
+ },
+ "node_modules/picomatch": {
"version": "2.3.1",
"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
"integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=8.6"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/jonschlinkert"
+ }
},
- "pidtree": {
+ "node_modules/pidtree": {
"version": "0.3.1",
"resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.3.1.tgz",
"integrity": "sha512-qQbW94hLHEqCg7nhby4yRC7G2+jYHY4Rguc2bjw7Uug4GIJuu1tvf2uHaZv5Q8zdt+WKJ6qK1FOI6amaWUo5FA==",
- "dev": true
+ "dev": true,
+ "bin": {
+ "pidtree": "bin/pidtree.js"
+ },
+ "engines": {
+ "node": ">=0.10"
+ }
},
- "pify": {
+ "node_modules/pify": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz",
"integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=4"
+ }
},
- "pirates": {
+ "node_modules/pirates": {
"version": "4.0.5",
"resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.5.tgz",
"integrity": "sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">= 6"
+ }
},
- "pkg-dir": {
+ "node_modules/pkg-dir": {
"version": "4.2.0",
"resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz",
"integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"find-up": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
}
},
- "prettier": {
- "version": "1.18.2",
- "resolved": "https://registry.npmjs.org/prettier/-/prettier-1.18.2.tgz",
- "integrity": "sha512-OeHeMc0JhFE9idD4ZdtNibzY0+TPHSpSSb9h8FqtP+YnoZZ1sl8Vc9b1sasjfymH3SonAF4QcA2+mzHPhMvIiw==",
- "dev": true
+ "node_modules/possible-typed-array-names": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz",
+ "integrity": "sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/prettier": {
+ "version": "2.8.8",
+ "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz",
+ "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==",
+ "dev": true,
+ "license": "MIT",
+ "bin": {
+ "prettier": "bin-prettier.js"
+ },
+ "engines": {
+ "node": ">=10.13.0"
+ },
+ "funding": {
+ "url": "https://github.com/prettier/prettier?sponsor=1"
+ }
},
- "pretty-format": {
+ "node_modules/pretty-format": {
"version": "29.3.1",
"resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.3.1.tgz",
"integrity": "sha512-FyLnmb1cYJV8biEIiRyzRFvs2lry7PPIvOqKVe1GCUEYg4YGmlx1qG9EJNMxArYm7piII4qb8UV1Pncq5dxmcg==",
"dev": true,
- "requires": {
+ "dependencies": {
"@jest/schemas": "^29.0.0",
"ansi-styles": "^5.0.0",
"react-is": "^18.0.0"
},
- "dependencies": {
- "ansi-styles": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz",
- "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==",
- "dev": true
- }
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/pretty-format/node_modules/ansi-styles": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz",
+ "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==",
+ "dev": true,
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
}
},
- "process": {
+ "node_modules/process": {
"version": "0.11.10",
"resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz",
"integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">= 0.6.0"
+ }
},
- "process-nextick-args": {
+ "node_modules/process-nextick-args": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz",
"integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==",
"dev": true
},
- "prompts": {
+ "node_modules/prompts": {
"version": "2.4.2",
"resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz",
"integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==",
"dev": true,
- "requires": {
+ "dependencies": {
"kleur": "^3.0.3",
"sisteransi": "^1.0.5"
+ },
+ "engines": {
+ "node": ">= 6"
}
},
- "public-encrypt": {
+ "node_modules/public-encrypt": {
"version": "4.0.3",
"resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz",
"integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==",
"dev": true,
- "requires": {
+ "dependencies": {
"bn.js": "^4.1.0",
"browserify-rsa": "^4.0.0",
"create-hash": "^1.1.0",
@@ -5219,69 +6471,80 @@
"safe-buffer": "^5.1.2"
}
},
- "querystring": {
+ "node_modules/querystring": {
"version": "0.2.0",
"resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz",
"integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=",
- "dev": true
+ "deprecated": "The querystring API is considered Legacy. new code should use the URLSearchParams API instead.",
+ "dev": true,
+ "engines": {
+ "node": ">=0.4.x"
+ }
},
- "querystring-es3": {
+ "node_modules/querystring-es3": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz",
"integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=0.4.x"
+ }
},
- "randombytes": {
+ "node_modules/randombytes": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz",
"integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"safe-buffer": "^5.1.0"
}
},
- "randomfill": {
+ "node_modules/randomfill": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz",
"integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==",
"dev": true,
- "requires": {
+ "dependencies": {
"randombytes": "^2.0.5",
"safe-buffer": "^5.1.0"
}
},
- "react-is": {
+ "node_modules/react-is": {
"version": "18.2.0",
"resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz",
"integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==",
"dev": true
},
- "read-only-stream": {
+ "node_modules/read-only-stream": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/read-only-stream/-/read-only-stream-2.0.0.tgz",
"integrity": "sha1-JyT9aoET1zdkrCiNQ4YnDB2/F/A=",
"dev": true,
- "requires": {
+ "dependencies": {
"readable-stream": "^2.0.2"
}
},
- "read-pkg": {
+ "node_modules/read-pkg": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz",
"integrity": "sha512-BLq/cCO9two+lBgiTYNqD6GdtK8s4NpaWrl6/rCO9w0TUS8oJl7cmToOZfRYllKTISY6nt1U7jQ53brmKqY6BA==",
"dev": true,
- "requires": {
+ "dependencies": {
"load-json-file": "^4.0.0",
"normalize-package-data": "^2.3.2",
"path-type": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=4"
}
},
- "readable-stream": {
- "version": "2.3.6",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz",
- "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==",
+ "node_modules/readable-stream": {
+ "version": "2.3.8",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz",
+ "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==",
"dev": true,
- "requires": {
+ "license": "MIT",
+ "dependencies": {
"core-util-is": "~1.0.0",
"inherits": "~2.0.3",
"isarray": "~1.0.0",
@@ -5291,535 +6554,700 @@
"util-deprecate": "~1.0.1"
}
},
- "regexp.prototype.flags": {
+ "node_modules/regexp.prototype.flags": {
"version": "1.4.3",
"resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz",
"integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==",
"dev": true,
- "requires": {
+ "dependencies": {
"call-bind": "^1.0.2",
"define-properties": "^1.1.3",
"functions-have-names": "^1.2.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "require-directory": {
+ "node_modules/require-directory": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
"integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
},
- "resolve": {
+ "node_modules/resolve": {
"version": "1.22.1",
"resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz",
"integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==",
"dev": true,
- "requires": {
+ "dependencies": {
"is-core-module": "^2.9.0",
"path-parse": "^1.0.7",
"supports-preserve-symlinks-flag": "^1.0.0"
+ },
+ "bin": {
+ "resolve": "bin/resolve"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "resolve-cwd": {
+ "node_modules/resolve-cwd": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz",
"integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==",
"dev": true,
- "requires": {
+ "dependencies": {
"resolve-from": "^5.0.0"
+ },
+ "engines": {
+ "node": ">=8"
}
},
- "resolve-from": {
+ "node_modules/resolve-from": {
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz",
"integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
},
- "resolve.exports": {
+ "node_modules/resolve.exports": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-1.1.0.tgz",
"integrity": "sha512-J1l+Zxxp4XK3LUDZ9m60LRJF/mAe4z6a4xyabPHk7pvK5t35dACV32iIjJDFeWZFfZlO29w6SZ67knR0tHzJtQ==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=10"
+ }
},
- "rimraf": {
+ "node_modules/rimraf": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.0.tgz",
"integrity": "sha512-NDGVxTsjqfunkds7CqsOiEnxln4Bo7Nddl3XhS4pXg5OzwkLqJ971ZVAAnB+DDLnF76N+VnDEiBHaVV8I06SUg==",
+ "deprecated": "Rimraf versions prior to v4 are no longer supported",
"dev": true,
- "requires": {
+ "dependencies": {
"glob": "^7.1.3"
+ },
+ "bin": {
+ "rimraf": "bin.js"
}
},
- "ripemd160": {
+ "node_modules/ripemd160": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz",
"integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==",
"dev": true,
- "requires": {
+ "dependencies": {
"hash-base": "^3.0.0",
"inherits": "^2.0.1"
}
},
- "safe-buffer": {
+ "node_modules/safe-buffer": {
"version": "5.1.2",
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
"integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
"dev": true
},
- "safe-regex-test": {
+ "node_modules/safe-regex-test": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz",
"integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==",
"dev": true,
- "requires": {
+ "dependencies": {
"call-bind": "^1.0.2",
"get-intrinsic": "^1.1.3",
"is-regex": "^1.1.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "semver": {
- "version": "5.7.0",
- "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz",
- "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==",
- "dev": true
+ "node_modules/semver": {
+ "version": "5.7.2",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz",
+ "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==",
+ "dev": true,
+ "license": "ISC",
+ "bin": {
+ "semver": "bin/semver"
+ }
},
- "set-value": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz",
- "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==",
- "dev": true,
- "requires": {
- "extend-shallow": "^2.0.1",
- "is-extendable": "^0.1.1",
- "is-plain-object": "^2.0.3",
- "split-string": "^3.0.1"
- },
- "dependencies": {
- "extend-shallow": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
- "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
- "dev": true,
- "requires": {
- "is-extendable": "^0.1.0"
- }
- }
+ "node_modules/set-function-length": {
+ "version": "1.2.2",
+ "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz",
+ "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "define-data-property": "^1.1.4",
+ "es-errors": "^1.3.0",
+ "function-bind": "^1.1.2",
+ "get-intrinsic": "^1.2.4",
+ "gopd": "^1.0.1",
+ "has-property-descriptors": "^1.0.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
}
},
- "sha.js": {
- "version": "2.4.11",
- "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz",
- "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==",
+ "node_modules/sha.js": {
+ "version": "2.4.12",
+ "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.12.tgz",
+ "integrity": "sha512-8LzC5+bvI45BjpfXU8V5fdU2mfeKiQe1D1gIMn7XUlF3OTUrpdJpPPH4EMAnF0DsHHdSZqCdSss5qCmJKuiO3w==",
"dev": true,
- "requires": {
- "inherits": "^2.0.1",
- "safe-buffer": "^5.0.1"
+ "license": "(MIT AND BSD-3-Clause)",
+ "dependencies": {
+ "inherits": "^2.0.4",
+ "safe-buffer": "^5.2.1",
+ "to-buffer": "^1.2.0"
+ },
+ "bin": {
+ "sha.js": "bin.js"
+ },
+ "engines": {
+ "node": ">= 0.10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "shasum": {
+ "node_modules/sha.js/node_modules/inherits": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
+ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
+ "dev": true,
+ "license": "ISC"
+ },
+ "node_modules/sha.js/node_modules/safe-buffer": {
+ "version": "5.2.1",
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
+ "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ],
+ "license": "MIT"
+ },
+ "node_modules/shasum": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/shasum/-/shasum-1.0.2.tgz",
"integrity": "sha1-5wEjENj0F/TetXEhUOVni4euVl8=",
"dev": true,
- "requires": {
+ "dependencies": {
"json-stable-stringify": "~0.0.0",
"sha.js": "~2.4.4"
}
},
- "shebang-command": {
+ "node_modules/shebang-command": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
"integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
"dev": true,
- "requires": {
+ "dependencies": {
"shebang-regex": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=8"
}
},
- "shebang-regex": {
+ "node_modules/shebang-regex": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
"integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
},
- "shell-quote": {
+ "node_modules/shell-quote": {
"version": "1.7.3",
"resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.7.3.tgz",
"integrity": "sha512-Vpfqwm4EnqGdlsBFNmHhxhElJYrdfcxPThu+ryKS5J8L/fhAwLazFZtq+S+TWZ9ANj2piSQLGj6NQg+lKPmxrw==",
"dev": true
},
- "shellwords": {
+ "node_modules/shellwords": {
"version": "0.1.1",
"resolved": "https://registry.npmjs.org/shellwords/-/shellwords-0.1.1.tgz",
"integrity": "sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww==",
- "dev": true
+ "dev": true,
+ "optional": true,
+ "peer": true
},
- "side-channel": {
+ "node_modules/side-channel": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz",
"integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==",
"dev": true,
- "requires": {
+ "dependencies": {
"call-bind": "^1.0.0",
"get-intrinsic": "^1.0.2",
"object-inspect": "^1.9.0"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "sigmund": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz",
- "integrity": "sha1-P/IfGYytIXX587eBhT/ZTQ0ZtZA=",
- "dev": true
- },
- "signal-exit": {
+ "node_modules/signal-exit": {
"version": "3.0.7",
"resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz",
"integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==",
"dev": true
},
- "simple-concat": {
+ "node_modules/simple-concat": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.0.tgz",
"integrity": "sha1-c0TLuLbib7J9ZrL8hvn21Zl1IcY=",
"dev": true
},
- "sisteransi": {
+ "node_modules/sisteransi": {
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz",
"integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==",
"dev": true
},
- "slash": {
+ "node_modules/slash": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz",
"integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
},
- "source-map": {
+ "node_modules/source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
},
- "source-map-support": {
+ "node_modules/source-map-support": {
"version": "0.5.13",
"resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz",
"integrity": "sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==",
"dev": true,
- "requires": {
+ "dependencies": {
"buffer-from": "^1.0.0",
"source-map": "^0.6.0"
}
},
- "spdx-correct": {
+ "node_modules/spdx-correct": {
"version": "3.1.1",
"resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz",
"integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==",
"dev": true,
- "requires": {
+ "dependencies": {
"spdx-expression-parse": "^3.0.0",
"spdx-license-ids": "^3.0.0"
}
},
- "spdx-exceptions": {
+ "node_modules/spdx-exceptions": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz",
"integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==",
"dev": true
},
- "spdx-expression-parse": {
+ "node_modules/spdx-expression-parse": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz",
"integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==",
"dev": true,
- "requires": {
+ "dependencies": {
"spdx-exceptions": "^2.1.0",
"spdx-license-ids": "^3.0.0"
}
},
- "spdx-license-ids": {
+ "node_modules/spdx-license-ids": {
"version": "3.0.12",
"resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.12.tgz",
"integrity": "sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA==",
"dev": true
},
- "split-string": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz",
- "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==",
- "dev": true,
- "requires": {
- "extend-shallow": "^3.0.0"
- }
- },
- "sprintf-js": {
+ "node_modules/sprintf-js": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
"integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=",
"dev": true
},
- "stack-utils": {
+ "node_modules/stack-utils": {
"version": "2.0.6",
"resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz",
"integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"escape-string-regexp": "^2.0.0"
},
- "dependencies": {
- "escape-string-regexp": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz",
- "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==",
- "dev": true
- }
+ "engines": {
+ "node": ">=10"
}
},
- "stream-browserify": {
+ "node_modules/stack-utils/node_modules/escape-string-regexp": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz",
+ "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/stream-browserify": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz",
"integrity": "sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==",
"dev": true,
- "requires": {
+ "dependencies": {
"inherits": "~2.0.1",
"readable-stream": "^2.0.2"
}
},
- "stream-combiner2": {
+ "node_modules/stream-combiner2": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/stream-combiner2/-/stream-combiner2-1.1.1.tgz",
"integrity": "sha1-+02KFCDqNidk4hrUeAOXvry0HL4=",
"dev": true,
- "requires": {
+ "dependencies": {
"duplexer2": "~0.1.0",
"readable-stream": "^2.0.2"
}
},
- "stream-http": {
+ "node_modules/stream-http": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/stream-http/-/stream-http-3.1.0.tgz",
"integrity": "sha512-cuB6RgO7BqC4FBYzmnvhob5Do3wIdIsXAgGycHJnW+981gHqoYcYz9lqjJrk8WXRddbwPuqPYRl+bag6mYv4lw==",
"dev": true,
- "requires": {
+ "dependencies": {
"builtin-status-codes": "^3.0.0",
"inherits": "^2.0.1",
"readable-stream": "^3.0.6",
"xtend": "^4.0.0"
- },
+ }
+ },
+ "node_modules/stream-http/node_modules/readable-stream": {
+ "version": "3.4.0",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.4.0.tgz",
+ "integrity": "sha512-jItXPLmrSR8jmTRmRWJXCnGJsfy85mB3Wd/uINMXA65yrnFo0cPClFIUWzo2najVNSl+mx7/4W8ttlLWJe99pQ==",
+ "dev": true,
"dependencies": {
- "readable-stream": {
- "version": "3.4.0",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.4.0.tgz",
- "integrity": "sha512-jItXPLmrSR8jmTRmRWJXCnGJsfy85mB3Wd/uINMXA65yrnFo0cPClFIUWzo2najVNSl+mx7/4W8ttlLWJe99pQ==",
- "dev": true,
- "requires": {
- "inherits": "^2.0.3",
- "string_decoder": "^1.1.1",
- "util-deprecate": "^1.0.1"
- }
- }
+ "inherits": "^2.0.3",
+ "string_decoder": "^1.1.1",
+ "util-deprecate": "^1.0.1"
+ },
+ "engines": {
+ "node": ">= 6"
}
},
- "stream-splicer": {
+ "node_modules/stream-splicer": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/stream-splicer/-/stream-splicer-2.0.1.tgz",
"integrity": "sha512-Xizh4/NPuYSyAXyT7g8IvdJ9HJpxIGL9PjyhtywCZvvP0OPIdqyrr4dMikeuvY8xahpdKEBlBTySe583totajg==",
"dev": true,
- "requires": {
+ "dependencies": {
"inherits": "^2.0.1",
"readable-stream": "^2.0.2"
}
},
- "string-length": {
+ "node_modules/string_decoder": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
+ "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
+ "dev": true,
+ "dependencies": {
+ "safe-buffer": "~5.1.0"
+ }
+ },
+ "node_modules/string-length": {
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz",
"integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"char-regex": "^1.0.2",
"strip-ansi": "^6.0.0"
+ },
+ "engines": {
+ "node": ">=10"
}
},
- "string-width": {
+ "node_modules/string-width": {
"version": "4.2.3",
"resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
"integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
"dev": true,
- "requires": {
+ "dependencies": {
"emoji-regex": "^8.0.0",
"is-fullwidth-code-point": "^3.0.0",
"strip-ansi": "^6.0.1"
+ },
+ "engines": {
+ "node": ">=8"
}
},
- "string.prototype.padend": {
+ "node_modules/string.prototype.padend": {
"version": "3.1.4",
"resolved": "https://registry.npmjs.org/string.prototype.padend/-/string.prototype.padend-3.1.4.tgz",
"integrity": "sha512-67otBXoksdjsnXXRUq+KMVTdlVRZ2af422Y0aTyTjVaoQkGr3mxl2Bc5emi7dOQ3OGVVQQskmLEWwFXwommpNw==",
"dev": true,
- "requires": {
+ "dependencies": {
"call-bind": "^1.0.2",
"define-properties": "^1.1.4",
"es-abstract": "^1.20.4"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "string.prototype.trimend": {
+ "node_modules/string.prototype.trimend": {
"version": "1.0.6",
"resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz",
"integrity": "sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"call-bind": "^1.0.2",
"define-properties": "^1.1.4",
"es-abstract": "^1.20.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "string.prototype.trimstart": {
+ "node_modules/string.prototype.trimstart": {
"version": "1.0.6",
"resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz",
"integrity": "sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==",
"dev": true,
- "requires": {
+ "dependencies": {
"call-bind": "^1.0.2",
"define-properties": "^1.1.4",
"es-abstract": "^1.20.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "string_decoder": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
- "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
- "dev": true,
- "requires": {
- "safe-buffer": "~5.1.0"
- }
- },
- "strip-ansi": {
+ "node_modules/strip-ansi": {
"version": "6.0.1",
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
"integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
"dev": true,
- "requires": {
+ "dependencies": {
"ansi-regex": "^5.0.1"
+ },
+ "engines": {
+ "node": ">=8"
}
},
- "strip-bom": {
+ "node_modules/strip-bom": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz",
"integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
},
- "strip-final-newline": {
+ "node_modules/strip-final-newline": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz",
"integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=6"
+ }
},
- "strip-json-comments": {
+ "node_modules/strip-json-comments": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz",
"integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
},
- "subarg": {
+ "node_modules/subarg": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/subarg/-/subarg-1.0.0.tgz",
"integrity": "sha1-9izxdYHplrSPyWVpn1TAauJouNI=",
"dev": true,
- "requires": {
+ "dependencies": {
"minimist": "^1.1.0"
}
},
- "supports-color": {
+ "node_modules/supports-color": {
"version": "5.5.0",
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
"integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
"dev": true,
- "requires": {
+ "dependencies": {
"has-flag": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=4"
}
},
- "supports-preserve-symlinks-flag": {
+ "node_modules/supports-preserve-symlinks-flag": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
"integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
},
- "syntax-error": {
+ "node_modules/syntax-error": {
"version": "1.4.0",
"resolved": "https://registry.npmjs.org/syntax-error/-/syntax-error-1.4.0.tgz",
"integrity": "sha512-YPPlu67mdnHGTup2A8ff7BC2Pjq0e0Yp/IyTFN03zWO0RcK07uLcbi7C2KpGR2FvWbaB0+bfE27a+sBKebSo7w==",
"dev": true,
- "requires": {
+ "dependencies": {
"acorn-node": "^1.2.0"
}
},
- "test-exclude": {
+ "node_modules/test-exclude": {
"version": "6.0.0",
"resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz",
"integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==",
"dev": true,
- "requires": {
+ "dependencies": {
"@istanbuljs/schema": "^0.1.2",
"glob": "^7.1.4",
"minimatch": "^3.0.4"
+ },
+ "engines": {
+ "node": ">=8"
}
},
- "through": {
+ "node_modules/through": {
"version": "2.3.8",
"resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
"integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=",
"dev": true
},
- "through2": {
+ "node_modules/through2": {
"version": "2.0.5",
"resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz",
"integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"readable-stream": "~2.3.6",
"xtend": "~4.0.1"
}
},
- "timers-browserify": {
+ "node_modules/timers-browserify": {
"version": "1.4.2",
"resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-1.4.2.tgz",
"integrity": "sha1-ycWLV1voQHN1y14kYtrO50NZ9B0=",
"dev": true,
- "requires": {
+ "dependencies": {
"process": "~0.11.0"
+ },
+ "engines": {
+ "node": ">=0.6.0"
}
},
- "tmpl": {
+ "node_modules/tmpl": {
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz",
"integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==",
"dev": true
},
- "to-fast-properties": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz",
- "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==",
- "dev": true
+ "node_modules/to-buffer": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/to-buffer/-/to-buffer-1.2.1.tgz",
+ "integrity": "sha512-tB82LpAIWjhLYbqjx3X4zEeHN6M8CiuOEy2JY8SEQVdYRe3CCHOFaqrBW1doLDrfpWhplcW7BL+bO3/6S3pcDQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "isarray": "^2.0.5",
+ "safe-buffer": "^5.2.1",
+ "typed-array-buffer": "^1.0.3"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/to-buffer/node_modules/isarray": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz",
+ "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/to-buffer/node_modules/safe-buffer": {
+ "version": "5.2.1",
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
+ "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ],
+ "license": "MIT"
},
- "to-regex-range": {
+ "node_modules/to-regex-range": {
"version": "5.0.1",
"resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
"integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
"dev": true,
- "requires": {
+ "license": "MIT",
+ "dependencies": {
"is-number": "^7.0.0"
+ },
+ "engines": {
+ "node": ">=8.0"
}
},
- "ts-dedent": {
+ "node_modules/ts-dedent": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/ts-dedent/-/ts-dedent-1.1.0.tgz",
"integrity": "sha512-CVCvDwMBWZKjDxpN3mU/Dx1v3k+sJgE8nrhXcC9vRopRfoa7vVzilNvHEAUi5jQnmFHpnxDx5jZdI1TpG8ny2g==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=6.10"
+ }
},
- "ts-jest": {
+ "node_modules/ts-jest": {
"version": "29.0.3",
"resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.0.3.tgz",
"integrity": "sha512-Ibygvmuyq1qp/z3yTh9QTwVVAbFdDy/+4BtIQR2sp6baF2SJU/8CKK/hhnGIDY2L90Az2jIqTwZPnN2p+BweiQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"bs-logger": "0.x",
"fast-json-stable-stringify": "2.x",
"jest-util": "^29.0.0",
@@ -5829,90 +7257,121 @@
"semver": "7.x",
"yargs-parser": "^21.0.1"
},
- "dependencies": {
- "lodash.memoize": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz",
- "integrity": "sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4=",
- "dev": true
+ "bin": {
+ "ts-jest": "cli.js"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ },
+ "peerDependencies": {
+ "@babel/core": ">=7.0.0-beta.0 <8",
+ "@jest/types": "^29.0.0",
+ "babel-jest": "^29.0.0",
+ "jest": "^29.0.0",
+ "typescript": ">=4.3"
+ },
+ "peerDependenciesMeta": {
+ "@babel/core": {
+ "optional": true
},
- "lru-cache": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
- "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
- "dev": true,
- "requires": {
- "yallist": "^4.0.0"
- }
+ "@jest/types": {
+ "optional": true
},
- "semver": {
- "version": "7.3.8",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz",
- "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==",
- "dev": true,
- "requires": {
- "lru-cache": "^6.0.0"
- }
+ "babel-jest": {
+ "optional": true
+ },
+ "esbuild": {
+ "optional": true
}
}
},
- "tsconfig": {
+ "node_modules/ts-jest/node_modules/lodash.memoize": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz",
+ "integrity": "sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4=",
+ "dev": true
+ },
+ "node_modules/ts-jest/node_modules/semver": {
+ "version": "7.7.2",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz",
+ "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==",
+ "dev": true,
+ "license": "ISC",
+ "bin": {
+ "semver": "bin/semver.js"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/tsconfig": {
"version": "5.0.3",
"resolved": "https://registry.npmjs.org/tsconfig/-/tsconfig-5.0.3.tgz",
"integrity": "sha1-X0J45wGACWeo/Dg/0ZZIh48qbjo=",
"dev": true,
- "requires": {
+ "dependencies": {
"any-promise": "^1.3.0",
"parse-json": "^2.2.0",
"strip-bom": "^2.0.0",
"strip-json-comments": "^2.0.0"
+ }
+ },
+ "node_modules/tsconfig/node_modules/parse-json": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz",
+ "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=",
+ "dev": true,
+ "dependencies": {
+ "error-ex": "^1.2.0"
},
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/tsconfig/node_modules/strip-bom": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz",
+ "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=",
+ "dev": true,
"dependencies": {
- "parse-json": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz",
- "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=",
- "dev": true,
- "requires": {
- "error-ex": "^1.2.0"
- }
- },
- "strip-bom": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz",
- "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=",
- "dev": true,
- "requires": {
- "is-utf8": "^0.2.0"
- }
- }
+ "is-utf8": "^0.2.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
}
},
- "tsify": {
+ "node_modules/tsify": {
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/tsify/-/tsify-4.0.1.tgz",
"integrity": "sha512-ClznEI+pmwY5wmD0J7HCSVERwkD+l71ch3Dqyod2JuQLEsFaiNDI+vPjaGadsuVFVvmzgoI7HghrBtWsSmCDHQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"convert-source-map": "^1.1.0",
"fs.realpath": "^1.0.0",
"object-assign": "^4.1.0",
"semver": "^5.6.0",
"through2": "^2.0.0",
"tsconfig": "^5.0.3"
+ },
+ "engines": {
+ "node": ">=0.12"
+ },
+ "peerDependencies": {
+ "browserify": ">= 10.x",
+ "typescript": ">= 2.x"
}
},
- "tslib": {
+ "node_modules/tslib": {
"version": "1.10.0",
"resolved": "https://registry.npmjs.org/tslib/-/tslib-1.10.0.tgz",
"integrity": "sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ=="
},
- "tslint": {
+ "node_modules/tslint": {
"version": "5.20.0",
"resolved": "https://registry.npmjs.org/tslint/-/tslint-5.20.0.tgz",
"integrity": "sha512-2vqIvkMHbnx8acMogAERQ/IuINOq6DFqgF8/VDvhEkBqQh/x6SP0Y+OHnKth9/ZcHQSroOZwUQSN18v8KKF0/g==",
"dev": true,
- "requires": {
+ "dependencies": {
"@babel/code-frame": "^7.0.0",
"builtin-modules": "^1.1.1",
"chalk": "^2.3.0",
@@ -5927,336 +7386,414 @@
"tslib": "^1.8.0",
"tsutils": "^2.29.0"
},
- "dependencies": {
- "tsutils": {
- "version": "2.29.0",
- "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-2.29.0.tgz",
- "integrity": "sha512-g5JVHCIJwzfISaXpXE1qvNalca5Jwob6FjI4AoPlqMusJ6ftFE7IkkFoMhVLRgK+4Kx3gkzb8UZK5t5yTTvEmA==",
- "dev": true,
- "requires": {
- "tslib": "^1.8.1"
- }
- }
+ "bin": {
+ "tslint": "bin/tslint"
+ },
+ "engines": {
+ "node": ">=4.8.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=2.3.0-dev || >=2.4.0-dev || >=2.5.0-dev || >=2.6.0-dev || >=2.7.0-dev || >=2.8.0-dev || >=2.9.0-dev || >=3.0.0-dev || >= 3.1.0-dev || >= 3.2.0-dev"
}
},
- "tslint-config-prettier": {
+ "node_modules/tslint-config-prettier": {
"version": "1.18.0",
"resolved": "https://registry.npmjs.org/tslint-config-prettier/-/tslint-config-prettier-1.18.0.tgz",
"integrity": "sha512-xPw9PgNPLG3iKRxmK7DWr+Ea/SzrvfHtjFt5LBl61gk2UBG/DB9kCXRjv+xyIU1rUtnayLeMUVJBcMX8Z17nDg==",
- "dev": true
+ "dev": true,
+ "bin": {
+ "tslint-config-prettier-check": "bin/check.js"
+ },
+ "engines": {
+ "node": ">=4.0.0"
+ }
+ },
+ "node_modules/tslint/node_modules/tsutils": {
+ "version": "2.29.0",
+ "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-2.29.0.tgz",
+ "integrity": "sha512-g5JVHCIJwzfISaXpXE1qvNalca5Jwob6FjI4AoPlqMusJ6ftFE7IkkFoMhVLRgK+4Kx3gkzb8UZK5t5yTTvEmA==",
+ "dev": true,
+ "dependencies": {
+ "tslib": "^1.8.1"
+ },
+ "peerDependencies": {
+ "typescript": ">=2.1.0 || >=2.1.0-dev || >=2.2.0-dev || >=2.3.0-dev || >=2.4.0-dev || >=2.5.0-dev || >=2.6.0-dev || >=2.7.0-dev || >=2.8.0-dev || >=2.9.0-dev || >= 3.0.0-dev || >= 3.1.0-dev"
+ }
},
- "tsutils": {
+ "node_modules/tsutils": {
"version": "3.17.1",
"resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.17.1.tgz",
"integrity": "sha512-kzeQ5B8H3w60nFY2g8cJIuH7JDpsALXySGtwGJ0p2LSjLgay3NdIpqq5SoOBe46bKDW2iq25irHCr8wjomUS2g==",
"dev": true,
- "requires": {
+ "dependencies": {
"tslib": "^1.8.1"
+ },
+ "engines": {
+ "node": ">= 6"
+ },
+ "peerDependencies": {
+ "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta"
}
},
- "tty-browserify": {
+ "node_modules/tty-browserify": {
"version": "0.0.1",
"resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.1.tgz",
"integrity": "sha512-C3TaO7K81YvjCgQH9Q1S3R3P3BtN3RIM8n+OvX4il1K1zgE8ZhI0op7kClgkxtutIE8hQrcrHBXvIheqKUUCxw==",
"dev": true
},
- "type-detect": {
+ "node_modules/type-detect": {
"version": "4.0.8",
"resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz",
"integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=4"
+ }
},
- "type-fest": {
+ "node_modules/type-fest": {
"version": "0.21.3",
"resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz",
"integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/typed-array-buffer": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz",
+ "integrity": "sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bound": "^1.0.3",
+ "es-errors": "^1.3.0",
+ "is-typed-array": "^1.1.14"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
},
- "typedarray": {
+ "node_modules/typedarray": {
"version": "0.0.6",
"resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz",
"integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=",
"dev": true
},
- "typescript": {
+ "node_modules/typescript": {
"version": "4.9.4",
"resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.4.tgz",
"integrity": "sha512-Uz+dTXYzxXXbsFpM86Wh3dKCxrQqUcVMxwU54orwlJjOpO3ao8L7j5lH+dWfTwgCwIuM9GQ2kvVotzYJMXTBZg==",
- "dev": true
- },
- "uglify": {
- "version": "0.1.5",
- "resolved": "https://registry.npmjs.org/uglify/-/uglify-0.1.5.tgz",
- "integrity": "sha1-iI1X770b+n+tieEdBpl16WgtVNI=",
- "dev": true,
- "requires": {
- "commander": "*",
- "grunt": "0.4.5",
- "grunt-contrib-clean": "0.5.0",
- "grunt-contrib-concat": "0.3.0",
- "grunt-contrib-copy": "0.5.0",
- "grunt-contrib-cssmin": "0.6.1",
- "grunt-contrib-uglify": "0.2.4",
- "grunt-css-url-replace": "*",
- "underscore": "1.4.x",
- "underscore.string": "2.3.3"
- },
- "dependencies": {
- "underscore.string": {
- "version": "2.3.3",
- "resolved": "https://registry.npmjs.org/underscore.string/-/underscore.string-2.3.3.tgz",
- "integrity": "sha1-ccCL9rQosRM/N+ePo6Icgvcymw0=",
- "dev": true
- }
+ "dev": true,
+ "bin": {
+ "tsc": "bin/tsc",
+ "tsserver": "bin/tsserver"
+ },
+ "engines": {
+ "node": ">=4.2.0"
}
},
- "uglify-js": {
+ "node_modules/uglify-js": {
"version": "3.6.0",
"resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.6.0.tgz",
"integrity": "sha512-W+jrUHJr3DXKhrsS7NUVxn3zqMOFn0hL/Ei6v0anCIMoKC93TjcflTagwIHLW7SfMFfiQuktQyFVCFHGUE0+yg==",
"dev": true,
- "requires": {
+ "dependencies": {
"commander": "~2.20.0",
"source-map": "~0.6.1"
+ },
+ "bin": {
+ "uglifyjs": "bin/uglifyjs"
+ },
+ "engines": {
+ "node": ">=0.8.0"
}
},
- "uglify-to-browserify": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz",
- "integrity": "sha1-bgkk1r2mta/jSeOabWMoUKD4grc=",
- "dev": true
- },
- "umd": {
+ "node_modules/umd": {
"version": "3.0.3",
"resolved": "https://registry.npmjs.org/umd/-/umd-3.0.3.tgz",
"integrity": "sha512-4IcGSufhFshvLNcMCV80UnQVlZ5pMOC8mvNPForqwA4+lzYQuetTESLDQkeLmihq8bRcnpbQa48Wb8Lh16/xow==",
- "dev": true
+ "dev": true,
+ "bin": {
+ "umd": "bin/cli.js"
+ }
},
- "unbox-primitive": {
+ "node_modules/unbox-primitive": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz",
"integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==",
"dev": true,
- "requires": {
+ "dependencies": {
"call-bind": "^1.0.2",
"has-bigints": "^1.0.2",
"has-symbols": "^1.0.3",
"which-boxed-primitive": "^1.0.2"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "undeclared-identifiers": {
+ "node_modules/undeclared-identifiers": {
"version": "1.1.3",
"resolved": "https://registry.npmjs.org/undeclared-identifiers/-/undeclared-identifiers-1.1.3.tgz",
"integrity": "sha512-pJOW4nxjlmfwKApE4zvxLScM/njmwj/DiUBv7EabwE4O8kRUy+HIwxQtZLBPll/jx1LJyBcqNfB3/cpv9EZwOw==",
"dev": true,
- "requires": {
+ "dependencies": {
"acorn-node": "^1.3.0",
"dash-ast": "^1.0.0",
"get-assigned-identifiers": "^1.2.0",
"simple-concat": "^1.0.0",
"xtend": "^4.0.1"
+ },
+ "bin": {
+ "undeclared-identifiers": "bin.js"
}
},
- "underscore": {
- "version": "1.4.4",
- "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.4.4.tgz",
- "integrity": "sha1-YaajIBBiKvoHljvzJSA88SI51gQ=",
- "dev": true
- },
- "underscore.string": {
- "version": "3.3.5",
- "resolved": "https://registry.npmjs.org/underscore.string/-/underscore.string-3.3.5.tgz",
- "integrity": "sha512-g+dpmgn+XBneLmXXo+sGlW5xQEt4ErkS3mgeN2GFbremYeMBSJKr9Wf2KJplQVaiPY/f7FN6atosWYNm9ovrYg==",
- "dev": true,
- "requires": {
- "sprintf-js": "^1.0.3",
- "util-deprecate": "^1.0.2"
- }
- },
- "update-browserslist-db": {
+ "node_modules/update-browserslist-db": {
"version": "1.0.10",
"resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz",
"integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==",
"dev": true,
- "requires": {
+ "funding": [
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/browserslist"
+ },
+ {
+ "type": "tidelift",
+ "url": "https://tidelift.com/funding/github/npm/browserslist"
+ }
+ ],
+ "dependencies": {
"escalade": "^3.1.1",
"picocolors": "^1.0.0"
+ },
+ "bin": {
+ "browserslist-lint": "cli.js"
+ },
+ "peerDependencies": {
+ "browserslist": ">= 4.21.0"
}
},
- "url": {
+ "node_modules/url": {
"version": "0.11.0",
"resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz",
"integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=",
"dev": true,
- "requires": {
+ "dependencies": {
"punycode": "1.3.2",
"querystring": "0.2.0"
- },
- "dependencies": {
- "punycode": {
- "version": "1.3.2",
- "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz",
- "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=",
- "dev": true
- }
}
},
- "util": {
+ "node_modules/url/node_modules/punycode": {
+ "version": "1.3.2",
+ "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz",
+ "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=",
+ "dev": true
+ },
+ "node_modules/util": {
"version": "0.10.4",
"resolved": "https://registry.npmjs.org/util/-/util-0.10.4.tgz",
"integrity": "sha512-0Pm9hTQ3se5ll1XihRic3FDIku70C+iHUdT/W926rSgHV5QgXsYbKZN8MSC3tJtSkhuROzvsQjAaFENRXr+19A==",
"dev": true,
- "requires": {
+ "dependencies": {
"inherits": "2.0.3"
}
},
- "util-deprecate": {
+ "node_modules/util-deprecate": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
"integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=",
"dev": true
},
- "v8-to-istanbul": {
+ "node_modules/v8-to-istanbul": {
"version": "9.0.1",
"resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.0.1.tgz",
"integrity": "sha512-74Y4LqY74kLE6IFyIjPtkSTWzUZmj8tdHT9Ii/26dvQ6K9Dl2NbEfj0XgU2sHCtKgt5VupqhlO/5aWuqS+IY1w==",
"dev": true,
- "requires": {
+ "dependencies": {
"@jridgewell/trace-mapping": "^0.3.12",
"@types/istanbul-lib-coverage": "^2.0.1",
"convert-source-map": "^1.6.0"
+ },
+ "engines": {
+ "node": ">=10.12.0"
}
},
- "validate-npm-package-license": {
+ "node_modules/validate-npm-package-license": {
"version": "3.0.4",
"resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz",
"integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==",
"dev": true,
- "requires": {
+ "dependencies": {
"spdx-correct": "^3.0.0",
"spdx-expression-parse": "^3.0.0"
}
},
- "vm-browserify": {
+ "node_modules/vm-browserify": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.0.tgz",
"integrity": "sha512-iq+S7vZJE60yejDYM0ek6zg308+UZsdtPExWP9VZoCFCz1zkJoXFnAX7aZfd/ZwrkidzdUZL0C/ryW+JwAiIGw==",
"dev": true
},
- "walker": {
+ "node_modules/walker": {
"version": "1.0.8",
"resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz",
"integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==",
"dev": true,
- "requires": {
+ "dependencies": {
"makeerror": "1.0.12"
}
},
- "which": {
+ "node_modules/which": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
"integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
"dev": true,
- "requires": {
+ "dependencies": {
"isexe": "^2.0.0"
+ },
+ "bin": {
+ "node-which": "bin/node-which"
+ },
+ "engines": {
+ "node": ">= 8"
}
},
- "which-boxed-primitive": {
+ "node_modules/which-boxed-primitive": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz",
"integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==",
"dev": true,
- "requires": {
+ "dependencies": {
"is-bigint": "^1.0.1",
"is-boolean-object": "^1.1.0",
"is-number-object": "^1.0.4",
"is-string": "^1.0.5",
"is-symbol": "^1.0.3"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "window-size": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz",
- "integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=",
- "dev": true
+ "node_modules/which-typed-array": {
+ "version": "1.1.19",
+ "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.19.tgz",
+ "integrity": "sha512-rEvr90Bck4WZt9HHFC4DJMsjvu7x+r6bImz0/BrbWb7A2djJ8hnZMrWnHo9F8ssv0OMErasDhftrfROTyqSDrw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "available-typed-arrays": "^1.0.7",
+ "call-bind": "^1.0.8",
+ "call-bound": "^1.0.4",
+ "for-each": "^0.3.5",
+ "get-proto": "^1.0.1",
+ "gopd": "^1.2.0",
+ "has-tostringtag": "^1.0.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
},
- "wrap-ansi": {
+ "node_modules/wrap-ansi": {
"version": "7.0.0",
"resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
"integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
"dev": true,
- "requires": {
+ "dependencies": {
"ansi-styles": "^4.0.0",
"string-width": "^4.1.0",
"strip-ansi": "^6.0.0"
},
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/wrap-ansi?sponsor=1"
+ }
+ },
+ "node_modules/wrap-ansi/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
"dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- }
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
}
},
- "wrappy": {
+ "node_modules/wrap-ansi/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/wrap-ansi/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/wrappy": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
"integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
"dev": true
},
- "write-file-atomic": {
+ "node_modules/write-file-atomic": {
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz",
"integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==",
"dev": true,
- "requires": {
+ "dependencies": {
"imurmurhash": "^0.1.4",
"signal-exit": "^3.0.7"
+ },
+ "engines": {
+ "node": "^12.13.0 || ^14.15.0 || >=16.0.0"
}
},
- "xtend": {
+ "node_modules/xtend": {
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz",
"integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=0.4"
+ }
},
- "y18n": {
+ "node_modules/y18n": {
"version": "5.0.8",
"resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz",
"integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==",
- "dev": true
- },
- "yallist": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
- "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=10"
+ }
},
- "yargs": {
+ "node_modules/yargs": {
"version": "17.6.2",
"resolved": "https://registry.npmjs.org/yargs/-/yargs-17.6.2.tgz",
"integrity": "sha512-1/9UrdHjDZc0eOU0HxOHoS78C69UD3JRMvzlJ7S79S2nTaWRA/whGCTV8o9e/N/1Va9YIV7Q4sOxD8VV4pCWOw==",
"dev": true,
- "requires": {
+ "dependencies": {
"cliui": "^8.0.1",
"escalade": "^3.1.1",
"get-caller-file": "^2.0.5",
@@ -6264,25 +7801,31 @@
"string-width": "^4.2.3",
"y18n": "^5.0.5",
"yargs-parser": "^21.1.1"
+ },
+ "engines": {
+ "node": ">=12"
}
},
- "yargs-parser": {
+ "node_modules/yargs-parser": {
"version": "21.1.1",
"resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz",
"integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=12"
+ }
},
- "yocto-queue": {
+ "node_modules/yocto-queue": {
"version": "0.1.0",
"resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz",
"integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==",
- "dev": true
- },
- "zlib-browserify": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/zlib-browserify/-/zlib-browserify-0.0.1.tgz",
- "integrity": "sha1-T6akXQDbwV8xikr6HZr8Aljhdsw=",
- "dev": true
+ "dev": true,
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
}
}
}
diff --git a/package.json b/package.json
index 81d2144..119eaff 100644
--- a/package.json
+++ b/package.json
@@ -9,7 +9,7 @@
"dist.browser"
],
"engines": {
- "node": ">= 10.13"
+ "node": ">= 22"
},
"author": "Mark Tucker ",
"license": "MIT",
@@ -29,24 +29,24 @@
"build:minify": "browserify index.ts -p [tsify --noImplicityAny ] -s speechmarkdown | uglifyjs -cm -o ./dist.browser/speechmarkdown.min.js",
"watch": "tsc -w -p tsconfig.json",
"lint": "tslint -t stylish --project \"tsconfig.json\"",
+ "format": "prettier --write .",
+ "format:check": "prettier --check .",
"test": "jest --coverage",
"test:single": "jest -t $1",
- "test:watch": "jest --watch"
+ "test:watch": "jest --watch",
+ "docs:update-voices": "node scripts/update-voice-data.js"
},
"devDependencies": {
"@types/jest": "^24.0.18",
"@types/node": "^12.7.11",
"acorn": ">=5.7.4",
+ "aws4": "^1.13.2",
"browserify": "^16.5.0",
- "clean-css": ">=4.1.11",
+ "https-proxy-agent": "^7.0.6",
"jest": "^29.3.1",
- "lodash": "^4.17.19",
- "mixin-deep": ">=1.3.2",
- "node-notifier": ">=8.0.1",
"npm-run-all": "^4.1.5",
- "prettier": "^1.18.2",
+ "prettier": "^2.8.8",
"rimraf": "^3.0.0",
- "set-value": ">=2.0.1",
"ts-dedent": "^1.1.0",
"ts-jest": "^29.0.3",
"tsify": "^4.0.1",
@@ -54,9 +54,7 @@
"tslint-config-prettier": "1.18.0",
"tsutils": "^3.17.1",
"typescript": "^4.9.4",
- "uglify": "^0.1.5",
- "uglify-js": "^3.6.0",
- "underscore.string": ">=3.3.5"
+ "uglify-js": "^3.6.0"
},
"dependencies": {
"myna-parser": "^2.5.1",
diff --git a/scripts/update-voice-data.js b/scripts/update-voice-data.js
new file mode 100755
index 0000000..5f92b71
--- /dev/null
+++ b/scripts/update-voice-data.js
@@ -0,0 +1,518 @@
+#!/usr/bin/env node
+
+const fs = require('fs');
+const path = require('path');
+const https = require('https');
+const { URL, URLSearchParams } = require('url');
+const aws4 = require('aws4');
+const { HttpsProxyAgent } = require('https-proxy-agent');
+
+const proxyAgent = (() => {
+ const proxyUrl =
+ process.env.HTTPS_PROXY ||
+ process.env.https_proxy ||
+ process.env.HTTP_PROXY ||
+ process.env.http_proxy ||
+ null;
+
+ if (!proxyUrl) {
+ return null;
+ }
+
+ try {
+ return new HttpsProxyAgent(proxyUrl);
+ } catch (error) {
+ console.warn(
+ `[proxy] failed to configure agent for ${proxyUrl}: ${error.message}`,
+ );
+ return null;
+ }
+})();
+
+const rootDir = path.resolve(__dirname, '..');
+const formatterDataDir = path.join(rootDir, 'src', 'formatters', 'data');
+
+function ensureFormatterDataDir() {
+ fs.mkdirSync(formatterDataDir, { recursive: true });
+}
+
+function formatObjectLiteral(value, indent) {
+ const json = JSON.stringify(value ?? null, null, 2);
+ const lines = json.split('\n');
+
+ if (lines.length === 1) {
+ return lines[0];
+ }
+
+ const indentText = indent || ' ';
+ return lines
+ .map((line, index) => (index === 0 ? line : `${indentText}${line}`))
+ .join('\n');
+}
+
+function writeFormatterVoiceModule(fileName, exports) {
+ if (!exports || exports.length === 0) {
+ return;
+ }
+
+ ensureFormatterDataDir();
+ const filePath = path.join(formatterDataDir, fileName);
+ const lines = [
+ '// THIS FILE IS AUTO-GENERATED by scripts/update-voice-data.js.',
+ '// Do not edit this file manually.',
+ '',
+ ];
+
+ exports.forEach(({ exportName, map }) => {
+ lines.push(`export const ${exportName}: Record = {`);
+
+ const keys = Object.keys(map || {}).sort((a, b) =>
+ a.localeCompare(b, undefined, { sensitivity: 'base' }),
+ );
+
+ for (const key of keys) {
+ const value = map[key];
+ const formattedValue = formatObjectLiteral(value, ' ');
+ lines.push(` [${JSON.stringify(key)}]: ${formattedValue},`);
+ }
+
+ lines.push('};', '');
+ });
+
+ fs.writeFileSync(filePath, `${lines.join('\n')}\n`, 'utf8');
+ console.log(`[write] ${path.relative(rootDir, filePath)}`);
+}
+
+function fetchJson(url, { method = 'GET', headers = {}, body } = {}) {
+ const requestUrl = typeof url === 'string' ? new URL(url) : url;
+
+ return new Promise((resolve, reject) => {
+ const options = {
+ method,
+ hostname: requestUrl.hostname,
+ path: `${requestUrl.pathname}${requestUrl.search}`,
+ headers,
+ };
+
+ if (proxyAgent) {
+ options.agent = proxyAgent;
+ }
+
+ const req = https.request(options, (res) => {
+ const chunks = [];
+
+ res.on('data', (chunk) => chunks.push(chunk));
+ res.on('end', () => {
+ const buffer = Buffer.concat(chunks);
+ const text = buffer.toString('utf8');
+
+ if (res.statusCode && res.statusCode >= 200 && res.statusCode < 300) {
+ if (!text) {
+ resolve(null);
+ return;
+ }
+
+ try {
+ resolve(JSON.parse(text));
+ } catch (error) {
+ reject(
+ new Error(
+ `Failed to parse JSON from ${requestUrl.toString()}: ${
+ error.message
+ }`,
+ ),
+ );
+ }
+ } else {
+ reject(
+ new Error(
+ `HTTP ${res.statusCode} ${
+ res.statusMessage || ''
+ } when calling ${requestUrl.toString()}: ${text}`,
+ ),
+ );
+ }
+ });
+ });
+
+ req.on('error', reject);
+
+ if (body) {
+ req.write(body);
+ }
+
+ req.end();
+ });
+}
+
+function logSkip(service, reason) {
+ console.warn(`[skip] ${service}: ${reason}`);
+}
+
+function pickEnv(...keys) {
+ for (const key of keys) {
+ if (process.env[key]) {
+ return process.env[key];
+ }
+ }
+
+ return undefined;
+}
+
+async function updateAzureVoices() {
+ const key = pickEnv('AZURE_SPEECH_KEY', 'MICROSOFT_TOKEN');
+ const region = pickEnv('AZURE_SPEECH_REGION', 'MICROSOFT_REGION');
+
+ if (!key || !region) {
+ logSkip(
+ 'azure',
+ 'set AZURE_SPEECH_KEY/AZURE_SPEECH_REGION or MICROSOFT_TOKEN/MICROSOFT_REGION to refresh the catalogue',
+ );
+ return;
+ }
+
+ const url = `https://${region}.tts.speech.microsoft.com/cognitiveservices/voices/list`;
+ const headers = {
+ 'Ocp-Apim-Subscription-Key': key,
+ };
+
+ const data = await fetchJson(url, { headers });
+
+ if (!Array.isArray(data)) {
+ throw new Error('Unexpected Azure voice list response');
+ }
+
+ const voiceMap = {};
+
+ for (const voice of data) {
+ const name = (voice.ShortName || voice.Name || '').trim();
+
+ if (!name) {
+ continue;
+ }
+
+ voiceMap[name.toLowerCase()] = {
+ voice: {
+ name,
+ },
+ };
+ }
+
+ writeFormatterVoiceModule('microsoftAzureVoices.ts', [
+ {
+ exportName: 'MICROSOFT_AZURE_TTS_VOICES',
+ map: voiceMap,
+ },
+ ]);
+}
+
+async function updateGoogleVoices() {
+ const key = process.env.GOOGLE_TTS_API_KEY;
+
+ if (!key) {
+ logSkip('google', 'set GOOGLE_TTS_API_KEY to refresh the catalogue');
+ return;
+ }
+
+ const url = new URL('https://texttospeech.googleapis.com/v1/voices');
+ url.searchParams.set('key', key);
+
+ const data = await fetchJson(url);
+ const voices = data && Array.isArray(data.voices) ? data.voices : [];
+
+ if (!voices.length) {
+ logSkip('google', 'no voices returned from API');
+ return;
+ }
+
+ const voiceMap = {};
+
+ for (const voice of voices) {
+ const name = (voice.name || '').trim();
+
+ if (!name) {
+ continue;
+ }
+
+ voiceMap[name.toLowerCase()] = {
+ voice: {
+ name,
+ },
+ };
+ }
+
+ writeFormatterVoiceModule('googleCloudVoices.ts', [
+ {
+ exportName: 'GOOGLE_CLOUD_TTS_VOICES',
+ map: voiceMap,
+ },
+ ]);
+}
+
+async function updateWatsonVoices() {
+ const urlText = process.env.WATSON_TTS_URL;
+ const apiKey = process.env.WATSON_TTS_API_KEY;
+
+ if (!urlText || !apiKey) {
+ logSkip(
+ 'watson',
+ 'set WATSON_TTS_URL and WATSON_TTS_API_KEY to refresh the catalogue',
+ );
+ return;
+ }
+
+ const apiUrl = new URL(
+ urlText.endsWith('/') ? `${urlText}v1/voices` : `${urlText}/v1/voices`,
+ );
+ const headers = {
+ Authorization: `Basic ${Buffer.from(`apikey:${apiKey}`).toString(
+ 'base64',
+ )}`,
+ };
+
+ const data = await fetchJson(apiUrl, { headers });
+ const voices = data && Array.isArray(data.voices) ? data.voices : [];
+
+ if (!voices.length) {
+ logSkip('watson', 'no voices returned from API');
+ return;
+ }
+
+ const voiceMap = {};
+
+ for (const voice of voices) {
+ const name = (voice.name || '').trim();
+
+ if (!name) {
+ continue;
+ }
+
+ voiceMap[name.toLowerCase()] = {
+ voice: {
+ name,
+ },
+ };
+ }
+
+ writeFormatterVoiceModule('ibmWatsonVoices.ts', [
+ {
+ exportName: 'IBM_WATSON_TTS_VOICES',
+ map: voiceMap,
+ },
+ ]);
+}
+
+function fetchAwsJson({
+ service,
+ region,
+ path,
+ method = 'GET',
+ headers = {},
+ body,
+ credentials,
+}) {
+ const host = `${service}.${region}.amazonaws.com`;
+ const request = {
+ host,
+ path,
+ method,
+ service,
+ region,
+ headers: { ...headers },
+ };
+
+ if (body) {
+ request.body = body;
+ if (!request.headers['Content-Type']) {
+ request.headers['Content-Type'] = 'application/json';
+ }
+ }
+
+ aws4.sign(request, credentials);
+
+ return new Promise((resolve, reject) => {
+ const req = https.request(
+ {
+ method: request.method,
+ hostname: request.host,
+ path: request.path,
+ headers: request.headers,
+ agent: proxyAgent || undefined,
+ },
+ (res) => {
+ const chunks = [];
+
+ res.on('data', (chunk) => chunks.push(chunk));
+ res.on('end', () => {
+ const buffer = Buffer.concat(chunks);
+ const text = buffer.toString('utf8');
+
+ if (res.statusCode && res.statusCode >= 200 && res.statusCode < 300) {
+ if (!text) {
+ resolve(null);
+ return;
+ }
+
+ try {
+ resolve(JSON.parse(text));
+ } catch (error) {
+ reject(
+ new Error(
+ `Failed to parse JSON from https://${host}${path}: ${error.message}`,
+ ),
+ );
+ }
+ } else {
+ reject(
+ new Error(
+ `HTTP ${res.statusCode} ${
+ res.statusMessage || ''
+ } when calling https://${host}${path}: ${text}`,
+ ),
+ );
+ }
+ });
+ },
+ );
+
+ req.on('error', reject);
+
+ if (body) {
+ req.write(body);
+ }
+
+ req.end();
+ });
+}
+
+async function updatePollyVoices() {
+ const accessKeyId = pickEnv('AWS_ACCESS_KEY_ID', 'POLLY_AWS_KEY_ID');
+ const secretAccessKey = pickEnv(
+ 'AWS_SECRET_ACCESS_KEY',
+ 'POLLY_AWS_ACCESS_KEY',
+ );
+ const region = pickEnv('AWS_REGION', 'AWS_DEFAULT_REGION', 'POLLY_REGION');
+
+ if (!accessKeyId || !secretAccessKey || !region) {
+ logSkip(
+ 'amazon-polly',
+ 'set AWS_ACCESS_KEY_ID/AWS_SECRET_ACCESS_KEY/AWS_REGION (or AWS_DEFAULT_REGION) or the POLLY_* equivalents to refresh the catalogue',
+ );
+ return;
+ }
+
+ const credentials = {
+ accessKeyId,
+ secretAccessKey,
+ };
+
+ if (process.env.AWS_SESSION_TOKEN) {
+ credentials.sessionToken = process.env.AWS_SESSION_TOKEN;
+ }
+
+ const voices = [];
+ let nextToken = null;
+
+ do {
+ const params = new URLSearchParams({
+ IncludeAdditionalLanguageCodes: 'true',
+ });
+
+ if (nextToken) {
+ params.set('NextToken', nextToken);
+ }
+
+ const query = params.toString();
+ const path = query ? `/v1/voices?${query}` : '/v1/voices';
+
+ const data = await fetchAwsJson({
+ service: 'polly',
+ region,
+ path,
+ credentials,
+ });
+
+ const chunk = data && Array.isArray(data.Voices) ? data.Voices : [];
+
+ voices.push(...chunk);
+ nextToken = data && data.NextToken ? data.NextToken : null;
+ } while (nextToken);
+
+ if (!voices.length) {
+ logSkip('amazon-polly', 'no voices returned from API');
+ return;
+ }
+
+ const allVoices = {};
+ const standardVoices = {};
+ const neuralVoices = {};
+ const generativeVoices = {};
+
+ for (const voice of voices) {
+ const id = (voice.Id || '').trim();
+
+ if (!id) {
+ continue;
+ }
+
+ const key = id.toLowerCase();
+ const entry = {
+ voice: {
+ name: id,
+ },
+ };
+
+ allVoices[key] = entry;
+
+ const engines = Array.isArray(voice.SupportedEngines)
+ ? voice.SupportedEngines.map((engine) =>
+ String(engine || '').toLowerCase(),
+ )
+ : [];
+
+ if (engines.includes('standard')) {
+ standardVoices[key] = entry;
+ }
+
+ if (engines.includes('neural')) {
+ neuralVoices[key] = entry;
+ }
+
+ if (engines.includes('generative')) {
+ generativeVoices[key] = entry;
+ }
+ }
+
+ writeFormatterVoiceModule('amazonPollyVoices.ts', [
+ {
+ exportName: 'AMAZON_POLLY_ALL_VOICES',
+ map: allVoices,
+ },
+ {
+ exportName: 'AMAZON_POLLY_STANDARD_VOICES',
+ map: standardVoices,
+ },
+ {
+ exportName: 'AMAZON_POLLY_NEURAL_VOICES',
+ map: neuralVoices,
+ },
+ {
+ exportName: 'AMAZON_POLLY_GENERATIVE_VOICES',
+ map: generativeVoices,
+ },
+ ]);
+}
+
+(async () => {
+ try {
+ await Promise.all([
+ updateAzureVoices(),
+ updateGoogleVoices(),
+ updatePollyVoices(),
+ updateWatsonVoices(),
+ ]);
+ } catch (error) {
+ console.error(error.message || error);
+ process.exitCode = 1;
+ }
+})();
diff --git a/src/SpeechMarkdownGrammar.ts b/src/SpeechMarkdownGrammar.ts
index c022daf..75bec7c 100644
--- a/src/SpeechMarkdownGrammar.ts
+++ b/src/SpeechMarkdownGrammar.ts
@@ -11,7 +11,7 @@ export function speechMarkdownGrammar(myna: any): any {
// tslint:disable-next-line: typedef
// tslint:disable-next-line: max-func-body-length
- const g: any = new (function() {
+ const g: any = new (function () {
// // Allows the "inline" to be referenced before it is defined.
// // This enables recursive definitions.
// this.inlineDelayed = m.delay(() => this.inline);
@@ -24,7 +24,7 @@ export function speechMarkdownGrammar(myna: any): any {
// Plain text
const specialCharSet = '[]()';
- const specialCharSetEmphasis = '[]()*~`@#\\_!+-';
+ const specialCharSetEmphasis = '[]()*~`@#\\_!+-/';
const ws = m.char(' \t').oneOrMore;
const optWs = ws.opt;
const wsOrNewLine = ws.or(m.newLine);
@@ -86,6 +86,7 @@ export function speechMarkdownGrammar(myna: any): any {
this.number = m.seq(m.integer, this.fraction.opt).ast;
this.time = m.seq(this.number, this.timeUnit).ast;
this.shortBreak = m.seq('[', this.time, ']').ast;
+
// this.break = m.seq('[break:', this.time , ']').ast;
// this.string = m.doubleQuoted(this.quoteChar.zeroOrMore).ast;
@@ -207,6 +208,32 @@ export function speechMarkdownGrammar(myna: any): any {
'ɹ',
];
+ this.shortIpaValue = m.choice(
+ m.digit,
+ m.letter,
+ m.hyphen,
+ m.space,
+ ...ipaChars,
+ "'",
+ '.',
+ ':',
+ ).oneOrMore.ast;
+ this.shortIpa = m.seq(
+ m.parenthesized(this.plainTextModifier),
+ '/',
+ this.shortIpaValue,
+ '/',
+ ).ast;
+
+ this.shortSubValue = m.notChar('}').unless(m.newLine).oneOrMore.ast;
+ this.shortSub = m.seq(
+ m.parenthesized(this.plainTextModifier),
+ '{',
+ this.shortSubValue,
+ '}',
+ ).ast;
+ this.bareIpa = m.seq('/', this.shortIpaValue, '/').ast;
+
const percentChange = ['+', m.hyphen, m.digit, '%'];
this.textModifierText = m.choice(
@@ -332,6 +359,9 @@ export function speechMarkdownGrammar(myna: any): any {
this.any = m.advance;
this.inline = m
.choice(
+ this.bareIpa,
+ this.shortIpa,
+ this.shortSub,
this.textModifier,
this.emphasis,
this.shortBreak,
diff --git a/src/formatters/AmazonAlexaSsmlFormatter.ts b/src/formatters/AmazonAlexaSsmlFormatter.ts
index 35db6bc..f9c6704 100644
--- a/src/formatters/AmazonAlexaSsmlFormatter.ts
+++ b/src/formatters/AmazonAlexaSsmlFormatter.ts
@@ -1,36 +1,9 @@
import { SpeechOptions } from '../SpeechOptions';
import { SsmlFormatterBase, TagsObject } from './SsmlFormatterBase';
+import { AMAZON_POLLY_ALL_VOICES } from './data/amazonPollyVoices';
export class AmazonAlexaSsmlFormatter extends SsmlFormatterBase {
- public validVoices: Record = {
- Ivy: 'en-US',
- Joanna: 'en-US',
- Joey: 'en-US',
- Justin: 'en-US',
- Kendra: 'en-US',
- Kimberly: 'en-US',
- Matthew: 'en-US',
- Salli: 'en-US',
- Nicole: 'en-AU',
- Russell: 'en-AU',
- Amy: 'en-GB',
- Brian: 'en-GB',
- Emma: 'en-GB',
- Aditi: 'en-IN',
- Raveena: 'en-IN',
- Hans: 'de-DE',
- Marlene: 'de-DE',
- Vicki: 'de-DE',
- Conchita: 'es-ES',
- Enrique: 'es-ES',
- Carla: 'it-IT',
- Giorgio: 'it-IT',
- Mizuki: 'ja-JP',
- Takumi: 'ja-JP',
- Celine: 'fr-FR',
- Lea: 'fr-FR',
- Mathieu: 'fr-FR',
- };
+ public validVoices: Record = AMAZON_POLLY_ALL_VOICES;
private validEmotionIntensity: string[] = ['low', 'medium', 'high'];
@@ -46,6 +19,14 @@ export class AmazonAlexaSsmlFormatter extends SsmlFormatterBase {
this.modifierKeyToSsmlTagMappings.disappointed = 'amazon:emotion';
}
+ public getVoiceTagFallback(name: string): Record | null {
+ if (name.toLowerCase() === 'device') {
+ return null;
+ }
+
+ return { name };
+ }
+
// tslint:disable-next-line: max-func-body-length
private getTextModifierObject(ast: any): any {
let textModifierObject = new TagsObject(this);
@@ -275,22 +256,19 @@ export class AmazonAlexaSsmlFormatter extends SsmlFormatterBase {
}
case 'textModifier': {
const tmo = this.getTextModifierObject(ast);
-
- const tagsSortedDesc = Object.keys(tmo.tags).sort((a: any, b: any) => {
- return tmo.tags[b].sortId - tmo.tags[a].sortId;
- });
-
- let inner = tmo.text;
-
- for (let index = 0; index < tagsSortedDesc.length; index++) {
- const tag = tagsSortedDesc[index];
- const attrs = tmo.tags[tag].attrs;
-
- inner = this.getTagWithAttrs(inner, tag, attrs);
- }
- lines.push(inner);
-
- return lines;
+ return this.applyTagsObject(tmo, lines);
+ }
+ case 'shortIpa': {
+ const tmo = this.getShortIpaObject(ast);
+ return this.applyTagsObject(tmo, lines);
+ }
+ case 'bareIpa': {
+ const tmo = this.getShortIpaObject(ast, 'ipa');
+ return this.applyTagsObject(tmo, lines);
+ }
+ case 'shortSub': {
+ const tmo = this.getShortSubObject(ast);
+ return this.applyTagsObject(tmo, lines);
}
case 'section': {
const so = this.getSectionObject(ast);
diff --git a/src/formatters/AmazonPollyNeuralSsmlFormatter.ts b/src/formatters/AmazonPollyNeuralSsmlFormatter.ts
index 940cb15..3fa6b20 100644
--- a/src/formatters/AmazonPollyNeuralSsmlFormatter.ts
+++ b/src/formatters/AmazonPollyNeuralSsmlFormatter.ts
@@ -1,7 +1,10 @@
import { SpeechOptions } from '../SpeechOptions';
import { SsmlFormatterBase, TagsObject } from './SsmlFormatterBase';
+import { AMAZON_POLLY_NEURAL_VOICES } from './data/amazonPollyVoices';
export class AmazonPollyNeuralSsmlFormatter extends SsmlFormatterBase {
+ public validVoices: Record = AMAZON_POLLY_NEURAL_VOICES;
+
constructor(public options: SpeechOptions) {
super(options);
@@ -95,11 +98,14 @@ export class AmazonPollyNeuralSsmlFormatter extends SsmlFormatterBase {
case 'disappointed':
case 'emphasis':
case 'interjection':
- case 'voice':
case 'whisper': {
break;
}
+ case 'voice':
+ textModifierObject.voiceTag(key, value);
+ break;
+
default: {
}
}
@@ -138,6 +144,8 @@ export class AmazonPollyNeuralSsmlFormatter extends SsmlFormatterBase {
}
case 'voice':
+ sectionObject.voiceTag(key, value);
+ break;
case 'dj':
case 'excited':
case 'disappointed': {
@@ -203,22 +211,19 @@ export class AmazonPollyNeuralSsmlFormatter extends SsmlFormatterBase {
}
case 'textModifier': {
const tmo = this.getTextModifierObject(ast);
-
- const tagsSortedDesc = Object.keys(tmo.tags).sort((a: any, b: any) => {
- return tmo.tags[b].sortId - tmo.tags[a].sortId;
- });
-
- let inner = tmo.text;
-
- for (let index = 0; index < tagsSortedDesc.length; index++) {
- const tag = tagsSortedDesc[index];
- const attrs = tmo.tags[tag].attrs;
-
- inner = this.getTagWithAttrs(inner, tag, attrs);
- }
- lines.push(inner);
-
- return lines;
+ return this.applyTagsObject(tmo, lines);
+ }
+ case 'shortIpa': {
+ const tmo = this.getShortIpaObject(ast);
+ return this.applyTagsObject(tmo, lines);
+ }
+ case 'bareIpa': {
+ const tmo = this.getShortIpaObject(ast, 'ipa');
+ return this.applyTagsObject(tmo, lines);
+ }
+ case 'shortSub': {
+ const tmo = this.getShortSubObject(ast);
+ return this.applyTagsObject(tmo, lines);
}
case 'section': {
const so = this.getSectionObject(ast);
diff --git a/src/formatters/AmazonPollySsmlFormatter.ts b/src/formatters/AmazonPollySsmlFormatter.ts
index aa160f4..db3f3f6 100644
--- a/src/formatters/AmazonPollySsmlFormatter.ts
+++ b/src/formatters/AmazonPollySsmlFormatter.ts
@@ -1,7 +1,10 @@
import { SpeechOptions } from '../SpeechOptions';
import { SsmlFormatterBase, TagsObject } from './SsmlFormatterBase';
+import { AMAZON_POLLY_STANDARD_VOICES } from './data/amazonPollyVoices';
export class AmazonPollySsmlFormatter extends SsmlFormatterBase {
+ public validVoices: Record = AMAZON_POLLY_STANDARD_VOICES;
+
constructor(public options: SpeechOptions) {
super(options);
@@ -105,6 +108,8 @@ export class AmazonPollySsmlFormatter extends SsmlFormatterBase {
break;
case 'voice':
+ textModifierObject.voiceTag(key, value);
+ break;
case 'excited':
case 'disappointed': {
break;
@@ -144,6 +149,8 @@ export class AmazonPollySsmlFormatter extends SsmlFormatterBase {
}
case 'voice':
+ sectionObject.voiceTag(key, value);
+ break;
case 'dj':
case 'newscaster':
case 'excited':
@@ -231,22 +238,19 @@ export class AmazonPollySsmlFormatter extends SsmlFormatterBase {
}
case 'textModifier': {
const tmo = this.getTextModifierObject(ast);
-
- const tagsSortedDesc = Object.keys(tmo.tags).sort((a: any, b: any) => {
- return tmo.tags[b].sortId - tmo.tags[a].sortId;
- });
-
- let inner = tmo.text;
-
- for (let index = 0; index < tagsSortedDesc.length; index++) {
- const tag = tagsSortedDesc[index];
- const attrs = tmo.tags[tag].attrs;
-
- inner = this.getTagWithAttrs(inner, tag, attrs);
- }
- lines.push(inner);
-
- return lines;
+ return this.applyTagsObject(tmo, lines);
+ }
+ case 'shortIpa': {
+ const tmo = this.getShortIpaObject(ast);
+ return this.applyTagsObject(tmo, lines);
+ }
+ case 'bareIpa': {
+ const tmo = this.getShortIpaObject(ast, 'ipa');
+ return this.applyTagsObject(tmo, lines);
+ }
+ case 'shortSub': {
+ const tmo = this.getShortSubObject(ast);
+ return this.applyTagsObject(tmo, lines);
}
case 'section': {
const so = this.getSectionObject(ast);
diff --git a/src/formatters/AppleAvSpeechSynthesizerSsmlFormatter.ts b/src/formatters/AppleAvSpeechSynthesizerSsmlFormatter.ts
new file mode 100644
index 0000000..41d72f6
--- /dev/null
+++ b/src/formatters/AppleAvSpeechSynthesizerSsmlFormatter.ts
@@ -0,0 +1,12 @@
+import { SpeechOptions } from '../SpeechOptions';
+import { W3cSsmlFormatter } from './W3cSsmlFormatter';
+
+export class AppleAvSpeechSynthesizerSsmlFormatter extends W3cSsmlFormatter {
+ constructor(public options: SpeechOptions) {
+ super(options);
+ }
+
+ protected getFormatterComment(): string | null {
+ return 'Converted from Speech Markdown to SSML for Apple AVSpeechSynthesizer';
+ }
+}
diff --git a/src/formatters/ElevenLabsFormatter.ts b/src/formatters/ElevenLabsFormatter.ts
new file mode 100644
index 0000000..5b0181d
--- /dev/null
+++ b/src/formatters/ElevenLabsFormatter.ts
@@ -0,0 +1,178 @@
+import { SpeechOptions } from '../SpeechOptions';
+import { SsmlFormatterBase, TagsObject } from './SsmlFormatterBase';
+
+const BREAK_STRENGTH_TO_DURATION: Record = {
+ none: '0s',
+ 'x-weak': '0.2s',
+ weak: '0.35s',
+ medium: '0.5s',
+ strong: '0.8s',
+ 'x-strong': '1.2s',
+};
+
+export class ElevenLabsFormatter extends SsmlFormatterBase {
+ constructor(public options: SpeechOptions) {
+ super(options);
+
+ this.modifierKeyToSsmlTagMappings.emphasis = null;
+ this.modifierKeyToSsmlTagMappings.address = null;
+ this.modifierKeyToSsmlTagMappings.number = null;
+ this.modifierKeyToSsmlTagMappings.characters = null;
+ this.modifierKeyToSsmlTagMappings.expletive = null;
+ this.modifierKeyToSsmlTagMappings.fraction = null;
+ this.modifierKeyToSsmlTagMappings.interjection = null;
+ this.modifierKeyToSsmlTagMappings.ordinal = null;
+ this.modifierKeyToSsmlTagMappings.telephone = null;
+ this.modifierKeyToSsmlTagMappings.unit = null;
+ this.modifierKeyToSsmlTagMappings.time = null;
+ this.modifierKeyToSsmlTagMappings.date = null;
+ this.modifierKeyToSsmlTagMappings.whisper = null;
+ this.modifierKeyToSsmlTagMappings.sub = null;
+ this.modifierKeyToSsmlTagMappings.rate = null;
+ this.modifierKeyToSsmlTagMappings.pitch = null;
+ this.modifierKeyToSsmlTagMappings.volume = null;
+ this.modifierKeyToSsmlTagMappings.drc = null;
+ this.modifierKeyToSsmlTagMappings.timbre = null;
+ this.modifierKeyToSsmlTagMappings.lang = null;
+ this.modifierKeyToSsmlTagMappings.voice = null;
+ this.modifierKeyToSsmlTagMappings.dj = null;
+ this.modifierKeyToSsmlTagMappings.defaults = null;
+ this.modifierKeyToSsmlTagMappings.newscaster = null;
+ this.modifierKeyToSsmlTagMappings.excited = null;
+ this.modifierKeyToSsmlTagMappings.disappointed = null;
+
+ this.ssmlTagSortOrder = ['phoneme'];
+ }
+
+ private mapStrengthToTime(strength: string): string {
+ const normalized = (strength || '').toLowerCase();
+ return (
+ BREAK_STRENGTH_TO_DURATION[normalized] ||
+ BREAK_STRENGTH_TO_DURATION['medium']
+ );
+ }
+
+ private getTextModifierObject(ast: any): TagsObject {
+ const textModifierObject = new TagsObject(this);
+
+ for (let index = 0; index < ast.children.length; index++) {
+ const child = ast.children[index];
+
+ switch (child.name) {
+ case 'plainText':
+ case 'plainTextSpecialChars':
+ case 'plainTextEmphasis':
+ case 'plainTextPhone':
+ case 'plainTextModifier':
+ textModifierObject['text'] = child.allText;
+ break;
+ case 'textModifierKeyOptionalValue': {
+ let key = child.children[0].allText;
+ key = this.modifierKeyMappings[key] || key;
+ const value =
+ child.children.length === 2 ? child.children[1].allText : '';
+ const tag = this.modifierKeyToSsmlTagMappings[key];
+
+ if (!tag) {
+ break;
+ }
+
+ switch (key) {
+ case 'ipa':
+ if (value) {
+ textModifierObject.tag(tag, { alphabet: key, ph: value });
+ }
+ break;
+ default:
+ break;
+ }
+ break;
+ }
+ }
+ }
+
+ return textModifierObject;
+ }
+
+ protected formatFromAst(ast: any, lines: string[] = []): string[] {
+ switch (ast.name) {
+ case 'document': {
+ if (this.options.includeFormatterComment) {
+ this.addComment(
+ 'Converted from Speech Markdown to ElevenLabs prompt markup',
+ lines,
+ );
+ }
+
+ this.processAst(ast.children, lines);
+ return lines;
+ }
+ case 'paragraph':
+ case 'simpleLine': {
+ this.processAst(ast.children, lines);
+ return lines;
+ }
+ case 'shortBreak': {
+ const time = ast.children[0].allText;
+ return this.addTagWithAttrs(lines, null, 'break', { time: time });
+ }
+ case 'break': {
+ const val = ast.children[0].allText;
+ let time = val;
+ const nodeType = ast.children[0].children[0].name;
+
+ if (nodeType === 'breakStrengthValue') {
+ time = this.mapStrengthToTime(val);
+ }
+
+ return this.addTagWithAttrs(lines, null, 'break', { time: time });
+ }
+ case 'textModifier': {
+ const tmo = this.getTextModifierObject(ast);
+ const tagsSortedDesc = Object.keys(tmo.tags).sort((a: any, b: any) => {
+ return tmo.tags[b].sortId - tmo.tags[a].sortId;
+ });
+
+ let inner = tmo.text;
+
+ for (let index = 0; index < tagsSortedDesc.length; index++) {
+ const tag = tagsSortedDesc[index];
+ const attrs = tmo.tags[tag].attrs;
+
+ inner = this.getTagWithAttrs(inner, tag, attrs);
+ }
+
+ if (inner) {
+ lines.push(inner);
+ }
+
+ return lines;
+ }
+ case 'lineEnd': {
+ lines.push(ast.allText);
+ return lines;
+ }
+ case 'emptyLine': {
+ if (this.options.preserveEmptyLines) {
+ lines.push(ast.allText);
+ }
+ return lines;
+ }
+ case 'plainText':
+ case 'plainTextSpecialChars':
+ case 'plainTextEmphasis':
+ case 'plainTextPhone':
+ case 'plainTextModifier': {
+ const text = this.options.escapeXmlSymbols
+ ? this.escapeXmlCharacters(ast.allText)
+ : ast.allText;
+ lines.push(text);
+ return lines;
+ }
+ default: {
+ this.processAst(ast.children, lines);
+ return lines;
+ }
+ }
+ }
+}
diff --git a/src/formatters/FormatterFactory.ts b/src/formatters/FormatterFactory.ts
index ea13857..5af92d4 100644
--- a/src/formatters/FormatterFactory.ts
+++ b/src/formatters/FormatterFactory.ts
@@ -7,6 +7,11 @@ import { AmazonPollyNeuralSsmlFormatter } from './AmazonPollyNeuralSsmlFormatter
import { GoogleAssistantSsmlFormatter } from './GoogleAssistantSsmlFormatter';
import { SamsungBixbySsmlFormatter } from './SamsungBixbySsmlFormatter';
import { MicrosoftAzureSsmlFormatter } from './MicrosoftAzureSsmlFormatter';
+import { MicrosoftSapiSsmlFormatter } from './MicrosoftSapiSsmlFormatter';
+import { AppleAvSpeechSynthesizerSsmlFormatter } from './AppleAvSpeechSynthesizerSsmlFormatter';
+import { IbmWatsonSsmlFormatter } from './IbmWatsonSsmlFormatter';
+import { ElevenLabsFormatter } from './ElevenLabsFormatter';
+import { W3cSsmlFormatter } from './W3cSsmlFormatter';
export function createFormatter(options: SpeechOptions): Formatter {
switch (options.platform) {
@@ -22,6 +27,16 @@ export function createFormatter(options: SpeechOptions): Formatter {
return new SamsungBixbySsmlFormatter(options);
case 'microsoft-azure':
return new MicrosoftAzureSsmlFormatter(options);
+ case 'microsoft-sapi':
+ return new MicrosoftSapiSsmlFormatter(options);
+ case 'w3c':
+ return new W3cSsmlFormatter(options);
+ case 'apple-avspeechsynthesizer':
+ return new AppleAvSpeechSynthesizerSsmlFormatter(options);
+ case 'ibm-watson':
+ return new IbmWatsonSsmlFormatter(options);
+ case 'elevenlabs':
+ return new ElevenLabsFormatter(options);
default:
return new TextFormatter(options);
}
diff --git a/src/formatters/GoogleAssistantSsmlFormatter.ts b/src/formatters/GoogleAssistantSsmlFormatter.ts
index f113da5..fb4ff6f 100644
--- a/src/formatters/GoogleAssistantSsmlFormatter.ts
+++ b/src/formatters/GoogleAssistantSsmlFormatter.ts
@@ -1,36 +1,9 @@
import { SpeechOptions } from '../SpeechOptions';
import { SsmlFormatterBase, TagsObject } from './SsmlFormatterBase';
+import { GOOGLE_CLOUD_TTS_VOICES } from './data/googleCloudVoices';
export class GoogleAssistantSsmlFormatter extends SsmlFormatterBase {
- public validVoices: Record = {
- Ivy: { voice: { gender: 'female', variant: 1, language: 'en-US' } },
- Joanna: { voice: { gender: 'female', variant: 2, language: 'en-US' } },
- Joey: { voice: { gender: 'male', variant: 1, language: 'en-US' } },
- Justin: { voice: { gender: 'male', variant: 2, language: 'en-US' } },
- Kendra: { voice: { gender: 'female', variant: 3, language: 'en-US' } },
- Kimberly: { voice: { gender: 'female', variant: 4, language: 'en-US' } },
- Matthew: { voice: { gender: 'male', variant: 3, language: 'en-US' } },
- Salli: { voice: { gender: 'male', variant: 4, language: 'en-US' } },
- Nicole: { voice: { gender: 'female', variant: 1, language: 'en-AU' } },
- Russell: { voice: { gender: 'male', variant: 1, language: 'en-AU' } },
- Amy: { voice: { gender: 'female', variant: 1, language: 'en-GB' } },
- Brian: { voice: { gender: 'male', variant: 1, language: 'en-GB' } },
- Emma: { voice: { gender: 'female', variant: 2, language: 'en-GB' } },
- Aditi: { voice: { gender: 'female', variant: 1, language: 'en-IN' } },
- Raveena: { voice: { gender: 'female', variant: 2, language: 'en-IN' } },
- Hans: { voice: { gender: 'male', variant: 1, language: 'de-DE' } },
- Marlene: { voice: { gender: 'female', variant: 1, language: 'de-DE' } },
- Vicki: { voice: { gender: 'female', variant: 2, language: 'de-DE' } },
- Conchita: { voice: { gender: 'female', variant: 1, language: 'es-ES' } },
- Enrique: { voice: { gender: 'male', variant: 1, language: 'es-ES' } },
- Carla: { voice: { gender: 'female', variant: 1, language: 'it-IT' } },
- Giorgio: { voice: { gender: 'male', variant: 1, language: 'it-IT' } },
- Mizuki: { voice: { gender: 'female', variant: 1, language: 'ja-JP' } },
- Takumi: { voice: { gender: 'male', variant: 1, language: 'ja-JP' } },
- Celine: { voice: { gender: 'female', variant: 1, language: 'fr-FR' } },
- Lea: { voice: { gender: 'female', variant: 2, language: 'fr-FR' } },
- Mathieu: { voice: { gender: 'male', variant: 1, language: 'fr-FR' } },
- };
+ public validVoices: Record = GOOGLE_CLOUD_TTS_VOICES;
constructor(public options: SpeechOptions) {
super(options);
@@ -250,21 +223,19 @@ export class GoogleAssistantSsmlFormatter extends SsmlFormatterBase {
return lines;
}
- const tagsSortedDesc = Object.keys(tmo.tags).sort((a: any, b: any) => {
- return tmo.tags[b].sortId - tmo.tags[a].sortId;
- });
-
- let inner = tmo.text;
-
- for (let index = 0; index < tagsSortedDesc.length; index++) {
- const tag = tagsSortedDesc[index];
- const attrs = tmo.tags[tag].attrs;
-
- inner = this.getTagWithAttrs(inner, tag, attrs);
- }
- lines.push(inner);
-
- return lines;
+ return this.applyTagsObject(tmo, lines);
+ }
+ case 'shortIpa': {
+ const tmo = this.getShortIpaObject(ast);
+ return this.applyTagsObject(tmo, lines);
+ }
+ case 'bareIpa': {
+ const tmo = this.getShortIpaObject(ast, 'ipa');
+ return this.applyTagsObject(tmo, lines);
+ }
+ case 'shortSub': {
+ const tmo = this.getShortSubObject(ast);
+ return this.applyTagsObject(tmo, lines);
}
case 'section': {
const so = this.getSectionObject(ast);
diff --git a/src/formatters/IbmWatsonSsmlFormatter.ts b/src/formatters/IbmWatsonSsmlFormatter.ts
new file mode 100644
index 0000000..a850292
--- /dev/null
+++ b/src/formatters/IbmWatsonSsmlFormatter.ts
@@ -0,0 +1,311 @@
+import { SpeechOptions } from '../SpeechOptions';
+import { IBM_WATSON_TTS_VOICES } from './data/ibmWatsonVoices';
+import { SsmlFormatterBase, TagsObject } from './SsmlFormatterBase';
+
+export class IbmWatsonSsmlFormatter extends SsmlFormatterBase {
+ public validVoices: Record = IBM_WATSON_TTS_VOICES;
+
+ constructor(public options: SpeechOptions) {
+ super(options);
+
+ this.modifierKeyToSsmlTagMappings.emphasis = 'emphasis';
+ this.modifierKeyToSsmlTagMappings.address = 'say-as';
+ this.modifierKeyToSsmlTagMappings.number = 'say-as';
+ this.modifierKeyToSsmlTagMappings.characters = 'say-as';
+ this.modifierKeyToSsmlTagMappings.expletive = null;
+ this.modifierKeyToSsmlTagMappings.fraction = 'say-as';
+ this.modifierKeyToSsmlTagMappings.interjection = null;
+ this.modifierKeyToSsmlTagMappings.ordinal = 'say-as';
+ this.modifierKeyToSsmlTagMappings.telephone = 'say-as';
+ this.modifierKeyToSsmlTagMappings.unit = 'say-as';
+ this.modifierKeyToSsmlTagMappings.time = 'say-as';
+ this.modifierKeyToSsmlTagMappings.date = 'say-as';
+ this.modifierKeyToSsmlTagMappings.sub = 'sub';
+ this.modifierKeyToSsmlTagMappings.ipa = 'phoneme';
+ this.modifierKeyToSsmlTagMappings.rate = 'prosody';
+ this.modifierKeyToSsmlTagMappings.pitch = 'prosody';
+ this.modifierKeyToSsmlTagMappings.volume = 'prosody';
+ this.modifierKeyToSsmlTagMappings.whisper = null;
+ this.modifierKeyToSsmlTagMappings.voice = 'voice';
+ this.modifierKeyToSsmlTagMappings.newscaster = null;
+ this.modifierKeyToSsmlTagMappings.excited = null;
+ this.modifierKeyToSsmlTagMappings.disappointed = null;
+
+ this.ssmlTagSortOrder = [
+ 'emphasis',
+ 'say-as',
+ 'prosody',
+ 'voice',
+ 'lang',
+ 'sub',
+ 'phoneme',
+ ];
+ }
+
+ // tslint:disable-next-line: max-func-body-length
+ private getTextModifierObject(ast: any): any {
+ let textModifierObject = new TagsObject(this);
+
+ for (let index = 0; index < ast.children.length; index++) {
+ const child = ast.children[index];
+
+ switch (child.name) {
+ case 'plainText':
+ case 'plainTextSpecialChars':
+ case 'plainTextEmphasis':
+ case 'plainTextPhone':
+ case 'plainTextModifier': {
+ textModifierObject['text'] = child.allText;
+ break;
+ }
+ case 'textModifierKeyOptionalValue': {
+ let key = child.children[0].allText;
+ key = this.modifierKeyMappings[key] || key;
+ const value =
+ child.children.length === 2 ? child.children[1].allText : '';
+ const ssmlTag = this.modifierKeyToSsmlTagMappings[key];
+
+ if (!ssmlTag) {
+ break;
+ }
+
+ switch (key) {
+ case 'emphasis':
+ textModifierObject.tag(ssmlTag, { level: value || 'moderate' });
+ break;
+ case 'address':
+ case 'fraction':
+ case 'ordinal':
+ case 'telephone':
+ case 'unit':
+ textModifierObject.tag(ssmlTag, { 'interpret-as': key });
+ break;
+
+ case 'number':
+ textModifierObject.tag(ssmlTag, { 'interpret-as': 'cardinal' });
+ break;
+
+ case 'characters': {
+ let attrValue = 'digits';
+ if (isNaN(textModifierObject.text as any)) {
+ attrValue = 'characters';
+ }
+
+ textModifierObject.tag(ssmlTag, { 'interpret-as': attrValue });
+ break;
+ }
+
+ case 'date':
+ textModifierObject.tag(ssmlTag, {
+ 'interpret-as': key,
+ format: value || 'ymd',
+ });
+ break;
+
+ case 'time':
+ textModifierObject.tag(ssmlTag, {
+ 'interpret-as': key,
+ format: value || 'hms12',
+ });
+ break;
+
+ case 'ipa':
+ textModifierObject.tag(ssmlTag, { alphabet: key, ph: value });
+ break;
+
+ case 'sub':
+ textModifierObject.tag(ssmlTag, { alias: value });
+ break;
+
+ case 'volume':
+ case 'rate':
+ case 'pitch': {
+ const attrs = {};
+ attrs[key] = value || 'medium';
+ textModifierObject.tag(ssmlTag, attrs, true);
+ break;
+ }
+
+ case 'voice': {
+ const name = this.sentenceCase(value || 'device');
+
+ // TODO: valid voices list may not be useful when there're custom voices.
+ // TODO: convert to use the TagsObject.voiceTagNamed()
+ if (name != 'Device') {
+ textModifierObject.tag(ssmlTag, { name: name });
+ }
+ break;
+ }
+
+ default: {
+ }
+ }
+ break;
+ }
+ }
+ }
+
+ return textModifierObject;
+ }
+
+ // tslint:disable-next-line: max-func-body-length
+ private getSectionObject(ast: any): any {
+ let sectionObject = new TagsObject(this);
+
+ for (let index = 0; index < ast.children.length; index++) {
+ const child = ast.children[index];
+
+ if (child.name === 'sectionModifierKeyOptionalValue') {
+ let key = child.children[0].allText;
+ const value =
+ child.children.length === 2 ? child.children[1].allText : '';
+ const ssmlTag = this.modifierKeyToSsmlTagMappings[key];
+
+ if (!ssmlTag) {
+ continue;
+ }
+
+ switch (key) {
+ case 'voice': {
+ const name = this.sentenceCase(value || 'device');
+
+ if (name != 'Device') {
+ sectionObject.tag(ssmlTag, { name: name });
+ }
+ break;
+ }
+
+ default: {
+ }
+ }
+ }
+ }
+
+ return sectionObject;
+ }
+
+ // tslint:disable-next-line: max-func-body-length
+ protected formatFromAst(ast: any, lines: string[] = []): string[] {
+ switch (ast.name) {
+ case 'document': {
+ if (this.options.includeFormatterComment) {
+ this.addComment(
+ 'Converted from Speech Markdown to SSML for IBM Watson Text to Speech',
+ lines,
+ );
+ }
+
+ if (this.options.includeSpeakTag) {
+ return this.addSpeakTag(ast.children, true, false, null, lines);
+ } else {
+ this.processAst(ast.children, lines);
+ return lines;
+ }
+ }
+ case 'paragraph': {
+ if (this.options.includeParagraphTag) {
+ return this.addTag('p', ast.children, true, false, null, lines);
+ } else {
+ this.processAst(ast.children, lines);
+ return lines;
+ }
+ }
+ case 'shortBreak': {
+ const time = ast.children[0].allText;
+ return this.addTagWithAttrs(lines, null, 'break', { time: time });
+ }
+ case 'break': {
+ const val = ast.children[0].allText;
+ let attrs = {};
+ switch (ast.children[0].children[0].name) {
+ case 'breakStrengthValue':
+ attrs = { strength: val };
+ break;
+ case 'time':
+ attrs = { time: val };
+ break;
+ }
+ return this.addTagWithAttrs(lines, null, 'break', attrs);
+ }
+ case 'shortEmphasisModerate':
+ case 'shortEmphasisStrong':
+ case 'shortEmphasisNone':
+ case 'shortEmphasisReduced': {
+ const text = ast.children[0].allText;
+ if (text) {
+ lines.push(text);
+ }
+ return lines;
+ }
+
+ case 'textModifier': {
+ const tmo = this.getTextModifierObject(ast);
+ return this.applyTagsObject(tmo, lines);
+ }
+ case 'shortIpa': {
+ const tmo = this.getShortIpaObject(ast);
+ return this.applyTagsObject(tmo, lines);
+ }
+ case 'bareIpa': {
+ const tmo = this.getShortIpaObject(ast, 'ipa');
+ return this.applyTagsObject(tmo, lines);
+ }
+ case 'shortSub': {
+ const tmo = this.getShortSubObject(ast);
+ return this.applyTagsObject(tmo, lines);
+ }
+
+ case 'audio': {
+ // Ignore the caption.
+ const index = ast.children.length === 2 ? 1 : 0;
+ const url = ast.children[index].allText.replace(/&/g, '&');
+ return this.addTagWithAttrs(lines, null, 'audio', { src: url }, false);
+ }
+ case 'simpleLine': {
+ this.processAst(ast.children, lines);
+ return lines;
+ }
+ case 'lineEnd': {
+ lines.push(ast.allText);
+ return lines;
+ }
+ case 'emptyLine': {
+ if (this.options.preserveEmptyLines) {
+ lines.push(ast.allText);
+ }
+
+ return lines;
+ }
+
+ case 'plainText':
+ case 'plainTextSpecialChars':
+ case 'plainTextEmphasis':
+ case 'plainTextPhone':
+ case 'plainTextModifier': {
+ let text = this.options.escapeXmlSymbols
+ ? this.escapeXmlCharacters(ast.allText)
+ : ast.allText;
+ lines.push(text);
+ return lines;
+ }
+
+ case 'section': {
+ const so = this.getSectionObject(ast);
+
+ const tagsSortedAsc = Object.keys(so.tags).sort((a: any, b: any) => {
+ return so.tags[a].sortId - so.tags[b].sortId;
+ });
+
+ this.addSectionEndTag(lines);
+ this.addSectionStartTag(tagsSortedAsc, so, lines);
+
+ return lines;
+ }
+
+ default: {
+ this.processAst(ast.children, lines);
+ return lines;
+ }
+ }
+ }
+}
diff --git a/src/formatters/MicrosoftAzureSsmlFormatter.ts b/src/formatters/MicrosoftAzureSsmlFormatter.ts
index 612a11d..1c099be 100644
--- a/src/formatters/MicrosoftAzureSsmlFormatter.ts
+++ b/src/formatters/MicrosoftAzureSsmlFormatter.ts
@@ -1,7 +1,10 @@
import { SpeechOptions } from '../SpeechOptions';
+import { MICROSOFT_AZURE_TTS_VOICES } from './data/microsoftAzureVoices';
import { SsmlFormatterBase, TagsObject } from './SsmlFormatterBase';
export class MicrosoftAzureSsmlFormatter extends SsmlFormatterBase {
+ public validVoices: Record = MICROSOFT_AZURE_TTS_VOICES;
+
constructor(public options: SpeechOptions) {
super(options);
@@ -230,22 +233,19 @@ export class MicrosoftAzureSsmlFormatter extends SsmlFormatterBase {
case 'textModifier': {
const tmo = this.getTextModifierObject(ast);
-
- const tagsSortedDesc = Object.keys(tmo.tags).sort((a: any, b: any) => {
- return tmo.tags[b].sortId - tmo.tags[a].sortId;
- });
-
- let inner = tmo.text;
-
- for (let index = 0; index < tagsSortedDesc.length; index++) {
- const tag = tagsSortedDesc[index];
- const attrs = tmo.tags[tag].attrs;
-
- inner = this.getTagWithAttrs(inner, tag, attrs);
- }
- lines.push(inner);
-
- return lines;
+ return this.applyTagsObject(tmo, lines);
+ }
+ case 'shortIpa': {
+ const tmo = this.getShortIpaObject(ast);
+ return this.applyTagsObject(tmo, lines);
+ }
+ case 'bareIpa': {
+ const tmo = this.getShortIpaObject(ast, 'ipa');
+ return this.applyTagsObject(tmo, lines);
+ }
+ case 'shortSub': {
+ const tmo = this.getShortSubObject(ast);
+ return this.applyTagsObject(tmo, lines);
}
case 'audio': {
diff --git a/src/formatters/MicrosoftSapiSsmlFormatter.ts b/src/formatters/MicrosoftSapiSsmlFormatter.ts
new file mode 100644
index 0000000..9f71e4b
--- /dev/null
+++ b/src/formatters/MicrosoftSapiSsmlFormatter.ts
@@ -0,0 +1,290 @@
+import { SpeechOptions } from '../SpeechOptions';
+import { SsmlFormatterBase, TagsObject } from './SsmlFormatterBase';
+
+export class MicrosoftSapiSsmlFormatter extends SsmlFormatterBase {
+ constructor(public options: SpeechOptions) {
+ super(options);
+
+ this.modifierKeyToSsmlTagMappings.emphasis = 'emphasis';
+ this.modifierKeyToSsmlTagMappings.address = 'say-as';
+ this.modifierKeyToSsmlTagMappings.number = 'say-as';
+ this.modifierKeyToSsmlTagMappings.characters = 'say-as';
+ this.modifierKeyToSsmlTagMappings.expletive = 'say-as';
+ this.modifierKeyToSsmlTagMappings.fraction = 'say-as';
+ this.modifierKeyToSsmlTagMappings.interjection = 'say-as';
+ this.modifierKeyToSsmlTagMappings.ordinal = 'say-as';
+ this.modifierKeyToSsmlTagMappings.telephone = 'say-as';
+ this.modifierKeyToSsmlTagMappings.unit = 'say-as';
+ this.modifierKeyToSsmlTagMappings.time = 'say-as';
+ this.modifierKeyToSsmlTagMappings.date = 'say-as';
+ this.modifierKeyToSsmlTagMappings.sub = 'sub';
+ this.modifierKeyToSsmlTagMappings.ipa = 'phoneme';
+ this.modifierKeyToSsmlTagMappings.rate = 'prosody';
+ this.modifierKeyToSsmlTagMappings.pitch = 'prosody';
+ this.modifierKeyToSsmlTagMappings.volume = 'prosody';
+ this.modifierKeyToSsmlTagMappings.lang = 'lang';
+ this.modifierKeyToSsmlTagMappings.voice = 'voice';
+
+ this.ssmlTagSortOrder = [
+ 'emphasis',
+ 'say-as',
+ 'prosody',
+ 'voice',
+ 'lang',
+ 'sub',
+ 'phoneme',
+ ];
+ }
+
+ protected getFormatterComment(): string | null {
+ return 'Converted from Speech Markdown to SSML for Microsoft Speech API';
+ }
+
+ public getVoiceTagFallback(name: string): Record | null {
+ if (name.toLowerCase() === 'device') {
+ return null;
+ }
+
+ return { name };
+ }
+
+ private getTextModifierObject(ast: any): any {
+ const textModifierObject = new TagsObject(this);
+
+ for (const child of ast.children) {
+ switch (child.name) {
+ case 'plainText':
+ case 'plainTextSpecialChars':
+ case 'plainTextEmphasis':
+ case 'plainTextPhone':
+ case 'plainTextModifier': {
+ textModifierObject.text = child.allText;
+ break;
+ }
+ case 'textModifierKeyOptionalValue': {
+ let key = child.children[0].allText;
+ key = this.modifierKeyMappings[key] || key;
+ const value =
+ child.children.length === 2 ? child.children[1].allText : '';
+ const ssmlTag = this.modifierKeyToSsmlTagMappings[key];
+
+ if (!ssmlTag) {
+ break;
+ }
+
+ switch (key) {
+ case 'emphasis':
+ textModifierObject.tag(ssmlTag, { level: value || 'moderate' });
+ break;
+ case 'address':
+ case 'expletive':
+ case 'fraction':
+ case 'interjection':
+ case 'ordinal':
+ case 'telephone':
+ case 'unit':
+ textModifierObject.tag(ssmlTag, { 'interpret-as': key });
+ break;
+ case 'number':
+ textModifierObject.tag(ssmlTag, { 'interpret-as': 'cardinal' });
+ break;
+ case 'characters': {
+ let interpretAs = 'digits';
+ if (isNaN(textModifierObject.text as any)) {
+ interpretAs = 'characters';
+ }
+
+ textModifierObject.tag(ssmlTag, { 'interpret-as': interpretAs });
+ break;
+ }
+ case 'date':
+ textModifierObject.tag(ssmlTag, {
+ 'interpret-as': key,
+ format: value || 'ymd',
+ });
+ break;
+ case 'time':
+ textModifierObject.tag(ssmlTag, {
+ 'interpret-as': key,
+ format: value || 'hms12',
+ });
+ break;
+ case 'ipa':
+ textModifierObject.tag(ssmlTag, { alphabet: key, ph: value });
+ break;
+ case 'sub':
+ textModifierObject.tag(ssmlTag, { alias: value });
+ break;
+ case 'volume':
+ case 'rate':
+ case 'pitch': {
+ const attrs: any = {};
+ attrs[key] = value || 'medium';
+ textModifierObject.tag(ssmlTag, attrs, true);
+ break;
+ }
+ case 'lang':
+ textModifierObject.tag(ssmlTag, { 'xml:lang': value });
+ break;
+ case 'voice':
+ textModifierObject.voiceTag(ssmlTag, value);
+ break;
+ default:
+ }
+ break;
+ }
+ }
+ }
+
+ return textModifierObject;
+ }
+
+ private getSectionObject(ast: any): any {
+ const sectionObject = new TagsObject(this);
+
+ for (const child of ast.children) {
+ if (child.name !== 'sectionModifierKeyOptionalValue') {
+ continue;
+ }
+
+ const key = child.children[0].allText;
+ const value =
+ child.children.length === 2 ? child.children[1].allText : '';
+ const ssmlTag = this.modifierKeyToSsmlTagMappings[key];
+
+ if (!ssmlTag) {
+ continue;
+ }
+
+ switch (key) {
+ case 'lang':
+ sectionObject.tag(ssmlTag, { 'xml:lang': value });
+ break;
+ case 'voice':
+ sectionObject.voiceTag(ssmlTag, value);
+ break;
+ default:
+ }
+ }
+
+ return sectionObject;
+ }
+
+ // tslint:disable-next-line: max-func-body-length
+ protected formatFromAst(ast: any, lines: string[] = []): string[] {
+ switch (ast.name) {
+ case 'document': {
+ if (this.options.includeFormatterComment) {
+ const comment = this.getFormatterComment();
+ if (comment) {
+ this.addComment(comment, lines);
+ }
+ }
+
+ if (this.options.includeSpeakTag) {
+ return this.addSpeakTag(ast.children, true, false, null, lines);
+ }
+ this.processAst(ast.children, lines);
+ return lines;
+ }
+ case 'paragraph': {
+ if (this.options.includeParagraphTag) {
+ return this.addTag('p', ast.children, true, false, null, lines);
+ }
+ this.processAst(ast.children, lines);
+ return lines;
+ }
+ case 'shortBreak': {
+ const time = ast.children[0].allText;
+ return this.addTagWithAttrs(lines, null, 'break', { time });
+ }
+ case 'break': {
+ const val = ast.children[0].allText;
+ let attrs = {};
+ switch (ast.children[0].children[0].name) {
+ case 'breakStrengthValue':
+ attrs = { strength: val };
+ break;
+ case 'time':
+ attrs = { time: val };
+ break;
+ }
+ return this.addTagWithAttrs(lines, null, 'break', attrs);
+ }
+ case 'shortEmphasisModerate':
+ case 'shortEmphasisStrong':
+ case 'shortEmphasisNone':
+ case 'shortEmphasisReduced': {
+ const text = ast.children[0].allText;
+ if (text) {
+ lines.push(text);
+ }
+ return lines;
+ }
+ case 'textModifier': {
+ const tmo = this.getTextModifierObject(ast);
+ return this.applyTagsObject(tmo, lines);
+ }
+ case 'shortIpa': {
+ const tmo = this.getShortIpaObject(ast);
+ return this.applyTagsObject(tmo, lines);
+ }
+ case 'bareIpa': {
+ const tmo = this.getShortIpaObject(ast, 'ipa');
+ return this.applyTagsObject(tmo, lines);
+ }
+ case 'shortSub': {
+ const tmo = this.getShortSubObject(ast);
+ return this.applyTagsObject(tmo, lines);
+ }
+ case 'audio': {
+ const index = ast.children.length === 2 ? 1 : 0;
+ const url = ast.children[index].allText.replace(/&/g, '&');
+ return this.addTagWithAttrs(lines, null, 'audio', { src: url }, false);
+ }
+ case 'markTag': {
+ const name = ast.children[0].allText;
+ return this.addTagWithAttrs(lines, null, 'mark', { name }, false);
+ }
+ case 'simpleLine': {
+ this.processAst(ast.children, lines);
+ return lines;
+ }
+ case 'lineEnd': {
+ lines.push(ast.allText);
+ return lines;
+ }
+ case 'emptyLine': {
+ if (this.options.preserveEmptyLines) {
+ lines.push(ast.allText);
+ }
+ return lines;
+ }
+ case 'plainText':
+ case 'plainTextSpecialChars':
+ case 'plainTextEmphasis':
+ case 'plainTextPhone':
+ case 'plainTextModifier': {
+ const text = this.options.escapeXmlSymbols
+ ? this.escapeXmlCharacters(ast.allText)
+ : ast.allText;
+ lines.push(text);
+ return lines;
+ }
+ case 'section': {
+ const so = this.getSectionObject(ast);
+ const tagsSortedAsc = Object.keys(so.tags).sort(
+ (a: any, b: any) => so.tags[a].sortId - so.tags[b].sortId,
+ );
+
+ this.addSectionEndTag(lines);
+ this.addSectionStartTag(tagsSortedAsc, so, lines);
+ return lines;
+ }
+ default: {
+ this.processAst(ast.children, lines);
+ return lines;
+ }
+ }
+ }
+}
diff --git a/src/formatters/SamsungBixbySsmlFormatter.ts b/src/formatters/SamsungBixbySsmlFormatter.ts
index c5911a7..913a66d 100644
--- a/src/formatters/SamsungBixbySsmlFormatter.ts
+++ b/src/formatters/SamsungBixbySsmlFormatter.ts
@@ -235,22 +235,19 @@ export class SamsungBixbySsmlFormatter extends SsmlFormatterBase {
lines.push(tmo.text);
return lines;
}
-
- const tagsSortedDesc = Object.keys(tmo.tags).sort((a: any, b: any) => {
- return tmo.tags[b].sortId - tmo.tags[a].sortId;
- });
-
- let inner = tmo.text;
-
- for (let index = 0; index < tagsSortedDesc.length; index++) {
- const tag = tagsSortedDesc[index];
- const attrs = tmo.tags[tag].attrs;
-
- inner = this.getTagWithAttrs(inner, tag, attrs);
- }
- lines.push(inner);
-
- return lines;
+ return this.applyTagsObject(tmo, lines);
+ }
+ case 'shortIpa': {
+ const tmo = this.getShortIpaObject(ast);
+ return this.applyTagsObject(tmo, lines);
+ }
+ case 'bareIpa': {
+ const tmo = this.getShortIpaObject(ast, 'ipa');
+ return this.applyTagsObject(tmo, lines);
+ }
+ case 'shortSub': {
+ const tmo = this.getShortSubObject(ast);
+ return this.applyTagsObject(tmo, lines);
}
case 'audio': {
diff --git a/src/formatters/SsmlFormatterBase.ts b/src/formatters/SsmlFormatterBase.ts
index fd05afb..2e40b9c 100644
--- a/src/formatters/SsmlFormatterBase.ts
+++ b/src/formatters/SsmlFormatterBase.ts
@@ -45,11 +45,62 @@ export class TagsObject {
}
public voiceTag(tag: string, value: string) {
- const name = this.base.sentenceCase(value || 'device');
+ const rawName = (value || '').trim();
+ const normalizedName = rawName.toLowerCase();
+ const defaultName = rawName || 'device';
+ const sentenceCaseName = this.base.sentenceCase(
+ normalizedName || defaultName,
+ );
+
+ const optionCandidates = [rawName];
+
+ if (normalizedName && normalizedName !== rawName) {
+ optionCandidates.push(normalizedName);
+ }
+
+ if (sentenceCaseName && !optionCandidates.includes(sentenceCaseName)) {
+ optionCandidates.push(sentenceCaseName);
+ }
+
+ for (const candidate of optionCandidates) {
+ if (
+ candidate &&
+ this.voiceTagNamed(
+ this.base.options && this.base.options.voices,
+ candidate,
+ )
+ ) {
+ return;
+ }
+ }
+
+ const validCandidates = [];
+
+ if (normalizedName) {
+ validCandidates.push(normalizedName);
+ }
+
+ if (rawName && rawName !== normalizedName) {
+ validCandidates.push(rawName);
+ }
+
+ if (sentenceCaseName && !validCandidates.includes(sentenceCaseName)) {
+ validCandidates.push(sentenceCaseName);
+ }
- const handled =
- this.voiceTagNamed(this.base.options && this.base.options.voices, name) ||
- this.voiceTagNamed(this.base.validVoices, name);
+ for (const candidate of validCandidates) {
+ if (this.voiceTagNamed(this.base.validVoices, candidate)) {
+ return;
+ }
+ }
+
+ const fallback = this.base.getVoiceTagFallback(
+ sentenceCaseName || defaultName,
+ );
+
+ if (fallback) {
+ this.tag('voice', fallback);
+ }
}
}
@@ -66,14 +117,13 @@ export abstract class SsmlFormatterBase extends FormatterBase {
"'": ''',
};
- public static readonly XML_UNESCAPE_MAPPING: Dictionary<
- string
- > = (function swapJSON(dictionary: Dictionary) {
- return Object.keys(dictionary).reduce((acc: any, key: string) => {
- acc[dictionary[key]] = key;
- return acc;
- }, {});
- })(SsmlFormatterBase.XML_ESCAPE_MAPPING);
+ public static readonly XML_UNESCAPE_MAPPING: Dictionary =
+ (function swapJSON(dictionary: Dictionary) {
+ return Object.keys(dictionary).reduce((acc: any, key: string) => {
+ acc[dictionary[key]] = key;
+ return acc;
+ }, {});
+ })(SsmlFormatterBase.XML_ESCAPE_MAPPING);
protected constructor(public options: SpeechOptions) {
super(options);
@@ -187,6 +237,80 @@ export abstract class SsmlFormatterBase extends FormatterBase {
return lines;
}
+ protected applyTagsObject(tmo: TagsObject, lines: string[]): string[] {
+ const tagsSortedDesc = Object.keys(tmo.tags).sort(
+ (a: any, b: any) => tmo.tags[b].sortId - tmo.tags[a].sortId,
+ );
+
+ let inner = tmo.text;
+
+ for (const tag of tagsSortedDesc) {
+ const attrs = tmo.tags[tag].attrs;
+ inner = this.getTagWithAttrs(inner, tag, attrs);
+ }
+
+ lines.push(inner);
+ return lines;
+ }
+
+ protected extractParenthesizedText(node: any): string {
+ if (!node || typeof node.allText !== 'string' || node.allText.length < 2) {
+ return '';
+ }
+
+ const content = node.allText.substring(1, node.allText.length - 1);
+ return content.trim();
+ }
+
+ protected getShortIpaObject(ast: any, fallbackText?: string): TagsObject {
+ const tmo = new TagsObject(this);
+ const textNode = ast.children?.find(
+ (child: any) =>
+ child &&
+ (child.name === 'parenthesized' || child.name === 'plainTextModifier'),
+ );
+ const extractedText =
+ textNode && textNode.name === 'parenthesized'
+ ? this.extractParenthesizedText(textNode)
+ : textNode?.allText || '';
+ tmo.text = extractedText || fallbackText || '';
+
+ const phonemeNode = ast.children?.find(
+ (child: any) => child && child.name === 'shortIpaValue',
+ );
+ const phoneme = phonemeNode ? phonemeNode.allText : '';
+
+ if (phoneme) {
+ tmo.tag('phoneme', { alphabet: 'ipa', ph: phoneme });
+ }
+
+ return tmo;
+ }
+
+ protected getShortSubObject(ast: any): TagsObject {
+ const tmo = new TagsObject(this);
+ const textNode = ast.children?.find(
+ (child: any) =>
+ child &&
+ (child.name === 'parenthesized' || child.name === 'plainTextModifier'),
+ );
+ tmo.text =
+ textNode && textNode.name === 'parenthesized'
+ ? this.extractParenthesizedText(textNode)
+ : textNode?.allText || '';
+
+ const aliasNode = ast.children?.find(
+ (child: any) => child && child.name === 'shortSubValue',
+ );
+ const alias = aliasNode ? aliasNode.allText.trim() : '';
+
+ if (alias) {
+ tmo.tag('sub', { alias });
+ }
+
+ return tmo;
+ }
+
protected addSpeakTag(
ast: any,
newLine: boolean,
@@ -318,5 +442,9 @@ export abstract class SsmlFormatterBase extends FormatterBase {
return escaped;
}
+ public getVoiceTagFallback(name: string): Record | null {
+ return null;
+ }
+
protected abstract formatFromAst(ast: any, lines: string[]): string[];
}
diff --git a/src/formatters/TextFormatter.ts b/src/formatters/TextFormatter.ts
index 47a3f3f..c41c5a8 100644
--- a/src/formatters/TextFormatter.ts
+++ b/src/formatters/TextFormatter.ts
@@ -51,6 +51,35 @@ export class TextFormatter extends FormatterBase {
return lines;
}
+ case 'shortIpa':
+ case 'shortSub': {
+ const textNode = ast.children?.find(
+ (child: any) =>
+ child &&
+ (child.name === 'parenthesized' ||
+ child.name === 'plainTextModifier'),
+ );
+ const text =
+ textNode && textNode.name === 'parenthesized'
+ ? this.extractParenthesizedText(textNode)
+ : textNode?.allText || '';
+ if (text) {
+ lines.push(text);
+ }
+ return lines;
+ }
+
+ case 'bareIpa': {
+ const phonemeNode = ast.children?.find(
+ (child: any) => child && child.name === 'shortIpaValue',
+ );
+ const phoneme = phonemeNode ? phonemeNode.allText : '';
+ if (phoneme) {
+ lines.push(phoneme);
+ }
+ return lines;
+ }
+
case 'audio':
return lines;
@@ -60,4 +89,13 @@ export class TextFormatter extends FormatterBase {
}
}
}
+
+ private extractParenthesizedText(node: any): string {
+ if (!node || typeof node.allText !== 'string' || node.allText.length < 2) {
+ return '';
+ }
+
+ const content = node.allText.substring(1, node.allText.length - 1);
+ return content.trim();
+ }
}
diff --git a/src/formatters/W3cSsmlFormatter.ts b/src/formatters/W3cSsmlFormatter.ts
new file mode 100644
index 0000000..d4f2e87
--- /dev/null
+++ b/src/formatters/W3cSsmlFormatter.ts
@@ -0,0 +1,290 @@
+import { SpeechOptions } from '../SpeechOptions';
+import { SsmlFormatterBase, TagsObject } from './SsmlFormatterBase';
+
+export class W3cSsmlFormatter extends SsmlFormatterBase {
+ constructor(public options: SpeechOptions) {
+ super(options);
+
+ this.modifierKeyToSsmlTagMappings.emphasis = 'emphasis';
+ this.modifierKeyToSsmlTagMappings.address = 'say-as';
+ this.modifierKeyToSsmlTagMappings.number = 'say-as';
+ this.modifierKeyToSsmlTagMappings.characters = 'say-as';
+ this.modifierKeyToSsmlTagMappings.expletive = 'say-as';
+ this.modifierKeyToSsmlTagMappings.fraction = 'say-as';
+ this.modifierKeyToSsmlTagMappings.interjection = 'say-as';
+ this.modifierKeyToSsmlTagMappings.ordinal = 'say-as';
+ this.modifierKeyToSsmlTagMappings.telephone = 'say-as';
+ this.modifierKeyToSsmlTagMappings.unit = 'say-as';
+ this.modifierKeyToSsmlTagMappings.time = 'say-as';
+ this.modifierKeyToSsmlTagMappings.date = 'say-as';
+ this.modifierKeyToSsmlTagMappings.sub = 'sub';
+ this.modifierKeyToSsmlTagMappings.ipa = 'phoneme';
+ this.modifierKeyToSsmlTagMappings.rate = 'prosody';
+ this.modifierKeyToSsmlTagMappings.pitch = 'prosody';
+ this.modifierKeyToSsmlTagMappings.volume = 'prosody';
+ this.modifierKeyToSsmlTagMappings.lang = 'lang';
+ this.modifierKeyToSsmlTagMappings.voice = 'voice';
+
+ this.ssmlTagSortOrder = [
+ 'emphasis',
+ 'say-as',
+ 'prosody',
+ 'voice',
+ 'lang',
+ 'sub',
+ 'phoneme',
+ ];
+ }
+
+ protected getFormatterComment(): string | null {
+ return 'Converted from Speech Markdown to W3C SSML';
+ }
+
+ public getVoiceTagFallback(name: string): Record | null {
+ if (name.toLowerCase() === 'device') {
+ return null;
+ }
+
+ return { name };
+ }
+
+ private getTextModifierObject(ast: any): any {
+ const textModifierObject = new TagsObject(this);
+
+ for (const child of ast.children) {
+ switch (child.name) {
+ case 'plainText':
+ case 'plainTextSpecialChars':
+ case 'plainTextEmphasis':
+ case 'plainTextPhone':
+ case 'plainTextModifier': {
+ textModifierObject.text = child.allText;
+ break;
+ }
+ case 'textModifierKeyOptionalValue': {
+ let key = child.children[0].allText;
+ key = this.modifierKeyMappings[key] || key;
+ const value =
+ child.children.length === 2 ? child.children[1].allText : '';
+ const ssmlTag = this.modifierKeyToSsmlTagMappings[key];
+
+ if (!ssmlTag) {
+ break;
+ }
+
+ switch (key) {
+ case 'emphasis':
+ textModifierObject.tag(ssmlTag, { level: value || 'moderate' });
+ break;
+ case 'address':
+ case 'expletive':
+ case 'fraction':
+ case 'interjection':
+ case 'ordinal':
+ case 'telephone':
+ case 'unit':
+ textModifierObject.tag(ssmlTag, { 'interpret-as': key });
+ break;
+ case 'number':
+ textModifierObject.tag(ssmlTag, { 'interpret-as': 'cardinal' });
+ break;
+ case 'characters': {
+ let interpretAs = 'digits';
+ if (isNaN(textModifierObject.text as any)) {
+ interpretAs = 'characters';
+ }
+
+ textModifierObject.tag(ssmlTag, { 'interpret-as': interpretAs });
+ break;
+ }
+ case 'date':
+ textModifierObject.tag(ssmlTag, {
+ 'interpret-as': key,
+ format: value || 'ymd',
+ });
+ break;
+ case 'time':
+ textModifierObject.tag(ssmlTag, {
+ 'interpret-as': key,
+ format: value || 'hms12',
+ });
+ break;
+ case 'ipa':
+ textModifierObject.tag(ssmlTag, { alphabet: key, ph: value });
+ break;
+ case 'sub':
+ textModifierObject.tag(ssmlTag, { alias: value });
+ break;
+ case 'volume':
+ case 'rate':
+ case 'pitch': {
+ const attrs: any = {};
+ attrs[key] = value || 'medium';
+ textModifierObject.tag(ssmlTag, attrs, true);
+ break;
+ }
+ case 'lang':
+ textModifierObject.tag(ssmlTag, { 'xml:lang': value });
+ break;
+ case 'voice':
+ textModifierObject.voiceTag(ssmlTag, value);
+ break;
+ default:
+ }
+ break;
+ }
+ }
+ }
+
+ return textModifierObject;
+ }
+
+ private getSectionObject(ast: any): any {
+ const sectionObject = new TagsObject(this);
+
+ for (const child of ast.children) {
+ if (child.name !== 'sectionModifierKeyOptionalValue') {
+ continue;
+ }
+
+ const key = child.children[0].allText;
+ const value =
+ child.children.length === 2 ? child.children[1].allText : '';
+ const ssmlTag = this.modifierKeyToSsmlTagMappings[key];
+
+ if (!ssmlTag) {
+ continue;
+ }
+
+ switch (key) {
+ case 'lang':
+ sectionObject.tag(ssmlTag, { 'xml:lang': value });
+ break;
+ case 'voice':
+ sectionObject.voiceTag(ssmlTag, value);
+ break;
+ default:
+ }
+ }
+
+ return sectionObject;
+ }
+
+ // tslint:disable-next-line: max-func-body-length
+ protected formatFromAst(ast: any, lines: string[] = []): string[] {
+ switch (ast.name) {
+ case 'document': {
+ if (this.options.includeFormatterComment) {
+ const comment = this.getFormatterComment();
+ if (comment) {
+ this.addComment(comment, lines);
+ }
+ }
+
+ if (this.options.includeSpeakTag) {
+ return this.addSpeakTag(ast.children, true, false, null, lines);
+ }
+ this.processAst(ast.children, lines);
+ return lines;
+ }
+ case 'paragraph': {
+ if (this.options.includeParagraphTag) {
+ return this.addTag('p', ast.children, true, false, null, lines);
+ }
+ this.processAst(ast.children, lines);
+ return lines;
+ }
+ case 'shortBreak': {
+ const time = ast.children[0].allText;
+ return this.addTagWithAttrs(lines, null, 'break', { time });
+ }
+ case 'break': {
+ const val = ast.children[0].allText;
+ let attrs = {};
+ switch (ast.children[0].children[0].name) {
+ case 'breakStrengthValue':
+ attrs = { strength: val };
+ break;
+ case 'time':
+ attrs = { time: val };
+ break;
+ }
+ return this.addTagWithAttrs(lines, null, 'break', attrs);
+ }
+ case 'shortEmphasisModerate':
+ case 'shortEmphasisStrong':
+ case 'shortEmphasisNone':
+ case 'shortEmphasisReduced': {
+ const text = ast.children[0].allText;
+ if (text) {
+ lines.push(text);
+ }
+ return lines;
+ }
+ case 'textModifier': {
+ const tmo = this.getTextModifierObject(ast);
+ return this.applyTagsObject(tmo, lines);
+ }
+ case 'shortIpa': {
+ const tmo = this.getShortIpaObject(ast);
+ return this.applyTagsObject(tmo, lines);
+ }
+ case 'bareIpa': {
+ const tmo = this.getShortIpaObject(ast, 'ipa');
+ return this.applyTagsObject(tmo, lines);
+ }
+ case 'shortSub': {
+ const tmo = this.getShortSubObject(ast);
+ return this.applyTagsObject(tmo, lines);
+ }
+ case 'audio': {
+ const index = ast.children.length === 2 ? 1 : 0;
+ const url = ast.children[index].allText.replace(/&/g, '&');
+ return this.addTagWithAttrs(lines, null, 'audio', { src: url }, false);
+ }
+ case 'markTag': {
+ const name = ast.children[0].allText;
+ return this.addTagWithAttrs(lines, null, 'mark', { name }, false);
+ }
+ case 'simpleLine': {
+ this.processAst(ast.children, lines);
+ return lines;
+ }
+ case 'lineEnd': {
+ lines.push(ast.allText);
+ return lines;
+ }
+ case 'emptyLine': {
+ if (this.options.preserveEmptyLines) {
+ lines.push(ast.allText);
+ }
+ return lines;
+ }
+ case 'plainText':
+ case 'plainTextSpecialChars':
+ case 'plainTextEmphasis':
+ case 'plainTextPhone':
+ case 'plainTextModifier': {
+ const text = this.options.escapeXmlSymbols
+ ? this.escapeXmlCharacters(ast.allText)
+ : ast.allText;
+ lines.push(text);
+ return lines;
+ }
+ case 'section': {
+ const so = this.getSectionObject(ast);
+ const tagsSortedAsc = Object.keys(so.tags).sort(
+ (a: any, b: any) => so.tags[a].sortId - so.tags[b].sortId,
+ );
+
+ this.addSectionEndTag(lines);
+ this.addSectionStartTag(tagsSortedAsc, so, lines);
+ return lines;
+ }
+ default: {
+ this.processAst(ast.children, lines);
+ return lines;
+ }
+ }
+ }
+}
diff --git a/src/formatters/data/amazonPollyVoices.ts b/src/formatters/data/amazonPollyVoices.ts
new file mode 100644
index 0000000..efa2587
--- /dev/null
+++ b/src/formatters/data/amazonPollyVoices.ts
@@ -0,0 +1,1279 @@
+// THIS FILE IS AUTO-GENERATED by scripts/update-voice-data.js.
+// Do not edit this file manually.
+
+export const AMAZON_POLLY_ALL_VOICES: Record = {
+ ['aditi']: {
+ voice: {
+ name: 'Aditi',
+ },
+ },
+ ['adriano']: {
+ voice: {
+ name: 'Adriano',
+ },
+ },
+ ['alba']: {
+ voice: {
+ name: 'Alba',
+ },
+ },
+ ['amy']: {
+ voice: {
+ name: 'Amy',
+ },
+ },
+ ['andres']: {
+ voice: {
+ name: 'Andres',
+ },
+ },
+ ['aria']: {
+ voice: {
+ name: 'Aria',
+ },
+ },
+ ['arlet']: {
+ voice: {
+ name: 'Arlet',
+ },
+ },
+ ['arthur']: {
+ voice: {
+ name: 'Arthur',
+ },
+ },
+ ['astrid']: {
+ voice: {
+ name: 'Astrid',
+ },
+ },
+ ['ayanda']: {
+ voice: {
+ name: 'Ayanda',
+ },
+ },
+ ['bianca']: {
+ voice: {
+ name: 'Bianca',
+ },
+ },
+ ['brian']: {
+ voice: {
+ name: 'Brian',
+ },
+ },
+ ['burcu']: {
+ voice: {
+ name: 'Burcu',
+ },
+ },
+ ['camila']: {
+ voice: {
+ name: 'Camila',
+ },
+ },
+ ['carla']: {
+ voice: {
+ name: 'Carla',
+ },
+ },
+ ['carmen']: {
+ voice: {
+ name: 'Carmen',
+ },
+ },
+ ['celine']: {
+ voice: {
+ name: 'Celine',
+ },
+ },
+ ['chantal']: {
+ voice: {
+ name: 'Chantal',
+ },
+ },
+ ['conchita']: {
+ voice: {
+ name: 'Conchita',
+ },
+ },
+ ['cristiano']: {
+ voice: {
+ name: 'Cristiano',
+ },
+ },
+ ['daniel']: {
+ voice: {
+ name: 'Daniel',
+ },
+ },
+ ['danielle']: {
+ voice: {
+ name: 'Danielle',
+ },
+ },
+ ['dora']: {
+ voice: {
+ name: 'Dora',
+ },
+ },
+ ['elin']: {
+ voice: {
+ name: 'Elin',
+ },
+ },
+ ['emma']: {
+ voice: {
+ name: 'Emma',
+ },
+ },
+ ['enrique']: {
+ voice: {
+ name: 'Enrique',
+ },
+ },
+ ['ewa']: {
+ voice: {
+ name: 'Ewa',
+ },
+ },
+ ['filiz']: {
+ voice: {
+ name: 'Filiz',
+ },
+ },
+ ['gabrielle']: {
+ voice: {
+ name: 'Gabrielle',
+ },
+ },
+ ['geraint']: {
+ voice: {
+ name: 'Geraint',
+ },
+ },
+ ['giorgio']: {
+ voice: {
+ name: 'Giorgio',
+ },
+ },
+ ['gregory']: {
+ voice: {
+ name: 'Gregory',
+ },
+ },
+ ['gwyneth']: {
+ voice: {
+ name: 'Gwyneth',
+ },
+ },
+ ['hala']: {
+ voice: {
+ name: 'Hala',
+ },
+ },
+ ['hannah']: {
+ voice: {
+ name: 'Hannah',
+ },
+ },
+ ['hans']: {
+ voice: {
+ name: 'Hans',
+ },
+ },
+ ['hiujin']: {
+ voice: {
+ name: 'Hiujin',
+ },
+ },
+ ['ida']: {
+ voice: {
+ name: 'Ida',
+ },
+ },
+ ['ines']: {
+ voice: {
+ name: 'Ines',
+ },
+ },
+ ['isabelle']: {
+ voice: {
+ name: 'Isabelle',
+ },
+ },
+ ['ivy']: {
+ voice: {
+ name: 'Ivy',
+ },
+ },
+ ['jacek']: {
+ voice: {
+ name: 'Jacek',
+ },
+ },
+ ['jan']: {
+ voice: {
+ name: 'Jan',
+ },
+ },
+ ['jasmine']: {
+ voice: {
+ name: 'Jasmine',
+ },
+ },
+ ['jihye']: {
+ voice: {
+ name: 'Jihye',
+ },
+ },
+ ['jitka']: {
+ voice: {
+ name: 'Jitka',
+ },
+ },
+ ['joanna']: {
+ voice: {
+ name: 'Joanna',
+ },
+ },
+ ['joey']: {
+ voice: {
+ name: 'Joey',
+ },
+ },
+ ['justin']: {
+ voice: {
+ name: 'Justin',
+ },
+ },
+ ['kajal']: {
+ voice: {
+ name: 'Kajal',
+ },
+ },
+ ['karl']: {
+ voice: {
+ name: 'Karl',
+ },
+ },
+ ['kazuha']: {
+ voice: {
+ name: 'Kazuha',
+ },
+ },
+ ['kendra']: {
+ voice: {
+ name: 'Kendra',
+ },
+ },
+ ['kevin']: {
+ voice: {
+ name: 'Kevin',
+ },
+ },
+ ['kimberly']: {
+ voice: {
+ name: 'Kimberly',
+ },
+ },
+ ['laura']: {
+ voice: {
+ name: 'Laura',
+ },
+ },
+ ['lea']: {
+ voice: {
+ name: 'Lea',
+ },
+ },
+ ['liam']: {
+ voice: {
+ name: 'Liam',
+ },
+ },
+ ['lisa']: {
+ voice: {
+ name: 'Lisa',
+ },
+ },
+ ['liv']: {
+ voice: {
+ name: 'Liv',
+ },
+ },
+ ['lotte']: {
+ voice: {
+ name: 'Lotte',
+ },
+ },
+ ['lucia']: {
+ voice: {
+ name: 'Lucia',
+ },
+ },
+ ['lupe']: {
+ voice: {
+ name: 'Lupe',
+ },
+ },
+ ['mads']: {
+ voice: {
+ name: 'Mads',
+ },
+ },
+ ['maja']: {
+ voice: {
+ name: 'Maja',
+ },
+ },
+ ['marlene']: {
+ voice: {
+ name: 'Marlene',
+ },
+ },
+ ['mathieu']: {
+ voice: {
+ name: 'Mathieu',
+ },
+ },
+ ['matthew']: {
+ voice: {
+ name: 'Matthew',
+ },
+ },
+ ['maxim']: {
+ voice: {
+ name: 'Maxim',
+ },
+ },
+ ['mia']: {
+ voice: {
+ name: 'Mia',
+ },
+ },
+ ['miguel']: {
+ voice: {
+ name: 'Miguel',
+ },
+ },
+ ['mizuki']: {
+ voice: {
+ name: 'Mizuki',
+ },
+ },
+ ['naja']: {
+ voice: {
+ name: 'Naja',
+ },
+ },
+ ['niamh']: {
+ voice: {
+ name: 'Niamh',
+ },
+ },
+ ['nicole']: {
+ voice: {
+ name: 'Nicole',
+ },
+ },
+ ['ola']: {
+ voice: {
+ name: 'Ola',
+ },
+ },
+ ['olivia']: {
+ voice: {
+ name: 'Olivia',
+ },
+ },
+ ['patrick']: {
+ voice: {
+ name: 'Patrick',
+ },
+ },
+ ['pedro']: {
+ voice: {
+ name: 'Pedro',
+ },
+ },
+ ['penelope']: {
+ voice: {
+ name: 'Penelope',
+ },
+ },
+ ['raul']: {
+ voice: {
+ name: 'Raul',
+ },
+ },
+ ['raveena']: {
+ voice: {
+ name: 'Raveena',
+ },
+ },
+ ['remi']: {
+ voice: {
+ name: 'Remi',
+ },
+ },
+ ['ricardo']: {
+ voice: {
+ name: 'Ricardo',
+ },
+ },
+ ['ruben']: {
+ voice: {
+ name: 'Ruben',
+ },
+ },
+ ['russell']: {
+ voice: {
+ name: 'Russell',
+ },
+ },
+ ['ruth']: {
+ voice: {
+ name: 'Ruth',
+ },
+ },
+ ['sabrina']: {
+ voice: {
+ name: 'Sabrina',
+ },
+ },
+ ['salli']: {
+ voice: {
+ name: 'Salli',
+ },
+ },
+ ['seoyeon']: {
+ voice: {
+ name: 'Seoyeon',
+ },
+ },
+ ['sergio']: {
+ voice: {
+ name: 'Sergio',
+ },
+ },
+ ['sofie']: {
+ voice: {
+ name: 'Sofie',
+ },
+ },
+ ['stephen']: {
+ voice: {
+ name: 'Stephen',
+ },
+ },
+ ['suvi']: {
+ voice: {
+ name: 'Suvi',
+ },
+ },
+ ['takumi']: {
+ voice: {
+ name: 'Takumi',
+ },
+ },
+ ['tatyana']: {
+ voice: {
+ name: 'Tatyana',
+ },
+ },
+ ['thiago']: {
+ voice: {
+ name: 'Thiago',
+ },
+ },
+ ['tomoko']: {
+ voice: {
+ name: 'Tomoko',
+ },
+ },
+ ['vicki']: {
+ voice: {
+ name: 'Vicki',
+ },
+ },
+ ['vitoria']: {
+ voice: {
+ name: 'Vitoria',
+ },
+ },
+ ['zayd']: {
+ voice: {
+ name: 'Zayd',
+ },
+ },
+ ['zeina']: {
+ voice: {
+ name: 'Zeina',
+ },
+ },
+ ['zhiyu']: {
+ voice: {
+ name: 'Zhiyu',
+ },
+ },
+};
+
+export const AMAZON_POLLY_STANDARD_VOICES: Record = {
+ ['aditi']: {
+ voice: {
+ name: 'Aditi',
+ },
+ },
+ ['amy']: {
+ voice: {
+ name: 'Amy',
+ },
+ },
+ ['astrid']: {
+ voice: {
+ name: 'Astrid',
+ },
+ },
+ ['bianca']: {
+ voice: {
+ name: 'Bianca',
+ },
+ },
+ ['brian']: {
+ voice: {
+ name: 'Brian',
+ },
+ },
+ ['camila']: {
+ voice: {
+ name: 'Camila',
+ },
+ },
+ ['carla']: {
+ voice: {
+ name: 'Carla',
+ },
+ },
+ ['carmen']: {
+ voice: {
+ name: 'Carmen',
+ },
+ },
+ ['celine']: {
+ voice: {
+ name: 'Celine',
+ },
+ },
+ ['chantal']: {
+ voice: {
+ name: 'Chantal',
+ },
+ },
+ ['conchita']: {
+ voice: {
+ name: 'Conchita',
+ },
+ },
+ ['cristiano']: {
+ voice: {
+ name: 'Cristiano',
+ },
+ },
+ ['dora']: {
+ voice: {
+ name: 'Dora',
+ },
+ },
+ ['emma']: {
+ voice: {
+ name: 'Emma',
+ },
+ },
+ ['enrique']: {
+ voice: {
+ name: 'Enrique',
+ },
+ },
+ ['ewa']: {
+ voice: {
+ name: 'Ewa',
+ },
+ },
+ ['filiz']: {
+ voice: {
+ name: 'Filiz',
+ },
+ },
+ ['geraint']: {
+ voice: {
+ name: 'Geraint',
+ },
+ },
+ ['giorgio']: {
+ voice: {
+ name: 'Giorgio',
+ },
+ },
+ ['gwyneth']: {
+ voice: {
+ name: 'Gwyneth',
+ },
+ },
+ ['hans']: {
+ voice: {
+ name: 'Hans',
+ },
+ },
+ ['ines']: {
+ voice: {
+ name: 'Ines',
+ },
+ },
+ ['ivy']: {
+ voice: {
+ name: 'Ivy',
+ },
+ },
+ ['jacek']: {
+ voice: {
+ name: 'Jacek',
+ },
+ },
+ ['jan']: {
+ voice: {
+ name: 'Jan',
+ },
+ },
+ ['joanna']: {
+ voice: {
+ name: 'Joanna',
+ },
+ },
+ ['joey']: {
+ voice: {
+ name: 'Joey',
+ },
+ },
+ ['justin']: {
+ voice: {
+ name: 'Justin',
+ },
+ },
+ ['karl']: {
+ voice: {
+ name: 'Karl',
+ },
+ },
+ ['kendra']: {
+ voice: {
+ name: 'Kendra',
+ },
+ },
+ ['kimberly']: {
+ voice: {
+ name: 'Kimberly',
+ },
+ },
+ ['lea']: {
+ voice: {
+ name: 'Lea',
+ },
+ },
+ ['liv']: {
+ voice: {
+ name: 'Liv',
+ },
+ },
+ ['lotte']: {
+ voice: {
+ name: 'Lotte',
+ },
+ },
+ ['lucia']: {
+ voice: {
+ name: 'Lucia',
+ },
+ },
+ ['lupe']: {
+ voice: {
+ name: 'Lupe',
+ },
+ },
+ ['mads']: {
+ voice: {
+ name: 'Mads',
+ },
+ },
+ ['maja']: {
+ voice: {
+ name: 'Maja',
+ },
+ },
+ ['marlene']: {
+ voice: {
+ name: 'Marlene',
+ },
+ },
+ ['mathieu']: {
+ voice: {
+ name: 'Mathieu',
+ },
+ },
+ ['matthew']: {
+ voice: {
+ name: 'Matthew',
+ },
+ },
+ ['maxim']: {
+ voice: {
+ name: 'Maxim',
+ },
+ },
+ ['mia']: {
+ voice: {
+ name: 'Mia',
+ },
+ },
+ ['miguel']: {
+ voice: {
+ name: 'Miguel',
+ },
+ },
+ ['mizuki']: {
+ voice: {
+ name: 'Mizuki',
+ },
+ },
+ ['naja']: {
+ voice: {
+ name: 'Naja',
+ },
+ },
+ ['nicole']: {
+ voice: {
+ name: 'Nicole',
+ },
+ },
+ ['penelope']: {
+ voice: {
+ name: 'Penelope',
+ },
+ },
+ ['raveena']: {
+ voice: {
+ name: 'Raveena',
+ },
+ },
+ ['ricardo']: {
+ voice: {
+ name: 'Ricardo',
+ },
+ },
+ ['ruben']: {
+ voice: {
+ name: 'Ruben',
+ },
+ },
+ ['russell']: {
+ voice: {
+ name: 'Russell',
+ },
+ },
+ ['salli']: {
+ voice: {
+ name: 'Salli',
+ },
+ },
+ ['seoyeon']: {
+ voice: {
+ name: 'Seoyeon',
+ },
+ },
+ ['takumi']: {
+ voice: {
+ name: 'Takumi',
+ },
+ },
+ ['tatyana']: {
+ voice: {
+ name: 'Tatyana',
+ },
+ },
+ ['vicki']: {
+ voice: {
+ name: 'Vicki',
+ },
+ },
+ ['vitoria']: {
+ voice: {
+ name: 'Vitoria',
+ },
+ },
+ ['zeina']: {
+ voice: {
+ name: 'Zeina',
+ },
+ },
+ ['zhiyu']: {
+ voice: {
+ name: 'Zhiyu',
+ },
+ },
+};
+
+export const AMAZON_POLLY_NEURAL_VOICES: Record = {
+ ['adriano']: {
+ voice: {
+ name: 'Adriano',
+ },
+ },
+ ['amy']: {
+ voice: {
+ name: 'Amy',
+ },
+ },
+ ['andres']: {
+ voice: {
+ name: 'Andres',
+ },
+ },
+ ['aria']: {
+ voice: {
+ name: 'Aria',
+ },
+ },
+ ['arlet']: {
+ voice: {
+ name: 'Arlet',
+ },
+ },
+ ['arthur']: {
+ voice: {
+ name: 'Arthur',
+ },
+ },
+ ['ayanda']: {
+ voice: {
+ name: 'Ayanda',
+ },
+ },
+ ['bianca']: {
+ voice: {
+ name: 'Bianca',
+ },
+ },
+ ['brian']: {
+ voice: {
+ name: 'Brian',
+ },
+ },
+ ['burcu']: {
+ voice: {
+ name: 'Burcu',
+ },
+ },
+ ['camila']: {
+ voice: {
+ name: 'Camila',
+ },
+ },
+ ['daniel']: {
+ voice: {
+ name: 'Daniel',
+ },
+ },
+ ['danielle']: {
+ voice: {
+ name: 'Danielle',
+ },
+ },
+ ['elin']: {
+ voice: {
+ name: 'Elin',
+ },
+ },
+ ['emma']: {
+ voice: {
+ name: 'Emma',
+ },
+ },
+ ['gabrielle']: {
+ voice: {
+ name: 'Gabrielle',
+ },
+ },
+ ['gregory']: {
+ voice: {
+ name: 'Gregory',
+ },
+ },
+ ['hala']: {
+ voice: {
+ name: 'Hala',
+ },
+ },
+ ['hannah']: {
+ voice: {
+ name: 'Hannah',
+ },
+ },
+ ['hiujin']: {
+ voice: {
+ name: 'Hiujin',
+ },
+ },
+ ['ida']: {
+ voice: {
+ name: 'Ida',
+ },
+ },
+ ['ines']: {
+ voice: {
+ name: 'Ines',
+ },
+ },
+ ['isabelle']: {
+ voice: {
+ name: 'Isabelle',
+ },
+ },
+ ['ivy']: {
+ voice: {
+ name: 'Ivy',
+ },
+ },
+ ['jasmine']: {
+ voice: {
+ name: 'Jasmine',
+ },
+ },
+ ['jihye']: {
+ voice: {
+ name: 'Jihye',
+ },
+ },
+ ['jitka']: {
+ voice: {
+ name: 'Jitka',
+ },
+ },
+ ['joanna']: {
+ voice: {
+ name: 'Joanna',
+ },
+ },
+ ['joey']: {
+ voice: {
+ name: 'Joey',
+ },
+ },
+ ['justin']: {
+ voice: {
+ name: 'Justin',
+ },
+ },
+ ['kajal']: {
+ voice: {
+ name: 'Kajal',
+ },
+ },
+ ['kazuha']: {
+ voice: {
+ name: 'Kazuha',
+ },
+ },
+ ['kendra']: {
+ voice: {
+ name: 'Kendra',
+ },
+ },
+ ['kevin']: {
+ voice: {
+ name: 'Kevin',
+ },
+ },
+ ['kimberly']: {
+ voice: {
+ name: 'Kimberly',
+ },
+ },
+ ['laura']: {
+ voice: {
+ name: 'Laura',
+ },
+ },
+ ['lea']: {
+ voice: {
+ name: 'Lea',
+ },
+ },
+ ['liam']: {
+ voice: {
+ name: 'Liam',
+ },
+ },
+ ['lisa']: {
+ voice: {
+ name: 'Lisa',
+ },
+ },
+ ['lucia']: {
+ voice: {
+ name: 'Lucia',
+ },
+ },
+ ['lupe']: {
+ voice: {
+ name: 'Lupe',
+ },
+ },
+ ['matthew']: {
+ voice: {
+ name: 'Matthew',
+ },
+ },
+ ['mia']: {
+ voice: {
+ name: 'Mia',
+ },
+ },
+ ['niamh']: {
+ voice: {
+ name: 'Niamh',
+ },
+ },
+ ['ola']: {
+ voice: {
+ name: 'Ola',
+ },
+ },
+ ['olivia']: {
+ voice: {
+ name: 'Olivia',
+ },
+ },
+ ['pedro']: {
+ voice: {
+ name: 'Pedro',
+ },
+ },
+ ['remi']: {
+ voice: {
+ name: 'Remi',
+ },
+ },
+ ['ruth']: {
+ voice: {
+ name: 'Ruth',
+ },
+ },
+ ['sabrina']: {
+ voice: {
+ name: 'Sabrina',
+ },
+ },
+ ['salli']: {
+ voice: {
+ name: 'Salli',
+ },
+ },
+ ['seoyeon']: {
+ voice: {
+ name: 'Seoyeon',
+ },
+ },
+ ['sergio']: {
+ voice: {
+ name: 'Sergio',
+ },
+ },
+ ['sofie']: {
+ voice: {
+ name: 'Sofie',
+ },
+ },
+ ['stephen']: {
+ voice: {
+ name: 'Stephen',
+ },
+ },
+ ['suvi']: {
+ voice: {
+ name: 'Suvi',
+ },
+ },
+ ['takumi']: {
+ voice: {
+ name: 'Takumi',
+ },
+ },
+ ['thiago']: {
+ voice: {
+ name: 'Thiago',
+ },
+ },
+ ['tomoko']: {
+ voice: {
+ name: 'Tomoko',
+ },
+ },
+ ['vicki']: {
+ voice: {
+ name: 'Vicki',
+ },
+ },
+ ['vitoria']: {
+ voice: {
+ name: 'Vitoria',
+ },
+ },
+ ['zayd']: {
+ voice: {
+ name: 'Zayd',
+ },
+ },
+ ['zhiyu']: {
+ voice: {
+ name: 'Zhiyu',
+ },
+ },
+};
+
+export const AMAZON_POLLY_GENERATIVE_VOICES: Record = {
+ ['amy']: {
+ voice: {
+ name: 'Amy',
+ },
+ },
+ ['andres']: {
+ voice: {
+ name: 'Andres',
+ },
+ },
+ ['ayanda']: {
+ voice: {
+ name: 'Ayanda',
+ },
+ },
+ ['bianca']: {
+ voice: {
+ name: 'Bianca',
+ },
+ },
+ ['celine']: {
+ voice: {
+ name: 'Celine',
+ },
+ },
+ ['daniel']: {
+ voice: {
+ name: 'Daniel',
+ },
+ },
+ ['danielle']: {
+ voice: {
+ name: 'Danielle',
+ },
+ },
+ ['ewa']: {
+ voice: {
+ name: 'Ewa',
+ },
+ },
+ ['gabrielle']: {
+ voice: {
+ name: 'Gabrielle',
+ },
+ },
+ ['isabelle']: {
+ voice: {
+ name: 'Isabelle',
+ },
+ },
+ ['joanna']: {
+ voice: {
+ name: 'Joanna',
+ },
+ },
+ ['kajal']: {
+ voice: {
+ name: 'Kajal',
+ },
+ },
+ ['lea']: {
+ voice: {
+ name: 'Lea',
+ },
+ },
+ ['liam']: {
+ voice: {
+ name: 'Liam',
+ },
+ },
+ ['lucia']: {
+ voice: {
+ name: 'Lucia',
+ },
+ },
+ ['lupe']: {
+ voice: {
+ name: 'Lupe',
+ },
+ },
+ ['matthew']: {
+ voice: {
+ name: 'Matthew',
+ },
+ },
+ ['mia']: {
+ voice: {
+ name: 'Mia',
+ },
+ },
+ ['ola']: {
+ voice: {
+ name: 'Ola',
+ },
+ },
+ ['olivia']: {
+ voice: {
+ name: 'Olivia',
+ },
+ },
+ ['pedro']: {
+ voice: {
+ name: 'Pedro',
+ },
+ },
+ ['remi']: {
+ voice: {
+ name: 'Remi',
+ },
+ },
+ ['ruth']: {
+ voice: {
+ name: 'Ruth',
+ },
+ },
+ ['salli']: {
+ voice: {
+ name: 'Salli',
+ },
+ },
+ ['sergio']: {
+ voice: {
+ name: 'Sergio',
+ },
+ },
+ ['stephen']: {
+ voice: {
+ name: 'Stephen',
+ },
+ },
+ ['vicki']: {
+ voice: {
+ name: 'Vicki',
+ },
+ },
+};
diff --git a/src/formatters/data/googleCloudVoices.ts b/src/formatters/data/googleCloudVoices.ts
new file mode 100644
index 0000000..38392fc
--- /dev/null
+++ b/src/formatters/data/googleCloudVoices.ts
@@ -0,0 +1,8085 @@
+// THIS FILE IS AUTO-GENERATED by scripts/update-voice-data.js.
+// Do not edit this file manually.
+
+export const GOOGLE_CLOUD_TTS_VOICES: Record = {
+ ['achernar']: {
+ voice: {
+ name: 'Achernar',
+ },
+ },
+ ['achird']: {
+ voice: {
+ name: 'Achird',
+ },
+ },
+ ['af-za-standard-a']: {
+ voice: {
+ name: 'af-ZA-Standard-A',
+ },
+ },
+ ['algenib']: {
+ voice: {
+ name: 'Algenib',
+ },
+ },
+ ['algieba']: {
+ voice: {
+ name: 'Algieba',
+ },
+ },
+ ['alnilam']: {
+ voice: {
+ name: 'Alnilam',
+ },
+ },
+ ['am-et-standard-a']: {
+ voice: {
+ name: 'am-ET-Standard-A',
+ },
+ },
+ ['am-et-standard-b']: {
+ voice: {
+ name: 'am-ET-Standard-B',
+ },
+ },
+ ['am-et-wavenet-a']: {
+ voice: {
+ name: 'am-ET-Wavenet-A',
+ },
+ },
+ ['am-et-wavenet-b']: {
+ voice: {
+ name: 'am-ET-Wavenet-B',
+ },
+ },
+ ['aoede']: {
+ voice: {
+ name: 'Aoede',
+ },
+ },
+ ['ar-xa-chirp3-hd-achernar']: {
+ voice: {
+ name: 'ar-XA-Chirp3-HD-Achernar',
+ },
+ },
+ ['ar-xa-chirp3-hd-achird']: {
+ voice: {
+ name: 'ar-XA-Chirp3-HD-Achird',
+ },
+ },
+ ['ar-xa-chirp3-hd-algenib']: {
+ voice: {
+ name: 'ar-XA-Chirp3-HD-Algenib',
+ },
+ },
+ ['ar-xa-chirp3-hd-algieba']: {
+ voice: {
+ name: 'ar-XA-Chirp3-HD-Algieba',
+ },
+ },
+ ['ar-xa-chirp3-hd-alnilam']: {
+ voice: {
+ name: 'ar-XA-Chirp3-HD-Alnilam',
+ },
+ },
+ ['ar-xa-chirp3-hd-aoede']: {
+ voice: {
+ name: 'ar-XA-Chirp3-HD-Aoede',
+ },
+ },
+ ['ar-xa-chirp3-hd-autonoe']: {
+ voice: {
+ name: 'ar-XA-Chirp3-HD-Autonoe',
+ },
+ },
+ ['ar-xa-chirp3-hd-callirrhoe']: {
+ voice: {
+ name: 'ar-XA-Chirp3-HD-Callirrhoe',
+ },
+ },
+ ['ar-xa-chirp3-hd-charon']: {
+ voice: {
+ name: 'ar-XA-Chirp3-HD-Charon',
+ },
+ },
+ ['ar-xa-chirp3-hd-despina']: {
+ voice: {
+ name: 'ar-XA-Chirp3-HD-Despina',
+ },
+ },
+ ['ar-xa-chirp3-hd-enceladus']: {
+ voice: {
+ name: 'ar-XA-Chirp3-HD-Enceladus',
+ },
+ },
+ ['ar-xa-chirp3-hd-erinome']: {
+ voice: {
+ name: 'ar-XA-Chirp3-HD-Erinome',
+ },
+ },
+ ['ar-xa-chirp3-hd-fenrir']: {
+ voice: {
+ name: 'ar-XA-Chirp3-HD-Fenrir',
+ },
+ },
+ ['ar-xa-chirp3-hd-gacrux']: {
+ voice: {
+ name: 'ar-XA-Chirp3-HD-Gacrux',
+ },
+ },
+ ['ar-xa-chirp3-hd-iapetus']: {
+ voice: {
+ name: 'ar-XA-Chirp3-HD-Iapetus',
+ },
+ },
+ ['ar-xa-chirp3-hd-kore']: {
+ voice: {
+ name: 'ar-XA-Chirp3-HD-Kore',
+ },
+ },
+ ['ar-xa-chirp3-hd-laomedeia']: {
+ voice: {
+ name: 'ar-XA-Chirp3-HD-Laomedeia',
+ },
+ },
+ ['ar-xa-chirp3-hd-leda']: {
+ voice: {
+ name: 'ar-XA-Chirp3-HD-Leda',
+ },
+ },
+ ['ar-xa-chirp3-hd-orus']: {
+ voice: {
+ name: 'ar-XA-Chirp3-HD-Orus',
+ },
+ },
+ ['ar-xa-chirp3-hd-puck']: {
+ voice: {
+ name: 'ar-XA-Chirp3-HD-Puck',
+ },
+ },
+ ['ar-xa-chirp3-hd-pulcherrima']: {
+ voice: {
+ name: 'ar-XA-Chirp3-HD-Pulcherrima',
+ },
+ },
+ ['ar-xa-chirp3-hd-rasalgethi']: {
+ voice: {
+ name: 'ar-XA-Chirp3-HD-Rasalgethi',
+ },
+ },
+ ['ar-xa-chirp3-hd-sadachbia']: {
+ voice: {
+ name: 'ar-XA-Chirp3-HD-Sadachbia',
+ },
+ },
+ ['ar-xa-chirp3-hd-sadaltager']: {
+ voice: {
+ name: 'ar-XA-Chirp3-HD-Sadaltager',
+ },
+ },
+ ['ar-xa-chirp3-hd-schedar']: {
+ voice: {
+ name: 'ar-XA-Chirp3-HD-Schedar',
+ },
+ },
+ ['ar-xa-chirp3-hd-sulafat']: {
+ voice: {
+ name: 'ar-XA-Chirp3-HD-Sulafat',
+ },
+ },
+ ['ar-xa-chirp3-hd-umbriel']: {
+ voice: {
+ name: 'ar-XA-Chirp3-HD-Umbriel',
+ },
+ },
+ ['ar-xa-chirp3-hd-vindemiatrix']: {
+ voice: {
+ name: 'ar-XA-Chirp3-HD-Vindemiatrix',
+ },
+ },
+ ['ar-xa-chirp3-hd-zephyr']: {
+ voice: {
+ name: 'ar-XA-Chirp3-HD-Zephyr',
+ },
+ },
+ ['ar-xa-chirp3-hd-zubenelgenubi']: {
+ voice: {
+ name: 'ar-XA-Chirp3-HD-Zubenelgenubi',
+ },
+ },
+ ['ar-xa-standard-a']: {
+ voice: {
+ name: 'ar-XA-Standard-A',
+ },
+ },
+ ['ar-xa-standard-b']: {
+ voice: {
+ name: 'ar-XA-Standard-B',
+ },
+ },
+ ['ar-xa-standard-c']: {
+ voice: {
+ name: 'ar-XA-Standard-C',
+ },
+ },
+ ['ar-xa-standard-d']: {
+ voice: {
+ name: 'ar-XA-Standard-D',
+ },
+ },
+ ['ar-xa-wavenet-a']: {
+ voice: {
+ name: 'ar-XA-Wavenet-A',
+ },
+ },
+ ['ar-xa-wavenet-b']: {
+ voice: {
+ name: 'ar-XA-Wavenet-B',
+ },
+ },
+ ['ar-xa-wavenet-c']: {
+ voice: {
+ name: 'ar-XA-Wavenet-C',
+ },
+ },
+ ['ar-xa-wavenet-d']: {
+ voice: {
+ name: 'ar-XA-Wavenet-D',
+ },
+ },
+ ['autonoe']: {
+ voice: {
+ name: 'Autonoe',
+ },
+ },
+ ['bg-bg-standard-b']: {
+ voice: {
+ name: 'bg-BG-Standard-B',
+ },
+ },
+ ['bn-in-chirp3-hd-achernar']: {
+ voice: {
+ name: 'bn-IN-Chirp3-HD-Achernar',
+ },
+ },
+ ['bn-in-chirp3-hd-achird']: {
+ voice: {
+ name: 'bn-IN-Chirp3-HD-Achird',
+ },
+ },
+ ['bn-in-chirp3-hd-algenib']: {
+ voice: {
+ name: 'bn-IN-Chirp3-HD-Algenib',
+ },
+ },
+ ['bn-in-chirp3-hd-algieba']: {
+ voice: {
+ name: 'bn-IN-Chirp3-HD-Algieba',
+ },
+ },
+ ['bn-in-chirp3-hd-alnilam']: {
+ voice: {
+ name: 'bn-IN-Chirp3-HD-Alnilam',
+ },
+ },
+ ['bn-in-chirp3-hd-aoede']: {
+ voice: {
+ name: 'bn-IN-Chirp3-HD-Aoede',
+ },
+ },
+ ['bn-in-chirp3-hd-autonoe']: {
+ voice: {
+ name: 'bn-IN-Chirp3-HD-Autonoe',
+ },
+ },
+ ['bn-in-chirp3-hd-callirrhoe']: {
+ voice: {
+ name: 'bn-IN-Chirp3-HD-Callirrhoe',
+ },
+ },
+ ['bn-in-chirp3-hd-charon']: {
+ voice: {
+ name: 'bn-IN-Chirp3-HD-Charon',
+ },
+ },
+ ['bn-in-chirp3-hd-despina']: {
+ voice: {
+ name: 'bn-IN-Chirp3-HD-Despina',
+ },
+ },
+ ['bn-in-chirp3-hd-enceladus']: {
+ voice: {
+ name: 'bn-IN-Chirp3-HD-Enceladus',
+ },
+ },
+ ['bn-in-chirp3-hd-erinome']: {
+ voice: {
+ name: 'bn-IN-Chirp3-HD-Erinome',
+ },
+ },
+ ['bn-in-chirp3-hd-fenrir']: {
+ voice: {
+ name: 'bn-IN-Chirp3-HD-Fenrir',
+ },
+ },
+ ['bn-in-chirp3-hd-gacrux']: {
+ voice: {
+ name: 'bn-IN-Chirp3-HD-Gacrux',
+ },
+ },
+ ['bn-in-chirp3-hd-iapetus']: {
+ voice: {
+ name: 'bn-IN-Chirp3-HD-Iapetus',
+ },
+ },
+ ['bn-in-chirp3-hd-kore']: {
+ voice: {
+ name: 'bn-IN-Chirp3-HD-Kore',
+ },
+ },
+ ['bn-in-chirp3-hd-laomedeia']: {
+ voice: {
+ name: 'bn-IN-Chirp3-HD-Laomedeia',
+ },
+ },
+ ['bn-in-chirp3-hd-leda']: {
+ voice: {
+ name: 'bn-IN-Chirp3-HD-Leda',
+ },
+ },
+ ['bn-in-chirp3-hd-orus']: {
+ voice: {
+ name: 'bn-IN-Chirp3-HD-Orus',
+ },
+ },
+ ['bn-in-chirp3-hd-puck']: {
+ voice: {
+ name: 'bn-IN-Chirp3-HD-Puck',
+ },
+ },
+ ['bn-in-chirp3-hd-pulcherrima']: {
+ voice: {
+ name: 'bn-IN-Chirp3-HD-Pulcherrima',
+ },
+ },
+ ['bn-in-chirp3-hd-rasalgethi']: {
+ voice: {
+ name: 'bn-IN-Chirp3-HD-Rasalgethi',
+ },
+ },
+ ['bn-in-chirp3-hd-sadachbia']: {
+ voice: {
+ name: 'bn-IN-Chirp3-HD-Sadachbia',
+ },
+ },
+ ['bn-in-chirp3-hd-sadaltager']: {
+ voice: {
+ name: 'bn-IN-Chirp3-HD-Sadaltager',
+ },
+ },
+ ['bn-in-chirp3-hd-schedar']: {
+ voice: {
+ name: 'bn-IN-Chirp3-HD-Schedar',
+ },
+ },
+ ['bn-in-chirp3-hd-sulafat']: {
+ voice: {
+ name: 'bn-IN-Chirp3-HD-Sulafat',
+ },
+ },
+ ['bn-in-chirp3-hd-umbriel']: {
+ voice: {
+ name: 'bn-IN-Chirp3-HD-Umbriel',
+ },
+ },
+ ['bn-in-chirp3-hd-vindemiatrix']: {
+ voice: {
+ name: 'bn-IN-Chirp3-HD-Vindemiatrix',
+ },
+ },
+ ['bn-in-chirp3-hd-zephyr']: {
+ voice: {
+ name: 'bn-IN-Chirp3-HD-Zephyr',
+ },
+ },
+ ['bn-in-chirp3-hd-zubenelgenubi']: {
+ voice: {
+ name: 'bn-IN-Chirp3-HD-Zubenelgenubi',
+ },
+ },
+ ['bn-in-standard-a']: {
+ voice: {
+ name: 'bn-IN-Standard-A',
+ },
+ },
+ ['bn-in-standard-b']: {
+ voice: {
+ name: 'bn-IN-Standard-B',
+ },
+ },
+ ['bn-in-standard-c']: {
+ voice: {
+ name: 'bn-IN-Standard-C',
+ },
+ },
+ ['bn-in-standard-d']: {
+ voice: {
+ name: 'bn-IN-Standard-D',
+ },
+ },
+ ['bn-in-wavenet-a']: {
+ voice: {
+ name: 'bn-IN-Wavenet-A',
+ },
+ },
+ ['bn-in-wavenet-b']: {
+ voice: {
+ name: 'bn-IN-Wavenet-B',
+ },
+ },
+ ['bn-in-wavenet-c']: {
+ voice: {
+ name: 'bn-IN-Wavenet-C',
+ },
+ },
+ ['bn-in-wavenet-d']: {
+ voice: {
+ name: 'bn-IN-Wavenet-D',
+ },
+ },
+ ['ca-es-standard-b']: {
+ voice: {
+ name: 'ca-ES-Standard-B',
+ },
+ },
+ ['callirrhoe']: {
+ voice: {
+ name: 'Callirrhoe',
+ },
+ },
+ ['charon']: {
+ voice: {
+ name: 'Charon',
+ },
+ },
+ ['cmn-cn-chirp3-hd-achernar']: {
+ voice: {
+ name: 'cmn-CN-Chirp3-HD-Achernar',
+ },
+ },
+ ['cmn-cn-chirp3-hd-achird']: {
+ voice: {
+ name: 'cmn-CN-Chirp3-HD-Achird',
+ },
+ },
+ ['cmn-cn-chirp3-hd-algenib']: {
+ voice: {
+ name: 'cmn-CN-Chirp3-HD-Algenib',
+ },
+ },
+ ['cmn-cn-chirp3-hd-algieba']: {
+ voice: {
+ name: 'cmn-CN-Chirp3-HD-Algieba',
+ },
+ },
+ ['cmn-cn-chirp3-hd-alnilam']: {
+ voice: {
+ name: 'cmn-CN-Chirp3-HD-Alnilam',
+ },
+ },
+ ['cmn-cn-chirp3-hd-aoede']: {
+ voice: {
+ name: 'cmn-CN-Chirp3-HD-Aoede',
+ },
+ },
+ ['cmn-cn-chirp3-hd-autonoe']: {
+ voice: {
+ name: 'cmn-CN-Chirp3-HD-Autonoe',
+ },
+ },
+ ['cmn-cn-chirp3-hd-callirrhoe']: {
+ voice: {
+ name: 'cmn-CN-Chirp3-HD-Callirrhoe',
+ },
+ },
+ ['cmn-cn-chirp3-hd-charon']: {
+ voice: {
+ name: 'cmn-CN-Chirp3-HD-Charon',
+ },
+ },
+ ['cmn-cn-chirp3-hd-despina']: {
+ voice: {
+ name: 'cmn-CN-Chirp3-HD-Despina',
+ },
+ },
+ ['cmn-cn-chirp3-hd-enceladus']: {
+ voice: {
+ name: 'cmn-CN-Chirp3-HD-Enceladus',
+ },
+ },
+ ['cmn-cn-chirp3-hd-erinome']: {
+ voice: {
+ name: 'cmn-CN-Chirp3-HD-Erinome',
+ },
+ },
+ ['cmn-cn-chirp3-hd-fenrir']: {
+ voice: {
+ name: 'cmn-CN-Chirp3-HD-Fenrir',
+ },
+ },
+ ['cmn-cn-chirp3-hd-gacrux']: {
+ voice: {
+ name: 'cmn-CN-Chirp3-HD-Gacrux',
+ },
+ },
+ ['cmn-cn-chirp3-hd-iapetus']: {
+ voice: {
+ name: 'cmn-CN-Chirp3-HD-Iapetus',
+ },
+ },
+ ['cmn-cn-chirp3-hd-kore']: {
+ voice: {
+ name: 'cmn-CN-Chirp3-HD-Kore',
+ },
+ },
+ ['cmn-cn-chirp3-hd-laomedeia']: {
+ voice: {
+ name: 'cmn-CN-Chirp3-HD-Laomedeia',
+ },
+ },
+ ['cmn-cn-chirp3-hd-leda']: {
+ voice: {
+ name: 'cmn-CN-Chirp3-HD-Leda',
+ },
+ },
+ ['cmn-cn-chirp3-hd-orus']: {
+ voice: {
+ name: 'cmn-CN-Chirp3-HD-Orus',
+ },
+ },
+ ['cmn-cn-chirp3-hd-puck']: {
+ voice: {
+ name: 'cmn-CN-Chirp3-HD-Puck',
+ },
+ },
+ ['cmn-cn-chirp3-hd-pulcherrima']: {
+ voice: {
+ name: 'cmn-CN-Chirp3-HD-Pulcherrima',
+ },
+ },
+ ['cmn-cn-chirp3-hd-rasalgethi']: {
+ voice: {
+ name: 'cmn-CN-Chirp3-HD-Rasalgethi',
+ },
+ },
+ ['cmn-cn-chirp3-hd-sadachbia']: {
+ voice: {
+ name: 'cmn-CN-Chirp3-HD-Sadachbia',
+ },
+ },
+ ['cmn-cn-chirp3-hd-sadaltager']: {
+ voice: {
+ name: 'cmn-CN-Chirp3-HD-Sadaltager',
+ },
+ },
+ ['cmn-cn-chirp3-hd-schedar']: {
+ voice: {
+ name: 'cmn-CN-Chirp3-HD-Schedar',
+ },
+ },
+ ['cmn-cn-chirp3-hd-sulafat']: {
+ voice: {
+ name: 'cmn-CN-Chirp3-HD-Sulafat',
+ },
+ },
+ ['cmn-cn-chirp3-hd-umbriel']: {
+ voice: {
+ name: 'cmn-CN-Chirp3-HD-Umbriel',
+ },
+ },
+ ['cmn-cn-chirp3-hd-vindemiatrix']: {
+ voice: {
+ name: 'cmn-CN-Chirp3-HD-Vindemiatrix',
+ },
+ },
+ ['cmn-cn-chirp3-hd-zephyr']: {
+ voice: {
+ name: 'cmn-CN-Chirp3-HD-Zephyr',
+ },
+ },
+ ['cmn-cn-chirp3-hd-zubenelgenubi']: {
+ voice: {
+ name: 'cmn-CN-Chirp3-HD-Zubenelgenubi',
+ },
+ },
+ ['cmn-cn-standard-a']: {
+ voice: {
+ name: 'cmn-CN-Standard-A',
+ },
+ },
+ ['cmn-cn-standard-b']: {
+ voice: {
+ name: 'cmn-CN-Standard-B',
+ },
+ },
+ ['cmn-cn-standard-c']: {
+ voice: {
+ name: 'cmn-CN-Standard-C',
+ },
+ },
+ ['cmn-cn-standard-d']: {
+ voice: {
+ name: 'cmn-CN-Standard-D',
+ },
+ },
+ ['cmn-cn-wavenet-a']: {
+ voice: {
+ name: 'cmn-CN-Wavenet-A',
+ },
+ },
+ ['cmn-cn-wavenet-b']: {
+ voice: {
+ name: 'cmn-CN-Wavenet-B',
+ },
+ },
+ ['cmn-cn-wavenet-c']: {
+ voice: {
+ name: 'cmn-CN-Wavenet-C',
+ },
+ },
+ ['cmn-cn-wavenet-d']: {
+ voice: {
+ name: 'cmn-CN-Wavenet-D',
+ },
+ },
+ ['cmn-tw-standard-a']: {
+ voice: {
+ name: 'cmn-TW-Standard-A',
+ },
+ },
+ ['cmn-tw-standard-b']: {
+ voice: {
+ name: 'cmn-TW-Standard-B',
+ },
+ },
+ ['cmn-tw-standard-c']: {
+ voice: {
+ name: 'cmn-TW-Standard-C',
+ },
+ },
+ ['cmn-tw-wavenet-a']: {
+ voice: {
+ name: 'cmn-TW-Wavenet-A',
+ },
+ },
+ ['cmn-tw-wavenet-b']: {
+ voice: {
+ name: 'cmn-TW-Wavenet-B',
+ },
+ },
+ ['cmn-tw-wavenet-c']: {
+ voice: {
+ name: 'cmn-TW-Wavenet-C',
+ },
+ },
+ ['cs-cz-standard-b']: {
+ voice: {
+ name: 'cs-CZ-Standard-B',
+ },
+ },
+ ['cs-cz-wavenet-b']: {
+ voice: {
+ name: 'cs-CZ-Wavenet-B',
+ },
+ },
+ ['da-dk-chirp3-hd-achernar']: {
+ voice: {
+ name: 'da-DK-Chirp3-HD-Achernar',
+ },
+ },
+ ['da-dk-chirp3-hd-achird']: {
+ voice: {
+ name: 'da-DK-Chirp3-HD-Achird',
+ },
+ },
+ ['da-dk-chirp3-hd-algenib']: {
+ voice: {
+ name: 'da-DK-Chirp3-HD-Algenib',
+ },
+ },
+ ['da-dk-chirp3-hd-algieba']: {
+ voice: {
+ name: 'da-DK-Chirp3-HD-Algieba',
+ },
+ },
+ ['da-dk-chirp3-hd-alnilam']: {
+ voice: {
+ name: 'da-DK-Chirp3-HD-Alnilam',
+ },
+ },
+ ['da-dk-chirp3-hd-aoede']: {
+ voice: {
+ name: 'da-DK-Chirp3-HD-Aoede',
+ },
+ },
+ ['da-dk-chirp3-hd-autonoe']: {
+ voice: {
+ name: 'da-DK-Chirp3-HD-Autonoe',
+ },
+ },
+ ['da-dk-chirp3-hd-callirrhoe']: {
+ voice: {
+ name: 'da-DK-Chirp3-HD-Callirrhoe',
+ },
+ },
+ ['da-dk-chirp3-hd-charon']: {
+ voice: {
+ name: 'da-DK-Chirp3-HD-Charon',
+ },
+ },
+ ['da-dk-chirp3-hd-despina']: {
+ voice: {
+ name: 'da-DK-Chirp3-HD-Despina',
+ },
+ },
+ ['da-dk-chirp3-hd-enceladus']: {
+ voice: {
+ name: 'da-DK-Chirp3-HD-Enceladus',
+ },
+ },
+ ['da-dk-chirp3-hd-erinome']: {
+ voice: {
+ name: 'da-DK-Chirp3-HD-Erinome',
+ },
+ },
+ ['da-dk-chirp3-hd-fenrir']: {
+ voice: {
+ name: 'da-DK-Chirp3-HD-Fenrir',
+ },
+ },
+ ['da-dk-chirp3-hd-gacrux']: {
+ voice: {
+ name: 'da-DK-Chirp3-HD-Gacrux',
+ },
+ },
+ ['da-dk-chirp3-hd-iapetus']: {
+ voice: {
+ name: 'da-DK-Chirp3-HD-Iapetus',
+ },
+ },
+ ['da-dk-chirp3-hd-kore']: {
+ voice: {
+ name: 'da-DK-Chirp3-HD-Kore',
+ },
+ },
+ ['da-dk-chirp3-hd-laomedeia']: {
+ voice: {
+ name: 'da-DK-Chirp3-HD-Laomedeia',
+ },
+ },
+ ['da-dk-chirp3-hd-leda']: {
+ voice: {
+ name: 'da-DK-Chirp3-HD-Leda',
+ },
+ },
+ ['da-dk-chirp3-hd-orus']: {
+ voice: {
+ name: 'da-DK-Chirp3-HD-Orus',
+ },
+ },
+ ['da-dk-chirp3-hd-puck']: {
+ voice: {
+ name: 'da-DK-Chirp3-HD-Puck',
+ },
+ },
+ ['da-dk-chirp3-hd-pulcherrima']: {
+ voice: {
+ name: 'da-DK-Chirp3-HD-Pulcherrima',
+ },
+ },
+ ['da-dk-chirp3-hd-rasalgethi']: {
+ voice: {
+ name: 'da-DK-Chirp3-HD-Rasalgethi',
+ },
+ },
+ ['da-dk-chirp3-hd-sadachbia']: {
+ voice: {
+ name: 'da-DK-Chirp3-HD-Sadachbia',
+ },
+ },
+ ['da-dk-chirp3-hd-sadaltager']: {
+ voice: {
+ name: 'da-DK-Chirp3-HD-Sadaltager',
+ },
+ },
+ ['da-dk-chirp3-hd-schedar']: {
+ voice: {
+ name: 'da-DK-Chirp3-HD-Schedar',
+ },
+ },
+ ['da-dk-chirp3-hd-sulafat']: {
+ voice: {
+ name: 'da-DK-Chirp3-HD-Sulafat',
+ },
+ },
+ ['da-dk-chirp3-hd-umbriel']: {
+ voice: {
+ name: 'da-DK-Chirp3-HD-Umbriel',
+ },
+ },
+ ['da-dk-chirp3-hd-vindemiatrix']: {
+ voice: {
+ name: 'da-DK-Chirp3-HD-Vindemiatrix',
+ },
+ },
+ ['da-dk-chirp3-hd-zephyr']: {
+ voice: {
+ name: 'da-DK-Chirp3-HD-Zephyr',
+ },
+ },
+ ['da-dk-chirp3-hd-zubenelgenubi']: {
+ voice: {
+ name: 'da-DK-Chirp3-HD-Zubenelgenubi',
+ },
+ },
+ ['da-dk-neural2-f']: {
+ voice: {
+ name: 'da-DK-Neural2-F',
+ },
+ },
+ ['da-dk-standard-f']: {
+ voice: {
+ name: 'da-DK-Standard-F',
+ },
+ },
+ ['da-dk-standard-g']: {
+ voice: {
+ name: 'da-DK-Standard-G',
+ },
+ },
+ ['da-dk-wavenet-f']: {
+ voice: {
+ name: 'da-DK-Wavenet-F',
+ },
+ },
+ ['da-dk-wavenet-g']: {
+ voice: {
+ name: 'da-DK-Wavenet-G',
+ },
+ },
+ ['de-de-chirp-hd-d']: {
+ voice: {
+ name: 'de-DE-Chirp-HD-D',
+ },
+ },
+ ['de-de-chirp-hd-f']: {
+ voice: {
+ name: 'de-DE-Chirp-HD-F',
+ },
+ },
+ ['de-de-chirp-hd-o']: {
+ voice: {
+ name: 'de-DE-Chirp-HD-O',
+ },
+ },
+ ['de-de-chirp3-hd-achernar']: {
+ voice: {
+ name: 'de-DE-Chirp3-HD-Achernar',
+ },
+ },
+ ['de-de-chirp3-hd-achird']: {
+ voice: {
+ name: 'de-DE-Chirp3-HD-Achird',
+ },
+ },
+ ['de-de-chirp3-hd-algenib']: {
+ voice: {
+ name: 'de-DE-Chirp3-HD-Algenib',
+ },
+ },
+ ['de-de-chirp3-hd-algieba']: {
+ voice: {
+ name: 'de-DE-Chirp3-HD-Algieba',
+ },
+ },
+ ['de-de-chirp3-hd-alnilam']: {
+ voice: {
+ name: 'de-DE-Chirp3-HD-Alnilam',
+ },
+ },
+ ['de-de-chirp3-hd-aoede']: {
+ voice: {
+ name: 'de-DE-Chirp3-HD-Aoede',
+ },
+ },
+ ['de-de-chirp3-hd-autonoe']: {
+ voice: {
+ name: 'de-DE-Chirp3-HD-Autonoe',
+ },
+ },
+ ['de-de-chirp3-hd-callirrhoe']: {
+ voice: {
+ name: 'de-DE-Chirp3-HD-Callirrhoe',
+ },
+ },
+ ['de-de-chirp3-hd-charon']: {
+ voice: {
+ name: 'de-DE-Chirp3-HD-Charon',
+ },
+ },
+ ['de-de-chirp3-hd-despina']: {
+ voice: {
+ name: 'de-DE-Chirp3-HD-Despina',
+ },
+ },
+ ['de-de-chirp3-hd-enceladus']: {
+ voice: {
+ name: 'de-DE-Chirp3-HD-Enceladus',
+ },
+ },
+ ['de-de-chirp3-hd-erinome']: {
+ voice: {
+ name: 'de-DE-Chirp3-HD-Erinome',
+ },
+ },
+ ['de-de-chirp3-hd-fenrir']: {
+ voice: {
+ name: 'de-DE-Chirp3-HD-Fenrir',
+ },
+ },
+ ['de-de-chirp3-hd-gacrux']: {
+ voice: {
+ name: 'de-DE-Chirp3-HD-Gacrux',
+ },
+ },
+ ['de-de-chirp3-hd-iapetus']: {
+ voice: {
+ name: 'de-DE-Chirp3-HD-Iapetus',
+ },
+ },
+ ['de-de-chirp3-hd-kore']: {
+ voice: {
+ name: 'de-DE-Chirp3-HD-Kore',
+ },
+ },
+ ['de-de-chirp3-hd-laomedeia']: {
+ voice: {
+ name: 'de-DE-Chirp3-HD-Laomedeia',
+ },
+ },
+ ['de-de-chirp3-hd-leda']: {
+ voice: {
+ name: 'de-DE-Chirp3-HD-Leda',
+ },
+ },
+ ['de-de-chirp3-hd-orus']: {
+ voice: {
+ name: 'de-DE-Chirp3-HD-Orus',
+ },
+ },
+ ['de-de-chirp3-hd-puck']: {
+ voice: {
+ name: 'de-DE-Chirp3-HD-Puck',
+ },
+ },
+ ['de-de-chirp3-hd-pulcherrima']: {
+ voice: {
+ name: 'de-DE-Chirp3-HD-Pulcherrima',
+ },
+ },
+ ['de-de-chirp3-hd-rasalgethi']: {
+ voice: {
+ name: 'de-DE-Chirp3-HD-Rasalgethi',
+ },
+ },
+ ['de-de-chirp3-hd-sadachbia']: {
+ voice: {
+ name: 'de-DE-Chirp3-HD-Sadachbia',
+ },
+ },
+ ['de-de-chirp3-hd-sadaltager']: {
+ voice: {
+ name: 'de-DE-Chirp3-HD-Sadaltager',
+ },
+ },
+ ['de-de-chirp3-hd-schedar']: {
+ voice: {
+ name: 'de-DE-Chirp3-HD-Schedar',
+ },
+ },
+ ['de-de-chirp3-hd-sulafat']: {
+ voice: {
+ name: 'de-DE-Chirp3-HD-Sulafat',
+ },
+ },
+ ['de-de-chirp3-hd-umbriel']: {
+ voice: {
+ name: 'de-DE-Chirp3-HD-Umbriel',
+ },
+ },
+ ['de-de-chirp3-hd-vindemiatrix']: {
+ voice: {
+ name: 'de-DE-Chirp3-HD-Vindemiatrix',
+ },
+ },
+ ['de-de-chirp3-hd-zephyr']: {
+ voice: {
+ name: 'de-DE-Chirp3-HD-Zephyr',
+ },
+ },
+ ['de-de-chirp3-hd-zubenelgenubi']: {
+ voice: {
+ name: 'de-DE-Chirp3-HD-Zubenelgenubi',
+ },
+ },
+ ['de-de-neural2-g']: {
+ voice: {
+ name: 'de-DE-Neural2-G',
+ },
+ },
+ ['de-de-neural2-h']: {
+ voice: {
+ name: 'de-DE-Neural2-H',
+ },
+ },
+ ['de-de-polyglot-1']: {
+ voice: {
+ name: 'de-DE-Polyglot-1',
+ },
+ },
+ ['de-de-standard-g']: {
+ voice: {
+ name: 'de-DE-Standard-G',
+ },
+ },
+ ['de-de-standard-h']: {
+ voice: {
+ name: 'de-DE-Standard-H',
+ },
+ },
+ ['de-de-studio-b']: {
+ voice: {
+ name: 'de-DE-Studio-B',
+ },
+ },
+ ['de-de-studio-c']: {
+ voice: {
+ name: 'de-DE-Studio-C',
+ },
+ },
+ ['de-de-wavenet-g']: {
+ voice: {
+ name: 'de-DE-Wavenet-G',
+ },
+ },
+ ['de-de-wavenet-h']: {
+ voice: {
+ name: 'de-DE-Wavenet-H',
+ },
+ },
+ ['despina']: {
+ voice: {
+ name: 'Despina',
+ },
+ },
+ ['el-gr-standard-b']: {
+ voice: {
+ name: 'el-GR-Standard-B',
+ },
+ },
+ ['el-gr-wavenet-b']: {
+ voice: {
+ name: 'el-GR-Wavenet-B',
+ },
+ },
+ ['en-au-chirp-hd-d']: {
+ voice: {
+ name: 'en-AU-Chirp-HD-D',
+ },
+ },
+ ['en-au-chirp-hd-f']: {
+ voice: {
+ name: 'en-AU-Chirp-HD-F',
+ },
+ },
+ ['en-au-chirp-hd-o']: {
+ voice: {
+ name: 'en-AU-Chirp-HD-O',
+ },
+ },
+ ['en-au-chirp3-hd-achernar']: {
+ voice: {
+ name: 'en-AU-Chirp3-HD-Achernar',
+ },
+ },
+ ['en-au-chirp3-hd-achird']: {
+ voice: {
+ name: 'en-AU-Chirp3-HD-Achird',
+ },
+ },
+ ['en-au-chirp3-hd-algenib']: {
+ voice: {
+ name: 'en-AU-Chirp3-HD-Algenib',
+ },
+ },
+ ['en-au-chirp3-hd-algieba']: {
+ voice: {
+ name: 'en-AU-Chirp3-HD-Algieba',
+ },
+ },
+ ['en-au-chirp3-hd-alnilam']: {
+ voice: {
+ name: 'en-AU-Chirp3-HD-Alnilam',
+ },
+ },
+ ['en-au-chirp3-hd-aoede']: {
+ voice: {
+ name: 'en-AU-Chirp3-HD-Aoede',
+ },
+ },
+ ['en-au-chirp3-hd-autonoe']: {
+ voice: {
+ name: 'en-AU-Chirp3-HD-Autonoe',
+ },
+ },
+ ['en-au-chirp3-hd-callirrhoe']: {
+ voice: {
+ name: 'en-AU-Chirp3-HD-Callirrhoe',
+ },
+ },
+ ['en-au-chirp3-hd-charon']: {
+ voice: {
+ name: 'en-AU-Chirp3-HD-Charon',
+ },
+ },
+ ['en-au-chirp3-hd-despina']: {
+ voice: {
+ name: 'en-AU-Chirp3-HD-Despina',
+ },
+ },
+ ['en-au-chirp3-hd-enceladus']: {
+ voice: {
+ name: 'en-AU-Chirp3-HD-Enceladus',
+ },
+ },
+ ['en-au-chirp3-hd-erinome']: {
+ voice: {
+ name: 'en-AU-Chirp3-HD-Erinome',
+ },
+ },
+ ['en-au-chirp3-hd-fenrir']: {
+ voice: {
+ name: 'en-AU-Chirp3-HD-Fenrir',
+ },
+ },
+ ['en-au-chirp3-hd-gacrux']: {
+ voice: {
+ name: 'en-AU-Chirp3-HD-Gacrux',
+ },
+ },
+ ['en-au-chirp3-hd-iapetus']: {
+ voice: {
+ name: 'en-AU-Chirp3-HD-Iapetus',
+ },
+ },
+ ['en-au-chirp3-hd-kore']: {
+ voice: {
+ name: 'en-AU-Chirp3-HD-Kore',
+ },
+ },
+ ['en-au-chirp3-hd-laomedeia']: {
+ voice: {
+ name: 'en-AU-Chirp3-HD-Laomedeia',
+ },
+ },
+ ['en-au-chirp3-hd-leda']: {
+ voice: {
+ name: 'en-AU-Chirp3-HD-Leda',
+ },
+ },
+ ['en-au-chirp3-hd-orus']: {
+ voice: {
+ name: 'en-AU-Chirp3-HD-Orus',
+ },
+ },
+ ['en-au-chirp3-hd-puck']: {
+ voice: {
+ name: 'en-AU-Chirp3-HD-Puck',
+ },
+ },
+ ['en-au-chirp3-hd-pulcherrima']: {
+ voice: {
+ name: 'en-AU-Chirp3-HD-Pulcherrima',
+ },
+ },
+ ['en-au-chirp3-hd-rasalgethi']: {
+ voice: {
+ name: 'en-AU-Chirp3-HD-Rasalgethi',
+ },
+ },
+ ['en-au-chirp3-hd-sadachbia']: {
+ voice: {
+ name: 'en-AU-Chirp3-HD-Sadachbia',
+ },
+ },
+ ['en-au-chirp3-hd-sadaltager']: {
+ voice: {
+ name: 'en-AU-Chirp3-HD-Sadaltager',
+ },
+ },
+ ['en-au-chirp3-hd-schedar']: {
+ voice: {
+ name: 'en-AU-Chirp3-HD-Schedar',
+ },
+ },
+ ['en-au-chirp3-hd-sulafat']: {
+ voice: {
+ name: 'en-AU-Chirp3-HD-Sulafat',
+ },
+ },
+ ['en-au-chirp3-hd-umbriel']: {
+ voice: {
+ name: 'en-AU-Chirp3-HD-Umbriel',
+ },
+ },
+ ['en-au-chirp3-hd-vindemiatrix']: {
+ voice: {
+ name: 'en-AU-Chirp3-HD-Vindemiatrix',
+ },
+ },
+ ['en-au-chirp3-hd-zephyr']: {
+ voice: {
+ name: 'en-AU-Chirp3-HD-Zephyr',
+ },
+ },
+ ['en-au-chirp3-hd-zubenelgenubi']: {
+ voice: {
+ name: 'en-AU-Chirp3-HD-Zubenelgenubi',
+ },
+ },
+ ['en-au-neural2-a']: {
+ voice: {
+ name: 'en-AU-Neural2-A',
+ },
+ },
+ ['en-au-neural2-b']: {
+ voice: {
+ name: 'en-AU-Neural2-B',
+ },
+ },
+ ['en-au-neural2-c']: {
+ voice: {
+ name: 'en-AU-Neural2-C',
+ },
+ },
+ ['en-au-neural2-d']: {
+ voice: {
+ name: 'en-AU-Neural2-D',
+ },
+ },
+ ['en-au-news-e']: {
+ voice: {
+ name: 'en-AU-News-E',
+ },
+ },
+ ['en-au-news-f']: {
+ voice: {
+ name: 'en-AU-News-F',
+ },
+ },
+ ['en-au-news-g']: {
+ voice: {
+ name: 'en-AU-News-G',
+ },
+ },
+ ['en-au-polyglot-1']: {
+ voice: {
+ name: 'en-AU-Polyglot-1',
+ },
+ },
+ ['en-au-standard-a']: {
+ voice: {
+ name: 'en-AU-Standard-A',
+ },
+ },
+ ['en-au-standard-b']: {
+ voice: {
+ name: 'en-AU-Standard-B',
+ },
+ },
+ ['en-au-standard-c']: {
+ voice: {
+ name: 'en-AU-Standard-C',
+ },
+ },
+ ['en-au-standard-d']: {
+ voice: {
+ name: 'en-AU-Standard-D',
+ },
+ },
+ ['en-au-wavenet-a']: {
+ voice: {
+ name: 'en-AU-Wavenet-A',
+ },
+ },
+ ['en-au-wavenet-b']: {
+ voice: {
+ name: 'en-AU-Wavenet-B',
+ },
+ },
+ ['en-au-wavenet-c']: {
+ voice: {
+ name: 'en-AU-Wavenet-C',
+ },
+ },
+ ['en-au-wavenet-d']: {
+ voice: {
+ name: 'en-AU-Wavenet-D',
+ },
+ },
+ ['en-gb-chirp-hd-d']: {
+ voice: {
+ name: 'en-GB-Chirp-HD-D',
+ },
+ },
+ ['en-gb-chirp-hd-f']: {
+ voice: {
+ name: 'en-GB-Chirp-HD-F',
+ },
+ },
+ ['en-gb-chirp-hd-o']: {
+ voice: {
+ name: 'en-GB-Chirp-HD-O',
+ },
+ },
+ ['en-gb-chirp3-hd-achernar']: {
+ voice: {
+ name: 'en-GB-Chirp3-HD-Achernar',
+ },
+ },
+ ['en-gb-chirp3-hd-achird']: {
+ voice: {
+ name: 'en-GB-Chirp3-HD-Achird',
+ },
+ },
+ ['en-gb-chirp3-hd-algenib']: {
+ voice: {
+ name: 'en-GB-Chirp3-HD-Algenib',
+ },
+ },
+ ['en-gb-chirp3-hd-algieba']: {
+ voice: {
+ name: 'en-GB-Chirp3-HD-Algieba',
+ },
+ },
+ ['en-gb-chirp3-hd-alnilam']: {
+ voice: {
+ name: 'en-GB-Chirp3-HD-Alnilam',
+ },
+ },
+ ['en-gb-chirp3-hd-aoede']: {
+ voice: {
+ name: 'en-GB-Chirp3-HD-Aoede',
+ },
+ },
+ ['en-gb-chirp3-hd-autonoe']: {
+ voice: {
+ name: 'en-GB-Chirp3-HD-Autonoe',
+ },
+ },
+ ['en-gb-chirp3-hd-callirrhoe']: {
+ voice: {
+ name: 'en-GB-Chirp3-HD-Callirrhoe',
+ },
+ },
+ ['en-gb-chirp3-hd-charon']: {
+ voice: {
+ name: 'en-GB-Chirp3-HD-Charon',
+ },
+ },
+ ['en-gb-chirp3-hd-despina']: {
+ voice: {
+ name: 'en-GB-Chirp3-HD-Despina',
+ },
+ },
+ ['en-gb-chirp3-hd-enceladus']: {
+ voice: {
+ name: 'en-GB-Chirp3-HD-Enceladus',
+ },
+ },
+ ['en-gb-chirp3-hd-erinome']: {
+ voice: {
+ name: 'en-GB-Chirp3-HD-Erinome',
+ },
+ },
+ ['en-gb-chirp3-hd-fenrir']: {
+ voice: {
+ name: 'en-GB-Chirp3-HD-Fenrir',
+ },
+ },
+ ['en-gb-chirp3-hd-gacrux']: {
+ voice: {
+ name: 'en-GB-Chirp3-HD-Gacrux',
+ },
+ },
+ ['en-gb-chirp3-hd-iapetus']: {
+ voice: {
+ name: 'en-GB-Chirp3-HD-Iapetus',
+ },
+ },
+ ['en-gb-chirp3-hd-kore']: {
+ voice: {
+ name: 'en-GB-Chirp3-HD-Kore',
+ },
+ },
+ ['en-gb-chirp3-hd-laomedeia']: {
+ voice: {
+ name: 'en-GB-Chirp3-HD-Laomedeia',
+ },
+ },
+ ['en-gb-chirp3-hd-leda']: {
+ voice: {
+ name: 'en-GB-Chirp3-HD-Leda',
+ },
+ },
+ ['en-gb-chirp3-hd-orus']: {
+ voice: {
+ name: 'en-GB-Chirp3-HD-Orus',
+ },
+ },
+ ['en-gb-chirp3-hd-puck']: {
+ voice: {
+ name: 'en-GB-Chirp3-HD-Puck',
+ },
+ },
+ ['en-gb-chirp3-hd-pulcherrima']: {
+ voice: {
+ name: 'en-GB-Chirp3-HD-Pulcherrima',
+ },
+ },
+ ['en-gb-chirp3-hd-rasalgethi']: {
+ voice: {
+ name: 'en-GB-Chirp3-HD-Rasalgethi',
+ },
+ },
+ ['en-gb-chirp3-hd-sadachbia']: {
+ voice: {
+ name: 'en-GB-Chirp3-HD-Sadachbia',
+ },
+ },
+ ['en-gb-chirp3-hd-sadaltager']: {
+ voice: {
+ name: 'en-GB-Chirp3-HD-Sadaltager',
+ },
+ },
+ ['en-gb-chirp3-hd-schedar']: {
+ voice: {
+ name: 'en-GB-Chirp3-HD-Schedar',
+ },
+ },
+ ['en-gb-chirp3-hd-sulafat']: {
+ voice: {
+ name: 'en-GB-Chirp3-HD-Sulafat',
+ },
+ },
+ ['en-gb-chirp3-hd-umbriel']: {
+ voice: {
+ name: 'en-GB-Chirp3-HD-Umbriel',
+ },
+ },
+ ['en-gb-chirp3-hd-vindemiatrix']: {
+ voice: {
+ name: 'en-GB-Chirp3-HD-Vindemiatrix',
+ },
+ },
+ ['en-gb-chirp3-hd-zephyr']: {
+ voice: {
+ name: 'en-GB-Chirp3-HD-Zephyr',
+ },
+ },
+ ['en-gb-chirp3-hd-zubenelgenubi']: {
+ voice: {
+ name: 'en-GB-Chirp3-HD-Zubenelgenubi',
+ },
+ },
+ ['en-gb-neural2-a']: {
+ voice: {
+ name: 'en-GB-Neural2-A',
+ },
+ },
+ ['en-gb-neural2-b']: {
+ voice: {
+ name: 'en-GB-Neural2-B',
+ },
+ },
+ ['en-gb-neural2-c']: {
+ voice: {
+ name: 'en-GB-Neural2-C',
+ },
+ },
+ ['en-gb-neural2-d']: {
+ voice: {
+ name: 'en-GB-Neural2-D',
+ },
+ },
+ ['en-gb-neural2-f']: {
+ voice: {
+ name: 'en-GB-Neural2-F',
+ },
+ },
+ ['en-gb-neural2-n']: {
+ voice: {
+ name: 'en-GB-Neural2-N',
+ },
+ },
+ ['en-gb-neural2-o']: {
+ voice: {
+ name: 'en-GB-Neural2-O',
+ },
+ },
+ ['en-gb-news-g']: {
+ voice: {
+ name: 'en-GB-News-G',
+ },
+ },
+ ['en-gb-news-h']: {
+ voice: {
+ name: 'en-GB-News-H',
+ },
+ },
+ ['en-gb-news-i']: {
+ voice: {
+ name: 'en-GB-News-I',
+ },
+ },
+ ['en-gb-news-j']: {
+ voice: {
+ name: 'en-GB-News-J',
+ },
+ },
+ ['en-gb-news-k']: {
+ voice: {
+ name: 'en-GB-News-K',
+ },
+ },
+ ['en-gb-news-l']: {
+ voice: {
+ name: 'en-GB-News-L',
+ },
+ },
+ ['en-gb-news-m']: {
+ voice: {
+ name: 'en-GB-News-M',
+ },
+ },
+ ['en-gb-standard-a']: {
+ voice: {
+ name: 'en-GB-Standard-A',
+ },
+ },
+ ['en-gb-standard-b']: {
+ voice: {
+ name: 'en-GB-Standard-B',
+ },
+ },
+ ['en-gb-standard-c']: {
+ voice: {
+ name: 'en-GB-Standard-C',
+ },
+ },
+ ['en-gb-standard-d']: {
+ voice: {
+ name: 'en-GB-Standard-D',
+ },
+ },
+ ['en-gb-standard-f']: {
+ voice: {
+ name: 'en-GB-Standard-F',
+ },
+ },
+ ['en-gb-standard-n']: {
+ voice: {
+ name: 'en-GB-Standard-N',
+ },
+ },
+ ['en-gb-standard-o']: {
+ voice: {
+ name: 'en-GB-Standard-O',
+ },
+ },
+ ['en-gb-studio-b']: {
+ voice: {
+ name: 'en-GB-Studio-B',
+ },
+ },
+ ['en-gb-studio-c']: {
+ voice: {
+ name: 'en-GB-Studio-C',
+ },
+ },
+ ['en-gb-wavenet-a']: {
+ voice: {
+ name: 'en-GB-Wavenet-A',
+ },
+ },
+ ['en-gb-wavenet-b']: {
+ voice: {
+ name: 'en-GB-Wavenet-B',
+ },
+ },
+ ['en-gb-wavenet-c']: {
+ voice: {
+ name: 'en-GB-Wavenet-C',
+ },
+ },
+ ['en-gb-wavenet-d']: {
+ voice: {
+ name: 'en-GB-Wavenet-D',
+ },
+ },
+ ['en-gb-wavenet-f']: {
+ voice: {
+ name: 'en-GB-Wavenet-F',
+ },
+ },
+ ['en-gb-wavenet-n']: {
+ voice: {
+ name: 'en-GB-Wavenet-N',
+ },
+ },
+ ['en-gb-wavenet-o']: {
+ voice: {
+ name: 'en-GB-Wavenet-O',
+ },
+ },
+ ['en-in-chirp-hd-d']: {
+ voice: {
+ name: 'en-IN-Chirp-HD-D',
+ },
+ },
+ ['en-in-chirp-hd-f']: {
+ voice: {
+ name: 'en-IN-Chirp-HD-F',
+ },
+ },
+ ['en-in-chirp-hd-o']: {
+ voice: {
+ name: 'en-IN-Chirp-HD-O',
+ },
+ },
+ ['en-in-chirp3-hd-achernar']: {
+ voice: {
+ name: 'en-IN-Chirp3-HD-Achernar',
+ },
+ },
+ ['en-in-chirp3-hd-achird']: {
+ voice: {
+ name: 'en-IN-Chirp3-HD-Achird',
+ },
+ },
+ ['en-in-chirp3-hd-algenib']: {
+ voice: {
+ name: 'en-IN-Chirp3-HD-Algenib',
+ },
+ },
+ ['en-in-chirp3-hd-algieba']: {
+ voice: {
+ name: 'en-IN-Chirp3-HD-Algieba',
+ },
+ },
+ ['en-in-chirp3-hd-alnilam']: {
+ voice: {
+ name: 'en-IN-Chirp3-HD-Alnilam',
+ },
+ },
+ ['en-in-chirp3-hd-aoede']: {
+ voice: {
+ name: 'en-IN-Chirp3-HD-Aoede',
+ },
+ },
+ ['en-in-chirp3-hd-autonoe']: {
+ voice: {
+ name: 'en-IN-Chirp3-HD-Autonoe',
+ },
+ },
+ ['en-in-chirp3-hd-callirrhoe']: {
+ voice: {
+ name: 'en-IN-Chirp3-HD-Callirrhoe',
+ },
+ },
+ ['en-in-chirp3-hd-charon']: {
+ voice: {
+ name: 'en-IN-Chirp3-HD-Charon',
+ },
+ },
+ ['en-in-chirp3-hd-despina']: {
+ voice: {
+ name: 'en-IN-Chirp3-HD-Despina',
+ },
+ },
+ ['en-in-chirp3-hd-enceladus']: {
+ voice: {
+ name: 'en-IN-Chirp3-HD-Enceladus',
+ },
+ },
+ ['en-in-chirp3-hd-erinome']: {
+ voice: {
+ name: 'en-IN-Chirp3-HD-Erinome',
+ },
+ },
+ ['en-in-chirp3-hd-fenrir']: {
+ voice: {
+ name: 'en-IN-Chirp3-HD-Fenrir',
+ },
+ },
+ ['en-in-chirp3-hd-gacrux']: {
+ voice: {
+ name: 'en-IN-Chirp3-HD-Gacrux',
+ },
+ },
+ ['en-in-chirp3-hd-iapetus']: {
+ voice: {
+ name: 'en-IN-Chirp3-HD-Iapetus',
+ },
+ },
+ ['en-in-chirp3-hd-kore']: {
+ voice: {
+ name: 'en-IN-Chirp3-HD-Kore',
+ },
+ },
+ ['en-in-chirp3-hd-laomedeia']: {
+ voice: {
+ name: 'en-IN-Chirp3-HD-Laomedeia',
+ },
+ },
+ ['en-in-chirp3-hd-leda']: {
+ voice: {
+ name: 'en-IN-Chirp3-HD-Leda',
+ },
+ },
+ ['en-in-chirp3-hd-orus']: {
+ voice: {
+ name: 'en-IN-Chirp3-HD-Orus',
+ },
+ },
+ ['en-in-chirp3-hd-puck']: {
+ voice: {
+ name: 'en-IN-Chirp3-HD-Puck',
+ },
+ },
+ ['en-in-chirp3-hd-pulcherrima']: {
+ voice: {
+ name: 'en-IN-Chirp3-HD-Pulcherrima',
+ },
+ },
+ ['en-in-chirp3-hd-rasalgethi']: {
+ voice: {
+ name: 'en-IN-Chirp3-HD-Rasalgethi',
+ },
+ },
+ ['en-in-chirp3-hd-sadachbia']: {
+ voice: {
+ name: 'en-IN-Chirp3-HD-Sadachbia',
+ },
+ },
+ ['en-in-chirp3-hd-sadaltager']: {
+ voice: {
+ name: 'en-IN-Chirp3-HD-Sadaltager',
+ },
+ },
+ ['en-in-chirp3-hd-schedar']: {
+ voice: {
+ name: 'en-IN-Chirp3-HD-Schedar',
+ },
+ },
+ ['en-in-chirp3-hd-sulafat']: {
+ voice: {
+ name: 'en-IN-Chirp3-HD-Sulafat',
+ },
+ },
+ ['en-in-chirp3-hd-umbriel']: {
+ voice: {
+ name: 'en-IN-Chirp3-HD-Umbriel',
+ },
+ },
+ ['en-in-chirp3-hd-vindemiatrix']: {
+ voice: {
+ name: 'en-IN-Chirp3-HD-Vindemiatrix',
+ },
+ },
+ ['en-in-chirp3-hd-zephyr']: {
+ voice: {
+ name: 'en-IN-Chirp3-HD-Zephyr',
+ },
+ },
+ ['en-in-chirp3-hd-zubenelgenubi']: {
+ voice: {
+ name: 'en-IN-Chirp3-HD-Zubenelgenubi',
+ },
+ },
+ ['en-in-neural2-a']: {
+ voice: {
+ name: 'en-IN-Neural2-A',
+ },
+ },
+ ['en-in-neural2-b']: {
+ voice: {
+ name: 'en-IN-Neural2-B',
+ },
+ },
+ ['en-in-neural2-c']: {
+ voice: {
+ name: 'en-IN-Neural2-C',
+ },
+ },
+ ['en-in-neural2-d']: {
+ voice: {
+ name: 'en-IN-Neural2-D',
+ },
+ },
+ ['en-in-standard-a']: {
+ voice: {
+ name: 'en-IN-Standard-A',
+ },
+ },
+ ['en-in-standard-b']: {
+ voice: {
+ name: 'en-IN-Standard-B',
+ },
+ },
+ ['en-in-standard-c']: {
+ voice: {
+ name: 'en-IN-Standard-C',
+ },
+ },
+ ['en-in-standard-d']: {
+ voice: {
+ name: 'en-IN-Standard-D',
+ },
+ },
+ ['en-in-standard-e']: {
+ voice: {
+ name: 'en-IN-Standard-E',
+ },
+ },
+ ['en-in-standard-f']: {
+ voice: {
+ name: 'en-IN-Standard-F',
+ },
+ },
+ ['en-in-wavenet-a']: {
+ voice: {
+ name: 'en-IN-Wavenet-A',
+ },
+ },
+ ['en-in-wavenet-b']: {
+ voice: {
+ name: 'en-IN-Wavenet-B',
+ },
+ },
+ ['en-in-wavenet-c']: {
+ voice: {
+ name: 'en-IN-Wavenet-C',
+ },
+ },
+ ['en-in-wavenet-d']: {
+ voice: {
+ name: 'en-IN-Wavenet-D',
+ },
+ },
+ ['en-in-wavenet-e']: {
+ voice: {
+ name: 'en-IN-Wavenet-E',
+ },
+ },
+ ['en-in-wavenet-f']: {
+ voice: {
+ name: 'en-IN-Wavenet-F',
+ },
+ },
+ ['en-us-casual-k']: {
+ voice: {
+ name: 'en-US-Casual-K',
+ },
+ },
+ ['en-us-chirp-hd-d']: {
+ voice: {
+ name: 'en-US-Chirp-HD-D',
+ },
+ },
+ ['en-us-chirp-hd-f']: {
+ voice: {
+ name: 'en-US-Chirp-HD-F',
+ },
+ },
+ ['en-us-chirp-hd-o']: {
+ voice: {
+ name: 'en-US-Chirp-HD-O',
+ },
+ },
+ ['en-us-chirp3-hd-achernar']: {
+ voice: {
+ name: 'en-US-Chirp3-HD-Achernar',
+ },
+ },
+ ['en-us-chirp3-hd-achird']: {
+ voice: {
+ name: 'en-US-Chirp3-HD-Achird',
+ },
+ },
+ ['en-us-chirp3-hd-algenib']: {
+ voice: {
+ name: 'en-US-Chirp3-HD-Algenib',
+ },
+ },
+ ['en-us-chirp3-hd-algieba']: {
+ voice: {
+ name: 'en-US-Chirp3-HD-Algieba',
+ },
+ },
+ ['en-us-chirp3-hd-alnilam']: {
+ voice: {
+ name: 'en-US-Chirp3-HD-Alnilam',
+ },
+ },
+ ['en-us-chirp3-hd-aoede']: {
+ voice: {
+ name: 'en-US-Chirp3-HD-Aoede',
+ },
+ },
+ ['en-us-chirp3-hd-autonoe']: {
+ voice: {
+ name: 'en-US-Chirp3-HD-Autonoe',
+ },
+ },
+ ['en-us-chirp3-hd-callirrhoe']: {
+ voice: {
+ name: 'en-US-Chirp3-HD-Callirrhoe',
+ },
+ },
+ ['en-us-chirp3-hd-charon']: {
+ voice: {
+ name: 'en-US-Chirp3-HD-Charon',
+ },
+ },
+ ['en-us-chirp3-hd-despina']: {
+ voice: {
+ name: 'en-US-Chirp3-HD-Despina',
+ },
+ },
+ ['en-us-chirp3-hd-enceladus']: {
+ voice: {
+ name: 'en-US-Chirp3-HD-Enceladus',
+ },
+ },
+ ['en-us-chirp3-hd-erinome']: {
+ voice: {
+ name: 'en-US-Chirp3-HD-Erinome',
+ },
+ },
+ ['en-us-chirp3-hd-fenrir']: {
+ voice: {
+ name: 'en-US-Chirp3-HD-Fenrir',
+ },
+ },
+ ['en-us-chirp3-hd-gacrux']: {
+ voice: {
+ name: 'en-US-Chirp3-HD-Gacrux',
+ },
+ },
+ ['en-us-chirp3-hd-iapetus']: {
+ voice: {
+ name: 'en-US-Chirp3-HD-Iapetus',
+ },
+ },
+ ['en-us-chirp3-hd-kore']: {
+ voice: {
+ name: 'en-US-Chirp3-HD-Kore',
+ },
+ },
+ ['en-us-chirp3-hd-laomedeia']: {
+ voice: {
+ name: 'en-US-Chirp3-HD-Laomedeia',
+ },
+ },
+ ['en-us-chirp3-hd-leda']: {
+ voice: {
+ name: 'en-US-Chirp3-HD-Leda',
+ },
+ },
+ ['en-us-chirp3-hd-orus']: {
+ voice: {
+ name: 'en-US-Chirp3-HD-Orus',
+ },
+ },
+ ['en-us-chirp3-hd-puck']: {
+ voice: {
+ name: 'en-US-Chirp3-HD-Puck',
+ },
+ },
+ ['en-us-chirp3-hd-pulcherrima']: {
+ voice: {
+ name: 'en-US-Chirp3-HD-Pulcherrima',
+ },
+ },
+ ['en-us-chirp3-hd-rasalgethi']: {
+ voice: {
+ name: 'en-US-Chirp3-HD-Rasalgethi',
+ },
+ },
+ ['en-us-chirp3-hd-sadachbia']: {
+ voice: {
+ name: 'en-US-Chirp3-HD-Sadachbia',
+ },
+ },
+ ['en-us-chirp3-hd-sadaltager']: {
+ voice: {
+ name: 'en-US-Chirp3-HD-Sadaltager',
+ },
+ },
+ ['en-us-chirp3-hd-schedar']: {
+ voice: {
+ name: 'en-US-Chirp3-HD-Schedar',
+ },
+ },
+ ['en-us-chirp3-hd-sulafat']: {
+ voice: {
+ name: 'en-US-Chirp3-HD-Sulafat',
+ },
+ },
+ ['en-us-chirp3-hd-umbriel']: {
+ voice: {
+ name: 'en-US-Chirp3-HD-Umbriel',
+ },
+ },
+ ['en-us-chirp3-hd-vindemiatrix']: {
+ voice: {
+ name: 'en-US-Chirp3-HD-Vindemiatrix',
+ },
+ },
+ ['en-us-chirp3-hd-zephyr']: {
+ voice: {
+ name: 'en-US-Chirp3-HD-Zephyr',
+ },
+ },
+ ['en-us-chirp3-hd-zubenelgenubi']: {
+ voice: {
+ name: 'en-US-Chirp3-HD-Zubenelgenubi',
+ },
+ },
+ ['en-us-neural2-a']: {
+ voice: {
+ name: 'en-US-Neural2-A',
+ },
+ },
+ ['en-us-neural2-c']: {
+ voice: {
+ name: 'en-US-Neural2-C',
+ },
+ },
+ ['en-us-neural2-d']: {
+ voice: {
+ name: 'en-US-Neural2-D',
+ },
+ },
+ ['en-us-neural2-e']: {
+ voice: {
+ name: 'en-US-Neural2-E',
+ },
+ },
+ ['en-us-neural2-f']: {
+ voice: {
+ name: 'en-US-Neural2-F',
+ },
+ },
+ ['en-us-neural2-g']: {
+ voice: {
+ name: 'en-US-Neural2-G',
+ },
+ },
+ ['en-us-neural2-h']: {
+ voice: {
+ name: 'en-US-Neural2-H',
+ },
+ },
+ ['en-us-neural2-i']: {
+ voice: {
+ name: 'en-US-Neural2-I',
+ },
+ },
+ ['en-us-neural2-j']: {
+ voice: {
+ name: 'en-US-Neural2-J',
+ },
+ },
+ ['en-us-news-k']: {
+ voice: {
+ name: 'en-US-News-K',
+ },
+ },
+ ['en-us-news-l']: {
+ voice: {
+ name: 'en-US-News-L',
+ },
+ },
+ ['en-us-news-n']: {
+ voice: {
+ name: 'en-US-News-N',
+ },
+ },
+ ['en-us-polyglot-1']: {
+ voice: {
+ name: 'en-US-Polyglot-1',
+ },
+ },
+ ['en-us-standard-a']: {
+ voice: {
+ name: 'en-US-Standard-A',
+ },
+ },
+ ['en-us-standard-b']: {
+ voice: {
+ name: 'en-US-Standard-B',
+ },
+ },
+ ['en-us-standard-c']: {
+ voice: {
+ name: 'en-US-Standard-C',
+ },
+ },
+ ['en-us-standard-d']: {
+ voice: {
+ name: 'en-US-Standard-D',
+ },
+ },
+ ['en-us-standard-e']: {
+ voice: {
+ name: 'en-US-Standard-E',
+ },
+ },
+ ['en-us-standard-f']: {
+ voice: {
+ name: 'en-US-Standard-F',
+ },
+ },
+ ['en-us-standard-g']: {
+ voice: {
+ name: 'en-US-Standard-G',
+ },
+ },
+ ['en-us-standard-h']: {
+ voice: {
+ name: 'en-US-Standard-H',
+ },
+ },
+ ['en-us-standard-i']: {
+ voice: {
+ name: 'en-US-Standard-I',
+ },
+ },
+ ['en-us-standard-j']: {
+ voice: {
+ name: 'en-US-Standard-J',
+ },
+ },
+ ['en-us-studio-o']: {
+ voice: {
+ name: 'en-US-Studio-O',
+ },
+ },
+ ['en-us-studio-q']: {
+ voice: {
+ name: 'en-US-Studio-Q',
+ },
+ },
+ ['en-us-wavenet-a']: {
+ voice: {
+ name: 'en-US-Wavenet-A',
+ },
+ },
+ ['en-us-wavenet-b']: {
+ voice: {
+ name: 'en-US-Wavenet-B',
+ },
+ },
+ ['en-us-wavenet-c']: {
+ voice: {
+ name: 'en-US-Wavenet-C',
+ },
+ },
+ ['en-us-wavenet-d']: {
+ voice: {
+ name: 'en-US-Wavenet-D',
+ },
+ },
+ ['en-us-wavenet-e']: {
+ voice: {
+ name: 'en-US-Wavenet-E',
+ },
+ },
+ ['en-us-wavenet-f']: {
+ voice: {
+ name: 'en-US-Wavenet-F',
+ },
+ },
+ ['en-us-wavenet-g']: {
+ voice: {
+ name: 'en-US-Wavenet-G',
+ },
+ },
+ ['en-us-wavenet-h']: {
+ voice: {
+ name: 'en-US-Wavenet-H',
+ },
+ },
+ ['en-us-wavenet-i']: {
+ voice: {
+ name: 'en-US-Wavenet-I',
+ },
+ },
+ ['en-us-wavenet-j']: {
+ voice: {
+ name: 'en-US-Wavenet-J',
+ },
+ },
+ ['enceladus']: {
+ voice: {
+ name: 'Enceladus',
+ },
+ },
+ ['erinome']: {
+ voice: {
+ name: 'Erinome',
+ },
+ },
+ ['es-es-chirp-hd-d']: {
+ voice: {
+ name: 'es-ES-Chirp-HD-D',
+ },
+ },
+ ['es-es-chirp-hd-f']: {
+ voice: {
+ name: 'es-ES-Chirp-HD-F',
+ },
+ },
+ ['es-es-chirp-hd-o']: {
+ voice: {
+ name: 'es-ES-Chirp-HD-O',
+ },
+ },
+ ['es-es-chirp3-hd-achernar']: {
+ voice: {
+ name: 'es-ES-Chirp3-HD-Achernar',
+ },
+ },
+ ['es-es-chirp3-hd-achird']: {
+ voice: {
+ name: 'es-ES-Chirp3-HD-Achird',
+ },
+ },
+ ['es-es-chirp3-hd-algenib']: {
+ voice: {
+ name: 'es-ES-Chirp3-HD-Algenib',
+ },
+ },
+ ['es-es-chirp3-hd-algieba']: {
+ voice: {
+ name: 'es-ES-Chirp3-HD-Algieba',
+ },
+ },
+ ['es-es-chirp3-hd-alnilam']: {
+ voice: {
+ name: 'es-ES-Chirp3-HD-Alnilam',
+ },
+ },
+ ['es-es-chirp3-hd-aoede']: {
+ voice: {
+ name: 'es-ES-Chirp3-HD-Aoede',
+ },
+ },
+ ['es-es-chirp3-hd-autonoe']: {
+ voice: {
+ name: 'es-ES-Chirp3-HD-Autonoe',
+ },
+ },
+ ['es-es-chirp3-hd-callirrhoe']: {
+ voice: {
+ name: 'es-ES-Chirp3-HD-Callirrhoe',
+ },
+ },
+ ['es-es-chirp3-hd-charon']: {
+ voice: {
+ name: 'es-ES-Chirp3-HD-Charon',
+ },
+ },
+ ['es-es-chirp3-hd-despina']: {
+ voice: {
+ name: 'es-ES-Chirp3-HD-Despina',
+ },
+ },
+ ['es-es-chirp3-hd-enceladus']: {
+ voice: {
+ name: 'es-ES-Chirp3-HD-Enceladus',
+ },
+ },
+ ['es-es-chirp3-hd-erinome']: {
+ voice: {
+ name: 'es-ES-Chirp3-HD-Erinome',
+ },
+ },
+ ['es-es-chirp3-hd-fenrir']: {
+ voice: {
+ name: 'es-ES-Chirp3-HD-Fenrir',
+ },
+ },
+ ['es-es-chirp3-hd-gacrux']: {
+ voice: {
+ name: 'es-ES-Chirp3-HD-Gacrux',
+ },
+ },
+ ['es-es-chirp3-hd-iapetus']: {
+ voice: {
+ name: 'es-ES-Chirp3-HD-Iapetus',
+ },
+ },
+ ['es-es-chirp3-hd-kore']: {
+ voice: {
+ name: 'es-ES-Chirp3-HD-Kore',
+ },
+ },
+ ['es-es-chirp3-hd-laomedeia']: {
+ voice: {
+ name: 'es-ES-Chirp3-HD-Laomedeia',
+ },
+ },
+ ['es-es-chirp3-hd-leda']: {
+ voice: {
+ name: 'es-ES-Chirp3-HD-Leda',
+ },
+ },
+ ['es-es-chirp3-hd-orus']: {
+ voice: {
+ name: 'es-ES-Chirp3-HD-Orus',
+ },
+ },
+ ['es-es-chirp3-hd-puck']: {
+ voice: {
+ name: 'es-ES-Chirp3-HD-Puck',
+ },
+ },
+ ['es-es-chirp3-hd-pulcherrima']: {
+ voice: {
+ name: 'es-ES-Chirp3-HD-Pulcherrima',
+ },
+ },
+ ['es-es-chirp3-hd-rasalgethi']: {
+ voice: {
+ name: 'es-ES-Chirp3-HD-Rasalgethi',
+ },
+ },
+ ['es-es-chirp3-hd-sadachbia']: {
+ voice: {
+ name: 'es-ES-Chirp3-HD-Sadachbia',
+ },
+ },
+ ['es-es-chirp3-hd-sadaltager']: {
+ voice: {
+ name: 'es-ES-Chirp3-HD-Sadaltager',
+ },
+ },
+ ['es-es-chirp3-hd-schedar']: {
+ voice: {
+ name: 'es-ES-Chirp3-HD-Schedar',
+ },
+ },
+ ['es-es-chirp3-hd-sulafat']: {
+ voice: {
+ name: 'es-ES-Chirp3-HD-Sulafat',
+ },
+ },
+ ['es-es-chirp3-hd-umbriel']: {
+ voice: {
+ name: 'es-ES-Chirp3-HD-Umbriel',
+ },
+ },
+ ['es-es-chirp3-hd-vindemiatrix']: {
+ voice: {
+ name: 'es-ES-Chirp3-HD-Vindemiatrix',
+ },
+ },
+ ['es-es-chirp3-hd-zephyr']: {
+ voice: {
+ name: 'es-ES-Chirp3-HD-Zephyr',
+ },
+ },
+ ['es-es-chirp3-hd-zubenelgenubi']: {
+ voice: {
+ name: 'es-ES-Chirp3-HD-Zubenelgenubi',
+ },
+ },
+ ['es-es-neural2-a']: {
+ voice: {
+ name: 'es-ES-Neural2-A',
+ },
+ },
+ ['es-es-neural2-e']: {
+ voice: {
+ name: 'es-ES-Neural2-E',
+ },
+ },
+ ['es-es-neural2-f']: {
+ voice: {
+ name: 'es-ES-Neural2-F',
+ },
+ },
+ ['es-es-neural2-g']: {
+ voice: {
+ name: 'es-ES-Neural2-G',
+ },
+ },
+ ['es-es-neural2-h']: {
+ voice: {
+ name: 'es-ES-Neural2-H',
+ },
+ },
+ ['es-es-polyglot-1']: {
+ voice: {
+ name: 'es-ES-Polyglot-1',
+ },
+ },
+ ['es-es-standard-e']: {
+ voice: {
+ name: 'es-ES-Standard-E',
+ },
+ },
+ ['es-es-standard-f']: {
+ voice: {
+ name: 'es-ES-Standard-F',
+ },
+ },
+ ['es-es-standard-g']: {
+ voice: {
+ name: 'es-ES-Standard-G',
+ },
+ },
+ ['es-es-standard-h']: {
+ voice: {
+ name: 'es-ES-Standard-H',
+ },
+ },
+ ['es-es-studio-c']: {
+ voice: {
+ name: 'es-ES-Studio-C',
+ },
+ },
+ ['es-es-studio-f']: {
+ voice: {
+ name: 'es-ES-Studio-F',
+ },
+ },
+ ['es-es-wavenet-e']: {
+ voice: {
+ name: 'es-ES-Wavenet-E',
+ },
+ },
+ ['es-es-wavenet-f']: {
+ voice: {
+ name: 'es-ES-Wavenet-F',
+ },
+ },
+ ['es-es-wavenet-g']: {
+ voice: {
+ name: 'es-ES-Wavenet-G',
+ },
+ },
+ ['es-es-wavenet-h']: {
+ voice: {
+ name: 'es-ES-Wavenet-H',
+ },
+ },
+ ['es-us-chirp-hd-d']: {
+ voice: {
+ name: 'es-US-Chirp-HD-D',
+ },
+ },
+ ['es-us-chirp-hd-f']: {
+ voice: {
+ name: 'es-US-Chirp-HD-F',
+ },
+ },
+ ['es-us-chirp-hd-o']: {
+ voice: {
+ name: 'es-US-Chirp-HD-O',
+ },
+ },
+ ['es-us-chirp3-hd-achernar']: {
+ voice: {
+ name: 'es-US-Chirp3-HD-Achernar',
+ },
+ },
+ ['es-us-chirp3-hd-achird']: {
+ voice: {
+ name: 'es-US-Chirp3-HD-Achird',
+ },
+ },
+ ['es-us-chirp3-hd-algenib']: {
+ voice: {
+ name: 'es-US-Chirp3-HD-Algenib',
+ },
+ },
+ ['es-us-chirp3-hd-algieba']: {
+ voice: {
+ name: 'es-US-Chirp3-HD-Algieba',
+ },
+ },
+ ['es-us-chirp3-hd-alnilam']: {
+ voice: {
+ name: 'es-US-Chirp3-HD-Alnilam',
+ },
+ },
+ ['es-us-chirp3-hd-aoede']: {
+ voice: {
+ name: 'es-US-Chirp3-HD-Aoede',
+ },
+ },
+ ['es-us-chirp3-hd-autonoe']: {
+ voice: {
+ name: 'es-US-Chirp3-HD-Autonoe',
+ },
+ },
+ ['es-us-chirp3-hd-callirrhoe']: {
+ voice: {
+ name: 'es-US-Chirp3-HD-Callirrhoe',
+ },
+ },
+ ['es-us-chirp3-hd-charon']: {
+ voice: {
+ name: 'es-US-Chirp3-HD-Charon',
+ },
+ },
+ ['es-us-chirp3-hd-despina']: {
+ voice: {
+ name: 'es-US-Chirp3-HD-Despina',
+ },
+ },
+ ['es-us-chirp3-hd-enceladus']: {
+ voice: {
+ name: 'es-US-Chirp3-HD-Enceladus',
+ },
+ },
+ ['es-us-chirp3-hd-erinome']: {
+ voice: {
+ name: 'es-US-Chirp3-HD-Erinome',
+ },
+ },
+ ['es-us-chirp3-hd-fenrir']: {
+ voice: {
+ name: 'es-US-Chirp3-HD-Fenrir',
+ },
+ },
+ ['es-us-chirp3-hd-gacrux']: {
+ voice: {
+ name: 'es-US-Chirp3-HD-Gacrux',
+ },
+ },
+ ['es-us-chirp3-hd-iapetus']: {
+ voice: {
+ name: 'es-US-Chirp3-HD-Iapetus',
+ },
+ },
+ ['es-us-chirp3-hd-kore']: {
+ voice: {
+ name: 'es-US-Chirp3-HD-Kore',
+ },
+ },
+ ['es-us-chirp3-hd-laomedeia']: {
+ voice: {
+ name: 'es-US-Chirp3-HD-Laomedeia',
+ },
+ },
+ ['es-us-chirp3-hd-leda']: {
+ voice: {
+ name: 'es-US-Chirp3-HD-Leda',
+ },
+ },
+ ['es-us-chirp3-hd-orus']: {
+ voice: {
+ name: 'es-US-Chirp3-HD-Orus',
+ },
+ },
+ ['es-us-chirp3-hd-puck']: {
+ voice: {
+ name: 'es-US-Chirp3-HD-Puck',
+ },
+ },
+ ['es-us-chirp3-hd-pulcherrima']: {
+ voice: {
+ name: 'es-US-Chirp3-HD-Pulcherrima',
+ },
+ },
+ ['es-us-chirp3-hd-rasalgethi']: {
+ voice: {
+ name: 'es-US-Chirp3-HD-Rasalgethi',
+ },
+ },
+ ['es-us-chirp3-hd-sadachbia']: {
+ voice: {
+ name: 'es-US-Chirp3-HD-Sadachbia',
+ },
+ },
+ ['es-us-chirp3-hd-sadaltager']: {
+ voice: {
+ name: 'es-US-Chirp3-HD-Sadaltager',
+ },
+ },
+ ['es-us-chirp3-hd-schedar']: {
+ voice: {
+ name: 'es-US-Chirp3-HD-Schedar',
+ },
+ },
+ ['es-us-chirp3-hd-sulafat']: {
+ voice: {
+ name: 'es-US-Chirp3-HD-Sulafat',
+ },
+ },
+ ['es-us-chirp3-hd-umbriel']: {
+ voice: {
+ name: 'es-US-Chirp3-HD-Umbriel',
+ },
+ },
+ ['es-us-chirp3-hd-vindemiatrix']: {
+ voice: {
+ name: 'es-US-Chirp3-HD-Vindemiatrix',
+ },
+ },
+ ['es-us-chirp3-hd-zephyr']: {
+ voice: {
+ name: 'es-US-Chirp3-HD-Zephyr',
+ },
+ },
+ ['es-us-chirp3-hd-zubenelgenubi']: {
+ voice: {
+ name: 'es-US-Chirp3-HD-Zubenelgenubi',
+ },
+ },
+ ['es-us-neural2-a']: {
+ voice: {
+ name: 'es-US-Neural2-A',
+ },
+ },
+ ['es-us-neural2-b']: {
+ voice: {
+ name: 'es-US-Neural2-B',
+ },
+ },
+ ['es-us-neural2-c']: {
+ voice: {
+ name: 'es-US-Neural2-C',
+ },
+ },
+ ['es-us-news-d']: {
+ voice: {
+ name: 'es-US-News-D',
+ },
+ },
+ ['es-us-news-e']: {
+ voice: {
+ name: 'es-US-News-E',
+ },
+ },
+ ['es-us-news-f']: {
+ voice: {
+ name: 'es-US-News-F',
+ },
+ },
+ ['es-us-news-g']: {
+ voice: {
+ name: 'es-US-News-G',
+ },
+ },
+ ['es-us-polyglot-1']: {
+ voice: {
+ name: 'es-US-Polyglot-1',
+ },
+ },
+ ['es-us-standard-a']: {
+ voice: {
+ name: 'es-US-Standard-A',
+ },
+ },
+ ['es-us-standard-b']: {
+ voice: {
+ name: 'es-US-Standard-B',
+ },
+ },
+ ['es-us-standard-c']: {
+ voice: {
+ name: 'es-US-Standard-C',
+ },
+ },
+ ['es-us-studio-b']: {
+ voice: {
+ name: 'es-US-Studio-B',
+ },
+ },
+ ['es-us-wavenet-a']: {
+ voice: {
+ name: 'es-US-Wavenet-A',
+ },
+ },
+ ['es-us-wavenet-b']: {
+ voice: {
+ name: 'es-US-Wavenet-B',
+ },
+ },
+ ['es-us-wavenet-c']: {
+ voice: {
+ name: 'es-US-Wavenet-C',
+ },
+ },
+ ['et-ee-standard-a']: {
+ voice: {
+ name: 'et-EE-Standard-A',
+ },
+ },
+ ['eu-es-standard-b']: {
+ voice: {
+ name: 'eu-ES-Standard-B',
+ },
+ },
+ ['fenrir']: {
+ voice: {
+ name: 'Fenrir',
+ },
+ },
+ ['fi-fi-chirp3-hd-achernar']: {
+ voice: {
+ name: 'fi-FI-Chirp3-HD-Achernar',
+ },
+ },
+ ['fi-fi-chirp3-hd-achird']: {
+ voice: {
+ name: 'fi-FI-Chirp3-HD-Achird',
+ },
+ },
+ ['fi-fi-chirp3-hd-algenib']: {
+ voice: {
+ name: 'fi-FI-Chirp3-HD-Algenib',
+ },
+ },
+ ['fi-fi-chirp3-hd-algieba']: {
+ voice: {
+ name: 'fi-FI-Chirp3-HD-Algieba',
+ },
+ },
+ ['fi-fi-chirp3-hd-alnilam']: {
+ voice: {
+ name: 'fi-FI-Chirp3-HD-Alnilam',
+ },
+ },
+ ['fi-fi-chirp3-hd-aoede']: {
+ voice: {
+ name: 'fi-FI-Chirp3-HD-Aoede',
+ },
+ },
+ ['fi-fi-chirp3-hd-autonoe']: {
+ voice: {
+ name: 'fi-FI-Chirp3-HD-Autonoe',
+ },
+ },
+ ['fi-fi-chirp3-hd-callirrhoe']: {
+ voice: {
+ name: 'fi-FI-Chirp3-HD-Callirrhoe',
+ },
+ },
+ ['fi-fi-chirp3-hd-charon']: {
+ voice: {
+ name: 'fi-FI-Chirp3-HD-Charon',
+ },
+ },
+ ['fi-fi-chirp3-hd-despina']: {
+ voice: {
+ name: 'fi-FI-Chirp3-HD-Despina',
+ },
+ },
+ ['fi-fi-chirp3-hd-enceladus']: {
+ voice: {
+ name: 'fi-FI-Chirp3-HD-Enceladus',
+ },
+ },
+ ['fi-fi-chirp3-hd-erinome']: {
+ voice: {
+ name: 'fi-FI-Chirp3-HD-Erinome',
+ },
+ },
+ ['fi-fi-chirp3-hd-fenrir']: {
+ voice: {
+ name: 'fi-FI-Chirp3-HD-Fenrir',
+ },
+ },
+ ['fi-fi-chirp3-hd-gacrux']: {
+ voice: {
+ name: 'fi-FI-Chirp3-HD-Gacrux',
+ },
+ },
+ ['fi-fi-chirp3-hd-iapetus']: {
+ voice: {
+ name: 'fi-FI-Chirp3-HD-Iapetus',
+ },
+ },
+ ['fi-fi-chirp3-hd-kore']: {
+ voice: {
+ name: 'fi-FI-Chirp3-HD-Kore',
+ },
+ },
+ ['fi-fi-chirp3-hd-laomedeia']: {
+ voice: {
+ name: 'fi-FI-Chirp3-HD-Laomedeia',
+ },
+ },
+ ['fi-fi-chirp3-hd-leda']: {
+ voice: {
+ name: 'fi-FI-Chirp3-HD-Leda',
+ },
+ },
+ ['fi-fi-chirp3-hd-orus']: {
+ voice: {
+ name: 'fi-FI-Chirp3-HD-Orus',
+ },
+ },
+ ['fi-fi-chirp3-hd-puck']: {
+ voice: {
+ name: 'fi-FI-Chirp3-HD-Puck',
+ },
+ },
+ ['fi-fi-chirp3-hd-pulcherrima']: {
+ voice: {
+ name: 'fi-FI-Chirp3-HD-Pulcherrima',
+ },
+ },
+ ['fi-fi-chirp3-hd-rasalgethi']: {
+ voice: {
+ name: 'fi-FI-Chirp3-HD-Rasalgethi',
+ },
+ },
+ ['fi-fi-chirp3-hd-sadachbia']: {
+ voice: {
+ name: 'fi-FI-Chirp3-HD-Sadachbia',
+ },
+ },
+ ['fi-fi-chirp3-hd-sadaltager']: {
+ voice: {
+ name: 'fi-FI-Chirp3-HD-Sadaltager',
+ },
+ },
+ ['fi-fi-chirp3-hd-schedar']: {
+ voice: {
+ name: 'fi-FI-Chirp3-HD-Schedar',
+ },
+ },
+ ['fi-fi-chirp3-hd-sulafat']: {
+ voice: {
+ name: 'fi-FI-Chirp3-HD-Sulafat',
+ },
+ },
+ ['fi-fi-chirp3-hd-umbriel']: {
+ voice: {
+ name: 'fi-FI-Chirp3-HD-Umbriel',
+ },
+ },
+ ['fi-fi-chirp3-hd-vindemiatrix']: {
+ voice: {
+ name: 'fi-FI-Chirp3-HD-Vindemiatrix',
+ },
+ },
+ ['fi-fi-chirp3-hd-zephyr']: {
+ voice: {
+ name: 'fi-FI-Chirp3-HD-Zephyr',
+ },
+ },
+ ['fi-fi-chirp3-hd-zubenelgenubi']: {
+ voice: {
+ name: 'fi-FI-Chirp3-HD-Zubenelgenubi',
+ },
+ },
+ ['fi-fi-standard-b']: {
+ voice: {
+ name: 'fi-FI-Standard-B',
+ },
+ },
+ ['fi-fi-wavenet-b']: {
+ voice: {
+ name: 'fi-FI-Wavenet-B',
+ },
+ },
+ ['fil-ph-neural2-a']: {
+ voice: {
+ name: 'fil-ph-Neural2-A',
+ },
+ },
+ ['fil-ph-neural2-d']: {
+ voice: {
+ name: 'fil-ph-Neural2-D',
+ },
+ },
+ ['fil-ph-standard-a']: {
+ voice: {
+ name: 'fil-PH-Standard-A',
+ },
+ },
+ ['fil-ph-standard-b']: {
+ voice: {
+ name: 'fil-PH-Standard-B',
+ },
+ },
+ ['fil-ph-standard-c']: {
+ voice: {
+ name: 'fil-PH-Standard-C',
+ },
+ },
+ ['fil-ph-standard-d']: {
+ voice: {
+ name: 'fil-PH-Standard-D',
+ },
+ },
+ ['fil-ph-wavenet-a']: {
+ voice: {
+ name: 'fil-PH-Wavenet-A',
+ },
+ },
+ ['fil-ph-wavenet-b']: {
+ voice: {
+ name: 'fil-PH-Wavenet-B',
+ },
+ },
+ ['fil-ph-wavenet-c']: {
+ voice: {
+ name: 'fil-PH-Wavenet-C',
+ },
+ },
+ ['fil-ph-wavenet-d']: {
+ voice: {
+ name: 'fil-PH-Wavenet-D',
+ },
+ },
+ ['fr-ca-chirp-hd-d']: {
+ voice: {
+ name: 'fr-CA-Chirp-HD-D',
+ },
+ },
+ ['fr-ca-chirp-hd-f']: {
+ voice: {
+ name: 'fr-CA-Chirp-HD-F',
+ },
+ },
+ ['fr-ca-chirp-hd-o']: {
+ voice: {
+ name: 'fr-CA-Chirp-HD-O',
+ },
+ },
+ ['fr-ca-chirp3-hd-achernar']: {
+ voice: {
+ name: 'fr-CA-Chirp3-HD-Achernar',
+ },
+ },
+ ['fr-ca-chirp3-hd-achird']: {
+ voice: {
+ name: 'fr-CA-Chirp3-HD-Achird',
+ },
+ },
+ ['fr-ca-chirp3-hd-algenib']: {
+ voice: {
+ name: 'fr-CA-Chirp3-HD-Algenib',
+ },
+ },
+ ['fr-ca-chirp3-hd-algieba']: {
+ voice: {
+ name: 'fr-CA-Chirp3-HD-Algieba',
+ },
+ },
+ ['fr-ca-chirp3-hd-alnilam']: {
+ voice: {
+ name: 'fr-CA-Chirp3-HD-Alnilam',
+ },
+ },
+ ['fr-ca-chirp3-hd-aoede']: {
+ voice: {
+ name: 'fr-CA-Chirp3-HD-Aoede',
+ },
+ },
+ ['fr-ca-chirp3-hd-autonoe']: {
+ voice: {
+ name: 'fr-CA-Chirp3-HD-Autonoe',
+ },
+ },
+ ['fr-ca-chirp3-hd-callirrhoe']: {
+ voice: {
+ name: 'fr-CA-Chirp3-HD-Callirrhoe',
+ },
+ },
+ ['fr-ca-chirp3-hd-charon']: {
+ voice: {
+ name: 'fr-CA-Chirp3-HD-Charon',
+ },
+ },
+ ['fr-ca-chirp3-hd-despina']: {
+ voice: {
+ name: 'fr-CA-Chirp3-HD-Despina',
+ },
+ },
+ ['fr-ca-chirp3-hd-enceladus']: {
+ voice: {
+ name: 'fr-CA-Chirp3-HD-Enceladus',
+ },
+ },
+ ['fr-ca-chirp3-hd-erinome']: {
+ voice: {
+ name: 'fr-CA-Chirp3-HD-Erinome',
+ },
+ },
+ ['fr-ca-chirp3-hd-fenrir']: {
+ voice: {
+ name: 'fr-CA-Chirp3-HD-Fenrir',
+ },
+ },
+ ['fr-ca-chirp3-hd-gacrux']: {
+ voice: {
+ name: 'fr-CA-Chirp3-HD-Gacrux',
+ },
+ },
+ ['fr-ca-chirp3-hd-iapetus']: {
+ voice: {
+ name: 'fr-CA-Chirp3-HD-Iapetus',
+ },
+ },
+ ['fr-ca-chirp3-hd-kore']: {
+ voice: {
+ name: 'fr-CA-Chirp3-HD-Kore',
+ },
+ },
+ ['fr-ca-chirp3-hd-laomedeia']: {
+ voice: {
+ name: 'fr-CA-Chirp3-HD-Laomedeia',
+ },
+ },
+ ['fr-ca-chirp3-hd-leda']: {
+ voice: {
+ name: 'fr-CA-Chirp3-HD-Leda',
+ },
+ },
+ ['fr-ca-chirp3-hd-orus']: {
+ voice: {
+ name: 'fr-CA-Chirp3-HD-Orus',
+ },
+ },
+ ['fr-ca-chirp3-hd-puck']: {
+ voice: {
+ name: 'fr-CA-Chirp3-HD-Puck',
+ },
+ },
+ ['fr-ca-chirp3-hd-pulcherrima']: {
+ voice: {
+ name: 'fr-CA-Chirp3-HD-Pulcherrima',
+ },
+ },
+ ['fr-ca-chirp3-hd-rasalgethi']: {
+ voice: {
+ name: 'fr-CA-Chirp3-HD-Rasalgethi',
+ },
+ },
+ ['fr-ca-chirp3-hd-sadachbia']: {
+ voice: {
+ name: 'fr-CA-Chirp3-HD-Sadachbia',
+ },
+ },
+ ['fr-ca-chirp3-hd-sadaltager']: {
+ voice: {
+ name: 'fr-CA-Chirp3-HD-Sadaltager',
+ },
+ },
+ ['fr-ca-chirp3-hd-schedar']: {
+ voice: {
+ name: 'fr-CA-Chirp3-HD-Schedar',
+ },
+ },
+ ['fr-ca-chirp3-hd-sulafat']: {
+ voice: {
+ name: 'fr-CA-Chirp3-HD-Sulafat',
+ },
+ },
+ ['fr-ca-chirp3-hd-umbriel']: {
+ voice: {
+ name: 'fr-CA-Chirp3-HD-Umbriel',
+ },
+ },
+ ['fr-ca-chirp3-hd-vindemiatrix']: {
+ voice: {
+ name: 'fr-CA-Chirp3-HD-Vindemiatrix',
+ },
+ },
+ ['fr-ca-chirp3-hd-zephyr']: {
+ voice: {
+ name: 'fr-CA-Chirp3-HD-Zephyr',
+ },
+ },
+ ['fr-ca-chirp3-hd-zubenelgenubi']: {
+ voice: {
+ name: 'fr-CA-Chirp3-HD-Zubenelgenubi',
+ },
+ },
+ ['fr-ca-neural2-a']: {
+ voice: {
+ name: 'fr-CA-Neural2-A',
+ },
+ },
+ ['fr-ca-neural2-b']: {
+ voice: {
+ name: 'fr-CA-Neural2-B',
+ },
+ },
+ ['fr-ca-neural2-c']: {
+ voice: {
+ name: 'fr-CA-Neural2-C',
+ },
+ },
+ ['fr-ca-neural2-d']: {
+ voice: {
+ name: 'fr-CA-Neural2-D',
+ },
+ },
+ ['fr-ca-standard-a']: {
+ voice: {
+ name: 'fr-CA-Standard-A',
+ },
+ },
+ ['fr-ca-standard-b']: {
+ voice: {
+ name: 'fr-CA-Standard-B',
+ },
+ },
+ ['fr-ca-standard-c']: {
+ voice: {
+ name: 'fr-CA-Standard-C',
+ },
+ },
+ ['fr-ca-standard-d']: {
+ voice: {
+ name: 'fr-CA-Standard-D',
+ },
+ },
+ ['fr-ca-wavenet-a']: {
+ voice: {
+ name: 'fr-CA-Wavenet-A',
+ },
+ },
+ ['fr-ca-wavenet-b']: {
+ voice: {
+ name: 'fr-CA-Wavenet-B',
+ },
+ },
+ ['fr-ca-wavenet-c']: {
+ voice: {
+ name: 'fr-CA-Wavenet-C',
+ },
+ },
+ ['fr-ca-wavenet-d']: {
+ voice: {
+ name: 'fr-CA-Wavenet-D',
+ },
+ },
+ ['fr-fr-chirp-hd-d']: {
+ voice: {
+ name: 'fr-FR-Chirp-HD-D',
+ },
+ },
+ ['fr-fr-chirp-hd-f']: {
+ voice: {
+ name: 'fr-FR-Chirp-HD-F',
+ },
+ },
+ ['fr-fr-chirp-hd-o']: {
+ voice: {
+ name: 'fr-FR-Chirp-HD-O',
+ },
+ },
+ ['fr-fr-chirp3-hd-achernar']: {
+ voice: {
+ name: 'fr-FR-Chirp3-HD-Achernar',
+ },
+ },
+ ['fr-fr-chirp3-hd-achird']: {
+ voice: {
+ name: 'fr-FR-Chirp3-HD-Achird',
+ },
+ },
+ ['fr-fr-chirp3-hd-algenib']: {
+ voice: {
+ name: 'fr-FR-Chirp3-HD-Algenib',
+ },
+ },
+ ['fr-fr-chirp3-hd-algieba']: {
+ voice: {
+ name: 'fr-FR-Chirp3-HD-Algieba',
+ },
+ },
+ ['fr-fr-chirp3-hd-alnilam']: {
+ voice: {
+ name: 'fr-FR-Chirp3-HD-Alnilam',
+ },
+ },
+ ['fr-fr-chirp3-hd-aoede']: {
+ voice: {
+ name: 'fr-FR-Chirp3-HD-Aoede',
+ },
+ },
+ ['fr-fr-chirp3-hd-autonoe']: {
+ voice: {
+ name: 'fr-FR-Chirp3-HD-Autonoe',
+ },
+ },
+ ['fr-fr-chirp3-hd-callirrhoe']: {
+ voice: {
+ name: 'fr-FR-Chirp3-HD-Callirrhoe',
+ },
+ },
+ ['fr-fr-chirp3-hd-charon']: {
+ voice: {
+ name: 'fr-FR-Chirp3-HD-Charon',
+ },
+ },
+ ['fr-fr-chirp3-hd-despina']: {
+ voice: {
+ name: 'fr-FR-Chirp3-HD-Despina',
+ },
+ },
+ ['fr-fr-chirp3-hd-enceladus']: {
+ voice: {
+ name: 'fr-FR-Chirp3-HD-Enceladus',
+ },
+ },
+ ['fr-fr-chirp3-hd-erinome']: {
+ voice: {
+ name: 'fr-FR-Chirp3-HD-Erinome',
+ },
+ },
+ ['fr-fr-chirp3-hd-fenrir']: {
+ voice: {
+ name: 'fr-FR-Chirp3-HD-Fenrir',
+ },
+ },
+ ['fr-fr-chirp3-hd-gacrux']: {
+ voice: {
+ name: 'fr-FR-Chirp3-HD-Gacrux',
+ },
+ },
+ ['fr-fr-chirp3-hd-iapetus']: {
+ voice: {
+ name: 'fr-FR-Chirp3-HD-Iapetus',
+ },
+ },
+ ['fr-fr-chirp3-hd-kore']: {
+ voice: {
+ name: 'fr-FR-Chirp3-HD-Kore',
+ },
+ },
+ ['fr-fr-chirp3-hd-laomedeia']: {
+ voice: {
+ name: 'fr-FR-Chirp3-HD-Laomedeia',
+ },
+ },
+ ['fr-fr-chirp3-hd-leda']: {
+ voice: {
+ name: 'fr-FR-Chirp3-HD-Leda',
+ },
+ },
+ ['fr-fr-chirp3-hd-orus']: {
+ voice: {
+ name: 'fr-FR-Chirp3-HD-Orus',
+ },
+ },
+ ['fr-fr-chirp3-hd-puck']: {
+ voice: {
+ name: 'fr-FR-Chirp3-HD-Puck',
+ },
+ },
+ ['fr-fr-chirp3-hd-pulcherrima']: {
+ voice: {
+ name: 'fr-FR-Chirp3-HD-Pulcherrima',
+ },
+ },
+ ['fr-fr-chirp3-hd-rasalgethi']: {
+ voice: {
+ name: 'fr-FR-Chirp3-HD-Rasalgethi',
+ },
+ },
+ ['fr-fr-chirp3-hd-sadachbia']: {
+ voice: {
+ name: 'fr-FR-Chirp3-HD-Sadachbia',
+ },
+ },
+ ['fr-fr-chirp3-hd-sadaltager']: {
+ voice: {
+ name: 'fr-FR-Chirp3-HD-Sadaltager',
+ },
+ },
+ ['fr-fr-chirp3-hd-schedar']: {
+ voice: {
+ name: 'fr-FR-Chirp3-HD-Schedar',
+ },
+ },
+ ['fr-fr-chirp3-hd-sulafat']: {
+ voice: {
+ name: 'fr-FR-Chirp3-HD-Sulafat',
+ },
+ },
+ ['fr-fr-chirp3-hd-umbriel']: {
+ voice: {
+ name: 'fr-FR-Chirp3-HD-Umbriel',
+ },
+ },
+ ['fr-fr-chirp3-hd-vindemiatrix']: {
+ voice: {
+ name: 'fr-FR-Chirp3-HD-Vindemiatrix',
+ },
+ },
+ ['fr-fr-chirp3-hd-zephyr']: {
+ voice: {
+ name: 'fr-FR-Chirp3-HD-Zephyr',
+ },
+ },
+ ['fr-fr-chirp3-hd-zubenelgenubi']: {
+ voice: {
+ name: 'fr-FR-Chirp3-HD-Zubenelgenubi',
+ },
+ },
+ ['fr-fr-neural2-f']: {
+ voice: {
+ name: 'fr-FR-Neural2-F',
+ },
+ },
+ ['fr-fr-neural2-g']: {
+ voice: {
+ name: 'fr-FR-Neural2-G',
+ },
+ },
+ ['fr-fr-polyglot-1']: {
+ voice: {
+ name: 'fr-FR-Polyglot-1',
+ },
+ },
+ ['fr-fr-standard-f']: {
+ voice: {
+ name: 'fr-FR-Standard-F',
+ },
+ },
+ ['fr-fr-standard-g']: {
+ voice: {
+ name: 'fr-FR-Standard-G',
+ },
+ },
+ ['fr-fr-studio-a']: {
+ voice: {
+ name: 'fr-FR-Studio-A',
+ },
+ },
+ ['fr-fr-studio-d']: {
+ voice: {
+ name: 'fr-FR-Studio-D',
+ },
+ },
+ ['fr-fr-wavenet-f']: {
+ voice: {
+ name: 'fr-FR-Wavenet-F',
+ },
+ },
+ ['fr-fr-wavenet-g']: {
+ voice: {
+ name: 'fr-FR-Wavenet-G',
+ },
+ },
+ ['gacrux']: {
+ voice: {
+ name: 'Gacrux',
+ },
+ },
+ ['gl-es-standard-b']: {
+ voice: {
+ name: 'gl-ES-Standard-B',
+ },
+ },
+ ['gu-in-chirp3-hd-achernar']: {
+ voice: {
+ name: 'gu-IN-Chirp3-HD-Achernar',
+ },
+ },
+ ['gu-in-chirp3-hd-achird']: {
+ voice: {
+ name: 'gu-IN-Chirp3-HD-Achird',
+ },
+ },
+ ['gu-in-chirp3-hd-algenib']: {
+ voice: {
+ name: 'gu-IN-Chirp3-HD-Algenib',
+ },
+ },
+ ['gu-in-chirp3-hd-algieba']: {
+ voice: {
+ name: 'gu-IN-Chirp3-HD-Algieba',
+ },
+ },
+ ['gu-in-chirp3-hd-alnilam']: {
+ voice: {
+ name: 'gu-IN-Chirp3-HD-Alnilam',
+ },
+ },
+ ['gu-in-chirp3-hd-aoede']: {
+ voice: {
+ name: 'gu-IN-Chirp3-HD-Aoede',
+ },
+ },
+ ['gu-in-chirp3-hd-autonoe']: {
+ voice: {
+ name: 'gu-IN-Chirp3-HD-Autonoe',
+ },
+ },
+ ['gu-in-chirp3-hd-callirrhoe']: {
+ voice: {
+ name: 'gu-IN-Chirp3-HD-Callirrhoe',
+ },
+ },
+ ['gu-in-chirp3-hd-charon']: {
+ voice: {
+ name: 'gu-IN-Chirp3-HD-Charon',
+ },
+ },
+ ['gu-in-chirp3-hd-despina']: {
+ voice: {
+ name: 'gu-IN-Chirp3-HD-Despina',
+ },
+ },
+ ['gu-in-chirp3-hd-enceladus']: {
+ voice: {
+ name: 'gu-IN-Chirp3-HD-Enceladus',
+ },
+ },
+ ['gu-in-chirp3-hd-erinome']: {
+ voice: {
+ name: 'gu-IN-Chirp3-HD-Erinome',
+ },
+ },
+ ['gu-in-chirp3-hd-fenrir']: {
+ voice: {
+ name: 'gu-IN-Chirp3-HD-Fenrir',
+ },
+ },
+ ['gu-in-chirp3-hd-gacrux']: {
+ voice: {
+ name: 'gu-IN-Chirp3-HD-Gacrux',
+ },
+ },
+ ['gu-in-chirp3-hd-iapetus']: {
+ voice: {
+ name: 'gu-IN-Chirp3-HD-Iapetus',
+ },
+ },
+ ['gu-in-chirp3-hd-kore']: {
+ voice: {
+ name: 'gu-IN-Chirp3-HD-Kore',
+ },
+ },
+ ['gu-in-chirp3-hd-laomedeia']: {
+ voice: {
+ name: 'gu-IN-Chirp3-HD-Laomedeia',
+ },
+ },
+ ['gu-in-chirp3-hd-leda']: {
+ voice: {
+ name: 'gu-IN-Chirp3-HD-Leda',
+ },
+ },
+ ['gu-in-chirp3-hd-orus']: {
+ voice: {
+ name: 'gu-IN-Chirp3-HD-Orus',
+ },
+ },
+ ['gu-in-chirp3-hd-puck']: {
+ voice: {
+ name: 'gu-IN-Chirp3-HD-Puck',
+ },
+ },
+ ['gu-in-chirp3-hd-pulcherrima']: {
+ voice: {
+ name: 'gu-IN-Chirp3-HD-Pulcherrima',
+ },
+ },
+ ['gu-in-chirp3-hd-rasalgethi']: {
+ voice: {
+ name: 'gu-IN-Chirp3-HD-Rasalgethi',
+ },
+ },
+ ['gu-in-chirp3-hd-sadachbia']: {
+ voice: {
+ name: 'gu-IN-Chirp3-HD-Sadachbia',
+ },
+ },
+ ['gu-in-chirp3-hd-sadaltager']: {
+ voice: {
+ name: 'gu-IN-Chirp3-HD-Sadaltager',
+ },
+ },
+ ['gu-in-chirp3-hd-schedar']: {
+ voice: {
+ name: 'gu-IN-Chirp3-HD-Schedar',
+ },
+ },
+ ['gu-in-chirp3-hd-sulafat']: {
+ voice: {
+ name: 'gu-IN-Chirp3-HD-Sulafat',
+ },
+ },
+ ['gu-in-chirp3-hd-umbriel']: {
+ voice: {
+ name: 'gu-IN-Chirp3-HD-Umbriel',
+ },
+ },
+ ['gu-in-chirp3-hd-vindemiatrix']: {
+ voice: {
+ name: 'gu-IN-Chirp3-HD-Vindemiatrix',
+ },
+ },
+ ['gu-in-chirp3-hd-zephyr']: {
+ voice: {
+ name: 'gu-IN-Chirp3-HD-Zephyr',
+ },
+ },
+ ['gu-in-chirp3-hd-zubenelgenubi']: {
+ voice: {
+ name: 'gu-IN-Chirp3-HD-Zubenelgenubi',
+ },
+ },
+ ['gu-in-standard-a']: {
+ voice: {
+ name: 'gu-IN-Standard-A',
+ },
+ },
+ ['gu-in-standard-b']: {
+ voice: {
+ name: 'gu-IN-Standard-B',
+ },
+ },
+ ['gu-in-standard-c']: {
+ voice: {
+ name: 'gu-IN-Standard-C',
+ },
+ },
+ ['gu-in-standard-d']: {
+ voice: {
+ name: 'gu-IN-Standard-D',
+ },
+ },
+ ['gu-in-wavenet-a']: {
+ voice: {
+ name: 'gu-IN-Wavenet-A',
+ },
+ },
+ ['gu-in-wavenet-b']: {
+ voice: {
+ name: 'gu-IN-Wavenet-B',
+ },
+ },
+ ['gu-in-wavenet-c']: {
+ voice: {
+ name: 'gu-IN-Wavenet-C',
+ },
+ },
+ ['gu-in-wavenet-d']: {
+ voice: {
+ name: 'gu-IN-Wavenet-D',
+ },
+ },
+ ['he-il-standard-a']: {
+ voice: {
+ name: 'he-IL-Standard-A',
+ },
+ },
+ ['he-il-standard-b']: {
+ voice: {
+ name: 'he-IL-Standard-B',
+ },
+ },
+ ['he-il-standard-c']: {
+ voice: {
+ name: 'he-IL-Standard-C',
+ },
+ },
+ ['he-il-standard-d']: {
+ voice: {
+ name: 'he-IL-Standard-D',
+ },
+ },
+ ['he-il-wavenet-a']: {
+ voice: {
+ name: 'he-IL-Wavenet-A',
+ },
+ },
+ ['he-il-wavenet-b']: {
+ voice: {
+ name: 'he-IL-Wavenet-B',
+ },
+ },
+ ['he-il-wavenet-c']: {
+ voice: {
+ name: 'he-IL-Wavenet-C',
+ },
+ },
+ ['he-il-wavenet-d']: {
+ voice: {
+ name: 'he-IL-Wavenet-D',
+ },
+ },
+ ['hi-in-chirp3-hd-achernar']: {
+ voice: {
+ name: 'hi-IN-Chirp3-HD-Achernar',
+ },
+ },
+ ['hi-in-chirp3-hd-achird']: {
+ voice: {
+ name: 'hi-IN-Chirp3-HD-Achird',
+ },
+ },
+ ['hi-in-chirp3-hd-algenib']: {
+ voice: {
+ name: 'hi-IN-Chirp3-HD-Algenib',
+ },
+ },
+ ['hi-in-chirp3-hd-algieba']: {
+ voice: {
+ name: 'hi-IN-Chirp3-HD-Algieba',
+ },
+ },
+ ['hi-in-chirp3-hd-alnilam']: {
+ voice: {
+ name: 'hi-IN-Chirp3-HD-Alnilam',
+ },
+ },
+ ['hi-in-chirp3-hd-aoede']: {
+ voice: {
+ name: 'hi-IN-Chirp3-HD-Aoede',
+ },
+ },
+ ['hi-in-chirp3-hd-autonoe']: {
+ voice: {
+ name: 'hi-IN-Chirp3-HD-Autonoe',
+ },
+ },
+ ['hi-in-chirp3-hd-callirrhoe']: {
+ voice: {
+ name: 'hi-IN-Chirp3-HD-Callirrhoe',
+ },
+ },
+ ['hi-in-chirp3-hd-charon']: {
+ voice: {
+ name: 'hi-IN-Chirp3-HD-Charon',
+ },
+ },
+ ['hi-in-chirp3-hd-despina']: {
+ voice: {
+ name: 'hi-IN-Chirp3-HD-Despina',
+ },
+ },
+ ['hi-in-chirp3-hd-enceladus']: {
+ voice: {
+ name: 'hi-IN-Chirp3-HD-Enceladus',
+ },
+ },
+ ['hi-in-chirp3-hd-erinome']: {
+ voice: {
+ name: 'hi-IN-Chirp3-HD-Erinome',
+ },
+ },
+ ['hi-in-chirp3-hd-fenrir']: {
+ voice: {
+ name: 'hi-IN-Chirp3-HD-Fenrir',
+ },
+ },
+ ['hi-in-chirp3-hd-gacrux']: {
+ voice: {
+ name: 'hi-IN-Chirp3-HD-Gacrux',
+ },
+ },
+ ['hi-in-chirp3-hd-iapetus']: {
+ voice: {
+ name: 'hi-IN-Chirp3-HD-Iapetus',
+ },
+ },
+ ['hi-in-chirp3-hd-kore']: {
+ voice: {
+ name: 'hi-IN-Chirp3-HD-Kore',
+ },
+ },
+ ['hi-in-chirp3-hd-laomedeia']: {
+ voice: {
+ name: 'hi-IN-Chirp3-HD-Laomedeia',
+ },
+ },
+ ['hi-in-chirp3-hd-leda']: {
+ voice: {
+ name: 'hi-IN-Chirp3-HD-Leda',
+ },
+ },
+ ['hi-in-chirp3-hd-orus']: {
+ voice: {
+ name: 'hi-IN-Chirp3-HD-Orus',
+ },
+ },
+ ['hi-in-chirp3-hd-puck']: {
+ voice: {
+ name: 'hi-IN-Chirp3-HD-Puck',
+ },
+ },
+ ['hi-in-chirp3-hd-pulcherrima']: {
+ voice: {
+ name: 'hi-IN-Chirp3-HD-Pulcherrima',
+ },
+ },
+ ['hi-in-chirp3-hd-rasalgethi']: {
+ voice: {
+ name: 'hi-IN-Chirp3-HD-Rasalgethi',
+ },
+ },
+ ['hi-in-chirp3-hd-sadachbia']: {
+ voice: {
+ name: 'hi-IN-Chirp3-HD-Sadachbia',
+ },
+ },
+ ['hi-in-chirp3-hd-sadaltager']: {
+ voice: {
+ name: 'hi-IN-Chirp3-HD-Sadaltager',
+ },
+ },
+ ['hi-in-chirp3-hd-schedar']: {
+ voice: {
+ name: 'hi-IN-Chirp3-HD-Schedar',
+ },
+ },
+ ['hi-in-chirp3-hd-sulafat']: {
+ voice: {
+ name: 'hi-IN-Chirp3-HD-Sulafat',
+ },
+ },
+ ['hi-in-chirp3-hd-umbriel']: {
+ voice: {
+ name: 'hi-IN-Chirp3-HD-Umbriel',
+ },
+ },
+ ['hi-in-chirp3-hd-vindemiatrix']: {
+ voice: {
+ name: 'hi-IN-Chirp3-HD-Vindemiatrix',
+ },
+ },
+ ['hi-in-chirp3-hd-zephyr']: {
+ voice: {
+ name: 'hi-IN-Chirp3-HD-Zephyr',
+ },
+ },
+ ['hi-in-chirp3-hd-zubenelgenubi']: {
+ voice: {
+ name: 'hi-IN-Chirp3-HD-Zubenelgenubi',
+ },
+ },
+ ['hi-in-neural2-a']: {
+ voice: {
+ name: 'hi-IN-Neural2-A',
+ },
+ },
+ ['hi-in-neural2-b']: {
+ voice: {
+ name: 'hi-IN-Neural2-B',
+ },
+ },
+ ['hi-in-neural2-c']: {
+ voice: {
+ name: 'hi-IN-Neural2-C',
+ },
+ },
+ ['hi-in-neural2-d']: {
+ voice: {
+ name: 'hi-IN-Neural2-D',
+ },
+ },
+ ['hi-in-standard-a']: {
+ voice: {
+ name: 'hi-IN-Standard-A',
+ },
+ },
+ ['hi-in-standard-b']: {
+ voice: {
+ name: 'hi-IN-Standard-B',
+ },
+ },
+ ['hi-in-standard-c']: {
+ voice: {
+ name: 'hi-IN-Standard-C',
+ },
+ },
+ ['hi-in-standard-d']: {
+ voice: {
+ name: 'hi-IN-Standard-D',
+ },
+ },
+ ['hi-in-standard-e']: {
+ voice: {
+ name: 'hi-IN-Standard-E',
+ },
+ },
+ ['hi-in-standard-f']: {
+ voice: {
+ name: 'hi-IN-Standard-F',
+ },
+ },
+ ['hi-in-wavenet-a']: {
+ voice: {
+ name: 'hi-IN-Wavenet-A',
+ },
+ },
+ ['hi-in-wavenet-b']: {
+ voice: {
+ name: 'hi-IN-Wavenet-B',
+ },
+ },
+ ['hi-in-wavenet-c']: {
+ voice: {
+ name: 'hi-IN-Wavenet-C',
+ },
+ },
+ ['hi-in-wavenet-d']: {
+ voice: {
+ name: 'hi-IN-Wavenet-D',
+ },
+ },
+ ['hi-in-wavenet-e']: {
+ voice: {
+ name: 'hi-IN-Wavenet-E',
+ },
+ },
+ ['hi-in-wavenet-f']: {
+ voice: {
+ name: 'hi-IN-Wavenet-F',
+ },
+ },
+ ['hu-hu-standard-b']: {
+ voice: {
+ name: 'hu-HU-Standard-B',
+ },
+ },
+ ['hu-hu-wavenet-b']: {
+ voice: {
+ name: 'hu-HU-Wavenet-B',
+ },
+ },
+ ['iapetus']: {
+ voice: {
+ name: 'Iapetus',
+ },
+ },
+ ['id-id-chirp3-hd-achernar']: {
+ voice: {
+ name: 'id-ID-Chirp3-HD-Achernar',
+ },
+ },
+ ['id-id-chirp3-hd-achird']: {
+ voice: {
+ name: 'id-ID-Chirp3-HD-Achird',
+ },
+ },
+ ['id-id-chirp3-hd-algenib']: {
+ voice: {
+ name: 'id-ID-Chirp3-HD-Algenib',
+ },
+ },
+ ['id-id-chirp3-hd-algieba']: {
+ voice: {
+ name: 'id-ID-Chirp3-HD-Algieba',
+ },
+ },
+ ['id-id-chirp3-hd-alnilam']: {
+ voice: {
+ name: 'id-ID-Chirp3-HD-Alnilam',
+ },
+ },
+ ['id-id-chirp3-hd-aoede']: {
+ voice: {
+ name: 'id-ID-Chirp3-HD-Aoede',
+ },
+ },
+ ['id-id-chirp3-hd-autonoe']: {
+ voice: {
+ name: 'id-ID-Chirp3-HD-Autonoe',
+ },
+ },
+ ['id-id-chirp3-hd-callirrhoe']: {
+ voice: {
+ name: 'id-ID-Chirp3-HD-Callirrhoe',
+ },
+ },
+ ['id-id-chirp3-hd-charon']: {
+ voice: {
+ name: 'id-ID-Chirp3-HD-Charon',
+ },
+ },
+ ['id-id-chirp3-hd-despina']: {
+ voice: {
+ name: 'id-ID-Chirp3-HD-Despina',
+ },
+ },
+ ['id-id-chirp3-hd-enceladus']: {
+ voice: {
+ name: 'id-ID-Chirp3-HD-Enceladus',
+ },
+ },
+ ['id-id-chirp3-hd-erinome']: {
+ voice: {
+ name: 'id-ID-Chirp3-HD-Erinome',
+ },
+ },
+ ['id-id-chirp3-hd-fenrir']: {
+ voice: {
+ name: 'id-ID-Chirp3-HD-Fenrir',
+ },
+ },
+ ['id-id-chirp3-hd-gacrux']: {
+ voice: {
+ name: 'id-ID-Chirp3-HD-Gacrux',
+ },
+ },
+ ['id-id-chirp3-hd-iapetus']: {
+ voice: {
+ name: 'id-ID-Chirp3-HD-Iapetus',
+ },
+ },
+ ['id-id-chirp3-hd-kore']: {
+ voice: {
+ name: 'id-ID-Chirp3-HD-Kore',
+ },
+ },
+ ['id-id-chirp3-hd-laomedeia']: {
+ voice: {
+ name: 'id-ID-Chirp3-HD-Laomedeia',
+ },
+ },
+ ['id-id-chirp3-hd-leda']: {
+ voice: {
+ name: 'id-ID-Chirp3-HD-Leda',
+ },
+ },
+ ['id-id-chirp3-hd-orus']: {
+ voice: {
+ name: 'id-ID-Chirp3-HD-Orus',
+ },
+ },
+ ['id-id-chirp3-hd-puck']: {
+ voice: {
+ name: 'id-ID-Chirp3-HD-Puck',
+ },
+ },
+ ['id-id-chirp3-hd-pulcherrima']: {
+ voice: {
+ name: 'id-ID-Chirp3-HD-Pulcherrima',
+ },
+ },
+ ['id-id-chirp3-hd-rasalgethi']: {
+ voice: {
+ name: 'id-ID-Chirp3-HD-Rasalgethi',
+ },
+ },
+ ['id-id-chirp3-hd-sadachbia']: {
+ voice: {
+ name: 'id-ID-Chirp3-HD-Sadachbia',
+ },
+ },
+ ['id-id-chirp3-hd-sadaltager']: {
+ voice: {
+ name: 'id-ID-Chirp3-HD-Sadaltager',
+ },
+ },
+ ['id-id-chirp3-hd-schedar']: {
+ voice: {
+ name: 'id-ID-Chirp3-HD-Schedar',
+ },
+ },
+ ['id-id-chirp3-hd-sulafat']: {
+ voice: {
+ name: 'id-ID-Chirp3-HD-Sulafat',
+ },
+ },
+ ['id-id-chirp3-hd-umbriel']: {
+ voice: {
+ name: 'id-ID-Chirp3-HD-Umbriel',
+ },
+ },
+ ['id-id-chirp3-hd-vindemiatrix']: {
+ voice: {
+ name: 'id-ID-Chirp3-HD-Vindemiatrix',
+ },
+ },
+ ['id-id-chirp3-hd-zephyr']: {
+ voice: {
+ name: 'id-ID-Chirp3-HD-Zephyr',
+ },
+ },
+ ['id-id-chirp3-hd-zubenelgenubi']: {
+ voice: {
+ name: 'id-ID-Chirp3-HD-Zubenelgenubi',
+ },
+ },
+ ['id-id-standard-a']: {
+ voice: {
+ name: 'id-ID-Standard-A',
+ },
+ },
+ ['id-id-standard-b']: {
+ voice: {
+ name: 'id-ID-Standard-B',
+ },
+ },
+ ['id-id-standard-c']: {
+ voice: {
+ name: 'id-ID-Standard-C',
+ },
+ },
+ ['id-id-standard-d']: {
+ voice: {
+ name: 'id-ID-Standard-D',
+ },
+ },
+ ['id-id-wavenet-a']: {
+ voice: {
+ name: 'id-ID-Wavenet-A',
+ },
+ },
+ ['id-id-wavenet-b']: {
+ voice: {
+ name: 'id-ID-Wavenet-B',
+ },
+ },
+ ['id-id-wavenet-c']: {
+ voice: {
+ name: 'id-ID-Wavenet-C',
+ },
+ },
+ ['id-id-wavenet-d']: {
+ voice: {
+ name: 'id-ID-Wavenet-D',
+ },
+ },
+ ['is-is-standard-b']: {
+ voice: {
+ name: 'is-IS-Standard-B',
+ },
+ },
+ ['it-it-chirp-hd-d']: {
+ voice: {
+ name: 'it-IT-Chirp-HD-D',
+ },
+ },
+ ['it-it-chirp-hd-f']: {
+ voice: {
+ name: 'it-IT-Chirp-HD-F',
+ },
+ },
+ ['it-it-chirp-hd-o']: {
+ voice: {
+ name: 'it-IT-Chirp-HD-O',
+ },
+ },
+ ['it-it-chirp3-hd-achernar']: {
+ voice: {
+ name: 'it-IT-Chirp3-HD-Achernar',
+ },
+ },
+ ['it-it-chirp3-hd-achird']: {
+ voice: {
+ name: 'it-IT-Chirp3-HD-Achird',
+ },
+ },
+ ['it-it-chirp3-hd-algenib']: {
+ voice: {
+ name: 'it-IT-Chirp3-HD-Algenib',
+ },
+ },
+ ['it-it-chirp3-hd-algieba']: {
+ voice: {
+ name: 'it-IT-Chirp3-HD-Algieba',
+ },
+ },
+ ['it-it-chirp3-hd-alnilam']: {
+ voice: {
+ name: 'it-IT-Chirp3-HD-Alnilam',
+ },
+ },
+ ['it-it-chirp3-hd-aoede']: {
+ voice: {
+ name: 'it-IT-Chirp3-HD-Aoede',
+ },
+ },
+ ['it-it-chirp3-hd-autonoe']: {
+ voice: {
+ name: 'it-IT-Chirp3-HD-Autonoe',
+ },
+ },
+ ['it-it-chirp3-hd-callirrhoe']: {
+ voice: {
+ name: 'it-IT-Chirp3-HD-Callirrhoe',
+ },
+ },
+ ['it-it-chirp3-hd-charon']: {
+ voice: {
+ name: 'it-IT-Chirp3-HD-Charon',
+ },
+ },
+ ['it-it-chirp3-hd-despina']: {
+ voice: {
+ name: 'it-IT-Chirp3-HD-Despina',
+ },
+ },
+ ['it-it-chirp3-hd-enceladus']: {
+ voice: {
+ name: 'it-IT-Chirp3-HD-Enceladus',
+ },
+ },
+ ['it-it-chirp3-hd-erinome']: {
+ voice: {
+ name: 'it-IT-Chirp3-HD-Erinome',
+ },
+ },
+ ['it-it-chirp3-hd-fenrir']: {
+ voice: {
+ name: 'it-IT-Chirp3-HD-Fenrir',
+ },
+ },
+ ['it-it-chirp3-hd-gacrux']: {
+ voice: {
+ name: 'it-IT-Chirp3-HD-Gacrux',
+ },
+ },
+ ['it-it-chirp3-hd-iapetus']: {
+ voice: {
+ name: 'it-IT-Chirp3-HD-Iapetus',
+ },
+ },
+ ['it-it-chirp3-hd-kore']: {
+ voice: {
+ name: 'it-IT-Chirp3-HD-Kore',
+ },
+ },
+ ['it-it-chirp3-hd-laomedeia']: {
+ voice: {
+ name: 'it-IT-Chirp3-HD-Laomedeia',
+ },
+ },
+ ['it-it-chirp3-hd-leda']: {
+ voice: {
+ name: 'it-IT-Chirp3-HD-Leda',
+ },
+ },
+ ['it-it-chirp3-hd-orus']: {
+ voice: {
+ name: 'it-IT-Chirp3-HD-Orus',
+ },
+ },
+ ['it-it-chirp3-hd-puck']: {
+ voice: {
+ name: 'it-IT-Chirp3-HD-Puck',
+ },
+ },
+ ['it-it-chirp3-hd-pulcherrima']: {
+ voice: {
+ name: 'it-IT-Chirp3-HD-Pulcherrima',
+ },
+ },
+ ['it-it-chirp3-hd-rasalgethi']: {
+ voice: {
+ name: 'it-IT-Chirp3-HD-Rasalgethi',
+ },
+ },
+ ['it-it-chirp3-hd-sadachbia']: {
+ voice: {
+ name: 'it-IT-Chirp3-HD-Sadachbia',
+ },
+ },
+ ['it-it-chirp3-hd-sadaltager']: {
+ voice: {
+ name: 'it-IT-Chirp3-HD-Sadaltager',
+ },
+ },
+ ['it-it-chirp3-hd-schedar']: {
+ voice: {
+ name: 'it-IT-Chirp3-HD-Schedar',
+ },
+ },
+ ['it-it-chirp3-hd-sulafat']: {
+ voice: {
+ name: 'it-IT-Chirp3-HD-Sulafat',
+ },
+ },
+ ['it-it-chirp3-hd-umbriel']: {
+ voice: {
+ name: 'it-IT-Chirp3-HD-Umbriel',
+ },
+ },
+ ['it-it-chirp3-hd-vindemiatrix']: {
+ voice: {
+ name: 'it-IT-Chirp3-HD-Vindemiatrix',
+ },
+ },
+ ['it-it-chirp3-hd-zephyr']: {
+ voice: {
+ name: 'it-IT-Chirp3-HD-Zephyr',
+ },
+ },
+ ['it-it-chirp3-hd-zubenelgenubi']: {
+ voice: {
+ name: 'it-IT-Chirp3-HD-Zubenelgenubi',
+ },
+ },
+ ['it-it-neural2-a']: {
+ voice: {
+ name: 'it-IT-Neural2-A',
+ },
+ },
+ ['it-it-neural2-e']: {
+ voice: {
+ name: 'it-IT-Neural2-E',
+ },
+ },
+ ['it-it-neural2-f']: {
+ voice: {
+ name: 'it-IT-Neural2-F',
+ },
+ },
+ ['it-it-standard-e']: {
+ voice: {
+ name: 'it-IT-Standard-E',
+ },
+ },
+ ['it-it-standard-f']: {
+ voice: {
+ name: 'it-IT-Standard-F',
+ },
+ },
+ ['it-it-wavenet-e']: {
+ voice: {
+ name: 'it-IT-Wavenet-E',
+ },
+ },
+ ['it-it-wavenet-f']: {
+ voice: {
+ name: 'it-IT-Wavenet-F',
+ },
+ },
+ ['ja-jp-chirp3-hd-achernar']: {
+ voice: {
+ name: 'ja-JP-Chirp3-HD-Achernar',
+ },
+ },
+ ['ja-jp-chirp3-hd-achird']: {
+ voice: {
+ name: 'ja-JP-Chirp3-HD-Achird',
+ },
+ },
+ ['ja-jp-chirp3-hd-algenib']: {
+ voice: {
+ name: 'ja-JP-Chirp3-HD-Algenib',
+ },
+ },
+ ['ja-jp-chirp3-hd-algieba']: {
+ voice: {
+ name: 'ja-JP-Chirp3-HD-Algieba',
+ },
+ },
+ ['ja-jp-chirp3-hd-alnilam']: {
+ voice: {
+ name: 'ja-JP-Chirp3-HD-Alnilam',
+ },
+ },
+ ['ja-jp-chirp3-hd-aoede']: {
+ voice: {
+ name: 'ja-JP-Chirp3-HD-Aoede',
+ },
+ },
+ ['ja-jp-chirp3-hd-autonoe']: {
+ voice: {
+ name: 'ja-JP-Chirp3-HD-Autonoe',
+ },
+ },
+ ['ja-jp-chirp3-hd-callirrhoe']: {
+ voice: {
+ name: 'ja-JP-Chirp3-HD-Callirrhoe',
+ },
+ },
+ ['ja-jp-chirp3-hd-charon']: {
+ voice: {
+ name: 'ja-JP-Chirp3-HD-Charon',
+ },
+ },
+ ['ja-jp-chirp3-hd-despina']: {
+ voice: {
+ name: 'ja-JP-Chirp3-HD-Despina',
+ },
+ },
+ ['ja-jp-chirp3-hd-enceladus']: {
+ voice: {
+ name: 'ja-JP-Chirp3-HD-Enceladus',
+ },
+ },
+ ['ja-jp-chirp3-hd-erinome']: {
+ voice: {
+ name: 'ja-JP-Chirp3-HD-Erinome',
+ },
+ },
+ ['ja-jp-chirp3-hd-fenrir']: {
+ voice: {
+ name: 'ja-JP-Chirp3-HD-Fenrir',
+ },
+ },
+ ['ja-jp-chirp3-hd-gacrux']: {
+ voice: {
+ name: 'ja-JP-Chirp3-HD-Gacrux',
+ },
+ },
+ ['ja-jp-chirp3-hd-iapetus']: {
+ voice: {
+ name: 'ja-JP-Chirp3-HD-Iapetus',
+ },
+ },
+ ['ja-jp-chirp3-hd-kore']: {
+ voice: {
+ name: 'ja-JP-Chirp3-HD-Kore',
+ },
+ },
+ ['ja-jp-chirp3-hd-laomedeia']: {
+ voice: {
+ name: 'ja-JP-Chirp3-HD-Laomedeia',
+ },
+ },
+ ['ja-jp-chirp3-hd-leda']: {
+ voice: {
+ name: 'ja-JP-Chirp3-HD-Leda',
+ },
+ },
+ ['ja-jp-chirp3-hd-orus']: {
+ voice: {
+ name: 'ja-JP-Chirp3-HD-Orus',
+ },
+ },
+ ['ja-jp-chirp3-hd-puck']: {
+ voice: {
+ name: 'ja-JP-Chirp3-HD-Puck',
+ },
+ },
+ ['ja-jp-chirp3-hd-pulcherrima']: {
+ voice: {
+ name: 'ja-JP-Chirp3-HD-Pulcherrima',
+ },
+ },
+ ['ja-jp-chirp3-hd-rasalgethi']: {
+ voice: {
+ name: 'ja-JP-Chirp3-HD-Rasalgethi',
+ },
+ },
+ ['ja-jp-chirp3-hd-sadachbia']: {
+ voice: {
+ name: 'ja-JP-Chirp3-HD-Sadachbia',
+ },
+ },
+ ['ja-jp-chirp3-hd-sadaltager']: {
+ voice: {
+ name: 'ja-JP-Chirp3-HD-Sadaltager',
+ },
+ },
+ ['ja-jp-chirp3-hd-schedar']: {
+ voice: {
+ name: 'ja-JP-Chirp3-HD-Schedar',
+ },
+ },
+ ['ja-jp-chirp3-hd-sulafat']: {
+ voice: {
+ name: 'ja-JP-Chirp3-HD-Sulafat',
+ },
+ },
+ ['ja-jp-chirp3-hd-umbriel']: {
+ voice: {
+ name: 'ja-JP-Chirp3-HD-Umbriel',
+ },
+ },
+ ['ja-jp-chirp3-hd-vindemiatrix']: {
+ voice: {
+ name: 'ja-JP-Chirp3-HD-Vindemiatrix',
+ },
+ },
+ ['ja-jp-chirp3-hd-zephyr']: {
+ voice: {
+ name: 'ja-JP-Chirp3-HD-Zephyr',
+ },
+ },
+ ['ja-jp-chirp3-hd-zubenelgenubi']: {
+ voice: {
+ name: 'ja-JP-Chirp3-HD-Zubenelgenubi',
+ },
+ },
+ ['ja-jp-neural2-b']: {
+ voice: {
+ name: 'ja-JP-Neural2-B',
+ },
+ },
+ ['ja-jp-neural2-c']: {
+ voice: {
+ name: 'ja-JP-Neural2-C',
+ },
+ },
+ ['ja-jp-neural2-d']: {
+ voice: {
+ name: 'ja-JP-Neural2-D',
+ },
+ },
+ ['ja-jp-standard-a']: {
+ voice: {
+ name: 'ja-JP-Standard-A',
+ },
+ },
+ ['ja-jp-standard-b']: {
+ voice: {
+ name: 'ja-JP-Standard-B',
+ },
+ },
+ ['ja-jp-standard-c']: {
+ voice: {
+ name: 'ja-JP-Standard-C',
+ },
+ },
+ ['ja-jp-standard-d']: {
+ voice: {
+ name: 'ja-JP-Standard-D',
+ },
+ },
+ ['ja-jp-wavenet-a']: {
+ voice: {
+ name: 'ja-JP-Wavenet-A',
+ },
+ },
+ ['ja-jp-wavenet-b']: {
+ voice: {
+ name: 'ja-JP-Wavenet-B',
+ },
+ },
+ ['ja-jp-wavenet-c']: {
+ voice: {
+ name: 'ja-JP-Wavenet-C',
+ },
+ },
+ ['ja-jp-wavenet-d']: {
+ voice: {
+ name: 'ja-JP-Wavenet-D',
+ },
+ },
+ ['kn-in-chirp3-hd-achernar']: {
+ voice: {
+ name: 'kn-IN-Chirp3-HD-Achernar',
+ },
+ },
+ ['kn-in-chirp3-hd-achird']: {
+ voice: {
+ name: 'kn-IN-Chirp3-HD-Achird',
+ },
+ },
+ ['kn-in-chirp3-hd-algenib']: {
+ voice: {
+ name: 'kn-IN-Chirp3-HD-Algenib',
+ },
+ },
+ ['kn-in-chirp3-hd-algieba']: {
+ voice: {
+ name: 'kn-IN-Chirp3-HD-Algieba',
+ },
+ },
+ ['kn-in-chirp3-hd-alnilam']: {
+ voice: {
+ name: 'kn-IN-Chirp3-HD-Alnilam',
+ },
+ },
+ ['kn-in-chirp3-hd-aoede']: {
+ voice: {
+ name: 'kn-IN-Chirp3-HD-Aoede',
+ },
+ },
+ ['kn-in-chirp3-hd-autonoe']: {
+ voice: {
+ name: 'kn-IN-Chirp3-HD-Autonoe',
+ },
+ },
+ ['kn-in-chirp3-hd-callirrhoe']: {
+ voice: {
+ name: 'kn-IN-Chirp3-HD-Callirrhoe',
+ },
+ },
+ ['kn-in-chirp3-hd-charon']: {
+ voice: {
+ name: 'kn-IN-Chirp3-HD-Charon',
+ },
+ },
+ ['kn-in-chirp3-hd-despina']: {
+ voice: {
+ name: 'kn-IN-Chirp3-HD-Despina',
+ },
+ },
+ ['kn-in-chirp3-hd-enceladus']: {
+ voice: {
+ name: 'kn-IN-Chirp3-HD-Enceladus',
+ },
+ },
+ ['kn-in-chirp3-hd-erinome']: {
+ voice: {
+ name: 'kn-IN-Chirp3-HD-Erinome',
+ },
+ },
+ ['kn-in-chirp3-hd-fenrir']: {
+ voice: {
+ name: 'kn-IN-Chirp3-HD-Fenrir',
+ },
+ },
+ ['kn-in-chirp3-hd-gacrux']: {
+ voice: {
+ name: 'kn-IN-Chirp3-HD-Gacrux',
+ },
+ },
+ ['kn-in-chirp3-hd-iapetus']: {
+ voice: {
+ name: 'kn-IN-Chirp3-HD-Iapetus',
+ },
+ },
+ ['kn-in-chirp3-hd-kore']: {
+ voice: {
+ name: 'kn-IN-Chirp3-HD-Kore',
+ },
+ },
+ ['kn-in-chirp3-hd-laomedeia']: {
+ voice: {
+ name: 'kn-IN-Chirp3-HD-Laomedeia',
+ },
+ },
+ ['kn-in-chirp3-hd-leda']: {
+ voice: {
+ name: 'kn-IN-Chirp3-HD-Leda',
+ },
+ },
+ ['kn-in-chirp3-hd-orus']: {
+ voice: {
+ name: 'kn-IN-Chirp3-HD-Orus',
+ },
+ },
+ ['kn-in-chirp3-hd-puck']: {
+ voice: {
+ name: 'kn-IN-Chirp3-HD-Puck',
+ },
+ },
+ ['kn-in-chirp3-hd-pulcherrima']: {
+ voice: {
+ name: 'kn-IN-Chirp3-HD-Pulcherrima',
+ },
+ },
+ ['kn-in-chirp3-hd-rasalgethi']: {
+ voice: {
+ name: 'kn-IN-Chirp3-HD-Rasalgethi',
+ },
+ },
+ ['kn-in-chirp3-hd-sadachbia']: {
+ voice: {
+ name: 'kn-IN-Chirp3-HD-Sadachbia',
+ },
+ },
+ ['kn-in-chirp3-hd-sadaltager']: {
+ voice: {
+ name: 'kn-IN-Chirp3-HD-Sadaltager',
+ },
+ },
+ ['kn-in-chirp3-hd-schedar']: {
+ voice: {
+ name: 'kn-IN-Chirp3-HD-Schedar',
+ },
+ },
+ ['kn-in-chirp3-hd-sulafat']: {
+ voice: {
+ name: 'kn-IN-Chirp3-HD-Sulafat',
+ },
+ },
+ ['kn-in-chirp3-hd-umbriel']: {
+ voice: {
+ name: 'kn-IN-Chirp3-HD-Umbriel',
+ },
+ },
+ ['kn-in-chirp3-hd-vindemiatrix']: {
+ voice: {
+ name: 'kn-IN-Chirp3-HD-Vindemiatrix',
+ },
+ },
+ ['kn-in-chirp3-hd-zephyr']: {
+ voice: {
+ name: 'kn-IN-Chirp3-HD-Zephyr',
+ },
+ },
+ ['kn-in-chirp3-hd-zubenelgenubi']: {
+ voice: {
+ name: 'kn-IN-Chirp3-HD-Zubenelgenubi',
+ },
+ },
+ ['kn-in-standard-a']: {
+ voice: {
+ name: 'kn-IN-Standard-A',
+ },
+ },
+ ['kn-in-standard-b']: {
+ voice: {
+ name: 'kn-IN-Standard-B',
+ },
+ },
+ ['kn-in-standard-c']: {
+ voice: {
+ name: 'kn-IN-Standard-C',
+ },
+ },
+ ['kn-in-standard-d']: {
+ voice: {
+ name: 'kn-IN-Standard-D',
+ },
+ },
+ ['kn-in-wavenet-a']: {
+ voice: {
+ name: 'kn-IN-Wavenet-A',
+ },
+ },
+ ['kn-in-wavenet-b']: {
+ voice: {
+ name: 'kn-IN-Wavenet-B',
+ },
+ },
+ ['kn-in-wavenet-c']: {
+ voice: {
+ name: 'kn-IN-Wavenet-C',
+ },
+ },
+ ['kn-in-wavenet-d']: {
+ voice: {
+ name: 'kn-IN-Wavenet-D',
+ },
+ },
+ ['ko-kr-chirp3-hd-achernar']: {
+ voice: {
+ name: 'ko-KR-Chirp3-HD-Achernar',
+ },
+ },
+ ['ko-kr-chirp3-hd-achird']: {
+ voice: {
+ name: 'ko-KR-Chirp3-HD-Achird',
+ },
+ },
+ ['ko-kr-chirp3-hd-algenib']: {
+ voice: {
+ name: 'ko-KR-Chirp3-HD-Algenib',
+ },
+ },
+ ['ko-kr-chirp3-hd-algieba']: {
+ voice: {
+ name: 'ko-KR-Chirp3-HD-Algieba',
+ },
+ },
+ ['ko-kr-chirp3-hd-alnilam']: {
+ voice: {
+ name: 'ko-KR-Chirp3-HD-Alnilam',
+ },
+ },
+ ['ko-kr-chirp3-hd-aoede']: {
+ voice: {
+ name: 'ko-KR-Chirp3-HD-Aoede',
+ },
+ },
+ ['ko-kr-chirp3-hd-autonoe']: {
+ voice: {
+ name: 'ko-KR-Chirp3-HD-Autonoe',
+ },
+ },
+ ['ko-kr-chirp3-hd-callirrhoe']: {
+ voice: {
+ name: 'ko-KR-Chirp3-HD-Callirrhoe',
+ },
+ },
+ ['ko-kr-chirp3-hd-charon']: {
+ voice: {
+ name: 'ko-KR-Chirp3-HD-Charon',
+ },
+ },
+ ['ko-kr-chirp3-hd-despina']: {
+ voice: {
+ name: 'ko-KR-Chirp3-HD-Despina',
+ },
+ },
+ ['ko-kr-chirp3-hd-enceladus']: {
+ voice: {
+ name: 'ko-KR-Chirp3-HD-Enceladus',
+ },
+ },
+ ['ko-kr-chirp3-hd-erinome']: {
+ voice: {
+ name: 'ko-KR-Chirp3-HD-Erinome',
+ },
+ },
+ ['ko-kr-chirp3-hd-fenrir']: {
+ voice: {
+ name: 'ko-KR-Chirp3-HD-Fenrir',
+ },
+ },
+ ['ko-kr-chirp3-hd-gacrux']: {
+ voice: {
+ name: 'ko-KR-Chirp3-HD-Gacrux',
+ },
+ },
+ ['ko-kr-chirp3-hd-iapetus']: {
+ voice: {
+ name: 'ko-KR-Chirp3-HD-Iapetus',
+ },
+ },
+ ['ko-kr-chirp3-hd-kore']: {
+ voice: {
+ name: 'ko-KR-Chirp3-HD-Kore',
+ },
+ },
+ ['ko-kr-chirp3-hd-laomedeia']: {
+ voice: {
+ name: 'ko-KR-Chirp3-HD-Laomedeia',
+ },
+ },
+ ['ko-kr-chirp3-hd-leda']: {
+ voice: {
+ name: 'ko-KR-Chirp3-HD-Leda',
+ },
+ },
+ ['ko-kr-chirp3-hd-orus']: {
+ voice: {
+ name: 'ko-KR-Chirp3-HD-Orus',
+ },
+ },
+ ['ko-kr-chirp3-hd-puck']: {
+ voice: {
+ name: 'ko-KR-Chirp3-HD-Puck',
+ },
+ },
+ ['ko-kr-chirp3-hd-pulcherrima']: {
+ voice: {
+ name: 'ko-KR-Chirp3-HD-Pulcherrima',
+ },
+ },
+ ['ko-kr-chirp3-hd-rasalgethi']: {
+ voice: {
+ name: 'ko-KR-Chirp3-HD-Rasalgethi',
+ },
+ },
+ ['ko-kr-chirp3-hd-sadachbia']: {
+ voice: {
+ name: 'ko-KR-Chirp3-HD-Sadachbia',
+ },
+ },
+ ['ko-kr-chirp3-hd-sadaltager']: {
+ voice: {
+ name: 'ko-KR-Chirp3-HD-Sadaltager',
+ },
+ },
+ ['ko-kr-chirp3-hd-schedar']: {
+ voice: {
+ name: 'ko-KR-Chirp3-HD-Schedar',
+ },
+ },
+ ['ko-kr-chirp3-hd-sulafat']: {
+ voice: {
+ name: 'ko-KR-Chirp3-HD-Sulafat',
+ },
+ },
+ ['ko-kr-chirp3-hd-umbriel']: {
+ voice: {
+ name: 'ko-KR-Chirp3-HD-Umbriel',
+ },
+ },
+ ['ko-kr-chirp3-hd-vindemiatrix']: {
+ voice: {
+ name: 'ko-KR-Chirp3-HD-Vindemiatrix',
+ },
+ },
+ ['ko-kr-chirp3-hd-zephyr']: {
+ voice: {
+ name: 'ko-KR-Chirp3-HD-Zephyr',
+ },
+ },
+ ['ko-kr-chirp3-hd-zubenelgenubi']: {
+ voice: {
+ name: 'ko-KR-Chirp3-HD-Zubenelgenubi',
+ },
+ },
+ ['ko-kr-neural2-a']: {
+ voice: {
+ name: 'ko-KR-Neural2-A',
+ },
+ },
+ ['ko-kr-neural2-b']: {
+ voice: {
+ name: 'ko-KR-Neural2-B',
+ },
+ },
+ ['ko-kr-neural2-c']: {
+ voice: {
+ name: 'ko-KR-Neural2-C',
+ },
+ },
+ ['ko-kr-standard-a']: {
+ voice: {
+ name: 'ko-KR-Standard-A',
+ },
+ },
+ ['ko-kr-standard-b']: {
+ voice: {
+ name: 'ko-KR-Standard-B',
+ },
+ },
+ ['ko-kr-standard-c']: {
+ voice: {
+ name: 'ko-KR-Standard-C',
+ },
+ },
+ ['ko-kr-standard-d']: {
+ voice: {
+ name: 'ko-KR-Standard-D',
+ },
+ },
+ ['ko-kr-wavenet-a']: {
+ voice: {
+ name: 'ko-KR-Wavenet-A',
+ },
+ },
+ ['ko-kr-wavenet-b']: {
+ voice: {
+ name: 'ko-KR-Wavenet-B',
+ },
+ },
+ ['ko-kr-wavenet-c']: {
+ voice: {
+ name: 'ko-KR-Wavenet-C',
+ },
+ },
+ ['ko-kr-wavenet-d']: {
+ voice: {
+ name: 'ko-KR-Wavenet-D',
+ },
+ },
+ ['kore']: {
+ voice: {
+ name: 'Kore',
+ },
+ },
+ ['laomedeia']: {
+ voice: {
+ name: 'Laomedeia',
+ },
+ },
+ ['leda']: {
+ voice: {
+ name: 'Leda',
+ },
+ },
+ ['lt-lt-standard-b']: {
+ voice: {
+ name: 'lt-LT-Standard-B',
+ },
+ },
+ ['lv-lv-standard-b']: {
+ voice: {
+ name: 'lv-LV-Standard-B',
+ },
+ },
+ ['ml-in-chirp3-hd-achernar']: {
+ voice: {
+ name: 'ml-IN-Chirp3-HD-Achernar',
+ },
+ },
+ ['ml-in-chirp3-hd-achird']: {
+ voice: {
+ name: 'ml-IN-Chirp3-HD-Achird',
+ },
+ },
+ ['ml-in-chirp3-hd-algenib']: {
+ voice: {
+ name: 'ml-IN-Chirp3-HD-Algenib',
+ },
+ },
+ ['ml-in-chirp3-hd-algieba']: {
+ voice: {
+ name: 'ml-IN-Chirp3-HD-Algieba',
+ },
+ },
+ ['ml-in-chirp3-hd-alnilam']: {
+ voice: {
+ name: 'ml-IN-Chirp3-HD-Alnilam',
+ },
+ },
+ ['ml-in-chirp3-hd-aoede']: {
+ voice: {
+ name: 'ml-IN-Chirp3-HD-Aoede',
+ },
+ },
+ ['ml-in-chirp3-hd-autonoe']: {
+ voice: {
+ name: 'ml-IN-Chirp3-HD-Autonoe',
+ },
+ },
+ ['ml-in-chirp3-hd-callirrhoe']: {
+ voice: {
+ name: 'ml-IN-Chirp3-HD-Callirrhoe',
+ },
+ },
+ ['ml-in-chirp3-hd-charon']: {
+ voice: {
+ name: 'ml-IN-Chirp3-HD-Charon',
+ },
+ },
+ ['ml-in-chirp3-hd-despina']: {
+ voice: {
+ name: 'ml-IN-Chirp3-HD-Despina',
+ },
+ },
+ ['ml-in-chirp3-hd-enceladus']: {
+ voice: {
+ name: 'ml-IN-Chirp3-HD-Enceladus',
+ },
+ },
+ ['ml-in-chirp3-hd-erinome']: {
+ voice: {
+ name: 'ml-IN-Chirp3-HD-Erinome',
+ },
+ },
+ ['ml-in-chirp3-hd-fenrir']: {
+ voice: {
+ name: 'ml-IN-Chirp3-HD-Fenrir',
+ },
+ },
+ ['ml-in-chirp3-hd-gacrux']: {
+ voice: {
+ name: 'ml-IN-Chirp3-HD-Gacrux',
+ },
+ },
+ ['ml-in-chirp3-hd-iapetus']: {
+ voice: {
+ name: 'ml-IN-Chirp3-HD-Iapetus',
+ },
+ },
+ ['ml-in-chirp3-hd-kore']: {
+ voice: {
+ name: 'ml-IN-Chirp3-HD-Kore',
+ },
+ },
+ ['ml-in-chirp3-hd-laomedeia']: {
+ voice: {
+ name: 'ml-IN-Chirp3-HD-Laomedeia',
+ },
+ },
+ ['ml-in-chirp3-hd-leda']: {
+ voice: {
+ name: 'ml-IN-Chirp3-HD-Leda',
+ },
+ },
+ ['ml-in-chirp3-hd-orus']: {
+ voice: {
+ name: 'ml-IN-Chirp3-HD-Orus',
+ },
+ },
+ ['ml-in-chirp3-hd-puck']: {
+ voice: {
+ name: 'ml-IN-Chirp3-HD-Puck',
+ },
+ },
+ ['ml-in-chirp3-hd-pulcherrima']: {
+ voice: {
+ name: 'ml-IN-Chirp3-HD-Pulcherrima',
+ },
+ },
+ ['ml-in-chirp3-hd-rasalgethi']: {
+ voice: {
+ name: 'ml-IN-Chirp3-HD-Rasalgethi',
+ },
+ },
+ ['ml-in-chirp3-hd-sadachbia']: {
+ voice: {
+ name: 'ml-IN-Chirp3-HD-Sadachbia',
+ },
+ },
+ ['ml-in-chirp3-hd-sadaltager']: {
+ voice: {
+ name: 'ml-IN-Chirp3-HD-Sadaltager',
+ },
+ },
+ ['ml-in-chirp3-hd-schedar']: {
+ voice: {
+ name: 'ml-IN-Chirp3-HD-Schedar',
+ },
+ },
+ ['ml-in-chirp3-hd-sulafat']: {
+ voice: {
+ name: 'ml-IN-Chirp3-HD-Sulafat',
+ },
+ },
+ ['ml-in-chirp3-hd-umbriel']: {
+ voice: {
+ name: 'ml-IN-Chirp3-HD-Umbriel',
+ },
+ },
+ ['ml-in-chirp3-hd-vindemiatrix']: {
+ voice: {
+ name: 'ml-IN-Chirp3-HD-Vindemiatrix',
+ },
+ },
+ ['ml-in-chirp3-hd-zephyr']: {
+ voice: {
+ name: 'ml-IN-Chirp3-HD-Zephyr',
+ },
+ },
+ ['ml-in-chirp3-hd-zubenelgenubi']: {
+ voice: {
+ name: 'ml-IN-Chirp3-HD-Zubenelgenubi',
+ },
+ },
+ ['ml-in-standard-a']: {
+ voice: {
+ name: 'ml-IN-Standard-A',
+ },
+ },
+ ['ml-in-standard-b']: {
+ voice: {
+ name: 'ml-IN-Standard-B',
+ },
+ },
+ ['ml-in-standard-c']: {
+ voice: {
+ name: 'ml-IN-Standard-C',
+ },
+ },
+ ['ml-in-standard-d']: {
+ voice: {
+ name: 'ml-IN-Standard-D',
+ },
+ },
+ ['ml-in-wavenet-a']: {
+ voice: {
+ name: 'ml-IN-Wavenet-A',
+ },
+ },
+ ['ml-in-wavenet-b']: {
+ voice: {
+ name: 'ml-IN-Wavenet-B',
+ },
+ },
+ ['ml-in-wavenet-c']: {
+ voice: {
+ name: 'ml-IN-Wavenet-C',
+ },
+ },
+ ['ml-in-wavenet-d']: {
+ voice: {
+ name: 'ml-IN-Wavenet-D',
+ },
+ },
+ ['mr-in-chirp3-hd-achernar']: {
+ voice: {
+ name: 'mr-IN-Chirp3-HD-Achernar',
+ },
+ },
+ ['mr-in-chirp3-hd-achird']: {
+ voice: {
+ name: 'mr-IN-Chirp3-HD-Achird',
+ },
+ },
+ ['mr-in-chirp3-hd-algenib']: {
+ voice: {
+ name: 'mr-IN-Chirp3-HD-Algenib',
+ },
+ },
+ ['mr-in-chirp3-hd-algieba']: {
+ voice: {
+ name: 'mr-IN-Chirp3-HD-Algieba',
+ },
+ },
+ ['mr-in-chirp3-hd-alnilam']: {
+ voice: {
+ name: 'mr-IN-Chirp3-HD-Alnilam',
+ },
+ },
+ ['mr-in-chirp3-hd-aoede']: {
+ voice: {
+ name: 'mr-IN-Chirp3-HD-Aoede',
+ },
+ },
+ ['mr-in-chirp3-hd-autonoe']: {
+ voice: {
+ name: 'mr-IN-Chirp3-HD-Autonoe',
+ },
+ },
+ ['mr-in-chirp3-hd-callirrhoe']: {
+ voice: {
+ name: 'mr-IN-Chirp3-HD-Callirrhoe',
+ },
+ },
+ ['mr-in-chirp3-hd-charon']: {
+ voice: {
+ name: 'mr-IN-Chirp3-HD-Charon',
+ },
+ },
+ ['mr-in-chirp3-hd-despina']: {
+ voice: {
+ name: 'mr-IN-Chirp3-HD-Despina',
+ },
+ },
+ ['mr-in-chirp3-hd-enceladus']: {
+ voice: {
+ name: 'mr-IN-Chirp3-HD-Enceladus',
+ },
+ },
+ ['mr-in-chirp3-hd-erinome']: {
+ voice: {
+ name: 'mr-IN-Chirp3-HD-Erinome',
+ },
+ },
+ ['mr-in-chirp3-hd-fenrir']: {
+ voice: {
+ name: 'mr-IN-Chirp3-HD-Fenrir',
+ },
+ },
+ ['mr-in-chirp3-hd-gacrux']: {
+ voice: {
+ name: 'mr-IN-Chirp3-HD-Gacrux',
+ },
+ },
+ ['mr-in-chirp3-hd-iapetus']: {
+ voice: {
+ name: 'mr-IN-Chirp3-HD-Iapetus',
+ },
+ },
+ ['mr-in-chirp3-hd-kore']: {
+ voice: {
+ name: 'mr-IN-Chirp3-HD-Kore',
+ },
+ },
+ ['mr-in-chirp3-hd-laomedeia']: {
+ voice: {
+ name: 'mr-IN-Chirp3-HD-Laomedeia',
+ },
+ },
+ ['mr-in-chirp3-hd-leda']: {
+ voice: {
+ name: 'mr-IN-Chirp3-HD-Leda',
+ },
+ },
+ ['mr-in-chirp3-hd-orus']: {
+ voice: {
+ name: 'mr-IN-Chirp3-HD-Orus',
+ },
+ },
+ ['mr-in-chirp3-hd-puck']: {
+ voice: {
+ name: 'mr-IN-Chirp3-HD-Puck',
+ },
+ },
+ ['mr-in-chirp3-hd-pulcherrima']: {
+ voice: {
+ name: 'mr-IN-Chirp3-HD-Pulcherrima',
+ },
+ },
+ ['mr-in-chirp3-hd-rasalgethi']: {
+ voice: {
+ name: 'mr-IN-Chirp3-HD-Rasalgethi',
+ },
+ },
+ ['mr-in-chirp3-hd-sadachbia']: {
+ voice: {
+ name: 'mr-IN-Chirp3-HD-Sadachbia',
+ },
+ },
+ ['mr-in-chirp3-hd-sadaltager']: {
+ voice: {
+ name: 'mr-IN-Chirp3-HD-Sadaltager',
+ },
+ },
+ ['mr-in-chirp3-hd-schedar']: {
+ voice: {
+ name: 'mr-IN-Chirp3-HD-Schedar',
+ },
+ },
+ ['mr-in-chirp3-hd-sulafat']: {
+ voice: {
+ name: 'mr-IN-Chirp3-HD-Sulafat',
+ },
+ },
+ ['mr-in-chirp3-hd-umbriel']: {
+ voice: {
+ name: 'mr-IN-Chirp3-HD-Umbriel',
+ },
+ },
+ ['mr-in-chirp3-hd-vindemiatrix']: {
+ voice: {
+ name: 'mr-IN-Chirp3-HD-Vindemiatrix',
+ },
+ },
+ ['mr-in-chirp3-hd-zephyr']: {
+ voice: {
+ name: 'mr-IN-Chirp3-HD-Zephyr',
+ },
+ },
+ ['mr-in-chirp3-hd-zubenelgenubi']: {
+ voice: {
+ name: 'mr-IN-Chirp3-HD-Zubenelgenubi',
+ },
+ },
+ ['mr-in-standard-a']: {
+ voice: {
+ name: 'mr-IN-Standard-A',
+ },
+ },
+ ['mr-in-standard-b']: {
+ voice: {
+ name: 'mr-IN-Standard-B',
+ },
+ },
+ ['mr-in-standard-c']: {
+ voice: {
+ name: 'mr-IN-Standard-C',
+ },
+ },
+ ['mr-in-wavenet-a']: {
+ voice: {
+ name: 'mr-IN-Wavenet-A',
+ },
+ },
+ ['mr-in-wavenet-b']: {
+ voice: {
+ name: 'mr-IN-Wavenet-B',
+ },
+ },
+ ['mr-in-wavenet-c']: {
+ voice: {
+ name: 'mr-IN-Wavenet-C',
+ },
+ },
+ ['ms-my-standard-a']: {
+ voice: {
+ name: 'ms-MY-Standard-A',
+ },
+ },
+ ['ms-my-standard-b']: {
+ voice: {
+ name: 'ms-MY-Standard-B',
+ },
+ },
+ ['ms-my-standard-c']: {
+ voice: {
+ name: 'ms-MY-Standard-C',
+ },
+ },
+ ['ms-my-standard-d']: {
+ voice: {
+ name: 'ms-MY-Standard-D',
+ },
+ },
+ ['ms-my-wavenet-a']: {
+ voice: {
+ name: 'ms-MY-Wavenet-A',
+ },
+ },
+ ['ms-my-wavenet-b']: {
+ voice: {
+ name: 'ms-MY-Wavenet-B',
+ },
+ },
+ ['ms-my-wavenet-c']: {
+ voice: {
+ name: 'ms-MY-Wavenet-C',
+ },
+ },
+ ['ms-my-wavenet-d']: {
+ voice: {
+ name: 'ms-MY-Wavenet-D',
+ },
+ },
+ ['nb-no-chirp3-hd-achernar']: {
+ voice: {
+ name: 'nb-NO-Chirp3-HD-Achernar',
+ },
+ },
+ ['nb-no-chirp3-hd-achird']: {
+ voice: {
+ name: 'nb-NO-Chirp3-HD-Achird',
+ },
+ },
+ ['nb-no-chirp3-hd-algenib']: {
+ voice: {
+ name: 'nb-NO-Chirp3-HD-Algenib',
+ },
+ },
+ ['nb-no-chirp3-hd-algieba']: {
+ voice: {
+ name: 'nb-NO-Chirp3-HD-Algieba',
+ },
+ },
+ ['nb-no-chirp3-hd-alnilam']: {
+ voice: {
+ name: 'nb-NO-Chirp3-HD-Alnilam',
+ },
+ },
+ ['nb-no-chirp3-hd-aoede']: {
+ voice: {
+ name: 'nb-NO-Chirp3-HD-Aoede',
+ },
+ },
+ ['nb-no-chirp3-hd-autonoe']: {
+ voice: {
+ name: 'nb-NO-Chirp3-HD-Autonoe',
+ },
+ },
+ ['nb-no-chirp3-hd-callirrhoe']: {
+ voice: {
+ name: 'nb-NO-Chirp3-HD-Callirrhoe',
+ },
+ },
+ ['nb-no-chirp3-hd-charon']: {
+ voice: {
+ name: 'nb-NO-Chirp3-HD-Charon',
+ },
+ },
+ ['nb-no-chirp3-hd-despina']: {
+ voice: {
+ name: 'nb-NO-Chirp3-HD-Despina',
+ },
+ },
+ ['nb-no-chirp3-hd-enceladus']: {
+ voice: {
+ name: 'nb-NO-Chirp3-HD-Enceladus',
+ },
+ },
+ ['nb-no-chirp3-hd-erinome']: {
+ voice: {
+ name: 'nb-NO-Chirp3-HD-Erinome',
+ },
+ },
+ ['nb-no-chirp3-hd-fenrir']: {
+ voice: {
+ name: 'nb-NO-Chirp3-HD-Fenrir',
+ },
+ },
+ ['nb-no-chirp3-hd-gacrux']: {
+ voice: {
+ name: 'nb-NO-Chirp3-HD-Gacrux',
+ },
+ },
+ ['nb-no-chirp3-hd-iapetus']: {
+ voice: {
+ name: 'nb-NO-Chirp3-HD-Iapetus',
+ },
+ },
+ ['nb-no-chirp3-hd-kore']: {
+ voice: {
+ name: 'nb-NO-Chirp3-HD-Kore',
+ },
+ },
+ ['nb-no-chirp3-hd-laomedeia']: {
+ voice: {
+ name: 'nb-NO-Chirp3-HD-Laomedeia',
+ },
+ },
+ ['nb-no-chirp3-hd-leda']: {
+ voice: {
+ name: 'nb-NO-Chirp3-HD-Leda',
+ },
+ },
+ ['nb-no-chirp3-hd-orus']: {
+ voice: {
+ name: 'nb-NO-Chirp3-HD-Orus',
+ },
+ },
+ ['nb-no-chirp3-hd-puck']: {
+ voice: {
+ name: 'nb-NO-Chirp3-HD-Puck',
+ },
+ },
+ ['nb-no-chirp3-hd-pulcherrima']: {
+ voice: {
+ name: 'nb-NO-Chirp3-HD-Pulcherrima',
+ },
+ },
+ ['nb-no-chirp3-hd-rasalgethi']: {
+ voice: {
+ name: 'nb-NO-Chirp3-HD-Rasalgethi',
+ },
+ },
+ ['nb-no-chirp3-hd-sadachbia']: {
+ voice: {
+ name: 'nb-NO-Chirp3-HD-Sadachbia',
+ },
+ },
+ ['nb-no-chirp3-hd-sadaltager']: {
+ voice: {
+ name: 'nb-NO-Chirp3-HD-Sadaltager',
+ },
+ },
+ ['nb-no-chirp3-hd-schedar']: {
+ voice: {
+ name: 'nb-NO-Chirp3-HD-Schedar',
+ },
+ },
+ ['nb-no-chirp3-hd-sulafat']: {
+ voice: {
+ name: 'nb-NO-Chirp3-HD-Sulafat',
+ },
+ },
+ ['nb-no-chirp3-hd-umbriel']: {
+ voice: {
+ name: 'nb-NO-Chirp3-HD-Umbriel',
+ },
+ },
+ ['nb-no-chirp3-hd-vindemiatrix']: {
+ voice: {
+ name: 'nb-NO-Chirp3-HD-Vindemiatrix',
+ },
+ },
+ ['nb-no-chirp3-hd-zephyr']: {
+ voice: {
+ name: 'nb-NO-Chirp3-HD-Zephyr',
+ },
+ },
+ ['nb-no-chirp3-hd-zubenelgenubi']: {
+ voice: {
+ name: 'nb-NO-Chirp3-HD-Zubenelgenubi',
+ },
+ },
+ ['nb-no-standard-f']: {
+ voice: {
+ name: 'nb-NO-Standard-F',
+ },
+ },
+ ['nb-no-standard-g']: {
+ voice: {
+ name: 'nb-NO-Standard-G',
+ },
+ },
+ ['nb-no-wavenet-f']: {
+ voice: {
+ name: 'nb-NO-Wavenet-F',
+ },
+ },
+ ['nb-no-wavenet-g']: {
+ voice: {
+ name: 'nb-NO-Wavenet-G',
+ },
+ },
+ ['nl-be-chirp3-hd-achernar']: {
+ voice: {
+ name: 'nl-BE-Chirp3-HD-Achernar',
+ },
+ },
+ ['nl-be-chirp3-hd-achird']: {
+ voice: {
+ name: 'nl-BE-Chirp3-HD-Achird',
+ },
+ },
+ ['nl-be-chirp3-hd-algenib']: {
+ voice: {
+ name: 'nl-BE-Chirp3-HD-Algenib',
+ },
+ },
+ ['nl-be-chirp3-hd-algieba']: {
+ voice: {
+ name: 'nl-BE-Chirp3-HD-Algieba',
+ },
+ },
+ ['nl-be-chirp3-hd-alnilam']: {
+ voice: {
+ name: 'nl-BE-Chirp3-HD-Alnilam',
+ },
+ },
+ ['nl-be-chirp3-hd-aoede']: {
+ voice: {
+ name: 'nl-BE-Chirp3-HD-Aoede',
+ },
+ },
+ ['nl-be-chirp3-hd-autonoe']: {
+ voice: {
+ name: 'nl-BE-Chirp3-HD-Autonoe',
+ },
+ },
+ ['nl-be-chirp3-hd-callirrhoe']: {
+ voice: {
+ name: 'nl-BE-Chirp3-HD-Callirrhoe',
+ },
+ },
+ ['nl-be-chirp3-hd-charon']: {
+ voice: {
+ name: 'nl-BE-Chirp3-HD-Charon',
+ },
+ },
+ ['nl-be-chirp3-hd-despina']: {
+ voice: {
+ name: 'nl-BE-Chirp3-HD-Despina',
+ },
+ },
+ ['nl-be-chirp3-hd-enceladus']: {
+ voice: {
+ name: 'nl-BE-Chirp3-HD-Enceladus',
+ },
+ },
+ ['nl-be-chirp3-hd-erinome']: {
+ voice: {
+ name: 'nl-BE-Chirp3-HD-Erinome',
+ },
+ },
+ ['nl-be-chirp3-hd-fenrir']: {
+ voice: {
+ name: 'nl-BE-Chirp3-HD-Fenrir',
+ },
+ },
+ ['nl-be-chirp3-hd-gacrux']: {
+ voice: {
+ name: 'nl-BE-Chirp3-HD-Gacrux',
+ },
+ },
+ ['nl-be-chirp3-hd-iapetus']: {
+ voice: {
+ name: 'nl-BE-Chirp3-HD-Iapetus',
+ },
+ },
+ ['nl-be-chirp3-hd-kore']: {
+ voice: {
+ name: 'nl-BE-Chirp3-HD-Kore',
+ },
+ },
+ ['nl-be-chirp3-hd-laomedeia']: {
+ voice: {
+ name: 'nl-BE-Chirp3-HD-Laomedeia',
+ },
+ },
+ ['nl-be-chirp3-hd-leda']: {
+ voice: {
+ name: 'nl-BE-Chirp3-HD-Leda',
+ },
+ },
+ ['nl-be-chirp3-hd-orus']: {
+ voice: {
+ name: 'nl-BE-Chirp3-HD-Orus',
+ },
+ },
+ ['nl-be-chirp3-hd-puck']: {
+ voice: {
+ name: 'nl-BE-Chirp3-HD-Puck',
+ },
+ },
+ ['nl-be-chirp3-hd-pulcherrima']: {
+ voice: {
+ name: 'nl-BE-Chirp3-HD-Pulcherrima',
+ },
+ },
+ ['nl-be-chirp3-hd-rasalgethi']: {
+ voice: {
+ name: 'nl-BE-Chirp3-HD-Rasalgethi',
+ },
+ },
+ ['nl-be-chirp3-hd-sadachbia']: {
+ voice: {
+ name: 'nl-BE-Chirp3-HD-Sadachbia',
+ },
+ },
+ ['nl-be-chirp3-hd-sadaltager']: {
+ voice: {
+ name: 'nl-BE-Chirp3-HD-Sadaltager',
+ },
+ },
+ ['nl-be-chirp3-hd-schedar']: {
+ voice: {
+ name: 'nl-BE-Chirp3-HD-Schedar',
+ },
+ },
+ ['nl-be-chirp3-hd-sulafat']: {
+ voice: {
+ name: 'nl-BE-Chirp3-HD-Sulafat',
+ },
+ },
+ ['nl-be-chirp3-hd-umbriel']: {
+ voice: {
+ name: 'nl-BE-Chirp3-HD-Umbriel',
+ },
+ },
+ ['nl-be-chirp3-hd-vindemiatrix']: {
+ voice: {
+ name: 'nl-BE-Chirp3-HD-Vindemiatrix',
+ },
+ },
+ ['nl-be-chirp3-hd-zephyr']: {
+ voice: {
+ name: 'nl-BE-Chirp3-HD-Zephyr',
+ },
+ },
+ ['nl-be-chirp3-hd-zubenelgenubi']: {
+ voice: {
+ name: 'nl-BE-Chirp3-HD-Zubenelgenubi',
+ },
+ },
+ ['nl-be-standard-c']: {
+ voice: {
+ name: 'nl-BE-Standard-C',
+ },
+ },
+ ['nl-be-standard-d']: {
+ voice: {
+ name: 'nl-BE-Standard-D',
+ },
+ },
+ ['nl-be-wavenet-c']: {
+ voice: {
+ name: 'nl-BE-Wavenet-C',
+ },
+ },
+ ['nl-be-wavenet-d']: {
+ voice: {
+ name: 'nl-BE-Wavenet-D',
+ },
+ },
+ ['nl-nl-chirp3-hd-achernar']: {
+ voice: {
+ name: 'nl-NL-Chirp3-HD-Achernar',
+ },
+ },
+ ['nl-nl-chirp3-hd-achird']: {
+ voice: {
+ name: 'nl-NL-Chirp3-HD-Achird',
+ },
+ },
+ ['nl-nl-chirp3-hd-algenib']: {
+ voice: {
+ name: 'nl-NL-Chirp3-HD-Algenib',
+ },
+ },
+ ['nl-nl-chirp3-hd-algieba']: {
+ voice: {
+ name: 'nl-NL-Chirp3-HD-Algieba',
+ },
+ },
+ ['nl-nl-chirp3-hd-alnilam']: {
+ voice: {
+ name: 'nl-NL-Chirp3-HD-Alnilam',
+ },
+ },
+ ['nl-nl-chirp3-hd-aoede']: {
+ voice: {
+ name: 'nl-NL-Chirp3-HD-Aoede',
+ },
+ },
+ ['nl-nl-chirp3-hd-autonoe']: {
+ voice: {
+ name: 'nl-NL-Chirp3-HD-Autonoe',
+ },
+ },
+ ['nl-nl-chirp3-hd-callirrhoe']: {
+ voice: {
+ name: 'nl-NL-Chirp3-HD-Callirrhoe',
+ },
+ },
+ ['nl-nl-chirp3-hd-charon']: {
+ voice: {
+ name: 'nl-NL-Chirp3-HD-Charon',
+ },
+ },
+ ['nl-nl-chirp3-hd-despina']: {
+ voice: {
+ name: 'nl-NL-Chirp3-HD-Despina',
+ },
+ },
+ ['nl-nl-chirp3-hd-enceladus']: {
+ voice: {
+ name: 'nl-NL-Chirp3-HD-Enceladus',
+ },
+ },
+ ['nl-nl-chirp3-hd-erinome']: {
+ voice: {
+ name: 'nl-NL-Chirp3-HD-Erinome',
+ },
+ },
+ ['nl-nl-chirp3-hd-fenrir']: {
+ voice: {
+ name: 'nl-NL-Chirp3-HD-Fenrir',
+ },
+ },
+ ['nl-nl-chirp3-hd-gacrux']: {
+ voice: {
+ name: 'nl-NL-Chirp3-HD-Gacrux',
+ },
+ },
+ ['nl-nl-chirp3-hd-iapetus']: {
+ voice: {
+ name: 'nl-NL-Chirp3-HD-Iapetus',
+ },
+ },
+ ['nl-nl-chirp3-hd-kore']: {
+ voice: {
+ name: 'nl-NL-Chirp3-HD-Kore',
+ },
+ },
+ ['nl-nl-chirp3-hd-laomedeia']: {
+ voice: {
+ name: 'nl-NL-Chirp3-HD-Laomedeia',
+ },
+ },
+ ['nl-nl-chirp3-hd-leda']: {
+ voice: {
+ name: 'nl-NL-Chirp3-HD-Leda',
+ },
+ },
+ ['nl-nl-chirp3-hd-orus']: {
+ voice: {
+ name: 'nl-NL-Chirp3-HD-Orus',
+ },
+ },
+ ['nl-nl-chirp3-hd-puck']: {
+ voice: {
+ name: 'nl-NL-Chirp3-HD-Puck',
+ },
+ },
+ ['nl-nl-chirp3-hd-pulcherrima']: {
+ voice: {
+ name: 'nl-NL-Chirp3-HD-Pulcherrima',
+ },
+ },
+ ['nl-nl-chirp3-hd-rasalgethi']: {
+ voice: {
+ name: 'nl-NL-Chirp3-HD-Rasalgethi',
+ },
+ },
+ ['nl-nl-chirp3-hd-sadachbia']: {
+ voice: {
+ name: 'nl-NL-Chirp3-HD-Sadachbia',
+ },
+ },
+ ['nl-nl-chirp3-hd-sadaltager']: {
+ voice: {
+ name: 'nl-NL-Chirp3-HD-Sadaltager',
+ },
+ },
+ ['nl-nl-chirp3-hd-schedar']: {
+ voice: {
+ name: 'nl-NL-Chirp3-HD-Schedar',
+ },
+ },
+ ['nl-nl-chirp3-hd-sulafat']: {
+ voice: {
+ name: 'nl-NL-Chirp3-HD-Sulafat',
+ },
+ },
+ ['nl-nl-chirp3-hd-umbriel']: {
+ voice: {
+ name: 'nl-NL-Chirp3-HD-Umbriel',
+ },
+ },
+ ['nl-nl-chirp3-hd-vindemiatrix']: {
+ voice: {
+ name: 'nl-NL-Chirp3-HD-Vindemiatrix',
+ },
+ },
+ ['nl-nl-chirp3-hd-zephyr']: {
+ voice: {
+ name: 'nl-NL-Chirp3-HD-Zephyr',
+ },
+ },
+ ['nl-nl-chirp3-hd-zubenelgenubi']: {
+ voice: {
+ name: 'nl-NL-Chirp3-HD-Zubenelgenubi',
+ },
+ },
+ ['nl-nl-standard-f']: {
+ voice: {
+ name: 'nl-NL-Standard-F',
+ },
+ },
+ ['nl-nl-standard-g']: {
+ voice: {
+ name: 'nl-NL-Standard-G',
+ },
+ },
+ ['nl-nl-wavenet-f']: {
+ voice: {
+ name: 'nl-NL-Wavenet-F',
+ },
+ },
+ ['nl-nl-wavenet-g']: {
+ voice: {
+ name: 'nl-NL-Wavenet-G',
+ },
+ },
+ ['orus']: {
+ voice: {
+ name: 'Orus',
+ },
+ },
+ ['pa-in-standard-a']: {
+ voice: {
+ name: 'pa-IN-Standard-A',
+ },
+ },
+ ['pa-in-standard-b']: {
+ voice: {
+ name: 'pa-IN-Standard-B',
+ },
+ },
+ ['pa-in-standard-c']: {
+ voice: {
+ name: 'pa-IN-Standard-C',
+ },
+ },
+ ['pa-in-standard-d']: {
+ voice: {
+ name: 'pa-IN-Standard-D',
+ },
+ },
+ ['pa-in-wavenet-a']: {
+ voice: {
+ name: 'pa-IN-Wavenet-A',
+ },
+ },
+ ['pa-in-wavenet-b']: {
+ voice: {
+ name: 'pa-IN-Wavenet-B',
+ },
+ },
+ ['pa-in-wavenet-c']: {
+ voice: {
+ name: 'pa-IN-Wavenet-C',
+ },
+ },
+ ['pa-in-wavenet-d']: {
+ voice: {
+ name: 'pa-IN-Wavenet-D',
+ },
+ },
+ ['pl-pl-chirp3-hd-achernar']: {
+ voice: {
+ name: 'pl-PL-Chirp3-HD-Achernar',
+ },
+ },
+ ['pl-pl-chirp3-hd-achird']: {
+ voice: {
+ name: 'pl-PL-Chirp3-HD-Achird',
+ },
+ },
+ ['pl-pl-chirp3-hd-algenib']: {
+ voice: {
+ name: 'pl-PL-Chirp3-HD-Algenib',
+ },
+ },
+ ['pl-pl-chirp3-hd-algieba']: {
+ voice: {
+ name: 'pl-PL-Chirp3-HD-Algieba',
+ },
+ },
+ ['pl-pl-chirp3-hd-alnilam']: {
+ voice: {
+ name: 'pl-PL-Chirp3-HD-Alnilam',
+ },
+ },
+ ['pl-pl-chirp3-hd-aoede']: {
+ voice: {
+ name: 'pl-PL-Chirp3-HD-Aoede',
+ },
+ },
+ ['pl-pl-chirp3-hd-autonoe']: {
+ voice: {
+ name: 'pl-PL-Chirp3-HD-Autonoe',
+ },
+ },
+ ['pl-pl-chirp3-hd-callirrhoe']: {
+ voice: {
+ name: 'pl-PL-Chirp3-HD-Callirrhoe',
+ },
+ },
+ ['pl-pl-chirp3-hd-charon']: {
+ voice: {
+ name: 'pl-PL-Chirp3-HD-Charon',
+ },
+ },
+ ['pl-pl-chirp3-hd-despina']: {
+ voice: {
+ name: 'pl-PL-Chirp3-HD-Despina',
+ },
+ },
+ ['pl-pl-chirp3-hd-enceladus']: {
+ voice: {
+ name: 'pl-PL-Chirp3-HD-Enceladus',
+ },
+ },
+ ['pl-pl-chirp3-hd-erinome']: {
+ voice: {
+ name: 'pl-PL-Chirp3-HD-Erinome',
+ },
+ },
+ ['pl-pl-chirp3-hd-fenrir']: {
+ voice: {
+ name: 'pl-PL-Chirp3-HD-Fenrir',
+ },
+ },
+ ['pl-pl-chirp3-hd-gacrux']: {
+ voice: {
+ name: 'pl-PL-Chirp3-HD-Gacrux',
+ },
+ },
+ ['pl-pl-chirp3-hd-iapetus']: {
+ voice: {
+ name: 'pl-PL-Chirp3-HD-Iapetus',
+ },
+ },
+ ['pl-pl-chirp3-hd-kore']: {
+ voice: {
+ name: 'pl-PL-Chirp3-HD-Kore',
+ },
+ },
+ ['pl-pl-chirp3-hd-laomedeia']: {
+ voice: {
+ name: 'pl-PL-Chirp3-HD-Laomedeia',
+ },
+ },
+ ['pl-pl-chirp3-hd-leda']: {
+ voice: {
+ name: 'pl-PL-Chirp3-HD-Leda',
+ },
+ },
+ ['pl-pl-chirp3-hd-orus']: {
+ voice: {
+ name: 'pl-PL-Chirp3-HD-Orus',
+ },
+ },
+ ['pl-pl-chirp3-hd-puck']: {
+ voice: {
+ name: 'pl-PL-Chirp3-HD-Puck',
+ },
+ },
+ ['pl-pl-chirp3-hd-pulcherrima']: {
+ voice: {
+ name: 'pl-PL-Chirp3-HD-Pulcherrima',
+ },
+ },
+ ['pl-pl-chirp3-hd-rasalgethi']: {
+ voice: {
+ name: 'pl-PL-Chirp3-HD-Rasalgethi',
+ },
+ },
+ ['pl-pl-chirp3-hd-sadachbia']: {
+ voice: {
+ name: 'pl-PL-Chirp3-HD-Sadachbia',
+ },
+ },
+ ['pl-pl-chirp3-hd-sadaltager']: {
+ voice: {
+ name: 'pl-PL-Chirp3-HD-Sadaltager',
+ },
+ },
+ ['pl-pl-chirp3-hd-schedar']: {
+ voice: {
+ name: 'pl-PL-Chirp3-HD-Schedar',
+ },
+ },
+ ['pl-pl-chirp3-hd-sulafat']: {
+ voice: {
+ name: 'pl-PL-Chirp3-HD-Sulafat',
+ },
+ },
+ ['pl-pl-chirp3-hd-umbriel']: {
+ voice: {
+ name: 'pl-PL-Chirp3-HD-Umbriel',
+ },
+ },
+ ['pl-pl-chirp3-hd-vindemiatrix']: {
+ voice: {
+ name: 'pl-PL-Chirp3-HD-Vindemiatrix',
+ },
+ },
+ ['pl-pl-chirp3-hd-zephyr']: {
+ voice: {
+ name: 'pl-PL-Chirp3-HD-Zephyr',
+ },
+ },
+ ['pl-pl-chirp3-hd-zubenelgenubi']: {
+ voice: {
+ name: 'pl-PL-Chirp3-HD-Zubenelgenubi',
+ },
+ },
+ ['pl-pl-standard-f']: {
+ voice: {
+ name: 'pl-PL-Standard-F',
+ },
+ },
+ ['pl-pl-standard-g']: {
+ voice: {
+ name: 'pl-PL-Standard-G',
+ },
+ },
+ ['pl-pl-wavenet-f']: {
+ voice: {
+ name: 'pl-PL-Wavenet-F',
+ },
+ },
+ ['pl-pl-wavenet-g']: {
+ voice: {
+ name: 'pl-PL-Wavenet-G',
+ },
+ },
+ ['pt-br-chirp3-hd-achernar']: {
+ voice: {
+ name: 'pt-BR-Chirp3-HD-Achernar',
+ },
+ },
+ ['pt-br-chirp3-hd-achird']: {
+ voice: {
+ name: 'pt-BR-Chirp3-HD-Achird',
+ },
+ },
+ ['pt-br-chirp3-hd-algenib']: {
+ voice: {
+ name: 'pt-BR-Chirp3-HD-Algenib',
+ },
+ },
+ ['pt-br-chirp3-hd-algieba']: {
+ voice: {
+ name: 'pt-BR-Chirp3-HD-Algieba',
+ },
+ },
+ ['pt-br-chirp3-hd-alnilam']: {
+ voice: {
+ name: 'pt-BR-Chirp3-HD-Alnilam',
+ },
+ },
+ ['pt-br-chirp3-hd-aoede']: {
+ voice: {
+ name: 'pt-BR-Chirp3-HD-Aoede',
+ },
+ },
+ ['pt-br-chirp3-hd-autonoe']: {
+ voice: {
+ name: 'pt-BR-Chirp3-HD-Autonoe',
+ },
+ },
+ ['pt-br-chirp3-hd-callirrhoe']: {
+ voice: {
+ name: 'pt-BR-Chirp3-HD-Callirrhoe',
+ },
+ },
+ ['pt-br-chirp3-hd-charon']: {
+ voice: {
+ name: 'pt-BR-Chirp3-HD-Charon',
+ },
+ },
+ ['pt-br-chirp3-hd-despina']: {
+ voice: {
+ name: 'pt-BR-Chirp3-HD-Despina',
+ },
+ },
+ ['pt-br-chirp3-hd-enceladus']: {
+ voice: {
+ name: 'pt-BR-Chirp3-HD-Enceladus',
+ },
+ },
+ ['pt-br-chirp3-hd-erinome']: {
+ voice: {
+ name: 'pt-BR-Chirp3-HD-Erinome',
+ },
+ },
+ ['pt-br-chirp3-hd-fenrir']: {
+ voice: {
+ name: 'pt-BR-Chirp3-HD-Fenrir',
+ },
+ },
+ ['pt-br-chirp3-hd-gacrux']: {
+ voice: {
+ name: 'pt-BR-Chirp3-HD-Gacrux',
+ },
+ },
+ ['pt-br-chirp3-hd-iapetus']: {
+ voice: {
+ name: 'pt-BR-Chirp3-HD-Iapetus',
+ },
+ },
+ ['pt-br-chirp3-hd-kore']: {
+ voice: {
+ name: 'pt-BR-Chirp3-HD-Kore',
+ },
+ },
+ ['pt-br-chirp3-hd-laomedeia']: {
+ voice: {
+ name: 'pt-BR-Chirp3-HD-Laomedeia',
+ },
+ },
+ ['pt-br-chirp3-hd-leda']: {
+ voice: {
+ name: 'pt-BR-Chirp3-HD-Leda',
+ },
+ },
+ ['pt-br-chirp3-hd-orus']: {
+ voice: {
+ name: 'pt-BR-Chirp3-HD-Orus',
+ },
+ },
+ ['pt-br-chirp3-hd-puck']: {
+ voice: {
+ name: 'pt-BR-Chirp3-HD-Puck',
+ },
+ },
+ ['pt-br-chirp3-hd-pulcherrima']: {
+ voice: {
+ name: 'pt-BR-Chirp3-HD-Pulcherrima',
+ },
+ },
+ ['pt-br-chirp3-hd-rasalgethi']: {
+ voice: {
+ name: 'pt-BR-Chirp3-HD-Rasalgethi',
+ },
+ },
+ ['pt-br-chirp3-hd-sadachbia']: {
+ voice: {
+ name: 'pt-BR-Chirp3-HD-Sadachbia',
+ },
+ },
+ ['pt-br-chirp3-hd-sadaltager']: {
+ voice: {
+ name: 'pt-BR-Chirp3-HD-Sadaltager',
+ },
+ },
+ ['pt-br-chirp3-hd-schedar']: {
+ voice: {
+ name: 'pt-BR-Chirp3-HD-Schedar',
+ },
+ },
+ ['pt-br-chirp3-hd-sulafat']: {
+ voice: {
+ name: 'pt-BR-Chirp3-HD-Sulafat',
+ },
+ },
+ ['pt-br-chirp3-hd-umbriel']: {
+ voice: {
+ name: 'pt-BR-Chirp3-HD-Umbriel',
+ },
+ },
+ ['pt-br-chirp3-hd-vindemiatrix']: {
+ voice: {
+ name: 'pt-BR-Chirp3-HD-Vindemiatrix',
+ },
+ },
+ ['pt-br-chirp3-hd-zephyr']: {
+ voice: {
+ name: 'pt-BR-Chirp3-HD-Zephyr',
+ },
+ },
+ ['pt-br-chirp3-hd-zubenelgenubi']: {
+ voice: {
+ name: 'pt-BR-Chirp3-HD-Zubenelgenubi',
+ },
+ },
+ ['pt-br-neural2-a']: {
+ voice: {
+ name: 'pt-BR-Neural2-A',
+ },
+ },
+ ['pt-br-neural2-b']: {
+ voice: {
+ name: 'pt-BR-Neural2-B',
+ },
+ },
+ ['pt-br-neural2-c']: {
+ voice: {
+ name: 'pt-BR-Neural2-C',
+ },
+ },
+ ['pt-br-standard-a']: {
+ voice: {
+ name: 'pt-BR-Standard-A',
+ },
+ },
+ ['pt-br-standard-b']: {
+ voice: {
+ name: 'pt-BR-Standard-B',
+ },
+ },
+ ['pt-br-standard-c']: {
+ voice: {
+ name: 'pt-BR-Standard-C',
+ },
+ },
+ ['pt-br-standard-d']: {
+ voice: {
+ name: 'pt-BR-Standard-D',
+ },
+ },
+ ['pt-br-standard-e']: {
+ voice: {
+ name: 'pt-BR-Standard-E',
+ },
+ },
+ ['pt-br-wavenet-a']: {
+ voice: {
+ name: 'pt-BR-Wavenet-A',
+ },
+ },
+ ['pt-br-wavenet-b']: {
+ voice: {
+ name: 'pt-BR-Wavenet-B',
+ },
+ },
+ ['pt-br-wavenet-c']: {
+ voice: {
+ name: 'pt-BR-Wavenet-C',
+ },
+ },
+ ['pt-br-wavenet-d']: {
+ voice: {
+ name: 'pt-BR-Wavenet-D',
+ },
+ },
+ ['pt-br-wavenet-e']: {
+ voice: {
+ name: 'pt-BR-Wavenet-E',
+ },
+ },
+ ['pt-pt-standard-e']: {
+ voice: {
+ name: 'pt-PT-Standard-E',
+ },
+ },
+ ['pt-pt-standard-f']: {
+ voice: {
+ name: 'pt-PT-Standard-F',
+ },
+ },
+ ['pt-pt-wavenet-e']: {
+ voice: {
+ name: 'pt-PT-Wavenet-E',
+ },
+ },
+ ['pt-pt-wavenet-f']: {
+ voice: {
+ name: 'pt-PT-Wavenet-F',
+ },
+ },
+ ['puck']: {
+ voice: {
+ name: 'Puck',
+ },
+ },
+ ['pulcherrima']: {
+ voice: {
+ name: 'Pulcherrima',
+ },
+ },
+ ['rasalgethi']: {
+ voice: {
+ name: 'Rasalgethi',
+ },
+ },
+ ['ro-ro-standard-b']: {
+ voice: {
+ name: 'ro-RO-Standard-B',
+ },
+ },
+ ['ro-ro-wavenet-b']: {
+ voice: {
+ name: 'ro-RO-Wavenet-B',
+ },
+ },
+ ['ru-ru-chirp3-hd-aoede']: {
+ voice: {
+ name: 'ru-RU-Chirp3-HD-Aoede',
+ },
+ },
+ ['ru-ru-chirp3-hd-charon']: {
+ voice: {
+ name: 'ru-RU-Chirp3-HD-Charon',
+ },
+ },
+ ['ru-ru-chirp3-hd-fenrir']: {
+ voice: {
+ name: 'ru-RU-Chirp3-HD-Fenrir',
+ },
+ },
+ ['ru-ru-chirp3-hd-kore']: {
+ voice: {
+ name: 'ru-RU-Chirp3-HD-Kore',
+ },
+ },
+ ['ru-ru-chirp3-hd-leda']: {
+ voice: {
+ name: 'ru-RU-Chirp3-HD-Leda',
+ },
+ },
+ ['ru-ru-chirp3-hd-orus']: {
+ voice: {
+ name: 'ru-RU-Chirp3-HD-Orus',
+ },
+ },
+ ['ru-ru-chirp3-hd-puck']: {
+ voice: {
+ name: 'ru-RU-Chirp3-HD-Puck',
+ },
+ },
+ ['ru-ru-chirp3-hd-zephyr']: {
+ voice: {
+ name: 'ru-RU-Chirp3-HD-Zephyr',
+ },
+ },
+ ['ru-ru-standard-a']: {
+ voice: {
+ name: 'ru-RU-Standard-A',
+ },
+ },
+ ['ru-ru-standard-b']: {
+ voice: {
+ name: 'ru-RU-Standard-B',
+ },
+ },
+ ['ru-ru-standard-c']: {
+ voice: {
+ name: 'ru-RU-Standard-C',
+ },
+ },
+ ['ru-ru-standard-d']: {
+ voice: {
+ name: 'ru-RU-Standard-D',
+ },
+ },
+ ['ru-ru-standard-e']: {
+ voice: {
+ name: 'ru-RU-Standard-E',
+ },
+ },
+ ['ru-ru-wavenet-a']: {
+ voice: {
+ name: 'ru-RU-Wavenet-A',
+ },
+ },
+ ['ru-ru-wavenet-b']: {
+ voice: {
+ name: 'ru-RU-Wavenet-B',
+ },
+ },
+ ['ru-ru-wavenet-c']: {
+ voice: {
+ name: 'ru-RU-Wavenet-C',
+ },
+ },
+ ['ru-ru-wavenet-d']: {
+ voice: {
+ name: 'ru-RU-Wavenet-D',
+ },
+ },
+ ['ru-ru-wavenet-e']: {
+ voice: {
+ name: 'ru-RU-Wavenet-E',
+ },
+ },
+ ['sadachbia']: {
+ voice: {
+ name: 'Sadachbia',
+ },
+ },
+ ['sadaltager']: {
+ voice: {
+ name: 'Sadaltager',
+ },
+ },
+ ['schedar']: {
+ voice: {
+ name: 'Schedar',
+ },
+ },
+ ['sk-sk-standard-b']: {
+ voice: {
+ name: 'sk-SK-Standard-B',
+ },
+ },
+ ['sk-sk-wavenet-b']: {
+ voice: {
+ name: 'sk-SK-Wavenet-B',
+ },
+ },
+ ['sr-rs-standard-b']: {
+ voice: {
+ name: 'sr-RS-Standard-B',
+ },
+ },
+ ['sulafat']: {
+ voice: {
+ name: 'Sulafat',
+ },
+ },
+ ['sv-se-chirp3-hd-achernar']: {
+ voice: {
+ name: 'sv-SE-Chirp3-HD-Achernar',
+ },
+ },
+ ['sv-se-chirp3-hd-achird']: {
+ voice: {
+ name: 'sv-SE-Chirp3-HD-Achird',
+ },
+ },
+ ['sv-se-chirp3-hd-algenib']: {
+ voice: {
+ name: 'sv-SE-Chirp3-HD-Algenib',
+ },
+ },
+ ['sv-se-chirp3-hd-algieba']: {
+ voice: {
+ name: 'sv-SE-Chirp3-HD-Algieba',
+ },
+ },
+ ['sv-se-chirp3-hd-alnilam']: {
+ voice: {
+ name: 'sv-SE-Chirp3-HD-Alnilam',
+ },
+ },
+ ['sv-se-chirp3-hd-aoede']: {
+ voice: {
+ name: 'sv-SE-Chirp3-HD-Aoede',
+ },
+ },
+ ['sv-se-chirp3-hd-autonoe']: {
+ voice: {
+ name: 'sv-SE-Chirp3-HD-Autonoe',
+ },
+ },
+ ['sv-se-chirp3-hd-callirrhoe']: {
+ voice: {
+ name: 'sv-SE-Chirp3-HD-Callirrhoe',
+ },
+ },
+ ['sv-se-chirp3-hd-charon']: {
+ voice: {
+ name: 'sv-SE-Chirp3-HD-Charon',
+ },
+ },
+ ['sv-se-chirp3-hd-despina']: {
+ voice: {
+ name: 'sv-SE-Chirp3-HD-Despina',
+ },
+ },
+ ['sv-se-chirp3-hd-enceladus']: {
+ voice: {
+ name: 'sv-SE-Chirp3-HD-Enceladus',
+ },
+ },
+ ['sv-se-chirp3-hd-erinome']: {
+ voice: {
+ name: 'sv-SE-Chirp3-HD-Erinome',
+ },
+ },
+ ['sv-se-chirp3-hd-fenrir']: {
+ voice: {
+ name: 'sv-SE-Chirp3-HD-Fenrir',
+ },
+ },
+ ['sv-se-chirp3-hd-gacrux']: {
+ voice: {
+ name: 'sv-SE-Chirp3-HD-Gacrux',
+ },
+ },
+ ['sv-se-chirp3-hd-iapetus']: {
+ voice: {
+ name: 'sv-SE-Chirp3-HD-Iapetus',
+ },
+ },
+ ['sv-se-chirp3-hd-kore']: {
+ voice: {
+ name: 'sv-SE-Chirp3-HD-Kore',
+ },
+ },
+ ['sv-se-chirp3-hd-laomedeia']: {
+ voice: {
+ name: 'sv-SE-Chirp3-HD-Laomedeia',
+ },
+ },
+ ['sv-se-chirp3-hd-leda']: {
+ voice: {
+ name: 'sv-SE-Chirp3-HD-Leda',
+ },
+ },
+ ['sv-se-chirp3-hd-orus']: {
+ voice: {
+ name: 'sv-SE-Chirp3-HD-Orus',
+ },
+ },
+ ['sv-se-chirp3-hd-puck']: {
+ voice: {
+ name: 'sv-SE-Chirp3-HD-Puck',
+ },
+ },
+ ['sv-se-chirp3-hd-pulcherrima']: {
+ voice: {
+ name: 'sv-SE-Chirp3-HD-Pulcherrima',
+ },
+ },
+ ['sv-se-chirp3-hd-rasalgethi']: {
+ voice: {
+ name: 'sv-SE-Chirp3-HD-Rasalgethi',
+ },
+ },
+ ['sv-se-chirp3-hd-sadachbia']: {
+ voice: {
+ name: 'sv-SE-Chirp3-HD-Sadachbia',
+ },
+ },
+ ['sv-se-chirp3-hd-sadaltager']: {
+ voice: {
+ name: 'sv-SE-Chirp3-HD-Sadaltager',
+ },
+ },
+ ['sv-se-chirp3-hd-schedar']: {
+ voice: {
+ name: 'sv-SE-Chirp3-HD-Schedar',
+ },
+ },
+ ['sv-se-chirp3-hd-sulafat']: {
+ voice: {
+ name: 'sv-SE-Chirp3-HD-Sulafat',
+ },
+ },
+ ['sv-se-chirp3-hd-umbriel']: {
+ voice: {
+ name: 'sv-SE-Chirp3-HD-Umbriel',
+ },
+ },
+ ['sv-se-chirp3-hd-vindemiatrix']: {
+ voice: {
+ name: 'sv-SE-Chirp3-HD-Vindemiatrix',
+ },
+ },
+ ['sv-se-chirp3-hd-zephyr']: {
+ voice: {
+ name: 'sv-SE-Chirp3-HD-Zephyr',
+ },
+ },
+ ['sv-se-chirp3-hd-zubenelgenubi']: {
+ voice: {
+ name: 'sv-SE-Chirp3-HD-Zubenelgenubi',
+ },
+ },
+ ['sv-se-standard-a']: {
+ voice: {
+ name: 'sv-SE-Standard-A',
+ },
+ },
+ ['sv-se-standard-b']: {
+ voice: {
+ name: 'sv-SE-Standard-B',
+ },
+ },
+ ['sv-se-standard-c']: {
+ voice: {
+ name: 'sv-SE-Standard-C',
+ },
+ },
+ ['sv-se-standard-d']: {
+ voice: {
+ name: 'sv-SE-Standard-D',
+ },
+ },
+ ['sv-se-standard-e']: {
+ voice: {
+ name: 'sv-SE-Standard-E',
+ },
+ },
+ ['sv-se-standard-f']: {
+ voice: {
+ name: 'sv-SE-Standard-F',
+ },
+ },
+ ['sv-se-standard-g']: {
+ voice: {
+ name: 'sv-SE-Standard-G',
+ },
+ },
+ ['sv-se-wavenet-a']: {
+ voice: {
+ name: 'sv-SE-Wavenet-A',
+ },
+ },
+ ['sv-se-wavenet-b']: {
+ voice: {
+ name: 'sv-SE-Wavenet-B',
+ },
+ },
+ ['sv-se-wavenet-c']: {
+ voice: {
+ name: 'sv-SE-Wavenet-C',
+ },
+ },
+ ['sv-se-wavenet-d']: {
+ voice: {
+ name: 'sv-SE-Wavenet-D',
+ },
+ },
+ ['sv-se-wavenet-e']: {
+ voice: {
+ name: 'sv-SE-Wavenet-E',
+ },
+ },
+ ['sv-se-wavenet-f']: {
+ voice: {
+ name: 'sv-SE-Wavenet-F',
+ },
+ },
+ ['sv-se-wavenet-g']: {
+ voice: {
+ name: 'sv-SE-Wavenet-G',
+ },
+ },
+ ['sw-ke-chirp3-hd-achernar']: {
+ voice: {
+ name: 'sw-KE-Chirp3-HD-Achernar',
+ },
+ },
+ ['sw-ke-chirp3-hd-achird']: {
+ voice: {
+ name: 'sw-KE-Chirp3-HD-Achird',
+ },
+ },
+ ['sw-ke-chirp3-hd-algenib']: {
+ voice: {
+ name: 'sw-KE-Chirp3-HD-Algenib',
+ },
+ },
+ ['sw-ke-chirp3-hd-algieba']: {
+ voice: {
+ name: 'sw-KE-Chirp3-HD-Algieba',
+ },
+ },
+ ['sw-ke-chirp3-hd-alnilam']: {
+ voice: {
+ name: 'sw-KE-Chirp3-HD-Alnilam',
+ },
+ },
+ ['sw-ke-chirp3-hd-aoede']: {
+ voice: {
+ name: 'sw-KE-Chirp3-HD-Aoede',
+ },
+ },
+ ['sw-ke-chirp3-hd-autonoe']: {
+ voice: {
+ name: 'sw-KE-Chirp3-HD-Autonoe',
+ },
+ },
+ ['sw-ke-chirp3-hd-callirrhoe']: {
+ voice: {
+ name: 'sw-KE-Chirp3-HD-Callirrhoe',
+ },
+ },
+ ['sw-ke-chirp3-hd-charon']: {
+ voice: {
+ name: 'sw-KE-Chirp3-HD-Charon',
+ },
+ },
+ ['sw-ke-chirp3-hd-despina']: {
+ voice: {
+ name: 'sw-KE-Chirp3-HD-Despina',
+ },
+ },
+ ['sw-ke-chirp3-hd-enceladus']: {
+ voice: {
+ name: 'sw-KE-Chirp3-HD-Enceladus',
+ },
+ },
+ ['sw-ke-chirp3-hd-erinome']: {
+ voice: {
+ name: 'sw-KE-Chirp3-HD-Erinome',
+ },
+ },
+ ['sw-ke-chirp3-hd-fenrir']: {
+ voice: {
+ name: 'sw-KE-Chirp3-HD-Fenrir',
+ },
+ },
+ ['sw-ke-chirp3-hd-gacrux']: {
+ voice: {
+ name: 'sw-KE-Chirp3-HD-Gacrux',
+ },
+ },
+ ['sw-ke-chirp3-hd-iapetus']: {
+ voice: {
+ name: 'sw-KE-Chirp3-HD-Iapetus',
+ },
+ },
+ ['sw-ke-chirp3-hd-kore']: {
+ voice: {
+ name: 'sw-KE-Chirp3-HD-Kore',
+ },
+ },
+ ['sw-ke-chirp3-hd-laomedeia']: {
+ voice: {
+ name: 'sw-KE-Chirp3-HD-Laomedeia',
+ },
+ },
+ ['sw-ke-chirp3-hd-leda']: {
+ voice: {
+ name: 'sw-KE-Chirp3-HD-Leda',
+ },
+ },
+ ['sw-ke-chirp3-hd-orus']: {
+ voice: {
+ name: 'sw-KE-Chirp3-HD-Orus',
+ },
+ },
+ ['sw-ke-chirp3-hd-puck']: {
+ voice: {
+ name: 'sw-KE-Chirp3-HD-Puck',
+ },
+ },
+ ['sw-ke-chirp3-hd-pulcherrima']: {
+ voice: {
+ name: 'sw-KE-Chirp3-HD-Pulcherrima',
+ },
+ },
+ ['sw-ke-chirp3-hd-rasalgethi']: {
+ voice: {
+ name: 'sw-KE-Chirp3-HD-Rasalgethi',
+ },
+ },
+ ['sw-ke-chirp3-hd-sadachbia']: {
+ voice: {
+ name: 'sw-KE-Chirp3-HD-Sadachbia',
+ },
+ },
+ ['sw-ke-chirp3-hd-sadaltager']: {
+ voice: {
+ name: 'sw-KE-Chirp3-HD-Sadaltager',
+ },
+ },
+ ['sw-ke-chirp3-hd-schedar']: {
+ voice: {
+ name: 'sw-KE-Chirp3-HD-Schedar',
+ },
+ },
+ ['sw-ke-chirp3-hd-sulafat']: {
+ voice: {
+ name: 'sw-KE-Chirp3-HD-Sulafat',
+ },
+ },
+ ['sw-ke-chirp3-hd-umbriel']: {
+ voice: {
+ name: 'sw-KE-Chirp3-HD-Umbriel',
+ },
+ },
+ ['sw-ke-chirp3-hd-vindemiatrix']: {
+ voice: {
+ name: 'sw-KE-Chirp3-HD-Vindemiatrix',
+ },
+ },
+ ['sw-ke-chirp3-hd-zephyr']: {
+ voice: {
+ name: 'sw-KE-Chirp3-HD-Zephyr',
+ },
+ },
+ ['sw-ke-chirp3-hd-zubenelgenubi']: {
+ voice: {
+ name: 'sw-KE-Chirp3-HD-Zubenelgenubi',
+ },
+ },
+ ['ta-in-chirp3-hd-achernar']: {
+ voice: {
+ name: 'ta-IN-Chirp3-HD-Achernar',
+ },
+ },
+ ['ta-in-chirp3-hd-achird']: {
+ voice: {
+ name: 'ta-IN-Chirp3-HD-Achird',
+ },
+ },
+ ['ta-in-chirp3-hd-algenib']: {
+ voice: {
+ name: 'ta-IN-Chirp3-HD-Algenib',
+ },
+ },
+ ['ta-in-chirp3-hd-algieba']: {
+ voice: {
+ name: 'ta-IN-Chirp3-HD-Algieba',
+ },
+ },
+ ['ta-in-chirp3-hd-alnilam']: {
+ voice: {
+ name: 'ta-IN-Chirp3-HD-Alnilam',
+ },
+ },
+ ['ta-in-chirp3-hd-aoede']: {
+ voice: {
+ name: 'ta-IN-Chirp3-HD-Aoede',
+ },
+ },
+ ['ta-in-chirp3-hd-autonoe']: {
+ voice: {
+ name: 'ta-IN-Chirp3-HD-Autonoe',
+ },
+ },
+ ['ta-in-chirp3-hd-callirrhoe']: {
+ voice: {
+ name: 'ta-IN-Chirp3-HD-Callirrhoe',
+ },
+ },
+ ['ta-in-chirp3-hd-charon']: {
+ voice: {
+ name: 'ta-IN-Chirp3-HD-Charon',
+ },
+ },
+ ['ta-in-chirp3-hd-despina']: {
+ voice: {
+ name: 'ta-IN-Chirp3-HD-Despina',
+ },
+ },
+ ['ta-in-chirp3-hd-enceladus']: {
+ voice: {
+ name: 'ta-IN-Chirp3-HD-Enceladus',
+ },
+ },
+ ['ta-in-chirp3-hd-erinome']: {
+ voice: {
+ name: 'ta-IN-Chirp3-HD-Erinome',
+ },
+ },
+ ['ta-in-chirp3-hd-fenrir']: {
+ voice: {
+ name: 'ta-IN-Chirp3-HD-Fenrir',
+ },
+ },
+ ['ta-in-chirp3-hd-gacrux']: {
+ voice: {
+ name: 'ta-IN-Chirp3-HD-Gacrux',
+ },
+ },
+ ['ta-in-chirp3-hd-iapetus']: {
+ voice: {
+ name: 'ta-IN-Chirp3-HD-Iapetus',
+ },
+ },
+ ['ta-in-chirp3-hd-kore']: {
+ voice: {
+ name: 'ta-IN-Chirp3-HD-Kore',
+ },
+ },
+ ['ta-in-chirp3-hd-laomedeia']: {
+ voice: {
+ name: 'ta-IN-Chirp3-HD-Laomedeia',
+ },
+ },
+ ['ta-in-chirp3-hd-leda']: {
+ voice: {
+ name: 'ta-IN-Chirp3-HD-Leda',
+ },
+ },
+ ['ta-in-chirp3-hd-orus']: {
+ voice: {
+ name: 'ta-IN-Chirp3-HD-Orus',
+ },
+ },
+ ['ta-in-chirp3-hd-puck']: {
+ voice: {
+ name: 'ta-IN-Chirp3-HD-Puck',
+ },
+ },
+ ['ta-in-chirp3-hd-pulcherrima']: {
+ voice: {
+ name: 'ta-IN-Chirp3-HD-Pulcherrima',
+ },
+ },
+ ['ta-in-chirp3-hd-rasalgethi']: {
+ voice: {
+ name: 'ta-IN-Chirp3-HD-Rasalgethi',
+ },
+ },
+ ['ta-in-chirp3-hd-sadachbia']: {
+ voice: {
+ name: 'ta-IN-Chirp3-HD-Sadachbia',
+ },
+ },
+ ['ta-in-chirp3-hd-sadaltager']: {
+ voice: {
+ name: 'ta-IN-Chirp3-HD-Sadaltager',
+ },
+ },
+ ['ta-in-chirp3-hd-schedar']: {
+ voice: {
+ name: 'ta-IN-Chirp3-HD-Schedar',
+ },
+ },
+ ['ta-in-chirp3-hd-sulafat']: {
+ voice: {
+ name: 'ta-IN-Chirp3-HD-Sulafat',
+ },
+ },
+ ['ta-in-chirp3-hd-umbriel']: {
+ voice: {
+ name: 'ta-IN-Chirp3-HD-Umbriel',
+ },
+ },
+ ['ta-in-chirp3-hd-vindemiatrix']: {
+ voice: {
+ name: 'ta-IN-Chirp3-HD-Vindemiatrix',
+ },
+ },
+ ['ta-in-chirp3-hd-zephyr']: {
+ voice: {
+ name: 'ta-IN-Chirp3-HD-Zephyr',
+ },
+ },
+ ['ta-in-chirp3-hd-zubenelgenubi']: {
+ voice: {
+ name: 'ta-IN-Chirp3-HD-Zubenelgenubi',
+ },
+ },
+ ['ta-in-standard-a']: {
+ voice: {
+ name: 'ta-IN-Standard-A',
+ },
+ },
+ ['ta-in-standard-b']: {
+ voice: {
+ name: 'ta-IN-Standard-B',
+ },
+ },
+ ['ta-in-standard-c']: {
+ voice: {
+ name: 'ta-IN-Standard-C',
+ },
+ },
+ ['ta-in-standard-d']: {
+ voice: {
+ name: 'ta-IN-Standard-D',
+ },
+ },
+ ['ta-in-wavenet-a']: {
+ voice: {
+ name: 'ta-IN-Wavenet-A',
+ },
+ },
+ ['ta-in-wavenet-b']: {
+ voice: {
+ name: 'ta-IN-Wavenet-B',
+ },
+ },
+ ['ta-in-wavenet-c']: {
+ voice: {
+ name: 'ta-IN-Wavenet-C',
+ },
+ },
+ ['ta-in-wavenet-d']: {
+ voice: {
+ name: 'ta-IN-Wavenet-D',
+ },
+ },
+ ['te-in-chirp3-hd-achernar']: {
+ voice: {
+ name: 'te-IN-Chirp3-HD-Achernar',
+ },
+ },
+ ['te-in-chirp3-hd-achird']: {
+ voice: {
+ name: 'te-IN-Chirp3-HD-Achird',
+ },
+ },
+ ['te-in-chirp3-hd-algenib']: {
+ voice: {
+ name: 'te-IN-Chirp3-HD-Algenib',
+ },
+ },
+ ['te-in-chirp3-hd-algieba']: {
+ voice: {
+ name: 'te-IN-Chirp3-HD-Algieba',
+ },
+ },
+ ['te-in-chirp3-hd-alnilam']: {
+ voice: {
+ name: 'te-IN-Chirp3-HD-Alnilam',
+ },
+ },
+ ['te-in-chirp3-hd-aoede']: {
+ voice: {
+ name: 'te-IN-Chirp3-HD-Aoede',
+ },
+ },
+ ['te-in-chirp3-hd-autonoe']: {
+ voice: {
+ name: 'te-IN-Chirp3-HD-Autonoe',
+ },
+ },
+ ['te-in-chirp3-hd-callirrhoe']: {
+ voice: {
+ name: 'te-IN-Chirp3-HD-Callirrhoe',
+ },
+ },
+ ['te-in-chirp3-hd-charon']: {
+ voice: {
+ name: 'te-IN-Chirp3-HD-Charon',
+ },
+ },
+ ['te-in-chirp3-hd-despina']: {
+ voice: {
+ name: 'te-IN-Chirp3-HD-Despina',
+ },
+ },
+ ['te-in-chirp3-hd-enceladus']: {
+ voice: {
+ name: 'te-IN-Chirp3-HD-Enceladus',
+ },
+ },
+ ['te-in-chirp3-hd-erinome']: {
+ voice: {
+ name: 'te-IN-Chirp3-HD-Erinome',
+ },
+ },
+ ['te-in-chirp3-hd-fenrir']: {
+ voice: {
+ name: 'te-IN-Chirp3-HD-Fenrir',
+ },
+ },
+ ['te-in-chirp3-hd-gacrux']: {
+ voice: {
+ name: 'te-IN-Chirp3-HD-Gacrux',
+ },
+ },
+ ['te-in-chirp3-hd-iapetus']: {
+ voice: {
+ name: 'te-IN-Chirp3-HD-Iapetus',
+ },
+ },
+ ['te-in-chirp3-hd-kore']: {
+ voice: {
+ name: 'te-IN-Chirp3-HD-Kore',
+ },
+ },
+ ['te-in-chirp3-hd-laomedeia']: {
+ voice: {
+ name: 'te-IN-Chirp3-HD-Laomedeia',
+ },
+ },
+ ['te-in-chirp3-hd-leda']: {
+ voice: {
+ name: 'te-IN-Chirp3-HD-Leda',
+ },
+ },
+ ['te-in-chirp3-hd-orus']: {
+ voice: {
+ name: 'te-IN-Chirp3-HD-Orus',
+ },
+ },
+ ['te-in-chirp3-hd-puck']: {
+ voice: {
+ name: 'te-IN-Chirp3-HD-Puck',
+ },
+ },
+ ['te-in-chirp3-hd-pulcherrima']: {
+ voice: {
+ name: 'te-IN-Chirp3-HD-Pulcherrima',
+ },
+ },
+ ['te-in-chirp3-hd-rasalgethi']: {
+ voice: {
+ name: 'te-IN-Chirp3-HD-Rasalgethi',
+ },
+ },
+ ['te-in-chirp3-hd-sadachbia']: {
+ voice: {
+ name: 'te-IN-Chirp3-HD-Sadachbia',
+ },
+ },
+ ['te-in-chirp3-hd-sadaltager']: {
+ voice: {
+ name: 'te-IN-Chirp3-HD-Sadaltager',
+ },
+ },
+ ['te-in-chirp3-hd-schedar']: {
+ voice: {
+ name: 'te-IN-Chirp3-HD-Schedar',
+ },
+ },
+ ['te-in-chirp3-hd-sulafat']: {
+ voice: {
+ name: 'te-IN-Chirp3-HD-Sulafat',
+ },
+ },
+ ['te-in-chirp3-hd-umbriel']: {
+ voice: {
+ name: 'te-IN-Chirp3-HD-Umbriel',
+ },
+ },
+ ['te-in-chirp3-hd-vindemiatrix']: {
+ voice: {
+ name: 'te-IN-Chirp3-HD-Vindemiatrix',
+ },
+ },
+ ['te-in-chirp3-hd-zephyr']: {
+ voice: {
+ name: 'te-IN-Chirp3-HD-Zephyr',
+ },
+ },
+ ['te-in-chirp3-hd-zubenelgenubi']: {
+ voice: {
+ name: 'te-IN-Chirp3-HD-Zubenelgenubi',
+ },
+ },
+ ['te-in-standard-a']: {
+ voice: {
+ name: 'te-IN-Standard-A',
+ },
+ },
+ ['te-in-standard-b']: {
+ voice: {
+ name: 'te-IN-Standard-B',
+ },
+ },
+ ['te-in-standard-c']: {
+ voice: {
+ name: 'te-IN-Standard-C',
+ },
+ },
+ ['te-in-standard-d']: {
+ voice: {
+ name: 'te-IN-Standard-D',
+ },
+ },
+ ['th-th-chirp3-hd-achernar']: {
+ voice: {
+ name: 'th-TH-Chirp3-HD-Achernar',
+ },
+ },
+ ['th-th-chirp3-hd-achird']: {
+ voice: {
+ name: 'th-TH-Chirp3-HD-Achird',
+ },
+ },
+ ['th-th-chirp3-hd-algenib']: {
+ voice: {
+ name: 'th-TH-Chirp3-HD-Algenib',
+ },
+ },
+ ['th-th-chirp3-hd-algieba']: {
+ voice: {
+ name: 'th-TH-Chirp3-HD-Algieba',
+ },
+ },
+ ['th-th-chirp3-hd-alnilam']: {
+ voice: {
+ name: 'th-TH-Chirp3-HD-Alnilam',
+ },
+ },
+ ['th-th-chirp3-hd-aoede']: {
+ voice: {
+ name: 'th-TH-Chirp3-HD-Aoede',
+ },
+ },
+ ['th-th-chirp3-hd-autonoe']: {
+ voice: {
+ name: 'th-TH-Chirp3-HD-Autonoe',
+ },
+ },
+ ['th-th-chirp3-hd-callirrhoe']: {
+ voice: {
+ name: 'th-TH-Chirp3-HD-Callirrhoe',
+ },
+ },
+ ['th-th-chirp3-hd-charon']: {
+ voice: {
+ name: 'th-TH-Chirp3-HD-Charon',
+ },
+ },
+ ['th-th-chirp3-hd-despina']: {
+ voice: {
+ name: 'th-TH-Chirp3-HD-Despina',
+ },
+ },
+ ['th-th-chirp3-hd-enceladus']: {
+ voice: {
+ name: 'th-TH-Chirp3-HD-Enceladus',
+ },
+ },
+ ['th-th-chirp3-hd-erinome']: {
+ voice: {
+ name: 'th-TH-Chirp3-HD-Erinome',
+ },
+ },
+ ['th-th-chirp3-hd-fenrir']: {
+ voice: {
+ name: 'th-TH-Chirp3-HD-Fenrir',
+ },
+ },
+ ['th-th-chirp3-hd-gacrux']: {
+ voice: {
+ name: 'th-TH-Chirp3-HD-Gacrux',
+ },
+ },
+ ['th-th-chirp3-hd-iapetus']: {
+ voice: {
+ name: 'th-TH-Chirp3-HD-Iapetus',
+ },
+ },
+ ['th-th-chirp3-hd-kore']: {
+ voice: {
+ name: 'th-TH-Chirp3-HD-Kore',
+ },
+ },
+ ['th-th-chirp3-hd-laomedeia']: {
+ voice: {
+ name: 'th-TH-Chirp3-HD-Laomedeia',
+ },
+ },
+ ['th-th-chirp3-hd-leda']: {
+ voice: {
+ name: 'th-TH-Chirp3-HD-Leda',
+ },
+ },
+ ['th-th-chirp3-hd-orus']: {
+ voice: {
+ name: 'th-TH-Chirp3-HD-Orus',
+ },
+ },
+ ['th-th-chirp3-hd-puck']: {
+ voice: {
+ name: 'th-TH-Chirp3-HD-Puck',
+ },
+ },
+ ['th-th-chirp3-hd-pulcherrima']: {
+ voice: {
+ name: 'th-TH-Chirp3-HD-Pulcherrima',
+ },
+ },
+ ['th-th-chirp3-hd-rasalgethi']: {
+ voice: {
+ name: 'th-TH-Chirp3-HD-Rasalgethi',
+ },
+ },
+ ['th-th-chirp3-hd-sadachbia']: {
+ voice: {
+ name: 'th-TH-Chirp3-HD-Sadachbia',
+ },
+ },
+ ['th-th-chirp3-hd-sadaltager']: {
+ voice: {
+ name: 'th-TH-Chirp3-HD-Sadaltager',
+ },
+ },
+ ['th-th-chirp3-hd-schedar']: {
+ voice: {
+ name: 'th-TH-Chirp3-HD-Schedar',
+ },
+ },
+ ['th-th-chirp3-hd-sulafat']: {
+ voice: {
+ name: 'th-TH-Chirp3-HD-Sulafat',
+ },
+ },
+ ['th-th-chirp3-hd-umbriel']: {
+ voice: {
+ name: 'th-TH-Chirp3-HD-Umbriel',
+ },
+ },
+ ['th-th-chirp3-hd-vindemiatrix']: {
+ voice: {
+ name: 'th-TH-Chirp3-HD-Vindemiatrix',
+ },
+ },
+ ['th-th-chirp3-hd-zephyr']: {
+ voice: {
+ name: 'th-TH-Chirp3-HD-Zephyr',
+ },
+ },
+ ['th-th-chirp3-hd-zubenelgenubi']: {
+ voice: {
+ name: 'th-TH-Chirp3-HD-Zubenelgenubi',
+ },
+ },
+ ['th-th-neural2-c']: {
+ voice: {
+ name: 'th-TH-Neural2-C',
+ },
+ },
+ ['th-th-standard-a']: {
+ voice: {
+ name: 'th-TH-Standard-A',
+ },
+ },
+ ['tr-tr-chirp3-hd-achernar']: {
+ voice: {
+ name: 'tr-TR-Chirp3-HD-Achernar',
+ },
+ },
+ ['tr-tr-chirp3-hd-achird']: {
+ voice: {
+ name: 'tr-TR-Chirp3-HD-Achird',
+ },
+ },
+ ['tr-tr-chirp3-hd-algenib']: {
+ voice: {
+ name: 'tr-TR-Chirp3-HD-Algenib',
+ },
+ },
+ ['tr-tr-chirp3-hd-algieba']: {
+ voice: {
+ name: 'tr-TR-Chirp3-HD-Algieba',
+ },
+ },
+ ['tr-tr-chirp3-hd-alnilam']: {
+ voice: {
+ name: 'tr-TR-Chirp3-HD-Alnilam',
+ },
+ },
+ ['tr-tr-chirp3-hd-aoede']: {
+ voice: {
+ name: 'tr-TR-Chirp3-HD-Aoede',
+ },
+ },
+ ['tr-tr-chirp3-hd-autonoe']: {
+ voice: {
+ name: 'tr-TR-Chirp3-HD-Autonoe',
+ },
+ },
+ ['tr-tr-chirp3-hd-callirrhoe']: {
+ voice: {
+ name: 'tr-TR-Chirp3-HD-Callirrhoe',
+ },
+ },
+ ['tr-tr-chirp3-hd-charon']: {
+ voice: {
+ name: 'tr-TR-Chirp3-HD-Charon',
+ },
+ },
+ ['tr-tr-chirp3-hd-despina']: {
+ voice: {
+ name: 'tr-TR-Chirp3-HD-Despina',
+ },
+ },
+ ['tr-tr-chirp3-hd-enceladus']: {
+ voice: {
+ name: 'tr-TR-Chirp3-HD-Enceladus',
+ },
+ },
+ ['tr-tr-chirp3-hd-erinome']: {
+ voice: {
+ name: 'tr-TR-Chirp3-HD-Erinome',
+ },
+ },
+ ['tr-tr-chirp3-hd-fenrir']: {
+ voice: {
+ name: 'tr-TR-Chirp3-HD-Fenrir',
+ },
+ },
+ ['tr-tr-chirp3-hd-gacrux']: {
+ voice: {
+ name: 'tr-TR-Chirp3-HD-Gacrux',
+ },
+ },
+ ['tr-tr-chirp3-hd-iapetus']: {
+ voice: {
+ name: 'tr-TR-Chirp3-HD-Iapetus',
+ },
+ },
+ ['tr-tr-chirp3-hd-kore']: {
+ voice: {
+ name: 'tr-TR-Chirp3-HD-Kore',
+ },
+ },
+ ['tr-tr-chirp3-hd-laomedeia']: {
+ voice: {
+ name: 'tr-TR-Chirp3-HD-Laomedeia',
+ },
+ },
+ ['tr-tr-chirp3-hd-leda']: {
+ voice: {
+ name: 'tr-TR-Chirp3-HD-Leda',
+ },
+ },
+ ['tr-tr-chirp3-hd-orus']: {
+ voice: {
+ name: 'tr-TR-Chirp3-HD-Orus',
+ },
+ },
+ ['tr-tr-chirp3-hd-puck']: {
+ voice: {
+ name: 'tr-TR-Chirp3-HD-Puck',
+ },
+ },
+ ['tr-tr-chirp3-hd-pulcherrima']: {
+ voice: {
+ name: 'tr-TR-Chirp3-HD-Pulcherrima',
+ },
+ },
+ ['tr-tr-chirp3-hd-rasalgethi']: {
+ voice: {
+ name: 'tr-TR-Chirp3-HD-Rasalgethi',
+ },
+ },
+ ['tr-tr-chirp3-hd-sadachbia']: {
+ voice: {
+ name: 'tr-TR-Chirp3-HD-Sadachbia',
+ },
+ },
+ ['tr-tr-chirp3-hd-sadaltager']: {
+ voice: {
+ name: 'tr-TR-Chirp3-HD-Sadaltager',
+ },
+ },
+ ['tr-tr-chirp3-hd-schedar']: {
+ voice: {
+ name: 'tr-TR-Chirp3-HD-Schedar',
+ },
+ },
+ ['tr-tr-chirp3-hd-sulafat']: {
+ voice: {
+ name: 'tr-TR-Chirp3-HD-Sulafat',
+ },
+ },
+ ['tr-tr-chirp3-hd-umbriel']: {
+ voice: {
+ name: 'tr-TR-Chirp3-HD-Umbriel',
+ },
+ },
+ ['tr-tr-chirp3-hd-vindemiatrix']: {
+ voice: {
+ name: 'tr-TR-Chirp3-HD-Vindemiatrix',
+ },
+ },
+ ['tr-tr-chirp3-hd-zephyr']: {
+ voice: {
+ name: 'tr-TR-Chirp3-HD-Zephyr',
+ },
+ },
+ ['tr-tr-chirp3-hd-zubenelgenubi']: {
+ voice: {
+ name: 'tr-TR-Chirp3-HD-Zubenelgenubi',
+ },
+ },
+ ['tr-tr-standard-a']: {
+ voice: {
+ name: 'tr-TR-Standard-A',
+ },
+ },
+ ['tr-tr-standard-b']: {
+ voice: {
+ name: 'tr-TR-Standard-B',
+ },
+ },
+ ['tr-tr-standard-c']: {
+ voice: {
+ name: 'tr-TR-Standard-C',
+ },
+ },
+ ['tr-tr-standard-d']: {
+ voice: {
+ name: 'tr-TR-Standard-D',
+ },
+ },
+ ['tr-tr-standard-e']: {
+ voice: {
+ name: 'tr-TR-Standard-E',
+ },
+ },
+ ['tr-tr-wavenet-a']: {
+ voice: {
+ name: 'tr-TR-Wavenet-A',
+ },
+ },
+ ['tr-tr-wavenet-b']: {
+ voice: {
+ name: 'tr-TR-Wavenet-B',
+ },
+ },
+ ['tr-tr-wavenet-c']: {
+ voice: {
+ name: 'tr-TR-Wavenet-C',
+ },
+ },
+ ['tr-tr-wavenet-d']: {
+ voice: {
+ name: 'tr-TR-Wavenet-D',
+ },
+ },
+ ['tr-tr-wavenet-e']: {
+ voice: {
+ name: 'tr-TR-Wavenet-E',
+ },
+ },
+ ['uk-ua-chirp3-hd-achernar']: {
+ voice: {
+ name: 'uk-UA-Chirp3-HD-Achernar',
+ },
+ },
+ ['uk-ua-chirp3-hd-achird']: {
+ voice: {
+ name: 'uk-UA-Chirp3-HD-Achird',
+ },
+ },
+ ['uk-ua-chirp3-hd-algenib']: {
+ voice: {
+ name: 'uk-UA-Chirp3-HD-Algenib',
+ },
+ },
+ ['uk-ua-chirp3-hd-algieba']: {
+ voice: {
+ name: 'uk-UA-Chirp3-HD-Algieba',
+ },
+ },
+ ['uk-ua-chirp3-hd-alnilam']: {
+ voice: {
+ name: 'uk-UA-Chirp3-HD-Alnilam',
+ },
+ },
+ ['uk-ua-chirp3-hd-aoede']: {
+ voice: {
+ name: 'uk-UA-Chirp3-HD-Aoede',
+ },
+ },
+ ['uk-ua-chirp3-hd-autonoe']: {
+ voice: {
+ name: 'uk-UA-Chirp3-HD-Autonoe',
+ },
+ },
+ ['uk-ua-chirp3-hd-callirrhoe']: {
+ voice: {
+ name: 'uk-UA-Chirp3-HD-Callirrhoe',
+ },
+ },
+ ['uk-ua-chirp3-hd-charon']: {
+ voice: {
+ name: 'uk-UA-Chirp3-HD-Charon',
+ },
+ },
+ ['uk-ua-chirp3-hd-despina']: {
+ voice: {
+ name: 'uk-UA-Chirp3-HD-Despina',
+ },
+ },
+ ['uk-ua-chirp3-hd-enceladus']: {
+ voice: {
+ name: 'uk-UA-Chirp3-HD-Enceladus',
+ },
+ },
+ ['uk-ua-chirp3-hd-erinome']: {
+ voice: {
+ name: 'uk-UA-Chirp3-HD-Erinome',
+ },
+ },
+ ['uk-ua-chirp3-hd-fenrir']: {
+ voice: {
+ name: 'uk-UA-Chirp3-HD-Fenrir',
+ },
+ },
+ ['uk-ua-chirp3-hd-gacrux']: {
+ voice: {
+ name: 'uk-UA-Chirp3-HD-Gacrux',
+ },
+ },
+ ['uk-ua-chirp3-hd-iapetus']: {
+ voice: {
+ name: 'uk-UA-Chirp3-HD-Iapetus',
+ },
+ },
+ ['uk-ua-chirp3-hd-kore']: {
+ voice: {
+ name: 'uk-UA-Chirp3-HD-Kore',
+ },
+ },
+ ['uk-ua-chirp3-hd-laomedeia']: {
+ voice: {
+ name: 'uk-UA-Chirp3-HD-Laomedeia',
+ },
+ },
+ ['uk-ua-chirp3-hd-leda']: {
+ voice: {
+ name: 'uk-UA-Chirp3-HD-Leda',
+ },
+ },
+ ['uk-ua-chirp3-hd-orus']: {
+ voice: {
+ name: 'uk-UA-Chirp3-HD-Orus',
+ },
+ },
+ ['uk-ua-chirp3-hd-puck']: {
+ voice: {
+ name: 'uk-UA-Chirp3-HD-Puck',
+ },
+ },
+ ['uk-ua-chirp3-hd-pulcherrima']: {
+ voice: {
+ name: 'uk-UA-Chirp3-HD-Pulcherrima',
+ },
+ },
+ ['uk-ua-chirp3-hd-rasalgethi']: {
+ voice: {
+ name: 'uk-UA-Chirp3-HD-Rasalgethi',
+ },
+ },
+ ['uk-ua-chirp3-hd-sadachbia']: {
+ voice: {
+ name: 'uk-UA-Chirp3-HD-Sadachbia',
+ },
+ },
+ ['uk-ua-chirp3-hd-sadaltager']: {
+ voice: {
+ name: 'uk-UA-Chirp3-HD-Sadaltager',
+ },
+ },
+ ['uk-ua-chirp3-hd-schedar']: {
+ voice: {
+ name: 'uk-UA-Chirp3-HD-Schedar',
+ },
+ },
+ ['uk-ua-chirp3-hd-sulafat']: {
+ voice: {
+ name: 'uk-UA-Chirp3-HD-Sulafat',
+ },
+ },
+ ['uk-ua-chirp3-hd-umbriel']: {
+ voice: {
+ name: 'uk-UA-Chirp3-HD-Umbriel',
+ },
+ },
+ ['uk-ua-chirp3-hd-vindemiatrix']: {
+ voice: {
+ name: 'uk-UA-Chirp3-HD-Vindemiatrix',
+ },
+ },
+ ['uk-ua-chirp3-hd-zephyr']: {
+ voice: {
+ name: 'uk-UA-Chirp3-HD-Zephyr',
+ },
+ },
+ ['uk-ua-chirp3-hd-zubenelgenubi']: {
+ voice: {
+ name: 'uk-UA-Chirp3-HD-Zubenelgenubi',
+ },
+ },
+ ['uk-ua-standard-b']: {
+ voice: {
+ name: 'uk-UA-Standard-B',
+ },
+ },
+ ['uk-ua-wavenet-b']: {
+ voice: {
+ name: 'uk-UA-Wavenet-B',
+ },
+ },
+ ['umbriel']: {
+ voice: {
+ name: 'Umbriel',
+ },
+ },
+ ['ur-in-chirp3-hd-achernar']: {
+ voice: {
+ name: 'ur-IN-Chirp3-HD-Achernar',
+ },
+ },
+ ['ur-in-chirp3-hd-achird']: {
+ voice: {
+ name: 'ur-IN-Chirp3-HD-Achird',
+ },
+ },
+ ['ur-in-chirp3-hd-algenib']: {
+ voice: {
+ name: 'ur-IN-Chirp3-HD-Algenib',
+ },
+ },
+ ['ur-in-chirp3-hd-algieba']: {
+ voice: {
+ name: 'ur-IN-Chirp3-HD-Algieba',
+ },
+ },
+ ['ur-in-chirp3-hd-alnilam']: {
+ voice: {
+ name: 'ur-IN-Chirp3-HD-Alnilam',
+ },
+ },
+ ['ur-in-chirp3-hd-aoede']: {
+ voice: {
+ name: 'ur-IN-Chirp3-HD-Aoede',
+ },
+ },
+ ['ur-in-chirp3-hd-autonoe']: {
+ voice: {
+ name: 'ur-IN-Chirp3-HD-Autonoe',
+ },
+ },
+ ['ur-in-chirp3-hd-callirrhoe']: {
+ voice: {
+ name: 'ur-IN-Chirp3-HD-Callirrhoe',
+ },
+ },
+ ['ur-in-chirp3-hd-charon']: {
+ voice: {
+ name: 'ur-IN-Chirp3-HD-Charon',
+ },
+ },
+ ['ur-in-chirp3-hd-despina']: {
+ voice: {
+ name: 'ur-IN-Chirp3-HD-Despina',
+ },
+ },
+ ['ur-in-chirp3-hd-enceladus']: {
+ voice: {
+ name: 'ur-IN-Chirp3-HD-Enceladus',
+ },
+ },
+ ['ur-in-chirp3-hd-erinome']: {
+ voice: {
+ name: 'ur-IN-Chirp3-HD-Erinome',
+ },
+ },
+ ['ur-in-chirp3-hd-fenrir']: {
+ voice: {
+ name: 'ur-IN-Chirp3-HD-Fenrir',
+ },
+ },
+ ['ur-in-chirp3-hd-gacrux']: {
+ voice: {
+ name: 'ur-IN-Chirp3-HD-Gacrux',
+ },
+ },
+ ['ur-in-chirp3-hd-iapetus']: {
+ voice: {
+ name: 'ur-IN-Chirp3-HD-Iapetus',
+ },
+ },
+ ['ur-in-chirp3-hd-kore']: {
+ voice: {
+ name: 'ur-IN-Chirp3-HD-Kore',
+ },
+ },
+ ['ur-in-chirp3-hd-laomedeia']: {
+ voice: {
+ name: 'ur-IN-Chirp3-HD-Laomedeia',
+ },
+ },
+ ['ur-in-chirp3-hd-leda']: {
+ voice: {
+ name: 'ur-IN-Chirp3-HD-Leda',
+ },
+ },
+ ['ur-in-chirp3-hd-orus']: {
+ voice: {
+ name: 'ur-IN-Chirp3-HD-Orus',
+ },
+ },
+ ['ur-in-chirp3-hd-puck']: {
+ voice: {
+ name: 'ur-IN-Chirp3-HD-Puck',
+ },
+ },
+ ['ur-in-chirp3-hd-pulcherrima']: {
+ voice: {
+ name: 'ur-IN-Chirp3-HD-Pulcherrima',
+ },
+ },
+ ['ur-in-chirp3-hd-rasalgethi']: {
+ voice: {
+ name: 'ur-IN-Chirp3-HD-Rasalgethi',
+ },
+ },
+ ['ur-in-chirp3-hd-sadachbia']: {
+ voice: {
+ name: 'ur-IN-Chirp3-HD-Sadachbia',
+ },
+ },
+ ['ur-in-chirp3-hd-sadaltager']: {
+ voice: {
+ name: 'ur-IN-Chirp3-HD-Sadaltager',
+ },
+ },
+ ['ur-in-chirp3-hd-schedar']: {
+ voice: {
+ name: 'ur-IN-Chirp3-HD-Schedar',
+ },
+ },
+ ['ur-in-chirp3-hd-sulafat']: {
+ voice: {
+ name: 'ur-IN-Chirp3-HD-Sulafat',
+ },
+ },
+ ['ur-in-chirp3-hd-umbriel']: {
+ voice: {
+ name: 'ur-IN-Chirp3-HD-Umbriel',
+ },
+ },
+ ['ur-in-chirp3-hd-vindemiatrix']: {
+ voice: {
+ name: 'ur-IN-Chirp3-HD-Vindemiatrix',
+ },
+ },
+ ['ur-in-chirp3-hd-zephyr']: {
+ voice: {
+ name: 'ur-IN-Chirp3-HD-Zephyr',
+ },
+ },
+ ['ur-in-chirp3-hd-zubenelgenubi']: {
+ voice: {
+ name: 'ur-IN-Chirp3-HD-Zubenelgenubi',
+ },
+ },
+ ['ur-in-standard-a']: {
+ voice: {
+ name: 'ur-IN-Standard-A',
+ },
+ },
+ ['ur-in-standard-b']: {
+ voice: {
+ name: 'ur-IN-Standard-B',
+ },
+ },
+ ['ur-in-wavenet-a']: {
+ voice: {
+ name: 'ur-IN-Wavenet-A',
+ },
+ },
+ ['ur-in-wavenet-b']: {
+ voice: {
+ name: 'ur-IN-Wavenet-B',
+ },
+ },
+ ['vi-vn-chirp3-hd-achernar']: {
+ voice: {
+ name: 'vi-VN-Chirp3-HD-Achernar',
+ },
+ },
+ ['vi-vn-chirp3-hd-achird']: {
+ voice: {
+ name: 'vi-VN-Chirp3-HD-Achird',
+ },
+ },
+ ['vi-vn-chirp3-hd-algenib']: {
+ voice: {
+ name: 'vi-VN-Chirp3-HD-Algenib',
+ },
+ },
+ ['vi-vn-chirp3-hd-algieba']: {
+ voice: {
+ name: 'vi-VN-Chirp3-HD-Algieba',
+ },
+ },
+ ['vi-vn-chirp3-hd-alnilam']: {
+ voice: {
+ name: 'vi-VN-Chirp3-HD-Alnilam',
+ },
+ },
+ ['vi-vn-chirp3-hd-aoede']: {
+ voice: {
+ name: 'vi-VN-Chirp3-HD-Aoede',
+ },
+ },
+ ['vi-vn-chirp3-hd-autonoe']: {
+ voice: {
+ name: 'vi-VN-Chirp3-HD-Autonoe',
+ },
+ },
+ ['vi-vn-chirp3-hd-callirrhoe']: {
+ voice: {
+ name: 'vi-VN-Chirp3-HD-Callirrhoe',
+ },
+ },
+ ['vi-vn-chirp3-hd-charon']: {
+ voice: {
+ name: 'vi-VN-Chirp3-HD-Charon',
+ },
+ },
+ ['vi-vn-chirp3-hd-despina']: {
+ voice: {
+ name: 'vi-VN-Chirp3-HD-Despina',
+ },
+ },
+ ['vi-vn-chirp3-hd-enceladus']: {
+ voice: {
+ name: 'vi-VN-Chirp3-HD-Enceladus',
+ },
+ },
+ ['vi-vn-chirp3-hd-erinome']: {
+ voice: {
+ name: 'vi-VN-Chirp3-HD-Erinome',
+ },
+ },
+ ['vi-vn-chirp3-hd-fenrir']: {
+ voice: {
+ name: 'vi-VN-Chirp3-HD-Fenrir',
+ },
+ },
+ ['vi-vn-chirp3-hd-gacrux']: {
+ voice: {
+ name: 'vi-VN-Chirp3-HD-Gacrux',
+ },
+ },
+ ['vi-vn-chirp3-hd-iapetus']: {
+ voice: {
+ name: 'vi-VN-Chirp3-HD-Iapetus',
+ },
+ },
+ ['vi-vn-chirp3-hd-kore']: {
+ voice: {
+ name: 'vi-VN-Chirp3-HD-Kore',
+ },
+ },
+ ['vi-vn-chirp3-hd-laomedeia']: {
+ voice: {
+ name: 'vi-VN-Chirp3-HD-Laomedeia',
+ },
+ },
+ ['vi-vn-chirp3-hd-leda']: {
+ voice: {
+ name: 'vi-VN-Chirp3-HD-Leda',
+ },
+ },
+ ['vi-vn-chirp3-hd-orus']: {
+ voice: {
+ name: 'vi-VN-Chirp3-HD-Orus',
+ },
+ },
+ ['vi-vn-chirp3-hd-puck']: {
+ voice: {
+ name: 'vi-VN-Chirp3-HD-Puck',
+ },
+ },
+ ['vi-vn-chirp3-hd-pulcherrima']: {
+ voice: {
+ name: 'vi-VN-Chirp3-HD-Pulcherrima',
+ },
+ },
+ ['vi-vn-chirp3-hd-rasalgethi']: {
+ voice: {
+ name: 'vi-VN-Chirp3-HD-Rasalgethi',
+ },
+ },
+ ['vi-vn-chirp3-hd-sadachbia']: {
+ voice: {
+ name: 'vi-VN-Chirp3-HD-Sadachbia',
+ },
+ },
+ ['vi-vn-chirp3-hd-sadaltager']: {
+ voice: {
+ name: 'vi-VN-Chirp3-HD-Sadaltager',
+ },
+ },
+ ['vi-vn-chirp3-hd-schedar']: {
+ voice: {
+ name: 'vi-VN-Chirp3-HD-Schedar',
+ },
+ },
+ ['vi-vn-chirp3-hd-sulafat']: {
+ voice: {
+ name: 'vi-VN-Chirp3-HD-Sulafat',
+ },
+ },
+ ['vi-vn-chirp3-hd-umbriel']: {
+ voice: {
+ name: 'vi-VN-Chirp3-HD-Umbriel',
+ },
+ },
+ ['vi-vn-chirp3-hd-vindemiatrix']: {
+ voice: {
+ name: 'vi-VN-Chirp3-HD-Vindemiatrix',
+ },
+ },
+ ['vi-vn-chirp3-hd-zephyr']: {
+ voice: {
+ name: 'vi-VN-Chirp3-HD-Zephyr',
+ },
+ },
+ ['vi-vn-chirp3-hd-zubenelgenubi']: {
+ voice: {
+ name: 'vi-VN-Chirp3-HD-Zubenelgenubi',
+ },
+ },
+ ['vi-vn-neural2-a']: {
+ voice: {
+ name: 'vi-VN-Neural2-A',
+ },
+ },
+ ['vi-vn-neural2-d']: {
+ voice: {
+ name: 'vi-VN-Neural2-D',
+ },
+ },
+ ['vi-vn-standard-a']: {
+ voice: {
+ name: 'vi-VN-Standard-A',
+ },
+ },
+ ['vi-vn-standard-b']: {
+ voice: {
+ name: 'vi-VN-Standard-B',
+ },
+ },
+ ['vi-vn-standard-c']: {
+ voice: {
+ name: 'vi-VN-Standard-C',
+ },
+ },
+ ['vi-vn-standard-d']: {
+ voice: {
+ name: 'vi-VN-Standard-D',
+ },
+ },
+ ['vi-vn-wavenet-a']: {
+ voice: {
+ name: 'vi-VN-Wavenet-A',
+ },
+ },
+ ['vi-vn-wavenet-b']: {
+ voice: {
+ name: 'vi-VN-Wavenet-B',
+ },
+ },
+ ['vi-vn-wavenet-c']: {
+ voice: {
+ name: 'vi-VN-Wavenet-C',
+ },
+ },
+ ['vi-vn-wavenet-d']: {
+ voice: {
+ name: 'vi-VN-Wavenet-D',
+ },
+ },
+ ['vindemiatrix']: {
+ voice: {
+ name: 'Vindemiatrix',
+ },
+ },
+ ['yue-hk-standard-a']: {
+ voice: {
+ name: 'yue-HK-Standard-A',
+ },
+ },
+ ['yue-hk-standard-b']: {
+ voice: {
+ name: 'yue-HK-Standard-B',
+ },
+ },
+ ['yue-hk-standard-c']: {
+ voice: {
+ name: 'yue-HK-Standard-C',
+ },
+ },
+ ['yue-hk-standard-d']: {
+ voice: {
+ name: 'yue-HK-Standard-D',
+ },
+ },
+ ['zephyr']: {
+ voice: {
+ name: 'Zephyr',
+ },
+ },
+ ['zubenelgenubi']: {
+ voice: {
+ name: 'Zubenelgenubi',
+ },
+ },
+};
diff --git a/src/formatters/data/ibmWatsonVoices.ts b/src/formatters/data/ibmWatsonVoices.ts
new file mode 100644
index 0000000..49db20c
--- /dev/null
+++ b/src/formatters/data/ibmWatsonVoices.ts
@@ -0,0 +1,310 @@
+// THIS FILE IS AUTO-GENERATED by scripts/update-voice-data.js.
+// Do not edit this file manually.
+
+export const IBM_WATSON_TTS_VOICES: Record = {
+ ['de-de_birgitv2voice']: {
+ voice: {
+ name: 'de-DE_BirgitV2Voice',
+ },
+ },
+ ['de-de_birgitv3voice']: {
+ voice: {
+ name: 'de-DE_BirgitV3Voice',
+ },
+ },
+ ['de-de_birgitvoice']: {
+ voice: {
+ name: 'de-DE_BirgitVoice',
+ },
+ },
+ ['de-de_dieterv2voice']: {
+ voice: {
+ name: 'de-DE_DieterV2Voice',
+ },
+ },
+ ['de-de_dieterv3voice']: {
+ voice: {
+ name: 'de-DE_DieterV3Voice',
+ },
+ },
+ ['de-de_dietervoice']: {
+ voice: {
+ name: 'de-DE_DieterVoice',
+ },
+ },
+ ['de-de_erikav3voice']: {
+ voice: {
+ name: 'de-DE_ErikaV3Voice',
+ },
+ },
+ ['en-au_heidiexpressive']: {
+ voice: {
+ name: 'en-AU_HeidiExpressive',
+ },
+ },
+ ['en-au_jackexpressive']: {
+ voice: {
+ name: 'en-AU_JackExpressive',
+ },
+ },
+ ['en-ca_hannahnatural']: {
+ voice: {
+ name: 'en-CA_HannahNatural',
+ },
+ },
+ ['en-gb_charlottev3voice']: {
+ voice: {
+ name: 'en-GB_CharlotteV3Voice',
+ },
+ },
+ ['en-gb_chloenatural']: {
+ voice: {
+ name: 'en-GB_ChloeNatural',
+ },
+ },
+ ['en-gb_georgeexpressive']: {
+ voice: {
+ name: 'en-GB_GeorgeExpressive',
+ },
+ },
+ ['en-gb_georgenatural']: {
+ voice: {
+ name: 'en-GB_GeorgeNatural',
+ },
+ },
+ ['en-gb_katev3voice']: {
+ voice: {
+ name: 'en-GB_KateV3Voice',
+ },
+ },
+ ['en-gb_katevoice']: {
+ voice: {
+ name: 'en-GB_KateVoice',
+ },
+ },
+ ['en-us_allisonexpressive']: {
+ voice: {
+ name: 'en-US_AllisonExpressive',
+ },
+ },
+ ['en-us_allisonv2voice']: {
+ voice: {
+ name: 'en-US_AllisonV2Voice',
+ },
+ },
+ ['en-us_allisonv3voice']: {
+ voice: {
+ name: 'en-US_AllisonV3Voice',
+ },
+ },
+ ['en-us_allisonvoice']: {
+ voice: {
+ name: 'en-US_AllisonVoice',
+ },
+ },
+ ['en-us_ellienatural']: {
+ voice: {
+ name: 'en-US_EllieNatural',
+ },
+ },
+ ['en-us_emilyv3voice']: {
+ voice: {
+ name: 'en-US_EmilyV3Voice',
+ },
+ },
+ ['en-us_emmaexpressive']: {
+ voice: {
+ name: 'en-US_EmmaExpressive',
+ },
+ },
+ ['en-us_emmanatural']: {
+ voice: {
+ name: 'en-US_EmmaNatural',
+ },
+ },
+ ['en-us_ethannatural']: {
+ voice: {
+ name: 'en-US_EthanNatural',
+ },
+ },
+ ['en-us_henryv3voice']: {
+ voice: {
+ name: 'en-US_HenryV3Voice',
+ },
+ },
+ ['en-us_jacksonnatural']: {
+ voice: {
+ name: 'en-US_JacksonNatural',
+ },
+ },
+ ['en-us_kevinv3voice']: {
+ voice: {
+ name: 'en-US_KevinV3Voice',
+ },
+ },
+ ['en-us_lisaexpressive']: {
+ voice: {
+ name: 'en-US_LisaExpressive',
+ },
+ },
+ ['en-us_lisav2voice']: {
+ voice: {
+ name: 'en-US_LisaV2Voice',
+ },
+ },
+ ['en-us_lisav3voice']: {
+ voice: {
+ name: 'en-US_LisaV3Voice',
+ },
+ },
+ ['en-us_lisavoice']: {
+ voice: {
+ name: 'en-US_LisaVoice',
+ },
+ },
+ ['en-us_michaelexpressive']: {
+ voice: {
+ name: 'en-US_MichaelExpressive',
+ },
+ },
+ ['en-us_michaelv2voice']: {
+ voice: {
+ name: 'en-US_MichaelV2Voice',
+ },
+ },
+ ['en-us_michaelv3voice']: {
+ voice: {
+ name: 'en-US_MichaelV3Voice',
+ },
+ },
+ ['en-us_michaelvoice']: {
+ voice: {
+ name: 'en-US_MichaelVoice',
+ },
+ },
+ ['en-us_oliviav3voice']: {
+ voice: {
+ name: 'en-US_OliviaV3Voice',
+ },
+ },
+ ['en-us_victorianatural']: {
+ voice: {
+ name: 'en-US_VictoriaNatural',
+ },
+ },
+ ['es-es_enriquev3voice']: {
+ voice: {
+ name: 'es-ES_EnriqueV3Voice',
+ },
+ },
+ ['es-es_enriquevoice']: {
+ voice: {
+ name: 'es-ES_EnriqueVoice',
+ },
+ },
+ ['es-es_laurav3voice']: {
+ voice: {
+ name: 'es-ES_LauraV3Voice',
+ },
+ },
+ ['es-es_lauravoice']: {
+ voice: {
+ name: 'es-ES_LauraVoice',
+ },
+ },
+ ['es-la_danielaexpressive']: {
+ voice: {
+ name: 'es-LA_DanielaExpressive',
+ },
+ },
+ ['es-la_sofiav3voice']: {
+ voice: {
+ name: 'es-LA_SofiaV3Voice',
+ },
+ },
+ ['es-la_sofiavoice']: {
+ voice: {
+ name: 'es-LA_SofiaVoice',
+ },
+ },
+ ['es-us_sofiav3voice']: {
+ voice: {
+ name: 'es-US_SofiaV3Voice',
+ },
+ },
+ ['es-us_sofiavoice']: {
+ voice: {
+ name: 'es-US_SofiaVoice',
+ },
+ },
+ ['fr-ca_louisev3voice']: {
+ voice: {
+ name: 'fr-CA_LouiseV3Voice',
+ },
+ },
+ ['fr-fr_nicolasv3voice']: {
+ voice: {
+ name: 'fr-FR_NicolasV3Voice',
+ },
+ },
+ ['fr-fr_reneev3voice']: {
+ voice: {
+ name: 'fr-FR_ReneeV3Voice',
+ },
+ },
+ ['fr-fr_reneevoice']: {
+ voice: {
+ name: 'fr-FR_ReneeVoice',
+ },
+ },
+ ['it-it_francescav2voice']: {
+ voice: {
+ name: 'it-IT_FrancescaV2Voice',
+ },
+ },
+ ['it-it_francescav3voice']: {
+ voice: {
+ name: 'it-IT_FrancescaV3Voice',
+ },
+ },
+ ['it-it_francescavoice']: {
+ voice: {
+ name: 'it-IT_FrancescaVoice',
+ },
+ },
+ ['ja-jp_emiv3voice']: {
+ voice: {
+ name: 'ja-JP_EmiV3Voice',
+ },
+ },
+ ['ja-jp_emivoice']: {
+ voice: {
+ name: 'ja-JP_EmiVoice',
+ },
+ },
+ ['ko-kr_jinv3voice']: {
+ voice: {
+ name: 'ko-KR_JinV3Voice',
+ },
+ },
+ ['nl-nl_merelv3voice']: {
+ voice: {
+ name: 'nl-NL_MerelV3Voice',
+ },
+ },
+ ['pt-br_isabelav3voice']: {
+ voice: {
+ name: 'pt-BR_IsabelaV3Voice',
+ },
+ },
+ ['pt-br_isabelavoice']: {
+ voice: {
+ name: 'pt-BR_IsabelaVoice',
+ },
+ },
+ ['pt-br_lucasexpressive']: {
+ voice: {
+ name: 'pt-BR_LucasExpressive',
+ },
+ },
+};
diff --git a/src/formatters/data/microsoftAzureVoices.ts b/src/formatters/data/microsoftAzureVoices.ts
new file mode 100644
index 0000000..935fa79
--- /dev/null
+++ b/src/formatters/data/microsoftAzureVoices.ts
@@ -0,0 +1,2755 @@
+// THIS FILE IS AUTO-GENERATED by scripts/update-voice-data.js.
+// Do not edit this file manually.
+
+export const MICROSOFT_AZURE_TTS_VOICES: Record = {
+ ['af-za-adrineural']: {
+ voice: {
+ name: 'af-ZA-AdriNeural',
+ },
+ },
+ ['af-za-willemneural']: {
+ voice: {
+ name: 'af-ZA-WillemNeural',
+ },
+ },
+ ['am-et-amehaneural']: {
+ voice: {
+ name: 'am-ET-AmehaNeural',
+ },
+ },
+ ['am-et-mekdesneural']: {
+ voice: {
+ name: 'am-ET-MekdesNeural',
+ },
+ },
+ ['ar-ae-fatimaneural']: {
+ voice: {
+ name: 'ar-AE-FatimaNeural',
+ },
+ },
+ ['ar-ae-hamdanneural']: {
+ voice: {
+ name: 'ar-AE-HamdanNeural',
+ },
+ },
+ ['ar-bh-alineural']: {
+ voice: {
+ name: 'ar-BH-AliNeural',
+ },
+ },
+ ['ar-bh-lailaneural']: {
+ voice: {
+ name: 'ar-BH-LailaNeural',
+ },
+ },
+ ['ar-dz-aminaneural']: {
+ voice: {
+ name: 'ar-DZ-AminaNeural',
+ },
+ },
+ ['ar-dz-ismaelneural']: {
+ voice: {
+ name: 'ar-DZ-IsmaelNeural',
+ },
+ },
+ ['ar-eg-salmaneural']: {
+ voice: {
+ name: 'ar-EG-SalmaNeural',
+ },
+ },
+ ['ar-eg-shakirneural']: {
+ voice: {
+ name: 'ar-EG-ShakirNeural',
+ },
+ },
+ ['ar-iq-basselneural']: {
+ voice: {
+ name: 'ar-IQ-BasselNeural',
+ },
+ },
+ ['ar-iq-rananeural']: {
+ voice: {
+ name: 'ar-IQ-RanaNeural',
+ },
+ },
+ ['ar-jo-sananeural']: {
+ voice: {
+ name: 'ar-JO-SanaNeural',
+ },
+ },
+ ['ar-jo-taimneural']: {
+ voice: {
+ name: 'ar-JO-TaimNeural',
+ },
+ },
+ ['ar-kw-fahedneural']: {
+ voice: {
+ name: 'ar-KW-FahedNeural',
+ },
+ },
+ ['ar-kw-nouraneural']: {
+ voice: {
+ name: 'ar-KW-NouraNeural',
+ },
+ },
+ ['ar-lb-laylaneural']: {
+ voice: {
+ name: 'ar-LB-LaylaNeural',
+ },
+ },
+ ['ar-lb-ramineural']: {
+ voice: {
+ name: 'ar-LB-RamiNeural',
+ },
+ },
+ ['ar-ly-imanneural']: {
+ voice: {
+ name: 'ar-LY-ImanNeural',
+ },
+ },
+ ['ar-ly-omarneural']: {
+ voice: {
+ name: 'ar-LY-OmarNeural',
+ },
+ },
+ ['ar-ma-jamalneural']: {
+ voice: {
+ name: 'ar-MA-JamalNeural',
+ },
+ },
+ ['ar-ma-mounaneural']: {
+ voice: {
+ name: 'ar-MA-MounaNeural',
+ },
+ },
+ ['ar-om-abdullahneural']: {
+ voice: {
+ name: 'ar-OM-AbdullahNeural',
+ },
+ },
+ ['ar-om-ayshaneural']: {
+ voice: {
+ name: 'ar-OM-AyshaNeural',
+ },
+ },
+ ['ar-qa-amalneural']: {
+ voice: {
+ name: 'ar-QA-AmalNeural',
+ },
+ },
+ ['ar-qa-moazneural']: {
+ voice: {
+ name: 'ar-QA-MoazNeural',
+ },
+ },
+ ['ar-sa-hamedneural']: {
+ voice: {
+ name: 'ar-SA-HamedNeural',
+ },
+ },
+ ['ar-sa-zariyahneural']: {
+ voice: {
+ name: 'ar-SA-ZariyahNeural',
+ },
+ },
+ ['ar-sy-amanyneural']: {
+ voice: {
+ name: 'ar-SY-AmanyNeural',
+ },
+ },
+ ['ar-sy-laithneural']: {
+ voice: {
+ name: 'ar-SY-LaithNeural',
+ },
+ },
+ ['ar-tn-hedineural']: {
+ voice: {
+ name: 'ar-TN-HediNeural',
+ },
+ },
+ ['ar-tn-reemneural']: {
+ voice: {
+ name: 'ar-TN-ReemNeural',
+ },
+ },
+ ['ar-ye-maryamneural']: {
+ voice: {
+ name: 'ar-YE-MaryamNeural',
+ },
+ },
+ ['ar-ye-salehneural']: {
+ voice: {
+ name: 'ar-YE-SalehNeural',
+ },
+ },
+ ['as-in-priyomneural']: {
+ voice: {
+ name: 'as-IN-PriyomNeural',
+ },
+ },
+ ['as-in-yashicaneural']: {
+ voice: {
+ name: 'as-IN-YashicaNeural',
+ },
+ },
+ ['az-az-babekneural']: {
+ voice: {
+ name: 'az-AZ-BabekNeural',
+ },
+ },
+ ['az-az-banuneural']: {
+ voice: {
+ name: 'az-AZ-BanuNeural',
+ },
+ },
+ ['bg-bg-borislavneural']: {
+ voice: {
+ name: 'bg-BG-BorislavNeural',
+ },
+ },
+ ['bg-bg-kalinaneural']: {
+ voice: {
+ name: 'bg-BG-KalinaNeural',
+ },
+ },
+ ['bn-bd-nabanitaneural']: {
+ voice: {
+ name: 'bn-BD-NabanitaNeural',
+ },
+ },
+ ['bn-bd-pradeepneural']: {
+ voice: {
+ name: 'bn-BD-PradeepNeural',
+ },
+ },
+ ['bn-in-bashkarneural']: {
+ voice: {
+ name: 'bn-IN-BashkarNeural',
+ },
+ },
+ ['bn-in-tanishaaneural']: {
+ voice: {
+ name: 'bn-IN-TanishaaNeural',
+ },
+ },
+ ['bs-ba-goranneural']: {
+ voice: {
+ name: 'bs-BA-GoranNeural',
+ },
+ },
+ ['bs-ba-vesnaneural']: {
+ voice: {
+ name: 'bs-BA-VesnaNeural',
+ },
+ },
+ ['ca-es-albaneural']: {
+ voice: {
+ name: 'ca-ES-AlbaNeural',
+ },
+ },
+ ['ca-es-enricneural']: {
+ voice: {
+ name: 'ca-ES-EnricNeural',
+ },
+ },
+ ['ca-es-joananeural']: {
+ voice: {
+ name: 'ca-ES-JoanaNeural',
+ },
+ },
+ ['cs-cz-antoninneural']: {
+ voice: {
+ name: 'cs-CZ-AntoninNeural',
+ },
+ },
+ ['cs-cz-vlastaneural']: {
+ voice: {
+ name: 'cs-CZ-VlastaNeural',
+ },
+ },
+ ['cy-gb-aledneural']: {
+ voice: {
+ name: 'cy-GB-AledNeural',
+ },
+ },
+ ['cy-gb-nianeural']: {
+ voice: {
+ name: 'cy-GB-NiaNeural',
+ },
+ },
+ ['da-dk-christelneural']: {
+ voice: {
+ name: 'da-DK-ChristelNeural',
+ },
+ },
+ ['da-dk-jeppeneural']: {
+ voice: {
+ name: 'da-DK-JeppeNeural',
+ },
+ },
+ ['de-at-ingridneural']: {
+ voice: {
+ name: 'de-AT-IngridNeural',
+ },
+ },
+ ['de-at-jonasneural']: {
+ voice: {
+ name: 'de-AT-JonasNeural',
+ },
+ },
+ ['de-ch-janneural']: {
+ voice: {
+ name: 'de-CH-JanNeural',
+ },
+ },
+ ['de-ch-lenineural']: {
+ voice: {
+ name: 'de-CH-LeniNeural',
+ },
+ },
+ ['de-de-amalaneural']: {
+ voice: {
+ name: 'de-DE-AmalaNeural',
+ },
+ },
+ ['de-de-berndneural']: {
+ voice: {
+ name: 'de-DE-BerndNeural',
+ },
+ },
+ ['de-de-christophneural']: {
+ voice: {
+ name: 'de-DE-ChristophNeural',
+ },
+ },
+ ['de-de-conradneural']: {
+ voice: {
+ name: 'de-DE-ConradNeural',
+ },
+ },
+ ['de-de-elkeneural']: {
+ voice: {
+ name: 'de-DE-ElkeNeural',
+ },
+ },
+ ['de-de-florianmultilingualneural']: {
+ voice: {
+ name: 'de-DE-FlorianMultilingualNeural',
+ },
+ },
+ ['de-de-giselaneural']: {
+ voice: {
+ name: 'de-DE-GiselaNeural',
+ },
+ },
+ ['de-de-kasperneural']: {
+ voice: {
+ name: 'de-DE-KasperNeural',
+ },
+ },
+ ['de-de-katjaneural']: {
+ voice: {
+ name: 'de-DE-KatjaNeural',
+ },
+ },
+ ['de-de-killianneural']: {
+ voice: {
+ name: 'de-DE-KillianNeural',
+ },
+ },
+ ['de-de-klarissaneural']: {
+ voice: {
+ name: 'de-DE-KlarissaNeural',
+ },
+ },
+ ['de-de-klausneural']: {
+ voice: {
+ name: 'de-DE-KlausNeural',
+ },
+ },
+ ['de-de-louisaneural']: {
+ voice: {
+ name: 'de-DE-LouisaNeural',
+ },
+ },
+ ['de-de-majaneural']: {
+ voice: {
+ name: 'de-DE-MajaNeural',
+ },
+ },
+ ['de-de-ralfneural']: {
+ voice: {
+ name: 'de-DE-RalfNeural',
+ },
+ },
+ ['de-de-seraphinamultilingualneural']: {
+ voice: {
+ name: 'de-DE-SeraphinaMultilingualNeural',
+ },
+ },
+ ['de-de-tanjaneural']: {
+ voice: {
+ name: 'de-DE-TanjaNeural',
+ },
+ },
+ ['el-gr-athinaneural']: {
+ voice: {
+ name: 'el-GR-AthinaNeural',
+ },
+ },
+ ['el-gr-nestorasneural']: {
+ voice: {
+ name: 'el-GR-NestorasNeural',
+ },
+ },
+ ['en-au-annetteneural']: {
+ voice: {
+ name: 'en-AU-AnnetteNeural',
+ },
+ },
+ ['en-au-carlyneural']: {
+ voice: {
+ name: 'en-AU-CarlyNeural',
+ },
+ },
+ ['en-au-darrenneural']: {
+ voice: {
+ name: 'en-AU-DarrenNeural',
+ },
+ },
+ ['en-au-duncanneural']: {
+ voice: {
+ name: 'en-AU-DuncanNeural',
+ },
+ },
+ ['en-au-elsieneural']: {
+ voice: {
+ name: 'en-AU-ElsieNeural',
+ },
+ },
+ ['en-au-freyaneural']: {
+ voice: {
+ name: 'en-AU-FreyaNeural',
+ },
+ },
+ ['en-au-joanneneural']: {
+ voice: {
+ name: 'en-AU-JoanneNeural',
+ },
+ },
+ ['en-au-kenneural']: {
+ voice: {
+ name: 'en-AU-KenNeural',
+ },
+ },
+ ['en-au-kimneural']: {
+ voice: {
+ name: 'en-AU-KimNeural',
+ },
+ },
+ ['en-au-natashaneural']: {
+ voice: {
+ name: 'en-AU-NatashaNeural',
+ },
+ },
+ ['en-au-neilneural']: {
+ voice: {
+ name: 'en-AU-NeilNeural',
+ },
+ },
+ ['en-au-timneural']: {
+ voice: {
+ name: 'en-AU-TimNeural',
+ },
+ },
+ ['en-au-tinaneural']: {
+ voice: {
+ name: 'en-AU-TinaNeural',
+ },
+ },
+ ['en-au-williammultilingualneural']: {
+ voice: {
+ name: 'en-AU-WilliamMultilingualNeural',
+ },
+ },
+ ['en-au-williamneural']: {
+ voice: {
+ name: 'en-AU-WilliamNeural',
+ },
+ },
+ ['en-ca-claraneural']: {
+ voice: {
+ name: 'en-CA-ClaraNeural',
+ },
+ },
+ ['en-ca-liamneural']: {
+ voice: {
+ name: 'en-CA-LiamNeural',
+ },
+ },
+ ['en-gb-abbineural']: {
+ voice: {
+ name: 'en-GB-AbbiNeural',
+ },
+ },
+ ['en-gb-adamultilingualneural']: {
+ voice: {
+ name: 'en-GB-AdaMultilingualNeural',
+ },
+ },
+ ['en-gb-alfieneural']: {
+ voice: {
+ name: 'en-GB-AlfieNeural',
+ },
+ },
+ ['en-gb-bellaneural']: {
+ voice: {
+ name: 'en-GB-BellaNeural',
+ },
+ },
+ ['en-gb-elliotneural']: {
+ voice: {
+ name: 'en-GB-ElliotNeural',
+ },
+ },
+ ['en-gb-ethanneural']: {
+ voice: {
+ name: 'en-GB-EthanNeural',
+ },
+ },
+ ['en-gb-hollieneural']: {
+ voice: {
+ name: 'en-GB-HollieNeural',
+ },
+ },
+ ['en-gb-libbyneural']: {
+ voice: {
+ name: 'en-GB-LibbyNeural',
+ },
+ },
+ ['en-gb-maisieneural']: {
+ voice: {
+ name: 'en-GB-MaisieNeural',
+ },
+ },
+ ['en-gb-mianeural']: {
+ voice: {
+ name: 'en-GB-MiaNeural',
+ },
+ },
+ ['en-gb-noahneural']: {
+ voice: {
+ name: 'en-GB-NoahNeural',
+ },
+ },
+ ['en-gb-oliverneural']: {
+ voice: {
+ name: 'en-GB-OliverNeural',
+ },
+ },
+ ['en-gb-olivianeural']: {
+ voice: {
+ name: 'en-GB-OliviaNeural',
+ },
+ },
+ ['en-gb-olliemultilingualneural']: {
+ voice: {
+ name: 'en-GB-OllieMultilingualNeural',
+ },
+ },
+ ['en-gb-ryanneural']: {
+ voice: {
+ name: 'en-GB-RyanNeural',
+ },
+ },
+ ['en-gb-sonianeural']: {
+ voice: {
+ name: 'en-GB-SoniaNeural',
+ },
+ },
+ ['en-gb-thomasneural']: {
+ voice: {
+ name: 'en-GB-ThomasNeural',
+ },
+ },
+ ['en-hk-samneural']: {
+ voice: {
+ name: 'en-HK-SamNeural',
+ },
+ },
+ ['en-hk-yanneural']: {
+ voice: {
+ name: 'en-HK-YanNeural',
+ },
+ },
+ ['en-ie-connorneural']: {
+ voice: {
+ name: 'en-IE-ConnorNeural',
+ },
+ },
+ ['en-ie-emilyneural']: {
+ voice: {
+ name: 'en-IE-EmilyNeural',
+ },
+ },
+ ['en-in-aaravneural']: {
+ voice: {
+ name: 'en-IN-AaravNeural',
+ },
+ },
+ ['en-in-aartiindicneural']: {
+ voice: {
+ name: 'en-IN-AartiIndicNeural',
+ },
+ },
+ ['en-in-aartineural']: {
+ voice: {
+ name: 'en-IN-AartiNeural',
+ },
+ },
+ ['en-in-aashineural']: {
+ voice: {
+ name: 'en-IN-AashiNeural',
+ },
+ },
+ ['en-in-ananyaneural']: {
+ voice: {
+ name: 'en-IN-AnanyaNeural',
+ },
+ },
+ ['en-in-arjunindicneural']: {
+ voice: {
+ name: 'en-IN-ArjunIndicNeural',
+ },
+ },
+ ['en-in-arjunneural']: {
+ voice: {
+ name: 'en-IN-ArjunNeural',
+ },
+ },
+ ['en-in-kavyaneural']: {
+ voice: {
+ name: 'en-IN-KavyaNeural',
+ },
+ },
+ ['en-in-kunalneural']: {
+ voice: {
+ name: 'en-IN-KunalNeural',
+ },
+ },
+ ['en-in-neerjaindicneural']: {
+ voice: {
+ name: 'en-IN-NeerjaIndicNeural',
+ },
+ },
+ ['en-in-neerjaneural']: {
+ voice: {
+ name: 'en-IN-NeerjaNeural',
+ },
+ },
+ ['en-in-prabhatindicneural']: {
+ voice: {
+ name: 'en-IN-PrabhatIndicNeural',
+ },
+ },
+ ['en-in-prabhatneural']: {
+ voice: {
+ name: 'en-IN-PrabhatNeural',
+ },
+ },
+ ['en-in-rehaanneural']: {
+ voice: {
+ name: 'en-IN-RehaanNeural',
+ },
+ },
+ ['en-ke-asilianeural']: {
+ voice: {
+ name: 'en-KE-AsiliaNeural',
+ },
+ },
+ ['en-ke-chilembaneural']: {
+ voice: {
+ name: 'en-KE-ChilembaNeural',
+ },
+ },
+ ['en-ng-abeoneural']: {
+ voice: {
+ name: 'en-NG-AbeoNeural',
+ },
+ },
+ ['en-ng-ezinneneural']: {
+ voice: {
+ name: 'en-NG-EzinneNeural',
+ },
+ },
+ ['en-nz-mitchellneural']: {
+ voice: {
+ name: 'en-NZ-MitchellNeural',
+ },
+ },
+ ['en-nz-mollyneural']: {
+ voice: {
+ name: 'en-NZ-MollyNeural',
+ },
+ },
+ ['en-ph-jamesneural']: {
+ voice: {
+ name: 'en-PH-JamesNeural',
+ },
+ },
+ ['en-ph-rosaneural']: {
+ voice: {
+ name: 'en-PH-RosaNeural',
+ },
+ },
+ ['en-sg-lunaneural']: {
+ voice: {
+ name: 'en-SG-LunaNeural',
+ },
+ },
+ ['en-sg-wayneneural']: {
+ voice: {
+ name: 'en-SG-WayneNeural',
+ },
+ },
+ ['en-tz-elimuneural']: {
+ voice: {
+ name: 'en-TZ-ElimuNeural',
+ },
+ },
+ ['en-tz-imanineural']: {
+ voice: {
+ name: 'en-TZ-ImaniNeural',
+ },
+ },
+ ['en-us-adammultilingualneural']: {
+ voice: {
+ name: 'en-US-AdamMultilingualNeural',
+ },
+ },
+ ['en-us-alloyturbomultilingualneural']: {
+ voice: {
+ name: 'en-US-AlloyTurboMultilingualNeural',
+ },
+ },
+ ['en-us-amandamultilingualneural']: {
+ voice: {
+ name: 'en-US-AmandaMultilingualNeural',
+ },
+ },
+ ['en-us-amberneural']: {
+ voice: {
+ name: 'en-US-AmberNeural',
+ },
+ },
+ ['en-us-ananeural']: {
+ voice: {
+ name: 'en-US-AnaNeural',
+ },
+ },
+ ['en-us-andrewmultilingualneural']: {
+ voice: {
+ name: 'en-US-AndrewMultilingualNeural',
+ },
+ },
+ ['en-us-andrewneural']: {
+ voice: {
+ name: 'en-US-AndrewNeural',
+ },
+ },
+ ['en-us-arianeural']: {
+ voice: {
+ name: 'en-US-AriaNeural',
+ },
+ },
+ ['en-us-ashleyneural']: {
+ voice: {
+ name: 'en-US-AshleyNeural',
+ },
+ },
+ ['en-us-avamultilingualneural']: {
+ voice: {
+ name: 'en-US-AvaMultilingualNeural',
+ },
+ },
+ ['en-us-avaneural']: {
+ voice: {
+ name: 'en-US-AvaNeural',
+ },
+ },
+ ['en-us-brandonmultilingualneural']: {
+ voice: {
+ name: 'en-US-BrandonMultilingualNeural',
+ },
+ },
+ ['en-us-brandonneural']: {
+ voice: {
+ name: 'en-US-BrandonNeural',
+ },
+ },
+ ['en-us-brianmultilingualneural']: {
+ voice: {
+ name: 'en-US-BrianMultilingualNeural',
+ },
+ },
+ ['en-us-brianneural']: {
+ voice: {
+ name: 'en-US-BrianNeural',
+ },
+ },
+ ['en-us-christophermultilingualneural']: {
+ voice: {
+ name: 'en-US-ChristopherMultilingualNeural',
+ },
+ },
+ ['en-us-christopherneural']: {
+ voice: {
+ name: 'en-US-ChristopherNeural',
+ },
+ },
+ ['en-us-coramultilingualneural']: {
+ voice: {
+ name: 'en-US-CoraMultilingualNeural',
+ },
+ },
+ ['en-us-coraneural']: {
+ voice: {
+ name: 'en-US-CoraNeural',
+ },
+ },
+ ['en-us-davismultilingualneural']: {
+ voice: {
+ name: 'en-US-DavisMultilingualNeural',
+ },
+ },
+ ['en-us-davisneural']: {
+ voice: {
+ name: 'en-US-DavisNeural',
+ },
+ },
+ ['en-us-derekmultilingualneural']: {
+ voice: {
+ name: 'en-US-DerekMultilingualNeural',
+ },
+ },
+ ['en-us-dustinmultilingualneural']: {
+ voice: {
+ name: 'en-US-DustinMultilingualNeural',
+ },
+ },
+ ['en-us-echoturbomultilingualneural']: {
+ voice: {
+ name: 'en-US-EchoTurboMultilingualNeural',
+ },
+ },
+ ['en-us-elizabethneural']: {
+ voice: {
+ name: 'en-US-ElizabethNeural',
+ },
+ },
+ ['en-us-emmamultilingualneural']: {
+ voice: {
+ name: 'en-US-EmmaMultilingualNeural',
+ },
+ },
+ ['en-us-emmaneural']: {
+ voice: {
+ name: 'en-US-EmmaNeural',
+ },
+ },
+ ['en-us-ericneural']: {
+ voice: {
+ name: 'en-US-EricNeural',
+ },
+ },
+ ['en-us-fableturbomultilingualneural']: {
+ voice: {
+ name: 'en-US-FableTurboMultilingualNeural',
+ },
+ },
+ ['en-us-guyneural']: {
+ voice: {
+ name: 'en-US-GuyNeural',
+ },
+ },
+ ['en-us-jacobneural']: {
+ voice: {
+ name: 'en-US-JacobNeural',
+ },
+ },
+ ['en-us-janeneural']: {
+ voice: {
+ name: 'en-US-JaneNeural',
+ },
+ },
+ ['en-us-jasonneural']: {
+ voice: {
+ name: 'en-US-JasonNeural',
+ },
+ },
+ ['en-us-jennymultilingualneural']: {
+ voice: {
+ name: 'en-US-JennyMultilingualNeural',
+ },
+ },
+ ['en-us-jennyneural']: {
+ voice: {
+ name: 'en-US-JennyNeural',
+ },
+ },
+ ['en-us-kaineural']: {
+ voice: {
+ name: 'en-US-KaiNeural',
+ },
+ },
+ ['en-us-lewismultilingualneural']: {
+ voice: {
+ name: 'en-US-LewisMultilingualNeural',
+ },
+ },
+ ['en-us-lolamultilingualneural']: {
+ voice: {
+ name: 'en-US-LolaMultilingualNeural',
+ },
+ },
+ ['en-us-lunaneural']: {
+ voice: {
+ name: 'en-US-LunaNeural',
+ },
+ },
+ ['en-us-michelleneural']: {
+ voice: {
+ name: 'en-US-MichelleNeural',
+ },
+ },
+ ['en-us-monicaneural']: {
+ voice: {
+ name: 'en-US-MonicaNeural',
+ },
+ },
+ ['en-us-nancymultilingualneural']: {
+ voice: {
+ name: 'en-US-NancyMultilingualNeural',
+ },
+ },
+ ['en-us-nancyneural']: {
+ voice: {
+ name: 'en-US-NancyNeural',
+ },
+ },
+ ['en-us-novaturbomultilingualneural']: {
+ voice: {
+ name: 'en-US-NovaTurboMultilingualNeural',
+ },
+ },
+ ['en-us-onyxturbomultilingualneural']: {
+ voice: {
+ name: 'en-US-OnyxTurboMultilingualNeural',
+ },
+ },
+ ['en-us-phoebemultilingualneural']: {
+ voice: {
+ name: 'en-US-PhoebeMultilingualNeural',
+ },
+ },
+ ['en-us-rogerneural']: {
+ voice: {
+ name: 'en-US-RogerNeural',
+ },
+ },
+ ['en-us-ryanmultilingualneural']: {
+ voice: {
+ name: 'en-US-RyanMultilingualNeural',
+ },
+ },
+ ['en-us-samuelmultilingualneural']: {
+ voice: {
+ name: 'en-US-SamuelMultilingualNeural',
+ },
+ },
+ ['en-us-saraneural']: {
+ voice: {
+ name: 'en-US-SaraNeural',
+ },
+ },
+ ['en-us-serenamultilingualneural']: {
+ voice: {
+ name: 'en-US-SerenaMultilingualNeural',
+ },
+ },
+ ['en-us-shimmerturbomultilingualneural']: {
+ voice: {
+ name: 'en-US-ShimmerTurboMultilingualNeural',
+ },
+ },
+ ['en-us-steffanmultilingualneural']: {
+ voice: {
+ name: 'en-US-SteffanMultilingualNeural',
+ },
+ },
+ ['en-us-steffanneural']: {
+ voice: {
+ name: 'en-US-SteffanNeural',
+ },
+ },
+ ['en-us-tonyneural']: {
+ voice: {
+ name: 'en-US-TonyNeural',
+ },
+ },
+ ['en-za-leahneural']: {
+ voice: {
+ name: 'en-ZA-LeahNeural',
+ },
+ },
+ ['en-za-lukeneural']: {
+ voice: {
+ name: 'en-ZA-LukeNeural',
+ },
+ },
+ ['es-ar-elenaneural']: {
+ voice: {
+ name: 'es-AR-ElenaNeural',
+ },
+ },
+ ['es-ar-tomasneural']: {
+ voice: {
+ name: 'es-AR-TomasNeural',
+ },
+ },
+ ['es-bo-marceloneural']: {
+ voice: {
+ name: 'es-BO-MarceloNeural',
+ },
+ },
+ ['es-bo-sofianeural']: {
+ voice: {
+ name: 'es-BO-SofiaNeural',
+ },
+ },
+ ['es-cl-catalinaneural']: {
+ voice: {
+ name: 'es-CL-CatalinaNeural',
+ },
+ },
+ ['es-cl-lorenzoneural']: {
+ voice: {
+ name: 'es-CL-LorenzoNeural',
+ },
+ },
+ ['es-co-gonzaloneural']: {
+ voice: {
+ name: 'es-CO-GonzaloNeural',
+ },
+ },
+ ['es-co-salomeneural']: {
+ voice: {
+ name: 'es-CO-SalomeNeural',
+ },
+ },
+ ['es-cr-juanneural']: {
+ voice: {
+ name: 'es-CR-JuanNeural',
+ },
+ },
+ ['es-cr-marianeural']: {
+ voice: {
+ name: 'es-CR-MariaNeural',
+ },
+ },
+ ['es-cu-belkysneural']: {
+ voice: {
+ name: 'es-CU-BelkysNeural',
+ },
+ },
+ ['es-cu-manuelneural']: {
+ voice: {
+ name: 'es-CU-ManuelNeural',
+ },
+ },
+ ['es-do-emilioneural']: {
+ voice: {
+ name: 'es-DO-EmilioNeural',
+ },
+ },
+ ['es-do-ramonaneural']: {
+ voice: {
+ name: 'es-DO-RamonaNeural',
+ },
+ },
+ ['es-ec-andreaneural']: {
+ voice: {
+ name: 'es-EC-AndreaNeural',
+ },
+ },
+ ['es-ec-luisneural']: {
+ voice: {
+ name: 'es-EC-LuisNeural',
+ },
+ },
+ ['es-es-abrilneural']: {
+ voice: {
+ name: 'es-ES-AbrilNeural',
+ },
+ },
+ ['es-es-alvaroneural']: {
+ voice: {
+ name: 'es-ES-AlvaroNeural',
+ },
+ },
+ ['es-es-arabellamultilingualneural']: {
+ voice: {
+ name: 'es-ES-ArabellaMultilingualNeural',
+ },
+ },
+ ['es-es-arnauneural']: {
+ voice: {
+ name: 'es-ES-ArnauNeural',
+ },
+ },
+ ['es-es-darioneural']: {
+ voice: {
+ name: 'es-ES-DarioNeural',
+ },
+ },
+ ['es-es-eliasneural']: {
+ voice: {
+ name: 'es-ES-EliasNeural',
+ },
+ },
+ ['es-es-elviraneural']: {
+ voice: {
+ name: 'es-ES-ElviraNeural',
+ },
+ },
+ ['es-es-estrellaneural']: {
+ voice: {
+ name: 'es-ES-EstrellaNeural',
+ },
+ },
+ ['es-es-ireneneural']: {
+ voice: {
+ name: 'es-ES-IreneNeural',
+ },
+ },
+ ['es-es-isidoramultilingualneural']: {
+ voice: {
+ name: 'es-ES-IsidoraMultilingualNeural',
+ },
+ },
+ ['es-es-laianeural']: {
+ voice: {
+ name: 'es-ES-LaiaNeural',
+ },
+ },
+ ['es-es-lianeural']: {
+ voice: {
+ name: 'es-ES-LiaNeural',
+ },
+ },
+ ['es-es-nilneural']: {
+ voice: {
+ name: 'es-ES-NilNeural',
+ },
+ },
+ ['es-es-saulneural']: {
+ voice: {
+ name: 'es-ES-SaulNeural',
+ },
+ },
+ ['es-es-teoneural']: {
+ voice: {
+ name: 'es-ES-TeoNeural',
+ },
+ },
+ ['es-es-triananeural']: {
+ voice: {
+ name: 'es-ES-TrianaNeural',
+ },
+ },
+ ['es-es-tristanmultilingualneural']: {
+ voice: {
+ name: 'es-ES-TristanMultilingualNeural',
+ },
+ },
+ ['es-es-veraneural']: {
+ voice: {
+ name: 'es-ES-VeraNeural',
+ },
+ },
+ ['es-es-ximenamultilingualneural']: {
+ voice: {
+ name: 'es-ES-XimenaMultilingualNeural',
+ },
+ },
+ ['es-es-ximenaneural']: {
+ voice: {
+ name: 'es-ES-XimenaNeural',
+ },
+ },
+ ['es-gq-javierneural']: {
+ voice: {
+ name: 'es-GQ-JavierNeural',
+ },
+ },
+ ['es-gq-teresaneural']: {
+ voice: {
+ name: 'es-GQ-TeresaNeural',
+ },
+ },
+ ['es-gt-andresneural']: {
+ voice: {
+ name: 'es-GT-AndresNeural',
+ },
+ },
+ ['es-gt-martaneural']: {
+ voice: {
+ name: 'es-GT-MartaNeural',
+ },
+ },
+ ['es-hn-carlosneural']: {
+ voice: {
+ name: 'es-HN-CarlosNeural',
+ },
+ },
+ ['es-hn-karlaneural']: {
+ voice: {
+ name: 'es-HN-KarlaNeural',
+ },
+ },
+ ['es-mx-beatrizneural']: {
+ voice: {
+ name: 'es-MX-BeatrizNeural',
+ },
+ },
+ ['es-mx-candelaneural']: {
+ voice: {
+ name: 'es-MX-CandelaNeural',
+ },
+ },
+ ['es-mx-carlotaneural']: {
+ voice: {
+ name: 'es-MX-CarlotaNeural',
+ },
+ },
+ ['es-mx-cecilioneural']: {
+ voice: {
+ name: 'es-MX-CecilioNeural',
+ },
+ },
+ ['es-mx-daliamultilingualneural']: {
+ voice: {
+ name: 'es-MX-DaliaMultilingualNeural',
+ },
+ },
+ ['es-mx-dalianeural']: {
+ voice: {
+ name: 'es-MX-DaliaNeural',
+ },
+ },
+ ['es-mx-gerardoneural']: {
+ voice: {
+ name: 'es-MX-GerardoNeural',
+ },
+ },
+ ['es-mx-jorgemultilingualneural']: {
+ voice: {
+ name: 'es-MX-JorgeMultilingualNeural',
+ },
+ },
+ ['es-mx-jorgeneural']: {
+ voice: {
+ name: 'es-MX-JorgeNeural',
+ },
+ },
+ ['es-mx-larissaneural']: {
+ voice: {
+ name: 'es-MX-LarissaNeural',
+ },
+ },
+ ['es-mx-libertoneural']: {
+ voice: {
+ name: 'es-MX-LibertoNeural',
+ },
+ },
+ ['es-mx-lucianoneural']: {
+ voice: {
+ name: 'es-MX-LucianoNeural',
+ },
+ },
+ ['es-mx-marinaneural']: {
+ voice: {
+ name: 'es-MX-MarinaNeural',
+ },
+ },
+ ['es-mx-nurianeural']: {
+ voice: {
+ name: 'es-MX-NuriaNeural',
+ },
+ },
+ ['es-mx-pelayoneural']: {
+ voice: {
+ name: 'es-MX-PelayoNeural',
+ },
+ },
+ ['es-mx-renataneural']: {
+ voice: {
+ name: 'es-MX-RenataNeural',
+ },
+ },
+ ['es-mx-yagoneural']: {
+ voice: {
+ name: 'es-MX-YagoNeural',
+ },
+ },
+ ['es-ni-federiconeural']: {
+ voice: {
+ name: 'es-NI-FedericoNeural',
+ },
+ },
+ ['es-ni-yolandaneural']: {
+ voice: {
+ name: 'es-NI-YolandaNeural',
+ },
+ },
+ ['es-pa-margaritaneural']: {
+ voice: {
+ name: 'es-PA-MargaritaNeural',
+ },
+ },
+ ['es-pa-robertoneural']: {
+ voice: {
+ name: 'es-PA-RobertoNeural',
+ },
+ },
+ ['es-pe-alexneural']: {
+ voice: {
+ name: 'es-PE-AlexNeural',
+ },
+ },
+ ['es-pe-camilaneural']: {
+ voice: {
+ name: 'es-PE-CamilaNeural',
+ },
+ },
+ ['es-pr-karinaneural']: {
+ voice: {
+ name: 'es-PR-KarinaNeural',
+ },
+ },
+ ['es-pr-victorneural']: {
+ voice: {
+ name: 'es-PR-VictorNeural',
+ },
+ },
+ ['es-py-marioneural']: {
+ voice: {
+ name: 'es-PY-MarioNeural',
+ },
+ },
+ ['es-py-tanianeural']: {
+ voice: {
+ name: 'es-PY-TaniaNeural',
+ },
+ },
+ ['es-sv-lorenaneural']: {
+ voice: {
+ name: 'es-SV-LorenaNeural',
+ },
+ },
+ ['es-sv-rodrigoneural']: {
+ voice: {
+ name: 'es-SV-RodrigoNeural',
+ },
+ },
+ ['es-us-alonsoneural']: {
+ voice: {
+ name: 'es-US-AlonsoNeural',
+ },
+ },
+ ['es-us-palomaneural']: {
+ voice: {
+ name: 'es-US-PalomaNeural',
+ },
+ },
+ ['es-uy-mateoneural']: {
+ voice: {
+ name: 'es-UY-MateoNeural',
+ },
+ },
+ ['es-uy-valentinaneural']: {
+ voice: {
+ name: 'es-UY-ValentinaNeural',
+ },
+ },
+ ['es-ve-paolaneural']: {
+ voice: {
+ name: 'es-VE-PaolaNeural',
+ },
+ },
+ ['es-ve-sebastianneural']: {
+ voice: {
+ name: 'es-VE-SebastianNeural',
+ },
+ },
+ ['et-ee-anuneural']: {
+ voice: {
+ name: 'et-EE-AnuNeural',
+ },
+ },
+ ['et-ee-kertneural']: {
+ voice: {
+ name: 'et-EE-KertNeural',
+ },
+ },
+ ['eu-es-ainhoaneural']: {
+ voice: {
+ name: 'eu-ES-AinhoaNeural',
+ },
+ },
+ ['eu-es-anderneural']: {
+ voice: {
+ name: 'eu-ES-AnderNeural',
+ },
+ },
+ ['fa-ir-dilaraneural']: {
+ voice: {
+ name: 'fa-IR-DilaraNeural',
+ },
+ },
+ ['fa-ir-faridneural']: {
+ voice: {
+ name: 'fa-IR-FaridNeural',
+ },
+ },
+ ['fi-fi-harrineural']: {
+ voice: {
+ name: 'fi-FI-HarriNeural',
+ },
+ },
+ ['fi-fi-nooraneural']: {
+ voice: {
+ name: 'fi-FI-NooraNeural',
+ },
+ },
+ ['fi-fi-selmaneural']: {
+ voice: {
+ name: 'fi-FI-SelmaNeural',
+ },
+ },
+ ['fil-ph-angeloneural']: {
+ voice: {
+ name: 'fil-PH-AngeloNeural',
+ },
+ },
+ ['fil-ph-blessicaneural']: {
+ voice: {
+ name: 'fil-PH-BlessicaNeural',
+ },
+ },
+ ['fr-be-charlineneural']: {
+ voice: {
+ name: 'fr-BE-CharlineNeural',
+ },
+ },
+ ['fr-be-gerardneural']: {
+ voice: {
+ name: 'fr-BE-GerardNeural',
+ },
+ },
+ ['fr-ca-antoineneural']: {
+ voice: {
+ name: 'fr-CA-AntoineNeural',
+ },
+ },
+ ['fr-ca-jeanneural']: {
+ voice: {
+ name: 'fr-CA-JeanNeural',
+ },
+ },
+ ['fr-ca-sylvieneural']: {
+ voice: {
+ name: 'fr-CA-SylvieNeural',
+ },
+ },
+ ['fr-ca-thierryneural']: {
+ voice: {
+ name: 'fr-CA-ThierryNeural',
+ },
+ },
+ ['fr-ch-arianeneural']: {
+ voice: {
+ name: 'fr-CH-ArianeNeural',
+ },
+ },
+ ['fr-ch-fabriceneural']: {
+ voice: {
+ name: 'fr-CH-FabriceNeural',
+ },
+ },
+ ['fr-fr-alainneural']: {
+ voice: {
+ name: 'fr-FR-AlainNeural',
+ },
+ },
+ ['fr-fr-brigitteneural']: {
+ voice: {
+ name: 'fr-FR-BrigitteNeural',
+ },
+ },
+ ['fr-fr-celesteneural']: {
+ voice: {
+ name: 'fr-FR-CelesteNeural',
+ },
+ },
+ ['fr-fr-claudeneural']: {
+ voice: {
+ name: 'fr-FR-ClaudeNeural',
+ },
+ },
+ ['fr-fr-coralieneural']: {
+ voice: {
+ name: 'fr-FR-CoralieNeural',
+ },
+ },
+ ['fr-fr-deniseneural']: {
+ voice: {
+ name: 'fr-FR-DeniseNeural',
+ },
+ },
+ ['fr-fr-eloiseneural']: {
+ voice: {
+ name: 'fr-FR-EloiseNeural',
+ },
+ },
+ ['fr-fr-henrineural']: {
+ voice: {
+ name: 'fr-FR-HenriNeural',
+ },
+ },
+ ['fr-fr-jacquelineneural']: {
+ voice: {
+ name: 'fr-FR-JacquelineNeural',
+ },
+ },
+ ['fr-fr-jeromeneural']: {
+ voice: {
+ name: 'fr-FR-JeromeNeural',
+ },
+ },
+ ['fr-fr-josephineneural']: {
+ voice: {
+ name: 'fr-FR-JosephineNeural',
+ },
+ },
+ ['fr-fr-lucienmultilingualneural']: {
+ voice: {
+ name: 'fr-FR-LucienMultilingualNeural',
+ },
+ },
+ ['fr-fr-mauriceneural']: {
+ voice: {
+ name: 'fr-FR-MauriceNeural',
+ },
+ },
+ ['fr-fr-remymultilingualneural']: {
+ voice: {
+ name: 'fr-FR-RemyMultilingualNeural',
+ },
+ },
+ ['fr-fr-viviennemultilingualneural']: {
+ voice: {
+ name: 'fr-FR-VivienneMultilingualNeural',
+ },
+ },
+ ['fr-fr-yvesneural']: {
+ voice: {
+ name: 'fr-FR-YvesNeural',
+ },
+ },
+ ['fr-fr-yvetteneural']: {
+ voice: {
+ name: 'fr-FR-YvetteNeural',
+ },
+ },
+ ['ga-ie-colmneural']: {
+ voice: {
+ name: 'ga-IE-ColmNeural',
+ },
+ },
+ ['ga-ie-orlaneural']: {
+ voice: {
+ name: 'ga-IE-OrlaNeural',
+ },
+ },
+ ['gl-es-roineural']: {
+ voice: {
+ name: 'gl-ES-RoiNeural',
+ },
+ },
+ ['gl-es-sabelaneural']: {
+ voice: {
+ name: 'gl-ES-SabelaNeural',
+ },
+ },
+ ['gu-in-dhwanineural']: {
+ voice: {
+ name: 'gu-IN-DhwaniNeural',
+ },
+ },
+ ['gu-in-niranjanneural']: {
+ voice: {
+ name: 'gu-IN-NiranjanNeural',
+ },
+ },
+ ['he-il-avrineural']: {
+ voice: {
+ name: 'he-IL-AvriNeural',
+ },
+ },
+ ['he-il-hilaneural']: {
+ voice: {
+ name: 'he-IL-HilaNeural',
+ },
+ },
+ ['hi-in-aaravneural']: {
+ voice: {
+ name: 'hi-IN-AaravNeural',
+ },
+ },
+ ['hi-in-aartineural']: {
+ voice: {
+ name: 'hi-IN-AartiNeural',
+ },
+ },
+ ['hi-in-ananyaneural']: {
+ voice: {
+ name: 'hi-IN-AnanyaNeural',
+ },
+ },
+ ['hi-in-arjunneural']: {
+ voice: {
+ name: 'hi-IN-ArjunNeural',
+ },
+ },
+ ['hi-in-kavyaneural']: {
+ voice: {
+ name: 'hi-IN-KavyaNeural',
+ },
+ },
+ ['hi-in-kunalneural']: {
+ voice: {
+ name: 'hi-IN-KunalNeural',
+ },
+ },
+ ['hi-in-madhurneural']: {
+ voice: {
+ name: 'hi-IN-MadhurNeural',
+ },
+ },
+ ['hi-in-rehaanneural']: {
+ voice: {
+ name: 'hi-IN-RehaanNeural',
+ },
+ },
+ ['hi-in-swaraneural']: {
+ voice: {
+ name: 'hi-IN-SwaraNeural',
+ },
+ },
+ ['hr-hr-gabrijelaneural']: {
+ voice: {
+ name: 'hr-HR-GabrijelaNeural',
+ },
+ },
+ ['hr-hr-sreckoneural']: {
+ voice: {
+ name: 'hr-HR-SreckoNeural',
+ },
+ },
+ ['hu-hu-noemineural']: {
+ voice: {
+ name: 'hu-HU-NoemiNeural',
+ },
+ },
+ ['hu-hu-tamasneural']: {
+ voice: {
+ name: 'hu-HU-TamasNeural',
+ },
+ },
+ ['hy-am-anahitneural']: {
+ voice: {
+ name: 'hy-AM-AnahitNeural',
+ },
+ },
+ ['hy-am-haykneural']: {
+ voice: {
+ name: 'hy-AM-HaykNeural',
+ },
+ },
+ ['id-id-ardineural']: {
+ voice: {
+ name: 'id-ID-ArdiNeural',
+ },
+ },
+ ['id-id-gadisneural']: {
+ voice: {
+ name: 'id-ID-GadisNeural',
+ },
+ },
+ ['is-is-gudrunneural']: {
+ voice: {
+ name: 'is-IS-GudrunNeural',
+ },
+ },
+ ['is-is-gunnarneural']: {
+ voice: {
+ name: 'is-IS-GunnarNeural',
+ },
+ },
+ ['it-it-alessiomultilingualneural']: {
+ voice: {
+ name: 'it-IT-AlessioMultilingualNeural',
+ },
+ },
+ ['it-it-benignoneural']: {
+ voice: {
+ name: 'it-IT-BenignoNeural',
+ },
+ },
+ ['it-it-calimeroneural']: {
+ voice: {
+ name: 'it-IT-CalimeroNeural',
+ },
+ },
+ ['it-it-cataldoneural']: {
+ voice: {
+ name: 'it-IT-CataldoNeural',
+ },
+ },
+ ['it-it-diegoneural']: {
+ voice: {
+ name: 'it-IT-DiegoNeural',
+ },
+ },
+ ['it-it-elsaneural']: {
+ voice: {
+ name: 'it-IT-ElsaNeural',
+ },
+ },
+ ['it-it-fabiolaneural']: {
+ voice: {
+ name: 'it-IT-FabiolaNeural',
+ },
+ },
+ ['it-it-fiammaneural']: {
+ voice: {
+ name: 'it-IT-FiammaNeural',
+ },
+ },
+ ['it-it-giannineural']: {
+ voice: {
+ name: 'it-IT-GianniNeural',
+ },
+ },
+ ['it-it-giuseppemultilingualneural']: {
+ voice: {
+ name: 'it-IT-GiuseppeMultilingualNeural',
+ },
+ },
+ ['it-it-giuseppeneural']: {
+ voice: {
+ name: 'it-IT-GiuseppeNeural',
+ },
+ },
+ ['it-it-imeldaneural']: {
+ voice: {
+ name: 'it-IT-ImeldaNeural',
+ },
+ },
+ ['it-it-irmaneural']: {
+ voice: {
+ name: 'it-IT-IrmaNeural',
+ },
+ },
+ ['it-it-isabellamultilingualneural']: {
+ voice: {
+ name: 'it-IT-IsabellaMultilingualNeural',
+ },
+ },
+ ['it-it-isabellaneural']: {
+ voice: {
+ name: 'it-IT-IsabellaNeural',
+ },
+ },
+ ['it-it-lisandroneural']: {
+ voice: {
+ name: 'it-IT-LisandroNeural',
+ },
+ },
+ ['it-it-marcellomultilingualneural']: {
+ voice: {
+ name: 'it-IT-MarcelloMultilingualNeural',
+ },
+ },
+ ['it-it-palmiraneural']: {
+ voice: {
+ name: 'it-IT-PalmiraNeural',
+ },
+ },
+ ['it-it-pierinaneural']: {
+ voice: {
+ name: 'it-IT-PierinaNeural',
+ },
+ },
+ ['it-it-rinaldoneural']: {
+ voice: {
+ name: 'it-IT-RinaldoNeural',
+ },
+ },
+ ['iu-cans-ca-siqiniqneural']: {
+ voice: {
+ name: 'iu-Cans-CA-SiqiniqNeural',
+ },
+ },
+ ['iu-cans-ca-taqqiqneural']: {
+ voice: {
+ name: 'iu-Cans-CA-TaqqiqNeural',
+ },
+ },
+ ['iu-latn-ca-siqiniqneural']: {
+ voice: {
+ name: 'iu-Latn-CA-SiqiniqNeural',
+ },
+ },
+ ['iu-latn-ca-taqqiqneural']: {
+ voice: {
+ name: 'iu-Latn-CA-TaqqiqNeural',
+ },
+ },
+ ['ja-jp-aoineural']: {
+ voice: {
+ name: 'ja-JP-AoiNeural',
+ },
+ },
+ ['ja-jp-daichineural']: {
+ voice: {
+ name: 'ja-JP-DaichiNeural',
+ },
+ },
+ ['ja-jp-keitaneural']: {
+ voice: {
+ name: 'ja-JP-KeitaNeural',
+ },
+ },
+ ['ja-jp-mayuneural']: {
+ voice: {
+ name: 'ja-JP-MayuNeural',
+ },
+ },
+ ['ja-jp-nanamineural']: {
+ voice: {
+ name: 'ja-JP-NanamiNeural',
+ },
+ },
+ ['ja-jp-naokineural']: {
+ voice: {
+ name: 'ja-JP-NaokiNeural',
+ },
+ },
+ ['ja-jp-shiorineural']: {
+ voice: {
+ name: 'ja-JP-ShioriNeural',
+ },
+ },
+ ['jv-id-dimasneural']: {
+ voice: {
+ name: 'jv-ID-DimasNeural',
+ },
+ },
+ ['jv-id-sitineural']: {
+ voice: {
+ name: 'jv-ID-SitiNeural',
+ },
+ },
+ ['ka-ge-ekaneural']: {
+ voice: {
+ name: 'ka-GE-EkaNeural',
+ },
+ },
+ ['ka-ge-giorgineural']: {
+ voice: {
+ name: 'ka-GE-GiorgiNeural',
+ },
+ },
+ ['kk-kz-aigulneural']: {
+ voice: {
+ name: 'kk-KZ-AigulNeural',
+ },
+ },
+ ['kk-kz-dauletneural']: {
+ voice: {
+ name: 'kk-KZ-DauletNeural',
+ },
+ },
+ ['km-kh-pisethneural']: {
+ voice: {
+ name: 'km-KH-PisethNeural',
+ },
+ },
+ ['km-kh-sreymomneural']: {
+ voice: {
+ name: 'km-KH-SreymomNeural',
+ },
+ },
+ ['kn-in-gaganneural']: {
+ voice: {
+ name: 'kn-IN-GaganNeural',
+ },
+ },
+ ['kn-in-sapnaneural']: {
+ voice: {
+ name: 'kn-IN-SapnaNeural',
+ },
+ },
+ ['ko-kr-bongjinneural']: {
+ voice: {
+ name: 'ko-KR-BongJinNeural',
+ },
+ },
+ ['ko-kr-gookminneural']: {
+ voice: {
+ name: 'ko-KR-GookMinNeural',
+ },
+ },
+ ['ko-kr-hyunsumultilingualneural']: {
+ voice: {
+ name: 'ko-KR-HyunsuMultilingualNeural',
+ },
+ },
+ ['ko-kr-hyunsuneural']: {
+ voice: {
+ name: 'ko-KR-HyunsuNeural',
+ },
+ },
+ ['ko-kr-injoonneural']: {
+ voice: {
+ name: 'ko-KR-InJoonNeural',
+ },
+ },
+ ['ko-kr-jiminneural']: {
+ voice: {
+ name: 'ko-KR-JiMinNeural',
+ },
+ },
+ ['ko-kr-seohyeonneural']: {
+ voice: {
+ name: 'ko-KR-SeoHyeonNeural',
+ },
+ },
+ ['ko-kr-soonbokneural']: {
+ voice: {
+ name: 'ko-KR-SoonBokNeural',
+ },
+ },
+ ['ko-kr-sunhineural']: {
+ voice: {
+ name: 'ko-KR-SunHiNeural',
+ },
+ },
+ ['ko-kr-yujinneural']: {
+ voice: {
+ name: 'ko-KR-YuJinNeural',
+ },
+ },
+ ['lo-la-chanthavongneural']: {
+ voice: {
+ name: 'lo-LA-ChanthavongNeural',
+ },
+ },
+ ['lo-la-keomanyneural']: {
+ voice: {
+ name: 'lo-LA-KeomanyNeural',
+ },
+ },
+ ['lt-lt-leonasneural']: {
+ voice: {
+ name: 'lt-LT-LeonasNeural',
+ },
+ },
+ ['lt-lt-onaneural']: {
+ voice: {
+ name: 'lt-LT-OnaNeural',
+ },
+ },
+ ['lv-lv-everitaneural']: {
+ voice: {
+ name: 'lv-LV-EveritaNeural',
+ },
+ },
+ ['lv-lv-nilsneural']: {
+ voice: {
+ name: 'lv-LV-NilsNeural',
+ },
+ },
+ ['mk-mk-aleksandarneural']: {
+ voice: {
+ name: 'mk-MK-AleksandarNeural',
+ },
+ },
+ ['mk-mk-marijaneural']: {
+ voice: {
+ name: 'mk-MK-MarijaNeural',
+ },
+ },
+ ['ml-in-midhunneural']: {
+ voice: {
+ name: 'ml-IN-MidhunNeural',
+ },
+ },
+ ['ml-in-sobhananeural']: {
+ voice: {
+ name: 'ml-IN-SobhanaNeural',
+ },
+ },
+ ['mn-mn-bataaneural']: {
+ voice: {
+ name: 'mn-MN-BataaNeural',
+ },
+ },
+ ['mn-mn-yesuineural']: {
+ voice: {
+ name: 'mn-MN-YesuiNeural',
+ },
+ },
+ ['mr-in-aarohineural']: {
+ voice: {
+ name: 'mr-IN-AarohiNeural',
+ },
+ },
+ ['mr-in-manoharneural']: {
+ voice: {
+ name: 'mr-IN-ManoharNeural',
+ },
+ },
+ ['ms-my-osmanneural']: {
+ voice: {
+ name: 'ms-MY-OsmanNeural',
+ },
+ },
+ ['ms-my-yasminneural']: {
+ voice: {
+ name: 'ms-MY-YasminNeural',
+ },
+ },
+ ['mt-mt-graceneural']: {
+ voice: {
+ name: 'mt-MT-GraceNeural',
+ },
+ },
+ ['mt-mt-josephneural']: {
+ voice: {
+ name: 'mt-MT-JosephNeural',
+ },
+ },
+ ['my-mm-nilarneural']: {
+ voice: {
+ name: 'my-MM-NilarNeural',
+ },
+ },
+ ['my-mm-thihaneural']: {
+ voice: {
+ name: 'my-MM-ThihaNeural',
+ },
+ },
+ ['nb-no-finnneural']: {
+ voice: {
+ name: 'nb-NO-FinnNeural',
+ },
+ },
+ ['nb-no-iselinneural']: {
+ voice: {
+ name: 'nb-NO-IselinNeural',
+ },
+ },
+ ['nb-no-pernilleneural']: {
+ voice: {
+ name: 'nb-NO-PernilleNeural',
+ },
+ },
+ ['ne-np-hemkalaneural']: {
+ voice: {
+ name: 'ne-NP-HemkalaNeural',
+ },
+ },
+ ['ne-np-sagarneural']: {
+ voice: {
+ name: 'ne-NP-SagarNeural',
+ },
+ },
+ ['nl-be-arnaudneural']: {
+ voice: {
+ name: 'nl-BE-ArnaudNeural',
+ },
+ },
+ ['nl-be-denaneural']: {
+ voice: {
+ name: 'nl-BE-DenaNeural',
+ },
+ },
+ ['nl-nl-coletteneural']: {
+ voice: {
+ name: 'nl-NL-ColetteNeural',
+ },
+ },
+ ['nl-nl-fennaneural']: {
+ voice: {
+ name: 'nl-NL-FennaNeural',
+ },
+ },
+ ['nl-nl-maartenneural']: {
+ voice: {
+ name: 'nl-NL-MaartenNeural',
+ },
+ },
+ ['or-in-subhasinineural']: {
+ voice: {
+ name: 'or-IN-SubhasiniNeural',
+ },
+ },
+ ['or-in-sukantneural']: {
+ voice: {
+ name: 'or-IN-SukantNeural',
+ },
+ },
+ ['pa-in-ojasneural']: {
+ voice: {
+ name: 'pa-IN-OjasNeural',
+ },
+ },
+ ['pa-in-vaanineural']: {
+ voice: {
+ name: 'pa-IN-VaaniNeural',
+ },
+ },
+ ['pl-pl-agnieszkaneural']: {
+ voice: {
+ name: 'pl-PL-AgnieszkaNeural',
+ },
+ },
+ ['pl-pl-marekneural']: {
+ voice: {
+ name: 'pl-PL-MarekNeural',
+ },
+ },
+ ['pl-pl-zofianeural']: {
+ voice: {
+ name: 'pl-PL-ZofiaNeural',
+ },
+ },
+ ['ps-af-gulnawazneural']: {
+ voice: {
+ name: 'ps-AF-GulNawazNeural',
+ },
+ },
+ ['ps-af-latifaneural']: {
+ voice: {
+ name: 'ps-AF-LatifaNeural',
+ },
+ },
+ ['pt-br-antonioneural']: {
+ voice: {
+ name: 'pt-BR-AntonioNeural',
+ },
+ },
+ ['pt-br-brendaneural']: {
+ voice: {
+ name: 'pt-BR-BrendaNeural',
+ },
+ },
+ ['pt-br-donatoneural']: {
+ voice: {
+ name: 'pt-BR-DonatoNeural',
+ },
+ },
+ ['pt-br-elzaneural']: {
+ voice: {
+ name: 'pt-BR-ElzaNeural',
+ },
+ },
+ ['pt-br-fabioneural']: {
+ voice: {
+ name: 'pt-BR-FabioNeural',
+ },
+ },
+ ['pt-br-franciscaneural']: {
+ voice: {
+ name: 'pt-BR-FranciscaNeural',
+ },
+ },
+ ['pt-br-giovannaneural']: {
+ voice: {
+ name: 'pt-BR-GiovannaNeural',
+ },
+ },
+ ['pt-br-humbertoneural']: {
+ voice: {
+ name: 'pt-BR-HumbertoNeural',
+ },
+ },
+ ['pt-br-julioneural']: {
+ voice: {
+ name: 'pt-BR-JulioNeural',
+ },
+ },
+ ['pt-br-leilaneural']: {
+ voice: {
+ name: 'pt-BR-LeilaNeural',
+ },
+ },
+ ['pt-br-leticianeural']: {
+ voice: {
+ name: 'pt-BR-LeticiaNeural',
+ },
+ },
+ ['pt-br-maceriomultilingualneural']: {
+ voice: {
+ name: 'pt-BR-MacerioMultilingualNeural',
+ },
+ },
+ ['pt-br-manuelaneural']: {
+ voice: {
+ name: 'pt-BR-ManuelaNeural',
+ },
+ },
+ ['pt-br-nicolauneural']: {
+ voice: {
+ name: 'pt-BR-NicolauNeural',
+ },
+ },
+ ['pt-br-thalitamultilingualneural']: {
+ voice: {
+ name: 'pt-BR-ThalitaMultilingualNeural',
+ },
+ },
+ ['pt-br-thalitaneural']: {
+ voice: {
+ name: 'pt-BR-ThalitaNeural',
+ },
+ },
+ ['pt-br-valerioneural']: {
+ voice: {
+ name: 'pt-BR-ValerioNeural',
+ },
+ },
+ ['pt-br-yaraneural']: {
+ voice: {
+ name: 'pt-BR-YaraNeural',
+ },
+ },
+ ['pt-pt-duarteneural']: {
+ voice: {
+ name: 'pt-PT-DuarteNeural',
+ },
+ },
+ ['pt-pt-fernandaneural']: {
+ voice: {
+ name: 'pt-PT-FernandaNeural',
+ },
+ },
+ ['pt-pt-raquelneural']: {
+ voice: {
+ name: 'pt-PT-RaquelNeural',
+ },
+ },
+ ['ro-ro-alinaneural']: {
+ voice: {
+ name: 'ro-RO-AlinaNeural',
+ },
+ },
+ ['ro-ro-emilneural']: {
+ voice: {
+ name: 'ro-RO-EmilNeural',
+ },
+ },
+ ['ru-ru-dariyaneural']: {
+ voice: {
+ name: 'ru-RU-DariyaNeural',
+ },
+ },
+ ['ru-ru-dmitryneural']: {
+ voice: {
+ name: 'ru-RU-DmitryNeural',
+ },
+ },
+ ['ru-ru-svetlananeural']: {
+ voice: {
+ name: 'ru-RU-SvetlanaNeural',
+ },
+ },
+ ['si-lk-sameeraneural']: {
+ voice: {
+ name: 'si-LK-SameeraNeural',
+ },
+ },
+ ['si-lk-thilinineural']: {
+ voice: {
+ name: 'si-LK-ThiliniNeural',
+ },
+ },
+ ['sk-sk-lukasneural']: {
+ voice: {
+ name: 'sk-SK-LukasNeural',
+ },
+ },
+ ['sk-sk-viktorianeural']: {
+ voice: {
+ name: 'sk-SK-ViktoriaNeural',
+ },
+ },
+ ['sl-si-petraneural']: {
+ voice: {
+ name: 'sl-SI-PetraNeural',
+ },
+ },
+ ['sl-si-rokneural']: {
+ voice: {
+ name: 'sl-SI-RokNeural',
+ },
+ },
+ ['so-so-muuseneural']: {
+ voice: {
+ name: 'so-SO-MuuseNeural',
+ },
+ },
+ ['so-so-ubaxneural']: {
+ voice: {
+ name: 'so-SO-UbaxNeural',
+ },
+ },
+ ['sq-al-anilaneural']: {
+ voice: {
+ name: 'sq-AL-AnilaNeural',
+ },
+ },
+ ['sq-al-ilirneural']: {
+ voice: {
+ name: 'sq-AL-IlirNeural',
+ },
+ },
+ ['sr-latn-rs-nicholasneural']: {
+ voice: {
+ name: 'sr-Latn-RS-NicholasNeural',
+ },
+ },
+ ['sr-latn-rs-sophieneural']: {
+ voice: {
+ name: 'sr-Latn-RS-SophieNeural',
+ },
+ },
+ ['sr-rs-nicholasneural']: {
+ voice: {
+ name: 'sr-RS-NicholasNeural',
+ },
+ },
+ ['sr-rs-sophieneural']: {
+ voice: {
+ name: 'sr-RS-SophieNeural',
+ },
+ },
+ ['su-id-jajangneural']: {
+ voice: {
+ name: 'su-ID-JajangNeural',
+ },
+ },
+ ['su-id-tutineural']: {
+ voice: {
+ name: 'su-ID-TutiNeural',
+ },
+ },
+ ['sv-se-hillevineural']: {
+ voice: {
+ name: 'sv-SE-HilleviNeural',
+ },
+ },
+ ['sv-se-mattiasneural']: {
+ voice: {
+ name: 'sv-SE-MattiasNeural',
+ },
+ },
+ ['sv-se-sofieneural']: {
+ voice: {
+ name: 'sv-SE-SofieNeural',
+ },
+ },
+ ['sw-ke-rafikineural']: {
+ voice: {
+ name: 'sw-KE-RafikiNeural',
+ },
+ },
+ ['sw-ke-zurineural']: {
+ voice: {
+ name: 'sw-KE-ZuriNeural',
+ },
+ },
+ ['sw-tz-daudineural']: {
+ voice: {
+ name: 'sw-TZ-DaudiNeural',
+ },
+ },
+ ['sw-tz-rehemaneural']: {
+ voice: {
+ name: 'sw-TZ-RehemaNeural',
+ },
+ },
+ ['ta-in-pallavineural']: {
+ voice: {
+ name: 'ta-IN-PallaviNeural',
+ },
+ },
+ ['ta-in-valluvarneural']: {
+ voice: {
+ name: 'ta-IN-ValluvarNeural',
+ },
+ },
+ ['ta-lk-kumarneural']: {
+ voice: {
+ name: 'ta-LK-KumarNeural',
+ },
+ },
+ ['ta-lk-saranyaneural']: {
+ voice: {
+ name: 'ta-LK-SaranyaNeural',
+ },
+ },
+ ['ta-my-kanineural']: {
+ voice: {
+ name: 'ta-MY-KaniNeural',
+ },
+ },
+ ['ta-my-suryaneural']: {
+ voice: {
+ name: 'ta-MY-SuryaNeural',
+ },
+ },
+ ['ta-sg-anbuneural']: {
+ voice: {
+ name: 'ta-SG-AnbuNeural',
+ },
+ },
+ ['ta-sg-venbaneural']: {
+ voice: {
+ name: 'ta-SG-VenbaNeural',
+ },
+ },
+ ['te-in-mohanneural']: {
+ voice: {
+ name: 'te-IN-MohanNeural',
+ },
+ },
+ ['te-in-shrutineural']: {
+ voice: {
+ name: 'te-IN-ShrutiNeural',
+ },
+ },
+ ['th-th-acharaneural']: {
+ voice: {
+ name: 'th-TH-AcharaNeural',
+ },
+ },
+ ['th-th-niwatneural']: {
+ voice: {
+ name: 'th-TH-NiwatNeural',
+ },
+ },
+ ['th-th-premwadeeneural']: {
+ voice: {
+ name: 'th-TH-PremwadeeNeural',
+ },
+ },
+ ['tr-tr-ahmetneural']: {
+ voice: {
+ name: 'tr-TR-AhmetNeural',
+ },
+ },
+ ['tr-tr-emelneural']: {
+ voice: {
+ name: 'tr-TR-EmelNeural',
+ },
+ },
+ ['uk-ua-ostapneural']: {
+ voice: {
+ name: 'uk-UA-OstapNeural',
+ },
+ },
+ ['uk-ua-polinaneural']: {
+ voice: {
+ name: 'uk-UA-PolinaNeural',
+ },
+ },
+ ['ur-in-gulneural']: {
+ voice: {
+ name: 'ur-IN-GulNeural',
+ },
+ },
+ ['ur-in-salmanneural']: {
+ voice: {
+ name: 'ur-IN-SalmanNeural',
+ },
+ },
+ ['ur-pk-asadneural']: {
+ voice: {
+ name: 'ur-PK-AsadNeural',
+ },
+ },
+ ['ur-pk-uzmaneural']: {
+ voice: {
+ name: 'ur-PK-UzmaNeural',
+ },
+ },
+ ['uz-uz-madinaneural']: {
+ voice: {
+ name: 'uz-UZ-MadinaNeural',
+ },
+ },
+ ['uz-uz-sardorneural']: {
+ voice: {
+ name: 'uz-UZ-SardorNeural',
+ },
+ },
+ ['vi-vn-hoaimyneural']: {
+ voice: {
+ name: 'vi-VN-HoaiMyNeural',
+ },
+ },
+ ['vi-vn-namminhneural']: {
+ voice: {
+ name: 'vi-VN-NamMinhNeural',
+ },
+ },
+ ['wuu-cn-xiaotongneural']: {
+ voice: {
+ name: 'wuu-CN-XiaotongNeural',
+ },
+ },
+ ['wuu-cn-yunzheneural']: {
+ voice: {
+ name: 'wuu-CN-YunzheNeural',
+ },
+ },
+ ['yue-cn-xiaominneural']: {
+ voice: {
+ name: 'yue-CN-XiaoMinNeural',
+ },
+ },
+ ['yue-cn-yunsongneural']: {
+ voice: {
+ name: 'yue-CN-YunSongNeural',
+ },
+ },
+ ['zh-cn-henan-yundengneural']: {
+ voice: {
+ name: 'zh-CN-henan-YundengNeural',
+ },
+ },
+ ['zh-cn-liaoning-xiaobeineural']: {
+ voice: {
+ name: 'zh-CN-liaoning-XiaobeiNeural',
+ },
+ },
+ ['zh-cn-shaanxi-xiaonineural']: {
+ voice: {
+ name: 'zh-CN-shaanxi-XiaoniNeural',
+ },
+ },
+ ['zh-cn-shandong-yunxiangneural']: {
+ voice: {
+ name: 'zh-CN-shandong-YunxiangNeural',
+ },
+ },
+ ['zh-cn-sichuan-yunxineural']: {
+ voice: {
+ name: 'zh-CN-sichuan-YunxiNeural',
+ },
+ },
+ ['zh-cn-xiaochenmultilingualneural']: {
+ voice: {
+ name: 'zh-CN-XiaochenMultilingualNeural',
+ },
+ },
+ ['zh-cn-xiaochenneural']: {
+ voice: {
+ name: 'zh-CN-XiaochenNeural',
+ },
+ },
+ ['zh-cn-xiaohanneural']: {
+ voice: {
+ name: 'zh-CN-XiaohanNeural',
+ },
+ },
+ ['zh-cn-xiaomengneural']: {
+ voice: {
+ name: 'zh-CN-XiaomengNeural',
+ },
+ },
+ ['zh-cn-xiaomoneural']: {
+ voice: {
+ name: 'zh-CN-XiaomoNeural',
+ },
+ },
+ ['zh-cn-xiaoqiuneural']: {
+ voice: {
+ name: 'zh-CN-XiaoqiuNeural',
+ },
+ },
+ ['zh-cn-xiaorouneural']: {
+ voice: {
+ name: 'zh-CN-XiaorouNeural',
+ },
+ },
+ ['zh-cn-xiaoruineural']: {
+ voice: {
+ name: 'zh-CN-XiaoruiNeural',
+ },
+ },
+ ['zh-cn-xiaoshuangneural']: {
+ voice: {
+ name: 'zh-CN-XiaoshuangNeural',
+ },
+ },
+ ['zh-cn-xiaoxiaodialectsneural']: {
+ voice: {
+ name: 'zh-CN-XiaoxiaoDialectsNeural',
+ },
+ },
+ ['zh-cn-xiaoxiaomultilingualneural']: {
+ voice: {
+ name: 'zh-CN-XiaoxiaoMultilingualNeural',
+ },
+ },
+ ['zh-cn-xiaoxiaoneural']: {
+ voice: {
+ name: 'zh-CN-XiaoxiaoNeural',
+ },
+ },
+ ['zh-cn-xiaoyanneural']: {
+ voice: {
+ name: 'zh-CN-XiaoyanNeural',
+ },
+ },
+ ['zh-cn-xiaoyineural']: {
+ voice: {
+ name: 'zh-CN-XiaoyiNeural',
+ },
+ },
+ ['zh-cn-xiaoyouneural']: {
+ voice: {
+ name: 'zh-CN-XiaoyouNeural',
+ },
+ },
+ ['zh-cn-xiaoyumultilingualneural']: {
+ voice: {
+ name: 'zh-CN-XiaoyuMultilingualNeural',
+ },
+ },
+ ['zh-cn-xiaozhenneural']: {
+ voice: {
+ name: 'zh-CN-XiaozhenNeural',
+ },
+ },
+ ['zh-cn-yunfengneural']: {
+ voice: {
+ name: 'zh-CN-YunfengNeural',
+ },
+ },
+ ['zh-cn-yunhaoneural']: {
+ voice: {
+ name: 'zh-CN-YunhaoNeural',
+ },
+ },
+ ['zh-cn-yunjianneural']: {
+ voice: {
+ name: 'zh-CN-YunjianNeural',
+ },
+ },
+ ['zh-cn-yunjieneural']: {
+ voice: {
+ name: 'zh-CN-YunjieNeural',
+ },
+ },
+ ['zh-cn-yunxianeural']: {
+ voice: {
+ name: 'zh-CN-YunxiaNeural',
+ },
+ },
+ ['zh-cn-yunxiaomultilingualneural']: {
+ voice: {
+ name: 'zh-CN-YunxiaoMultilingualNeural',
+ },
+ },
+ ['zh-cn-yunxineural']: {
+ voice: {
+ name: 'zh-CN-YunxiNeural',
+ },
+ },
+ ['zh-cn-yunyangneural']: {
+ voice: {
+ name: 'zh-CN-YunyangNeural',
+ },
+ },
+ ['zh-cn-yunyeneural']: {
+ voice: {
+ name: 'zh-CN-YunyeNeural',
+ },
+ },
+ ['zh-cn-yunyimultilingualneural']: {
+ voice: {
+ name: 'zh-CN-YunyiMultilingualNeural',
+ },
+ },
+ ['zh-cn-yunzeneural']: {
+ voice: {
+ name: 'zh-CN-YunzeNeural',
+ },
+ },
+ ['zh-hk-hiugaaineural']: {
+ voice: {
+ name: 'zh-HK-HiuGaaiNeural',
+ },
+ },
+ ['zh-hk-hiumaanneural']: {
+ voice: {
+ name: 'zh-HK-HiuMaanNeural',
+ },
+ },
+ ['zh-hk-wanlungneural']: {
+ voice: {
+ name: 'zh-HK-WanLungNeural',
+ },
+ },
+ ['zh-tw-hsiaochenneural']: {
+ voice: {
+ name: 'zh-TW-HsiaoChenNeural',
+ },
+ },
+ ['zh-tw-hsiaoyuneural']: {
+ voice: {
+ name: 'zh-TW-HsiaoYuNeural',
+ },
+ },
+ ['zh-tw-yunjheneural']: {
+ voice: {
+ name: 'zh-TW-YunJheNeural',
+ },
+ },
+ ['zu-za-thandoneural']: {
+ voice: {
+ name: 'zu-ZA-ThandoNeural',
+ },
+ },
+ ['zu-za-thembaneural']: {
+ voice: {
+ name: 'zu-ZA-ThembaNeural',
+ },
+ },
+};
diff --git a/tests/break-strength.spec.ts b/tests/break-strength.spec.ts
index 1222884..0bae5f9 100644
--- a/tests/break-strength.spec.ts
+++ b/tests/break-strength.spec.ts
@@ -99,6 +99,18 @@ describe('break-strength', () => {
expect(ssml).toBe(expected);
});
+ test('converts to ElevenLabs prompt markup', () => {
+ const options = {
+ platform: 'elevenlabs',
+ };
+ const prompt = speech.toSSML(markdown, options);
+
+ const expected =
+ 'Sample speech markdown';
+
+ expect(prompt).toBe(expected);
+ });
+
test('converts to Plain Text', () => {
const options = {};
const text = speech.toText(markdown, options);
diff --git a/tests/break-time.spec.ts b/tests/break-time.spec.ts
index f4bdc83..b3b6b76 100644
--- a/tests/break-time.spec.ts
+++ b/tests/break-time.spec.ts
@@ -99,6 +99,18 @@ describe('break-time', () => {
expect(ssml).toBe(expected);
});
+ test('converts to ElevenLabs prompt markup', () => {
+ const options = {
+ platform: 'elevenlabs',
+ };
+ const prompt = speech.toSSML(markdown, options);
+
+ const expected =
+ 'Sample speech markdown';
+
+ expect(prompt).toBe(expected);
+ });
+
test('converts to Plain Text', () => {
const options = {};
const text = speech.toText(markdown, options);
diff --git a/tests/ipa-short.spec.ts b/tests/ipa-short.spec.ts
new file mode 100644
index 0000000..6c54559
--- /dev/null
+++ b/tests/ipa-short.spec.ts
@@ -0,0 +1,78 @@
+// tslint:disable-next-line:import-name
+import dedent from 'ts-dedent';
+import { SpeechMarkdown } from '../src/SpeechMarkdown';
+
+describe('ipa-short', () => {
+ const speech = new SpeechMarkdown();
+
+ const markdown = dedent`
+ I say, (pecan)/'pi.kæn/.
+ I say, (data)/ˈdeɪtə/.
+ Just /ˈdeɪtə/ here.
+ `;
+
+ const expectedSsml = dedent`
+
+ I say, pecan .
+ I say, data .
+ Just ipa here.
+
+ `;
+
+ test('converts to SSML - Amazon Alexa', () => {
+ const ssml = speech.toSSML(markdown, { platform: 'amazon-alexa' });
+ expect(ssml).toBe(expectedSsml);
+ });
+
+ test('converts to SSML - Amazon Polly', () => {
+ const ssml = speech.toSSML(markdown, { platform: 'amazon-polly' });
+ expect(ssml).toBe(expectedSsml);
+ });
+
+ test('converts to SSML - Amazon Polly (Neural)', () => {
+ const ssml = speech.toSSML(markdown, { platform: 'amazon-polly-neural' });
+ expect(ssml).toBe(expectedSsml);
+ });
+
+ test('converts to SSML - Google Assistant', () => {
+ const ssml = speech.toSSML(markdown, { platform: 'google-assistant' });
+ expect(ssml).toBe(expectedSsml);
+ });
+
+ test('converts to SSML - Microsoft Azure', () => {
+ const ssml = speech.toSSML(markdown, { platform: 'microsoft-azure' });
+ expect(ssml).toBe(expectedSsml);
+ });
+
+ test('converts to SSML - IBM Watson', () => {
+ const ssml = speech.toSSML(markdown, { platform: 'ibm-watson' });
+ expect(ssml).toBe(expectedSsml);
+ });
+
+ test('converts to SSML - Microsoft SAPI', () => {
+ const ssml = speech.toSSML(markdown, { platform: 'microsoft-sapi' });
+ expect(ssml).toBe(expectedSsml);
+ });
+
+ test('converts to SSML - W3C', () => {
+ const ssml = speech.toSSML(markdown, { platform: 'w3c' });
+ expect(ssml).toBe(expectedSsml);
+ });
+
+ test('converts to SSML - Apple AVSpeechSynthesizer', () => {
+ const ssml = speech.toSSML(markdown, {
+ platform: 'apple-avspeechsynthesizer',
+ });
+ expect(ssml).toBe(expectedSsml);
+ });
+
+ test('converts to Plain Text', () => {
+ const text = speech.toText(markdown, {});
+ const expectedText = dedent`
+ I say, pecan.
+ I say, data.
+ Just ˈdeɪtə here.
+ `;
+ expect(text).toBe(expectedText);
+ });
+});
diff --git a/tests/ipa-standard.spec.ts b/tests/ipa-standard.spec.ts
index 80b947c..80794da 100644
--- a/tests/ipa-standard.spec.ts
+++ b/tests/ipa-standard.spec.ts
@@ -99,6 +99,18 @@ describe('ipa-standard', () => {
expect(ssml).toBe(expected);
});
+ test('converts to ElevenLabs prompt markup', () => {
+ const options = {
+ platform: 'elevenlabs',
+ };
+ const prompt = speech.toSSML(markdown, options);
+
+ const expected =
+ 'I say, pecan .';
+
+ expect(prompt).toBe(expected);
+ });
+
test('converts to Plain Text', () => {
const options = {};
const text = speech.toText(markdown, options);
diff --git a/tests/new-engines.spec.ts b/tests/new-engines.spec.ts
new file mode 100644
index 0000000..f108041
--- /dev/null
+++ b/tests/new-engines.spec.ts
@@ -0,0 +1,144 @@
+// tslint:disable-next-line:import-name
+import dedent from 'ts-dedent';
+import { SpeechMarkdown } from '../src/SpeechMarkdown';
+
+describe('microsoft-sapi formatter', () => {
+ const speech = new SpeechMarkdown();
+
+ const markdown = dedent`
+ SAPI (emphasis)[emphasis:"strong"] handles (letters)[characters] with (voice)[voice:'Zira'].
+ `;
+
+ test('renders SSML for Microsoft Speech API', () => {
+ const options = {
+ platform: 'microsoft-sapi',
+ };
+ const ssml = speech.toSSML(markdown, options);
+
+ const expected = dedent`
+
+ SAPI emphasis handles letters with voice .
+
+ `;
+
+ expect(ssml).toBe(expected);
+ });
+});
+
+describe('w3c formatter', () => {
+ const speech = new SpeechMarkdown();
+
+ test('supports say-as and emphasis', () => {
+ const markdown = dedent`
+ (Lang)[lang:"fr-FR"] (stress)[emphasis:"strong"] (12345)[characters] (forty two)[number].
+ `;
+
+ const ssml = speech.toSSML(markdown, { platform: 'w3c' });
+
+ const expected = dedent`
+
+ Lang stress 12345 forty two .
+
+ `;
+
+ expect(ssml).toBe(expected);
+ });
+
+ test('supports phoneme, substitutions, and prosody', () => {
+ const markdown = dedent`
+ (display)[sub:"alias"] (phoneme)[ipa:"'pi.kæn"] (style)[rate:"fast";pitch:"+2st";volume:"+3dB"].
+ `;
+
+ const ssml = speech.toSSML(markdown, { platform: 'w3c' });
+
+ const expected = dedent`
+
+ display phoneme style .
+
+ `;
+
+ expect(ssml).toBe(expected);
+ });
+
+ test('supports voice and mark', () => {
+ const markdown = dedent`
+ (voice sample)[voice:"Alice"] [mark:"bookmark-1"].
+ `;
+
+ const ssml = speech.toSSML(markdown, { platform: 'w3c' });
+
+ const expected = dedent`
+
+ voice sample .
+
+ `;
+
+ expect(ssml).toBe(expected);
+ });
+});
+
+describe('apple-avspeechsynthesizer formatter', () => {
+ const speech = new SpeechMarkdown();
+
+ const markdown = dedent`
+ Apple (A1)[characters] speaks (data)[ipa:"ˈdeɪtə"] with (Samantha)[voice:'Samantha'] voices.
+ `;
+
+ test('renders SSML for Apple AVSpeechSynthesizer', () => {
+ const options = {
+ platform: 'apple-avspeechsynthesizer',
+ };
+ const ssml = speech.toSSML(markdown, options);
+
+ const expected = dedent`
+
+ Apple A1 speaks data with Samantha voices.
+
+ `;
+
+ expect(ssml).toBe(expected);
+ });
+});
+
+describe('ibm-watson formatter', () => {
+ const speech = new SpeechMarkdown();
+
+ const markdown = dedent`
+ Watson (stress)[emphasis:"strong"] reads (100 km)[unit] with (style)[rate:"fast";pitch:"+2st";volume:"+3dB"] and (Allison)[voice:'Allison'] support.
+ `;
+
+ test('renders SSML for IBM Watson', () => {
+ const options = {
+ platform: 'ibm-watson',
+ };
+ const ssml = speech.toSSML(markdown, options);
+
+ const expected = dedent`
+
+ Watson stress reads 100 km with style and Allison support.
+
+ `;
+
+ expect(ssml).toBe(expected);
+ });
+});
+
+describe('elevenlabs formatter', () => {
+ const speech = new SpeechMarkdown();
+
+ const markdown = dedent`
+ Eleven (Labs)[ipa:"ˈlæbz"] [break:"1s"] ready.
+ `;
+
+ test('renders ElevenLabs prompt markup', () => {
+ const options = {
+ platform: 'elevenlabs',
+ };
+ const prompt = speech.toSSML(markdown, options);
+
+ const expected =
+ 'Eleven Labs ready.';
+
+ expect(prompt).toBe(expected);
+ });
+});
diff --git a/tests/sections-standard.spec.ts b/tests/sections-standard.spec.ts
index 7737612..8e5a2ad 100644
--- a/tests/sections-standard.spec.ts
+++ b/tests/sections-standard.spec.ts
@@ -61,15 +61,19 @@ describe('sections-standard', () => {
My voice and language is based on the device.
+
Now I am speaking as Kendra from the US with a US accent.
+
+
Switching to Brian from the UK with a US accent.
+
Now back to the device setting.
@@ -89,15 +93,19 @@ describe('sections-standard', () => {
My voice and language is based on the device.
+
Now I am speaking as Kendra from the US with a US accent.
+
+
Switching to Brian from the UK with a US accent.
+
Now back to the device setting.
@@ -111,19 +119,31 @@ describe('sections-standard', () => {
platform: 'google-assistant',
preserveEmptyLines: false,
};
- const ssml = speech.toSSML(markdown, options);
+ const googleMarkdown = dedent`
+ My voice and language is based on the device.
+
+ #[voice:"en-US-Neural2-F";lang:"en-US"]
+ Now I am speaking with en-US-Neural2-F from the US with a US accent.
+
+ #[voice:"en-GB-Standard-A";lang:"en-GB"]
+ Switching to en-GB-Standard-A from the UK with a UK accent.
+
+ #[voice:"device"]
+ Now back to the device setting.
+ `;
+ const ssml = speech.toSSML(googleMarkdown, options);
const expected = dedent`
My voice and language is based on the device.
-
- Now I am speaking as Kendra from the US with a US accent.
+
+ Now I am speaking with en-US-Neural2-F from the US with a US accent.
-
- Switching to Brian from the UK with a US accent.
+
+ Switching to en-GB-Standard-A from the UK with a UK accent.
Now back to the device setting.
@@ -242,15 +262,22 @@ describe('sections-standard end speak tag at end', () => {
platform: 'google-assistant',
preserveEmptyLines: false,
};
- const ssml = speech.toSSML(markdown, options);
+ const googleMarkdown = dedent`
+ #[voice:"en-US-Neural2-F"]
+ Section 1
+
+ #[voice:"en-GB-Standard-A";lang:"en-GB"]
+ Section 2
+ `;
+ const ssml = speech.toSSML(googleMarkdown, options);
const expected = dedent`
- Section 1
+ Section 1
-
+
Section 2
@@ -342,12 +369,15 @@ describe('sections-standard voice section on same line', () => {
const options = {
platform: 'google-assistant',
};
- const ssml = speech.toSSML(markdown, options);
+ const googleMarkdown = dedent`
+ #[voice:'en-GB-Standard-A'] Hey there, nice to meet you
+ `;
+ const ssml = speech.toSSML(googleMarkdown, options);
const expected = dedent`
- Hey there, nice to meet you
+ Hey there, nice to meet you
`;
diff --git a/tests/sub-short.spec.ts b/tests/sub-short.spec.ts
new file mode 100644
index 0000000..689866f
--- /dev/null
+++ b/tests/sub-short.spec.ts
@@ -0,0 +1,80 @@
+// tslint:disable-next-line:import-name
+import dedent from 'ts-dedent';
+import { SpeechMarkdown } from '../src/SpeechMarkdown';
+
+describe('sub-short', () => {
+ const speech = new SpeechMarkdown();
+
+ const markdown = dedent`
+ The element is (Al){aluminum}.
+ Visit our website at (www.speechmarkdown.org){speech mark down dot org}.
+ `;
+
+ const expectedSsml = dedent`
+
+ The element is Al .
+ Visit our website at www.speechmarkdown.org .
+
+ `;
+
+ test('converts to SSML - Amazon Alexa', () => {
+ const ssml = speech.toSSML(markdown, { platform: 'amazon-alexa' });
+ expect(ssml).toBe(expectedSsml);
+ });
+
+ test('converts to SSML - Amazon Polly', () => {
+ const ssml = speech.toSSML(markdown, { platform: 'amazon-polly' });
+ expect(ssml).toBe(expectedSsml);
+ });
+
+ test('converts to SSML - Amazon Polly (Neural)', () => {
+ const ssml = speech.toSSML(markdown, { platform: 'amazon-polly-neural' });
+ expect(ssml).toBe(expectedSsml);
+ });
+
+ test('converts to SSML - Google Assistant', () => {
+ const ssml = speech.toSSML(markdown, { platform: 'google-assistant' });
+ expect(ssml).toBe(expectedSsml);
+ });
+
+ test('converts to SSML - Samsung Bixby', () => {
+ const ssml = speech.toSSML(markdown, { platform: 'samsung-bixby' });
+ expect(ssml).toBe(expectedSsml);
+ });
+
+ test('converts to SSML - Microsoft Azure', () => {
+ const ssml = speech.toSSML(markdown, { platform: 'microsoft-azure' });
+ expect(ssml).toBe(expectedSsml);
+ });
+
+ test('converts to SSML - IBM Watson', () => {
+ const ssml = speech.toSSML(markdown, { platform: 'ibm-watson' });
+ expect(ssml).toBe(expectedSsml);
+ });
+
+ test('converts to SSML - Microsoft SAPI', () => {
+ const ssml = speech.toSSML(markdown, { platform: 'microsoft-sapi' });
+ expect(ssml).toBe(expectedSsml);
+ });
+
+ test('converts to SSML - W3C', () => {
+ const ssml = speech.toSSML(markdown, { platform: 'w3c' });
+ expect(ssml).toBe(expectedSsml);
+ });
+
+ test('converts to SSML - Apple AVSpeechSynthesizer', () => {
+ const ssml = speech.toSSML(markdown, {
+ platform: 'apple-avspeechsynthesizer',
+ });
+ expect(ssml).toBe(expectedSsml);
+ });
+
+ test('converts to Plain Text', () => {
+ const text = speech.toText(markdown, {});
+ const expectedText = dedent`
+ The element is Al.
+ Visit our website at www.speechmarkdown.org.
+ `;
+ expect(text).toBe(expectedText);
+ });
+});
diff --git a/tests/voice-standard.spec.ts b/tests/voice-standard.spec.ts
index 0969f68..20d042d 100644
--- a/tests/voice-standard.spec.ts
+++ b/tests/voice-standard.spec.ts
@@ -34,8 +34,8 @@ describe('voice-standard', () => {
const expected = dedent`
- Why do you keep switching voices from one to the other?
- Why do you keep switching voices from one to the other?
+ Why do you keep switching voices from one to the other ?
+ Why do you keep switching voices from one to the other ?
`;
@@ -50,8 +50,8 @@ describe('voice-standard', () => {
const expected = dedent`
- Why do you keep switching voices from one to the other?
- Why do you keep switching voices from one to the other?
+ Why do you keep switching voices from one to the other ?
+ Why do you keep switching voices from one to the other ?
`;
@@ -62,12 +62,16 @@ describe('voice-standard', () => {
const options = {
platform: 'google-assistant',
};
- const ssml = speech.toSSML(markdown, options);
+ const googleMarkdown = dedent`
+ Why do you keep switching voices (from one)[voice:"en-GB-Standard-A"] to (the other)[voice:"en-US-Neural2-F"]?
+ Why do you keep switching voices (from one)[voice:'en-GB-Standard-A'] to (the other)[voice:'en-US-Neural2-F']?
+ `;
+ const ssml = speech.toSSML(googleMarkdown, options);
const expected = dedent`
- Why do you keep switching voices from one to the other ?
- Why do you keep switching voices from one to the other ?
+ Why do you keep switching voices from one to the other ?
+ Why do you keep switching voices from one to the other ?
`;
@@ -147,12 +151,16 @@ describe('voice-standard lowercase name', () => {
const options = {
platform: 'google-assistant',
};
- const ssml = speech.toSSML(markdown, options);
+ const googleMarkdown = dedent`
+ Why do you keep switching voices (from one)[voice:"en-gb-standard-a"] to (the other)[voice:"en-us-neural2-f"]?
+ Why do you keep switching voices (from one)[voice:'en-gb-standard-a'] to (the other)[voice:'en-us-neural2-f']?
+ `;
+ const ssml = speech.toSSML(googleMarkdown, options);
const expected = dedent`
- Why do you keep switching voices from one to the other ?
- Why do you keep switching voices from one to the other ?
+ Why do you keep switching voices from one to the other ?
+ Why do you keep switching voices from one to the other ?
`;
@@ -204,7 +212,7 @@ describe('voice-standard lowercase name', () => {
});
});
-describe('voice-standard invalid name', () => {
+describe('voice-standard unknown name', () => {
const speech = new SpeechMarkdown();
const markdown = dedent`
@@ -220,8 +228,8 @@ describe('voice-standard invalid name', () => {
const expected = dedent`
- Why do you keep switching voices from one to the other ?
- Why do you keep switching voices from one to the other ?
+ Why do you keep switching voices from one to the other ?
+ Why do you keep switching voices from one to the other ?
`;
@@ -236,8 +244,8 @@ describe('voice-standard invalid name', () => {
const expected = dedent`
- Why do you keep switching voices from one to the other ?
- Why do you keep switching voices from one to the other ?
+ Why do you keep switching voices from one to the other?
+ Why do you keep switching voices from one to the other?
`;
@@ -321,8 +329,8 @@ describe('voice-standard device name', () => {
const expected = dedent`
- Why do you keep switching voices from one to the other ?
- Why do you keep switching voices from one to the other ?
+ Why do you keep switching voices from one to the other?
+ Why do you keep switching voices from one to the other?
`;
@@ -373,3 +381,24 @@ describe('voice-standard device name', () => {
expect(text).toBe(expected);
});
});
+
+describe('voice-standard new Alexa voices', () => {
+ const speech = new SpeechMarkdown();
+
+ test('converts to SSML - Amazon Alexa', () => {
+ const markdown = "Try the new (voice)[voice:'Lupe'].";
+
+ const options = {
+ platform: 'amazon-alexa',
+ };
+ const ssml = speech.toSSML(markdown, options);
+
+ const expected = dedent`
+
+ Try the new voice .
+
+ `;
+
+ expect(ssml).toBe(expected);
+ });
+});
diff --git a/tsconfig.json b/tsconfig.json
index 77ce280..cd27350 100644
--- a/tsconfig.json
+++ b/tsconfig.json
@@ -1,6 +1,6 @@
{
"compilerOptions": {
- "lib": [ "es2017" ],
+ "lib": ["es2017"],
"module": "commonjs",
"declaration": true,
"noImplicitAny": false,
@@ -16,9 +16,5 @@
"moduleResolution": "node",
"esModuleInterop": true
},
- "include": [
- "index.ts",
- "src/**/*",
- "test/**/*"
- ]
+ "include": ["index.ts", "src/**/*", "test/**/*"]
}