@crawlee/utils 4.0.0-beta.8 → 4.0.0-beta.80

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 (73) hide show
  1. package/README.md +17 -13
  2. package/index.d.ts +4 -5
  3. package/index.js +3 -4
  4. package/internals/blocked.d.ts +0 -1
  5. package/internals/blocked.js +0 -1
  6. package/internals/cheerio.d.ts +3 -2
  7. package/internals/cheerio.js +4 -5
  8. package/internals/chunk.d.ts +0 -1
  9. package/internals/chunk.js +0 -1
  10. package/internals/debug.d.ts +11 -1
  11. package/internals/debug.js +34 -1
  12. package/internals/extract-urls.d.ts +5 -1
  13. package/internals/extract-urls.js +8 -5
  14. package/internals/general.d.ts +17 -15
  15. package/internals/general.js +44 -83
  16. package/internals/iterables.d.ts +126 -0
  17. package/internals/iterables.js +230 -0
  18. package/internals/open_graph_parser.d.ts +2 -3
  19. package/internals/open_graph_parser.js +8 -9
  20. package/internals/robots.d.ts +20 -4
  21. package/internals/robots.js +31 -33
  22. package/internals/sitemap.d.ts +64 -7
  23. package/internals/sitemap.js +174 -34
  24. package/internals/social.d.ts +1 -2
  25. package/internals/social.js +7 -5
  26. package/internals/typedefs.d.ts +0 -1
  27. package/internals/typedefs.js +0 -1
  28. package/internals/url.d.ts +1 -2
  29. package/internals/url.js +1 -2
  30. package/package.json +6 -6
  31. package/index.d.ts.map +0 -1
  32. package/index.js.map +0 -1
  33. package/internals/blocked.d.ts.map +0 -1
  34. package/internals/blocked.js.map +0 -1
  35. package/internals/cheerio.d.ts.map +0 -1
  36. package/internals/cheerio.js.map +0 -1
  37. package/internals/chunk.d.ts.map +0 -1
  38. package/internals/chunk.js.map +0 -1
  39. package/internals/debug.d.ts.map +0 -1
  40. package/internals/debug.js.map +0 -1
  41. package/internals/extract-urls.d.ts.map +0 -1
  42. package/internals/extract-urls.js.map +0 -1
  43. package/internals/general.d.ts.map +0 -1
  44. package/internals/general.js.map +0 -1
  45. package/internals/memory-info.d.ts +0 -26
  46. package/internals/memory-info.d.ts.map +0 -1
  47. package/internals/memory-info.js +0 -131
  48. package/internals/memory-info.js.map +0 -1
  49. package/internals/open_graph_parser.d.ts.map +0 -1
  50. package/internals/open_graph_parser.js.map +0 -1
  51. package/internals/robots.d.ts.map +0 -1
  52. package/internals/robots.js.map +0 -1
  53. package/internals/sitemap.d.ts.map +0 -1
  54. package/internals/sitemap.js.map +0 -1
  55. package/internals/social.d.ts.map +0 -1
  56. package/internals/social.js.map +0 -1
  57. package/internals/systemInfoV2/cpu-info.d.ts +0 -64
  58. package/internals/systemInfoV2/cpu-info.d.ts.map +0 -1
  59. package/internals/systemInfoV2/cpu-info.js +0 -211
  60. package/internals/systemInfoV2/cpu-info.js.map +0 -1
  61. package/internals/systemInfoV2/memory-info.d.ts +0 -28
  62. package/internals/systemInfoV2/memory-info.d.ts.map +0 -1
  63. package/internals/systemInfoV2/memory-info.js +0 -118
  64. package/internals/systemInfoV2/memory-info.js.map +0 -1
  65. package/internals/systemInfoV2/ps-tree.d.ts +0 -18
  66. package/internals/systemInfoV2/ps-tree.d.ts.map +0 -1
  67. package/internals/systemInfoV2/ps-tree.js +0 -145
  68. package/internals/systemInfoV2/ps-tree.js.map +0 -1
  69. package/internals/typedefs.d.ts.map +0 -1
  70. package/internals/typedefs.js.map +0 -1
  71. package/internals/url.d.ts.map +0 -1
  72. package/internals/url.js.map +0 -1
  73. package/tsconfig.build.tsbuildinfo +0 -1
@@ -1,118 +0,0 @@
1
- import { execSync } from 'node:child_process';
2
- import { readFile } from 'node:fs/promises';
3
- import { freemem, totalmem } from 'node:os';
4
- import log from '@apify/log';
5
- import { getCgroupsVersion, isLambda } from '../general.js';
6
- import { psTree } from './ps-tree.js';
7
- const MEMORY_FILE_PATHS = {
8
- TOTAL: {
9
- V1: '/sys/fs/cgroup/memory/memory.limit_in_bytes',
10
- V2: '/sys/fs/cgroup/memory.max',
11
- },
12
- USED: {
13
- V1: '/sys/fs/cgroup/memory/memory.usage_in_bytes',
14
- V2: '/sys/fs/cgroup/memory.current',
15
- },
16
- };
17
- /**
18
- * Returns memory statistics of the process and the system, see {@link MemoryInfo}.
19
- *
20
- * If the process runs inside of a container, the `getMemoryInfo` gets container memory limits,
21
- * otherwise it gets system memory limits.
22
- *
23
- * Beware that the function is quite inefficient because it spawns a new process.
24
- * Therefore you shouldn't call it too often, like more than once per second.
25
- * @returns An object containing the free and used memory metrics.
26
- * @internal
27
- */
28
- export async function getMemoryInfoV2(containerized = false) {
29
- let mainProcessBytes = -1;
30
- let childProcessesBytes = 0;
31
- // lambda does *not* have `ps` and other command line tools
32
- // required to extract memory usage.
33
- if (isLambda()) {
34
- // reported in bytes
35
- mainProcessBytes = process.memoryUsage().rss;
36
- // https://stackoverflow.com/a/55914335/129415
37
- const memInfo = execSync('cat /proc/meminfo').toString();
38
- const values = memInfo.split(/[\n: ]/).filter((val) => val.trim());
39
- // /proc/meminfo reports in kb, not bytes, the total used memory is reported by meminfo
40
- // subtract memory used by the main node process in order to infer memory used by any child processes
41
- childProcessesBytes = +values[19] * 1000 - mainProcessBytes;
42
- }
43
- else {
44
- // Query both root and child processes
45
- const processes = await psTree(process.pid, true);
46
- processes.forEach((rec) => {
47
- // Obtain main process' memory separately
48
- if (rec.PID === `${process.pid}`) {
49
- mainProcessBytes = rec.RSS;
50
- return;
51
- }
52
- childProcessesBytes += rec.RSS;
53
- });
54
- }
55
- let totalBytes;
56
- let usedBytes;
57
- let freeBytes;
58
- if (isLambda()) {
59
- // memory size is defined in megabytes
60
- totalBytes = parseInt(process.env.AWS_LAMBDA_FUNCTION_MEMORY_SIZE, 10) * 1000000;
61
- usedBytes = mainProcessBytes + childProcessesBytes;
62
- freeBytes = totalBytes - usedBytes;
63
- log.debug(`lambda size of ${totalBytes} with ${freeBytes} free bytes`);
64
- }
65
- else if (containerized) {
66
- // When running inside a container, use container memory limits
67
- const cgroupsVersion = await getCgroupsVersion();
68
- try {
69
- if (cgroupsVersion === null) {
70
- throw new Error('cgroup not available');
71
- }
72
- let [totalBytesStr, usedBytesStr] = await Promise.all([
73
- readFile(MEMORY_FILE_PATHS.TOTAL[cgroupsVersion], 'utf8'),
74
- readFile(MEMORY_FILE_PATHS.USED[cgroupsVersion], 'utf8'),
75
- ]);
76
- // Cgroups V2 files contains newline character. Getting rid of it for better handling in later part of the code.
77
- totalBytesStr = totalBytesStr.replace(/[^a-zA-Z0-9 ]/g, '');
78
- usedBytesStr = usedBytesStr.replace(/[^a-zA-Z0-9 ]/g, '');
79
- // Cgroups V2 contains 'max' string if memory is not limited
80
- // See https://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup.git/tree/Documentation/admin-guide/cgroup-v2.rst (see "memory.max")
81
- if (totalBytesStr === 'max') {
82
- totalBytes = totalmem();
83
- // Cgroups V1 is set to number related to platform and page size if memory is not limited
84
- // See https://unix.stackexchange.com/q/420906
85
- }
86
- else {
87
- totalBytes = parseInt(totalBytesStr, 10);
88
- const containerRunsWithUnlimitedMemory = totalBytes > Number.MAX_SAFE_INTEGER;
89
- if (containerRunsWithUnlimitedMemory)
90
- totalBytes = totalmem();
91
- }
92
- usedBytes = parseInt(usedBytesStr, 10);
93
- freeBytes = totalBytes - usedBytes;
94
- }
95
- catch (err) {
96
- // log.deprecated logs a warning only once
97
- log.deprecated('Your environment is containerized, but your system does not support memory cgroups. ' +
98
- "If you're running containers with limited memory, memory auto-scaling will not work properly.\n\n" +
99
- `Cause: ${err.message}`);
100
- totalBytes = totalmem();
101
- freeBytes = freemem();
102
- usedBytes = totalBytes - freeBytes;
103
- }
104
- }
105
- else {
106
- totalBytes = totalmem();
107
- freeBytes = freemem();
108
- usedBytes = totalBytes - freeBytes;
109
- }
110
- return {
111
- totalBytes,
112
- freeBytes,
113
- usedBytes,
114
- mainProcessBytes,
115
- childProcessesBytes,
116
- };
117
- }
118
- //# sourceMappingURL=memory-info.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"memory-info.js","sourceRoot":"","sources":["../../../src/internals/systemInfoV2/memory-info.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAE5C,OAAO,GAAG,MAAM,YAAY,CAAC;AAE7B,OAAO,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC,MAAM,iBAAiB,GAAG;IACtB,KAAK,EAAE;QACH,EAAE,EAAE,6CAA6C;QACjD,EAAE,EAAE,2BAA2B;KAClC;IACD,IAAI,EAAE;QACF,EAAE,EAAE,6CAA6C;QACjD,EAAE,EAAE,+BAA+B;KACtC;CACJ,CAAC;AAsBF;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,aAAa,GAAG,KAAK;IACvD,IAAI,gBAAgB,GAAG,CAAC,CAAC,CAAC;IAC1B,IAAI,mBAAmB,GAAG,CAAC,CAAC;IAE5B,2DAA2D;IAC3D,oCAAoC;IACpC,IAAI,QAAQ,EAAE,EAAE,CAAC;QACb,oBAAoB;QACpB,gBAAgB,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,GAAG,CAAC;QAE7C,8CAA8C;QAC9C,MAAM,OAAO,GAAG,QAAQ,CAAC,mBAAmB,CAAC,CAAC,QAAQ,EAAE,CAAC;QACzD,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;QACnE,uFAAuF;QACvF,qGAAqG;QACrG,mBAAmB,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,IAAI,GAAG,gBAAgB,CAAC;IAChE,CAAC;SAAM,CAAC;QACJ,sCAAsC;QACtC,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAElD,SAAS,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;YACtB,yCAAyC;YACzC,IAAI,GAAG,CAAC,GAAG,KAAK,GAAG,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC;gBAC/B,gBAAgB,GAAG,GAAG,CAAC,GAAG,CAAC;gBAC3B,OAAO;YACX,CAAC;YACD,mBAAmB,IAAI,GAAG,CAAC,GAAG,CAAC;QACnC,CAAC,CAAC,CAAC;IACP,CAAC;IAED,IAAI,UAAkB,CAAC;IACvB,IAAI,SAAiB,CAAC;IACtB,IAAI,SAAiB,CAAC;IAEtB,IAAI,QAAQ,EAAE,EAAE,CAAC;QACb,sCAAsC;QACtC,UAAU,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,+BAAgC,EAAE,EAAE,CAAC,GAAG,OAAO,CAAC;QAClF,SAAS,GAAG,gBAAgB,GAAG,mBAAmB,CAAC;QACnD,SAAS,GAAG,UAAU,GAAG,SAAS,CAAC;QAEnC,GAAG,CAAC,KAAK,CAAC,kBAAkB,UAAU,SAAS,SAAS,aAAa,CAAC,CAAC;IAC3E,CAAC;SAAM,IAAI,aAAa,EAAE,CAAC;QACvB,+DAA+D;QAE/D,MAAM,cAAc,GAAG,MAAM,iBAAiB,EAAE,CAAC;QAEjD,IAAI,CAAC;YACD,IAAI,cAAc,KAAK,IAAI,EAAE,CAAC;gBAC1B,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;YAC5C,CAAC;YACD,IAAI,CAAC,aAAa,EAAE,YAAY,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBAClD,QAAQ,CAAC,iBAAiB,CAAC,KAAK,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;gBACzD,QAAQ,CAAC,iBAAiB,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;aAC3D,CAAC,CAAC;YAEH,gHAAgH;YAChH,aAAa,GAAG,aAAa,CAAC,OAAO,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC;YAC5D,YAAY,GAAG,YAAY,CAAC,OAAO,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC;YAE1D,4DAA4D;YAC5D,oIAAoI;YACpI,IAAI,aAAa,KAAK,KAAK,EAAE,CAAC;gBAC1B,UAAU,GAAG,QAAQ,EAAE,CAAC;gBACxB,yFAAyF;gBACzF,8CAA8C;YAClD,CAAC;iBAAM,CAAC;gBACJ,UAAU,GAAG,QAAQ,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;gBACzC,MAAM,gCAAgC,GAAG,UAAU,GAAG,MAAM,CAAC,gBAAgB,CAAC;gBAC9E,IAAI,gCAAgC;oBAAE,UAAU,GAAG,QAAQ,EAAE,CAAC;YAClE,CAAC;YACD,SAAS,GAAG,QAAQ,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;YACvC,SAAS,GAAG,UAAU,GAAG,SAAS,CAAC;QACvC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,0CAA0C;YAC1C,GAAG,CAAC,UAAU,CACV,sFAAsF;gBAClF,mGAAmG;gBACnG,UAAW,GAAa,CAAC,OAAO,EAAE,CACzC,CAAC;YACF,UAAU,GAAG,QAAQ,EAAE,CAAC;YACxB,SAAS,GAAG,OAAO,EAAE,CAAC;YACtB,SAAS,GAAG,UAAU,GAAG,SAAS,CAAC;QACvC,CAAC;IACL,CAAC;SAAM,CAAC;QACJ,UAAU,GAAG,QAAQ,EAAE,CAAC;QACxB,SAAS,GAAG,OAAO,EAAE,CAAC;QACtB,SAAS,GAAG,UAAU,GAAG,SAAS,CAAC;IACvC,CAAC;IAED,OAAO;QACH,UAAU;QACV,SAAS;QACT,SAAS;QACT,gBAAgB;QAChB,mBAAmB;KACtB,CAAC;AACN,CAAC"}
@@ -1,18 +0,0 @@
1
- export interface ProcessInfo {
2
- PPID: string;
3
- PID: string;
4
- STAT: string | null;
5
- RSS: number;
6
- COMMAND: string;
7
- }
8
- /**
9
- * Returns a promise that resolves with an array of ProcessInfo objects representing
10
- * the children of the given PID.
11
- *
12
- * @param pid - The PID (number or string) for which to list child processes.
13
- * @param includeRoot - Optional flag. When true, include the process with the given PID if found.
14
- * Defaults to false.
15
- * @internal
16
- */
17
- export declare function psTree(pid: number | string, includeRoot?: boolean): Promise<ProcessInfo[]>;
18
- //# sourceMappingURL=ps-tree.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ps-tree.d.ts","sourceRoot":"","sources":["../../../src/internals/systemInfoV2/ps-tree.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,WAAW;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;CACnB;AAOD;;;;;;;;GAQG;AACH,wBAAsB,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,WAAW,UAAQ,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CA+G9F"}
@@ -1,145 +0,0 @@
1
- import { spawn } from 'node:child_process';
2
- import * as readline from 'node:readline';
3
- /**
4
- * Returns a promise that resolves with an array of ProcessInfo objects representing
5
- * the children of the given PID.
6
- *
7
- * @param pid - The PID (number or string) for which to list child processes.
8
- * @param includeRoot - Optional flag. When true, include the process with the given PID if found.
9
- * Defaults to false.
10
- * @internal
11
- */
12
- export async function psTree(pid, includeRoot = false) {
13
- return new Promise((resolve, reject) => {
14
- if (typeof pid === 'number') {
15
- pid = pid.toString();
16
- }
17
- let processLister;
18
- if (process.platform === 'win32') {
19
- processLister = spawn('powershell', [
20
- '-NoProfile',
21
- '-Command',
22
- 'Get-CimInstance Win32_Process | Format-Table ProcessId,ParentProcessId,WorkingSetSize,Name',
23
- ]);
24
- }
25
- else {
26
- processLister = spawn('ps', ['-A', '-o', 'ppid,pid,stat,rss,comm']);
27
- }
28
- processLister.on('error', reject);
29
- if (!processLister.stdout) {
30
- reject(new Error('Child process stdout is null'));
31
- return;
32
- }
33
- // Create a readline interface to process stdout line-by-line.
34
- const rl = readline.createInterface({
35
- input: processLister.stdout,
36
- });
37
- const rows = [];
38
- let headers = null;
39
- rl.on('line', (line) => {
40
- const trimmed = line.trim();
41
- if (trimmed === '') {
42
- return; // Skip empty lines.
43
- }
44
- // When headers have been set, skip a dashed separator line.
45
- const fields = trimmed.split(/\s+/);
46
- if (headers !== null && fields.every((field) => /^-+$/.test(field))) {
47
- return;
48
- }
49
- // The first nonempty line is assumed to be the header row.
50
- if (!headers) {
51
- headers = fields.map(normalizeHeader);
52
- return;
53
- }
54
- // Copy the fields into an array to process.
55
- const columns = fields.slice();
56
- // Build the process row object.
57
- const row = {};
58
- const hdrs = headers.slice();
59
- // For all headers except the last one, assign one column per header.
60
- // The last header gets all remaining columns joined (in case the command name contains spaces).
61
- for (const [index, header] of hdrs.entries()) {
62
- let value;
63
- if (index === hdrs.length - 1) {
64
- value = columns.join(' ');
65
- }
66
- else {
67
- value = columns.shift();
68
- }
69
- if (header === 'RSS') {
70
- row[header] = Number.parseInt(value, 10);
71
- if (process.platform !== 'win32') {
72
- // On Unix like systems, convert RSS (in KB) to bytes.
73
- row[header] *= 1024;
74
- }
75
- }
76
- else {
77
- row[header] = value;
78
- }
79
- }
80
- // On Windows, add STAT with a null value for compatibility.
81
- if (process.platform === 'win32') {
82
- row.STAT = null;
83
- }
84
- rows.push(row);
85
- });
86
- rl.on('close', () => {
87
- const parents = {};
88
- const children = [];
89
- // Seed with the provided PID.
90
- parents[pid] = true;
91
- // Build the list of child processes.
92
- rows.forEach((proc) => {
93
- // Skip the 'ps' or 'powershell' commands used by psTree to query the processes
94
- if (proc.COMMAND === 'ps' || proc.COMMAND === 'powershell.exe') {
95
- return;
96
- }
97
- if (parents[proc.PPID]) {
98
- parents[proc.PID] = true;
99
- children.push(proc);
100
- }
101
- else if (includeRoot && pid === proc.PID) {
102
- children.push(proc);
103
- }
104
- });
105
- resolve(children);
106
- });
107
- // Also listen for errors on the stdout stream.
108
- processLister.stdout.on('error', reject);
109
- });
110
- }
111
- /**
112
- * Normalizes the header names so that the rest of the code can work uniformly.
113
- *
114
- * On non‑Windows systems, we only adjust "COMM" to "COMMAND" (e.g. on macOS).
115
- * On Windows, the headers from Get-CimInstance + Format-Table are:
116
- *
117
- * ProcessId, ParentProcessId, WorkingSetSize, Name
118
- *
119
- * which are mapped to:
120
- *
121
- * PID, PPID, RSS, COMMAND
122
- */
123
- function normalizeHeader(str) {
124
- if (process.platform !== 'win32') {
125
- // macOS may output "COMM" instead of "COMMAND"
126
- if (str === 'COMM')
127
- return 'COMMAND';
128
- return str;
129
- }
130
- switch (str) {
131
- case 'Name':
132
- return 'COMMAND';
133
- case 'ParentProcessId':
134
- return 'PPID';
135
- case 'ProcessId':
136
- return 'PID';
137
- case 'Status':
138
- return 'STAT';
139
- case 'WorkingSetSize':
140
- return 'RSS';
141
- default:
142
- throw new Error(`Unknown process listing header: ${str}`);
143
- }
144
- }
145
- //# sourceMappingURL=ps-tree.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ps-tree.js","sourceRoot":"","sources":["../../../src/internals/systemInfoV2/ps-tree.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"typedefs.d.ts","sourceRoot":"","sources":["../../src/internals/typedefs.ts"],"names":[],"mappings":"AAAA,cAAc;AACd,wBAAgB,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE,GAAG,EAAE,CAAC,GACV,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CACxD;AAED,cAAc;AACd,wBAAgB,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,GAAG,EAAE,CAAC,GACV,CAAC,MAAM,CAAC,CAAC,EAAE,CACzC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"typedefs.js","sourceRoot":"","sources":["../../src/internals/typedefs.ts"],"names":[],"mappings":"AAAA,cAAc;AACd,MAAM,UAAU,OAAO,CAAe,GAAM;IACxC,OAAO,MAAM,CAAC,OAAO,CAAC,GAAG,CAA4B,CAAC;AAC1D,CAAC;AAED,cAAc;AACd,MAAM,UAAU,IAAI,CAAe,GAAM;IACrC,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAgB,CAAC;AAC3C,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"url.d.ts","sourceRoot":"","sources":["../../src/internals/url.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC,CAAC;AAEnH;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,GAAG,EAAE,YAAY,EAAE,YAAY,GAAG,SAAS,GAAG,IAAI,CA4BxF"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"url.js","sourceRoot":"","sources":["../../src/internals/url.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,MAAM,UAAU,iBAAiB,CAAC,GAAQ,EAAE,YAAsC;IAC9E,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;QAC7B,OAAO;IACX,CAAC;IAED,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE,CAAC;QACnC,GAAG,CAAC,MAAM,GAAG,YAAY,CAAC;QAC1B,OAAO;IACX,CAAC;IAED,IAAI,eAAgC,CAAC;IAErC,IAAI,YAAY,YAAY,eAAe,EAAE,CAAC;QAC1C,eAAe,GAAG,YAAY,CAAC;IACnC,CAAC;SAAM,CAAC;QACJ,eAAe,GAAG,IAAI,eAAe,EAAE,CAAC;QACxC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC;YACzD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACtB,eAAe,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAChC,CAAC;iBAAM,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gBACxB,eAAe,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YACpC,CAAC;iBAAM,CAAC;gBACJ,eAAe,CAAC,MAAM,CAAC,GAAG,EAAE,KAAe,CAAC,CAAC;YACjD,CAAC;QACL,CAAC;IACL,CAAC;IAED,GAAG,CAAC,MAAM,GAAG,eAAe,CAAC,QAAQ,EAAE,CAAC;AAC5C,CAAC"}