apitally 0.19.0 → 0.21.0

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 (128) hide show
  1. package/README.md +98 -43
  2. package/dist/adonisjs/middleware.cjs +3 -0
  3. package/dist/adonisjs/middleware.cjs.map +1 -1
  4. package/dist/adonisjs/middleware.js +3 -0
  5. package/dist/adonisjs/middleware.js.map +1 -1
  6. package/dist/adonisjs/provider.cjs +55 -25
  7. package/dist/adonisjs/provider.cjs.map +1 -1
  8. package/dist/adonisjs/provider.js +55 -25
  9. package/dist/adonisjs/provider.js.map +1 -1
  10. package/dist/common/client.cjs +4 -3
  11. package/dist/common/client.cjs.map +1 -1
  12. package/dist/common/client.js +4 -3
  13. package/dist/common/client.js.map +1 -1
  14. package/dist/common/requestLogger.cjs +5 -1
  15. package/dist/common/requestLogger.cjs.map +1 -1
  16. package/dist/common/requestLogger.d.cts +1 -1
  17. package/dist/common/requestLogger.d.ts +1 -1
  18. package/dist/common/requestLogger.js +5 -1
  19. package/dist/common/requestLogger.js.map +1 -1
  20. package/dist/common/response.cjs +12 -6
  21. package/dist/common/response.cjs.map +1 -1
  22. package/dist/common/response.d.cts +3 -3
  23. package/dist/common/response.d.ts +3 -3
  24. package/dist/common/response.js +12 -6
  25. package/dist/common/response.js.map +1 -1
  26. package/dist/common/validationErrorCounter.cjs +2 -2
  27. package/dist/common/validationErrorCounter.cjs.map +1 -1
  28. package/dist/common/validationErrorCounter.js +2 -2
  29. package/dist/common/validationErrorCounter.js.map +1 -1
  30. package/dist/elysia/index.cjs +1586 -0
  31. package/dist/elysia/index.cjs.map +1 -0
  32. package/dist/elysia/index.d.cts +9 -0
  33. package/dist/elysia/index.d.ts +9 -0
  34. package/dist/elysia/index.js +1556 -0
  35. package/dist/elysia/index.js.map +1 -0
  36. package/dist/elysia/plugin.cjs +1580 -0
  37. package/dist/elysia/plugin.cjs.map +1 -0
  38. package/dist/elysia/plugin.d.cts +53 -0
  39. package/dist/elysia/plugin.d.ts +53 -0
  40. package/dist/elysia/plugin.js +1556 -0
  41. package/dist/elysia/plugin.js.map +1 -0
  42. package/dist/elysia/utils.cjs +98 -0
  43. package/dist/elysia/utils.cjs.map +1 -0
  44. package/dist/elysia/utils.d.cts +12 -0
  45. package/dist/elysia/utils.d.ts +12 -0
  46. package/dist/elysia/utils.js +78 -0
  47. package/dist/elysia/utils.js.map +1 -0
  48. package/dist/express/index.cjs +58 -25
  49. package/dist/express/index.cjs.map +1 -1
  50. package/dist/express/index.js +58 -25
  51. package/dist/express/index.js.map +1 -1
  52. package/dist/express/middleware.cjs +58 -25
  53. package/dist/express/middleware.cjs.map +1 -1
  54. package/dist/express/middleware.js +58 -25
  55. package/dist/express/middleware.js.map +1 -1
  56. package/dist/fastify/index.cjs +58 -25
  57. package/dist/fastify/index.cjs.map +1 -1
  58. package/dist/fastify/index.js +58 -25
  59. package/dist/fastify/index.js.map +1 -1
  60. package/dist/fastify/plugin.cjs +58 -25
  61. package/dist/fastify/plugin.cjs.map +1 -1
  62. package/dist/fastify/plugin.js +58 -25
  63. package/dist/fastify/plugin.js.map +1 -1
  64. package/dist/h3/index.cjs +24 -11
  65. package/dist/h3/index.cjs.map +1 -1
  66. package/dist/h3/index.js +24 -11
  67. package/dist/h3/index.js.map +1 -1
  68. package/dist/h3/plugin.cjs +24 -11
  69. package/dist/h3/plugin.cjs.map +1 -1
  70. package/dist/h3/plugin.js +24 -11
  71. package/dist/h3/plugin.js.map +1 -1
  72. package/dist/hapi/index.cjs +6134 -0
  73. package/dist/hapi/index.cjs.map +1 -0
  74. package/dist/hapi/index.d.cts +9 -0
  75. package/dist/hapi/index.d.ts +9 -0
  76. package/dist/hapi/index.js +6124 -0
  77. package/dist/hapi/index.js.map +1 -0
  78. package/dist/hapi/plugin.cjs +6131 -0
  79. package/dist/hapi/plugin.cjs.map +1 -0
  80. package/dist/hapi/plugin.d.cts +36 -0
  81. package/dist/hapi/plugin.d.ts +36 -0
  82. package/dist/hapi/plugin.js +6124 -0
  83. package/dist/hapi/plugin.js.map +1 -0
  84. package/dist/hapi/utils.cjs +98 -0
  85. package/dist/hapi/utils.cjs.map +1 -0
  86. package/dist/hapi/utils.d.cts +14 -0
  87. package/dist/hapi/utils.d.ts +14 -0
  88. package/dist/hapi/utils.js +77 -0
  89. package/dist/hapi/utils.js.map +1 -0
  90. package/dist/hono/index.cjs +25 -12
  91. package/dist/hono/index.cjs.map +1 -1
  92. package/dist/hono/index.js +25 -12
  93. package/dist/hono/index.js.map +1 -1
  94. package/dist/hono/middleware.cjs +25 -12
  95. package/dist/hono/middleware.cjs.map +1 -1
  96. package/dist/hono/middleware.js +25 -12
  97. package/dist/hono/middleware.js.map +1 -1
  98. package/dist/koa/index.cjs +13 -6
  99. package/dist/koa/index.cjs.map +1 -1
  100. package/dist/koa/index.js +13 -6
  101. package/dist/koa/index.js.map +1 -1
  102. package/dist/koa/middleware.cjs +13 -6
  103. package/dist/koa/middleware.cjs.map +1 -1
  104. package/dist/koa/middleware.js +13 -6
  105. package/dist/koa/middleware.js.map +1 -1
  106. package/dist/loggers/hapi.cjs +54 -0
  107. package/dist/loggers/hapi.cjs.map +1 -0
  108. package/dist/loggers/hapi.d.cts +10 -0
  109. package/dist/loggers/hapi.d.ts +10 -0
  110. package/dist/loggers/hapi.js +31 -0
  111. package/dist/loggers/hapi.js.map +1 -0
  112. package/dist/loggers/index.cjs +81 -28
  113. package/dist/loggers/index.cjs.map +1 -1
  114. package/dist/loggers/index.d.cts +2 -0
  115. package/dist/loggers/index.d.ts +2 -0
  116. package/dist/loggers/index.js +80 -28
  117. package/dist/loggers/index.js.map +1 -1
  118. package/dist/loggers/pino.cjs +39 -13
  119. package/dist/loggers/pino.cjs.map +1 -1
  120. package/dist/loggers/pino.d.cts +1 -1
  121. package/dist/loggers/pino.d.ts +1 -1
  122. package/dist/loggers/pino.js +39 -13
  123. package/dist/loggers/pino.js.map +1 -1
  124. package/dist/nestjs/index.cjs +158 -118
  125. package/dist/nestjs/index.cjs.map +1 -1
  126. package/dist/nestjs/index.js +156 -117
  127. package/dist/nestjs/index.js.map +1 -1
  128. package/package.json +42 -2
@@ -1267,8 +1267,8 @@ var require_quick_format_unescaped = __commonJS({
1267
1267
  }
1268
1268
  }
1269
1269
  __name(tryStringify, "tryStringify");
1270
- module2.exports = format4;
1271
- function format4(f, args, opts) {
1270
+ module2.exports = format5;
1271
+ function format5(f, args, opts) {
1272
1272
  var ss = opts && opts.stringify || tryStringify;
1273
1273
  var offset = 1;
1274
1274
  if (typeof f === "object" && f !== null) {
@@ -1359,7 +1359,7 @@ var require_quick_format_unescaped = __commonJS({
1359
1359
  }
1360
1360
  return str;
1361
1361
  }
1362
- __name(format4, "format");
1362
+ __name(format5, "format");
1363
1363
  }
1364
1364
  });
1365
1365
 
@@ -2834,7 +2834,7 @@ var require_transport = __commonJS({
2834
2834
  var require_tools = __commonJS({
2835
2835
  "node_modules/pino/lib/tools.js"(exports2, module2) {
2836
2836
  "use strict";
2837
- var format4 = require_quick_format_unescaped();
2837
+ var format5 = require_quick_format_unescaped();
2838
2838
  var { mapHttpRequest, mapHttpResponse } = require_pino_std_serializers();
2839
2839
  var SonicBoom = require_sonic_boom();
2840
2840
  var onExit = require_on_exit_leak_free();
@@ -2871,13 +2871,13 @@ var require_tools = __commonJS({
2871
2871
  if (typeof this[msgPrefixSym] === "string" && msg !== void 0 && msg !== null) {
2872
2872
  msg = this[msgPrefixSym] + msg;
2873
2873
  }
2874
- this[writeSym](o, format4(msg, formatParams, this[formatOptsSym]), level);
2874
+ this[writeSym](o, format5(msg, formatParams, this[formatOptsSym]), level);
2875
2875
  } else {
2876
2876
  let msg = o === void 0 ? n.shift() : o;
2877
2877
  if (typeof this[msgPrefixSym] === "string" && msg !== void 0 && msg !== null) {
2878
2878
  msg = this[msgPrefixSym] + msg;
2879
2879
  }
2880
- this[writeSym](null, format4(msg, n, this[formatOptsSym]), level);
2880
+ this[writeSym](null, format5(msg, n, this[formatOptsSym]), level);
2881
2881
  }
2882
2882
  }
2883
2883
  __name(LOG, "LOG");
@@ -3376,7 +3376,7 @@ var require_meta = __commonJS({
3376
3376
  "node_modules/pino/lib/meta.js"(exports2, module2) {
3377
3377
  "use strict";
3378
3378
  module2.exports = {
3379
- version: "9.8.0"
3379
+ version: "9.9.0"
3380
3380
  };
3381
3381
  }
3382
3382
  });
@@ -4177,7 +4177,6 @@ var require_multistream = __commonJS({
4177
4177
  var { DEFAULT_LEVELS } = require_constants();
4178
4178
  var DEFAULT_INFO_LEVEL = DEFAULT_LEVELS.info;
4179
4179
  function multistream(streamsArray, opts) {
4180
- let counter = 0;
4181
4180
  streamsArray = streamsArray || [];
4182
4181
  opts = opts || {
4183
4182
  dedupe: false
@@ -4192,10 +4191,12 @@ var require_multistream = __commonJS({
4192
4191
  const res = {
4193
4192
  write,
4194
4193
  add,
4194
+ remove,
4195
4195
  emit,
4196
4196
  flushSync,
4197
4197
  end,
4198
4198
  minLevel: 0,
4199
+ lastId: 0,
4199
4200
  streams: [],
4200
4201
  clone,
4201
4202
  [metadata]: true,
@@ -4279,7 +4280,7 @@ var require_multistream = __commonJS({
4279
4280
  stream: stream_,
4280
4281
  level,
4281
4282
  levelVal: void 0,
4282
- id: counter++
4283
+ id: ++res.lastId
4283
4284
  };
4284
4285
  streams.unshift(dest_);
4285
4286
  streams.sort(compareByLevel);
@@ -4287,6 +4288,17 @@ var require_multistream = __commonJS({
4287
4288
  return res;
4288
4289
  }
4289
4290
  __name(add, "add");
4291
+ function remove(id) {
4292
+ const { streams } = this;
4293
+ const index = streams.findIndex((s) => s.id === id);
4294
+ if (index >= 0) {
4295
+ streams.splice(index, 1);
4296
+ streams.sort(compareByLevel);
4297
+ this.minLevel = streams.length > 0 ? streams[0].level : -1;
4298
+ }
4299
+ return res;
4300
+ }
4301
+ __name(remove, "remove");
4290
4302
  function end() {
4291
4303
  for (const { stream } of this.streams) {
4292
4304
  if (typeof stream.flushSync === "function") {
@@ -4307,6 +4319,7 @@ var require_multistream = __commonJS({
4307
4319
  return {
4308
4320
  write,
4309
4321
  add,
4322
+ remove,
4310
4323
  minLevel: level,
4311
4324
  streams,
4312
4325
  clone,
@@ -4892,7 +4905,8 @@ var ALLOWED_CONTENT_TYPES = [
4892
4905
  "application/json",
4893
4906
  "application/problem+json",
4894
4907
  "application/vnd.api+json",
4895
- "text/plain"
4908
+ "text/plain",
4909
+ "text/html"
4896
4910
  ];
4897
4911
  var EXCLUDE_PATH_PATTERNS = [
4898
4912
  /\/_?healthz?$/i,
@@ -5222,6 +5236,9 @@ var _RequestLogger = class _RequestLogger {
5222
5236
  __name(_RequestLogger, "RequestLogger");
5223
5237
  var RequestLogger = _RequestLogger;
5224
5238
  function convertHeaders(headers) {
5239
+ if (!headers) {
5240
+ return [];
5241
+ }
5225
5242
  if (headers instanceof Headers) {
5226
5243
  return Array.from(headers.entries());
5227
5244
  }
@@ -5337,7 +5354,7 @@ var _ValidationErrorCounter = class _ValidationErrorCounter {
5337
5354
  consumer: validationError.consumer || null,
5338
5355
  method: validationError.method,
5339
5356
  path: validationError.path,
5340
- loc: validationError.loc.split("."),
5357
+ loc: validationError.loc.split(".").filter(Boolean),
5341
5358
  msg: validationError.msg,
5342
5359
  type: validationError.type,
5343
5360
  error_count: count
@@ -5353,7 +5370,7 @@ var _ValidationErrorCounter = class _ValidationErrorCounter {
5353
5370
  validationError.consumer || "",
5354
5371
  validationError.method.toUpperCase(),
5355
5372
  validationError.path,
5356
- validationError.loc,
5373
+ validationError.loc.split(".").filter(Boolean),
5357
5374
  validationError.msg.trim(),
5358
5375
  validationError.type
5359
5376
  ].join("|");
@@ -5715,8 +5732,11 @@ function captureLog(level, args) {
5715
5732
  }
5716
5733
  __name(captureLog, "captureLog");
5717
5734
 
5718
- // src/loggers/utils.ts
5735
+ // src/loggers/hapi.ts
5719
5736
  var import_node_util2 = require("util");
5737
+
5738
+ // src/loggers/utils.ts
5739
+ var import_node_util3 = require("util");
5720
5740
  function formatMessage(message, ...args) {
5721
5741
  return [
5722
5742
  message,
@@ -5733,7 +5753,7 @@ function formatArg(arg) {
5733
5753
  return arg.trim();
5734
5754
  }
5735
5755
  if (arg instanceof Error) {
5736
- return (0, import_node_util2.format)(arg).trim();
5756
+ return (0, import_node_util3.format)(arg).trim();
5737
5757
  }
5738
5758
  if (arg === void 0 || arg === null || isEmptyObject(arg)) {
5739
5759
  return "";
@@ -5741,7 +5761,7 @@ function formatArg(arg) {
5741
5761
  try {
5742
5762
  return JSON.stringify(arg);
5743
5763
  } catch {
5744
- return (0, import_node_util2.format)(arg).trim();
5764
+ return (0, import_node_util3.format)(arg).trim();
5745
5765
  }
5746
5766
  }
5747
5767
  __name(formatArg, "formatArg");
@@ -5826,18 +5846,23 @@ var logLevelMap = {
5826
5846
  };
5827
5847
  async function patchPinoLogger(logger, logsContext) {
5828
5848
  try {
5829
- const pino = await Promise.resolve().then(() => __toESM(require_pino(), 1));
5830
- if (!(pino.default.symbols.streamSym in logger)) {
5831
- return;
5849
+ const symbols = [
5850
+ ...Object.getOwnPropertySymbols(logger),
5851
+ ...Object.getOwnPropertySymbols(Object.getPrototypeOf(logger))
5852
+ ];
5853
+ const streamSym = symbols.find((sym) => sym.toString() === "Symbol(pino.stream)");
5854
+ const messageKeySym = symbols.find((sym) => sym.toString() === "Symbol(pino.messageKey)");
5855
+ if (!streamSym || !messageKeySym) {
5856
+ return false;
5832
5857
  }
5833
5858
  if (!(originalStreamSym in logger)) {
5834
- logger[originalStreamSym] = logger[pino.default.symbols.streamSym];
5859
+ logger[originalStreamSym] = logger[streamSym];
5835
5860
  }
5836
5861
  const originalStream = logger[originalStreamSym];
5837
5862
  if (originalStream) {
5838
- const messageKey = logger[pino.default.symbols.messageKeySym];
5839
- const captureStream = new ApitallyLogCaptureStream(logsContext, messageKey);
5840
- logger[pino.default.symbols.streamSym] = pino.default.multistream([
5863
+ const pino = await Promise.resolve().then(() => __toESM(require_pino(), 1));
5864
+ const captureStream = new ApitallyLogCaptureStream(logsContext, logger[messageKeySym]);
5865
+ logger[streamSym] = pino.default.multistream([
5841
5866
  {
5842
5867
  level: 0,
5843
5868
  stream: originalStream
@@ -5850,7 +5875,9 @@ async function patchPinoLogger(logger, logsContext) {
5850
5875
  levels: logger.levels
5851
5876
  });
5852
5877
  }
5878
+ return true;
5853
5879
  } catch {
5880
+ return false;
5854
5881
  }
5855
5882
  }
5856
5883
  __name(patchPinoLogger, "patchPinoLogger");
@@ -5881,8 +5908,8 @@ var ApitallyLogCaptureStream = (_a2 = class {
5881
5908
  return;
5882
5909
  }
5883
5910
  try {
5884
- const message = obj[this.messageKey];
5885
- const rest = removeKeys(obj, [
5911
+ let message = obj[this.messageKey];
5912
+ const ignoreKeys = [
5886
5913
  "hostname",
5887
5914
  "level",
5888
5915
  this.messageKey,
@@ -5891,7 +5918,13 @@ var ApitallyLogCaptureStream = (_a2 = class {
5891
5918
  "reqId",
5892
5919
  "req",
5893
5920
  "res"
5894
- ]);
5921
+ ];
5922
+ if (!message && "data" in obj && "tags" in obj) {
5923
+ message = obj.data;
5924
+ ignoreKeys.push("data");
5925
+ ignoreKeys.push("tags");
5926
+ }
5927
+ const rest = removeKeys(obj, ignoreKeys);
5895
5928
  const formattedMessage = formatMessage(message, rest);
5896
5929
  if (formattedMessage) {
5897
5930
  logs.push({