@ecmaos/coreutils 0.3.1 → 0.4.2

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 (199) hide show
  1. package/.turbo/turbo-build.log +1 -1
  2. package/CHANGELOG.md +48 -0
  3. package/dist/commands/awk.d.ts +4 -0
  4. package/dist/commands/awk.d.ts.map +1 -0
  5. package/dist/commands/awk.js +324 -0
  6. package/dist/commands/awk.js.map +1 -0
  7. package/dist/commands/chgrp.d.ts +4 -0
  8. package/dist/commands/chgrp.d.ts.map +1 -0
  9. package/dist/commands/chgrp.js +187 -0
  10. package/dist/commands/chgrp.js.map +1 -0
  11. package/dist/commands/chmod.d.ts.map +1 -1
  12. package/dist/commands/chmod.js +139 -2
  13. package/dist/commands/chmod.js.map +1 -1
  14. package/dist/commands/chown.d.ts +4 -0
  15. package/dist/commands/chown.d.ts.map +1 -0
  16. package/dist/commands/chown.js +257 -0
  17. package/dist/commands/chown.js.map +1 -0
  18. package/dist/commands/cksum.d.ts +4 -0
  19. package/dist/commands/cksum.d.ts.map +1 -0
  20. package/dist/commands/cksum.js +124 -0
  21. package/dist/commands/cksum.js.map +1 -0
  22. package/dist/commands/cmp.d.ts +4 -0
  23. package/dist/commands/cmp.d.ts.map +1 -0
  24. package/dist/commands/cmp.js +120 -0
  25. package/dist/commands/cmp.js.map +1 -0
  26. package/dist/commands/column.d.ts +4 -0
  27. package/dist/commands/column.d.ts.map +1 -0
  28. package/dist/commands/column.js +274 -0
  29. package/dist/commands/column.js.map +1 -0
  30. package/dist/commands/cp.d.ts.map +1 -1
  31. package/dist/commands/cp.js +81 -4
  32. package/dist/commands/cp.js.map +1 -1
  33. package/dist/commands/cron.d.ts.map +1 -1
  34. package/dist/commands/cron.js +116 -23
  35. package/dist/commands/cron.js.map +1 -1
  36. package/dist/commands/curl.d.ts +4 -0
  37. package/dist/commands/curl.d.ts.map +1 -0
  38. package/dist/commands/curl.js +238 -0
  39. package/dist/commands/curl.js.map +1 -0
  40. package/dist/commands/du.d.ts +4 -0
  41. package/dist/commands/du.d.ts.map +1 -0
  42. package/dist/commands/du.js +168 -0
  43. package/dist/commands/du.js.map +1 -0
  44. package/dist/commands/echo.d.ts.map +1 -1
  45. package/dist/commands/echo.js +125 -2
  46. package/dist/commands/echo.js.map +1 -1
  47. package/dist/commands/env.d.ts +4 -0
  48. package/dist/commands/env.d.ts.map +1 -0
  49. package/dist/commands/env.js +129 -0
  50. package/dist/commands/env.js.map +1 -0
  51. package/dist/commands/expand.d.ts +4 -0
  52. package/dist/commands/expand.d.ts.map +1 -0
  53. package/dist/commands/expand.js +197 -0
  54. package/dist/commands/expand.js.map +1 -0
  55. package/dist/commands/factor.d.ts +4 -0
  56. package/dist/commands/factor.d.ts.map +1 -0
  57. package/dist/commands/factor.js +141 -0
  58. package/dist/commands/factor.js.map +1 -0
  59. package/dist/commands/fmt.d.ts +4 -0
  60. package/dist/commands/fmt.d.ts.map +1 -0
  61. package/dist/commands/fmt.js +278 -0
  62. package/dist/commands/fmt.js.map +1 -0
  63. package/dist/commands/fold.d.ts +4 -0
  64. package/dist/commands/fold.d.ts.map +1 -0
  65. package/dist/commands/fold.js +253 -0
  66. package/dist/commands/fold.js.map +1 -0
  67. package/dist/commands/groups.d.ts +4 -0
  68. package/dist/commands/groups.d.ts.map +1 -0
  69. package/dist/commands/groups.js +61 -0
  70. package/dist/commands/groups.js.map +1 -0
  71. package/dist/commands/head.d.ts.map +1 -1
  72. package/dist/commands/head.js +184 -77
  73. package/dist/commands/head.js.map +1 -1
  74. package/dist/commands/hostname.d.ts +4 -0
  75. package/dist/commands/hostname.d.ts.map +1 -0
  76. package/dist/commands/hostname.js +80 -0
  77. package/dist/commands/hostname.js.map +1 -0
  78. package/dist/commands/less.d.ts.map +1 -1
  79. package/dist/commands/less.js +1 -0
  80. package/dist/commands/less.js.map +1 -1
  81. package/dist/commands/man.d.ts.map +1 -1
  82. package/dist/commands/man.js +3 -1
  83. package/dist/commands/man.js.map +1 -1
  84. package/dist/commands/mount.d.ts +4 -0
  85. package/dist/commands/mount.d.ts.map +1 -0
  86. package/dist/commands/mount.js +1136 -0
  87. package/dist/commands/mount.js.map +1 -0
  88. package/dist/commands/od.d.ts +4 -0
  89. package/dist/commands/od.d.ts.map +1 -0
  90. package/dist/commands/od.js +342 -0
  91. package/dist/commands/od.js.map +1 -0
  92. package/dist/commands/pr.d.ts +4 -0
  93. package/dist/commands/pr.d.ts.map +1 -0
  94. package/dist/commands/pr.js +298 -0
  95. package/dist/commands/pr.js.map +1 -0
  96. package/dist/commands/printf.d.ts +4 -0
  97. package/dist/commands/printf.d.ts.map +1 -0
  98. package/dist/commands/printf.js +271 -0
  99. package/dist/commands/printf.js.map +1 -0
  100. package/dist/commands/readlink.d.ts +4 -0
  101. package/dist/commands/readlink.d.ts.map +1 -0
  102. package/dist/commands/readlink.js +104 -0
  103. package/dist/commands/readlink.js.map +1 -0
  104. package/dist/commands/realpath.d.ts +4 -0
  105. package/dist/commands/realpath.d.ts.map +1 -0
  106. package/dist/commands/realpath.js +111 -0
  107. package/dist/commands/realpath.js.map +1 -0
  108. package/dist/commands/rev.d.ts +4 -0
  109. package/dist/commands/rev.d.ts.map +1 -0
  110. package/dist/commands/rev.js +134 -0
  111. package/dist/commands/rev.js.map +1 -0
  112. package/dist/commands/shuf.d.ts +4 -0
  113. package/dist/commands/shuf.d.ts.map +1 -0
  114. package/dist/commands/shuf.js +221 -0
  115. package/dist/commands/shuf.js.map +1 -0
  116. package/dist/commands/sleep.d.ts +4 -0
  117. package/dist/commands/sleep.d.ts.map +1 -0
  118. package/dist/commands/sleep.js +102 -0
  119. package/dist/commands/sleep.js.map +1 -0
  120. package/dist/commands/strings.d.ts +4 -0
  121. package/dist/commands/strings.d.ts.map +1 -0
  122. package/dist/commands/strings.js +170 -0
  123. package/dist/commands/strings.js.map +1 -0
  124. package/dist/commands/tac.d.ts +4 -0
  125. package/dist/commands/tac.d.ts.map +1 -0
  126. package/dist/commands/tac.js +130 -0
  127. package/dist/commands/tac.js.map +1 -0
  128. package/dist/commands/time.d.ts +4 -0
  129. package/dist/commands/time.d.ts.map +1 -0
  130. package/dist/commands/time.js +126 -0
  131. package/dist/commands/time.js.map +1 -0
  132. package/dist/commands/umount.d.ts +4 -0
  133. package/dist/commands/umount.d.ts.map +1 -0
  134. package/dist/commands/umount.js +103 -0
  135. package/dist/commands/umount.js.map +1 -0
  136. package/dist/commands/uname.d.ts +4 -0
  137. package/dist/commands/uname.d.ts.map +1 -0
  138. package/dist/commands/uname.js +149 -0
  139. package/dist/commands/uname.js.map +1 -0
  140. package/dist/commands/unexpand.d.ts +4 -0
  141. package/dist/commands/unexpand.d.ts.map +1 -0
  142. package/dist/commands/unexpand.js +286 -0
  143. package/dist/commands/unexpand.js.map +1 -0
  144. package/dist/commands/uptime.d.ts +4 -0
  145. package/dist/commands/uptime.d.ts.map +1 -0
  146. package/dist/commands/uptime.js +62 -0
  147. package/dist/commands/uptime.js.map +1 -0
  148. package/dist/commands/view.d.ts +1 -0
  149. package/dist/commands/view.d.ts.map +1 -1
  150. package/dist/commands/view.js +408 -66
  151. package/dist/commands/view.js.map +1 -1
  152. package/dist/commands/yes.d.ts +4 -0
  153. package/dist/commands/yes.d.ts.map +1 -0
  154. package/dist/commands/yes.js +58 -0
  155. package/dist/commands/yes.js.map +1 -0
  156. package/dist/index.d.ts +24 -0
  157. package/dist/index.d.ts.map +1 -1
  158. package/dist/index.js +82 -0
  159. package/dist/index.js.map +1 -1
  160. package/package.json +12 -3
  161. package/src/commands/awk.ts +340 -0
  162. package/src/commands/chmod.ts +141 -2
  163. package/src/commands/chown.ts +321 -0
  164. package/src/commands/cksum.ts +133 -0
  165. package/src/commands/cmp.ts +126 -0
  166. package/src/commands/column.ts +273 -0
  167. package/src/commands/cp.ts +93 -4
  168. package/src/commands/cron.ts +115 -23
  169. package/src/commands/curl.ts +231 -0
  170. package/src/commands/echo.ts +122 -2
  171. package/src/commands/env.ts +143 -0
  172. package/src/commands/expand.ts +207 -0
  173. package/src/commands/factor.ts +151 -0
  174. package/src/commands/fmt.ts +293 -0
  175. package/src/commands/fold.ts +257 -0
  176. package/src/commands/groups.ts +72 -0
  177. package/src/commands/head.ts +176 -77
  178. package/src/commands/hostname.ts +81 -0
  179. package/src/commands/less.ts +1 -0
  180. package/src/commands/man.ts +4 -1
  181. package/src/commands/mount.ts +1302 -0
  182. package/src/commands/od.ts +327 -0
  183. package/src/commands/pr.ts +291 -0
  184. package/src/commands/printf.ts +271 -0
  185. package/src/commands/readlink.ts +102 -0
  186. package/src/commands/realpath.ts +126 -0
  187. package/src/commands/rev.ts +143 -0
  188. package/src/commands/shuf.ts +218 -0
  189. package/src/commands/sleep.ts +109 -0
  190. package/src/commands/strings.ts +176 -0
  191. package/src/commands/tac.ts +138 -0
  192. package/src/commands/time.ts +144 -0
  193. package/src/commands/umount.ts +116 -0
  194. package/src/commands/uname.ts +130 -0
  195. package/src/commands/unexpand.ts +305 -0
  196. package/src/commands/uptime.ts +73 -0
  197. package/src/commands/view.ts +463 -73
  198. package/src/index.ts +82 -0
  199. package/tsconfig.json +4 -0
@@ -2,6 +2,7 @@ import path from 'path';
2
2
  import { TerminalCommand } from '../shared/terminal-command.js';
3
3
  import { writelnStdout, writelnStderr } from '../shared/helpers.js';
4
4
  import { parseCronExpression } from 'cron-schedule';
5
+ import cronstrue from 'cronstrue';
5
6
  /**
6
7
  * Parse a single crontab line
7
8
  * @param line - The line to parse
@@ -24,7 +25,8 @@ function parseCrontabLine(line) {
24
25
  // We need to determine which format is being used
25
26
  let expression;
26
27
  let command;
27
- // If we have exactly 6 parts, it must be 5-field format (5 cron fields + 1 command word)
28
+ // If we have exactly 6 parts, assume 5-field format (5 cron fields + 1 command word)
29
+ // This is the most common case
28
30
  if (parts.length === 6) {
29
31
  // 5-field format: minute hour day month weekday command
30
32
  expression = parts.slice(0, 5).join(' ');
@@ -32,11 +34,20 @@ function parseCrontabLine(line) {
32
34
  }
33
35
  else {
34
36
  // 7+ parts: could be 5-field with multi-word command or 6-field format
35
- // Try parsing as 5-field first (more common), then 6-field if that fails
37
+ // Try 6-field format FIRST (if user wrote 6 fields, they probably meant 6 fields)
38
+ // Then fall back to 5-field if 6-field is invalid
36
39
  const potential5Field = parts.slice(0, 5).join(' ');
37
40
  const potential6Field = parts.slice(0, 6).join(' ');
38
41
  let valid5Field = false;
39
42
  let valid6Field = false;
43
+ // Try to validate 6-field format first
44
+ try {
45
+ parseCronExpression(potential6Field);
46
+ valid6Field = true;
47
+ }
48
+ catch {
49
+ // Not a valid 6-field expression
50
+ }
40
51
  // Try to validate 5-field format
41
52
  try {
42
53
  parseCronExpression(potential5Field);
@@ -45,24 +56,16 @@ function parseCrontabLine(line) {
45
56
  catch {
46
57
  // Not a valid 5-field expression
47
58
  }
48
- // Try to validate 6-field format
49
- try {
50
- parseCronExpression(potential6Field);
51
- valid6Field = true;
52
- }
53
- catch {
54
- // Not a valid 6-field expression
59
+ // Prefer 6-field format if valid (user wrote 6 fields, so use them)
60
+ // Only use 5-field if 6-field is invalid
61
+ if (valid6Field) {
62
+ expression = potential6Field;
63
+ command = parts.slice(6).join(' ');
55
64
  }
56
- // Prefer 5-field format if both are valid (more common)
57
- // Only use 6-field if 5-field is invalid but 6-field is valid
58
- if (valid5Field) {
65
+ else if (valid5Field) {
59
66
  expression = potential5Field;
60
67
  command = parts.slice(5).join(' ');
61
68
  }
62
- else if (valid6Field) {
63
- expression = potential6Field;
64
- command = parts.slice(6).join(' ');
65
- }
66
69
  else {
67
70
  // Neither format is valid, return null
68
71
  return null;
@@ -101,11 +104,30 @@ function parseCrontabFile(content) {
101
104
  }
102
105
  return entries;
103
106
  }
107
+ /**
108
+ * Get human-readable description of a cron expression
109
+ * @param expression - The cron expression
110
+ * @returns Human-readable description or null if parsing fails
111
+ */
112
+ function getHumanReadableDescription(expression) {
113
+ try {
114
+ return cronstrue.toString(expression, {
115
+ throwExceptionOnParseError: false,
116
+ verbose: false
117
+ });
118
+ }
119
+ catch {
120
+ return null;
121
+ }
122
+ }
104
123
  function printUsage(process, terminal) {
105
124
  const usage = `Usage: cron [COMMAND] [OPTIONS]
106
-
125
+
107
126
  Manage scheduled tasks (crontabs).
108
127
 
128
+ Options:
129
+ --help display this help and exit
130
+
109
131
  Commands:
110
132
  list List all active cron jobs
111
133
  add <schedule> <cmd> Add a new cron job to user crontab
@@ -119,6 +141,7 @@ Commands:
119
141
  Examples:
120
142
  cron list List all cron jobs
121
143
  cron add "*/5 * * * *" "echo hello" Add job to run every 5 minutes
144
+ cron add "* * * * * *" "echo hello" Add job to run every second (6-field)
122
145
  cron add "0 0 * * *" "echo daily" Add daily job at midnight
123
146
  cron remove cron:user:1 Remove user cron job #1
124
147
  cron validate "*/5 * * * *" Validate cron expression
@@ -126,10 +149,14 @@ Examples:
126
149
  cron test "*/5 * * * *" Test if expression matches now
127
150
 
128
151
  Crontab format:
129
- Standard: minute hour day month weekday command
130
- Extended: second minute hour day month weekday command
131
-
132
- --help display this help and exit`;
152
+ Both 5-field and 6-field cron expressions are supported:
153
+
154
+ 5-field (standard): minute hour day month weekday command
155
+ Example: "*/5 * * * *" runs every 5 minutes
156
+
157
+ 6-field (extended): second minute hour day month weekday command
158
+ Example: "* * * * * *" runs every second
159
+ Example: "0 */5 * * * *" runs every 5 minutes at :00 seconds`;
133
160
  writelnStderr(process, terminal, usage);
134
161
  }
135
162
  export function createCommand(kernel, shell, terminal) {
@@ -154,9 +181,58 @@ export function createCommand(kernel, shell, terminal) {
154
181
  await writelnStdout(process, terminal, 'No active cron jobs.');
155
182
  return 0;
156
183
  }
184
+ // Build a map of job names to expressions by parsing crontab files
185
+ const jobExpressions = new Map();
186
+ // Load system crontab entries
187
+ try {
188
+ const systemCrontabPath = '/etc/crontab';
189
+ if (await kernel.filesystem.fs.exists(systemCrontabPath)) {
190
+ const content = await kernel.filesystem.fs.readFile(systemCrontabPath, 'utf-8');
191
+ const entries = parseCrontabFile(content);
192
+ for (const entry of entries) {
193
+ const jobName = `cron:system:${entry.lineNumber}`;
194
+ jobExpressions.set(jobName, { expression: entry.expression, command: entry.command });
195
+ }
196
+ }
197
+ }
198
+ catch {
199
+ // Ignore errors loading system crontab
200
+ }
201
+ // Load user crontab entries
202
+ try {
203
+ const home = shell.env.get('HOME') ?? '/root';
204
+ const userCrontabPath = path.join(home, '.config', 'crontab');
205
+ if (await shell.context.fs.promises.exists(userCrontabPath)) {
206
+ const content = await shell.context.fs.promises.readFile(userCrontabPath, 'utf-8');
207
+ const entries = parseCrontabFile(content);
208
+ for (const entry of entries) {
209
+ const jobName = `cron:user:${entry.lineNumber}`;
210
+ jobExpressions.set(jobName, { expression: entry.expression, command: entry.command });
211
+ }
212
+ }
213
+ }
214
+ catch {
215
+ // Ignore errors loading user crontab
216
+ }
157
217
  await writelnStdout(process, terminal, 'Active cron jobs:');
158
218
  for (const jobName of cronJobs) {
159
- await writelnStdout(process, terminal, ` ${jobName}`);
219
+ const jobInfo = jobExpressions.get(jobName);
220
+ if (jobInfo) {
221
+ const description = getHumanReadableDescription(jobInfo.expression);
222
+ if (description) {
223
+ await writelnStdout(process, terminal, ` ${jobName}`);
224
+ await writelnStdout(process, terminal, ` Schedule: ${jobInfo.expression} (${description})`);
225
+ await writelnStdout(process, terminal, ` Command: ${jobInfo.command}`);
226
+ }
227
+ else {
228
+ await writelnStdout(process, terminal, ` ${jobName}`);
229
+ await writelnStdout(process, terminal, ` Schedule: ${jobInfo.expression}`);
230
+ await writelnStdout(process, terminal, ` Command: ${jobInfo.command}`);
231
+ }
232
+ }
233
+ else {
234
+ await writelnStdout(process, terminal, ` ${jobName}`);
235
+ }
160
236
  }
161
237
  return 0;
162
238
  }
@@ -174,8 +250,10 @@ export function createCommand(kernel, shell, terminal) {
174
250
  }
175
251
  const command = argv.slice(2).join(' ');
176
252
  // Validate the cron expression
253
+ let humanReadable = null;
177
254
  try {
178
255
  parseCronExpression(schedule);
256
+ humanReadable = getHumanReadableDescription(schedule);
179
257
  }
180
258
  catch (error) {
181
259
  await writelnStderr(process, terminal, `cron add: invalid cron expression: ${schedule}`);
@@ -220,6 +298,9 @@ export function createCommand(kernel, shell, terminal) {
220
298
  return 1;
221
299
  }
222
300
  await writelnStdout(process, terminal, `Added cron job: ${schedule} ${command}`);
301
+ if (humanReadable) {
302
+ await writelnStdout(process, terminal, ` Schedule: ${humanReadable}`);
303
+ }
223
304
  await writelnStdout(process, terminal, 'Run "cron reload" to activate the new job.');
224
305
  return 0;
225
306
  }
@@ -273,7 +354,7 @@ export function createCommand(kernel, shell, terminal) {
273
354
  const crontabPath = path.join(home, '.config', 'crontab');
274
355
  // Use view command to edit (or create if doesn't exist)
275
356
  const result = await kernel.execute({
276
- command: '/bin/view',
357
+ command: '/usr/bin/edit',
277
358
  args: [crontabPath],
278
359
  shell,
279
360
  terminal
@@ -296,7 +377,11 @@ export function createCommand(kernel, shell, terminal) {
296
377
  }
297
378
  try {
298
379
  parseCronExpression(expression);
380
+ const description = getHumanReadableDescription(expression);
299
381
  await writelnStdout(process, terminal, `Valid cron expression: ${expression}`);
382
+ if (description) {
383
+ await writelnStdout(process, terminal, ` Description: ${description}`);
384
+ }
300
385
  return 0;
301
386
  }
302
387
  catch (error) {
@@ -325,7 +410,11 @@ export function createCommand(kernel, shell, terminal) {
325
410
  const cron = parseCronExpression(expression);
326
411
  const now = new Date();
327
412
  const dates = cron.getNextDates(count, now);
413
+ const description = getHumanReadableDescription(expression);
328
414
  await writelnStdout(process, terminal, `Next ${count} execution time(s) for "${expression}":`);
415
+ if (description) {
416
+ await writelnStdout(process, terminal, ` Schedule: ${description}`);
417
+ }
329
418
  for (let i = 0; i < dates.length; i++) {
330
419
  const date = dates[i];
331
420
  if (date) {
@@ -355,12 +444,16 @@ export function createCommand(kernel, shell, terminal) {
355
444
  const cron = parseCronExpression(expression);
356
445
  const now = new Date();
357
446
  const matches = cron.matchDate(now);
447
+ const description = getHumanReadableDescription(expression);
358
448
  if (matches) {
359
449
  await writelnStdout(process, terminal, `Expression "${expression}" matches current time: ${now.toISOString()}`);
360
450
  }
361
451
  else {
362
452
  await writelnStdout(process, terminal, `Expression "${expression}" does not match current time: ${now.toISOString()}`);
363
453
  }
454
+ if (description) {
455
+ await writelnStdout(process, terminal, ` Schedule: ${description}`);
456
+ }
364
457
  return 0;
365
458
  }
366
459
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"cron.js","sourceRoot":"","sources":["../../src/commands/cron.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cron.js","sourceRoot":"","sources":["../../src/commands/cron.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAA;AAEvB,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAC/D,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AACnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;AACnD,OAAO,SAAS,MAAM,WAAW,CAAA;AAQjC;;;;GAIG;AACH,SAAS,gBAAgB,CAAC,IAAY;IACpC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAA;IAE3B,gCAAgC;IAChC,IAAI,OAAO,KAAK,EAAE,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QAC9C,OAAO,IAAI,CAAA;IACb,CAAC;IAED,+DAA+D;IAC/D,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;IAElC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,uDAAuD;QACvD,OAAO,IAAI,CAAA;IACb,CAAC;IAED,8EAA8E;IAC9E,qFAAqF;IACrF,kDAAkD;IAClD,IAAI,UAAkB,CAAA;IACtB,IAAI,OAAe,CAAA;IAEnB,qFAAqF;IACrF,+BAA+B;IAC/B,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,wDAAwD;QACxD,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACxC,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;IAC1B,CAAC;SAAM,CAAC;QACN,uEAAuE;QACvE,kFAAkF;QAClF,kDAAkD;QAClD,MAAM,eAAe,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACnD,MAAM,eAAe,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAEnD,IAAI,WAAW,GAAG,KAAK,CAAA;QACvB,IAAI,WAAW,GAAG,KAAK,CAAA;QAEvB,uCAAuC;QACvC,IAAI,CAAC;YACH,mBAAmB,CAAC,eAAe,CAAC,CAAA;YACpC,WAAW,GAAG,IAAI,CAAA;QACpB,CAAC;QAAC,MAAM,CAAC;YACP,iCAAiC;QACnC,CAAC;QAED,iCAAiC;QACjC,IAAI,CAAC;YACH,mBAAmB,CAAC,eAAe,CAAC,CAAA;YACpC,WAAW,GAAG,IAAI,CAAA;QACpB,CAAC;QAAC,MAAM,CAAC;YACP,iCAAiC;QACnC,CAAC;QAED,oEAAoE;QACpE,yCAAyC;QACzC,IAAI,WAAW,EAAE,CAAC;YAChB,UAAU,GAAG,eAAe,CAAA;YAC5B,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACpC,CAAC;aAAM,IAAI,WAAW,EAAE,CAAC;YACvB,UAAU,GAAG,eAAe,CAAA;YAC5B,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACpC,CAAC;aAAM,CAAC;YACN,uCAAuC;YACvC,OAAO,IAAI,CAAA;QACb,CAAC;IACH,CAAC;IAED,0BAA0B;IAC1B,IAAI,CAAC;QACH,mBAAmB,CAAC,UAAU,CAAC,CAAA;IACjC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAA;IACb,CAAC;IAED,OAAO,GAAG,OAAO,CAAC,IAAI,EAAE,CAAA;IACxB,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,CAAA;AAChC,CAAC;AAED;;;;GAIG;AACH,SAAS,gBAAgB,CAAC,OAAe;IACvC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IACjC,MAAM,OAAO,GAAmB,EAAE,CAAA;IAElC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAA;QAC7B,IAAI,CAAC,IAAI;YAAE,SAAQ;QACnB,MAAM,MAAM,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAA;QAErC,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,CAAC,IAAI,CAAC;gBACX,UAAU,EAAE,MAAM,CAAC,UAAU;gBAC7B,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,UAAU,EAAE,CAAC,GAAG,CAAC;aAClB,CAAC,CAAA;QACJ,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAA;AAChB,CAAC;AAED;;;;GAIG;AACH,SAAS,2BAA2B,CAAC,UAAkB;IACrD,IAAI,CAAC;QACH,OAAO,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE;YACpC,0BAA0B,EAAE,KAAK;YACjC,OAAO,EAAE,KAAK;SACf,CAAC,CAAA;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAA;IACX,CAAC;AACL,CAAC;AAED,SAAS,UAAU,CAAC,OAA4B,EAAE,QAAkB;IAClE,MAAM,KAAK,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iEAmCiD,CAAA;IAC/D,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAA;AACzC,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,MAAc,EAAE,KAAY,EAAE,QAAkB;IAC5E,OAAO,IAAI,eAAe,CAAC;QACzB,OAAO,EAAE,MAAM;QACf,WAAW,EAAE,mCAAmC;QAChD,MAAM;QACN,KAAK;QACL,QAAQ;QACR,GAAG,EAAE,KAAK,EAAE,GAAW,EAAE,IAAc,EAAE,EAAE;YACzC,MAAM,OAAO,GAAG,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAwB,CAAA;YAEhE,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,EAAE,CAAC;gBACzF,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;gBAC7B,OAAO,CAAC,CAAA;YACV,CAAC;YAED,MAAM,UAAU,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;YAE1B,IAAI,CAAC;gBACH,QAAQ,UAAU,EAAE,CAAC;oBACnB,KAAK,MAAM,CAAC,CAAC,CAAC;wBACZ,MAAM,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,SAAS,EAAE,CAAA;wBAC7C,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;4BAC1B,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,sBAAsB,CAAC,CAAA;4BAC9D,OAAO,CAAC,CAAA;wBACV,CAAC;wBAED,mEAAmE;wBACnE,MAAM,cAAc,GAAG,IAAI,GAAG,EAAmD,CAAA;wBAEjF,8BAA8B;wBAC9B,IAAI,CAAC;4BACH,MAAM,iBAAiB,GAAG,cAAc,CAAA;4BACxC,IAAI,MAAM,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,MAAM,CAAC,iBAAiB,CAAC,EAAE,CAAC;gCACzD,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,QAAQ,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAA;gCAC/E,MAAM,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAA;gCACzC,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;oCAC5B,MAAM,OAAO,GAAG,eAAe,KAAK,CAAC,UAAU,EAAE,CAAA;oCACjD,cAAc,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAA;gCACvF,CAAC;4BACH,CAAC;wBACH,CAAC;wBAAC,MAAM,CAAC;4BACP,uCAAuC;wBACzC,CAAC;wBAED,4BAA4B;wBAC5B,IAAI,CAAC;4BACH,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,OAAO,CAAA;4BAC7C,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,SAAS,CAAC,CAAA;4BAC7D,IAAI,MAAM,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,eAAe,CAAC,EAAE,CAAC;gCAC5D,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,eAAe,EAAE,OAAO,CAAC,CAAA;gCAClF,MAAM,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAA;gCACzC,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;oCAC5B,MAAM,OAAO,GAAG,aAAa,KAAK,CAAC,UAAU,EAAE,CAAA;oCAC/C,cAAc,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAA;gCACvF,CAAC;4BACH,CAAC;wBACH,CAAC;wBAAC,MAAM,CAAC;4BACP,qCAAqC;wBACvC,CAAC;wBAED,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,mBAAmB,CAAC,CAAA;wBAC3D,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;4BAC/B,MAAM,OAAO,GAAG,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;4BAC3C,IAAI,OAAO,EAAE,CAAC;gCACZ,MAAM,WAAW,GAAG,2BAA2B,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;gCACnE,IAAI,WAAW,EAAE,CAAC;oCAChB,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,OAAO,EAAE,CAAC,CAAA;oCACtD,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,iBAAiB,OAAO,CAAC,UAAU,KAAK,WAAW,GAAG,CAAC,CAAA;oCAC9F,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,gBAAgB,OAAO,CAAC,OAAO,EAAE,CAAC,CAAA;gCAC3E,CAAC;qCAAM,CAAC;oCACN,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,OAAO,EAAE,CAAC,CAAA;oCACtD,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,iBAAiB,OAAO,CAAC,UAAU,EAAE,CAAC,CAAA;oCAC7E,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,gBAAgB,OAAO,CAAC,OAAO,EAAE,CAAC,CAAA;gCAC3E,CAAC;4BACH,CAAC;iCAAM,CAAC;gCACN,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,OAAO,EAAE,CAAC,CAAA;4BACxD,CAAC;wBACH,CAAC;wBACD,OAAO,CAAC,CAAA;oBACV,CAAC;oBAED,KAAK,KAAK,CAAC,CAAC,CAAC;wBACX,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;4BACpB,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,6BAA6B,CAAC,CAAA;4BACrE,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,sCAAsC,CAAC,CAAA;4BAC9E,OAAO,CAAC,CAAA;wBACV,CAAC;wBAED,MAAM,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;wBACxB,IAAI,CAAC,QAAQ,EAAE,CAAC;4BACd,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,4BAA4B,CAAC,CAAA;4BACpE,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,sCAAsC,CAAC,CAAA;4BAC9E,OAAO,CAAC,CAAA;wBACV,CAAC;wBACD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;wBAEvC,+BAA+B;wBAC/B,IAAI,aAAa,GAAkB,IAAI,CAAA;wBACvC,IAAI,CAAC;4BACH,mBAAmB,CAAC,QAAQ,CAAC,CAAA;4BAC7B,aAAa,GAAG,2BAA2B,CAAC,QAAQ,CAAC,CAAA;wBACvD,CAAC;wBAAC,OAAO,KAAK,EAAE,CAAC;4BACf,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,sCAAsC,QAAQ,EAAE,CAAC,CAAA;4BACxF,OAAO,CAAC,CAAA;wBACV,CAAC;wBAED,0BAA0B;wBAC1B,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,OAAO,CAAA;wBAC7C,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,CAAA;wBAC5C,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,CAAA;wBAEnD,kCAAkC;wBAClC,IAAI,CAAC;4BACH,IAAI,CAAC,MAAM,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;gCACvD,MAAM,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;4BACvE,CAAC;wBACH,CAAC;wBAAC,OAAO,KAAK,EAAE,CAAC;4BACf,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,iDAAiD,KAAK,EAAE,CAAC,CAAA;4BAChG,OAAO,CAAC,CAAA;wBACV,CAAC;wBAED,sCAAsC;wBACtC,IAAI,cAAc,GAAG,EAAE,CAAA;wBACvB,IAAI,CAAC;4BACH,IAAI,MAAM,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC;gCACxD,cAAc,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,CAAA;gCAC/E,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oCAChE,cAAc,IAAI,IAAI,CAAA;gCACxB,CAAC;4BACH,CAAC;wBACH,CAAC;wBAAC,OAAO,KAAK,EAAE,CAAC;4BACf,mDAAmD;4BACnD,cAAc,GAAG,EAAE,CAAA;wBACrB,CAAC;wBAED,gBAAgB;wBAChB,cAAc,IAAI,GAAG,QAAQ,IAAI,OAAO,IAAI,CAAA;wBAE5C,qBAAqB;wBACrB,IAAI,CAAC;4BACH,MAAM,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,WAAW,EAAE,cAAc,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAA;wBAC/F,CAAC;wBAAC,OAAO,KAAK,EAAE,CAAC;4BACf,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,sCAAsC,KAAK,EAAE,CAAC,CAAA;4BACrF,OAAO,CAAC,CAAA;wBACV,CAAC;wBAED,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,mBAAmB,QAAQ,IAAI,OAAO,EAAE,CAAC,CAAA;wBAChF,IAAI,aAAa,EAAE,CAAC;4BAClB,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,eAAe,aAAa,EAAE,CAAC,CAAA;wBACxE,CAAC;wBACD,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,4CAA4C,CAAC,CAAA;wBACpF,OAAO,CAAC,CAAA;oBACV,CAAC;oBAED,KAAK,QAAQ,CAAC,CAAC,CAAC;wBACd,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;4BACpB,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,6BAA6B,CAAC,CAAA;4BACrE,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,yBAAyB,CAAC,CAAA;4BACjE,OAAO,CAAC,CAAA;wBACV,CAAC;wBAED,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;wBACrB,IAAI,CAAC,KAAK,EAAE,CAAC;4BACX,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,6BAA6B,CAAC,CAAA;4BACrE,OAAO,CAAC,CAAA;wBACV,CAAC;wBAED,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;wBAE9C,IAAI,CAAC,MAAM,EAAE,CAAC;4BACZ,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,+BAA+B,KAAK,EAAE,CAAC,CAAA;4BAC9E,OAAO,CAAC,CAAA;wBACV,CAAC;wBAED,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;wBAEjC,mDAAmD;wBACnD,IAAI,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;4BACnC,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,OAAO,CAAA;4BAC7C,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,SAAS,CAAC,CAAA;4BAEzD,IAAI,CAAC;gCACH,IAAI,MAAM,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC;oCACxD,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,CAAA;oCAC9E,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;oCACjC,MAAM,UAAU,GAAG,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAA;oCAEhE,IAAI,UAAU,GAAG,CAAC,IAAI,UAAU,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;wCACjD,2CAA2C;wCAC3C,MAAM,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAA;wCACzC,MAAM,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAyB,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,KAAK,UAAU,CAAC,CAAA;wCAE9F,IAAI,aAAa,EAAE,CAAC;4CAClB,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,KAAK,UAAU,CAAC,CAAA;4CACjE,MAAM,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,WAAW,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAA;wCACpG,CAAC;oCACH,CAAC;gCACH,CAAC;4BACH,CAAC;4BAAC,OAAO,KAAK,EAAE,CAAC;gCACf,qCAAqC;gCACrC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,kCAAkC,KAAK,EAAE,CAAC,CAAA;4BAC5D,CAAC;wBACH,CAAC;wBAED,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,qBAAqB,KAAK,EAAE,CAAC,CAAA;wBACpE,OAAO,CAAC,CAAA;oBACV,CAAC;oBAED,KAAK,MAAM,CAAC,CAAC,CAAC;wBACZ,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,OAAO,CAAA;wBAC7C,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,SAAS,CAAC,CAAA;wBAEzD,wDAAwD;wBACxD,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC;4BAClC,OAAO,EAAE,eAAe;4BACxB,IAAI,EAAE,CAAC,WAAW,CAAC;4BACnB,KAAK;4BACL,QAAQ;yBACT,CAAC,CAAA;wBAEF,IAAI,MAAM,KAAK,CAAC,EAAE,CAAC;4BACjB,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,qDAAqD,CAAC,CAAA;wBAC/F,CAAC;wBAED,OAAO,MAAM,CAAA;oBACf,CAAC;oBAED,KAAK,UAAU,CAAC,CAAC,CAAC;wBAChB,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;4BACpB,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,mCAAmC,CAAC,CAAA;4BAC3E,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,mCAAmC,CAAC,CAAA;4BAC3E,OAAO,CAAC,CAAA;wBACV,CAAC;wBAED,MAAM,UAAU,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;wBAC1B,IAAI,CAAC,UAAU,EAAE,CAAC;4BAChB,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,mCAAmC,CAAC,CAAA;4BAC3E,OAAO,CAAC,CAAA;wBACV,CAAC;wBACD,IAAI,CAAC;4BACH,mBAAmB,CAAC,UAAU,CAAC,CAAA;4BAC/B,MAAM,WAAW,GAAG,2BAA2B,CAAC,UAAU,CAAC,CAAA;4BAC3D,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,0BAA0B,UAAU,EAAE,CAAC,CAAA;4BAC9E,IAAI,WAAW,EAAE,CAAC;gCAChB,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,kBAAkB,WAAW,EAAE,CAAC,CAAA;4BACzE,CAAC;4BACD,OAAO,CAAC,CAAA;wBACV,CAAC;wBAAC,OAAO,KAAK,EAAE,CAAC;4BACf,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,4BAA4B,UAAU,EAAE,CAAC,CAAA;4BAChF,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,UAAU,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;4BAC1G,OAAO,CAAC,CAAA;wBACV,CAAC;oBACH,CAAC;oBAED,KAAK,MAAM,CAAC,CAAC,CAAC;wBACZ,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;4BACpB,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,+BAA+B,CAAC,CAAA;4BACvE,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,uCAAuC,CAAC,CAAA;4BAC/E,OAAO,CAAC,CAAA;wBACV,CAAC;wBAED,MAAM,UAAU,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;wBAC1B,IAAI,CAAC,UAAU,EAAE,CAAC;4BAChB,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,+BAA+B,CAAC,CAAA;4BACvE,OAAO,CAAC,CAAA;wBACV,CAAC;wBACD,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;wBAEpE,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;4BAC9B,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,yCAAyC,CAAC,CAAA;4BACjF,OAAO,CAAC,CAAA;wBACV,CAAC;wBAED,IAAI,CAAC;4BACH,MAAM,IAAI,GAAG,mBAAmB,CAAC,UAAU,CAAC,CAAA;4BAC5C,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAA;4BACtB,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;4BAC3C,MAAM,WAAW,GAAG,2BAA2B,CAAC,UAAU,CAAC,CAAA;4BAE3D,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,KAAK,2BAA2B,UAAU,IAAI,CAAC,CAAA;4BAC9F,IAAI,WAAW,EAAE,CAAC;gCAChB,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,eAAe,WAAW,EAAE,CAAC,CAAA;4BACtE,CAAC;4BACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gCACtC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;gCACrB,IAAI,IAAI,EAAE,CAAC;oCACT,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC,CAAA;gCAC7E,CAAC;4BACH,CAAC;4BACD,OAAO,CAAC,CAAA;wBACV,CAAC;wBAAC,OAAO,KAAK,EAAE,CAAC;4BACf,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,4BAA4B,UAAU,EAAE,CAAC,CAAA;4BAChF,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,UAAU,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;4BAC1G,OAAO,CAAC,CAAA;wBACV,CAAC;oBACH,CAAC;oBAED,KAAK,MAAM,CAAC,CAAC,CAAC;wBACZ,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;4BACpB,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,+BAA+B,CAAC,CAAA;4BACvE,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,+BAA+B,CAAC,CAAA;4BACvE,OAAO,CAAC,CAAA;wBACV,CAAC;wBAED,MAAM,UAAU,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;wBAC1B,IAAI,CAAC,UAAU,EAAE,CAAC;4BAChB,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,+BAA+B,CAAC,CAAA;4BACvE,OAAO,CAAC,CAAA;wBACV,CAAC;wBACD,IAAI,CAAC;4BACH,MAAM,IAAI,GAAG,mBAAmB,CAAC,UAAU,CAAC,CAAA;4BAC5C,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAA;4BACtB,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;4BACnC,MAAM,WAAW,GAAG,2BAA2B,CAAC,UAAU,CAAC,CAAA;4BAE3D,IAAI,OAAO,EAAE,CAAC;gCACZ,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,eAAe,UAAU,2BAA2B,GAAG,CAAC,WAAW,EAAE,EAAE,CAAC,CAAA;4BACjH,CAAC;iCAAM,CAAC;gCACN,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,eAAe,UAAU,kCAAkC,GAAG,CAAC,WAAW,EAAE,EAAE,CAAC,CAAA;4BACxH,CAAC;4BACD,IAAI,WAAW,EAAE,CAAC;gCAChB,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,eAAe,WAAW,EAAE,CAAC,CAAA;4BACtE,CAAC;4BACD,OAAO,CAAC,CAAA;wBACV,CAAC;wBAAC,OAAO,KAAK,EAAE,CAAC;4BACf,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,4BAA4B,UAAU,EAAE,CAAC,CAAA;4BAChF,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,UAAU,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;4BAC1G,OAAO,CAAC,CAAA;wBACV,CAAC;oBACH,CAAC;oBAED,KAAK,QAAQ,CAAC,CAAC,CAAC;wBACd,+BAA+B;wBAC/B,MAAM,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,SAAS,EAAE,CAAA;wBACjD,KAAK,MAAM,OAAO,IAAI,YAAY,EAAE,CAAC;4BACnC,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC,CAAA;wBACrC,CAAC;wBAED,wBAAwB;wBACxB,IAAI,CAAC;4BACH,MAAM,iBAAiB,GAAG,cAAc,CAAA;4BACxC,IAAI,MAAM,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,MAAM,CAAC,iBAAiB,CAAC,EAAE,CAAC;gCACzD,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,QAAQ,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAA;gCAC/E,MAAM,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAA;gCAEzC,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;oCAC5B,MAAM,OAAO,GAAG,eAAe,KAAK,CAAC,UAAU,EAAE,CAAA;oCACjD,MAAM,CAAC,SAAS,CAAC,OAAO,CACtB,OAAO,EACP,KAAK,CAAC,UAAU,EAChB,KAAK,IAAI,EAAE;wCACT,MAAM,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;oCAC3C,CAAC,EACD;wCACE,YAAY,EAAE,CAAC,GAAY,EAAE,EAAE;4CAC7B,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,YAAY,OAAO,YAAY,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;wCACrG,CAAC;qCACF,CACF,CAAA;gCACH,CAAC;4BACH,CAAC;wBACH,CAAC;wBAAC,OAAO,KAAK,EAAE,CAAC;4BACf,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,kCAAkC,KAAK,EAAE,CAAC,CAAA;wBAC5D,CAAC;wBAED,sBAAsB;wBACtB,IAAI,CAAC;4BACH,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,OAAO,CAAA;4BAC7C,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,SAAS,CAAC,CAAA;4BAE7D,IAAI,MAAM,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,eAAe,CAAC,EAAE,CAAC;gCAC5D,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,eAAe,EAAE,OAAO,CAAC,CAAA;gCAClF,MAAM,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAA;gCAEzC,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;oCAC5B,MAAM,OAAO,GAAG,aAAa,KAAK,CAAC,UAAU,EAAE,CAAA;oCAC/C,mDAAmD;oCACnD,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,CAAA;oCACpC,MAAM,CAAC,SAAS,CAAC,OAAO,CACtB,OAAO,EACP,KAAK,CAAC,UAAU,EAChB,KAAK,IAAI,EAAE;wCACT,MAAM,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;oCACrC,CAAC,EACD;wCACE,YAAY,EAAE,CAAC,GAAY,EAAE,EAAE;4CAC7B,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,YAAY,OAAO,YAAY,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;wCACrG,CAAC;qCACF,CACF,CAAA;gCACH,CAAC;4BACH,CAAC;wBACH,CAAC;wBAAC,OAAO,KAAK,EAAE,CAAC;4BACf,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,gCAAgC,KAAK,EAAE,CAAC,CAAA;wBAC1D,CAAC;wBAED,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,oBAAoB,CAAC,CAAA;wBAC5D,OAAO,CAAC,CAAA;oBACV,CAAC;oBAED;wBACE,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,0BAA0B,UAAU,EAAE,CAAC,CAAA;wBAC9E,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,yCAAyC,CAAC,CAAA;wBACjF,OAAO,CAAC,CAAA;gBACZ,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,gBAAgB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;gBAChH,OAAO,CAAC,CAAA;YACV,CAAC;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { Kernel, Shell, Terminal } from '@ecmaos/types';
2
+ import { TerminalCommand } from '../shared/terminal-command.js';
3
+ export declare function createCommand(kernel: Kernel, shell: Shell, terminal: Terminal): TerminalCommand;
4
+ //# sourceMappingURL=curl.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"curl.d.ts","sourceRoot":"","sources":["../../src/commands/curl.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAW,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAkB/D,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,GAAG,eAAe,CAiN/F"}
@@ -0,0 +1,238 @@
1
+ import path from 'path';
2
+ import chalk from 'chalk';
3
+ import { TerminalCommand } from '../shared/terminal-command.js';
4
+ import { writelnStderr } from '../shared/helpers.js';
5
+ function printUsage(process, terminal) {
6
+ const usage = `Usage: curl [OPTION]... URL
7
+ Transfer data from or to a server.
8
+
9
+ -o, --output=FILE write output to FILE instead of stdout
10
+ -O, --remote-name write output to a file named like the remote file
11
+ -X, --request=METHOD HTTP method to use (default: GET)
12
+ -d, --data=DATA send data in POST request
13
+ -H, --header=HEADER add custom HTTP header (format: "Name: Value")
14
+ -s, --silent silent mode (don't show progress)
15
+ -v, --verbose verbose mode (show request/response headers)
16
+ --help display this help and exit`;
17
+ writelnStderr(process, terminal, usage);
18
+ }
19
+ export function createCommand(kernel, shell, terminal) {
20
+ return new TerminalCommand({
21
+ command: 'curl',
22
+ description: 'Transfer data from or to a server',
23
+ kernel,
24
+ shell,
25
+ terminal,
26
+ run: async (pid, argv) => {
27
+ const process = kernel.processes.get(pid);
28
+ if (!process)
29
+ return 1;
30
+ if (argv.length > 0 && (argv[0] === '--help' || argv[0] === '-h')) {
31
+ printUsage(process, terminal);
32
+ return 0;
33
+ }
34
+ let url;
35
+ let outputFile;
36
+ let remoteName = false;
37
+ let method = 'GET';
38
+ let body;
39
+ const headers = {};
40
+ let silent = false;
41
+ let verbose = false;
42
+ for (let i = 0; i < argv.length; i++) {
43
+ const arg = argv[i];
44
+ if (!arg)
45
+ continue;
46
+ if (arg === '--help' || arg === '-h') {
47
+ printUsage(process, terminal);
48
+ return 0;
49
+ }
50
+ else if (arg === '-o' || arg === '--output') {
51
+ if (i + 1 < argv.length) {
52
+ outputFile = argv[++i];
53
+ }
54
+ }
55
+ else if (arg.startsWith('--output=')) {
56
+ outputFile = arg.slice(9);
57
+ }
58
+ else if (arg.startsWith('-o')) {
59
+ outputFile = arg.slice(2) || undefined;
60
+ }
61
+ else if (arg === '-O' || arg === '--remote-name') {
62
+ remoteName = true;
63
+ }
64
+ else if (arg === '-X' || arg === '--request') {
65
+ if (i + 1 < argv.length) {
66
+ method = (argv[++i] || 'GET').toUpperCase();
67
+ }
68
+ }
69
+ else if (arg.startsWith('--request=')) {
70
+ method = arg.slice(10).toUpperCase();
71
+ }
72
+ else if (arg.startsWith('-X')) {
73
+ method = (arg.slice(2) || 'GET').toUpperCase();
74
+ }
75
+ else if (arg === '-d' || arg === '--data') {
76
+ if (i + 1 < argv.length) {
77
+ body = argv[++i];
78
+ }
79
+ }
80
+ else if (arg.startsWith('--data=')) {
81
+ body = arg.slice(7);
82
+ }
83
+ else if (arg.startsWith('-d')) {
84
+ body = arg.slice(2) || undefined;
85
+ }
86
+ else if (arg === '-H' || arg === '--header') {
87
+ if (i + 1 < argv.length) {
88
+ const headerArg = argv[++i];
89
+ if (headerArg) {
90
+ const [name, ...valueParts] = headerArg.split(':');
91
+ if (name && valueParts.length > 0) {
92
+ headers[name.trim()] = valueParts.join(':').trim();
93
+ }
94
+ }
95
+ }
96
+ }
97
+ else if (arg.startsWith('--header=')) {
98
+ const headerValue = arg.slice(9);
99
+ const [name, ...valueParts] = headerValue.split(':');
100
+ if (name && valueParts.length > 0) {
101
+ headers[name.trim()] = valueParts.join(':').trim();
102
+ }
103
+ }
104
+ else if (arg.startsWith('-H')) {
105
+ const headerValue = arg.slice(2);
106
+ if (headerValue) {
107
+ const [name, ...valueParts] = headerValue.split(':');
108
+ if (name && valueParts.length > 0) {
109
+ headers[name.trim()] = valueParts.join(':').trim();
110
+ }
111
+ }
112
+ }
113
+ else if (arg === '-s' || arg === '--silent') {
114
+ silent = true;
115
+ }
116
+ else if (arg === '-v' || arg === '--verbose') {
117
+ verbose = true;
118
+ }
119
+ else if (arg.startsWith('-')) {
120
+ const flags = arg.slice(1).split('');
121
+ if (flags.includes('s'))
122
+ silent = true;
123
+ if (flags.includes('v'))
124
+ verbose = true;
125
+ if (flags.includes('O'))
126
+ remoteName = true;
127
+ const invalidFlags = flags.filter(f => !['s', 'v', 'O'].includes(f));
128
+ if (invalidFlags.length > 0) {
129
+ await writelnStderr(process, terminal, `curl: invalid option -- '${invalidFlags[0]}'`);
130
+ await writelnStderr(process, terminal, "Try 'curl --help' for more information.");
131
+ return 1;
132
+ }
133
+ }
134
+ else {
135
+ if (!url) {
136
+ url = arg;
137
+ }
138
+ else {
139
+ await writelnStderr(process, terminal, `curl: unexpected argument: ${arg}`);
140
+ return 1;
141
+ }
142
+ }
143
+ }
144
+ if (!url) {
145
+ await writelnStderr(process, terminal, 'curl: URL is required');
146
+ await writelnStderr(process, terminal, "Try 'curl --help' for more information.");
147
+ return 1;
148
+ }
149
+ if (remoteName && !outputFile) {
150
+ const urlObj = new URL(url);
151
+ const pathname = urlObj.pathname;
152
+ outputFile = path.basename(pathname) || 'index.html';
153
+ }
154
+ try {
155
+ if (verbose && !silent) {
156
+ await writelnStderr(process, terminal, `* Connecting to ${url}`);
157
+ await writelnStderr(process, terminal, `> ${method} ${url} HTTP/1.1`);
158
+ }
159
+ const fetchOptions = { method };
160
+ if (body) {
161
+ fetchOptions.body = body;
162
+ if (!headers['Content-Type']) {
163
+ headers['Content-Type'] = 'application/x-www-form-urlencoded';
164
+ }
165
+ }
166
+ if (Object.keys(headers).length > 0) {
167
+ fetchOptions.headers = headers;
168
+ }
169
+ if (verbose && !silent) {
170
+ for (const [name, value] of Object.entries(headers)) {
171
+ await writelnStderr(process, terminal, `> ${name}: ${value}`);
172
+ }
173
+ }
174
+ const response = await globalThis.fetch(url, fetchOptions);
175
+ if (verbose && !silent) {
176
+ await writelnStderr(process, terminal, `< HTTP/${response.status} ${response.status} ${response.statusText}`);
177
+ for (const [name, value] of response.headers.entries()) {
178
+ await writelnStderr(process, terminal, `< ${name}: ${value}`);
179
+ }
180
+ }
181
+ if (!response.ok && !silent) {
182
+ await writelnStderr(process, terminal, chalk.red(`curl: HTTP error! status: ${response.status}`));
183
+ }
184
+ const reader = response.body?.getReader();
185
+ if (!reader) {
186
+ if (!silent) {
187
+ await writelnStderr(process, terminal, chalk.red('curl: No response body'));
188
+ }
189
+ return response.ok ? 0 : 1;
190
+ }
191
+ let writer;
192
+ if (outputFile) {
193
+ const fullPath = path.resolve(shell.cwd, outputFile);
194
+ const fileHandle = await shell.context.fs.promises.open(fullPath, 'w');
195
+ writer = {
196
+ write: async (chunk) => {
197
+ await fileHandle.write(chunk);
198
+ },
199
+ releaseLock: async () => {
200
+ await fileHandle.close();
201
+ }
202
+ };
203
+ }
204
+ else {
205
+ if (!process.stdout) {
206
+ await writelnStderr(process, terminal, chalk.red('curl: No stdout available'));
207
+ return 1;
208
+ }
209
+ writer = process.stdout.getWriter();
210
+ }
211
+ try {
212
+ while (true) {
213
+ const { done, value } = await reader.read();
214
+ if (done)
215
+ break;
216
+ if (value && value.length > 0) {
217
+ await writer.write(value);
218
+ }
219
+ }
220
+ }
221
+ finally {
222
+ reader.releaseLock();
223
+ if (writer && 'releaseLock' in writer) {
224
+ await writer.releaseLock();
225
+ }
226
+ }
227
+ return response.ok ? 0 : 1;
228
+ }
229
+ catch (error) {
230
+ if (!silent) {
231
+ await writelnStderr(process, terminal, chalk.red(`curl: ${error instanceof Error ? error.message : 'Unknown error'}`));
232
+ }
233
+ return 1;
234
+ }
235
+ }
236
+ });
237
+ }
238
+ //# sourceMappingURL=curl.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"curl.js","sourceRoot":"","sources":["../../src/commands/curl.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import type { Kernel, Shell, Terminal } from '@ecmaos/types';
2
+ import { TerminalCommand } from '../shared/terminal-command.js';
3
+ export declare function createCommand(kernel: Kernel, shell: Shell, terminal: Terminal): TerminalCommand;
4
+ //# sourceMappingURL=du.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"du.d.ts","sourceRoot":"","sources":["../../src/commands/du.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAW,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAErE,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AA0E/D,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,GAAG,eAAe,CAgG/F"}