@punks/backend-core 0.0.31 → 0.0.33

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
@@ -25,137 +25,6 @@ exports.MetaSerializationType = void 0;
25
25
  MetaSerializationType[MetaSerializationType["JSON"] = 1] = "JSON";
26
26
  })(exports.MetaSerializationType || (exports.MetaSerializationType = {}));
27
27
 
28
- class DefaultLogger {
29
- constructor(loggerName) {
30
- this.loggerName = loggerName;
31
- }
32
- debug(message, meta) {
33
- if (meta) {
34
- console.log(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`, meta);
35
- }
36
- else {
37
- console.log(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`);
38
- }
39
- }
40
- info(message, meta) {
41
- if (meta) {
42
- console.info(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`, meta);
43
- }
44
- else {
45
- console.info(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`);
46
- }
47
- }
48
- warn(message, meta) {
49
- if (meta) {
50
- console.warn(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`, meta);
51
- }
52
- else {
53
- console.warn(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`);
54
- }
55
- }
56
- error(message, meta) {
57
- if (meta) {
58
- console.error(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`, meta);
59
- }
60
- else {
61
- console.error(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`);
62
- }
63
- }
64
- fatal(message, meta) {
65
- if (meta) {
66
- console.error(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`, meta);
67
- }
68
- else {
69
- console.error(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`);
70
- }
71
- }
72
- exception(message, error, meta) {
73
- if (meta) {
74
- console.error(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`, error, meta);
75
- }
76
- else {
77
- console.error(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`, error);
78
- }
79
- }
80
- }
81
-
82
- class InternalLogger {
83
- constructor(enabled, level, serialization, provider) {
84
- this.enabled = enabled;
85
- this.level = level;
86
- this.serialization = serialization;
87
- this.provider = provider;
88
- }
89
- debug(message, meta) {
90
- if (this.enabled && this.level === exports.LogLevel.Debug) {
91
- this.provider.debug(message, this.serializeMeta(meta));
92
- }
93
- }
94
- info(message, meta) {
95
- if (this.enabled && this.level <= exports.LogLevel.Info) {
96
- this.provider.info(message, this.serializeMeta(meta));
97
- }
98
- }
99
- warn(message, meta) {
100
- if (this.enabled && this.level <= exports.LogLevel.Warn) {
101
- this.provider.warn(message, this.serializeMeta(meta));
102
- }
103
- }
104
- error(message, meta) {
105
- if (this.enabled && this.level <= exports.LogLevel.Error) {
106
- this.provider.error(message, this.serializeMeta(meta));
107
- }
108
- }
109
- fatal(message, meta) {
110
- if (this.enabled && this.level <= exports.LogLevel.Fatal) {
111
- this.provider.fatal(message, this.serializeMeta(meta));
112
- }
113
- }
114
- exception(message, error, meta) {
115
- if (this.enabled && this.level <= exports.LogLevel.Error) {
116
- this.provider.exception(message, error, this.serializeMeta(meta));
117
- }
118
- }
119
- serializeMeta(meta) {
120
- switch (this.serialization) {
121
- case exports.MetaSerializationType.JSON:
122
- return JSON.stringify(meta, null, 2);
123
- case exports.MetaSerializationType.None:
124
- default:
125
- return meta;
126
- }
127
- }
128
- }
129
- const getLogger = ({ enabled, level, loggerName, serialization, }) => {
130
- return new InternalLogger(enabled, level, serialization, new DefaultLogger(loggerName));
131
- };
132
- class Log {
133
- static setSerializationType(type) {
134
- this.metaSerialization = type;
135
- }
136
- static setLevel(level) {
137
- this.level = level;
138
- this.enabled = true;
139
- }
140
- static enable() {
141
- this.enabled = true;
142
- }
143
- static disable() {
144
- this.enabled = false;
145
- }
146
- static getLogger(loggerName) {
147
- return getLogger({
148
- enabled: this.enabled,
149
- level: this.level,
150
- serialization: this.metaSerialization,
151
- loggerName,
152
- });
153
- }
154
- }
155
- Log.enabled = true;
156
- Log.level = exports.LogLevel.Debug;
157
- Log.metaSerialization = exports.MetaSerializationType.None;
158
-
159
28
  const range = (start, end) => {
160
29
  return new Array(end - start + 1).fill(undefined).map((x, i) => i + start);
161
30
  };
@@ -250,6 +119,35 @@ const groupBy = (values, keySelector) => {
250
119
  });
251
120
  return map;
252
121
  };
122
+ const subArrays = (array1, array2, eqFn) => {
123
+ return array1.filter((a1) => !array2.some((a2) => eqFn(a1, a2)));
124
+ };
125
+
126
+ const addTime = (date, offset) => {
127
+ const { value, unit } = offset;
128
+ const newDate = new Date(date);
129
+ switch (unit) {
130
+ case "year":
131
+ newDate.setFullYear(date.getFullYear() + value);
132
+ break;
133
+ case "month":
134
+ newDate.setMonth(date.getMonth() + value);
135
+ break;
136
+ case "day":
137
+ newDate.setDate(date.getDate() + value);
138
+ break;
139
+ case "hour":
140
+ newDate.setHours(date.getHours() + value);
141
+ break;
142
+ case "minute":
143
+ newDate.setMinutes(date.getMinutes() + value);
144
+ break;
145
+ case "second":
146
+ newDate.setSeconds(date.getSeconds() + value);
147
+ break;
148
+ }
149
+ return newDate;
150
+ };
253
151
 
254
152
  const DEFAULT_DELIMITER = ";";
255
153
  const splitRows = (data) => {
@@ -28445,7 +28343,155 @@ const excelParse = (file, options) => {
28445
28343
  .map((x) => aggregateRow(header, x, options));
28446
28344
  };
28447
28345
 
28346
+ const processArrayDifferences = ({ elements, elementIdSelector, desiredItems, desiredItemSelector, }) => {
28347
+ const currentElementsIds = elements.map(elementIdSelector);
28348
+ const desiredItemsIds = desiredItems.map(desiredItemSelector);
28349
+ const missingElementIds = subArrays(desiredItemsIds, currentElementsIds, (a, b) => a === b);
28350
+ const missingElements = desiredItems.filter((x) => missingElementIds.includes(desiredItemSelector(x)));
28351
+ const exceedingElementIds = subArrays(currentElementsIds, desiredItemsIds, (a, b) => a === b);
28352
+ const exceedingElements = elements.filter((x) => exceedingElementIds.includes(elementIdSelector(x)));
28353
+ const unchangedElementIds = subArrays(currentElementsIds, exceedingElementIds, (a, b) => a === b);
28354
+ const unchangedElements = elements.filter((x) => unchangedElementIds.includes(elementIdSelector(x)));
28355
+ return {
28356
+ missingElements,
28357
+ exceedingElements,
28358
+ unchangedElements,
28359
+ };
28360
+ };
28361
+
28362
+ class DefaultLogger {
28363
+ constructor(loggerName) {
28364
+ this.loggerName = loggerName;
28365
+ }
28366
+ debug(message, meta) {
28367
+ if (meta) {
28368
+ console.log(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`, meta);
28369
+ }
28370
+ else {
28371
+ console.log(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`);
28372
+ }
28373
+ }
28374
+ info(message, meta) {
28375
+ if (meta) {
28376
+ console.info(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`, meta);
28377
+ }
28378
+ else {
28379
+ console.info(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`);
28380
+ }
28381
+ }
28382
+ warn(message, meta) {
28383
+ if (meta) {
28384
+ console.warn(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`, meta);
28385
+ }
28386
+ else {
28387
+ console.warn(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`);
28388
+ }
28389
+ }
28390
+ error(message, meta) {
28391
+ if (meta) {
28392
+ console.error(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`, meta);
28393
+ }
28394
+ else {
28395
+ console.error(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`);
28396
+ }
28397
+ }
28398
+ fatal(message, meta) {
28399
+ if (meta) {
28400
+ console.error(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`, meta);
28401
+ }
28402
+ else {
28403
+ console.error(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`);
28404
+ }
28405
+ }
28406
+ exception(message, error, meta) {
28407
+ if (meta) {
28408
+ console.error(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`, error, meta);
28409
+ }
28410
+ else {
28411
+ console.error(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`, error);
28412
+ }
28413
+ }
28414
+ }
28415
+
28416
+ class InternalLogger {
28417
+ constructor(enabled, level, serialization, provider) {
28418
+ this.enabled = enabled;
28419
+ this.level = level;
28420
+ this.serialization = serialization;
28421
+ this.provider = provider;
28422
+ }
28423
+ debug(message, meta) {
28424
+ if (this.enabled && this.level === exports.LogLevel.Debug) {
28425
+ this.provider.debug(message, this.serializeMeta(meta));
28426
+ }
28427
+ }
28428
+ info(message, meta) {
28429
+ if (this.enabled && this.level <= exports.LogLevel.Info) {
28430
+ this.provider.info(message, this.serializeMeta(meta));
28431
+ }
28432
+ }
28433
+ warn(message, meta) {
28434
+ if (this.enabled && this.level <= exports.LogLevel.Warn) {
28435
+ this.provider.warn(message, this.serializeMeta(meta));
28436
+ }
28437
+ }
28438
+ error(message, meta) {
28439
+ if (this.enabled && this.level <= exports.LogLevel.Error) {
28440
+ this.provider.error(message, this.serializeMeta(meta));
28441
+ }
28442
+ }
28443
+ fatal(message, meta) {
28444
+ if (this.enabled && this.level <= exports.LogLevel.Fatal) {
28445
+ this.provider.fatal(message, this.serializeMeta(meta));
28446
+ }
28447
+ }
28448
+ exception(message, error, meta) {
28449
+ if (this.enabled && this.level <= exports.LogLevel.Error) {
28450
+ this.provider.exception(message, error, this.serializeMeta(meta));
28451
+ }
28452
+ }
28453
+ serializeMeta(meta) {
28454
+ switch (this.serialization) {
28455
+ case exports.MetaSerializationType.JSON:
28456
+ return JSON.stringify(meta, null, 2);
28457
+ case exports.MetaSerializationType.None:
28458
+ default:
28459
+ return meta;
28460
+ }
28461
+ }
28462
+ }
28463
+ const getLogger = ({ enabled, level, loggerName, serialization, }) => {
28464
+ return new InternalLogger(enabled, level, serialization, new DefaultLogger(loggerName));
28465
+ };
28466
+ class Log {
28467
+ static setSerializationType(type) {
28468
+ this.metaSerialization = type;
28469
+ }
28470
+ static setLevel(level) {
28471
+ this.level = level;
28472
+ this.enabled = true;
28473
+ }
28474
+ static enable() {
28475
+ this.enabled = true;
28476
+ }
28477
+ static disable() {
28478
+ this.enabled = false;
28479
+ }
28480
+ static getLogger(loggerName) {
28481
+ return getLogger({
28482
+ enabled: this.enabled,
28483
+ level: this.level,
28484
+ serialization: this.metaSerialization,
28485
+ loggerName,
28486
+ });
28487
+ }
28488
+ }
28489
+ Log.enabled = true;
28490
+ Log.level = exports.LogLevel.Debug;
28491
+ Log.metaSerialization = exports.MetaSerializationType.None;
28492
+
28448
28493
  exports.Log = Log;
28494
+ exports.addTime = addTime;
28449
28495
  exports.buildObject = buildObject;
28450
28496
  exports.buildTree = buildTree;
28451
28497
  exports.byField = byField;
@@ -28477,12 +28523,14 @@ exports.newUuid = newUuid;
28477
28523
  exports.notNull = notNull;
28478
28524
  exports.notUndefined = notUndefined;
28479
28525
  exports.pluralize = pluralize;
28526
+ exports.processArrayDifferences = processArrayDifferences;
28480
28527
  exports.range = range;
28481
28528
  exports.removeUndefinedProps = removeUndefinedProps;
28482
28529
  exports.selectMany = selectMany;
28483
28530
  exports.sleep = sleep;
28484
28531
  exports.sort = sort;
28485
28532
  exports.splitPath = splitPath;
28533
+ exports.subArrays = subArrays;
28486
28534
  exports.toCamelCase = toCamelCase;
28487
28535
  exports.toDict = toDict;
28488
28536
  exports.toItemsDict = toItemsDict;