@punks/backend-core 0.0.30 → 0.0.32

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/cjs/index.js CHANGED
@@ -19,122 +19,11 @@ exports.LogLevel = void 0;
19
19
  LogLevel[LogLevel["Error"] = 3] = "Error";
20
20
  LogLevel[LogLevel["Fatal"] = 4] = "Fatal";
21
21
  })(exports.LogLevel || (exports.LogLevel = {}));
22
-
23
- class DefaultLogger {
24
- constructor(loggerName) {
25
- this.loggerName = loggerName;
26
- }
27
- debug(message, meta) {
28
- if (meta) {
29
- console.log(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`, meta);
30
- }
31
- else {
32
- console.log(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`);
33
- }
34
- }
35
- info(message, meta) {
36
- if (meta) {
37
- console.info(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`, meta);
38
- }
39
- else {
40
- console.info(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`);
41
- }
42
- }
43
- warn(message, meta) {
44
- if (meta) {
45
- console.warn(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`, meta);
46
- }
47
- else {
48
- console.warn(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`);
49
- }
50
- }
51
- error(message, meta) {
52
- if (meta) {
53
- console.error(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`, meta);
54
- }
55
- else {
56
- console.error(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`);
57
- }
58
- }
59
- fatal(message, meta) {
60
- if (meta) {
61
- console.error(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`, meta);
62
- }
63
- else {
64
- console.error(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`);
65
- }
66
- }
67
- exception(message, error, meta) {
68
- if (meta) {
69
- console.error(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`, error, meta);
70
- }
71
- else {
72
- console.error(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`, error);
73
- }
74
- }
75
- }
76
-
77
- class InternalLogger {
78
- constructor(enabled, level, provider) {
79
- this.enabled = enabled;
80
- this.level = level;
81
- this.provider = provider;
82
- }
83
- debug(message, meta) {
84
- if (this.enabled && this.level === exports.LogLevel.Debug) {
85
- this.provider.debug(message, meta);
86
- }
87
- }
88
- info(message, meta) {
89
- if (this.enabled && this.level <= exports.LogLevel.Info) {
90
- this.provider.info(message, meta);
91
- }
92
- }
93
- warn(message, meta) {
94
- if (this.enabled && this.level <= exports.LogLevel.Warn) {
95
- this.provider.warn(message, meta);
96
- }
97
- }
98
- error(message, meta) {
99
- if (this.enabled && this.level <= exports.LogLevel.Error) {
100
- this.provider.error(message, meta);
101
- }
102
- }
103
- fatal(message, meta) {
104
- if (this.enabled && this.level <= exports.LogLevel.Fatal) {
105
- this.provider.fatal(message, meta);
106
- }
107
- }
108
- exception(message, error, meta) {
109
- if (this.enabled && this.level <= exports.LogLevel.Error) {
110
- this.provider.exception(message, error, meta);
111
- }
112
- }
113
- }
114
- const getLogger = ({ enabled, level, loggerName, }) => {
115
- return new InternalLogger(enabled, level, new DefaultLogger(loggerName));
116
- };
117
- class Log {
118
- static setLevel(level) {
119
- this.level = level;
120
- this.enabled = true;
121
- }
122
- static enable() {
123
- this.enabled = true;
124
- }
125
- static disable() {
126
- this.enabled = false;
127
- }
128
- static getLogger(loggerName) {
129
- return getLogger({
130
- enabled: this.enabled,
131
- level: this.level,
132
- loggerName,
133
- });
134
- }
135
- }
136
- Log.enabled = true;
137
- Log.level = exports.LogLevel.Debug;
22
+ exports.MetaSerializationType = void 0;
23
+ (function (MetaSerializationType) {
24
+ MetaSerializationType[MetaSerializationType["None"] = 0] = "None";
25
+ MetaSerializationType[MetaSerializationType["JSON"] = 1] = "JSON";
26
+ })(exports.MetaSerializationType || (exports.MetaSerializationType = {}));
138
27
 
139
28
  const range = (start, end) => {
140
29
  return new Array(end - start + 1).fill(undefined).map((x, i) => i + start);
@@ -230,6 +119,9 @@ const groupBy = (values, keySelector) => {
230
119
  });
231
120
  return map;
232
121
  };
122
+ const subArrays = (array1, array2, eqFn) => {
123
+ return array1.filter((a1) => !array2.some((a2) => eqFn(a1, a2)));
124
+ };
233
125
 
234
126
  const DEFAULT_DELIMITER = ";";
235
127
  const splitRows = (data) => {
@@ -28425,6 +28317,153 @@ const excelParse = (file, options) => {
28425
28317
  .map((x) => aggregateRow(header, x, options));
28426
28318
  };
28427
28319
 
28320
+ const processArrayDifferences = ({ elements, elementIdSelector, desiredItems, desiredItemSelector, }) => {
28321
+ const currentElementsIds = elements.map(elementIdSelector);
28322
+ const desiredItemsIds = desiredItems.map(desiredItemSelector);
28323
+ const missingElementIds = subArrays(desiredItemsIds, currentElementsIds, (a, b) => a === b);
28324
+ const missingElements = desiredItems.filter((x) => missingElementIds.includes(desiredItemSelector(x)));
28325
+ const exceedingElementIds = subArrays(currentElementsIds, desiredItemsIds, (a, b) => a === b);
28326
+ const exceedingElements = elements.filter((x) => exceedingElementIds.includes(elementIdSelector(x)));
28327
+ const unchangedElementIds = subArrays(currentElementsIds, exceedingElementIds, (a, b) => a === b);
28328
+ const unchangedElements = elements.filter((x) => unchangedElementIds.includes(elementIdSelector(x)));
28329
+ return {
28330
+ missingElements,
28331
+ exceedingElements,
28332
+ unchangedElements,
28333
+ };
28334
+ };
28335
+
28336
+ class DefaultLogger {
28337
+ constructor(loggerName) {
28338
+ this.loggerName = loggerName;
28339
+ }
28340
+ debug(message, meta) {
28341
+ if (meta) {
28342
+ console.log(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`, meta);
28343
+ }
28344
+ else {
28345
+ console.log(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`);
28346
+ }
28347
+ }
28348
+ info(message, meta) {
28349
+ if (meta) {
28350
+ console.info(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`, meta);
28351
+ }
28352
+ else {
28353
+ console.info(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`);
28354
+ }
28355
+ }
28356
+ warn(message, meta) {
28357
+ if (meta) {
28358
+ console.warn(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`, meta);
28359
+ }
28360
+ else {
28361
+ console.warn(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`);
28362
+ }
28363
+ }
28364
+ error(message, meta) {
28365
+ if (meta) {
28366
+ console.error(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`, meta);
28367
+ }
28368
+ else {
28369
+ console.error(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`);
28370
+ }
28371
+ }
28372
+ fatal(message, meta) {
28373
+ if (meta) {
28374
+ console.error(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`, meta);
28375
+ }
28376
+ else {
28377
+ console.error(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`);
28378
+ }
28379
+ }
28380
+ exception(message, error, meta) {
28381
+ if (meta) {
28382
+ console.error(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`, error, meta);
28383
+ }
28384
+ else {
28385
+ console.error(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`, error);
28386
+ }
28387
+ }
28388
+ }
28389
+
28390
+ class InternalLogger {
28391
+ constructor(enabled, level, serialization, provider) {
28392
+ this.enabled = enabled;
28393
+ this.level = level;
28394
+ this.serialization = serialization;
28395
+ this.provider = provider;
28396
+ }
28397
+ debug(message, meta) {
28398
+ if (this.enabled && this.level === exports.LogLevel.Debug) {
28399
+ this.provider.debug(message, this.serializeMeta(meta));
28400
+ }
28401
+ }
28402
+ info(message, meta) {
28403
+ if (this.enabled && this.level <= exports.LogLevel.Info) {
28404
+ this.provider.info(message, this.serializeMeta(meta));
28405
+ }
28406
+ }
28407
+ warn(message, meta) {
28408
+ if (this.enabled && this.level <= exports.LogLevel.Warn) {
28409
+ this.provider.warn(message, this.serializeMeta(meta));
28410
+ }
28411
+ }
28412
+ error(message, meta) {
28413
+ if (this.enabled && this.level <= exports.LogLevel.Error) {
28414
+ this.provider.error(message, this.serializeMeta(meta));
28415
+ }
28416
+ }
28417
+ fatal(message, meta) {
28418
+ if (this.enabled && this.level <= exports.LogLevel.Fatal) {
28419
+ this.provider.fatal(message, this.serializeMeta(meta));
28420
+ }
28421
+ }
28422
+ exception(message, error, meta) {
28423
+ if (this.enabled && this.level <= exports.LogLevel.Error) {
28424
+ this.provider.exception(message, error, this.serializeMeta(meta));
28425
+ }
28426
+ }
28427
+ serializeMeta(meta) {
28428
+ switch (this.serialization) {
28429
+ case exports.MetaSerializationType.JSON:
28430
+ return JSON.stringify(meta, null, 2);
28431
+ case exports.MetaSerializationType.None:
28432
+ default:
28433
+ return meta;
28434
+ }
28435
+ }
28436
+ }
28437
+ const getLogger = ({ enabled, level, loggerName, serialization, }) => {
28438
+ return new InternalLogger(enabled, level, serialization, new DefaultLogger(loggerName));
28439
+ };
28440
+ class Log {
28441
+ static setSerializationType(type) {
28442
+ this.metaSerialization = type;
28443
+ }
28444
+ static setLevel(level) {
28445
+ this.level = level;
28446
+ this.enabled = true;
28447
+ }
28448
+ static enable() {
28449
+ this.enabled = true;
28450
+ }
28451
+ static disable() {
28452
+ this.enabled = false;
28453
+ }
28454
+ static getLogger(loggerName) {
28455
+ return getLogger({
28456
+ enabled: this.enabled,
28457
+ level: this.level,
28458
+ serialization: this.metaSerialization,
28459
+ loggerName,
28460
+ });
28461
+ }
28462
+ }
28463
+ Log.enabled = true;
28464
+ Log.level = exports.LogLevel.Debug;
28465
+ Log.metaSerialization = exports.MetaSerializationType.None;
28466
+
28428
28467
  exports.Log = Log;
28429
28468
  exports.buildObject = buildObject;
28430
28469
  exports.buildTree = buildTree;
@@ -28457,12 +28496,14 @@ exports.newUuid = newUuid;
28457
28496
  exports.notNull = notNull;
28458
28497
  exports.notUndefined = notUndefined;
28459
28498
  exports.pluralize = pluralize;
28499
+ exports.processArrayDifferences = processArrayDifferences;
28460
28500
  exports.range = range;
28461
28501
  exports.removeUndefinedProps = removeUndefinedProps;
28462
28502
  exports.selectMany = selectMany;
28463
28503
  exports.sleep = sleep;
28464
28504
  exports.sort = sort;
28465
28505
  exports.splitPath = splitPath;
28506
+ exports.subArrays = subArrays;
28466
28507
  exports.toCamelCase = toCamelCase;
28467
28508
  exports.toDict = toDict;
28468
28509
  exports.toItemsDict = toItemsDict;