ibm-cloud-sdk-core 5.4.8 → 5.4.9

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/es/lib/helper.js CHANGED
@@ -25,8 +25,8 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
25
25
  import { isReadable } from 'isstream';
26
26
  import { lookup } from 'mime-types';
27
27
  import { basename } from 'path';
28
+ import { loadEsm } from 'load-esm';
28
29
  import logger from './logger';
29
- const FileType = require('file-type');
30
30
  // custom type guards
31
31
  function isFileObject(obj) {
32
32
  return Boolean(obj && obj.value);
@@ -58,7 +58,14 @@ export function getContentType(inputData) {
58
58
  }
59
59
  else if (Buffer.isBuffer(inputData)) {
60
60
  // if the inputData is a Buffer
61
- contentType = yield FileType.fromBuffer(inputData);
61
+ try {
62
+ // Import a pure ESM package from a CommonJS TS project
63
+ const { fileTypeFromBuffer } = yield loadEsm('file-type');
64
+ contentType = yield fileTypeFromBuffer(inputData);
65
+ }
66
+ catch (error) {
67
+ logger.debug('Error importing module:', error);
68
+ }
62
69
  }
63
70
  return contentType ? contentType.mime : null;
64
71
  });
package/lib/helper.js CHANGED
@@ -67,8 +67,8 @@ exports.isJsonMimeType = exports.constructServiceUrl = exports.toLowerKeys = exp
67
67
  var isstream_1 = require("isstream");
68
68
  var mime_types_1 = require("mime-types");
69
69
  var path_1 = require("path");
70
+ var load_esm_1 = require("load-esm");
70
71
  var logger_1 = __importDefault(require("./logger"));
71
- var FileType = require('file-type');
72
72
  // custom type guards
73
73
  function isFileObject(obj) {
74
74
  return Boolean(obj && obj.value);
@@ -95,7 +95,7 @@ exports.isEmptyObject = isEmptyObject;
95
95
  */
96
96
  function getContentType(inputData) {
97
97
  return __awaiter(this, void 0, void 0, function () {
98
- var contentType, mimeType;
98
+ var contentType, mimeType, fileTypeFromBuffer, error_1;
99
99
  return __generator(this, function (_a) {
100
100
  switch (_a.label) {
101
101
  case 0:
@@ -103,15 +103,24 @@ function getContentType(inputData) {
103
103
  if (!isFileStream(inputData)) return [3 /*break*/, 1];
104
104
  mimeType = (0, mime_types_1.lookup)(inputData.path);
105
105
  contentType = { mime: mimeType || null };
106
- return [3 /*break*/, 3];
106
+ return [3 /*break*/, 6];
107
107
  case 1:
108
- if (!Buffer.isBuffer(inputData)) return [3 /*break*/, 3];
109
- return [4 /*yield*/, FileType.fromBuffer(inputData)];
108
+ if (!Buffer.isBuffer(inputData)) return [3 /*break*/, 6];
109
+ _a.label = 2;
110
110
  case 2:
111
- // if the inputData is a Buffer
111
+ _a.trys.push([2, 5, , 6]);
112
+ return [4 /*yield*/, (0, load_esm_1.loadEsm)('file-type')];
113
+ case 3:
114
+ fileTypeFromBuffer = (_a.sent()).fileTypeFromBuffer;
115
+ return [4 /*yield*/, fileTypeFromBuffer(inputData)];
116
+ case 4:
112
117
  contentType = _a.sent();
113
- _a.label = 3;
114
- case 3: return [2 /*return*/, contentType ? contentType.mime : null];
118
+ return [3 /*break*/, 6];
119
+ case 5:
120
+ error_1 = _a.sent();
121
+ logger_1.default.debug('Error importing module:', error_1);
122
+ return [3 /*break*/, 6];
123
+ case 6: return [2 /*return*/, contentType ? contentType.mime : null];
115
124
  }
116
125
  });
117
126
  });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ibm-cloud-sdk-core",
3
- "version": "5.4.8",
3
+ "version": "5.4.9",
4
4
  "description": "Core functionality to support SDKs generated with IBM's OpenAPI SDK Generator.",
5
5
  "main": "./index.js",
6
6
  "typings": "./es/index.d.ts",
@@ -42,10 +42,11 @@
42
42
  "debug": "^4.3.4",
43
43
  "dotenv": "^16.4.5",
44
44
  "extend": "3.0.2",
45
- "file-type": "16.5.4",
45
+ "file-type": "^21.3.2",
46
46
  "form-data": "^4.0.4",
47
47
  "isstream": "0.1.2",
48
48
  "jsonwebtoken": "^9.0.3",
49
+ "load-esm": "^1.0.3",
49
50
  "mime-types": "2.1.35",
50
51
  "retry-axios": "^2.6.0",
51
52
  "tough-cookie": "^4.1.3"