@sera4/essentia 3.0.14 → 3.1.0-rc.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.
Files changed (75) hide show
  1. package/README.md +93 -308
  2. package/dist/ts/cache/index.d.ts +2 -2
  3. package/dist/ts/cache/index.js +13 -9
  4. package/dist/ts/cache/index.js.map +1 -1
  5. package/dist/ts/constants/index.d.ts +1 -1
  6. package/dist/ts/constants/index.js +4 -4
  7. package/dist/ts/constants/index.js.map +1 -1
  8. package/dist/ts/cycle/index.js +22 -20
  9. package/dist/ts/cycle/index.js.map +1 -1
  10. package/dist/ts/dns/{DnsCache.js → dns-cache.js} +17 -10
  11. package/dist/ts/dns/dns-cache.js.map +1 -0
  12. package/dist/ts/dns/index.d.ts +1 -1
  13. package/dist/ts/dns/index.js +1 -1
  14. package/dist/ts/dns/index.js.map +1 -1
  15. package/dist/ts/formatter/index.d.ts +19 -18
  16. package/dist/ts/formatter/index.js +32 -26
  17. package/dist/ts/formatter/index.js.map +1 -1
  18. package/dist/ts/hal/index.d.ts +1 -1
  19. package/dist/ts/hal/index.js +4 -4
  20. package/dist/ts/hal/index.js.map +1 -1
  21. package/dist/ts/health/index.d.ts +2 -3
  22. package/dist/ts/health/index.js +44 -39
  23. package/dist/ts/health/index.js.map +1 -1
  24. package/dist/ts/helpers/test-server-wrapper.d.ts +2 -2
  25. package/dist/ts/helpers/test-server-wrapper.js +17 -8
  26. package/dist/ts/helpers/test-server-wrapper.js.map +1 -1
  27. package/dist/ts/index.d.ts +14 -16
  28. package/dist/ts/index.js +16 -18
  29. package/dist/ts/index.js.map +1 -1
  30. package/dist/ts/last-commit/index.js +11 -11
  31. package/dist/ts/last-commit/index.js.map +1 -1
  32. package/dist/ts/logger/index.d.ts +2 -1
  33. package/dist/ts/logger/index.js +2 -1
  34. package/dist/ts/logger/index.js.map +1 -1
  35. package/dist/ts/logger/s4-logger.d.ts +19 -1
  36. package/dist/ts/logger/s4-logger.js +45 -16
  37. package/dist/ts/logger/s4-logger.js.map +1 -1
  38. package/dist/ts/paginator/s4-pagination.d.ts +13 -11
  39. package/dist/ts/paginator/s4-pagination.js +10 -10
  40. package/dist/ts/paginator/s4-pagination.js.map +1 -1
  41. package/dist/ts/paginator/sql-pagination.js +35 -16
  42. package/dist/ts/paginator/sql-pagination.js.map +1 -1
  43. package/dist/ts/paper-trail/helpers.js +22 -24
  44. package/dist/ts/paper-trail/helpers.js.map +1 -1
  45. package/dist/ts/paper-trail/index.d.ts +1 -1
  46. package/dist/ts/paper-trail/index.js +62 -63
  47. package/dist/ts/paper-trail/index.js.map +1 -1
  48. package/dist/ts/prompts/index.d.ts +2 -2
  49. package/dist/ts/prompts/index.js +9 -9
  50. package/dist/ts/prompts/index.js.map +1 -1
  51. package/dist/ts/queue/index.d.ts +1 -1
  52. package/dist/ts/queue/index.js +22 -16
  53. package/dist/ts/queue/index.js.map +1 -1
  54. package/dist/ts/queue/publisher.js +5 -2
  55. package/dist/ts/queue/publisher.js.map +1 -1
  56. package/dist/ts/queue/queue-logger.js +1 -1
  57. package/dist/ts/queue/subscriber.js +7 -1
  58. package/dist/ts/queue/subscriber.js.map +1 -1
  59. package/dist/ts/safe-proxy/index.d.ts +3 -14
  60. package/dist/ts/safe-proxy/index.js +4 -8
  61. package/dist/ts/safe-proxy/index.js.map +1 -1
  62. package/dist/ts/serializer/index.d.ts +1 -1
  63. package/dist/ts/serializer/index.js +4 -4
  64. package/dist/ts/serializer/index.js.map +1 -1
  65. package/dist/ts/task-scheduler/index.js +9 -7
  66. package/dist/ts/task-scheduler/index.js.map +1 -1
  67. package/dist/ts/utils/index.d.ts +2 -2
  68. package/dist/ts/utils/index.js +33 -28
  69. package/dist/ts/utils/index.js.map +1 -1
  70. package/last-commit.ts +12 -0
  71. package/package.json +28 -11
  72. package/dist/ts/dns/DnsCache.js.map +0 -1
  73. package/index.js +0 -17
  74. package/package.tar.gz +0 -0
  75. /package/dist/ts/dns/{DnsCache.d.ts → dns-cache.d.ts} +0 -0
@@ -1,6 +1,6 @@
1
- import winston from "winston";
2
- import util from "util";
1
+ import util from "node:util";
3
2
  import jsonStringify from "fast-safe-stringify";
3
+ import winston from "winston";
4
4
  import "winston-logstash";
5
5
  const colorizer = winston.format.colorize();
6
6
  // IETF RFC5424:
@@ -12,31 +12,38 @@ const levels = {
12
12
  debug: 3,
13
13
  trace: 4,
14
14
  };
15
+ export const LOG_LEVELS = ["error", "warn", "info", "debug", "trace"];
16
+ // Levels below 'info' are too noisy for production. We enforce an info+ floor
17
+ // so an accidental S4_LOG_LEVEL=debug can't leak verbose logs into prod.
18
+ const PROD_DISALLOWED_LEVELS = new Set(["debug", "trace"]);
19
+ function isLogLevel(value) {
20
+ return typeof value === "string" && LOG_LEVELS.includes(value.toLowerCase());
21
+ }
15
22
  // These colors are not used, however if colors are not defined for custom levels
16
23
  // then winston will throw an exception.
17
24
  winston.addColors({
18
- trace: 'white'
25
+ trace: "white",
19
26
  });
20
- const defaultLevel = process.env.NODE_ENV === 'production' ? 'info' : 'debug';
27
+ const defaultLevel = process.env.NODE_ENV === "production" ? "info" : "debug";
21
28
  const devFormat = {
22
29
  transform(info) {
23
30
  const { message } = info;
24
- const level = info[Symbol.for('level')];
25
- const args = info[Symbol.for('splat')];
26
- const strArgs = args ? args.map(jsonStringify).join(' ') : "";
27
- info[Symbol.for('message')] = colorizer.colorize(level, `${level}:\t`) + `${message} ${strArgs}`;
31
+ const level = info[Symbol.for("level")];
32
+ const args = info[Symbol.for("splat")];
33
+ const strArgs = args ? args.map(jsonStringify).join(" ") : "";
34
+ info[Symbol.for("message")] = `${colorizer.colorize(level, `${level}:\t`)}${message} ${strArgs}`;
28
35
  return info;
29
- }
36
+ },
30
37
  };
31
38
  const defaultTransport = new winston.transports.Console({
32
39
  format: devFormat,
33
- level: 'trace'
40
+ level: "trace",
34
41
  });
35
42
  const logger = winston.createLogger({
36
43
  levels: levels,
37
44
  level: defaultLevel,
38
45
  defaultMeta: {},
39
- transports: [defaultTransport]
46
+ transports: [defaultTransport],
40
47
  });
41
48
  export class S4Logger {
42
49
  configure(options) {
@@ -58,19 +65,41 @@ export class S4Logger {
58
65
  }
59
66
  }
60
67
  setLevel(level) {
61
- if (level && ["trace", "debug", "info", "error", "warn"].indexOf(level.toLowerCase()) >= 0) {
68
+ if (isLogLevel(level)) {
62
69
  logger.level = level;
63
70
  // Also update the transport level to ensure proper filtering
64
71
  defaultTransport.level = level;
65
72
  }
66
73
  }
74
+ /**
75
+ * Resolve a log level from the environment, applying a production floor of
76
+ * `info` (debug/trace are rejected with a console warning in prod). Returns
77
+ * the default level when the env var is unset or invalid.
78
+ */
79
+ static resolveLogLevel(options = {}) {
80
+ const isProduction = options.isProduction ?? process.env.NODE_ENV === "production";
81
+ const fallbackDefault = isProduction ? "info" : "debug";
82
+ const defaultLevel = isLogLevel(options.defaultLevel) ? options.defaultLevel.toLowerCase() : fallbackDefault;
83
+ const envVar = options.envVar ?? "S4_LOG_LEVEL";
84
+ const warnTag = options.warnTag ?? "[s4-logger]";
85
+ const requested = process.env[envVar];
86
+ if (!isLogLevel(requested)) {
87
+ return defaultLevel;
88
+ }
89
+ const normalized = requested.toLowerCase();
90
+ if (isProduction && PROD_DISALLOWED_LEVELS.has(normalized)) {
91
+ console.warn(`${warnTag} Ignoring ${envVar}=${normalized} in production; falling back to '${defaultLevel}'`);
92
+ return defaultLevel;
93
+ }
94
+ return normalized;
95
+ }
67
96
  mute() {
68
- logger.transports.forEach(t => {
97
+ logger.transports.forEach((t) => {
69
98
  t.silent = true;
70
99
  });
71
100
  }
72
101
  unmute() {
73
- logger.transports.forEach(t => {
102
+ logger.transports.forEach((t) => {
74
103
  t.silent = false;
75
104
  });
76
105
  }
@@ -94,9 +123,9 @@ export class S4Logger {
94
123
  }
95
124
  getStream() {
96
125
  return {
97
- write: function (message, encoding) {
126
+ write: (message, _encoding) => {
98
127
  logger.info(message);
99
- }
128
+ },
100
129
  };
101
130
  }
102
131
  }
@@ -1 +1 @@
1
- {"version":3,"file":"s4-logger.js","sourceRoot":"","sources":["../../../ts/logger/s4-logger.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"s4-logger.js","sourceRoot":"","sources":["../../../ts/logger/s4-logger.ts"],"names":[],"mappings":"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"}
@@ -1,25 +1,27 @@
1
1
  interface PaginationData {
2
2
  total: number;
3
- pages: number;
4
- page: number;
5
- offset: number;
6
- limit: number;
3
+ pages?: number;
4
+ page?: number;
5
+ offset?: number;
6
+ limit?: number;
7
7
  docs: any[];
8
8
  }
9
9
  interface Request {
10
- query?: Record<string, string>;
10
+ query?: Record<string, any>;
11
+ [key: string]: any;
11
12
  }
12
13
  interface Response {
13
- status: (code: number) => Response;
14
- end: () => void;
15
- set: (header: string, value: string) => Response;
16
- json: (data: any) => void;
14
+ status: (code: number) => any;
15
+ end: () => any;
16
+ set: (header: string, value: string) => any;
17
+ json: (data: any) => any;
18
+ [key: string]: any;
17
19
  }
18
20
  declare class S4Pagination {
19
- createPaginator(req: Request, res: Response, next: any): {
21
+ createPaginator(req: Request, res: Response, _next: any): {
20
22
  page: number;
21
23
  page_size: number;
22
- reply: (data: PaginationData) => void;
24
+ reply: (data: PaginationData | null) => void;
23
25
  };
24
26
  }
25
27
  declare const paginator: S4Pagination;
@@ -1,33 +1,33 @@
1
1
  const default_page = 1;
2
2
  const default_size = 5;
3
3
  function parseRequest(req, item, default_value) {
4
- if (!req || !req.query) {
4
+ if (!req?.query) {
5
5
  return default_value;
6
6
  }
7
- const r = parseInt(req.query[item]);
8
- if (isNaN(r) || r < default_value) {
7
+ const r = parseInt(req.query[item], 10);
8
+ if (Number.isNaN(r) || r < default_value) {
9
9
  return default_value;
10
10
  }
11
11
  return r;
12
12
  }
13
13
  class S4Pagination {
14
- createPaginator(req, res, next) {
14
+ createPaginator(req, res, _next) {
15
15
  const paginator = {
16
16
  page: parseRequest(req, "page", default_page),
17
17
  page_size: parseRequest(req, "page_size", default_size),
18
- reply: function (data) {
18
+ reply: (data) => {
19
19
  if (!data) {
20
20
  res.status(500).end();
21
21
  return;
22
22
  }
23
23
  const pagination = {
24
24
  total: data.total,
25
- total_pages: data.pages,
26
- current_page: data.page,
25
+ total_pages: data.pages ?? 0,
26
+ current_page: data.page ?? 1,
27
27
  first_page: data.page === 1,
28
28
  last_page: data.offset === data.pages,
29
- page_size: data.limit,
30
- out_of_bounds: data.docs.length === 0
29
+ page_size: data.limit ?? 0,
30
+ out_of_bounds: data.docs.length === 0,
31
31
  };
32
32
  if (!pagination.out_of_bounds) {
33
33
  if (pagination.current_page > 1) {
@@ -39,7 +39,7 @@ class S4Pagination {
39
39
  }
40
40
  res.set("s4-pagination", JSON.stringify(pagination));
41
41
  res.json(data.docs);
42
- }
42
+ },
43
43
  };
44
44
  return paginator;
45
45
  }
@@ -1 +1 @@
1
- {"version":3,"file":"s4-pagination.js","sourceRoot":"","sources":["../../../ts/paginator/s4-pagination.ts"],"names":[],"mappings":"AAgCA,MAAM,YAAY,GAAG,CAAC,CAAC;AACvB,MAAM,YAAY,GAAG,CAAC,CAAC;AAEvB,SAAS,YAAY,CAAC,GAAY,EAAE,IAAY,EAAE,aAAqB;IACrE,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;QACvB,OAAO,aAAa,CAAC;IACvB,CAAC;IACD,MAAM,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;IACpC,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,aAAa,EAAE,CAAC;QAClC,OAAO,aAAa,CAAC;IACvB,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED,MAAM,YAAY;IAChB,eAAe,CAAC,GAAY,EAAE,GAAa,EAAE,IAAS;QACpD,MAAM,SAAS,GAAG;YAChB,IAAI,EAAE,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,YAAY,CAAC;YAC7C,SAAS,EAAE,YAAY,CAAC,GAAG,EAAE,WAAW,EAAE,YAAY,CAAC;YACvD,KAAK,EAAE,UAAS,IAAoB;gBAClC,IAAI,CAAC,IAAI,EAAE,CAAC;oBACV,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;oBACtB,OAAO;gBACT,CAAC;gBACD,MAAM,UAAU,GAAuB;oBACrC,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,WAAW,EAAE,IAAI,CAAC,KAAK;oBACvB,YAAY,EAAE,IAAI,CAAC,IAAI;oBACvB,UAAU,EAAE,IAAI,CAAC,IAAI,KAAK,CAAC;oBAC3B,SAAS,EAAE,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,KAAK;oBACrC,SAAS,EAAE,IAAI,CAAC,KAAK;oBACrB,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC;iBACtC,CAAC;gBAEF,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,CAAC;oBAC9B,IAAI,UAAU,CAAC,YAAY,GAAG,CAAC,EAAE,CAAC;wBAChC,UAAU,CAAC,aAAa,GAAG,UAAU,CAAC,YAAY,GAAG,CAAC,CAAC;oBACzD,CAAC;oBACD,IAAI,UAAU,CAAC,YAAY,GAAG,UAAU,CAAC,WAAW,EAAE,CAAC;wBACrD,UAAU,CAAC,SAAS,GAAG,UAAU,CAAC,YAAY,GAAG,CAAC,CAAC;oBACrD,CAAC;gBACH,CAAC;gBAED,GAAG,CAAC,GAAG,CAAC,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;gBACrD,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACtB,CAAC;SACF,CAAC;QACF,OAAO,SAAS,CAAC;IACnB,CAAC;CACF;AAED,MAAM,SAAS,GAAG,IAAI,YAAY,EAAE,CAAC;AACrC,eAAe,SAAS,CAAC"}
1
+ {"version":3,"file":"s4-pagination.js","sourceRoot":"","sources":["../../../ts/paginator/s4-pagination.ts"],"names":[],"mappings":"AAkCA,MAAM,YAAY,GAAG,CAAC,CAAC;AACvB,MAAM,YAAY,GAAG,CAAC,CAAC;AAEvB,SAAS,YAAY,CAAC,GAAY,EAAE,IAAY,EAAE,aAAqB;IACrE,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC;QAChB,OAAO,aAAa,CAAC;IACvB,CAAC;IACD,MAAM,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACxC,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,aAAa,EAAE,CAAC;QACzC,OAAO,aAAa,CAAC;IACvB,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED,MAAM,YAAY;IAChB,eAAe,CAAC,GAAY,EAAE,GAAa,EAAE,KAAU;QACrD,MAAM,SAAS,GAAG;YAChB,IAAI,EAAE,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,YAAY,CAAC;YAC7C,SAAS,EAAE,YAAY,CAAC,GAAG,EAAE,WAAW,EAAE,YAAY,CAAC;YACvD,KAAK,EAAE,CAAC,IAA2B,EAAE,EAAE;gBACrC,IAAI,CAAC,IAAI,EAAE,CAAC;oBACV,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;oBACtB,OAAO;gBACT,CAAC;gBACD,MAAM,UAAU,GAAuB;oBACrC,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,WAAW,EAAE,IAAI,CAAC,KAAK,IAAI,CAAC;oBAC5B,YAAY,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC;oBAC5B,UAAU,EAAE,IAAI,CAAC,IAAI,KAAK,CAAC;oBAC3B,SAAS,EAAE,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,KAAK;oBACrC,SAAS,EAAE,IAAI,CAAC,KAAK,IAAI,CAAC;oBAC1B,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC;iBACtC,CAAC;gBAEF,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,CAAC;oBAC9B,IAAI,UAAU,CAAC,YAAY,GAAG,CAAC,EAAE,CAAC;wBAChC,UAAU,CAAC,aAAa,GAAG,UAAU,CAAC,YAAY,GAAG,CAAC,CAAC;oBACzD,CAAC;oBACD,IAAI,UAAU,CAAC,YAAY,GAAG,UAAU,CAAC,WAAW,EAAE,CAAC;wBACrD,UAAU,CAAC,SAAS,GAAG,UAAU,CAAC,YAAY,GAAG,CAAC,CAAC;oBACrD,CAAC;gBACH,CAAC;gBAED,GAAG,CAAC,GAAG,CAAC,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;gBACrD,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACtB,CAAC;SACF,CAAC;QACF,OAAO,SAAS,CAAC;IACnB,CAAC;CACF;AAED,MAAM,SAAS,GAAG,IAAI,YAAY,EAAE,CAAC;AACrC,eAAe,SAAS,CAAC"}
@@ -1,8 +1,15 @@
1
1
  class SequelizePaginator {
2
+ paginateIn;
3
+ paginateOut;
4
+ zeroBasedOffset;
5
+ paginationHeader;
6
+ headersOnly;
7
+ paginationTag;
8
+ collectionTag;
2
9
  constructor() {
3
10
  this.paginateIn = {
4
11
  size: "page_size",
5
- index: "page_index"
12
+ index: "page_index",
6
13
  };
7
14
  this.paginateOut = {
8
15
  current_page: "current_page",
@@ -25,17 +32,17 @@ class SequelizePaginator {
25
32
  paginate(Model, resource = "") {
26
33
  const model = Model.instance || Model;
27
34
  const DEFAULT_PAGINATION = { limit: 15, offset: 0 };
28
- let pagination = { limit: 15, offset: 0 };
35
+ const pagination = { limit: 15, offset: 0 };
29
36
  let response = null;
30
37
  const using = (options, resp) => {
31
38
  response = resp;
32
39
  let limit = DEFAULT_PAGINATION.limit;
33
40
  let offset = DEFAULT_PAGINATION.offset;
34
- if (options && options[this.paginateIn.size]) {
35
- limit = parseInt(options[this.paginateIn.size]);
41
+ if (options?.[this.paginateIn.size]) {
42
+ limit = parseInt(options[this.paginateIn.size], 10);
36
43
  }
37
- if (options && options[this.paginateIn.index]) {
38
- offset = parseInt(options[this.paginateIn.index]);
44
+ if (options?.[this.paginateIn.index]) {
45
+ offset = parseInt(options[this.paginateIn.index], 10);
39
46
  }
40
47
  if (!Number.isInteger(limit) || limit < 1) {
41
48
  limit = 1;
@@ -54,7 +61,8 @@ class SequelizePaginator {
54
61
  options.limit = pagination.limit;
55
62
  options.offset = pagination.limit * pagination.offset;
56
63
  return new Promise((resolve, reject) => {
57
- model.findAndCountAll(options)
64
+ model
65
+ .findAndCountAll(options)
58
66
  .then((r) => {
59
67
  const paginationData = getPaginationData(r);
60
68
  if (response) {
@@ -69,7 +77,8 @@ class SequelizePaginator {
69
77
  data[this.collectionTag] = r.rows;
70
78
  }
71
79
  resolve(data);
72
- }).catch((e) => reject(e));
80
+ })
81
+ .catch((e) => reject(e));
73
82
  });
74
83
  };
75
84
  const addLinks = (data) => {
@@ -83,16 +92,26 @@ class SequelizePaginator {
83
92
  if (data && linksKey && !data[this.paginateOut.out_of_bounds]) {
84
93
  const links = {};
85
94
  const firstPageIndex = this.zeroBasedOffset ? 0 : 1;
86
- const lastPageIndex = this.zeroBasedOffset ? data[this.paginateOut.total_pages] - 1 : data[this.paginateOut.total_pages];
87
- links[this.paginateOut.first_page] = `${resource}?${this.paginateIn.index}=${firstPageIndex}&${this.paginateIn.size}=${data[this.paginateOut.page_size]}`;
88
- links[this.paginateOut.last_page] = `${resource}?${this.paginateIn.index}=${lastPageIndex}&${this.paginateIn.size}=${data[this.paginateOut.page_size]}`;
95
+ const lastPageIndex = this.zeroBasedOffset
96
+ ? data[this.paginateOut.total_pages] - 1
97
+ : data[this.paginateOut.total_pages];
98
+ links[this.paginateOut.first_page] =
99
+ `${resource}?${this.paginateIn.index}=${firstPageIndex}&${this.paginateIn.size}=${data[this.paginateOut.page_size]}`;
100
+ links[this.paginateOut.last_page] =
101
+ `${resource}?${this.paginateIn.index}=${lastPageIndex}&${this.paginateIn.size}=${data[this.paginateOut.page_size]}`;
89
102
  if (data[this.paginateOut.previous_page]) {
90
- const prevPageIndex = this.zeroBasedOffset ? data[this.paginateOut.previous_page] - 1 : data[this.paginateOut.previous_page];
91
- links[this.paginateOut.previous_page] = `${resource}?${this.paginateIn.index}=${prevPageIndex}&${this.paginateIn.size}=${data[this.paginateOut.page_size]}`;
103
+ const prevPageIndex = this.zeroBasedOffset
104
+ ? data[this.paginateOut.previous_page] - 1
105
+ : data[this.paginateOut.previous_page];
106
+ links[this.paginateOut.previous_page] =
107
+ `${resource}?${this.paginateIn.index}=${prevPageIndex}&${this.paginateIn.size}=${data[this.paginateOut.page_size]}`;
92
108
  }
93
109
  if (data[this.paginateOut.next_page]) {
94
- const nextPageIndex = this.zeroBasedOffset ? data[this.paginateOut.next_page] - 1 : data[this.paginateOut.next_page];
95
- links[this.paginateOut.next_page] = `${resource}?${this.paginateIn.index}=${nextPageIndex}&${this.paginateIn.size}=${data[this.paginateOut.page_size]}`;
110
+ const nextPageIndex = this.zeroBasedOffset
111
+ ? data[this.paginateOut.next_page] - 1
112
+ : data[this.paginateOut.next_page];
113
+ links[this.paginateOut.next_page] =
114
+ `${resource}?${this.paginateIn.index}=${nextPageIndex}&${this.paginateIn.size}=${data[this.paginateOut.page_size]}`;
96
115
  }
97
116
  data[linksKey] = links;
98
117
  }
@@ -125,7 +144,7 @@ class SequelizePaginator {
125
144
  };
126
145
  return {
127
146
  using,
128
- paginate
147
+ paginate,
129
148
  };
130
149
  }
131
150
  configure(options) {
@@ -1 +1 @@
1
- {"version":3,"file":"sql-pagination.js","sourceRoot":"","sources":["../../../ts/paginator/sql-pagination.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sql-pagination.js","sourceRoot":"","sources":["../../../ts/paginator/sql-pagination.ts"],"names":[],"mappings":"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"}
@@ -1,39 +1,37 @@
1
- import pkg from 'deep-diff';
2
- import _ from 'lodash';
1
+ import pkg from "deep-diff";
2
+ import _ from "lodash";
3
3
  const { diff } = pkg;
4
4
  const capitalizeFirstLetter = (string) => string.charAt(0).toUpperCase() + string.slice(1);
5
5
  const toUnderscored = (obj) => {
6
6
  _.forEach(obj, (k, v) => {
7
- obj[k] = v
8
- .replace(/(?:^|\.?)([A-Z])/g, (x, y) => `_${y.toLowerCase()}`)
9
- .replace(/^_/, '');
7
+ obj[k] = v.replace(/(?:^|\.?)([A-Z])/g, (_x, y) => `_${y.toLowerCase()}`).replace(/^_/, "");
10
8
  });
11
9
  return obj;
12
10
  };
13
11
  const calcDelta = (current, next, exclude, strict, DEBUG = false) => {
14
12
  if (DEBUG) {
15
- console.log('current', current);
16
- console.log('next', next);
17
- console.log('exclude', exclude);
13
+ console.log("current", current);
14
+ console.log("next", next);
15
+ console.log("exclude", exclude);
18
16
  }
19
17
  const di = diff(current, next);
20
18
  if (DEBUG) {
21
- console.log('di', di);
19
+ console.log("di", di);
22
20
  let diffs2 = [];
23
21
  if (di) {
24
- diffs2 = di.map((i) => JSON.parse(JSON.stringify(i).replace('"__data",', '')));
22
+ diffs2 = di.map((i) => JSON.parse(JSON.stringify(i).replace('"__data",', "")));
25
23
  }
26
- console.log('diffs2', diffs2);
27
- console.log('filter1', diffs2.filter(i => i.path.join(',').indexOf('_') === -1));
28
- console.log('filter2', diffs2.filter(i => exclude.every(x => i.path.indexOf(x) === -1)));
24
+ console.log("diffs2", diffs2);
25
+ console.log("filter1", diffs2.filter((i) => i.path.join(",").indexOf("_") === -1));
26
+ console.log("filter2", diffs2.filter((i) => exclude.every((x) => i.path.indexOf(x) === -1)));
29
27
  }
30
28
  let diffs = [];
31
29
  if (di) {
32
30
  diffs = di
33
- .map((i) => JSON.parse(JSON.stringify(i).replace('"__data",', '')))
31
+ .map((i) => JSON.parse(JSON.stringify(i).replace('"__data",', "")))
34
32
  .filter((i) => {
35
- if (!strict && i.kind === 'E') {
36
- // eslint-disable-next-line eqeqeq
33
+ if (!strict && i.kind === "E") {
34
+ // biome-ignore lint/suspicious/noDoubleEquals: intentional loose equality for non-strict mode
37
35
  if (i.lhs != i.rhs)
38
36
  return i;
39
37
  }
@@ -49,26 +47,26 @@ const calcDelta = (current, next, exclude, strict, DEBUG = false) => {
49
47
  return null;
50
48
  };
51
49
  const diffToString = (val) => {
52
- if (typeof val === 'undefined' || val === null)
53
- return '';
50
+ if (typeof val === "undefined" || val === null)
51
+ return "";
54
52
  if (val === true)
55
- return '1';
53
+ return "1";
56
54
  if (val === false)
57
- return '0';
58
- if (typeof val === 'string')
55
+ return "0";
56
+ if (typeof val === "string")
59
57
  return val;
60
58
  if (!Number.isNaN(Number(val)))
61
59
  return `${String(val)}`;
62
- if ((typeof val === 'undefined' ? 'undefined' : typeof val) === 'object')
60
+ if ((typeof val === "undefined" ? "undefined" : typeof val) === "object")
63
61
  return `${JSON.stringify(val)}`;
64
62
  if (Array.isArray(val))
65
63
  return `${JSON.stringify(val)}`;
66
- return '';
64
+ return "";
67
65
  };
68
66
  export default {
69
67
  capitalizeFirstLetter,
70
68
  toUnderscored,
71
69
  calcDelta,
72
- diffToString
70
+ diffToString,
73
71
  };
74
72
  //# sourceMappingURL=helpers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../ts/paper-trail/helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../ts/paper-trail/helpers.ts"],"names":[],"mappings":"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"}
@@ -51,4 +51,4 @@ declare const paperTrail: {
51
51
  defineModels: (db: any) => void;
52
52
  };
53
53
  export default paperTrail;
54
- export type { PaperTrailOptions, ModelInstance, ModelOptions };
54
+ export type { ModelInstance, ModelOptions, PaperTrailOptions };