@vocab/phrase 2.0.0 → 2.0.1

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.
@@ -5,7 +5,6 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  var fs = require('fs');
6
6
  var path = require('path');
7
7
  var core = require('@vocab/core');
8
- var FormData = require('form-data');
9
8
  var pc = require('picocolors');
10
9
  var debug = require('debug');
11
10
  var sync = require('csv-stringify/sync');
@@ -13,7 +12,6 @@ var sync = require('csv-stringify/sync');
13
12
  function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; }
14
13
 
15
14
  var path__default = /*#__PURE__*/_interopDefault(path);
16
- var FormData__default = /*#__PURE__*/_interopDefault(FormData);
17
15
  var pc__default = /*#__PURE__*/_interopDefault(pc);
18
16
  var debug__default = /*#__PURE__*/_interopDefault(debug);
19
17
 
@@ -82,7 +80,7 @@ function _callPhrase(path, options = {}) {
82
80
  headers: {
83
81
  Authorization: `token ${phraseApiToken}`,
84
82
  // Provide identification via User Agent as requested in https://developers.phrase.com/api/#overview--identification-via-user-agent
85
- 'User-Agent': 'SEEK Demo Candidate App (jhope@seek.com.au)',
83
+ 'User-Agent': 'Vocab Client (https://github.com/seek-oss/vocab)',
86
84
  ...options.headers
87
85
  }
88
86
  }).then(async response => {
@@ -155,25 +153,23 @@ async function pushTranslations(translationsByLanguage, {
155
153
  } = translationsToCsv(translationsByLanguage, devLanguage);
156
154
  let devLanguageUploadId = '';
157
155
  for (const [language, csvFileString] of Object.entries(csvFileStrings)) {
158
- const formData = new FormData__default["default"]();
159
- const fileContents = Buffer.from(csvFileString);
160
- formData.append('file', fileContents, {
161
- contentType: 'text/csv',
162
- filename: `${language}.translations.csv`
163
- });
156
+ const formData = new FormData();
157
+ formData.append('file', new Blob([csvFileString], {
158
+ type: 'text/csv'
159
+ }), `${language}.translations.csv`);
164
160
  formData.append('file_format', 'csv');
165
161
  formData.append('branch', branch);
166
162
  formData.append('update_translations', 'true');
167
163
  formData.append('update_descriptions', 'true');
168
- formData.append(`locale_mapping[${language}]`, messageIndex);
169
- formData.append('format_options[key_index]', keyIndex);
170
- formData.append('format_options[comment_index]', commentIndex);
171
- formData.append('format_options[tag_column]', tagColumn);
164
+ formData.append(`locale_mapping[${language}]`, messageIndex.toString());
165
+ formData.append('format_options[key_index]', keyIndex.toString());
166
+ formData.append('format_options[comment_index]', commentIndex.toString());
167
+ formData.append('format_options[tag_column]', tagColumn.toString());
172
168
  formData.append('format_options[enable_pluralization]', 'false');
173
169
  log(`Uploading translations for language ${language}`);
174
170
  const result = await callPhrase(`uploads`, {
175
171
  method: 'POST',
176
- body: formData.toString()
172
+ body: formData
177
173
  });
178
174
  trace('Upload result:\n', result);
179
175
  if (result && 'id' in result) {
@@ -5,7 +5,6 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  var fs = require('fs');
6
6
  var path = require('path');
7
7
  var core = require('@vocab/core');
8
- var FormData = require('form-data');
9
8
  var pc = require('picocolors');
10
9
  var debug = require('debug');
11
10
  var sync = require('csv-stringify/sync');
@@ -13,7 +12,6 @@ var sync = require('csv-stringify/sync');
13
12
  function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; }
14
13
 
15
14
  var path__default = /*#__PURE__*/_interopDefault(path);
16
- var FormData__default = /*#__PURE__*/_interopDefault(FormData);
17
15
  var pc__default = /*#__PURE__*/_interopDefault(pc);
18
16
  var debug__default = /*#__PURE__*/_interopDefault(debug);
19
17
 
@@ -82,7 +80,7 @@ function _callPhrase(path, options = {}) {
82
80
  headers: {
83
81
  Authorization: `token ${phraseApiToken}`,
84
82
  // Provide identification via User Agent as requested in https://developers.phrase.com/api/#overview--identification-via-user-agent
85
- 'User-Agent': 'SEEK Demo Candidate App (jhope@seek.com.au)',
83
+ 'User-Agent': 'Vocab Client (https://github.com/seek-oss/vocab)',
86
84
  ...options.headers
87
85
  }
88
86
  }).then(async response => {
@@ -155,25 +153,23 @@ async function pushTranslations(translationsByLanguage, {
155
153
  } = translationsToCsv(translationsByLanguage, devLanguage);
156
154
  let devLanguageUploadId = '';
157
155
  for (const [language, csvFileString] of Object.entries(csvFileStrings)) {
158
- const formData = new FormData__default["default"]();
159
- const fileContents = Buffer.from(csvFileString);
160
- formData.append('file', fileContents, {
161
- contentType: 'text/csv',
162
- filename: `${language}.translations.csv`
163
- });
156
+ const formData = new FormData();
157
+ formData.append('file', new Blob([csvFileString], {
158
+ type: 'text/csv'
159
+ }), `${language}.translations.csv`);
164
160
  formData.append('file_format', 'csv');
165
161
  formData.append('branch', branch);
166
162
  formData.append('update_translations', 'true');
167
163
  formData.append('update_descriptions', 'true');
168
- formData.append(`locale_mapping[${language}]`, messageIndex);
169
- formData.append('format_options[key_index]', keyIndex);
170
- formData.append('format_options[comment_index]', commentIndex);
171
- formData.append('format_options[tag_column]', tagColumn);
164
+ formData.append(`locale_mapping[${language}]`, messageIndex.toString());
165
+ formData.append('format_options[key_index]', keyIndex.toString());
166
+ formData.append('format_options[comment_index]', commentIndex.toString());
167
+ formData.append('format_options[tag_column]', tagColumn.toString());
172
168
  formData.append('format_options[enable_pluralization]', 'false');
173
169
  log(`Uploading translations for language ${language}`);
174
170
  const result = await callPhrase(`uploads`, {
175
171
  method: 'POST',
176
- body: formData.toString()
172
+ body: formData
177
173
  });
178
174
  trace('Upload result:\n', result);
179
175
  if (result && 'id' in result) {
@@ -1,7 +1,6 @@
1
1
  import { promises } from 'fs';
2
2
  import path from 'path';
3
3
  import { getAltLanguages, loadAllTranslations, getUniqueKey, getAltLanguageFilePath } from '@vocab/core';
4
- import FormData from 'form-data';
5
4
  import pc from 'picocolors';
6
5
  import debug from 'debug';
7
6
  import { stringify } from 'csv-stringify/sync';
@@ -71,7 +70,7 @@ function _callPhrase(path, options = {}) {
71
70
  headers: {
72
71
  Authorization: `token ${phraseApiToken}`,
73
72
  // Provide identification via User Agent as requested in https://developers.phrase.com/api/#overview--identification-via-user-agent
74
- 'User-Agent': 'SEEK Demo Candidate App (jhope@seek.com.au)',
73
+ 'User-Agent': 'Vocab Client (https://github.com/seek-oss/vocab)',
75
74
  ...options.headers
76
75
  }
77
76
  }).then(async response => {
@@ -145,24 +144,22 @@ async function pushTranslations(translationsByLanguage, {
145
144
  let devLanguageUploadId = '';
146
145
  for (const [language, csvFileString] of Object.entries(csvFileStrings)) {
147
146
  const formData = new FormData();
148
- const fileContents = Buffer.from(csvFileString);
149
- formData.append('file', fileContents, {
150
- contentType: 'text/csv',
151
- filename: `${language}.translations.csv`
152
- });
147
+ formData.append('file', new Blob([csvFileString], {
148
+ type: 'text/csv'
149
+ }), `${language}.translations.csv`);
153
150
  formData.append('file_format', 'csv');
154
151
  formData.append('branch', branch);
155
152
  formData.append('update_translations', 'true');
156
153
  formData.append('update_descriptions', 'true');
157
- formData.append(`locale_mapping[${language}]`, messageIndex);
158
- formData.append('format_options[key_index]', keyIndex);
159
- formData.append('format_options[comment_index]', commentIndex);
160
- formData.append('format_options[tag_column]', tagColumn);
154
+ formData.append(`locale_mapping[${language}]`, messageIndex.toString());
155
+ formData.append('format_options[key_index]', keyIndex.toString());
156
+ formData.append('format_options[comment_index]', commentIndex.toString());
157
+ formData.append('format_options[tag_column]', tagColumn.toString());
161
158
  formData.append('format_options[enable_pluralization]', 'false');
162
159
  log(`Uploading translations for language ${language}`);
163
160
  const result = await callPhrase(`uploads`, {
164
161
  method: 'POST',
165
- body: formData.toString()
162
+ body: formData
166
163
  });
167
164
  trace('Upload result:\n', result);
168
165
  if (result && 'id' in result) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vocab/phrase",
3
- "version": "2.0.0",
3
+ "version": "2.0.1",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "https://github.com/seek-oss/vocab.git",
@@ -16,7 +16,6 @@
16
16
  "dependencies": {
17
17
  "csv-stringify": "^6.2.3",
18
18
  "debug": "^4.3.1",
19
- "form-data": "^4.0.0",
20
19
  "picocolors": "^1.0.0",
21
20
  "@vocab/core": "^1.6.2"
22
21
  },