@poe-platform/safe-bash 0.1.544 → 0.1.546

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 (112) hide show
  1. package/README.md +1 -0
  2. package/dist/safe-bash/chunks/{chunk-66VSWIUC.js → chunk-4V3NGZAG.js} +10 -6
  3. package/dist/safe-bash/chunks/{chunk-66VSWIUC.js.map → chunk-4V3NGZAG.js.map} +1 -1
  4. package/dist/safe-bash/chunks/{chunk-ZYS7YCMY.js → chunk-AWP6Z3RR.js} +13 -9
  5. package/dist/safe-bash/chunks/{chunk-ZYS7YCMY.js.map → chunk-AWP6Z3RR.js.map} +1 -1
  6. package/dist/safe-bash/chunks/chunk-BZUQJTOZ.js +322 -0
  7. package/dist/safe-bash/chunks/chunk-BZUQJTOZ.js.map +7 -0
  8. package/dist/safe-bash/chunks/{chunk-EZLQA6ON.js → chunk-DKT746UJ.js} +9 -5
  9. package/dist/safe-bash/chunks/{chunk-EZLQA6ON.js.map → chunk-DKT746UJ.js.map} +1 -1
  10. package/dist/safe-bash/chunks/{chunk-PZMJ4EC3.js → chunk-EUNOVYVT.js} +17 -4
  11. package/dist/safe-bash/chunks/chunk-EUNOVYVT.js.map +7 -0
  12. package/dist/safe-bash/chunks/chunk-EUTSYRNM.js +111 -0
  13. package/dist/safe-bash/chunks/chunk-EUTSYRNM.js.map +7 -0
  14. package/dist/safe-bash/chunks/chunk-F5AOPLRZ.js +355 -0
  15. package/dist/safe-bash/chunks/chunk-F5AOPLRZ.js.map +7 -0
  16. package/dist/safe-bash/chunks/chunk-FDGESHPB.js +224 -0
  17. package/dist/safe-bash/chunks/chunk-FDGESHPB.js.map +7 -0
  18. package/dist/safe-bash/chunks/{chunk-YEJBZLE5.js → chunk-FIY2BMTU.js} +12 -8
  19. package/dist/safe-bash/chunks/{chunk-YEJBZLE5.js.map → chunk-FIY2BMTU.js.map} +1 -1
  20. package/dist/safe-bash/chunks/{chunk-R3QJL5HH.js → chunk-IDJQT32M.js} +12 -8
  21. package/dist/safe-bash/chunks/{chunk-R3QJL5HH.js.map → chunk-IDJQT32M.js.map} +1 -1
  22. package/dist/safe-bash/chunks/chunk-KYU6MXVK.js +58 -0
  23. package/dist/safe-bash/chunks/chunk-KYU6MXVK.js.map +7 -0
  24. package/dist/safe-bash/chunks/{chunk-T5BV7HPD.js → chunk-O7BRWSKX.js} +17 -60
  25. package/dist/safe-bash/chunks/chunk-O7BRWSKX.js.map +7 -0
  26. package/dist/safe-bash/chunks/{chunk-6PSMEBVP.js → chunk-PPFWG34Y.js} +2 -2
  27. package/dist/safe-bash/chunks/{chunk-VNDFKT6F.js → chunk-QX2X5EC5.js} +13 -9
  28. package/dist/safe-bash/chunks/{chunk-VNDFKT6F.js.map → chunk-QX2X5EC5.js.map} +1 -1
  29. package/dist/safe-bash/chunks/chunk-TTTOMUAY.js +33 -0
  30. package/dist/safe-bash/chunks/chunk-TTTOMUAY.js.map +7 -0
  31. package/dist/safe-bash/chunks/{chunk-5VBLSPNM.js → chunk-UO33SQJU.js} +2 -239
  32. package/dist/safe-bash/chunks/chunk-UO33SQJU.js.map +7 -0
  33. package/dist/safe-bash/chunks/{chunk-TPD45VUZ.js → chunk-VY5N6O6I.js} +22 -109
  34. package/dist/safe-bash/chunks/chunk-VY5N6O6I.js.map +7 -0
  35. package/dist/safe-bash/chunks/{chunk-HFEU5SBQ.js → chunk-WISNTI7E.js} +11 -7
  36. package/dist/safe-bash/chunks/{chunk-HFEU5SBQ.js.map → chunk-WISNTI7E.js.map} +1 -1
  37. package/dist/safe-bash/chunks/{chunk-A4UXQKWZ.js → chunk-WJWYJDQE.js} +12 -8
  38. package/dist/safe-bash/chunks/{chunk-A4UXQKWZ.js.map → chunk-WJWYJDQE.js.map} +1 -1
  39. package/dist/safe-bash/chunks/{chunk-AZNI263O.js → chunk-WXUZXY35.js} +3 -3
  40. package/dist/safe-bash/chunks/{chunk-WODV2DVM.js → chunk-X7C3PN2T.js} +11 -7
  41. package/dist/safe-bash/chunks/{chunk-WODV2DVM.js.map → chunk-X7C3PN2T.js.map} +1 -1
  42. package/dist/safe-bash/chunks/{chunk-WF4P7XKI.js → chunk-YFFFBLBC.js} +12 -8
  43. package/dist/safe-bash/chunks/{chunk-WF4P7XKI.js.map → chunk-YFFFBLBC.js.map} +1 -1
  44. package/dist/safe-bash/commands/csplit/index.browser.js +6 -4
  45. package/dist/safe-bash/commands/factor/index.browser.js +5 -3
  46. package/dist/safe-bash/commands/getopt/index.browser.js +5 -3
  47. package/dist/safe-bash/commands/hexdump/index.browser.js +5 -3
  48. package/dist/safe-bash/commands/iconv/index.browser.js +5 -3
  49. package/dist/safe-bash/commands/line-endings/index.browser.js +6 -4
  50. package/dist/safe-bash/commands/llm/command.d.ts +4 -0
  51. package/dist/safe-bash/commands/llm/command.d.ts.map +1 -0
  52. package/dist/safe-bash/commands/llm/command.js +194 -0
  53. package/dist/safe-bash/commands/llm/command.js.map +1 -0
  54. package/dist/safe-bash/commands/llm/index.browser.js +14 -0
  55. package/dist/safe-bash/commands/llm/index.browser.js.map +7 -0
  56. package/dist/safe-bash/commands/llm/index.d.ts +6 -0
  57. package/dist/safe-bash/commands/llm/index.d.ts.map +1 -0
  58. package/dist/safe-bash/commands/llm/index.js +12 -0
  59. package/dist/safe-bash/commands/llm/index.js.map +1 -0
  60. package/dist/safe-bash/commands/llm/mime.d.ts +2 -0
  61. package/dist/safe-bash/commands/llm/mime.d.ts.map +1 -0
  62. package/dist/safe-bash/commands/llm/mime.js +33 -0
  63. package/dist/safe-bash/commands/llm/mime.js.map +1 -0
  64. package/dist/safe-bash/commands/llm/providers/elevenlabs.d.ts +16 -0
  65. package/dist/safe-bash/commands/llm/providers/elevenlabs.d.ts.map +1 -0
  66. package/dist/safe-bash/commands/llm/providers/elevenlabs.js +51 -0
  67. package/dist/safe-bash/commands/llm/providers/elevenlabs.js.map +1 -0
  68. package/dist/safe-bash/commands/llm/providers/index.browser.js +13 -0
  69. package/dist/safe-bash/commands/llm/providers/index.browser.js.map +7 -0
  70. package/dist/safe-bash/commands/llm/providers/index.d.ts +4 -0
  71. package/dist/safe-bash/commands/llm/providers/index.d.ts.map +1 -0
  72. package/dist/safe-bash/commands/llm/providers/index.js +3 -0
  73. package/dist/safe-bash/commands/llm/providers/index.js.map +1 -0
  74. package/dist/safe-bash/commands/llm/providers/openai.d.ts +15 -0
  75. package/dist/safe-bash/commands/llm/providers/openai.d.ts.map +1 -0
  76. package/dist/safe-bash/commands/llm/providers/openai.js +78 -0
  77. package/dist/safe-bash/commands/llm/providers/openai.js.map +1 -0
  78. package/dist/safe-bash/commands/llm/providers/shared.d.ts +34 -0
  79. package/dist/safe-bash/commands/llm/providers/shared.d.ts.map +1 -0
  80. package/dist/safe-bash/commands/llm/providers/shared.js +220 -0
  81. package/dist/safe-bash/commands/llm/providers/shared.js.map +1 -0
  82. package/dist/safe-bash/commands/llm/types.d.ts +28 -0
  83. package/dist/safe-bash/commands/llm/types.d.ts.map +1 -0
  84. package/dist/safe-bash/commands/llm/types.js +2 -0
  85. package/dist/safe-bash/commands/llm/types.js.map +1 -0
  86. package/dist/safe-bash/commands/network/index.browser.js +13 -8
  87. package/dist/safe-bash/commands/pr/index.browser.js +5 -3
  88. package/dist/safe-bash/commands/tsort/index.browser.js +5 -3
  89. package/dist/safe-bash/commands/xml/index.browser.js +7 -4
  90. package/dist/safe-bash/commands/yq/index.browser.js +8 -5
  91. package/dist/safe-bash/contracts/command.d.ts +4 -0
  92. package/dist/safe-bash/contracts/command.d.ts.map +1 -1
  93. package/dist/safe-bash/contracts/command.js.map +1 -1
  94. package/dist/safe-bash/contracts/output.d.ts.map +1 -1
  95. package/dist/safe-bash/contracts/output.js +12 -2
  96. package/dist/safe-bash/contracts/output.js.map +1 -1
  97. package/dist/safe-bash/core.browser.js +1093 -1160
  98. package/dist/safe-bash/core.browser.js.map +4 -4
  99. package/dist/safe-bash/core.d.ts +2 -0
  100. package/dist/safe-bash/core.d.ts.map +1 -1
  101. package/dist/safe-bash/core.js +2 -0
  102. package/dist/safe-bash/core.js.map +1 -1
  103. package/dist/safe-bash/shell/runtime.d.ts.map +1 -1
  104. package/dist/safe-bash/shell/runtime.js +10 -0
  105. package/dist/safe-bash/shell/runtime.js.map +1 -1
  106. package/package.json +14 -2
  107. package/dist/safe-bash/chunks/chunk-5VBLSPNM.js.map +0 -7
  108. package/dist/safe-bash/chunks/chunk-PZMJ4EC3.js.map +0 -7
  109. package/dist/safe-bash/chunks/chunk-T5BV7HPD.js.map +0 -7
  110. package/dist/safe-bash/chunks/chunk-TPD45VUZ.js.map +0 -7
  111. /package/dist/safe-bash/chunks/{chunk-6PSMEBVP.js.map → chunk-PPFWG34Y.js.map} +0 -0
  112. /package/dist/safe-bash/chunks/{chunk-AZNI263O.js.map → chunk-WXUZXY35.js.map} +0 -0
@@ -0,0 +1,224 @@
1
+ import {
2
+ TransformStream,
3
+ init_platform
4
+ } from "./chunk-2KL6W6NB.js";
5
+
6
+ // packages/safe-bash/src/contracts/errors.ts
7
+ init_platform();
8
+ import { isErrnoCode, isFsError, toFsError, FsError } from "@poe-platform/safe-fs/core";
9
+
10
+ // packages/safe-bash/src/contracts/io.ts
11
+ init_platform();
12
+ init_platform();
13
+ import { collectBytes, readBytes } from "@poe-platform/safe-fs/core";
14
+ import { collectBytes as collectBytes2, readBytes as readBytes2, toByteSource } from "@poe-platform/safe-fs/core";
15
+ var outputFailure = /* @__PURE__ */ Symbol("output failure");
16
+ function createBytePipe(options = {}) {
17
+ const highWaterMark = options.highWaterMark ?? 64 * 1024;
18
+ const signal = options.signal;
19
+ if (!Number.isSafeInteger(highWaterMark) || highWaterMark < 1) {
20
+ throw new RangeError("highWaterMark must be a positive safe integer");
21
+ }
22
+ const stream = new TransformStream(
23
+ void 0,
24
+ { highWaterMark: 1 },
25
+ { highWaterMark, size: (chunk) => chunk.byteLength }
26
+ );
27
+ const reader = stream.readable.getReader();
28
+ const writer = stream.writable.getWriter();
29
+ let ended = false;
30
+ let failed = false;
31
+ let failure;
32
+ let closePromise;
33
+ let abortPromise;
34
+ let finished = false;
35
+ const consumer = new AbortController();
36
+ const abort = (reason = new FsError("EPIPE", { syscall: "pipe" })) => {
37
+ if (abortPromise) return abortPromise;
38
+ if (finished) return Promise.resolve();
39
+ failed = true;
40
+ failure = reason;
41
+ ended = true;
42
+ consumer.abort(reason);
43
+ abortPromise = Promise.allSettled([reader.cancel(reason), writer.abort(reason)]).then(() => {
44
+ });
45
+ return abortPromise;
46
+ };
47
+ const onAbort = () => {
48
+ void abort(signal?.reason);
49
+ };
50
+ const cleanup = () => signal?.removeEventListener("abort", onAbort);
51
+ void writer.closed.catch(() => {
52
+ });
53
+ void reader.closed.then(cleanup, cleanup);
54
+ if (signal?.aborted) onAbort();
55
+ else signal?.addEventListener("abort", onAbort, { once: true });
56
+ const iterator = (async function* () {
57
+ try {
58
+ while (true) {
59
+ if (failed) throw failure;
60
+ const result = await reader.read();
61
+ if (failed) throw failure;
62
+ if (result.done) {
63
+ finished = true;
64
+ return;
65
+ }
66
+ yield result.value;
67
+ }
68
+ } finally {
69
+ if (!finished) await abort();
70
+ reader.releaseLock();
71
+ }
72
+ })();
73
+ const readable = {
74
+ [Symbol.asyncIterator]() {
75
+ return this;
76
+ },
77
+ next() {
78
+ return iterator.next();
79
+ },
80
+ async return() {
81
+ if (!finished) await abort();
82
+ try {
83
+ return await iterator.return(void 0);
84
+ } finally {
85
+ reader.releaseLock();
86
+ }
87
+ },
88
+ async throw(reason) {
89
+ await abort(reason);
90
+ try {
91
+ return await iterator.throw(reason);
92
+ } finally {
93
+ reader.releaseLock();
94
+ }
95
+ }
96
+ };
97
+ const write = async (chunk) => {
98
+ if (failed) throw failure;
99
+ if (ended) throw new FsError("EPIPE", { syscall: "write" });
100
+ if (!(chunk instanceof Uint8Array)) throw new TypeError("Byte sinks require Uint8Array chunks");
101
+ if (chunk.byteLength > 0) await writer.write(new Uint8Array(chunk));
102
+ };
103
+ return {
104
+ readable,
105
+ writable: {
106
+ write,
107
+ [outputFailure]: abort,
108
+ ownedOutput: { consumerClosed: consumer.signal, write }
109
+ },
110
+ close() {
111
+ if (failed) return Promise.reject(failure);
112
+ ended = true;
113
+ closePromise ??= writer.close();
114
+ return closePromise;
115
+ },
116
+ abort
117
+ };
118
+ }
119
+ async function writeText(sink, text) {
120
+ await sink.write(new TextEncoder().encode(text));
121
+ }
122
+ async function writeBytes(sink, chunk, signal) {
123
+ if (!(chunk instanceof Uint8Array)) throw new TypeError("Byte sinks require Uint8Array chunks");
124
+ await abortable(() => sink.write(chunk), signal);
125
+ }
126
+ async function pipeBytes(source, sink, signal) {
127
+ signal?.throwIfAborted();
128
+ for await (const chunk of readBytes(source, signal)) {
129
+ await writeBytes(sink, chunk, signal);
130
+ }
131
+ signal?.throwIfAborted();
132
+ }
133
+ async function collectText(source, options) {
134
+ return new TextDecoder().decode(await collectBytes(source, options));
135
+ }
136
+ async function abortable(operation, signal) {
137
+ signal?.throwIfAborted();
138
+ if (!signal) return operation();
139
+ return new Promise((resolve, reject) => {
140
+ const onAbort = () => {
141
+ signal.removeEventListener("abort", onAbort);
142
+ reject(signal.reason);
143
+ };
144
+ signal.addEventListener("abort", onAbort, { once: true });
145
+ try {
146
+ Promise.resolve(operation()).then(
147
+ (result) => {
148
+ signal.removeEventListener("abort", onAbort);
149
+ resolve(result);
150
+ },
151
+ (error) => {
152
+ signal.removeEventListener("abort", onAbort);
153
+ reject(error);
154
+ }
155
+ );
156
+ } catch (error) {
157
+ signal.removeEventListener("abort", onAbort);
158
+ reject(error);
159
+ }
160
+ });
161
+ }
162
+
163
+ // packages/safe-bash/src/contracts/yield.ts
164
+ init_platform();
165
+ var checkpoints = /* @__PURE__ */ new WeakMap();
166
+ function monotonicNow() {
167
+ return globalThis.performance?.now() ?? Date.now();
168
+ }
169
+ function registerYieldCheckpoint(signal, checkpoint) {
170
+ checkpoints.set(signal, checkpoint);
171
+ }
172
+ function inheritYieldCheckpoint(parent, child) {
173
+ const checkpoint = checkpoints.get(parent);
174
+ if (checkpoint) checkpoints.set(child, checkpoint);
175
+ }
176
+ function scheduleTurn(callback) {
177
+ const host = globalThis;
178
+ return host.setImmediate ? { kind: "immediate", value: host.setImmediate(callback) } : { kind: "timeout", value: setTimeout(callback, 0) };
179
+ }
180
+ function cancelTurn(handle) {
181
+ if (handle?.kind === "immediate") globalThis.clearImmediate?.(handle.value);
182
+ else if (handle) clearTimeout(handle.value);
183
+ }
184
+ function yieldTurn(signal) {
185
+ signal?.throwIfAborted();
186
+ if (signal) checkpoints.get(signal)?.();
187
+ return new Promise((resolve, reject) => {
188
+ let handle;
189
+ const finish = () => {
190
+ signal?.removeEventListener("abort", abort);
191
+ resolve();
192
+ };
193
+ const abort = () => {
194
+ cancelTurn(handle);
195
+ reject(signal.reason);
196
+ };
197
+ signal?.addEventListener("abort", abort, { once: true });
198
+ if (signal?.aborted) abort();
199
+ else handle = scheduleTurn(finish);
200
+ });
201
+ }
202
+
203
+ export {
204
+ isErrnoCode,
205
+ isFsError,
206
+ toFsError,
207
+ FsError,
208
+ outputFailure,
209
+ createBytePipe,
210
+ writeText,
211
+ writeBytes,
212
+ pipeBytes,
213
+ collectText,
214
+ collectBytes2 as collectBytes,
215
+ readBytes2 as readBytes,
216
+ toByteSource,
217
+ monotonicNow,
218
+ registerYieldCheckpoint,
219
+ inheritYieldCheckpoint,
220
+ scheduleTurn,
221
+ cancelTurn,
222
+ yieldTurn
223
+ };
224
+ //# sourceMappingURL=chunk-FDGESHPB.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/contracts/errors.ts", "../../src/contracts/io.ts", "../../src/contracts/yield.ts"],
4
+ "sourcesContent": ["export { isErrnoCode, isFsError, toFsError, FsError } from \"poe-code/safe-fs/core\";\nexport type { ErrnoCode, FsErrorOptions } from \"poe-code/safe-fs/core\";\n", "import { collectBytes, readBytes } from \"poe-code/safe-fs/core\";\nimport type { ByteSource, CollectOptions } from \"poe-code/safe-fs/core\";\nexport { collectBytes, readBytes, toByteSource } from \"poe-code/safe-fs/core\";\nexport type { ByteSource, CollectOptions } from \"poe-code/safe-fs/core\";\nimport { TransformStream } from \"node:stream/web\";\nimport { FsError } from \"./errors.js\";\n\nexport const outputFailure = Symbol(\"output failure\");\n\nexport interface ByteSink {\n write(chunk: Uint8Array): Promise<void>;\n readonly [outputFailure]?: (reason: unknown) => Promise<void>;\n readonly ownedOutput?: {\n readonly consumerClosed: AbortSignal;\n write(chunk: Uint8Array): Promise<void>;\n };\n}\n\nexport interface BytePipe {\n readonly readable: ByteSource;\n readonly writable: ByteSink;\n close(): Promise<void>;\n abort(reason?: unknown): Promise<void>;\n}\n\nexport interface BytePipeOptions {\n readonly highWaterMark?: number;\n readonly signal?: AbortSignal;\n}\n\nexport function createBytePipe(options: BytePipeOptions = {}): BytePipe {\n const highWaterMark = options.highWaterMark ?? 64 * 1024;\n const signal = options.signal;\n if (!Number.isSafeInteger(highWaterMark) || highWaterMark < 1) {\n throw new RangeError(\"highWaterMark must be a positive safe integer\");\n }\n const stream = new TransformStream<Uint8Array, Uint8Array>(\n undefined,\n { highWaterMark: 1 },\n { highWaterMark, size: (chunk) => chunk.byteLength },\n );\n const reader = stream.readable.getReader();\n const writer = stream.writable.getWriter();\n let ended = false;\n let failed = false;\n let failure: unknown;\n let closePromise: Promise<void> | undefined;\n let abortPromise: Promise<void> | undefined;\n let finished = false;\n const consumer = new AbortController();\n const abort = (reason: unknown = new FsError(\"EPIPE\", { syscall: \"pipe\" })): Promise<void> => {\n if (abortPromise) return abortPromise;\n if (finished) return Promise.resolve();\n failed = true;\n failure = reason;\n ended = true;\n consumer.abort(reason);\n abortPromise = Promise.allSettled([reader.cancel(reason), writer.abort(reason)]).then(() => {});\n return abortPromise;\n };\n const onAbort = (): void => { void abort(signal?.reason); };\n const cleanup = (): void => signal?.removeEventListener(\"abort\", onAbort);\n void writer.closed.catch(() => {});\n void reader.closed.then(cleanup, cleanup);\n if (signal?.aborted) onAbort();\n else signal?.addEventListener(\"abort\", onAbort, { once: true });\n const iterator = (async function* (): AsyncGenerator<Uint8Array> {\n try {\n while (true) {\n if (failed) throw failure;\n const result = await reader.read();\n if (failed) throw failure;\n if (result.done) {\n finished = true;\n return;\n }\n yield result.value;\n }\n } finally {\n if (!finished) await abort();\n reader.releaseLock();\n }\n })();\n const readable: AsyncIterableIterator<Uint8Array> = {\n [Symbol.asyncIterator]() { return this; },\n next() { return iterator.next(); },\n async return() {\n if (!finished) await abort();\n try {\n return await iterator.return(undefined);\n } finally {\n reader.releaseLock();\n }\n },\n async throw(reason) {\n await abort(reason);\n try {\n return await iterator.throw(reason);\n } finally {\n reader.releaseLock();\n }\n },\n };\n const write = async (chunk: Uint8Array): Promise<void> => {\n if (failed) throw failure;\n if (ended) throw new FsError(\"EPIPE\", { syscall: \"write\" });\n if (!(chunk instanceof Uint8Array)) throw new TypeError(\"Byte sinks require Uint8Array chunks\");\n if (chunk.byteLength > 0) await writer.write(new Uint8Array(chunk));\n };\n return {\n readable,\n writable: {\n write,\n [outputFailure]: abort,\n ownedOutput: { consumerClosed: consumer.signal, write },\n },\n close() {\n if (failed) return Promise.reject(failure);\n ended = true;\n closePromise ??= writer.close();\n return closePromise;\n },\n abort,\n };\n}\n\nexport async function writeText(sink: ByteSink, text: string): Promise<void> {\n await sink.write(new TextEncoder().encode(text));\n}\n\nexport async function writeBytes(sink: ByteSink, chunk: Uint8Array, signal?: AbortSignal): Promise<void> {\n if (!(chunk instanceof Uint8Array)) throw new TypeError(\"Byte sinks require Uint8Array chunks\");\n await abortable(() => sink.write(chunk), signal);\n}\n\nexport async function pipeBytes(source: ByteSource, sink: ByteSink, signal?: AbortSignal): Promise<void> {\n signal?.throwIfAborted();\n for await (const chunk of readBytes(source, signal)) {\n await writeBytes(sink, chunk, signal);\n }\n signal?.throwIfAborted();\n}\n\nexport async function collectText(source: ByteSource, options: CollectOptions): Promise<string> {\n return new TextDecoder().decode(await collectBytes(source, options));\n}\n\nasync function abortable<Result>(operation: () => PromiseLike<Result>, signal?: AbortSignal): Promise<Result> {\n signal?.throwIfAborted();\n if (!signal) return operation();\n return new Promise<Result>((resolve, reject) => {\n const onAbort = (): void => {\n signal.removeEventListener(\"abort\", onAbort);\n reject(signal.reason);\n };\n signal.addEventListener(\"abort\", onAbort, { once: true });\n try {\n Promise.resolve(operation()).then(\n (result) => {\n signal.removeEventListener(\"abort\", onAbort);\n resolve(result);\n },\n (error: unknown) => {\n signal.removeEventListener(\"abort\", onAbort);\n reject(error);\n },\n );\n } catch (error) {\n signal.removeEventListener(\"abort\", onAbort);\n reject(error);\n }\n });\n}\n", "type ImmediateHost = typeof globalThis & {\n setImmediate?: (callback: () => void) => unknown;\n clearImmediate?: (handle: unknown) => void;\n};\n\nexport type TurnHandle =\n | { kind: \"immediate\"; value: unknown }\n | { kind: \"timeout\"; value: ReturnType<typeof setTimeout> };\nconst checkpoints = new WeakMap<AbortSignal, () => void>();\n\nexport function monotonicNow(): number {\n return globalThis.performance?.now() ?? Date.now();\n}\n\nexport function registerYieldCheckpoint(signal: AbortSignal, checkpoint: () => void): void {\n checkpoints.set(signal, checkpoint);\n}\n\nexport function inheritYieldCheckpoint(parent: AbortSignal, child: AbortSignal): void {\n const checkpoint = checkpoints.get(parent);\n if (checkpoint) checkpoints.set(child, checkpoint);\n}\n\nexport function scheduleTurn(callback: () => void): TurnHandle {\n const host = globalThis as ImmediateHost;\n return host.setImmediate\n ? { kind: \"immediate\", value: host.setImmediate(callback) }\n : { kind: \"timeout\", value: setTimeout(callback, 0) };\n}\n\nexport function cancelTurn(handle: TurnHandle | undefined): void {\n if (handle?.kind === \"immediate\") (globalThis as ImmediateHost).clearImmediate?.(handle.value);\n else if (handle) clearTimeout(handle.value);\n}\n\nexport function yieldTurn(signal?: AbortSignal): Promise<void> {\n signal?.throwIfAborted();\n if (signal) checkpoints.get(signal)?.();\n return new Promise<void>((resolve, reject) => {\n let handle: TurnHandle | undefined;\n const finish = (): void => {\n signal?.removeEventListener(\"abort\", abort);\n resolve();\n };\n const abort = (): void => {\n cancelTurn(handle);\n reject(signal!.reason);\n };\n signal?.addEventListener(\"abort\", abort, { once: true });\n if (signal?.aborted) abort();\n else handle = scheduleTurn(finish);\n });\n}\n"],
5
+ "mappings": "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",
6
+ "names": ["collectBytes", "readBytes"]
7
+ }
@@ -21,21 +21,25 @@ import {
21
21
  scalarJson,
22
22
  truth,
23
23
  wellFormed
24
- } from "./chunk-6PSMEBVP.js";
24
+ } from "./chunk-PPFWG34Y.js";
25
25
  import {
26
- escapeText,
27
26
  pathOf
28
- } from "./chunk-T5BV7HPD.js";
27
+ } from "./chunk-O7BRWSKX.js";
28
+ import {
29
+ escapeText
30
+ } from "./chunk-KYU6MXVK.js";
29
31
  import {
30
32
  createOutputOperation
31
- } from "./chunk-PZMJ4EC3.js";
33
+ } from "./chunk-EUNOVYVT.js";
32
34
  import {
33
- FsError,
34
35
  getCommandArguments,
36
+ shellValueByteLength
37
+ } from "./chunk-UO33SQJU.js";
38
+ import {
39
+ FsError,
35
40
  readBytes,
36
- shellValueByteLength,
37
41
  yieldTurn
38
- } from "./chunk-5VBLSPNM.js";
42
+ } from "./chunk-FDGESHPB.js";
39
43
  import {
40
44
  import_buffer,
41
45
  init_platform
@@ -5156,4 +5160,4 @@ export {
5156
5160
  createYqCommands,
5157
5161
  yqCommands
5158
5162
  };
5159
- //# sourceMappingURL=chunk-YEJBZLE5.js.map
5163
+ //# sourceMappingURL=chunk-FIY2BMTU.js.map