microsoft-cognitiveservices-speech-sdk
Version:
Microsoft Cognitive Services Speech SDK for JavaScript
1 lines • 5.35 kB
Source Map (JSON)
{"version":3,"sources":["src/common.speech/ServiceMessages/TranslationPhrase.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAInF,MAAM,WAAW,kBAAkB;IAC/B,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,aAAa,CAAC;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,gBAAgB,CAAC;CACtC;AAED,qBAAa,iBAAkB,YAAW,kBAAkB;IACxD,OAAO,CAAC,qBAAqB,CAAqB;IAElD,OAAO;WASO,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,iBAAiB;WAI7D,uBAAuB,CAAC,mBAAmB,EAAE;QAAE,YAAY,EAAE,kBAAkB,CAAA;KAAE,EAAE,UAAU,EAAE,MAAM,GAAG,iBAAiB;IASvI,IAAW,iBAAiB,IAAI,iBAAiB,CAEhD;IAED,IAAW,MAAM,IAAI,MAAM,CAE1B;IAED,IAAW,QAAQ,IAAI,MAAM,CAE5B;IAED,IAAW,IAAI,IAAI,MAAM,GAAG,SAAS,CAEpC;IAED,IAAW,QAAQ,IAAI,MAAM,GAAG,SAAS,CAExC;IAED,IAAW,UAAU,IAAI,MAAM,GAAG,SAAS,CAE1C;IAED,IAAW,WAAW,IAAI,aAAa,GAAG,SAAS,CAElD;IAEM,MAAM,IAAI,MAAM;IAoBvB,OAAO,CAAC,oBAAoB;IAQ5B,OAAO,CAAC,oBAAoB;CAO/B","file":"TranslationPhrase.d.ts","sourcesContent":["// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT license.\r\n\r\nimport { Contracts } from \"../../sdk/Contracts.js\";\r\nimport { IPrimaryLanguage, ITranslations, RecognitionStatus } from \"../Exports.js\";\r\nimport { TranslationStatus } from \"../TranslationStatus.js\";\r\n\r\n// translation.phrase\r\nexport interface ITranslationPhrase {\r\n RecognitionStatus: RecognitionStatus;\r\n Offset: number;\r\n Duration: number;\r\n Translation?: ITranslations;\r\n Text?: string;\r\n DisplayText?: string;\r\n PrimaryLanguage?: IPrimaryLanguage;\r\n}\r\n\r\nexport class TranslationPhrase implements ITranslationPhrase {\r\n private privTranslationPhrase: ITranslationPhrase;\r\n\r\n private constructor(phrase: ITranslationPhrase, baseOffset: number) {\r\n this.privTranslationPhrase = phrase;\r\n this.privTranslationPhrase.Offset += baseOffset;\r\n this.privTranslationPhrase.RecognitionStatus = this.mapRecognitionStatus(this.privTranslationPhrase.RecognitionStatus);\r\n if (this.privTranslationPhrase.Translation !== undefined) {\r\n this.privTranslationPhrase.Translation.TranslationStatus = this.mapTranslationStatus(this.privTranslationPhrase.Translation.TranslationStatus);\r\n }\r\n }\r\n\r\n public static fromJSON(json: string, baseOffset: number): TranslationPhrase {\r\n return new TranslationPhrase(JSON.parse(json) as ITranslationPhrase, baseOffset);\r\n }\r\n\r\n public static fromTranslationResponse(translationResponse: { SpeechPhrase: ITranslationPhrase }, baseOffset: number): TranslationPhrase {\r\n Contracts.throwIfNullOrUndefined(translationResponse, \"translationResponse\");\r\n const phrase: ITranslationPhrase = translationResponse.SpeechPhrase;\r\n translationResponse.SpeechPhrase = undefined;\r\n phrase.Translation = (translationResponse as unknown as ITranslations);\r\n phrase.Text = phrase.DisplayText;\r\n return new TranslationPhrase(phrase, baseOffset);\r\n }\r\n\r\n public get RecognitionStatus(): RecognitionStatus {\r\n return this.privTranslationPhrase.RecognitionStatus;\r\n }\r\n\r\n public get Offset(): number {\r\n return this.privTranslationPhrase.Offset;\r\n }\r\n\r\n public get Duration(): number {\r\n return this.privTranslationPhrase.Duration;\r\n }\r\n\r\n public get Text(): string | undefined {\r\n return this.privTranslationPhrase.Text;\r\n }\r\n\r\n public get Language(): string | undefined {\r\n return this.privTranslationPhrase.PrimaryLanguage?.Language;\r\n }\r\n\r\n public get Confidence(): string | undefined {\r\n return this.privTranslationPhrase.PrimaryLanguage?.Confidence;\r\n }\r\n\r\n public get Translation(): ITranslations | undefined {\r\n return this.privTranslationPhrase.Translation;\r\n }\r\n\r\n public asJson(): string {\r\n const jsonObj = { ...this.privTranslationPhrase };\r\n\r\n // Convert the enum values to their string representations for serialization\r\n const serializedObj: any = {\r\n ...jsonObj,\r\n RecognitionStatus: RecognitionStatus[jsonObj.RecognitionStatus]\r\n };\r\n\r\n if (jsonObj.Translation) {\r\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\r\n serializedObj.Translation = {\r\n ...jsonObj.Translation,\r\n TranslationStatus: TranslationStatus[jsonObj.Translation.TranslationStatus]\r\n };\r\n }\r\n\r\n return JSON.stringify(serializedObj);\r\n }\r\n\r\n private mapRecognitionStatus(status: any): RecognitionStatus {\r\n if (typeof status === \"string\") {\r\n return RecognitionStatus[status as keyof typeof RecognitionStatus];\r\n } else if (typeof status === \"number\") {\r\n return status;\r\n }\r\n }\r\n\r\n private mapTranslationStatus(status: any): TranslationStatus {\r\n if (typeof status === \"string\") {\r\n return TranslationStatus[status as keyof typeof TranslationStatus];\r\n } else if (typeof status === \"number\") {\r\n return status;\r\n }\r\n }\r\n}\r\n"]}