@sectester/scan 0.36.2 → 0.37.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 (114) hide show
  1. package/README.md +4 -5
  2. package/package.json +1 -1
  3. package/src/DefaultDiscoveries.js +1 -2
  4. package/src/DefaultDiscoveries.js.map +1 -1
  5. package/src/DefaultScans.d.ts +0 -4
  6. package/src/DefaultScans.js +0 -24
  7. package/src/DefaultScans.js.map +1 -1
  8. package/src/Scans.d.ts +0 -4
  9. package/src/Scans.js.map +1 -1
  10. package/src/target/Body.d.ts +9 -0
  11. package/src/target/Body.js +48 -0
  12. package/src/target/Body.js.map +1 -0
  13. package/src/target/HeadersType.d.ts +1 -0
  14. package/src/target/HeadersType.js +3 -0
  15. package/src/target/HeadersType.js.map +1 -0
  16. package/src/target/QueryParamsType.d.ts +1 -0
  17. package/src/target/QueryParamsType.js +3 -0
  18. package/src/target/QueryParamsType.js.map +1 -0
  19. package/src/target/Target.d.ts +19 -26
  20. package/src/target/Target.js +43 -109
  21. package/src/target/Target.js.map +1 -1
  22. package/src/target/converters/ArrayBufferConverter.d.ts +6 -0
  23. package/src/target/converters/ArrayBufferConverter.js +17 -0
  24. package/src/target/converters/ArrayBufferConverter.js.map +1 -0
  25. package/src/target/converters/AsyncIterableConverter.d.ts +6 -0
  26. package/src/target/converters/AsyncIterableConverter.js +20 -0
  27. package/src/target/converters/AsyncIterableConverter.js.map +1 -0
  28. package/src/target/converters/BlobConverter.d.ts +6 -0
  29. package/src/target/converters/BlobConverter.js +17 -0
  30. package/src/target/converters/BlobConverter.js.map +1 -0
  31. package/src/target/converters/BodyConverter.d.ts +5 -0
  32. package/src/target/converters/BodyConverter.js +3 -0
  33. package/src/target/converters/BodyConverter.js.map +1 -0
  34. package/src/target/converters/ConverterRegistry.d.ts +6 -0
  35. package/src/target/converters/ConverterRegistry.js +14 -0
  36. package/src/target/converters/ConverterRegistry.js.map +1 -0
  37. package/src/target/converters/FormDataConverter.d.ts +7 -0
  38. package/src/target/converters/FormDataConverter.js +39 -0
  39. package/src/target/converters/FormDataConverter.js.map +1 -0
  40. package/src/target/converters/IterableConverter.d.ts +6 -0
  41. package/src/target/converters/IterableConverter.js +21 -0
  42. package/src/target/converters/IterableConverter.js.map +1 -0
  43. package/src/target/converters/JsonConverter.d.ts +6 -0
  44. package/src/target/converters/JsonConverter.js +21 -0
  45. package/src/target/converters/JsonConverter.js.map +1 -0
  46. package/src/target/converters/StreamConverter.d.ts +6 -0
  47. package/src/target/converters/StreamConverter.js +21 -0
  48. package/src/target/converters/StreamConverter.js.map +1 -0
  49. package/src/target/converters/StringConverter.d.ts +6 -0
  50. package/src/target/converters/StringConverter.js +26 -0
  51. package/src/target/converters/StringConverter.js.map +1 -0
  52. package/src/target/converters/URLSearchParamsConverter.d.ts +6 -0
  53. package/src/target/converters/URLSearchParamsConverter.js +17 -0
  54. package/src/target/converters/URLSearchParamsConverter.js.map +1 -0
  55. package/src/target/converters/index.d.ts +11 -0
  56. package/src/target/converters/index.js +15 -0
  57. package/src/target/converters/index.js.map +1 -0
  58. package/src/target/index.d.ts +3 -1
  59. package/src/target/index.js +3 -1
  60. package/src/target/index.js.map +1 -1
  61. package/src/utils/escape.d.ts +1 -1
  62. package/src/utils/escape.js +1 -14
  63. package/src/utils/escape.js.map +1 -1
  64. package/src/utils/index.d.ts +7 -1
  65. package/src/utils/index.js +7 -1
  66. package/src/utils/index.js.map +1 -1
  67. package/src/utils/is-blob.d.ts +1 -0
  68. package/src/utils/is-blob.js +11 -0
  69. package/src/utils/is-blob.js.map +1 -0
  70. package/src/utils/is-json-serializable.d.ts +1 -0
  71. package/src/utils/is-json-serializable.js +19 -0
  72. package/src/utils/is-json-serializable.js.map +1 -0
  73. package/src/utils/is-json.d.ts +1 -0
  74. package/src/utils/is-json.js +18 -0
  75. package/src/utils/is-json.js.map +1 -0
  76. package/src/utils/is-primitive.d.ts +1 -0
  77. package/src/utils/is-primitive.js +10 -0
  78. package/src/utils/is-primitive.js.map +1 -0
  79. package/src/utils/is-stream.d.ts +1 -0
  80. package/src/utils/is-stream.js +6 -0
  81. package/src/utils/is-stream.js.map +1 -0
  82. package/src/utils/is-xml.d.ts +1 -0
  83. package/src/utils/is-xml.js +11 -0
  84. package/src/utils/is-xml.js.map +1 -0
  85. package/src/utils/normalize-linefeeds.d.ts +1 -0
  86. package/src/utils/normalize-linefeeds.js +6 -0
  87. package/src/utils/normalize-linefeeds.js.map +1 -0
  88. package/src/target/body-parsers/BinaryBodyParser.d.ts +0 -6
  89. package/src/target/body-parsers/BinaryBodyParser.js +0 -14
  90. package/src/target/body-parsers/BinaryBodyParser.js.map +0 -1
  91. package/src/target/body-parsers/BodyParser.d.ts +0 -12
  92. package/src/target/body-parsers/BodyParser.js +0 -5
  93. package/src/target/body-parsers/BodyParser.js.map +0 -1
  94. package/src/target/body-parsers/FormDataBodyParser.d.ts +0 -9
  95. package/src/target/body-parsers/FormDataBodyParser.js +0 -63
  96. package/src/target/body-parsers/FormDataBodyParser.js.map +0 -1
  97. package/src/target/body-parsers/JsonBodyParser.d.ts +0 -7
  98. package/src/target/body-parsers/JsonBodyParser.js +0 -24
  99. package/src/target/body-parsers/JsonBodyParser.js.map +0 -1
  100. package/src/target/body-parsers/TextBodyParser.d.ts +0 -6
  101. package/src/target/body-parsers/TextBodyParser.js +0 -15
  102. package/src/target/body-parsers/TextBodyParser.js.map +0 -1
  103. package/src/target/body-parsers/UrlEncodedBodyParser.d.ts +0 -7
  104. package/src/target/body-parsers/UrlEncodedBodyParser.js +0 -25
  105. package/src/target/body-parsers/UrlEncodedBodyParser.js.map +0 -1
  106. package/src/target/body-parsers/index.d.ts +0 -2
  107. package/src/target/body-parsers/index.js +0 -6
  108. package/src/target/body-parsers/index.js.map +0 -1
  109. package/src/target/body-parsers/register.d.ts +0 -1
  110. package/src/target/body-parsers/register.js +0 -26
  111. package/src/target/body-parsers/register.js.map +0 -1
  112. package/src/utils/entries-to-list.d.ts +0 -4
  113. package/src/utils/entries-to-list.js +0 -10
  114. package/src/utils/entries-to-list.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BlobConverter.js","sourceRoot":"","sources":["../../../../../../packages/scan/src/target/converters/BlobConverter.ts"],"names":[],"mappings":";;;AAAA,uCAAyC;AAGzC,MAAa,aAAa;IACjB,SAAS,CAAC,IAAa;QAC5B,OAAO,IAAA,kBAAU,EAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,IAAU;QAC7B,OAAO,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;IAC5D,CAAC;IAEM,WAAW,CAAC,IAAU;QAC3B,OAAO,IAAI,CAAC,IAAI,IAAI,0BAA0B,CAAC;IACjD,CAAC;CACF;AAZD,sCAYC"}
@@ -0,0 +1,5 @@
1
+ export interface BodyConverter<T> {
2
+ canHandle(data: unknown, mimeType?: string): data is T;
3
+ convert(data: T, mimeType?: string): Promise<string>;
4
+ getMimeType(data: T): string;
5
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=BodyConverter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BodyConverter.js","sourceRoot":"","sources":["../../../../../../packages/scan/src/target/converters/BodyConverter.ts"],"names":[],"mappings":""}
@@ -0,0 +1,6 @@
1
+ import { BodyConverter } from './BodyConverter';
2
+ export declare class ConverterRegistry {
3
+ private readonly converters;
4
+ constructor(converters: BodyConverter<unknown>[]);
5
+ getConverter(data: unknown, mimeType?: string): BodyConverter<unknown> | undefined;
6
+ }
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ConverterRegistry = void 0;
4
+ class ConverterRegistry {
5
+ constructor(converters) {
6
+ this.converters = [];
7
+ this.converters = converters;
8
+ }
9
+ getConverter(data, mimeType) {
10
+ return this.converters.find(converter => converter.canHandle(data, mimeType));
11
+ }
12
+ }
13
+ exports.ConverterRegistry = ConverterRegistry;
14
+ //# sourceMappingURL=ConverterRegistry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConverterRegistry.js","sourceRoot":"","sources":["../../../../../../packages/scan/src/target/converters/ConverterRegistry.ts"],"names":[],"mappings":";;;AAEA,MAAa,iBAAiB;IAG5B,YAAY,UAAoC;QAF/B,eAAU,GAA6B,EAAE,CAAC;QAGzD,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;IAEM,YAAY,CACjB,IAAa,EACb,QAAiB;QAEjB,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CACtC,SAAS,CAAC,SAAS,CAAC,IAAI,EAAE,QAAQ,CAAC,CACpC,CAAC;IACJ,CAAC;CACF;AAfD,8CAeC"}
@@ -0,0 +1,7 @@
1
+ import { BodyConverter } from './BodyConverter';
2
+ export declare class FormDataConverter implements BodyConverter<FormData> {
3
+ canHandle(data: unknown): data is FormData;
4
+ convert(data: FormData): Promise<string>;
5
+ getMimeType(_data: FormData): string;
6
+ private convertBlob;
7
+ }
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FormDataConverter = void 0;
4
+ const utils_1 = require("../../utils");
5
+ const normalize_linefeeds_1 = require("../../utils/normalize-linefeeds");
6
+ const node_crypto_1 = require("node:crypto");
7
+ class FormDataConverter {
8
+ canHandle(data) {
9
+ return data instanceof FormData;
10
+ }
11
+ async convert(data) {
12
+ const array = new Uint32Array(10);
13
+ const boundary = (0, utils_1.escape)(`----BrightFormBoundary${(0, node_crypto_1.getRandomValues)(array)}`);
14
+ let formDataString = '';
15
+ for (const [key, value] of data) {
16
+ formDataString += `--${boundary}\r\n`;
17
+ if (typeof value === 'string') {
18
+ formDataString += `content-disposition: form-data; name="${(0, utils_1.escape)((0, normalize_linefeeds_1.normalizeLinefeeds)(key))}"\r\n\r\n`;
19
+ formDataString += `${value}\r\n`;
20
+ }
21
+ else {
22
+ formDataString += `content-disposition: form-data; name="${(0, utils_1.escape)((0, normalize_linefeeds_1.normalizeLinefeeds)(key))}"; filename="${(0, utils_1.escape)(value.type)}"\r\n`;
23
+ formDataString += `content-type: ${value.type || 'application/octet-stream'}\r\n\r\n`;
24
+ formDataString += `${await this.convertBlob(value)}\r\n`;
25
+ }
26
+ }
27
+ formDataString += `--${boundary}--\r\n`;
28
+ return formDataString;
29
+ }
30
+ getMimeType(_data) {
31
+ return 'multipart/form-data';
32
+ }
33
+ async convertBlob(blob) {
34
+ const arrayBuffer = await blob.arrayBuffer();
35
+ return new TextDecoder().decode(arrayBuffer);
36
+ }
37
+ }
38
+ exports.FormDataConverter = FormDataConverter;
39
+ //# sourceMappingURL=FormDataConverter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormDataConverter.js","sourceRoot":"","sources":["../../../../../../packages/scan/src/target/converters/FormDataConverter.ts"],"names":[],"mappings":";;;AACA,uCAAqC;AACrC,yEAAqE;AACrE,6CAA8C;AAE9C,MAAa,iBAAiB;IACrB,SAAS,CAAC,IAAa;QAC5B,OAAO,IAAI,YAAY,QAAQ,CAAC;IAClC,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,IAAc;QACjC,MAAM,KAAK,GAAG,IAAI,WAAW,CAAC,EAAE,CAAC,CAAC;QAClC,MAAM,QAAQ,GAAG,IAAA,cAAM,EAAC,yBAAyB,IAAA,6BAAe,EAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC3E,IAAI,cAAc,GAAG,EAAE,CAAC;QAExB,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC;YAChC,cAAc,IAAI,KAAK,QAAQ,MAAM,CAAC;YACtC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBAC9B,cAAc,IAAI,yCAAyC,IAAA,cAAM,EAAC,IAAA,wCAAkB,EAAC,GAAG,CAAC,CAAC,WAAW,CAAC;gBACtG,cAAc,IAAI,GAAG,KAAK,MAAM,CAAC;YACnC,CAAC;iBAAM,CAAC;gBACN,cAAc,IAAI,yCAAyC,IAAA,cAAM,EAAC,IAAA,wCAAkB,EAAC,GAAG,CAAC,CAAC,gBAAgB,IAAA,cAAM,EAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC;gBACpI,cAAc,IAAI,iBAAiB,KAAK,CAAC,IAAI,IAAI,0BAA0B,UAAU,CAAC;gBACtF,cAAc,IAAI,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC;YAC3D,CAAC;QACH,CAAC;QAED,cAAc,IAAI,KAAK,QAAQ,QAAQ,CAAC;QAExC,OAAO,cAAc,CAAC;IACxB,CAAC;IAEM,WAAW,CAAC,KAAe;QAChC,OAAO,qBAAqB,CAAC;IAC/B,CAAC;IAEO,KAAK,CAAC,WAAW,CAAC,IAAU;QAClC,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QAE7C,OAAO,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IAC/C,CAAC;CACF;AApCD,8CAoCC"}
@@ -0,0 +1,6 @@
1
+ import { BodyConverter } from './BodyConverter';
2
+ export declare class IterableConverter implements BodyConverter<Iterable<Uint8Array>> {
3
+ canHandle(data: unknown): data is Iterable<Uint8Array>;
4
+ convert(data: Iterable<Uint8Array>): Promise<string>;
5
+ getMimeType(_: Iterable<Uint8Array>): string;
6
+ }
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.IterableConverter = void 0;
4
+ class IterableConverter {
5
+ canHandle(data) {
6
+ return typeof Object(data)[Symbol.iterator] === 'function';
7
+ }
8
+ // eslint-disable-next-line @typescript-eslint/require-await
9
+ async convert(data) {
10
+ const chunks = [];
11
+ for await (const chunk of data) {
12
+ chunks.push(chunk);
13
+ }
14
+ return new TextDecoder().decode(Buffer.concat(chunks));
15
+ }
16
+ getMimeType(_) {
17
+ return 'application/octet-stream';
18
+ }
19
+ }
20
+ exports.IterableConverter = IterableConverter;
21
+ //# sourceMappingURL=IterableConverter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IterableConverter.js","sourceRoot":"","sources":["../../../../../../packages/scan/src/target/converters/IterableConverter.ts"],"names":[],"mappings":";;;AAEA,MAAa,iBAAiB;IACrB,SAAS,CAAC,IAAa;QAC5B,OAAO,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,UAAU,CAAC;IAC7D,CAAC;IAED,4DAA4D;IACrD,KAAK,CAAC,OAAO,CAAC,IAA0B;QAC7C,MAAM,MAAM,GAAiB,EAAE,CAAC;QAChC,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,IAAI,EAAE,CAAC;YAC/B,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC;QAED,OAAO,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IACzD,CAAC;IAEM,WAAW,CAAC,CAAuB;QACxC,OAAO,0BAA0B,CAAC;IACpC,CAAC;CACF;AAlBD,8CAkBC"}
@@ -0,0 +1,6 @@
1
+ import { BodyConverter } from './BodyConverter';
2
+ export declare class JsonConverter implements BodyConverter<unknown> {
3
+ canHandle(data: unknown, mimeType?: string): data is unknown;
4
+ convert(data: unknown): Promise<string>;
5
+ getMimeType(_data: unknown): string;
6
+ }
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.JsonConverter = void 0;
4
+ const is_json_serializable_1 = require("../../utils/is-json-serializable");
5
+ const is_primitive_1 = require("../../utils/is-primitive");
6
+ class JsonConverter {
7
+ canHandle(data, mimeType) {
8
+ if (mimeType === 'application/json')
9
+ return true;
10
+ return (0, is_json_serializable_1.isJsonSerializable)(data) && !(0, is_primitive_1.isPrimitive)(data);
11
+ }
12
+ // eslint-disable-next-line @typescript-eslint/require-await
13
+ async convert(data) {
14
+ return JSON.stringify(data);
15
+ }
16
+ getMimeType(_data) {
17
+ return 'application/json';
18
+ }
19
+ }
20
+ exports.JsonConverter = JsonConverter;
21
+ //# sourceMappingURL=JsonConverter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"JsonConverter.js","sourceRoot":"","sources":["../../../../../../packages/scan/src/target/converters/JsonConverter.ts"],"names":[],"mappings":";;;AACA,2EAAsE;AACtE,2DAAuD;AAEvD,MAAa,aAAa;IACjB,SAAS,CAAC,IAAa,EAAE,QAAiB;QAC/C,IAAI,QAAQ,KAAK,kBAAkB;YAAE,OAAO,IAAI,CAAC;QAEjD,OAAO,IAAA,yCAAkB,EAAC,IAAI,CAAC,IAAI,CAAC,IAAA,0BAAW,EAAC,IAAI,CAAC,CAAC;IACxD,CAAC;IAED,4DAA4D;IACrD,KAAK,CAAC,OAAO,CAAC,IAAa;QAChC,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC;IAEM,WAAW,CAAC,KAAc;QAC/B,OAAO,kBAAkB,CAAC;IAC5B,CAAC;CACF;AAfD,sCAeC"}
@@ -0,0 +1,6 @@
1
+ import { BodyConverter } from './BodyConverter';
2
+ export declare class StreamConverter implements BodyConverter<NodeJS.ReadableStream> {
3
+ canHandle(data: unknown): data is NodeJS.ReadableStream;
4
+ convert(data: NodeJS.ReadableStream): Promise<string>;
5
+ getMimeType(_: NodeJS.ReadableStream): string;
6
+ }
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.StreamConverter = void 0;
4
+ const utils_1 = require("../../utils");
5
+ class StreamConverter {
6
+ canHandle(data) {
7
+ return (0, utils_1.isStream)(data);
8
+ }
9
+ async convert(data) {
10
+ const chunks = [];
11
+ for await (const chunk of data) {
12
+ chunks.push(Buffer.from(chunk));
13
+ }
14
+ return new TextDecoder().decode(Buffer.concat(chunks));
15
+ }
16
+ getMimeType(_) {
17
+ return 'application/octet-stream';
18
+ }
19
+ }
20
+ exports.StreamConverter = StreamConverter;
21
+ //# sourceMappingURL=StreamConverter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StreamConverter.js","sourceRoot":"","sources":["../../../../../../packages/scan/src/target/converters/StreamConverter.ts"],"names":[],"mappings":";;;AAAA,uCAAuC;AAGvC,MAAa,eAAe;IACnB,SAAS,CAAC,IAAa;QAC5B,OAAO,IAAA,gBAAQ,EAAC,IAAI,CAAC,CAAC;IACxB,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,IAA2B;QAC9C,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,IAAI,EAAE,CAAC;YAC/B,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QAClC,CAAC;QAED,OAAO,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IACzD,CAAC;IAEM,WAAW,CAAC,CAAwB;QACzC,OAAO,0BAA0B,CAAC;IACpC,CAAC;CACF;AAjBD,0CAiBC"}
@@ -0,0 +1,6 @@
1
+ import { BodyConverter } from './BodyConverter';
2
+ export declare class StringConverter implements BodyConverter<string> {
3
+ canHandle(data: unknown): data is string;
4
+ convert(data: string): Promise<string>;
5
+ getMimeType(data: string): string;
6
+ }
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.StringConverter = void 0;
4
+ const is_json_1 = require("../../utils/is-json");
5
+ const is_xml_1 = require("../../utils/is-xml");
6
+ class StringConverter {
7
+ canHandle(data) {
8
+ return typeof data === 'string';
9
+ }
10
+ // eslint-disable-next-line @typescript-eslint/require-await
11
+ async convert(data) {
12
+ return data;
13
+ }
14
+ getMimeType(data) {
15
+ const trimmed = data.trim();
16
+ if ((0, is_json_1.isJson)(trimmed)) {
17
+ return 'application/json';
18
+ }
19
+ if ((0, is_xml_1.isXml)(trimmed)) {
20
+ return 'application/xml';
21
+ }
22
+ return 'text/plain';
23
+ }
24
+ }
25
+ exports.StringConverter = StringConverter;
26
+ //# sourceMappingURL=StringConverter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StringConverter.js","sourceRoot":"","sources":["../../../../../../packages/scan/src/target/converters/StringConverter.ts"],"names":[],"mappings":";;;AACA,iDAA6C;AAC7C,+CAA2C;AAE3C,MAAa,eAAe;IACnB,SAAS,CAAC,IAAa;QAC5B,OAAO,OAAO,IAAI,KAAK,QAAQ,CAAC;IAClC,CAAC;IAED,4DAA4D;IACrD,KAAK,CAAC,OAAO,CAAC,IAAY;QAC/B,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,WAAW,CAAC,IAAY;QAC7B,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAE5B,IAAI,IAAA,gBAAM,EAAC,OAAO,CAAC,EAAE,CAAC;YACpB,OAAO,kBAAkB,CAAC;QAC5B,CAAC;QAED,IAAI,IAAA,cAAK,EAAC,OAAO,CAAC,EAAE,CAAC;YACnB,OAAO,iBAAiB,CAAC;QAC3B,CAAC;QAED,OAAO,YAAY,CAAC;IACtB,CAAC;CACF;AAvBD,0CAuBC"}
@@ -0,0 +1,6 @@
1
+ import { BodyConverter } from './BodyConverter';
2
+ export declare class URLSearchParamsConverter implements BodyConverter<URLSearchParams> {
3
+ canHandle(data: unknown): data is URLSearchParams;
4
+ convert(data: URLSearchParams): Promise<string>;
5
+ getMimeType(_data: URLSearchParams): string;
6
+ }
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.URLSearchParamsConverter = void 0;
4
+ class URLSearchParamsConverter {
5
+ canHandle(data) {
6
+ return data instanceof URLSearchParams;
7
+ }
8
+ // eslint-disable-next-line @typescript-eslint/require-await
9
+ async convert(data) {
10
+ return data.toString();
11
+ }
12
+ getMimeType(_data) {
13
+ return 'application/x-www-form-urlencoded';
14
+ }
15
+ }
16
+ exports.URLSearchParamsConverter = URLSearchParamsConverter;
17
+ //# sourceMappingURL=URLSearchParamsConverter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"URLSearchParamsConverter.js","sourceRoot":"","sources":["../../../../../../packages/scan/src/target/converters/URLSearchParamsConverter.ts"],"names":[],"mappings":";;;AAEA,MAAa,wBAAwB;IAG5B,SAAS,CAAC,IAAa;QAC5B,OAAO,IAAI,YAAY,eAAe,CAAC;IACzC,CAAC;IAED,4DAA4D;IACrD,KAAK,CAAC,OAAO,CAAC,IAAqB;QACxC,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;IACzB,CAAC;IAEM,WAAW,CAAC,KAAsB;QACvC,OAAO,mCAAmC,CAAC;IAC7C,CAAC;CACF;AAfD,4DAeC"}
@@ -0,0 +1,11 @@
1
+ export * from './BodyConverter';
2
+ export * from './ArrayBufferConverter';
3
+ export * from './FormDataConverter';
4
+ export * from './JsonConverter';
5
+ export * from './StringConverter';
6
+ export * from './ConverterRegistry';
7
+ export * from './URLSearchParamsConverter';
8
+ export * from './BlobConverter';
9
+ export * from './IterableConverter';
10
+ export * from './AsyncIterableConverter';
11
+ export * from './StreamConverter';
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./BodyConverter"), exports);
5
+ tslib_1.__exportStar(require("./ArrayBufferConverter"), exports);
6
+ tslib_1.__exportStar(require("./FormDataConverter"), exports);
7
+ tslib_1.__exportStar(require("./JsonConverter"), exports);
8
+ tslib_1.__exportStar(require("./StringConverter"), exports);
9
+ tslib_1.__exportStar(require("./ConverterRegistry"), exports);
10
+ tslib_1.__exportStar(require("./URLSearchParamsConverter"), exports);
11
+ tslib_1.__exportStar(require("./BlobConverter"), exports);
12
+ tslib_1.__exportStar(require("./IterableConverter"), exports);
13
+ tslib_1.__exportStar(require("./AsyncIterableConverter"), exports);
14
+ tslib_1.__exportStar(require("./StreamConverter"), exports);
15
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/scan/src/target/converters/index.ts"],"names":[],"mappings":";;;AAAA,0DAAgC;AAChC,iEAAuC;AACvC,8DAAoC;AACpC,0DAAgC;AAChC,4DAAkC;AAClC,8DAAoC;AACpC,qEAA2C;AAC3C,0DAAgC;AAChC,8DAAoC;AACpC,mEAAyC;AACzC,4DAAkC"}
@@ -1,2 +1,4 @@
1
- export * from './body-parsers';
1
+ export * from './Body';
2
+ export * from './HeadersType';
3
+ export * from './QueryParamsType';
2
4
  export * from './Target';
@@ -1,6 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
- tslib_1.__exportStar(require("./body-parsers"), exports);
4
+ tslib_1.__exportStar(require("./Body"), exports);
5
+ tslib_1.__exportStar(require("./HeadersType"), exports);
6
+ tslib_1.__exportStar(require("./QueryParamsType"), exports);
5
7
  tslib_1.__exportStar(require("./Target"), exports);
6
8
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/scan/src/target/index.ts"],"names":[],"mappings":";;;AAAA,yDAA+B;AAC/B,mDAAyB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/scan/src/target/index.ts"],"names":[],"mappings":";;;AAAA,iDAAuB;AACvB,wDAA8B;AAC9B,4DAAkC;AAClC,mDAAyB"}
@@ -1 +1 @@
1
- export declare const escape: (str: string, chars?: string) => string;
1
+ export declare const escape: (str: string) => string;
@@ -1,19 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.escape = void 0;
4
- const escape = (str, chars = '^[]{}()\\\\.$*+?|') => {
5
- const foundChar = [...chars].some((_, i) => str.indexOf(chars.charAt(i)) !== -1);
6
- if (!foundChar) {
7
- return str;
8
- }
9
- let result = '';
10
- for (let j = 0; j < str.length; ++j) {
11
- if (chars.indexOf(str.charAt(j)) !== -1) {
12
- result += '\\';
13
- }
14
- result += str.charAt(j);
15
- }
16
- return result;
17
- };
4
+ const escape = (str) => str.replace(/\n/g, '%0A').replace(/\r/g, '%0D').replace(/"/g, '%22');
18
5
  exports.escape = escape;
19
6
  //# sourceMappingURL=escape.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"escape.js","sourceRoot":"","sources":["../../../../../packages/scan/src/utils/escape.ts"],"names":[],"mappings":";;;AAAO,MAAM,MAAM,GAAG,CACpB,GAAW,EACX,QAAgB,mBAAmB,EAC3B,EAAE;IACV,MAAM,SAAS,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,IAAI,CAC/B,CAAC,CAAC,EAAE,CAAS,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CACtD,CAAC;IAEF,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,GAAG,CAAC;IACb,CAAC;IAED,IAAI,MAAM,GAAG,EAAE,CAAC;IAEhB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;QACpC,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;YACxC,MAAM,IAAI,IAAI,CAAC;QACjB,CAAC;QAED,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAC1B,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAvBW,QAAA,MAAM,UAuBjB"}
1
+ {"version":3,"file":"escape.js","sourceRoot":"","sources":["../../../../../packages/scan/src/utils/escape.ts"],"names":[],"mappings":";;;AAAO,MAAM,MAAM,GAAG,CAAC,GAAW,EAAE,EAAE,CACpC,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;AAD1D,QAAA,MAAM,UACoD"}
@@ -1,2 +1,8 @@
1
1
  export * from './escape';
2
- export * from './entries-to-list';
2
+ export * from './is-json-serializable';
3
+ export * from './is-stream';
4
+ export * from './normalize-linefeeds';
5
+ export * from './is-blob';
6
+ export * from './is-json';
7
+ export * from './is-xml';
8
+ export * from './is-primitive';
@@ -2,5 +2,11 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
4
  tslib_1.__exportStar(require("./escape"), exports);
5
- tslib_1.__exportStar(require("./entries-to-list"), exports);
5
+ tslib_1.__exportStar(require("./is-json-serializable"), exports);
6
+ tslib_1.__exportStar(require("./is-stream"), exports);
7
+ tslib_1.__exportStar(require("./normalize-linefeeds"), exports);
8
+ tslib_1.__exportStar(require("./is-blob"), exports);
9
+ tslib_1.__exportStar(require("./is-json"), exports);
10
+ tslib_1.__exportStar(require("./is-xml"), exports);
11
+ tslib_1.__exportStar(require("./is-primitive"), exports);
6
12
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/scan/src/utils/index.ts"],"names":[],"mappings":";;;AAAA,mDAAyB;AACzB,4DAAkC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/scan/src/utils/index.ts"],"names":[],"mappings":";;;AAAA,mDAAyB;AACzB,iEAAuC;AACvC,sDAA4B;AAC5B,gEAAsC;AACtC,oDAA0B;AAC1B,oDAA0B;AAC1B,mDAAyB;AACzB,yDAA+B"}
@@ -0,0 +1 @@
1
+ export declare const isBlobLike: (object: unknown) => object is Blob;
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isBlobLike = void 0;
4
+ const isBlobLike = (object) => (Blob && object instanceof Blob) ||
5
+ (!!object &&
6
+ typeof object === 'object' &&
7
+ (typeof object.stream === 'function' ||
8
+ typeof object.arrayBuffer === 'function') &&
9
+ /^(Blob|File)$/.test(object[Symbol.toStringTag]));
10
+ exports.isBlobLike = isBlobLike;
11
+ //# sourceMappingURL=is-blob.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"is-blob.js","sourceRoot":"","sources":["../../../../../packages/scan/src/utils/is-blob.ts"],"names":[],"mappings":";;;AAAO,MAAM,UAAU,GAAG,CAAC,MAAe,EAAkB,EAAE,CAC5D,CAAC,IAAI,IAAI,MAAM,YAAY,IAAI,CAAC;IAChC,CAAC,CAAC,CAAC,MAAM;QACP,OAAO,MAAM,KAAK,QAAQ;QAC1B,CAAC,OAAQ,MAAc,CAAC,MAAM,KAAK,UAAU;YAC3C,OAAQ,MAAc,CAAC,WAAW,KAAK,UAAU,CAAC;QACpD,eAAe,CAAC,IAAI,CAAE,MAAc,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;AANlD,QAAA,UAAU,cAMwC"}
@@ -0,0 +1 @@
1
+ export declare const isJsonSerializable: (data: unknown) => boolean;
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isJsonSerializable = void 0;
4
+ const isJsonSerializable = (data) => {
5
+ try {
6
+ const serialized = JSON.stringify(data);
7
+ // Check it's not just an empty object (which Maps/Sets would produce)
8
+ if (serialized === '{}' &&
9
+ Object.prototype.toString.call(data) !== '[object Object]') {
10
+ return false;
11
+ }
12
+ return true;
13
+ }
14
+ catch {
15
+ return false;
16
+ }
17
+ };
18
+ exports.isJsonSerializable = isJsonSerializable;
19
+ //# sourceMappingURL=is-json-serializable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"is-json-serializable.js","sourceRoot":"","sources":["../../../../../packages/scan/src/utils/is-json-serializable.ts"],"names":[],"mappings":";;;AAAO,MAAM,kBAAkB,GAAG,CAAC,IAAa,EAAW,EAAE;IAC3D,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACxC,sEAAsE;QACtE,IACE,UAAU,KAAK,IAAI;YACnB,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,iBAAiB,EAC1D,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC,CAAC;AAfW,QAAA,kBAAkB,sBAe7B"}
@@ -0,0 +1 @@
1
+ export declare const isJson: (text: string) => boolean;
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isJson = void 0;
4
+ const isJson = (text) => {
5
+ if (!((text.startsWith('{') && text.endsWith('}')) ||
6
+ (text.startsWith('[') && text.endsWith(']')))) {
7
+ return false;
8
+ }
9
+ try {
10
+ JSON.parse(text);
11
+ return true;
12
+ }
13
+ catch {
14
+ return false;
15
+ }
16
+ };
17
+ exports.isJson = isJson;
18
+ //# sourceMappingURL=is-json.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"is-json.js","sourceRoot":"","sources":["../../../../../packages/scan/src/utils/is-json.ts"],"names":[],"mappings":";;;AAAO,MAAM,MAAM,GAAG,CAAC,IAAY,EAAW,EAAE;IAC9C,IACE,CAAC,CACC,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QAC5C,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAC7C,EACD,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,CAAC;QACH,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAEjB,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC,CAAC;AAjBW,QAAA,MAAM,UAiBjB"}
@@ -0,0 +1 @@
1
+ export declare const isPrimitive: (value: unknown) => boolean;
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isPrimitive = void 0;
4
+ const isPrimitive = (value) => typeof value === 'string' ||
5
+ typeof value === 'number' ||
6
+ typeof value === 'boolean' ||
7
+ value === null ||
8
+ value === undefined;
9
+ exports.isPrimitive = isPrimitive;
10
+ //# sourceMappingURL=is-primitive.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"is-primitive.js","sourceRoot":"","sources":["../../../../../packages/scan/src/utils/is-primitive.ts"],"names":[],"mappings":";;;AAAO,MAAM,WAAW,GAAG,CAAC,KAAc,EAAW,EAAE,CACrD,OAAO,KAAK,KAAK,QAAQ;IACzB,OAAO,KAAK,KAAK,QAAQ;IACzB,OAAO,KAAK,KAAK,SAAS;IAC1B,KAAK,KAAK,IAAI;IACd,KAAK,KAAK,SAAS,CAAC;AALT,QAAA,WAAW,eAKF"}
@@ -0,0 +1 @@
1
+ export declare const isStream: (obj: unknown) => obj is NodeJS.ReadableStream;
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isStream = void 0;
4
+ const isStream = (obj) => !!obj && typeof obj.pipe === 'function';
5
+ exports.isStream = isStream;
6
+ //# sourceMappingURL=is-stream.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"is-stream.js","sourceRoot":"","sources":["../../../../../packages/scan/src/utils/is-stream.ts"],"names":[],"mappings":";;;AAAO,MAAM,QAAQ,GAAG,CAAC,GAAY,EAAgC,EAAE,CACrE,CAAC,CAAC,GAAG,IAAI,OAAQ,GAA6B,CAAC,IAAI,KAAK,UAAU,CAAC;AADxD,QAAA,QAAQ,YACgD"}
@@ -0,0 +1 @@
1
+ export declare const isXml: (text: string) => boolean;
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isXml = void 0;
4
+ const isXml = (text) => text.startsWith('<?xml') ||
5
+ (text.startsWith('<') &&
6
+ !text.startsWith('<!DOCTYPE html') &&
7
+ !text.startsWith('<!--') &&
8
+ (text.includes('</') || text.includes('/>')) &&
9
+ text.endsWith('>'));
10
+ exports.isXml = isXml;
11
+ //# sourceMappingURL=is-xml.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"is-xml.js","sourceRoot":"","sources":["../../../../../packages/scan/src/utils/is-xml.ts"],"names":[],"mappings":";;;AAAO,MAAM,KAAK,GAAG,CAAC,IAAY,EAAW,EAAE,CAC7C,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;IACxB,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;QACnB,CAAC,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC;QAClC,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;QACxB,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC5C,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;AANX,QAAA,KAAK,SAMM"}
@@ -0,0 +1 @@
1
+ export declare const normalizeLinefeeds: (value: string) => string;
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.normalizeLinefeeds = void 0;
4
+ const normalizeLinefeeds = (value) => value.replace(/\r?\n|\r/g, '\r\n');
5
+ exports.normalizeLinefeeds = normalizeLinefeeds;
6
+ //# sourceMappingURL=normalize-linefeeds.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"normalize-linefeeds.js","sourceRoot":"","sources":["../../../../../packages/scan/src/utils/normalize-linefeeds.ts"],"names":[],"mappings":";;;AAAO,MAAM,kBAAkB,GAAG,CAAC,KAAa,EAAE,EAAE,CAClD,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;AADxB,QAAA,kBAAkB,sBACM"}
@@ -1,6 +0,0 @@
1
- import { BodyParser, ParsedBody } from './BodyParser';
2
- import { Target } from '../Target';
3
- export declare class BinaryBodyParser implements BodyParser {
4
- canParse(target: Target): boolean;
5
- parse({ contentType, body }: Target): ParsedBody;
6
- }
@@ -1,14 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BinaryBodyParser = void 0;
4
- class BinaryBodyParser {
5
- canParse(target) {
6
- return ArrayBuffer.isView(target.body);
7
- }
8
- parse({ contentType, body }) {
9
- const text = Buffer.from(body).toString();
10
- return { text, contentType: contentType !== null && contentType !== void 0 ? contentType : 'application/octet-stream' };
11
- }
12
- }
13
- exports.BinaryBodyParser = BinaryBodyParser;
14
- //# sourceMappingURL=BinaryBodyParser.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"BinaryBodyParser.js","sourceRoot":"","sources":["../../../../../../packages/scan/src/target/body-parsers/BinaryBodyParser.ts"],"names":[],"mappings":";;;AAGA,MAAa,gBAAgB;IACpB,QAAQ,CAAC,MAAc;QAC5B,OAAO,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACzC,CAAC;IAEM,KAAK,CAAC,EAAE,WAAW,EAAE,IAAI,EAAU;QACxC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAuB,CAAC,CAAC,QAAQ,EAAE,CAAC;QAE7D,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,aAAX,WAAW,cAAX,WAAW,GAAI,0BAA0B,EAAE,CAAC;IAC1E,CAAC;CACF;AAVD,4CAUC"}
@@ -1,12 +0,0 @@
1
- import { Target } from '../Target';
2
- import { Param } from '@har-sdk/core';
3
- export interface ParsedBody {
4
- text: string;
5
- contentType: string;
6
- params?: Param[];
7
- }
8
- export interface BodyParser {
9
- canParse(target: Target): boolean;
10
- parse(target: Target): ParsedBody | undefined;
11
- }
12
- export declare const BodyParser: unique symbol;
@@ -1,5 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BodyParser = void 0;
4
- exports.BodyParser = Symbol('BodyParser');
5
- //# sourceMappingURL=BodyParser.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"BodyParser.js","sourceRoot":"","sources":["../../../../../../packages/scan/src/target/body-parsers/BodyParser.ts"],"names":[],"mappings":";;;AAea,QAAA,UAAU,GAAkB,MAAM,CAAC,YAAY,CAAC,CAAC"}
@@ -1,9 +0,0 @@
1
- import { BodyParser, ParsedBody } from './BodyParser';
2
- import { Target } from '../Target';
3
- export declare class FormDataBodyParser implements BodyParser {
4
- private readonly MIME_TYPE_REGEXP;
5
- private readonly FORM_DATA_KEY_VALUE_REGEXP;
6
- canParse(target: Target): boolean;
7
- parse({ body, contentType }: Target): ParsedBody;
8
- private parseMultipartFormDataParameters;
9
- }