{"version":3,"sources":["src/sdk/CancellationDetails.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAGH,iBAAiB,EACjB,qBAAqB,EACxB,MAAM,cAAc,CAAC;AAEtB;;;GAGG;AACH,qBAAa,mBAAoB,SAAQ,uBAAuB;IAE5D,OAAO;IAIP;;;;;;;OAOG;WACW,UAAU,CAAC,MAAM,EAAE,iBAAiB,GAAG,qBAAqB,GAAG,mBAAmB;CAgBnG","file":"CancellationDetails.d.ts","sourcesContent":["// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT license.\n\nimport { CancellationErrorCodePropertyName, EnumTranslation, SimpleSpeechPhrase } from \"../common.speech/Exports.js\";\nimport { CancellationDetailsBase } from \"./CancellationDetailsBase.js\";\nimport {\n    CancellationErrorCode,\n    CancellationReason,\n    RecognitionResult,\n    SpeechSynthesisResult\n} from \"./Exports.js\";\n\n/**\n * Contains detailed information about why a result was canceled.\n * @class CancellationDetails\n */\nexport class CancellationDetails extends CancellationDetailsBase {\n\n    private constructor(reason: CancellationReason, errorDetails: string, errorCode: CancellationErrorCode) {\n        super(reason, errorDetails, errorCode);\n    }\n\n    /**\n     * Creates an instance of CancellationDetails object for the canceled RecognitionResult.\n     * @member CancellationDetails.fromResult\n     * @function\n     * @public\n     * @param {RecognitionResult | SpeechSynthesisResult} result - The result that was canceled.\n     * @returns {CancellationDetails} The cancellation details object being created.\n     */\n    public static fromResult(result: RecognitionResult | SpeechSynthesisResult): CancellationDetails {\n        let reason = CancellationReason.Error;\n        let errorCode: CancellationErrorCode = CancellationErrorCode.NoError;\n\n        if (result instanceof RecognitionResult && !!result.json) {\n            const simpleSpeech: SimpleSpeechPhrase = SimpleSpeechPhrase.fromJSON(result.json, 0); // Offset fixups are already done.\n            reason = EnumTranslation.implTranslateCancelResult(simpleSpeech.RecognitionStatus);\n        }\n\n        if (!!result.properties) {\n            errorCode = CancellationErrorCode[result.properties.getProperty(CancellationErrorCodePropertyName, CancellationErrorCode[CancellationErrorCode.NoError]) as keyof typeof CancellationErrorCode];\n        }\n\n        return new CancellationDetails(reason, result.errorDetails || EnumTranslation.implTranslateErrorDetails(errorCode), errorCode);\n    }\n\n}\n"]}