@driveflux/reporter 6.0.0 → 6.0.2

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/dist/index.js CHANGED
@@ -1,200 +1,3 @@
1
- function _array_like_to_array(arr, len) {
2
- if (len == null || len > arr.length) len = arr.length;
3
- for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
4
- return arr2;
5
- }
6
- function _array_without_holes(arr) {
7
- if (Array.isArray(arr)) return _array_like_to_array(arr);
8
- }
9
- function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
10
- try {
11
- var info = gen[key](arg);
12
- var value = info.value;
13
- } catch (error) {
14
- reject(error);
15
- return;
16
- }
17
- if (info.done) {
18
- resolve(value);
19
- } else {
20
- Promise.resolve(value).then(_next, _throw);
21
- }
22
- }
23
- function _async_to_generator(fn) {
24
- return function() {
25
- var self = this, args = arguments;
26
- return new Promise(function(resolve, reject) {
27
- var gen = fn.apply(self, args);
28
- function _next(value) {
29
- asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
30
- }
31
- function _throw(err) {
32
- asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
33
- }
34
- _next(undefined);
35
- });
36
- };
37
- }
38
- function _define_property(obj, key, value) {
39
- if (key in obj) {
40
- Object.defineProperty(obj, key, {
41
- value: value,
42
- enumerable: true,
43
- configurable: true,
44
- writable: true
45
- });
46
- } else {
47
- obj[key] = value;
48
- }
49
- return obj;
50
- }
51
- function _iterable_to_array(iter) {
52
- if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
53
- }
54
- function _non_iterable_spread() {
55
- throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
56
- }
57
- function _object_spread(target) {
58
- for(var i = 1; i < arguments.length; i++){
59
- var source = arguments[i] != null ? arguments[i] : {};
60
- var ownKeys = Object.keys(source);
61
- if (typeof Object.getOwnPropertySymbols === "function") {
62
- ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
63
- return Object.getOwnPropertyDescriptor(source, sym).enumerable;
64
- }));
65
- }
66
- ownKeys.forEach(function(key) {
67
- _define_property(target, key, source[key]);
68
- });
69
- }
70
- return target;
71
- }
72
- function ownKeys(object, enumerableOnly) {
73
- var keys = Object.keys(object);
74
- if (Object.getOwnPropertySymbols) {
75
- var symbols = Object.getOwnPropertySymbols(object);
76
- if (enumerableOnly) {
77
- symbols = symbols.filter(function(sym) {
78
- return Object.getOwnPropertyDescriptor(object, sym).enumerable;
79
- });
80
- }
81
- keys.push.apply(keys, symbols);
82
- }
83
- return keys;
84
- }
85
- function _object_spread_props(target, source) {
86
- source = source != null ? source : {};
87
- if (Object.getOwnPropertyDescriptors) {
88
- Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
89
- } else {
90
- ownKeys(Object(source)).forEach(function(key) {
91
- Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
92
- });
93
- }
94
- return target;
95
- }
96
- function _to_consumable_array(arr) {
97
- return _array_without_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array(arr) || _non_iterable_spread();
98
- }
99
- function _unsupported_iterable_to_array(o, minLen) {
100
- if (!o) return;
101
- if (typeof o === "string") return _array_like_to_array(o, minLen);
102
- var n = Object.prototype.toString.call(o).slice(8, -1);
103
- if (n === "Object" && o.constructor) n = o.constructor.name;
104
- if (n === "Map" || n === "Set") return Array.from(n);
105
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
106
- }
107
- function _ts_generator(thisArg, body) {
108
- var f, y, t, _ = {
109
- label: 0,
110
- sent: function() {
111
- if (t[0] & 1) throw t[1];
112
- return t[1];
113
- },
114
- trys: [],
115
- ops: []
116
- }, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
117
- return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() {
118
- return this;
119
- }), g;
120
- function verb(n) {
121
- return function(v) {
122
- return step([
123
- n,
124
- v
125
- ]);
126
- };
127
- }
128
- function step(op) {
129
- if (f) throw new TypeError("Generator is already executing.");
130
- while(g && (g = 0, op[0] && (_ = 0)), _)try {
131
- 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;
132
- if (y = 0, t) op = [
133
- op[0] & 2,
134
- t.value
135
- ];
136
- switch(op[0]){
137
- case 0:
138
- case 1:
139
- t = op;
140
- break;
141
- case 4:
142
- _.label++;
143
- return {
144
- value: op[1],
145
- done: false
146
- };
147
- case 5:
148
- _.label++;
149
- y = op[1];
150
- op = [
151
- 0
152
- ];
153
- continue;
154
- case 7:
155
- op = _.ops.pop();
156
- _.trys.pop();
157
- continue;
158
- default:
159
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
160
- _ = 0;
161
- continue;
162
- }
163
- if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
164
- _.label = op[1];
165
- break;
166
- }
167
- if (op[0] === 6 && _.label < t[1]) {
168
- _.label = t[1];
169
- t = op;
170
- break;
171
- }
172
- if (t && _.label < t[2]) {
173
- _.label = t[2];
174
- _.ops.push(op);
175
- break;
176
- }
177
- if (t[2]) _.ops.pop();
178
- _.trys.pop();
179
- continue;
180
- }
181
- op = body.call(thisArg, _);
182
- } catch (e) {
183
- op = [
184
- 6,
185
- e
186
- ];
187
- y = 0;
188
- } finally{
189
- f = t = 0;
190
- }
191
- if (op[0] & 5) throw op[1];
192
- return {
193
- value: op[0] ? op[1] : void 0,
194
- done: true
195
- };
196
- }
197
- }
198
1
  import { isAProblem } from '@driveflux/problem';
199
2
  import { initSingleton } from '@driveflux/singleton';
200
3
  import { omit } from '@driveflux/utils';
@@ -204,215 +7,103 @@ import { RollbarDriver } from './drivers/rollbar.js';
204
7
  import { SentryNextJSDriver } from './drivers/sentry-nextjs.js';
205
8
  import { SlackDriver } from './drivers/slack.js';
206
9
  export * from './config.js';
207
- var problemsAndErrorsToReport = initSingleton('reporter_problemsAndErrors', function() {
208
- return new Set();
209
- });
210
- var customDrivers = initSingleton('reporter_customDrivers', function() {
211
- return new Map();
212
- });
213
- export var addDriver = function(name, reporter) {
214
- var enabled = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : true;
10
+ const problemsAndErrorsToReport = initSingleton('reporter_problemsAndErrors', () => new Set());
11
+ const customDrivers = initSingleton('reporter_customDrivers', () => new Map());
12
+ export const addDriver = (name, reporter, enabled = true) => {
215
13
  customDrivers.set(name, {
216
- enabled: enabled,
217
- reporter: reporter
14
+ enabled,
15
+ reporter,
218
16
  });
219
17
  };
220
- var DRIVERS_MAP = {
221
- console: function() {
222
- return initSingleton('reporter_consoleDriver', function() {
223
- return new ConsoleDriver();
224
- });
225
- },
226
- rollbar: function() {
227
- return initSingleton('reporter_rollbarDriver', function() {
228
- return new RollbarDriver(config.rollbar);
229
- });
230
- },
231
- 'sentry-nextjs': function() {
232
- return initSingleton('reporter_sentryDriver', function() {
233
- return new SentryNextJSDriver(config.sentry);
234
- });
235
- },
236
- slack: function() {
237
- return initSingleton('reporter_slackDriver', function() {
238
- return new SlackDriver(config.slack);
239
- });
240
- }
18
+ const DRIVERS_MAP = {
19
+ console: () => initSingleton('reporter_consoleDriver', () => new ConsoleDriver()),
20
+ rollbar: () => initSingleton('reporter_rollbarDriver', () => new RollbarDriver(config.rollbar)),
21
+ 'sentry-nextjs': () => initSingleton('reporter_sentryDriver', () => new SentryNextJSDriver(config.sentry)),
22
+ slack: () => initSingleton('reporter_slackDriver', () => new SlackDriver(config.slack)),
241
23
  };
242
- export var getDriver = function(driver) {
24
+ export const getDriver = (driver) => {
243
25
  if (driver in DRIVERS_MAP) {
244
26
  return DRIVERS_MAP[driver]();
245
27
  }
246
- var customDriver = customDrivers.get(driver);
28
+ const customDriver = customDrivers.get(driver);
247
29
  if (!customDriver) {
248
- throw new Error("Driver ".concat(driver, " not found."));
30
+ throw new Error(`Driver ${driver} not found.`);
249
31
  }
250
32
  return customDriver.reporter;
251
33
  };
252
- var getDrivers = function() {
253
- var allDrivers = _to_consumable_array(Object.keys(config.drivers)).concat(_to_consumable_array(customDrivers.keys()));
254
- return allDrivers.map(function(driver) {
255
- var _customDrivers_get;
256
- if (config.drivers[driver] || ((_customDrivers_get = customDrivers.get(driver)) === null || _customDrivers_get === void 0 ? void 0 : _customDrivers_get.enabled)) {
34
+ const getDrivers = () => {
35
+ const allDrivers = [...Object.keys(config.drivers), ...customDrivers.keys()];
36
+ return allDrivers
37
+ .map((driver) => {
38
+ if (config.drivers[driver] ||
39
+ customDrivers.get(driver)?.enabled) {
257
40
  return getDriver(driver);
258
41
  }
259
42
  return;
260
- }).filter(function(d) {
261
- return d;
262
- });
43
+ })
44
+ .filter((d) => d);
263
45
  };
264
- export var reportError = function(err) {
265
- var metadata = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, sync = arguments.length > 2 ? arguments[2] : void 0;
266
- return _async_to_generator(function() {
267
- var defer;
268
- return _ts_generator(this, function(_state) {
269
- switch(_state.label){
270
- case 0:
271
- defer = typeof sync === 'boolean' ? !sync : config.deferReporting;
272
- if (!defer) return [
273
- 3,
274
- 1
275
- ];
276
- problemsAndErrorsToReport.add(err);
277
- return [
278
- 3,
279
- 3
280
- ];
281
- case 1:
282
- return [
283
- 4,
284
- commitSingleError(err, metadata)
285
- ];
286
- case 2:
287
- _state.sent();
288
- _state.label = 3;
289
- case 3:
290
- return [
291
- 2,
292
- err
293
- ];
294
- }
295
- });
296
- })();
46
+ export const reportError = async (err, metadata = {}, sync) => {
47
+ const defer = typeof sync === 'boolean' ? !sync : config.deferReporting;
48
+ if (defer) {
49
+ problemsAndErrorsToReport.add(err);
50
+ }
51
+ else {
52
+ await commitSingleError(err, metadata);
53
+ }
54
+ return err;
297
55
  };
298
56
  /**
299
57
  *
300
58
  * @todo make function
301
59
  * @param problem
302
- */ export var reportProblem = function(problem, sync) {
303
- return _async_to_generator(function() {
304
- var defer;
305
- return _ts_generator(this, function(_state) {
306
- switch(_state.label){
307
- case 0:
308
- defer = typeof sync === 'boolean' ? !sync : config.deferReporting;
309
- if (!defer) return [
310
- 3,
311
- 1
312
- ];
313
- problemsAndErrorsToReport.add(problem);
314
- return [
315
- 3,
316
- 3
317
- ];
318
- case 1:
319
- return [
320
- 4,
321
- commitSingleProblem(problem)
322
- ];
323
- case 2:
324
- _state.sent();
325
- _state.label = 3;
326
- case 3:
327
- return [
328
- 2,
329
- problem
330
- ];
331
- }
332
- });
333
- })();
60
+ */
61
+ export const reportProblem = async (problem, sync) => {
62
+ const defer = typeof sync === 'boolean' ? !sync : config.deferReporting;
63
+ if (defer) {
64
+ problemsAndErrorsToReport.add(problem);
65
+ }
66
+ else {
67
+ await commitSingleProblem(problem);
68
+ }
69
+ return problem;
334
70
  };
335
- export var commitReportingErrors = function() {
336
- return _async_to_generator(function() {
337
- var promises, problemsToReport, _iteratorNormalCompletion, _didIteratorError, _iteratorError, _iterator, _step, _$err;
338
- return _ts_generator(this, function(_state) {
339
- switch(_state.label){
340
- case 0:
341
- promises = [];
342
- problemsToReport = _to_consumable_array(problemsAndErrorsToReport);
343
- problemsAndErrorsToReport.clear();
344
- _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
345
- try {
346
- for(_iterator = problemsToReport[Symbol.iterator](); !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
347
- _$err = _step.value;
348
- promises.push(isAProblem(_$err) ? commitSingleProblem(_$err) : commitSingleError(_$err));
349
- }
350
- } catch (err) {
351
- _didIteratorError = true;
352
- _iteratorError = err;
353
- } finally{
354
- try {
355
- if (!_iteratorNormalCompletion && _iterator.return != null) {
356
- _iterator.return();
357
- }
358
- } finally{
359
- if (_didIteratorError) {
360
- throw _iteratorError;
361
- }
362
- }
363
- }
364
- return [
365
- 4,
366
- Promise.allSettled(promises)
367
- ];
368
- case 1:
369
- _state.sent();
370
- return [
371
- 2
372
- ];
373
- }
374
- });
375
- })();
71
+ export const commitReportingErrors = async () => {
72
+ const promises = [];
73
+ const problemsToReport = [...problemsAndErrorsToReport];
74
+ problemsAndErrorsToReport.clear();
75
+ for (const err of problemsToReport) {
76
+ promises.push(isAProblem(err) ? commitSingleProblem(err) : commitSingleError(err));
77
+ }
78
+ await Promise.allSettled(promises);
376
79
  };
377
- var commitSingleError = function(err) {
378
- var metadata = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
379
- return Promise.allSettled(getDrivers().map(function(driver) {
80
+ const commitSingleError = (err, metadata = {}) => {
81
+ return Promise.allSettled(getDrivers().map((driver) => {
380
82
  return driver.reportError(err, {
381
83
  request: metadata.request,
382
- others: omit(metadata, 'request')
84
+ others: omit(metadata, 'request'),
383
85
  });
384
86
  }));
385
87
  };
386
- var commitSingleProblem = function(problem) {
387
- return Promise.allSettled(getDrivers().map(function(driver) {
388
- var _problem_privateMetadata;
389
- return driver.reportProblem(_object_spread_props(_object_spread({}, problem), {
88
+ const commitSingleProblem = (problem) => {
89
+ return Promise.allSettled(getDrivers().map((driver) => {
90
+ return driver.reportProblem({
91
+ ...problem,
390
92
  privateMetadata: {
391
- request: (_problem_privateMetadata = problem.privateMetadata) === null || _problem_privateMetadata === void 0 ? void 0 : _problem_privateMetadata.request,
392
- others: _object_spread({}, problem.metadata, problem.privateMetadata ? omit(problem.privateMetadata, 'request') : undefined)
393
- }
394
- }));
93
+ request: problem.privateMetadata?.request,
94
+ others: {
95
+ ...problem.metadata,
96
+ ...(problem.privateMetadata
97
+ ? omit(problem.privateMetadata, 'request')
98
+ : undefined),
99
+ },
100
+ },
101
+ });
395
102
  }));
396
103
  };
397
- export var setReporterPayload = function(payload) {
398
- var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
399
- try {
400
- for(var _iterator = getDrivers()[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
401
- var driver = _step.value;
402
- driver.setReporterPayload(payload);
403
- }
404
- } catch (err) {
405
- _didIteratorError = true;
406
- _iteratorError = err;
407
- } finally{
408
- try {
409
- if (!_iteratorNormalCompletion && _iterator.return != null) {
410
- _iterator.return();
411
- }
412
- } finally{
413
- if (_didIteratorError) {
414
- throw _iteratorError;
415
- }
416
- }
104
+ export const setReporterPayload = (payload) => {
105
+ for (const driver of getDrivers()) {
106
+ driver.setReporterPayload(payload);
417
107
  }
418
108
  };
109
+ //# sourceMappingURL=index.js.map
package/dist/types.js CHANGED
@@ -1 +1,2 @@
1
- export { };
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@driveflux/reporter",
3
- "version": "6.0.0",
3
+ "version": "6.0.2",
4
4
  "type": "module",
5
5
  "exports": {
6
6
  "./package.json": "./package.json",
@@ -21,11 +21,11 @@
21
21
  "dist"
22
22
  ],
23
23
  "dependencies": {
24
- "@driveflux/fetch": "7.0.0",
25
- "@driveflux/problem": "5.0.0",
26
- "@driveflux/redact": "5.0.0",
27
- "@driveflux/singleton": "2.0.0",
28
- "@driveflux/utils": "5.0.0",
24
+ "@driveflux/fetch": "7.0.2",
25
+ "@driveflux/problem": "5.0.2",
26
+ "@driveflux/redact": "5.0.2",
27
+ "@driveflux/singleton": "2.0.2",
28
+ "@driveflux/utils": "5.0.2",
29
29
  "@sentry/nextjs": "^9.16.1",
30
30
  "@sentry/node": "^9.16.1",
31
31
  "flat": "6.0.1",
@@ -33,8 +33,8 @@
33
33
  "zod": "^3.24.4"
34
34
  },
35
35
  "devDependencies": {
36
- "@driveflux/fab": "3.0.0",
37
- "@driveflux/tsconfig": "2.0.0",
36
+ "@driveflux/fab": "3.0.2",
37
+ "@driveflux/tsconfig": "2.0.2",
38
38
  "@types/flat": "^5.0.5",
39
39
  "@types/node": "^22.15.16",
40
40
  "del-cli": "^6.0.0",