@language-weaver/lw-sdk-js 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/CloudLanguageWeaverClient.d.ts +61 -0
- package/lib/CloudLanguageWeaverClient.js +514 -0
- package/lib/CloudLanguageWeaverClient.js.map +1 -0
- package/lib/EdgeLanguageWeaverClient.d.ts +60 -0
- package/lib/EdgeLanguageWeaverClient.js +580 -0
- package/lib/EdgeLanguageWeaverClient.js.map +1 -0
- package/lib/LanguageWeaverClient.d.ts +15 -0
- package/lib/LanguageWeaverClient.js +3 -0
- package/lib/LanguageWeaverClient.js.map +1 -0
- package/lib/SdkFactory.d.ts +9 -0
- package/lib/SdkFactory.js +56 -0
- package/lib/SdkFactory.js.map +1 -0
- package/lib/auth/LanguageWeaverAuthentication.d.ts +12 -0
- package/lib/auth/LanguageWeaverAuthentication.js +25 -0
- package/lib/auth/LanguageWeaverAuthentication.js.map +1 -0
- package/lib/auth/domain/SelfInformation.d.ts +8 -0
- package/lib/auth/domain/SelfInformation.js +29 -0
- package/lib/auth/domain/SelfInformation.js.map +1 -0
- package/lib/auth/domain/Token.d.ts +15 -0
- package/lib/auth/domain/Token.js +53 -0
- package/lib/auth/domain/Token.js.map +1 -0
- package/lib/auth/domain/UserSelfInformation.d.ts +38 -0
- package/lib/auth/domain/UserSelfInformation.js +129 -0
- package/lib/auth/domain/UserSelfInformation.js.map +1 -0
- package/lib/common/api/ErrorResponse.d.ts +9 -0
- package/lib/common/api/ErrorResponse.js +31 -0
- package/lib/common/api/ErrorResponse.js.map +1 -0
- package/lib/common/configurations/ClientConfiguration.d.ts +14 -0
- package/lib/common/configurations/ClientConfiguration.js +46 -0
- package/lib/common/configurations/ClientConfiguration.js.map +1 -0
- package/lib/common/configurations/CredentialsConfiguration.d.ts +9 -0
- package/lib/common/configurations/CredentialsConfiguration.js +35 -0
- package/lib/common/configurations/CredentialsConfiguration.js.map +1 -0
- package/lib/common/configurations/RetryConfiguration.d.ts +8 -0
- package/lib/common/configurations/RetryConfiguration.js +31 -0
- package/lib/common/configurations/RetryConfiguration.js.map +1 -0
- package/lib/common/configurations/TokenConfiguration.d.ts +10 -0
- package/lib/common/configurations/TokenConfiguration.js +29 -0
- package/lib/common/configurations/TokenConfiguration.js.map +1 -0
- package/lib/common/constants/EdgeFinalSubStatuses.d.ts +5 -0
- package/lib/common/constants/EdgeFinalSubStatuses.js +9 -0
- package/lib/common/constants/EdgeFinalSubStatuses.js.map +1 -0
- package/lib/common/constants/EdgeStatuses.d.ts +3 -0
- package/lib/common/constants/EdgeStatuses.js +7 -0
- package/lib/common/constants/EdgeStatuses.js.map +1 -0
- package/lib/common/constants/FileExtensions.d.ts +2 -0
- package/lib/common/constants/FileExtensions.js +52 -0
- package/lib/common/constants/FileExtensions.js.map +1 -0
- package/lib/common/constants/FormatToMimeType.d.ts +1 -0
- package/lib/common/constants/FormatToMimeType.js +33 -0
- package/lib/common/constants/FormatToMimeType.js.map +1 -0
- package/lib/common/constants/TranslationConstants.d.ts +62 -0
- package/lib/common/constants/TranslationConstants.js +69 -0
- package/lib/common/constants/TranslationConstants.js.map +1 -0
- package/lib/common/constants/languages/Iso639Mapping.d.ts +1 -0
- package/lib/common/constants/languages/Iso639Mapping.js +95 -0
- package/lib/common/constants/languages/Iso639Mapping.js.map +1 -0
- package/lib/common/exceptions/EdgeTranslationException.d.ts +3 -0
- package/lib/common/exceptions/EdgeTranslationException.js +17 -0
- package/lib/common/exceptions/EdgeTranslationException.js.map +1 -0
- package/lib/common/exceptions/TranslationException.d.ts +4 -0
- package/lib/common/exceptions/TranslationException.js +17 -0
- package/lib/common/exceptions/TranslationException.js.map +1 -0
- package/lib/common/requests/RestClient.d.ts +34 -0
- package/lib/common/requests/RestClient.js +331 -0
- package/lib/common/requests/RestClient.js.map +1 -0
- package/lib/common/requests/TraceRequestInfo.d.ts +9 -0
- package/lib/common/requests/TraceRequestInfo.js +20 -0
- package/lib/common/requests/TraceRequestInfo.js.map +1 -0
- package/lib/common/utils/HttpUtils.d.ts +5 -0
- package/lib/common/utils/HttpUtils.js +26 -0
- package/lib/common/utils/HttpUtils.js.map +1 -0
- package/lib/common/utils/Utils.d.ts +34 -0
- package/lib/common/utils/Utils.js +319 -0
- package/lib/common/utils/Utils.js.map +1 -0
- package/lib/index.d.ts +51 -0
- package/lib/index.js +99 -0
- package/lib/index.js.map +1 -0
- package/lib/translation/common/Format.d.ts +39 -0
- package/lib/translation/common/Format.js +52 -0
- package/lib/translation/common/Format.js.map +1 -0
- package/lib/translation/common/Product.d.ts +4 -0
- package/lib/translation/common/Product.js +9 -0
- package/lib/translation/common/Product.js.map +1 -0
- package/lib/translation/common/Regions.d.ts +4 -0
- package/lib/translation/common/Regions.js +9 -0
- package/lib/translation/common/Regions.js.map +1 -0
- package/lib/translation/common/Statuses.d.ts +6 -0
- package/lib/translation/common/Statuses.js +10 -0
- package/lib/translation/common/Statuses.js.map +1 -0
- package/lib/translation/translate/request/TranslateBatchFileRequest.d.ts +21 -0
- package/lib/translation/translate/request/TranslateBatchFileRequest.js +84 -0
- package/lib/translation/translate/request/TranslateBatchFileRequest.js.map +1 -0
- package/lib/translation/translate/request/TranslateFileRequest.d.ts +12 -0
- package/lib/translation/translate/request/TranslateFileRequest.js +68 -0
- package/lib/translation/translate/request/TranslateFileRequest.js.map +1 -0
- package/lib/translation/translate/request/TranslateRequest.d.ts +19 -0
- package/lib/translation/translate/request/TranslateRequest.js +67 -0
- package/lib/translation/translate/request/TranslateRequest.js.map +1 -0
- package/lib/translation/translate/request/TranslateTextRequest.d.ts +7 -0
- package/lib/translation/translate/request/TranslateTextRequest.js +46 -0
- package/lib/translation/translate/request/TranslateTextRequest.js.map +1 -0
- package/lib/translation/translate/request/cloud/CloudTranslateBatchFileRequest.d.ts +3 -0
- package/lib/translation/translate/request/cloud/CloudTranslateBatchFileRequest.js +30 -0
- package/lib/translation/translate/request/cloud/CloudTranslateBatchFileRequest.js.map +1 -0
- package/lib/translation/translate/request/cloud/CloudTranslateFileRequest.d.ts +3 -0
- package/lib/translation/translate/request/cloud/CloudTranslateFileRequest.js +30 -0
- package/lib/translation/translate/request/cloud/CloudTranslateFileRequest.js.map +1 -0
- package/lib/translation/translate/request/cloud/CloudTranslateTextRequest.d.ts +3 -0
- package/lib/translation/translate/request/cloud/CloudTranslateTextRequest.js +30 -0
- package/lib/translation/translate/request/cloud/CloudTranslateTextRequest.js.map +1 -0
- package/lib/translation/translate/request/edge/EdgeTranslateBatchFileRequest.d.ts +16 -0
- package/lib/translation/translate/request/edge/EdgeTranslateBatchFileRequest.js +70 -0
- package/lib/translation/translate/request/edge/EdgeTranslateBatchFileRequest.js.map +1 -0
- package/lib/translation/translate/request/edge/EdgeTranslateFileRequest.d.ts +16 -0
- package/lib/translation/translate/request/edge/EdgeTranslateFileRequest.js +70 -0
- package/lib/translation/translate/request/edge/EdgeTranslateFileRequest.js.map +1 -0
- package/lib/translation/translate/request/edge/EdgeTranslateTextRequest.d.ts +16 -0
- package/lib/translation/translate/request/edge/EdgeTranslateTextRequest.js +70 -0
- package/lib/translation/translate/request/edge/EdgeTranslateTextRequest.js.map +1 -0
- package/lib/translation/translate/response/AsyncTranslationResponse.d.ts +20 -0
- package/lib/translation/translate/response/AsyncTranslationResponse.js +69 -0
- package/lib/translation/translate/response/AsyncTranslationResponse.js.map +1 -0
- package/lib/translation/translate/response/DictionaryResponse.d.ts +11 -0
- package/lib/translation/translate/response/DictionaryResponse.js +39 -0
- package/lib/translation/translate/response/DictionaryResponse.js.map +1 -0
- package/lib/translation/translate/response/LanguagePair.d.ts +14 -0
- package/lib/translation/translate/response/LanguagePair.js +49 -0
- package/lib/translation/translate/response/LanguagePair.js.map +1 -0
- package/lib/translation/translate/response/StatusTranslationResponse.d.ts +19 -0
- package/lib/translation/translate/response/StatusTranslationResponse.js +59 -0
- package/lib/translation/translate/response/StatusTranslationResponse.js.map +1 -0
- package/lib/translation/translate/response/TranslationStatistics.d.ts +20 -0
- package/lib/translation/translate/response/TranslationStatistics.js +69 -0
- package/lib/translation/translate/response/TranslationStatistics.js.map +1 -0
- package/lib/translation/translate/response/cloud/CloudDictionaryResponse.d.ts +32 -0
- package/lib/translation/translate/response/cloud/CloudDictionaryResponse.js +110 -0
- package/lib/translation/translate/response/cloud/CloudDictionaryResponse.js.map +1 -0
- package/lib/translation/translate/response/cloud/CloudLanguagePair.d.ts +17 -0
- package/lib/translation/translate/response/cloud/CloudLanguagePair.js +59 -0
- package/lib/translation/translate/response/cloud/CloudLanguagePair.js.map +1 -0
- package/lib/translation/translate/response/edge/EdgeAsyncTranslationResponse.d.ts +5 -0
- package/lib/translation/translate/response/edge/EdgeAsyncTranslationResponse.js +19 -0
- package/lib/translation/translate/response/edge/EdgeAsyncTranslationResponse.js.map +1 -0
- package/lib/translation/translate/response/edge/EdgeDictionaryResponse.d.ts +11 -0
- package/lib/translation/translate/response/edge/EdgeDictionaryResponse.js +39 -0
- package/lib/translation/translate/response/edge/EdgeDictionaryResponse.js.map +1 -0
- package/lib/translation/translate/response/edge/EdgeLanguagePair.d.ts +9 -0
- package/lib/translation/translate/response/edge/EdgeLanguagePair.js +50 -0
- package/lib/translation/translate/response/edge/EdgeLanguagePair.js.map +1 -0
- package/lib/translation/translate/response/edge/EdgeStatusTranslationResponse.d.ts +26 -0
- package/lib/translation/translate/response/edge/EdgeStatusTranslationResponse.js +79 -0
- package/lib/translation/translate/response/edge/EdgeStatusTranslationResponse.js.map +1 -0
- package/lib/translation/translate/response/edge/MemberPair.d.ts +29 -0
- package/lib/translation/translate/response/edge/MemberPair.js +99 -0
- package/lib/translation/translate/response/edge/MemberPair.js.map +1 -0
- package/lib/translation/translate/response/edge/Profile.d.ts +26 -0
- package/lib/translation/translate/response/edge/Profile.js +89 -0
- package/lib/translation/translate/response/edge/Profile.js.map +1 -0
- package/lib/translation/translate/response/edge/Result.d.ts +32 -0
- package/lib/translation/translate/response/edge/Result.js +109 -0
- package/lib/translation/translate/response/edge/Result.js.map +1 -0
- package/lib/translation/translate/response/edge/Timestamps.d.ts +11 -0
- package/lib/translation/translate/response/edge/Timestamps.js +39 -0
- package/lib/translation/translate/response/edge/Timestamps.js.map +1 -0
- package/lib/translation/translate/result/DictionariesResult.d.ts +6 -0
- package/lib/translation/translate/result/DictionariesResult.js +19 -0
- package/lib/translation/translate/result/DictionariesResult.js.map +1 -0
- package/lib/translation/translate/result/LanguagePairsResult.d.ts +6 -0
- package/lib/translation/translate/result/LanguagePairsResult.js +19 -0
- package/lib/translation/translate/result/LanguagePairsResult.js.map +1 -0
- package/lib/translation/translate/result/TranslateTextResult.d.ts +5 -0
- package/lib/translation/translate/result/TranslateTextResult.js +19 -0
- package/lib/translation/translate/result/TranslateTextResult.js.map +1 -0
- package/lib/translation/translate/result/TranslationBatchFileResult.d.ts +6 -0
- package/lib/translation/translate/result/TranslationBatchFileResult.js +19 -0
- package/lib/translation/translate/result/TranslationBatchFileResult.js.map +1 -0
- package/lib/translation/translate/result/TranslationFileResult.d.ts +11 -0
- package/lib/translation/translate/result/TranslationFileResult.js +39 -0
- package/lib/translation/translate/result/TranslationFileResult.js.map +1 -0
- package/lib/translation/translate/result/cloud/CloudDictionariesResult.d.ts +18 -0
- package/lib/translation/translate/result/cloud/CloudDictionariesResult.js +59 -0
- package/lib/translation/translate/result/cloud/CloudDictionariesResult.js.map +1 -0
- package/lib/translation/translate/result/cloud/CloudLanguagePairsResult.d.ts +9 -0
- package/lib/translation/translate/result/cloud/CloudLanguagePairsResult.js +29 -0
- package/lib/translation/translate/result/cloud/CloudLanguagePairsResult.js.map +1 -0
- package/lib/translation/translate/result/cloud/CloudTranslationBatchFileResult.d.ts +3 -0
- package/lib/translation/translate/result/cloud/CloudTranslationBatchFileResult.js +30 -0
- package/lib/translation/translate/result/cloud/CloudTranslationBatchFileResult.js.map +1 -0
- package/lib/translation/translate/result/cloud/CloudTranslationFileResult.d.ts +26 -0
- package/lib/translation/translate/result/cloud/CloudTranslationFileResult.js +100 -0
- package/lib/translation/translate/result/cloud/CloudTranslationFileResult.js.map +1 -0
- package/lib/translation/translate/result/cloud/CloudTranslationTextResult.d.ts +28 -0
- package/lib/translation/translate/result/cloud/CloudTranslationTextResult.js +89 -0
- package/lib/translation/translate/result/cloud/CloudTranslationTextResult.js.map +1 -0
- package/lib/translation/translate/result/edge/EdgeDictionariesResult.d.ts +18 -0
- package/lib/translation/translate/result/edge/EdgeDictionariesResult.js +59 -0
- package/lib/translation/translate/result/edge/EdgeDictionariesResult.js.map +1 -0
- package/lib/translation/translate/result/edge/EdgeLanguagePairsResult.d.ts +6 -0
- package/lib/translation/translate/result/edge/EdgeLanguagePairsResult.js +20 -0
- package/lib/translation/translate/result/edge/EdgeLanguagePairsResult.js.map +1 -0
- package/lib/translation/translate/result/edge/EdgeTranslationBatchFileResult.d.ts +3 -0
- package/lib/translation/translate/result/edge/EdgeTranslationBatchFileResult.js +30 -0
- package/lib/translation/translate/result/edge/EdgeTranslationBatchFileResult.js.map +1 -0
- package/lib/translation/translate/result/edge/EdgeTranslationFileResult.d.ts +9 -0
- package/lib/translation/translate/result/edge/EdgeTranslationFileResult.js +50 -0
- package/lib/translation/translate/result/edge/EdgeTranslationFileResult.js.map +1 -0
- package/lib/translation/translate/result/edge/EdgeTranslationTextResult.d.ts +6 -0
- package/lib/translation/translate/result/edge/EdgeTranslationTextResult.js +40 -0
- package/lib/translation/translate/result/edge/EdgeTranslationTextResult.js.map +1 -0
- package/lib/translation/translate/utils/TranslateFileUtil.d.ts +8 -0
- package/lib/translation/translate/utils/TranslateFileUtil.js +266 -0
- package/lib/translation/translate/utils/TranslateFileUtil.js.map +1 -0
- package/lib/version.d.ts +1 -0
- package/lib/version.js +5 -0
- package/lib/version.js.map +1 -0
- package/package.json +45 -0
- package/readme.md +17 -0
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { LanguageWeaverClient } from './LanguageWeaverClient';
|
|
2
|
+
import ClientConfiguration from './common/configurations/ClientConfiguration';
|
|
3
|
+
import EdgeLanguagePairsResult from './translation/translate/result/edge/EdgeLanguagePairsResult';
|
|
4
|
+
import TranslateTextRequest from './translation/translate/request/TranslateTextRequest';
|
|
5
|
+
import EdgeTranslateTextRequest from './translation/translate/request/edge/EdgeTranslateTextRequest';
|
|
6
|
+
import EdgeTranslationTextResult from './translation/translate/result/edge/EdgeTranslationTextResult';
|
|
7
|
+
import TranslateTextResult from './translation/translate/result/TranslateTextResult';
|
|
8
|
+
import TokenConfiguration from './common/configurations/TokenConfiguration';
|
|
9
|
+
import TranslateFileRequest from './translation/translate/request/TranslateFileRequest';
|
|
10
|
+
import TranslationFileResult from './translation/translate/result/TranslationFileResult';
|
|
11
|
+
import EdgeTranslateFileRequest from './translation/translate/request/edge/EdgeTranslateFileRequest';
|
|
12
|
+
import EdgeTranslationFileResult from './translation/translate/result/edge/EdgeTranslationFileResult';
|
|
13
|
+
import LanguagePairsResult from './translation/translate/result/LanguagePairsResult';
|
|
14
|
+
import EdgeTranslateBatchFileRequest from './translation/translate/request/edge/EdgeTranslateBatchFileRequest';
|
|
15
|
+
import EdgeTranslationBatchFileResult from './translation/translate/result/edge/EdgeTranslationBatchFileResult';
|
|
16
|
+
import TranslateBatchFileRequest from './translation/translate/request/TranslateBatchFileRequest';
|
|
17
|
+
import TranslationBatchFileResult from './translation/translate/result/TranslationBatchFileResult';
|
|
18
|
+
import DictionariesResult from './translation/translate/result/DictionariesResult';
|
|
19
|
+
import EdgeDictionariesResult from './translation/translate/result/edge/EdgeDictionariesResult';
|
|
20
|
+
export default class EdgeLanguageWeaverClient implements LanguageWeaverClient {
|
|
21
|
+
private _clientConfiguration;
|
|
22
|
+
private _url;
|
|
23
|
+
private _overwriteUrl;
|
|
24
|
+
private _token;
|
|
25
|
+
private _client;
|
|
26
|
+
constructor();
|
|
27
|
+
withConfigurations(clientConfiguration: ClientConfiguration): EdgeLanguageWeaverClient;
|
|
28
|
+
withTokenConfigurations(tokenConfiguration: TokenConfiguration): EdgeLanguageWeaverClient;
|
|
29
|
+
build(): Promise<EdgeLanguageWeaverClient>;
|
|
30
|
+
get overwriteUrl(): string | undefined;
|
|
31
|
+
set overwriteUrl(value: string | undefined);
|
|
32
|
+
translateTextUsingEdgeParams(translateTextRequest: EdgeTranslateTextRequest): Promise<EdgeTranslationTextResult>;
|
|
33
|
+
translateFileUsingEdgeParams(translateFileRequest: EdgeTranslateFileRequest): Promise<EdgeTranslationFileResult>;
|
|
34
|
+
translateBatchFileUsingEdgeParams(translateBatchFileRequest: EdgeTranslateBatchFileRequest): Promise<EdgeTranslationBatchFileResult>;
|
|
35
|
+
translateText(translateTextRequest: TranslateTextRequest): Promise<TranslateTextResult>;
|
|
36
|
+
translateFile(translateFileRequest: TranslateFileRequest): Promise<TranslationFileResult>;
|
|
37
|
+
translateBatchFile(translateBatchFileRequest: TranslateBatchFileRequest): Promise<TranslationBatchFileResult>;
|
|
38
|
+
getLanguagePairs(): Promise<LanguagePairsResult>;
|
|
39
|
+
getEdgeLanguagePairs(): Promise<EdgeLanguagePairsResult>;
|
|
40
|
+
getDictionaries(page: number, perPage?: number): Promise<DictionariesResult>;
|
|
41
|
+
getEdgeDictionaries(page: number, perPage?: number): Promise<EdgeDictionariesResult>;
|
|
42
|
+
private getEdgeLanguagePairsPromise;
|
|
43
|
+
private translate;
|
|
44
|
+
private requestTranslateText;
|
|
45
|
+
private requestTranslateFile;
|
|
46
|
+
private handleStatusResponse;
|
|
47
|
+
private requestTranslateBatchFile;
|
|
48
|
+
private translateFileFromBatch;
|
|
49
|
+
private translateSyncText;
|
|
50
|
+
private translateAsyncText;
|
|
51
|
+
private getTextTranslationResponse;
|
|
52
|
+
private getFileTranslationResponse;
|
|
53
|
+
private retrieveTranslation;
|
|
54
|
+
private obtainFinalStatus;
|
|
55
|
+
private getEdgeTranslateTextRequest;
|
|
56
|
+
private hasToken;
|
|
57
|
+
private hasCredentialsConfiguration;
|
|
58
|
+
private setUrl;
|
|
59
|
+
private getLanguagePairForGivenData;
|
|
60
|
+
}
|
|
@@ -0,0 +1,580 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (_) try {
|
|
18
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
39
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
40
|
+
};
|
|
41
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
42
|
+
var ClientConfiguration_1 = __importDefault(require("./common/configurations/ClientConfiguration"));
|
|
43
|
+
var Token_1 = __importDefault(require("./auth/domain/Token"));
|
|
44
|
+
var Product_1 = require("./translation/common/Product");
|
|
45
|
+
var TranslationConstants_1 = require("./common/constants/TranslationConstants");
|
|
46
|
+
var RestClient_1 = __importDefault(require("./common/requests/RestClient"));
|
|
47
|
+
var EdgeTranslateTextRequest_1 = __importDefault(require("./translation/translate/request/edge/EdgeTranslateTextRequest"));
|
|
48
|
+
var EdgeTranslationTextResult_1 = __importDefault(require("./translation/translate/result/edge/EdgeTranslationTextResult"));
|
|
49
|
+
var EdgeStatuses_1 = require("./common/constants/EdgeStatuses");
|
|
50
|
+
var EdgeFinalSubStatuses_1 = require("./common/constants/EdgeFinalSubStatuses");
|
|
51
|
+
var EdgeTranslationException_1 = __importDefault(require("./common/exceptions/EdgeTranslationException"));
|
|
52
|
+
var Statuses_1 = require("./translation/common/Statuses");
|
|
53
|
+
var Utils_1 = __importDefault(require("./common/utils/Utils"));
|
|
54
|
+
var EdgeTranslateFileRequest_1 = __importDefault(require("./translation/translate/request/edge/EdgeTranslateFileRequest"));
|
|
55
|
+
var EdgeTranslationFileResult_1 = __importDefault(require("./translation/translate/result/edge/EdgeTranslationFileResult"));
|
|
56
|
+
var TranslateFileUtil_1 = require("./translation/translate/utils/TranslateFileUtil");
|
|
57
|
+
var LanguagePairsResult_1 = __importDefault(require("./translation/translate/result/LanguagePairsResult"));
|
|
58
|
+
var LanguagePair_1 = __importDefault(require("./translation/translate/response/LanguagePair"));
|
|
59
|
+
var EdgeTranslateBatchFileRequest_1 = __importDefault(require("./translation/translate/request/edge/EdgeTranslateBatchFileRequest"));
|
|
60
|
+
var EdgeTranslationBatchFileResult_1 = __importDefault(require("./translation/translate/result/edge/EdgeTranslationBatchFileResult"));
|
|
61
|
+
var DictionariesResult_1 = __importDefault(require("./translation/translate/result/DictionariesResult"));
|
|
62
|
+
var DictionaryResponse_1 = __importDefault(require("./translation/translate/response/DictionaryResponse"));
|
|
63
|
+
var FormatToMimeType_1 = require("./common/constants/FormatToMimeType");
|
|
64
|
+
var EdgeLanguageWeaverClient = /** @class */ (function () {
|
|
65
|
+
function EdgeLanguageWeaverClient() {
|
|
66
|
+
this._clientConfiguration = new ClientConfiguration_1.default();
|
|
67
|
+
this._url = TranslationConstants_1.EDGE_DEFAULT_URL;
|
|
68
|
+
this._client = new RestClient_1.default(this._url);
|
|
69
|
+
}
|
|
70
|
+
EdgeLanguageWeaverClient.prototype.withConfigurations = function (clientConfiguration) {
|
|
71
|
+
this._clientConfiguration = clientConfiguration;
|
|
72
|
+
this._clientConfiguration.product = Product_1.Product.EDGE;
|
|
73
|
+
return this;
|
|
74
|
+
};
|
|
75
|
+
EdgeLanguageWeaverClient.prototype.withTokenConfigurations = function (tokenConfiguration) {
|
|
76
|
+
this._token = tokenConfiguration.token;
|
|
77
|
+
return this;
|
|
78
|
+
};
|
|
79
|
+
EdgeLanguageWeaverClient.prototype.build = function () {
|
|
80
|
+
var _a;
|
|
81
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
82
|
+
var encoding;
|
|
83
|
+
return __generator(this, function (_b) {
|
|
84
|
+
this.setUrl();
|
|
85
|
+
if (!this.hasToken() && this.hasCredentialsConfiguration()) {
|
|
86
|
+
encoding = Utils_1.default.encodeStringToBase64(((_a = this._clientConfiguration) === null || _a === void 0 ? void 0 : _a.credentialsConfiguration.clientId) + ':');
|
|
87
|
+
this._token = new Token_1.default(encoding, undefined, 'Basic');
|
|
88
|
+
}
|
|
89
|
+
return [2 /*return*/, this];
|
|
90
|
+
});
|
|
91
|
+
});
|
|
92
|
+
};
|
|
93
|
+
Object.defineProperty(EdgeLanguageWeaverClient.prototype, "overwriteUrl", {
|
|
94
|
+
get: function () {
|
|
95
|
+
return this._overwriteUrl;
|
|
96
|
+
},
|
|
97
|
+
set: function (value) {
|
|
98
|
+
this._overwriteUrl = value;
|
|
99
|
+
},
|
|
100
|
+
enumerable: false,
|
|
101
|
+
configurable: true
|
|
102
|
+
});
|
|
103
|
+
EdgeLanguageWeaverClient.prototype.translateTextUsingEdgeParams = function (translateTextRequest) {
|
|
104
|
+
return this.translate(translateTextRequest);
|
|
105
|
+
};
|
|
106
|
+
EdgeLanguageWeaverClient.prototype.translateFileUsingEdgeParams = function (translateFileRequest) {
|
|
107
|
+
return this.requestTranslateFile(translateFileRequest);
|
|
108
|
+
};
|
|
109
|
+
EdgeLanguageWeaverClient.prototype.translateBatchFileUsingEdgeParams = function (translateBatchFileRequest) {
|
|
110
|
+
return this.requestTranslateBatchFile(translateBatchFileRequest);
|
|
111
|
+
};
|
|
112
|
+
EdgeLanguageWeaverClient.prototype.translateText = function (translateTextRequest) {
|
|
113
|
+
var _this = this;
|
|
114
|
+
var sourceLanguageId = translateTextRequest.sourceLanguageId, targetLanguageId = translateTextRequest.targetLanguageId, model = translateTextRequest.model;
|
|
115
|
+
if (!sourceLanguageId || !targetLanguageId || !model) {
|
|
116
|
+
return Promise.reject({ message: TranslationConstants_1.LANGUAGE_PAIR_NOT_FOUND_ERROR });
|
|
117
|
+
}
|
|
118
|
+
else {
|
|
119
|
+
return this.getLanguagePairForGivenData(sourceLanguageId, targetLanguageId, model)
|
|
120
|
+
.then(function (lp) {
|
|
121
|
+
var request = new EdgeTranslateTextRequest_1.default();
|
|
122
|
+
request.input = translateTextRequest.input;
|
|
123
|
+
request.languagePairId = lp.languagePairId;
|
|
124
|
+
request.inputFormat = translateTextRequest.inputFormat;
|
|
125
|
+
request.dictionaries = translateTextRequest.dictionaries;
|
|
126
|
+
return _this.translate(request);
|
|
127
|
+
})
|
|
128
|
+
.catch(function (error) { return Promise.reject(error); });
|
|
129
|
+
}
|
|
130
|
+
};
|
|
131
|
+
EdgeLanguageWeaverClient.prototype.translateFile = function (translateFileRequest) {
|
|
132
|
+
var _this = this;
|
|
133
|
+
var sourceLanguageId = translateFileRequest.sourceLanguageId, targetLanguageId = translateFileRequest.targetLanguageId, model = translateFileRequest.model;
|
|
134
|
+
if (!sourceLanguageId || !targetLanguageId || !model) {
|
|
135
|
+
return Promise.reject({ message: TranslationConstants_1.LANGUAGE_PAIR_NOT_FOUND_ERROR });
|
|
136
|
+
}
|
|
137
|
+
else {
|
|
138
|
+
return this.getLanguagePairForGivenData(sourceLanguageId, targetLanguageId, model)
|
|
139
|
+
.then(function (lp) {
|
|
140
|
+
var request = new EdgeTranslateFileRequest_1.default();
|
|
141
|
+
request.input = translateFileRequest.input;
|
|
142
|
+
request.outputDir = translateFileRequest.outputDir;
|
|
143
|
+
request.outputFile = translateFileRequest.outputFile;
|
|
144
|
+
request.languagePairId = lp.languagePairId;
|
|
145
|
+
request.dictionaries = translateFileRequest.dictionaries;
|
|
146
|
+
return _this.requestTranslateFile(request);
|
|
147
|
+
})
|
|
148
|
+
.catch(function (error) { return Promise.reject(error); });
|
|
149
|
+
}
|
|
150
|
+
};
|
|
151
|
+
EdgeLanguageWeaverClient.prototype.translateBatchFile = function (translateBatchFileRequest) {
|
|
152
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
153
|
+
var sourceLanguageId, targetLanguageId, model, edgeLanguagePair, request;
|
|
154
|
+
return __generator(this, function (_a) {
|
|
155
|
+
switch (_a.label) {
|
|
156
|
+
case 0:
|
|
157
|
+
sourceLanguageId = translateBatchFileRequest.sourceLanguageId, targetLanguageId = translateBatchFileRequest.targetLanguageId, model = translateBatchFileRequest.model;
|
|
158
|
+
if (!(!sourceLanguageId || !targetLanguageId || !model)) return [3 /*break*/, 1];
|
|
159
|
+
return [2 /*return*/, Promise.reject({ message: TranslationConstants_1.LANGUAGE_PAIR_NOT_FOUND_ERROR })];
|
|
160
|
+
case 1: return [4 /*yield*/, this.getLanguagePairForGivenData(sourceLanguageId, targetLanguageId, model)];
|
|
161
|
+
case 2:
|
|
162
|
+
edgeLanguagePair = _a.sent();
|
|
163
|
+
request = new EdgeTranslateBatchFileRequest_1.default();
|
|
164
|
+
request.input = translateBatchFileRequest.input;
|
|
165
|
+
request.outputDir = translateBatchFileRequest.outputDir;
|
|
166
|
+
request.dictionaries = translateBatchFileRequest.dictionaries;
|
|
167
|
+
request.languagePairId = edgeLanguagePair.languagePairId;
|
|
168
|
+
return [2 /*return*/, this.requestTranslateBatchFile(request)];
|
|
169
|
+
}
|
|
170
|
+
});
|
|
171
|
+
});
|
|
172
|
+
};
|
|
173
|
+
EdgeLanguageWeaverClient.prototype.getLanguagePairs = function () {
|
|
174
|
+
var _a;
|
|
175
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
176
|
+
var edgeResult, languagePairs_1, e_1;
|
|
177
|
+
return __generator(this, function (_b) {
|
|
178
|
+
switch (_b.label) {
|
|
179
|
+
case 0:
|
|
180
|
+
_b.trys.push([0, 2, , 3]);
|
|
181
|
+
return [4 /*yield*/, this.getEdgeLanguagePairs()];
|
|
182
|
+
case 1:
|
|
183
|
+
edgeResult = _b.sent();
|
|
184
|
+
languagePairs_1 = [];
|
|
185
|
+
(_a = edgeResult.languagePairs) === null || _a === void 0 ? void 0 : _a.forEach(function (lp) {
|
|
186
|
+
var languagePair = new LanguagePair_1.default();
|
|
187
|
+
languagePair.sourceLanguageId = lp.sourceLanguageId;
|
|
188
|
+
languagePair.targetLanguageId = lp.targetLanguageId;
|
|
189
|
+
languagePair.model = lp.domain;
|
|
190
|
+
languagePair.name = lp.languagePairId;
|
|
191
|
+
languagePairs_1.push(languagePair);
|
|
192
|
+
});
|
|
193
|
+
return [2 /*return*/, new Promise(function (resolve) {
|
|
194
|
+
var result = new LanguagePairsResult_1.default();
|
|
195
|
+
result.languagePairs = languagePairs_1;
|
|
196
|
+
resolve(result);
|
|
197
|
+
})];
|
|
198
|
+
case 2:
|
|
199
|
+
e_1 = _b.sent();
|
|
200
|
+
return [2 /*return*/, Promise.reject(e_1)];
|
|
201
|
+
case 3: return [2 /*return*/];
|
|
202
|
+
}
|
|
203
|
+
});
|
|
204
|
+
});
|
|
205
|
+
};
|
|
206
|
+
EdgeLanguageWeaverClient.prototype.getEdgeLanguagePairs = function () {
|
|
207
|
+
return this.getEdgeLanguagePairsPromise()
|
|
208
|
+
.then(function (response) {
|
|
209
|
+
return Promise.resolve(response);
|
|
210
|
+
})
|
|
211
|
+
.catch(function (e) {
|
|
212
|
+
return Promise.reject(e);
|
|
213
|
+
});
|
|
214
|
+
};
|
|
215
|
+
EdgeLanguageWeaverClient.prototype.getDictionaries = function (page, perPage) {
|
|
216
|
+
var _a;
|
|
217
|
+
if (perPage === void 0) { perPage = TranslationConstants_1.DEFAULT_DICTIONARIES_PAGE_SIZE; }
|
|
218
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
219
|
+
var edgeDictionariesResult, dictionaries_1, e_2;
|
|
220
|
+
return __generator(this, function (_b) {
|
|
221
|
+
switch (_b.label) {
|
|
222
|
+
case 0:
|
|
223
|
+
_b.trys.push([0, 2, , 3]);
|
|
224
|
+
return [4 /*yield*/, this.getEdgeDictionaries(page, perPage)];
|
|
225
|
+
case 1:
|
|
226
|
+
edgeDictionariesResult = _b.sent();
|
|
227
|
+
dictionaries_1 = [];
|
|
228
|
+
(_a = edgeDictionariesResult.dictionaries) === null || _a === void 0 ? void 0 : _a.forEach(function (dictionary) {
|
|
229
|
+
var dictionaryResponse = new DictionaryResponse_1.default();
|
|
230
|
+
dictionaryResponse.id = dictionary.dictionaryId;
|
|
231
|
+
dictionaryResponse.source = dictionary.sourceLanguageId;
|
|
232
|
+
dictionaryResponse.target = dictionary.targetLanguageId;
|
|
233
|
+
dictionaries_1.push(dictionaryResponse);
|
|
234
|
+
});
|
|
235
|
+
return [2 /*return*/, new Promise(function (resolve) {
|
|
236
|
+
var result = new DictionariesResult_1.default();
|
|
237
|
+
result.dictionaries = dictionaries_1;
|
|
238
|
+
resolve(result);
|
|
239
|
+
})];
|
|
240
|
+
case 2:
|
|
241
|
+
e_2 = _b.sent();
|
|
242
|
+
return [2 /*return*/, Promise.reject(e_2)];
|
|
243
|
+
case 3: return [2 /*return*/];
|
|
244
|
+
}
|
|
245
|
+
});
|
|
246
|
+
});
|
|
247
|
+
};
|
|
248
|
+
EdgeLanguageWeaverClient.prototype.getEdgeDictionaries = function (page, perPage) {
|
|
249
|
+
if (perPage === void 0) { perPage = TranslationConstants_1.DEFAULT_DICTIONARIES_PAGE_SIZE; }
|
|
250
|
+
return this._client
|
|
251
|
+
.requestJson(this._token, 'GET', TranslationConstants_1.EDGE_GET_ALL_DICTIONARIES_PATH, undefined, { page: page, perPage: perPage })
|
|
252
|
+
.then(function (response) {
|
|
253
|
+
return Promise.resolve(response);
|
|
254
|
+
})
|
|
255
|
+
.catch(function (e) {
|
|
256
|
+
return Promise.reject(e);
|
|
257
|
+
});
|
|
258
|
+
};
|
|
259
|
+
EdgeLanguageWeaverClient.prototype.getEdgeLanguagePairsPromise = function () {
|
|
260
|
+
return this._client.requestJson(this._token, 'GET', TranslationConstants_1.EDGE_LANGUAGE_PAIRS_PATH);
|
|
261
|
+
};
|
|
262
|
+
EdgeLanguageWeaverClient.prototype.translate = function (request) {
|
|
263
|
+
if (request.input && request.input.length > 1) {
|
|
264
|
+
return Promise.reject({
|
|
265
|
+
message: 'Array translation is supported only for CLOUD specific implementation. Please provide single input or use CloudLanguageWeaverClient.',
|
|
266
|
+
});
|
|
267
|
+
}
|
|
268
|
+
return this.requestTranslateText(request)
|
|
269
|
+
.then(function (response) {
|
|
270
|
+
var _a;
|
|
271
|
+
response.translation = ((_a = response.translation) === null || _a === void 0 ? void 0 : _a.length)
|
|
272
|
+
? Utils_1.default.decodeStringFromBase64(response.translation)
|
|
273
|
+
: '';
|
|
274
|
+
return Promise.resolve(response);
|
|
275
|
+
})
|
|
276
|
+
.catch(function (error) { return Promise.reject(error); });
|
|
277
|
+
};
|
|
278
|
+
EdgeLanguageWeaverClient.prototype.requestTranslateText = function (translateTextRequest) {
|
|
279
|
+
var encodedText = Utils_1.default.encodeStringToBase64(translateTextRequest.input[0]);
|
|
280
|
+
translateTextRequest.input = [encodedText];
|
|
281
|
+
if (Utils_1.default.getInputSize(translateTextRequest.input) < TranslationConstants_1.SYNC_SIZE_LIMIT) {
|
|
282
|
+
return this.translateSyncText(translateTextRequest);
|
|
283
|
+
}
|
|
284
|
+
else {
|
|
285
|
+
return this.translateAsyncText(translateTextRequest);
|
|
286
|
+
}
|
|
287
|
+
};
|
|
288
|
+
EdgeLanguageWeaverClient.prototype.requestTranslateFile = function (translateFileRequest) {
|
|
289
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
290
|
+
var validationError, fileSize, request, formData, translationPromise;
|
|
291
|
+
var _this = this;
|
|
292
|
+
return __generator(this, function (_a) {
|
|
293
|
+
switch (_a.label) {
|
|
294
|
+
case 0:
|
|
295
|
+
if (!translateFileRequest.languagePairId) {
|
|
296
|
+
return [2 /*return*/, new Promise(function (resolve, reject) { return reject({ message: TranslationConstants_1.MISSING_REQUIRED_LANGUAGE_PAIR_ID }); })];
|
|
297
|
+
}
|
|
298
|
+
validationError = (0, TranslateFileUtil_1.validateInputDataForFileTranslation)(translateFileRequest);
|
|
299
|
+
if (validationError) {
|
|
300
|
+
return [2 /*return*/, Promise.reject({ message: validationError })];
|
|
301
|
+
}
|
|
302
|
+
fileSize = translateFileRequest.input ? Utils_1.default.getFileSize(translateFileRequest.input) : 0;
|
|
303
|
+
return [4 /*yield*/, this.getEdgeTranslateTextRequest(translateFileRequest)];
|
|
304
|
+
case 1:
|
|
305
|
+
request = _a.sent();
|
|
306
|
+
formData = createBodyForTranslationTextRequest(request);
|
|
307
|
+
translationPromise = this._client.requestMultipart(this._token, 'POST', TranslationConstants_1.EDGE_ASYNC_TRANSLATION_PATH, formData);
|
|
308
|
+
return [2 /*return*/, translationPromise
|
|
309
|
+
.then(function (translationResponse) {
|
|
310
|
+
var statusPromise = _this.obtainFinalStatus(translationResponse.translationId, fileSize);
|
|
311
|
+
return _this.handleStatusResponse(translationResponse.translationId, statusPromise, function (statusResponse) {
|
|
312
|
+
var _a;
|
|
313
|
+
return _this.getFileTranslationResponse(translationResponse.translationId, translateFileRequest, request.outputFormat, (_a = statusResponse.profile) === null || _a === void 0 ? void 0 : _a.languagePairId);
|
|
314
|
+
});
|
|
315
|
+
})
|
|
316
|
+
.catch(function (error) { return Promise.reject(error); })];
|
|
317
|
+
}
|
|
318
|
+
});
|
|
319
|
+
});
|
|
320
|
+
};
|
|
321
|
+
EdgeLanguageWeaverClient.prototype.handleStatusResponse = function (translationId, statusPromise, successHandler) {
|
|
322
|
+
return statusPromise
|
|
323
|
+
.then(function (statusResponse) {
|
|
324
|
+
if (statusResponse.state === EdgeStatuses_1.DONE) {
|
|
325
|
+
switch (statusResponse.substate) {
|
|
326
|
+
case EdgeFinalSubStatuses_1.SUCCEEDED:
|
|
327
|
+
return Promise.resolve(successHandler(statusResponse));
|
|
328
|
+
case EdgeFinalSubStatuses_1.FAILED:
|
|
329
|
+
return Promise.reject(EdgeTranslationException_1.default.getTranslationException(statusResponse.substate, translationId, statusResponse.errorMessage));
|
|
330
|
+
case EdgeFinalSubStatuses_1.CANCELED:
|
|
331
|
+
return Promise.reject(EdgeTranslationException_1.default.getTranslationException(statusResponse.substate, translationId));
|
|
332
|
+
default:
|
|
333
|
+
return Promise.reject(EdgeTranslationException_1.default.getTranslationException(Statuses_1.UNK_TRANSLATION_STATUS, translationId));
|
|
334
|
+
}
|
|
335
|
+
}
|
|
336
|
+
else {
|
|
337
|
+
return Promise.reject(EdgeTranslationException_1.default.getTranslationException(statusResponse.substate, translationId, TranslationConstants_1.TRANSLATION_TIMEOUT));
|
|
338
|
+
}
|
|
339
|
+
})
|
|
340
|
+
.catch(function (error) { return Promise.reject(error); });
|
|
341
|
+
};
|
|
342
|
+
EdgeLanguageWeaverClient.prototype.requestTranslateBatchFile = function (translateBatchFileRequest) {
|
|
343
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
344
|
+
var validationError, files, promises;
|
|
345
|
+
var _this = this;
|
|
346
|
+
return __generator(this, function (_a) {
|
|
347
|
+
switch (_a.label) {
|
|
348
|
+
case 0:
|
|
349
|
+
if (!translateBatchFileRequest.languagePairId) {
|
|
350
|
+
return [2 /*return*/, new Promise(function (resolve, reject) { return reject({ message: TranslationConstants_1.MISSING_REQUIRED_LANGUAGE_PAIR_ID }); })];
|
|
351
|
+
}
|
|
352
|
+
return [4 /*yield*/, (0, TranslateFileUtil_1.validateInputDataForBatchFileTranslation)(translateBatchFileRequest)];
|
|
353
|
+
case 1:
|
|
354
|
+
validationError = _a.sent();
|
|
355
|
+
if (validationError) {
|
|
356
|
+
return [2 /*return*/, Promise.reject({ message: validationError })];
|
|
357
|
+
}
|
|
358
|
+
return [4 /*yield*/, (0, TranslateFileUtil_1.getInputFilesFromBatchFileRequest)(translateBatchFileRequest)];
|
|
359
|
+
case 2:
|
|
360
|
+
files = _a.sent();
|
|
361
|
+
promises = [];
|
|
362
|
+
files.forEach(function (file) {
|
|
363
|
+
promises.push(_this.translateFileFromBatch(file, translateBatchFileRequest));
|
|
364
|
+
});
|
|
365
|
+
return [2 /*return*/, Promise.allSettled(promises).then(function (results) {
|
|
366
|
+
var fileResults = [];
|
|
367
|
+
results.forEach(function (result) {
|
|
368
|
+
if (result.status === 'fulfilled') {
|
|
369
|
+
fileResults.push(result.value);
|
|
370
|
+
}
|
|
371
|
+
});
|
|
372
|
+
var translationResult = new EdgeTranslationBatchFileResult_1.default();
|
|
373
|
+
translationResult.translationFileResults = fileResults;
|
|
374
|
+
return Promise.resolve(translationResult);
|
|
375
|
+
})];
|
|
376
|
+
}
|
|
377
|
+
});
|
|
378
|
+
});
|
|
379
|
+
};
|
|
380
|
+
EdgeLanguageWeaverClient.prototype.translateFileFromBatch = function (file, translateBatchFileRequest) {
|
|
381
|
+
var inputFileFormat = Utils_1.default.getFormatForFile(file);
|
|
382
|
+
var request = new EdgeTranslateFileRequest_1.default();
|
|
383
|
+
request.languagePairId = translateBatchFileRequest.languagePairId;
|
|
384
|
+
request.outputFormat = translateBatchFileRequest.outputFormat;
|
|
385
|
+
request.title = translateBatchFileRequest.title;
|
|
386
|
+
request.dictionaries = translateBatchFileRequest.dictionaries;
|
|
387
|
+
request.encoding = translateBatchFileRequest.encoding;
|
|
388
|
+
request.inputFormat = inputFileFormat;
|
|
389
|
+
request.input = file;
|
|
390
|
+
if (!Utils_1.default.isBrowser() && typeof translateBatchFileRequest.outputDir === 'string') {
|
|
391
|
+
request.outputDir = translateBatchFileRequest.outputDir;
|
|
392
|
+
}
|
|
393
|
+
return this.requestTranslateFile(request);
|
|
394
|
+
};
|
|
395
|
+
EdgeLanguageWeaverClient.prototype.translateSyncText = function (translateTextRequest) {
|
|
396
|
+
var error = validateRequiredFields(translateTextRequest);
|
|
397
|
+
if (error) {
|
|
398
|
+
return new Promise(function (resolve, reject) { return reject(error); });
|
|
399
|
+
}
|
|
400
|
+
var formData = createBodyForTranslationTextRequest(translateTextRequest);
|
|
401
|
+
return this._client.requestMultipart(this._token, 'POST', TranslationConstants_1.EDGE_QUICK_TRANSLATION_PATH, formData);
|
|
402
|
+
};
|
|
403
|
+
EdgeLanguageWeaverClient.prototype.translateAsyncText = function (translateTextRequest) {
|
|
404
|
+
var _this = this;
|
|
405
|
+
var error = validateRequiredFields(translateTextRequest);
|
|
406
|
+
if (error) {
|
|
407
|
+
return new Promise(function (resolve, reject) { return reject(error); });
|
|
408
|
+
}
|
|
409
|
+
var formData = createBodyForTranslationTextRequest(translateTextRequest);
|
|
410
|
+
var translationPromise = this._client.requestMultipart(this._token, 'POST', TranslationConstants_1.EDGE_ASYNC_TRANSLATION_PATH, formData);
|
|
411
|
+
return translationPromise
|
|
412
|
+
.then(function (translationResponse) {
|
|
413
|
+
var statusPromise = _this.obtainFinalStatus(translationResponse.translationId, translateTextRequest.input[0].length);
|
|
414
|
+
return _this.handleStatusResponse(translationResponse.translationId, statusPromise, function () {
|
|
415
|
+
return _this.getTextTranslationResponse(translationResponse.translationId);
|
|
416
|
+
});
|
|
417
|
+
})
|
|
418
|
+
.catch(function (e) { return Promise.reject(e); });
|
|
419
|
+
};
|
|
420
|
+
EdgeLanguageWeaverClient.prototype.getTextTranslationResponse = function (requestId) {
|
|
421
|
+
var _this = this;
|
|
422
|
+
return new Promise(function (resolve, reject) {
|
|
423
|
+
_this.retrieveTranslation(requestId)
|
|
424
|
+
.then(function (contentResponse) {
|
|
425
|
+
var textTranslationResult = new EdgeTranslationTextResult_1.default();
|
|
426
|
+
textTranslationResult.translation = contentResponse.data;
|
|
427
|
+
resolve(textTranslationResult);
|
|
428
|
+
})
|
|
429
|
+
.catch(function (error) { return reject(error); });
|
|
430
|
+
});
|
|
431
|
+
};
|
|
432
|
+
EdgeLanguageWeaverClient.prototype.getFileTranslationResponse = function (requestId, translateFileRequest, outputFormat, languagePairId) {
|
|
433
|
+
var _this = this;
|
|
434
|
+
return new Promise(function (resolve, reject) {
|
|
435
|
+
_this.retrieveTranslation(requestId)
|
|
436
|
+
.then(function (contentResponse) { return __awaiter(_this, void 0, void 0, function () {
|
|
437
|
+
var edgeTranslationFileResult, fs;
|
|
438
|
+
return __generator(this, function (_a) {
|
|
439
|
+
switch (_a.label) {
|
|
440
|
+
case 0:
|
|
441
|
+
edgeTranslationFileResult = new EdgeTranslationFileResult_1.default();
|
|
442
|
+
edgeTranslationFileResult.languagePairId = languagePairId;
|
|
443
|
+
edgeTranslationFileResult.requestId = requestId;
|
|
444
|
+
edgeTranslationFileResult.fileContent = contentResponse.data;
|
|
445
|
+
if (Utils_1.default.isBrowser()) {
|
|
446
|
+
if (translateFileRequest.input instanceof File) {
|
|
447
|
+
edgeTranslationFileResult.filename = (0, TranslateFileUtil_1.getFileNameFromHeaders)(contentResponse, translateFileRequest);
|
|
448
|
+
edgeTranslationFileResult.mimeType =
|
|
449
|
+
outputFormat ||
|
|
450
|
+
FormatToMimeType_1.formatToMimeType[Utils_1.default.getFormatForFile(edgeTranslationFileResult.filename)];
|
|
451
|
+
edgeTranslationFileResult.fileContent = Utils_1.default.decodeStringFromBase64ToBlob(contentResponse.data);
|
|
452
|
+
}
|
|
453
|
+
}
|
|
454
|
+
if (!(translateFileRequest.outputDir && !Utils_1.default.isBrowser())) return [3 /*break*/, 2];
|
|
455
|
+
fs = require('fs');
|
|
456
|
+
return [4 /*yield*/, fs.promises.writeFile(Utils_1.default.getFullPath(translateFileRequest.outputDir, (0, TranslateFileUtil_1.getFileNameFromHeaders)(contentResponse, translateFileRequest)), contentResponse.data, { encoding: 'base64' }, function (error) { return reject(error); })];
|
|
457
|
+
case 1:
|
|
458
|
+
_a.sent();
|
|
459
|
+
_a.label = 2;
|
|
460
|
+
case 2:
|
|
461
|
+
resolve(edgeTranslationFileResult);
|
|
462
|
+
return [2 /*return*/];
|
|
463
|
+
}
|
|
464
|
+
});
|
|
465
|
+
}); })
|
|
466
|
+
.catch(function (error) {
|
|
467
|
+
reject(error);
|
|
468
|
+
});
|
|
469
|
+
});
|
|
470
|
+
};
|
|
471
|
+
EdgeLanguageWeaverClient.prototype.retrieveTranslation = function (requestId) {
|
|
472
|
+
return this._client.requestJson(this._token, 'GET', TranslationConstants_1.EDGE_ASYNC_TRANSLATION_PATH + '/' + requestId + '/download', undefined, undefined, { headersNeeded: true });
|
|
473
|
+
};
|
|
474
|
+
EdgeLanguageWeaverClient.prototype.obtainFinalStatus = function (requestId, fileSize) {
|
|
475
|
+
var self = this;
|
|
476
|
+
return new Promise(function (resolve, reject) {
|
|
477
|
+
var delay = fileSize < 500 ? TranslationConstants_1.SMALL_INPUT_GET_TRANSLATION_STATUS_DELAY : TranslationConstants_1.LARGE_INPUT_GET_TRANSLATION_STATUS_DELAY;
|
|
478
|
+
var startTime = new Date().getTime();
|
|
479
|
+
getStatus();
|
|
480
|
+
function getStatus() {
|
|
481
|
+
self._client
|
|
482
|
+
.requestJson(self._token, 'GET', TranslationConstants_1.EDGE_ASYNC_TRANSLATION_PATH + '/' + requestId)
|
|
483
|
+
.then(function (statusResponse) {
|
|
484
|
+
if ([EdgeStatuses_1.PREPARING, EdgeStatuses_1.IN_PROGRESS].includes(statusResponse.state) &&
|
|
485
|
+
new Date().getTime() - startTime < TranslationConstants_1.CHECK_STATUS_TIMEOUT) {
|
|
486
|
+
setTimeout(function () {
|
|
487
|
+
getStatus();
|
|
488
|
+
}, delay);
|
|
489
|
+
}
|
|
490
|
+
else {
|
|
491
|
+
resolve(statusResponse);
|
|
492
|
+
}
|
|
493
|
+
})
|
|
494
|
+
.catch(function (e) { return reject(e); });
|
|
495
|
+
}
|
|
496
|
+
});
|
|
497
|
+
};
|
|
498
|
+
EdgeLanguageWeaverClient.prototype.getEdgeTranslateTextRequest = function (translateFileRequest) {
|
|
499
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
500
|
+
var encodedFile, request;
|
|
501
|
+
return __generator(this, function (_a) {
|
|
502
|
+
switch (_a.label) {
|
|
503
|
+
case 0: return [4 /*yield*/, Utils_1.default.getEncodedFile(translateFileRequest.input)];
|
|
504
|
+
case 1:
|
|
505
|
+
encodedFile = _a.sent();
|
|
506
|
+
request = new EdgeTranslateTextRequest_1.default();
|
|
507
|
+
request.languagePairId = translateFileRequest.languagePairId;
|
|
508
|
+
request.dictionaries = translateFileRequest.dictionaries;
|
|
509
|
+
request.outputFormat = translateFileRequest.outputFormat;
|
|
510
|
+
request.inputFormat =
|
|
511
|
+
translateFileRequest.inputFormat || Utils_1.default.getFormatForFile(translateFileRequest.input || '');
|
|
512
|
+
request.title = translateFileRequest.title;
|
|
513
|
+
request.encoding = translateFileRequest.encoding;
|
|
514
|
+
request.addInput(encodedFile);
|
|
515
|
+
return [2 /*return*/, request];
|
|
516
|
+
}
|
|
517
|
+
});
|
|
518
|
+
});
|
|
519
|
+
};
|
|
520
|
+
EdgeLanguageWeaverClient.prototype.hasToken = function () {
|
|
521
|
+
return this._token && this._token.accessToken && this._token.tokenType;
|
|
522
|
+
};
|
|
523
|
+
EdgeLanguageWeaverClient.prototype.hasCredentialsConfiguration = function () {
|
|
524
|
+
return (this._clientConfiguration &&
|
|
525
|
+
this._clientConfiguration.credentialsConfiguration &&
|
|
526
|
+
this._clientConfiguration.credentialsConfiguration.clientId);
|
|
527
|
+
};
|
|
528
|
+
EdgeLanguageWeaverClient.prototype.setUrl = function () {
|
|
529
|
+
if (this._overwriteUrl) {
|
|
530
|
+
this._url = this._overwriteUrl;
|
|
531
|
+
}
|
|
532
|
+
else {
|
|
533
|
+
var overwriteUrl = Utils_1.default.getEdgeOverwriteUrlEnvVar();
|
|
534
|
+
if (overwriteUrl) {
|
|
535
|
+
this._url = overwriteUrl;
|
|
536
|
+
}
|
|
537
|
+
}
|
|
538
|
+
this._client.baseUrl = this._url;
|
|
539
|
+
};
|
|
540
|
+
EdgeLanguageWeaverClient.prototype.getLanguagePairForGivenData = function (source, target, model) {
|
|
541
|
+
return this.getEdgeLanguagePairsPromise().then(function (lps) {
|
|
542
|
+
var languagePair = lps.languagePairs.find(function (lp) { return lp.sourceLanguageId === source && lp.targetLanguageId === target && lp.domain === model; });
|
|
543
|
+
if (!languagePair) {
|
|
544
|
+
return Promise.reject({ message: TranslationConstants_1.LANGUAGE_PAIR_NOT_FOUND_ERROR });
|
|
545
|
+
}
|
|
546
|
+
return Promise.resolve(languagePair);
|
|
547
|
+
});
|
|
548
|
+
};
|
|
549
|
+
return EdgeLanguageWeaverClient;
|
|
550
|
+
}());
|
|
551
|
+
exports.default = EdgeLanguageWeaverClient;
|
|
552
|
+
function validateRequiredFields(translateTextRequest) {
|
|
553
|
+
if (!translateTextRequest.input || !translateTextRequest.input[0]) {
|
|
554
|
+
return TranslationConstants_1.INPUT + ' field is required';
|
|
555
|
+
}
|
|
556
|
+
}
|
|
557
|
+
function createBodyForTranslationTextRequest(translateTextRequest) {
|
|
558
|
+
var formData = Utils_1.default.getNewFormDataObject();
|
|
559
|
+
formData.append(TranslationConstants_1.INPUT, translateTextRequest.input[0]);
|
|
560
|
+
if (translateTextRequest.languagePairId) {
|
|
561
|
+
formData.append(TranslationConstants_1.LANGUAGE_PAIR_ID, translateTextRequest.languagePairId);
|
|
562
|
+
}
|
|
563
|
+
if (translateTextRequest.dictionaries && translateTextRequest.dictionaries.length > 0) {
|
|
564
|
+
formData.append(TranslationConstants_1.DICTIONARY_IDS, translateTextRequest.dictionaries.join(','));
|
|
565
|
+
}
|
|
566
|
+
if (translateTextRequest.inputFormat) {
|
|
567
|
+
formData.append(TranslationConstants_1.INPUT_FORMAT, FormatToMimeType_1.formatToMimeType[translateTextRequest.inputFormat]);
|
|
568
|
+
}
|
|
569
|
+
if (translateTextRequest.title) {
|
|
570
|
+
formData.append(TranslationConstants_1.TITLE, translateTextRequest.title);
|
|
571
|
+
}
|
|
572
|
+
if (translateTextRequest.outputFormat) {
|
|
573
|
+
formData.append(TranslationConstants_1.OUTPUT_FORMAT, FormatToMimeType_1.formatToMimeType[translateTextRequest.outputFormat]);
|
|
574
|
+
}
|
|
575
|
+
if (translateTextRequest.encoding) {
|
|
576
|
+
formData.append(TranslationConstants_1.ENCODING, translateTextRequest.encoding);
|
|
577
|
+
}
|
|
578
|
+
return formData;
|
|
579
|
+
}
|
|
580
|
+
//# sourceMappingURL=EdgeLanguageWeaverClient.js.map
|