@hahnpro/ms-speech-sdk
Version:
Microsoft Cognitive Services Speech SDK for JavaScript
1 lines • 5.13 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.\n// Licensed under the MIT license.\n\nimport { Contracts } from \"../../sdk/Contracts.js\";\nimport { IPrimaryLanguage, ITranslations, RecognitionStatus } from \"../Exports.js\";\nimport { TranslationStatus } from \"../TranslationStatus.js\";\n\n// translation.phrase\nexport interface ITranslationPhrase {\n RecognitionStatus: RecognitionStatus;\n Offset: number;\n Duration: number;\n Translation?: ITranslations;\n Text?: string;\n DisplayText?: string;\n PrimaryLanguage?: IPrimaryLanguage;\n}\n\nexport class TranslationPhrase implements ITranslationPhrase {\n private privTranslationPhrase: ITranslationPhrase;\n\n private constructor(phrase: ITranslationPhrase, baseOffset: number) {\n this.privTranslationPhrase = phrase;\n this.privTranslationPhrase.Offset += baseOffset;\n this.privTranslationPhrase.RecognitionStatus = this.mapRecognitionStatus(this.privTranslationPhrase.RecognitionStatus);\n if (this.privTranslationPhrase.Translation !== undefined) {\n this.privTranslationPhrase.Translation.TranslationStatus = this.mapTranslationStatus(this.privTranslationPhrase.Translation.TranslationStatus);\n }\n }\n\n public static fromJSON(json: string, baseOffset: number): TranslationPhrase {\n return new TranslationPhrase(JSON.parse(json) as ITranslationPhrase, baseOffset);\n }\n\n public static fromTranslationResponse(translationResponse: { SpeechPhrase: ITranslationPhrase }, baseOffset: number): TranslationPhrase {\n Contracts.throwIfNullOrUndefined(translationResponse, \"translationResponse\");\n const phrase: ITranslationPhrase = translationResponse.SpeechPhrase;\n translationResponse.SpeechPhrase = undefined;\n phrase.Translation = (translationResponse as unknown as ITranslations);\n phrase.Text = phrase.DisplayText;\n return new TranslationPhrase(phrase, baseOffset);\n }\n\n public get RecognitionStatus(): RecognitionStatus {\n return this.privTranslationPhrase.RecognitionStatus;\n }\n\n public get Offset(): number {\n return this.privTranslationPhrase.Offset;\n }\n\n public get Duration(): number {\n return this.privTranslationPhrase.Duration;\n }\n\n public get Text(): string | undefined {\n return this.privTranslationPhrase.Text;\n }\n\n public get Language(): string | undefined {\n return this.privTranslationPhrase.PrimaryLanguage?.Language;\n }\n\n public get Confidence(): string | undefined {\n return this.privTranslationPhrase.PrimaryLanguage?.Confidence;\n }\n\n public get Translation(): ITranslations | undefined {\n return this.privTranslationPhrase.Translation;\n }\n\n public asJson(): string {\n const jsonObj = { ...this.privTranslationPhrase };\n\n // Convert the enum values to their string representations for serialization\n const serializedObj: any = {\n ...jsonObj,\n RecognitionStatus: RecognitionStatus[jsonObj.RecognitionStatus]\n };\n\n if (jsonObj.Translation) {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n serializedObj.Translation = {\n ...jsonObj.Translation,\n TranslationStatus: TranslationStatus[jsonObj.Translation.TranslationStatus]\n };\n }\n\n return JSON.stringify(serializedObj);\n }\n\n private mapRecognitionStatus(status: any): RecognitionStatus {\n if (typeof status === \"string\") {\n return RecognitionStatus[status as keyof typeof RecognitionStatus];\n } else if (typeof status === \"number\") {\n return status;\n }\n }\n\n private mapTranslationStatus(status: any): TranslationStatus {\n if (typeof status === \"string\") {\n return TranslationStatus[status as keyof typeof TranslationStatus];\n } else if (typeof status === \"number\") {\n return status;\n }\n }\n}\n"]}