smartling-api-sdk-nodejs 3.2.2 → 3.3.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.
Files changed (150) hide show
  1. package/.env.example +13 -0
  2. package/api/base/base-api.ts +2 -1
  3. package/api/base/base-file-api.ts +8 -3
  4. package/api/glossaries/dto/custom-field-value-dto.ts +6 -0
  5. package/api/glossaries/dto/entry-request-translation-status-dto.ts +7 -0
  6. package/api/glossaries/dto/glossary-entries-count-dto.ts +5 -0
  7. package/api/glossaries/dto/glossary-entry-dto.ts +23 -0
  8. package/api/glossaries/dto/glossary-import-result-dto.ts +11 -0
  9. package/api/glossaries/dto/glossary-import-status-dto.ts +7 -0
  10. package/api/glossaries/dto/glossary-uids-dto.ts +3 -0
  11. package/api/glossaries/dto/import-entry-changes-dto.ts +6 -0
  12. package/api/glossaries/dto/import-entry-translation-changes-dto.ts +6 -0
  13. package/api/glossaries/dto/import-warning-dto.ts +4 -0
  14. package/api/glossaries/dto/label-dto.ts +4 -0
  15. package/api/glossaries/dto/locale-workflow-dto.ts +4 -0
  16. package/api/glossaries/dto/operation-dto.ts +3 -0
  17. package/api/glossaries/dto/translation-dto.ts +20 -0
  18. package/api/glossaries/dto/translation-request-status-dto.ts +5 -0
  19. package/api/glossaries/enums/import-file-media-type.ts +5 -0
  20. package/api/glossaries/enums/import-status.ts +6 -0
  21. package/api/glossaries/enums/index.ts +4 -0
  22. package/api/glossaries/enums/part-of-speech.ts +11 -0
  23. package/api/glossaries/enums/suggestion-status.ts +5 -0
  24. package/api/glossaries/index.ts +281 -0
  25. package/api/glossaries/params/archive-glossaries-parameters.ts +9 -0
  26. package/api/glossaries/params/authorize-entries-parameters.ts +37 -0
  27. package/api/glossaries/params/create-glossary-entry-parameters.ts +50 -0
  28. package/api/glossaries/params/create-glossary-parameters.ts +40 -0
  29. package/api/glossaries/params/create-label-parameters.ts +9 -0
  30. package/api/glossaries/params/entries-bulk-action-parameters.ts +149 -0
  31. package/api/glossaries/params/entries-bulk-labels-parameters.ts +123 -0
  32. package/api/glossaries/params/export-entries-parameters.ts +16 -48
  33. package/api/glossaries/params/initialize-import-parameters.ts +42 -0
  34. package/api/glossaries/params/search-glossary-counts-parameters.ts +41 -0
  35. package/api/glossaries/params/search-glossary-entries-parameters.ts +105 -0
  36. package/built/api/base/base-api.js +2 -1
  37. package/built/api/base/base-api.js.map +1 -1
  38. package/built/api/base/base-file-api.js +9 -3
  39. package/built/api/base/base-file-api.js.map +1 -1
  40. package/built/api/glossaries/dto/custom-field-value-dto.d.ts +6 -0
  41. package/built/api/glossaries/dto/custom-field-value-dto.js +3 -0
  42. package/built/api/glossaries/dto/custom-field-value-dto.js.map +1 -0
  43. package/built/api/glossaries/dto/entry-request-translation-status-dto.d.ts +6 -0
  44. package/built/api/glossaries/dto/entry-request-translation-status-dto.js +3 -0
  45. package/built/api/glossaries/dto/entry-request-translation-status-dto.js.map +1 -0
  46. package/built/api/glossaries/dto/glossary-entries-count-dto.d.ts +5 -0
  47. package/built/api/glossaries/dto/glossary-entries-count-dto.js +3 -0
  48. package/built/api/glossaries/dto/glossary-entries-count-dto.js.map +1 -0
  49. package/built/api/glossaries/dto/glossary-entry-dto.d.ts +22 -0
  50. package/built/api/glossaries/dto/glossary-entry-dto.js +3 -0
  51. package/built/api/glossaries/dto/glossary-entry-dto.js.map +1 -0
  52. package/built/api/glossaries/dto/glossary-import-result-dto.d.ts +10 -0
  53. package/built/api/glossaries/dto/glossary-import-result-dto.js +3 -0
  54. package/built/api/glossaries/dto/glossary-import-result-dto.js.map +1 -0
  55. package/built/api/glossaries/dto/glossary-import-status-dto.d.ts +6 -0
  56. package/built/api/glossaries/dto/glossary-import-status-dto.js +3 -0
  57. package/built/api/glossaries/dto/glossary-import-status-dto.js.map +1 -0
  58. package/built/api/glossaries/dto/glossary-uids-dto.d.ts +3 -0
  59. package/built/api/glossaries/dto/glossary-uids-dto.js +3 -0
  60. package/built/api/glossaries/dto/glossary-uids-dto.js.map +1 -0
  61. package/built/api/glossaries/dto/import-entry-changes-dto.d.ts +6 -0
  62. package/built/api/glossaries/dto/import-entry-changes-dto.js +3 -0
  63. package/built/api/glossaries/dto/import-entry-changes-dto.js.map +1 -0
  64. package/built/api/glossaries/dto/import-entry-translation-changes-dto.d.ts +6 -0
  65. package/built/api/glossaries/dto/import-entry-translation-changes-dto.js +3 -0
  66. package/built/api/glossaries/dto/import-entry-translation-changes-dto.js.map +1 -0
  67. package/built/api/glossaries/dto/import-warning-dto.d.ts +4 -0
  68. package/built/api/glossaries/dto/import-warning-dto.js +3 -0
  69. package/built/api/glossaries/dto/import-warning-dto.js.map +1 -0
  70. package/built/api/glossaries/dto/label-dto.d.ts +4 -0
  71. package/built/api/glossaries/dto/label-dto.js +3 -0
  72. package/built/api/glossaries/dto/label-dto.js.map +1 -0
  73. package/built/api/glossaries/dto/locale-workflow-dto.d.ts +4 -0
  74. package/built/api/glossaries/dto/locale-workflow-dto.js +3 -0
  75. package/built/api/glossaries/dto/locale-workflow-dto.js.map +1 -0
  76. package/built/api/glossaries/dto/operation-dto.d.ts +3 -0
  77. package/built/api/glossaries/dto/operation-dto.js +3 -0
  78. package/built/api/glossaries/dto/operation-dto.js.map +1 -0
  79. package/built/api/glossaries/dto/translation-dto.d.ts +19 -0
  80. package/built/api/glossaries/dto/translation-dto.js +3 -0
  81. package/built/api/glossaries/dto/translation-dto.js.map +1 -0
  82. package/built/api/glossaries/dto/translation-request-status-dto.d.ts +5 -0
  83. package/built/api/glossaries/dto/translation-request-status-dto.js +3 -0
  84. package/built/api/glossaries/dto/translation-request-status-dto.js.map +1 -0
  85. package/built/api/glossaries/enums/import-file-media-type.d.ts +5 -0
  86. package/built/api/glossaries/enums/import-file-media-type.js +10 -0
  87. package/built/api/glossaries/enums/import-file-media-type.js.map +1 -0
  88. package/built/api/glossaries/enums/import-status.d.ts +6 -0
  89. package/built/api/glossaries/enums/import-status.js +11 -0
  90. package/built/api/glossaries/enums/import-status.js.map +1 -0
  91. package/built/api/glossaries/enums/index.d.ts +4 -0
  92. package/built/api/glossaries/enums/index.js +9 -1
  93. package/built/api/glossaries/enums/index.js.map +1 -1
  94. package/built/api/glossaries/enums/part-of-speech.d.ts +11 -0
  95. package/built/api/glossaries/enums/part-of-speech.js +16 -0
  96. package/built/api/glossaries/enums/part-of-speech.js.map +1 -0
  97. package/built/api/glossaries/enums/suggestion-status.d.ts +5 -0
  98. package/built/api/glossaries/enums/suggestion-status.js +10 -0
  99. package/built/api/glossaries/enums/suggestion-status.js.map +1 -0
  100. package/built/api/glossaries/index.d.ts +39 -0
  101. package/built/api/glossaries/index.js +127 -0
  102. package/built/api/glossaries/index.js.map +1 -1
  103. package/built/api/glossaries/params/archive-glossaries-parameters.d.ts +4 -0
  104. package/built/api/glossaries/params/archive-glossaries-parameters.js +12 -0
  105. package/built/api/glossaries/params/archive-glossaries-parameters.js.map +1 -0
  106. package/built/api/glossaries/params/authorize-entries-parameters.d.ts +10 -0
  107. package/built/api/glossaries/params/authorize-entries-parameters.js +28 -0
  108. package/built/api/glossaries/params/authorize-entries-parameters.js.map +1 -0
  109. package/built/api/glossaries/params/create-glossary-entry-parameters.d.ts +13 -0
  110. package/built/api/glossaries/params/create-glossary-entry-parameters.js +36 -0
  111. package/built/api/glossaries/params/create-glossary-entry-parameters.js.map +1 -0
  112. package/built/api/glossaries/params/create-glossary-parameters.d.ts +10 -0
  113. package/built/api/glossaries/params/create-glossary-parameters.js +32 -0
  114. package/built/api/glossaries/params/create-glossary-parameters.js.map +1 -0
  115. package/built/api/glossaries/params/create-label-parameters.d.ts +4 -0
  116. package/built/api/glossaries/params/create-label-parameters.js +12 -0
  117. package/built/api/glossaries/params/create-label-parameters.js.map +1 -0
  118. package/built/api/glossaries/params/entries-bulk-action-parameters.d.ts +28 -0
  119. package/built/api/glossaries/params/entries-bulk-action-parameters.js +112 -0
  120. package/built/api/glossaries/params/entries-bulk-action-parameters.js.map +1 -0
  121. package/built/api/glossaries/params/entries-bulk-labels-parameters.d.ts +29 -0
  122. package/built/api/glossaries/params/entries-bulk-labels-parameters.js +84 -0
  123. package/built/api/glossaries/params/entries-bulk-labels-parameters.js.map +1 -0
  124. package/built/api/glossaries/params/export-entries-parameters.js +16 -48
  125. package/built/api/glossaries/params/export-entries-parameters.js.map +1 -1
  126. package/built/api/glossaries/params/initialize-import-parameters.d.ts +12 -0
  127. package/built/api/glossaries/params/initialize-import-parameters.js +60 -0
  128. package/built/api/glossaries/params/initialize-import-parameters.js.map +1 -0
  129. package/built/api/glossaries/params/search-glossary-counts-parameters.d.ts +11 -0
  130. package/built/api/glossaries/params/search-glossary-counts-parameters.js +32 -0
  131. package/built/api/glossaries/params/search-glossary-counts-parameters.js.map +1 -0
  132. package/built/api/glossaries/params/search-glossary-entries-parameters.d.ts +25 -0
  133. package/built/api/glossaries/params/search-glossary-entries-parameters.js +72 -0
  134. package/built/api/glossaries/params/search-glossary-entries-parameters.js.map +1 -0
  135. package/built/index.d.ts +29 -0
  136. package/built/index.js +29 -0
  137. package/built/index.js.map +1 -1
  138. package/built/package.json +5 -3
  139. package/built/test/base-file.spec.js +9 -0
  140. package/built/test/base-file.spec.js.map +1 -1
  141. package/built/test/glossaries.spec.js +404 -0
  142. package/built/test/glossaries.spec.js.map +1 -1
  143. package/built/test/integration/glossaries.spec.d.ts +1 -0
  144. package/built/test/integration/glossaries.spec.js +222 -0
  145. package/built/test/integration/glossaries.spec.js.map +1 -0
  146. package/index.ts +29 -0
  147. package/package.json +5 -3
  148. package/test/base-file.spec.ts +14 -0
  149. package/test/glossaries.spec.ts +559 -0
  150. package/test/integration/glossaries.spec.ts +358 -0
@@ -0,0 +1,222 @@
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 __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ const dotenv_1 = __importDefault(require("dotenv"));
16
+ const assert_1 = __importDefault(require("assert"));
17
+ const index_1 = require("../../api/builder/index");
18
+ const index_2 = require("../../api/glossaries/index");
19
+ const create_glossary_parameters_1 = require("../../api/glossaries/params/create-glossary-parameters");
20
+ const archive_glossaries_parameters_1 = require("../../api/glossaries/params/archive-glossaries-parameters");
21
+ const search_glossary_counts_parameters_1 = require("../../api/glossaries/params/search-glossary-counts-parameters");
22
+ const search_glossaries_parameters_1 = require("../../api/glossaries/params/search-glossaries-parameters");
23
+ const create_glossary_entry_parameters_1 = require("../../api/glossaries/params/create-glossary-entry-parameters");
24
+ const search_glossary_entries_parameters_1 = require("../../api/glossaries/params/search-glossary-entries-parameters");
25
+ const entries_bulk_action_parameters_1 = require("../../api/glossaries/params/entries-bulk-action-parameters");
26
+ const entries_bulk_labels_parameters_1 = require("../../api/glossaries/params/entries-bulk-labels-parameters");
27
+ const create_label_parameters_1 = require("../../api/glossaries/params/create-label-parameters");
28
+ const initialize_import_parameters_1 = require("../../api/glossaries/params/initialize-import-parameters");
29
+ const export_entries_parameters_1 = require("../../api/glossaries/params/export-entries-parameters");
30
+ const import_file_media_type_1 = require("../../api/glossaries/enums/import-file-media-type");
31
+ const export_format_1 = require("../../api/glossaries/enums/export-format");
32
+ dotenv_1.default.config();
33
+ const baseSmartlingApiUrl = process.env.SMARTLING_API_BASE_URL || "https://api.smartling.com";
34
+ const accountUid = process.env.SMARTLING_ACCOUNT_UID;
35
+ const userId = process.env.SMARTLING_USER_ID;
36
+ const userSecret = process.env.SMARTLING_USER_SECRET;
37
+ const hasCredentials = Boolean(accountUid && userId && userSecret);
38
+ const logResponsesEnabled = process.env.SMARTLING_LOG_RESPONSES === "true";
39
+ function logResponse(label, response) {
40
+ if (!logResponsesEnabled) {
41
+ return;
42
+ }
43
+ console.log(`\n--- ${label} ---\n${JSON.stringify(response, null, 2)}`);
44
+ }
45
+ describe("SmartlingGlossariesApi integration tests.", function integrationSuite() {
46
+ this.timeout(60000);
47
+ let api;
48
+ let glossaryUid;
49
+ let entryUid;
50
+ let labelUid;
51
+ before(function skipWithoutCredentials() {
52
+ if (!hasCredentials) {
53
+ console.log("Skipping Glossaries integration tests: set SMARTLING_ACCOUNT_UID, SMARTLING_USER_ID, SMARTLING_USER_SECRET in .env");
54
+ this.skip();
55
+ }
56
+ api = new index_1.SmartlingApiClientBuilder()
57
+ .setBaseSmartlingApiUrl(baseSmartlingApiUrl)
58
+ .authWithUserIdAndUserSecret(userId, userSecret)
59
+ .build(index_2.SmartlingGlossariesApi);
60
+ });
61
+ before(() => __awaiter(this, void 0, void 0, function* () {
62
+ const created = yield api.createGlossary(accountUid, new create_glossary_parameters_1.CreateGlossaryParameters()
63
+ .setGlossaryName(`Integration test glossary ${Date.now()}`)
64
+ .setLocaleIds(["en-US", "fr-FR"]));
65
+ logResponse("createGlossary", created);
66
+ ({ glossaryUid } = created);
67
+ }));
68
+ after(() => __awaiter(this, void 0, void 0, function* () {
69
+ if (glossaryUid) {
70
+ const archived = yield api.archiveGlossaries(accountUid, new archive_glossaries_parameters_1.ArchiveGlossariesParameters().setGlossaryUids([glossaryUid]));
71
+ logResponse("archiveGlossaries (cleanup)", archived);
72
+ }
73
+ }));
74
+ it("gets the created glossary", () => __awaiter(this, void 0, void 0, function* () {
75
+ const glossary = yield api.getGlossary(accountUid, glossaryUid);
76
+ logResponse("getGlossary", glossary);
77
+ assert_1.default.equal(glossary.glossaryUid, glossaryUid);
78
+ }));
79
+ it("updates the glossary", () => __awaiter(this, void 0, void 0, function* () {
80
+ const updatedName = `Integration test glossary ${Date.now()} (updated)`;
81
+ const updated = yield api.updateGlossary(accountUid, glossaryUid, new create_glossary_parameters_1.CreateGlossaryParameters()
82
+ .setGlossaryName(updatedName)
83
+ .setLocaleIds(["en-US", "fr-FR"]));
84
+ logResponse("updateGlossary", updated);
85
+ assert_1.default.equal(updated.glossaryUid, glossaryUid);
86
+ assert_1.default.equal(updated.glossaryName, updatedName);
87
+ assert_1.default.equal(updated.localeIds.length, 2);
88
+ assert_1.default.ok(updated.localeIds.includes("en-US"));
89
+ assert_1.default.ok(updated.localeIds.includes("fr-FR"));
90
+ }));
91
+ it("archives and restores the glossary", () => __awaiter(this, void 0, void 0, function* () {
92
+ const archived = yield api.archiveGlossaries(accountUid, new archive_glossaries_parameters_1.ArchiveGlossariesParameters().setGlossaryUids([glossaryUid]));
93
+ logResponse("archiveGlossaries", archived);
94
+ assert_1.default.ok(archived.glossaryUids.includes(glossaryUid));
95
+ const restored = yield api.restoreGlossaries(accountUid, new archive_glossaries_parameters_1.ArchiveGlossariesParameters().setGlossaryUids([glossaryUid]));
96
+ logResponse("restoreGlossaries", restored);
97
+ assert_1.default.ok(restored.glossaryUids.includes(glossaryUid));
98
+ }));
99
+ it("searches glossaries", () => __awaiter(this, void 0, void 0, function* () {
100
+ const result = yield api.searchGlossaries(accountUid, new search_glossaries_parameters_1.SearchGlossariesParameters().setGlossaryUids([glossaryUid]));
101
+ logResponse("searchGlossaries", result);
102
+ assert_1.default.equal(result.items.length, 1);
103
+ }));
104
+ it("searches glossaries with entries counts", () => __awaiter(this, void 0, void 0, function* () {
105
+ const result = yield api.searchGlossariesWithEntriesCounts(accountUid, new search_glossary_counts_parameters_1.SearchGlossaryCountsParameters().setGlossaryUids([glossaryUid]));
106
+ logResponse("searchGlossariesWithEntriesCounts", result);
107
+ assert_1.default.equal(result.items.length, 1);
108
+ }));
109
+ it("creates a glossary entry", () => __awaiter(this, void 0, void 0, function* () {
110
+ const entry = yield api.createGlossaryEntry(accountUid, glossaryUid, new create_glossary_entry_parameters_1.CreateGlossaryEntryParameters()
111
+ .setDefinition("Integration test term")
112
+ .setTranslations([{ localeId: "fr-FR", term: "Terme de test" }]));
113
+ logResponse("createGlossaryEntry", entry);
114
+ ({ entryUid } = entry);
115
+ assert_1.default.ok(entryUid);
116
+ }));
117
+ it("reads the created glossary entry", () => __awaiter(this, void 0, void 0, function* () {
118
+ const entry = yield api.readGlossaryEntry(accountUid, glossaryUid, entryUid);
119
+ logResponse("readGlossaryEntry", entry);
120
+ assert_1.default.equal(entry.entryUid, entryUid);
121
+ }));
122
+ it("updates the glossary entry", () => __awaiter(this, void 0, void 0, function* () {
123
+ const updatedDefinition = "Integration test term (updated)";
124
+ const updatedTerm = "Terme de test (modifie)";
125
+ const entry = yield api.updateGlossaryEntry(accountUid, glossaryUid, entryUid, new create_glossary_entry_parameters_1.CreateGlossaryEntryParameters()
126
+ .setDefinition(updatedDefinition)
127
+ .setTranslations([{ localeId: "fr-FR", term: updatedTerm }]));
128
+ logResponse("updateGlossaryEntry", entry);
129
+ assert_1.default.equal(entry.entryUid, entryUid);
130
+ assert_1.default.equal(entry.definition, updatedDefinition);
131
+ const frTranslation = entry.translations.find((translation) => translation.localeId === "fr-FR");
132
+ assert_1.default.ok(frTranslation);
133
+ assert_1.default.equal(frTranslation.term, updatedTerm);
134
+ }));
135
+ it("searches glossary entries", () => __awaiter(this, void 0, void 0, function* () {
136
+ const result = yield api.searchGlossaryEntries(accountUid, glossaryUid, new search_glossary_entries_parameters_1.SearchGlossaryEntriesParameters().setEntryUids([entryUid]));
137
+ logResponse("searchGlossaryEntries", result);
138
+ assert_1.default.equal(result.items.length, 1);
139
+ }));
140
+ it("creates and reads back a label", () => __awaiter(this, void 0, void 0, function* () {
141
+ const label = yield api.createGlossaryLabel(accountUid, new create_label_parameters_1.CreateLabelParameters().setLabelText(`Integration label ${Date.now()}`));
142
+ logResponse("createGlossaryLabel", label);
143
+ ({ labelUid } = label);
144
+ const updatedLabelText = `Integration label ${Date.now()} (updated)`;
145
+ const updatedLabel = yield api.updateGlossaryLabel(accountUid, labelUid, new create_label_parameters_1.CreateLabelParameters().setLabelText(updatedLabelText));
146
+ logResponse("updateGlossaryLabel", updatedLabel);
147
+ assert_1.default.equal(updatedLabel.labelUid, labelUid);
148
+ assert_1.default.equal(updatedLabel.labelText, updatedLabelText);
149
+ const allLabels = yield api.readAllGlossaryLabels(accountUid);
150
+ logResponse("readAllGlossaryLabels", allLabels);
151
+ const persistedLabel = allLabels.items.find((label2) => label2.labelUid === labelUid);
152
+ assert_1.default.ok(persistedLabel);
153
+ assert_1.default.equal(persistedLabel.labelText, updatedLabelText);
154
+ }));
155
+ it("adds and removes a label on the glossary entry", () => __awaiter(this, void 0, void 0, function* () {
156
+ const addResult = yield api.addLabelsToGlossaryEntries(accountUid, glossaryUid, new entries_bulk_labels_parameters_1.EntriesBulkLabelsParameters()
157
+ .setFilterEntryUids([entryUid])
158
+ .setLabelUids([labelUid]));
159
+ logResponse("addLabelsToGlossaryEntries", addResult);
160
+ assert_1.default.ok(addResult.operationUid);
161
+ const removeResult = yield api.removeLabelsFromGlossaryEntries(accountUid, glossaryUid, new entries_bulk_labels_parameters_1.EntriesBulkLabelsParameters()
162
+ .setFilterEntryUids([entryUid])
163
+ .setLabelUids([labelUid]));
164
+ logResponse("removeLabelsFromGlossaryEntries", removeResult);
165
+ assert_1.default.ok(removeResult.operationUid);
166
+ }));
167
+ it("deletes the label", () => __awaiter(this, void 0, void 0, function* () {
168
+ yield api.deleteGlossaryLabel(accountUid, labelUid);
169
+ }));
170
+ it("archives and restores the glossary entry", () => __awaiter(this, void 0, void 0, function* () {
171
+ const archiveResult = yield api.archiveGlossaryEntries(accountUid, glossaryUid, new entries_bulk_action_parameters_1.EntriesBulkActionParameters().setFilterEntryUids([entryUid]));
172
+ logResponse("archiveGlossaryEntries", archiveResult);
173
+ assert_1.default.ok(archiveResult.operationUid);
174
+ const restoreResult = yield api.restoreGlossaryEntries(accountUid, glossaryUid, new entries_bulk_action_parameters_1.EntriesBulkActionParameters().setFilterEntryUids([entryUid]));
175
+ logResponse("restoreGlossaryEntries", restoreResult);
176
+ assert_1.default.ok(restoreResult.operationUid);
177
+ }));
178
+ it("exports glossary entries", () => __awaiter(this, void 0, void 0, function* () {
179
+ const exported = yield api.exportGlossaryEntries(accountUid, glossaryUid, new export_entries_parameters_1.ExportEntriesParameters().setFormat(export_format_1.ExportFormat.CSV).setLocaleIds(["fr-FR"]));
180
+ logResponse("exportGlossaryEntries (length)", exported.length);
181
+ assert_1.default.ok(exported.length > 0);
182
+ }));
183
+ it("initializes, checks, and confirms a glossary import", () => __awaiter(this, void 0, void 0, function* () {
184
+ const localeColumnSuffix = "French (France) [fr-FR] fr-FR";
185
+ const importHeader = [
186
+ "ID", "Definition", "Part Of Speech", "Label Names", "Created By", "Last Modified By",
187
+ "Created At", "Last Modified At", "Archived", "MT-suitable", "Suggestion-status",
188
+ `Term ${localeColumnSuffix}`,
189
+ `Linguistic Variations ${localeColumnSuffix}`,
190
+ `Notes ${localeColumnSuffix}`,
191
+ `Case Sensitive ${localeColumnSuffix}`,
192
+ `Exact Match ${localeColumnSuffix}`,
193
+ `Do Not Translate ${localeColumnSuffix}`,
194
+ `Disabled ${localeColumnSuffix}`,
195
+ `Last Modified By ${localeColumnSuffix}`
196
+ ];
197
+ const importRow = new Array(importHeader.length).fill("");
198
+ importRow[1] = "Imported term";
199
+ importRow[11] = "Terme importe";
200
+ const importCsvContent = `${importHeader.map((column) => `"${column}"`).join(",")}\n`
201
+ + `${importRow.map((value) => `"${value}"`).join(",")}\n`;
202
+ const importResult = yield api.initializeGlossaryImport(accountUid, glossaryUid, new initialize_import_parameters_1.InitializeImportParameters()
203
+ .setImportFileContent(importCsvContent)
204
+ .setImportFileName("integration-import.csv")
205
+ .setImportFileMediaType(import_file_media_type_1.ImportFileMediaType.CSV));
206
+ logResponse("initializeGlossaryImport", importResult);
207
+ assert_1.default.ok(importResult.glossaryImport.importUid);
208
+ assert_1.default.ok(importResult.entryChanges);
209
+ const status = yield api.importStatus(accountUid, glossaryUid, importResult.glossaryImport.importUid);
210
+ logResponse("importStatus", status);
211
+ assert_1.default.equal(status.importUid, importResult.glossaryImport.importUid);
212
+ const confirmed = yield api.confirmGlossaryImport(accountUid, glossaryUid, importResult.glossaryImport.importUid);
213
+ logResponse("confirmGlossaryImport", confirmed);
214
+ assert_1.default.equal(confirmed.importUid, importResult.glossaryImport.importUid);
215
+ }));
216
+ it("removes the glossary entry", () => __awaiter(this, void 0, void 0, function* () {
217
+ const result = yield api.removeGlossaryEntries(accountUid, glossaryUid, new entries_bulk_action_parameters_1.EntriesBulkActionParameters().setFilterEntryUids([entryUid]));
218
+ logResponse("removeGlossaryEntries", result);
219
+ assert_1.default.ok(result.operationUid);
220
+ }));
221
+ });
222
+ //# sourceMappingURL=glossaries.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"glossaries.spec.js","sourceRoot":"","sources":["../../../test/integration/glossaries.spec.ts"],"names":[],"mappings":"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"}
package/index.ts CHANGED
@@ -80,6 +80,35 @@ export * from "./api/glossaries/enums/label-type";
80
80
  export * from "./api/glossaries/enums/sort-direction";
81
81
  export * from "./api/glossaries/enums/sort-field";
82
82
  export * from "./api/glossaries/enums/tbx-version";
83
+ export * from "./api/glossaries/enums/part-of-speech";
84
+ export * from "./api/glossaries/enums/suggestion-status";
85
+ export * from "./api/glossaries/enums/import-status";
86
+ export * from "./api/glossaries/enums/import-file-media-type";
87
+ export * from "./api/glossaries/dto/locale-workflow-dto";
88
+ export * from "./api/glossaries/dto/custom-field-value-dto";
89
+ export * from "./api/glossaries/dto/translation-request-status-dto";
90
+ export * from "./api/glossaries/dto/entry-request-translation-status-dto";
91
+ export * from "./api/glossaries/dto/translation-dto";
92
+ export * from "./api/glossaries/dto/glossary-entry-dto";
93
+ export * from "./api/glossaries/dto/label-dto";
94
+ export * from "./api/glossaries/dto/operation-dto";
95
+ export * from "./api/glossaries/dto/glossary-uids-dto";
96
+ export * from "./api/glossaries/dto/glossary-entries-count-dto";
97
+ export * from "./api/glossaries/dto/glossary-import-status-dto";
98
+ export * from "./api/glossaries/dto/glossary-import-result-dto";
99
+ export * from "./api/glossaries/dto/import-entry-changes-dto";
100
+ export * from "./api/glossaries/dto/import-entry-translation-changes-dto";
101
+ export * from "./api/glossaries/dto/import-warning-dto";
102
+ export * from "./api/glossaries/params/create-glossary-parameters";
103
+ export * from "./api/glossaries/params/archive-glossaries-parameters";
104
+ export * from "./api/glossaries/params/search-glossary-counts-parameters";
105
+ export * from "./api/glossaries/params/create-glossary-entry-parameters";
106
+ export * from "./api/glossaries/params/search-glossary-entries-parameters";
107
+ export * from "./api/glossaries/params/entries-bulk-action-parameters";
108
+ export * from "./api/glossaries/params/entries-bulk-labels-parameters";
109
+ export * from "./api/glossaries/params/authorize-entries-parameters";
110
+ export * from "./api/glossaries/params/initialize-import-parameters";
111
+ export * from "./api/glossaries/params/create-label-parameters";
83
112
  export * from "./api/http/form-data-utils";
84
113
  export * from "./api/http/smartling-list-response";
85
114
  export * from "./api/job-batches/index";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "smartling-api-sdk-nodejs",
3
- "version": "3.2.2",
3
+ "version": "3.3.0",
4
4
  "description": "Package for Smartling API",
5
5
  "main": "built/index.js",
6
6
  "engines": {
@@ -10,8 +10,9 @@
10
10
  "build:dev": "rm -rf built && tsc --p tsconfig.dev.json && cp -R package.json built",
11
11
  "build": "rm -rf built && tsc && cp -R package.json built",
12
12
  "pretest": "eslint . --ext .ts",
13
- "test": "npm run build:dev && nyc mocha --reporter mocha-junit-reporter --recursive built/test/**/*.spec.js",
14
- "test:dev": "npm run build:dev && nyc mocha --recursive built/test/**/*.spec.js"
13
+ "test": "npm run build:dev && nyc mocha --reporter mocha-junit-reporter --recursive 'built/test/**/*.spec.js' --ignore 'built/test/integration/**'",
14
+ "test:dev": "npm run build:dev && nyc mocha --recursive 'built/test/**/*.spec.js' --ignore 'built/test/integration/**'",
15
+ "test:integration": "npm run build:dev && mocha --recursive 'built/test/integration/**/*.spec.js'"
15
16
  },
16
17
  "repository": {
17
18
  "type": "git",
@@ -45,6 +46,7 @@
45
46
  "ansi-regex": "^5.0.1",
46
47
  "babel-eslint": "^10.1.0",
47
48
  "braces": "^3.0.3",
49
+ "dotenv": "^18.0.5",
48
50
  "eslint": "^7.31.0",
49
51
  "eslint-config-airbnb": "^19.0.4",
50
52
  "eslint-plugin-flowtype": "^2.41.0",
@@ -53,5 +53,19 @@ describe("SmartlingBaseFileApi class tests.", () => {
53
53
  assert.ok(fileWithMetadata.fileName === "test - \"phase 1\".xml");
54
54
  assert.ok(fileWithMetadata.fileContent.byteLength === 1);
55
55
  });
56
+
57
+ it("Convert response to dto when file name is RFC 5987 encoded (filename*=)", async () => {
58
+ mockResponse.headers.get.onCall(0).returns("application/octet-stream");
59
+ mockResponse.headers.get.onCall(1).returns("attachment; filename*=UTF-8''style%20guide.pdf");
60
+ mockResponse.headers.get.returns(null);
61
+
62
+ const fileWithMetadata = await SmartlingBaseFileApi.downloadResponseToTranslatedFileDto(
63
+ mockResponse as Response
64
+ );
65
+
66
+ assert.ok(fileWithMetadata.contentType === "application/octet-stream");
67
+ assert.ok(fileWithMetadata.fileName === "style guide.pdf");
68
+ assert.ok(fileWithMetadata.fileContent.byteLength === 1);
69
+ });
56
70
  });
57
71
  });