UNPKG

@voice-ping/cognitive-services-speech

Version:

VoicePing Cognitive Services Speech SDK for JavaScript forked from Microsoft

1 lines 4.47 kB
{"version":3,"sources":["src/sdk/AutoDetectSourceLanguageConfig.ts"],"names":[],"mappings":"AAKA,OAAO,EACH,kBAAkB,EAElB,oBAAoB,EACvB,MAAM,WAAW,CAAC;AAEnB;;;;GAIG;AACH,qBAAa,8BAA8B;IACvC,OAAO,CAAC,cAAc,CAAqB;IAE3C,OAAO;IAIP;;;;;;;;OAQG;WACW,aAAa,IAAI,8BAA8B;IAM7D;;;;;;;OAOG;WACW,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,8BAA8B;IAOhF;;;;;;;OAOG;WACW,yBAAyB,CAAC,OAAO,EAAE,oBAAoB,EAAE,GAAG,8BAA8B;IAkBxG;;;;;;OAMG;IACH,IAAW,UAAU,IAAI,kBAAkB,CAE1C;CAEJ","file":"AutoDetectSourceLanguageConfig.d.ts","sourcesContent":["// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\n\nimport { AutoDetectSourceLanguagesOpenRangeOptionName } from \"../common.speech/Exports\";\nimport {Contracts} from \"./Contracts\";\nimport {\n PropertyCollection,\n PropertyId,\n SourceLanguageConfig,\n} from \"./Exports\";\n\n/**\n * Language auto detect configuration.\n * @class AutoDetectSourceLanguageConfig\n * Added in version 1.13.0.\n */\nexport class AutoDetectSourceLanguageConfig {\n private privProperties: PropertyCollection;\n\n private constructor() {\n this.privProperties = new PropertyCollection();\n }\n\n /**\n * @member AutoDetectSourceLanguageConfig.fromOpenRange\n * @function\n * @public\n * Only [[SpeechSynthesizer]] supports source language auto detection from open range,\n * for [[Recognizer]], please use AutoDetectSourceLanguageConfig with specific source languages.\n * @return {AutoDetectSourceLanguageConfig} Instance of AutoDetectSourceLanguageConfig\n * @summary Creates an instance of the AutoDetectSourceLanguageConfig with open range.\n */\n public static fromOpenRange(): AutoDetectSourceLanguageConfig {\n const config = new AutoDetectSourceLanguageConfig();\n config.properties.setProperty(PropertyId.SpeechServiceConnection_AutoDetectSourceLanguages, AutoDetectSourceLanguagesOpenRangeOptionName);\n return config;\n }\n\n /**\n * @member AutoDetectSourceLanguageConfig.fromLanguages\n * @function\n * @public\n * @param {string[]} languages Comma-separated string of languages (eg. \"en-US,fr-FR\") to populate properties of config.\n * @return {AutoDetectSourceLanguageConfig} Instance of AutoDetectSourceLanguageConfig\n * @summary Creates an instance of the AutoDetectSourceLanguageConfig with given languages.\n */\n public static fromLanguages(languages: string[]): AutoDetectSourceLanguageConfig {\n Contracts.throwIfArrayEmptyOrWhitespace(languages, \"languages\");\n const config = new AutoDetectSourceLanguageConfig();\n config.properties.setProperty(PropertyId.SpeechServiceConnection_AutoDetectSourceLanguages, languages.join());\n return config;\n }\n\n /**\n * @member AutoDetectSourceLanguageConfig.fromSourceLanguageConfigs\n * @function\n * @public\n * @param {SourceLanguageConfig[]} configs SourceLanguageConfigs to populate properties of config.\n * @return {AutoDetectSourceLanguageConfig} Instance of AutoDetectSourceLanguageConfig\n * @summary Creates an instance of the AutoDetectSourceLanguageConfig with given SourceLanguageConfigs.\n */\n public static fromSourceLanguageConfigs(configs: SourceLanguageConfig[]): AutoDetectSourceLanguageConfig {\n if (configs.length < 1) {\n throw new Error(\"Expected non-empty SourceLanguageConfig array.\");\n }\n const autoConfig = new AutoDetectSourceLanguageConfig();\n const langs: string[] = [];\n configs.forEach((config: SourceLanguageConfig) => {\n langs.push(config.language);\n if (config.endpointId !== undefined && config.endpointId !== \"\") {\n const customProperty = config.language + PropertyId.SpeechServiceConnection_EndpointId.toString();\n autoConfig.properties.setProperty(customProperty, config.endpointId);\n }\n });\n autoConfig.properties.setProperty(PropertyId.SpeechServiceConnection_AutoDetectSourceLanguages, langs.join());\n\n return autoConfig;\n }\n\n /**\n * @member AutoDetectSourceLanguageConfig.prototype.properties\n * @function\n * @public\n * @return {PropertyCollection} Properties of the config.\n * @summary Gets a auto detected language config properties\n */\n public get properties(): PropertyCollection {\n return this.privProperties;\n }\n\n}\n"]}