@poe-platform/safe-bash 0.1.506 → 0.1.508

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 (39) hide show
  1. package/dist/safe-bash/chunks/chunk-3ISDVRIM.js +3821 -0
  2. package/dist/safe-bash/chunks/chunk-3ISDVRIM.js.map +7 -0
  3. package/dist/safe-bash/commands/node/index.d.ts +0 -1
  4. package/dist/safe-bash/commands/node/index.d.ts.map +1 -1
  5. package/dist/safe-bash/commands/node/index.js +0 -1
  6. package/dist/safe-bash/commands/node/index.js.map +1 -1
  7. package/dist/safe-bash/commands/xml/evaluate.d.ts +27 -0
  8. package/dist/safe-bash/commands/xml/evaluate.d.ts.map +1 -0
  9. package/dist/safe-bash/commands/xml/evaluate.js +208 -0
  10. package/dist/safe-bash/commands/xml/evaluate.js.map +1 -0
  11. package/dist/safe-bash/commands/xml/index.browser.js +11 -0
  12. package/dist/safe-bash/commands/xml/index.browser.js.map +7 -0
  13. package/dist/safe-bash/commands/xml/index.d.ts +7 -0
  14. package/dist/safe-bash/commands/xml/index.d.ts.map +1 -0
  15. package/dist/safe-bash/commands/xml/index.js +196 -0
  16. package/dist/safe-bash/commands/xml/index.js.map +1 -0
  17. package/dist/safe-bash/commands/xml/limits.d.ts +36 -0
  18. package/dist/safe-bash/commands/xml/limits.d.ts.map +1 -0
  19. package/dist/safe-bash/commands/xml/limits.js +55 -0
  20. package/dist/safe-bash/commands/xml/limits.js.map +1 -0
  21. package/dist/safe-bash/commands/xml/query.d.ts +21 -0
  22. package/dist/safe-bash/commands/xml/query.d.ts.map +1 -0
  23. package/dist/safe-bash/commands/xml/query.js +111 -0
  24. package/dist/safe-bash/commands/xml/query.js.map +1 -0
  25. package/dist/safe-bash/core.browser.js +990 -3879
  26. package/dist/safe-bash/core.browser.js.map +4 -4
  27. package/dist/safe-bash/core.d.ts +1 -0
  28. package/dist/safe-bash/core.d.ts.map +1 -1
  29. package/dist/safe-bash/core.js +1 -0
  30. package/dist/safe-bash/core.js.map +1 -1
  31. package/dist/safe-bash/node-unavailable.d.ts +2 -0
  32. package/dist/safe-bash/node-unavailable.d.ts.map +1 -0
  33. package/dist/safe-bash/node-unavailable.js +2 -0
  34. package/dist/safe-bash/node-unavailable.js.map +1 -0
  35. package/dist/safe-bash/plugins/composition.d.ts +2 -0
  36. package/dist/safe-bash/plugins/composition.d.ts.map +1 -1
  37. package/dist/safe-bash/plugins/composition.js +3 -1
  38. package/dist/safe-bash/plugins/composition.js.map +1 -1
  39. package/package.json +22 -2
@@ -3,7 +3,6 @@ import type { VirtualShellPlugin } from "../../contracts/plugin.js";
3
3
  import { type NodeCommandOptions } from "./types.js";
4
4
  export { NODE_PROFILE, NodeProfileError, NodeUsageError, nodeLimits } from "./types.js";
5
5
  export type { NodeCommandOptions, NodeProviderCommandOptions, NodeSafeJsCommandOptions, NodeCompletion, NodeGrants, NodeGuestError, NodeHostRequest, NodeHostResponse, NodeHostServices, NodeObservation, NodeReason, NodeRetirement, NodeRuntimeProvider, NodeSelector, NodeSession, NodeSourceRequest } from "./types.js";
6
- export { createNodeWorkerProvider } from "./worker-provider.js";
7
6
  export { NODE_ENGINE_ABI } from "./worker-types.js";
8
7
  export type { NodeBridge, NodeEngineAdapter, NodeEngineInput, NodeEngineResult, NodeWorkerEvent, NodeWorkerProviderOptions } from "./worker-types.js";
9
8
  export type NodeCommandsOptions<Budget = unknown> = NodeCommandOptions<Budget> & {
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/node/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAkB,iBAAiB,EAAiB,MAAM,4BAA4B,CAAC;AACnG,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAQpE,OAAO,EAA8D,KAAK,kBAAkB,EAAiH,MAAM,YAAY,CAAC;AAGhO,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxF,YAAY,EAAE,kBAAkB,EAAE,0BAA0B,EAAE,wBAAwB,EAAE,cAAc,EAAE,UAAU,EAAE,cAAc,EAAE,eAAe,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,eAAe,EAAE,UAAU,EAAE,cAAc,EAAE,mBAAmB,EAAE,YAAY,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAC5T,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,YAAY,EAAE,UAAU,EAAE,iBAAiB,EAAE,eAAe,EAAE,gBAAgB,EAAE,eAAe,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAEtJ,MAAM,MAAM,mBAAmB,CAAC,MAAM,GAAG,OAAO,IAAI,kBAAkB,CAAC,MAAM,CAAC,GAAG;IAC/E,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;CAC5B,CAAA;AAUD,wBAAgB,kBAAkB,CAAC,MAAM,GAAG,OAAO,EAAE,OAAO,EAAE,mBAAmB,CAAC,MAAM,CAAC,GAAG,SAAS,iBAAiB,EAAE,CAEvH;AAED,wBAAgB,YAAY,CAAC,MAAM,GAAG,OAAO,EAAE,OAAO,EAAE,mBAAmB,CAAC,MAAM,CAAC,GAAG,kBAAkB,CASvG;AAQD,wBAAgB,iBAAiB,CAAC,MAAM,GAAG,OAAO,EAAE,OAAO,EAAE,kBAAkB,CAAC,MAAM,CAAC,GAAG,iBAAiB,CAmH1G"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/node/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAkB,iBAAiB,EAAiB,MAAM,4BAA4B,CAAC;AACnG,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAQpE,OAAO,EAA8D,KAAK,kBAAkB,EAAiH,MAAM,YAAY,CAAC;AAGhO,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxF,YAAY,EAAE,kBAAkB,EAAE,0BAA0B,EAAE,wBAAwB,EAAE,cAAc,EAAE,UAAU,EAAE,cAAc,EAAE,eAAe,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,eAAe,EAAE,UAAU,EAAE,cAAc,EAAE,mBAAmB,EAAE,YAAY,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAC5T,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,YAAY,EAAE,UAAU,EAAE,iBAAiB,EAAE,eAAe,EAAE,gBAAgB,EAAE,eAAe,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAEtJ,MAAM,MAAM,mBAAmB,CAAC,MAAM,GAAG,OAAO,IAAI,kBAAkB,CAAC,MAAM,CAAC,GAAG;IAC/E,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;CAC5B,CAAA;AAUD,wBAAgB,kBAAkB,CAAC,MAAM,GAAG,OAAO,EAAE,OAAO,EAAE,mBAAmB,CAAC,MAAM,CAAC,GAAG,SAAS,iBAAiB,EAAE,CAEvH;AAED,wBAAgB,YAAY,CAAC,MAAM,GAAG,OAAO,EAAE,OAAO,EAAE,mBAAmB,CAAC,MAAM,CAAC,GAAG,kBAAkB,CASvG;AAQD,wBAAgB,iBAAiB,CAAC,MAAM,GAAG,OAAO,EAAE,OAAO,EAAE,kBAAkB,CAAC,MAAM,CAAC,GAAG,iBAAiB,CAmH1G"}
@@ -8,7 +8,6 @@ import { createSafeJsNodeCommand } from "./safejs.js";
8
8
  import { NODE_PROFILE, NodeProfileError, NodeUsageError, nodeLimits } from "./types.js";
9
9
  import { environment, grants, record, text } from "./values.js";
10
10
  export { NODE_PROFILE, NodeProfileError, NodeUsageError, nodeLimits } from "./types.js";
11
- export { createNodeWorkerProvider } from "./worker-provider.js";
12
11
  export { NODE_ENGINE_ABI } from "./worker-types.js";
13
12
  function commandConfiguration(options) {
14
13
  const settings = record(options, [], ["provider", "grants", "runtime", "limits", "replace"]);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/node/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/node/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ import type { XmlAttribute, XmlContent, XmlElement } from "@poe-platform/safe-fs/core";
2
+ import type { Query } from "./query.js";
3
+ import { XmlBudget } from "./limits.js";
4
+ type Container = {
5
+ kind: "document";
6
+ children: Node[];
7
+ } | ElementNode;
8
+ interface ElementNode {
9
+ kind: "element";
10
+ value: XmlElement;
11
+ children: Node[];
12
+ attributes: AttributeNode[];
13
+ }
14
+ interface AttributeNode {
15
+ kind: "attribute";
16
+ value: XmlAttribute;
17
+ }
18
+ interface ContentNode {
19
+ kind: Exclude<XmlContent["kind"], "element">;
20
+ value: Exclude<XmlContent, XmlElement>;
21
+ }
22
+ export type Node = Container | AttributeNode | ContentNode;
23
+ export declare function evaluate(query: Query, root: XmlElement, budget: XmlBudget): Promise<Node[]>;
24
+ export declare function stringValue(node: Node | undefined, budget: XmlBudget): AsyncGenerator<string>;
25
+ export declare function serialize(node: Node, budget: XmlBudget): AsyncGenerator<string>;
26
+ export {};
27
+ //# sourceMappingURL=evaluate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"evaluate.d.ts","sourceRoot":"","sources":["../../../src/commands/xml/evaluate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAClF,OAAO,KAAK,EAAE,KAAK,EAAa,MAAM,YAAY,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,KAAK,SAAS,GAAG;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,QAAQ,EAAE,IAAI,EAAE,CAAA;CAAE,GAAG,WAAW,CAAC;AACtE,UAAU,WAAW;IAAG,IAAI,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,UAAU,CAAC;IAAC,QAAQ,EAAE,IAAI,EAAE,CAAC;IAAC,UAAU,EAAE,aAAa,EAAE,CAAA;CAAE;AAC3G,UAAU,aAAa;IAAG,IAAI,EAAE,WAAW,CAAC;IAAC,KAAK,EAAE,YAAY,CAAA;CAAE;AAClE,UAAU,WAAW;IAAG,IAAI,EAAE,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,SAAS,CAAC,CAAC;IAAC,KAAK,EAAE,OAAO,CAAC,UAAU,EAAE,UAAU,CAAC,CAAA;CAAE;AAC9G,MAAM,MAAM,IAAI,GAAG,SAAS,GAAG,aAAa,GAAG,WAAW,CAAC;AAuC3D,wBAAsB,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,CAkDjG;AAED,wBAAuB,WAAW,CAAC,IAAI,EAAE,IAAI,GAAG,SAAS,EAAE,MAAM,EAAE,SAAS,GAAG,cAAc,CAAC,MAAM,CAAC,CAapG;AAED,wBAAuB,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,GAAG,cAAc,CAAC,MAAM,CAAC,CA2BtF"}
@@ -0,0 +1,208 @@
1
+ import { XmlBudget } from "./limits.js";
2
+ const xmlns = "http://www.w3.org/2000/xmlns/";
3
+ async function indexTree(root, budget) {
4
+ const document = { kind: "document", children: [] };
5
+ const order = [document];
6
+ const pending = [{ parent: document, content: root }];
7
+ while (pending.length) {
8
+ await budget.tick();
9
+ const { parent, content } = pending.pop();
10
+ if (content.kind === "element") {
11
+ const node = { kind: "element", value: content, children: [], attributes: [] };
12
+ parent.children.push(node);
13
+ order.push(node);
14
+ for (const attribute of content.attributes) {
15
+ await budget.tick();
16
+ if (attribute.namespace === xmlns)
17
+ continue;
18
+ const selected = { kind: "attribute", value: attribute };
19
+ node.attributes.push(selected);
20
+ order.push(selected);
21
+ }
22
+ for (let index = content.content.length - 1; index >= 0; index--) {
23
+ await budget.tick();
24
+ pending.push({ parent: node, content: content.content[index] });
25
+ }
26
+ }
27
+ else {
28
+ const node = { kind: content.kind, value: content };
29
+ parent.children.push(node);
30
+ order.push(node);
31
+ }
32
+ }
33
+ return { document, order };
34
+ }
35
+ function matches(node, step) {
36
+ if (step.kind === "text")
37
+ return node.kind === "text" || node.kind === "cdata";
38
+ if (node.kind !== step.kind)
39
+ return false;
40
+ if (node.kind === "element" || node.kind === "attribute") {
41
+ return step.name === "*" || node.value.namespace === "" && node.value.localName === step.name;
42
+ }
43
+ return false;
44
+ }
45
+ export async function evaluate(query, root, budget) {
46
+ const { document, order } = await indexTree(root, budget);
47
+ let contexts = [document];
48
+ for (const step of query.steps) {
49
+ const parents = new Set();
50
+ const pending = [...contexts];
51
+ while (pending.length) {
52
+ await budget.tick();
53
+ const node = pending.pop();
54
+ if (parents.has(node))
55
+ continue;
56
+ parents.add(node);
57
+ if (step.descendant && (node.kind === "document" || node.kind === "element")) {
58
+ for (const child of node.children) {
59
+ await budget.tick();
60
+ pending.push(child);
61
+ }
62
+ }
63
+ }
64
+ const selected = new Set();
65
+ for (const parent of parents) {
66
+ await budget.tick();
67
+ const candidates = step.kind === "attribute"
68
+ ? parent.kind === "element" ? parent.attributes : []
69
+ : parent.kind === "element" || parent.kind === "document" ? parent.children : [];
70
+ let matched = [];
71
+ for (const candidate of candidates) {
72
+ await budget.tick();
73
+ if (matches(candidate, step))
74
+ matched.push(candidate);
75
+ }
76
+ for (const predicate of step.predicates) {
77
+ await budget.tick();
78
+ if (predicate.kind === "position")
79
+ matched = matched[predicate.value - 1] ? [matched[predicate.value - 1]] : [];
80
+ else {
81
+ const filtered = [];
82
+ for (const candidate of matched) {
83
+ await budget.tick();
84
+ if (candidate.kind !== "element")
85
+ continue;
86
+ for (const attribute of candidate.attributes) {
87
+ await budget.tick(attribute.value.value.length + 1);
88
+ if (attribute.value.namespace === "" && attribute.value.localName === predicate.name && attribute.value.value === predicate.value) {
89
+ filtered.push(candidate);
90
+ break;
91
+ }
92
+ }
93
+ }
94
+ matched = filtered;
95
+ }
96
+ }
97
+ for (const node of matched) {
98
+ await budget.tick();
99
+ if (!selected.has(node)) {
100
+ budget.results(selected.size + 1);
101
+ selected.add(node);
102
+ }
103
+ }
104
+ }
105
+ contexts = [];
106
+ for (const node of order) {
107
+ await budget.tick();
108
+ if (selected.has(node))
109
+ contexts.push(node);
110
+ }
111
+ }
112
+ return contexts;
113
+ }
114
+ export async function* stringValue(node, budget) {
115
+ if (node === undefined)
116
+ return;
117
+ if (node.kind === "attribute") {
118
+ yield node.value.value;
119
+ return;
120
+ }
121
+ const pending = [node];
122
+ while (pending.length) {
123
+ await budget.tick();
124
+ const current = pending.pop();
125
+ if (current.kind === "element" || current.kind === "document") {
126
+ for (let index = current.children.length - 1; index >= 0; index--) {
127
+ await budget.tick();
128
+ pending.push(current.children[index]);
129
+ }
130
+ }
131
+ else if (current.kind === "text" || current.kind === "cdata")
132
+ yield current.value.text;
133
+ }
134
+ }
135
+ export async function* serialize(node, budget) {
136
+ if (node.kind === "attribute") {
137
+ yield ` ${node.value.name}="`;
138
+ yield* escape(node.value.value, true, budget);
139
+ yield '"';
140
+ return;
141
+ }
142
+ if (node.kind === "document")
143
+ return;
144
+ const pending = [node.value];
145
+ while (pending.length) {
146
+ await budget.tick();
147
+ const current = pending.pop();
148
+ if (typeof current === "string") {
149
+ yield current;
150
+ continue;
151
+ }
152
+ if (current.kind === "element") {
153
+ yield `<${current.name}`;
154
+ for (const attribute of current.attributes) {
155
+ await budget.tick();
156
+ yield ` ${attribute.name}="`;
157
+ yield* escape(attribute.value, true, budget);
158
+ yield '"';
159
+ }
160
+ if (!current.content.length)
161
+ yield "/>";
162
+ else {
163
+ yield ">";
164
+ pending.push(`</${current.name}>`);
165
+ for (let index = current.content.length - 1; index >= 0; index--) {
166
+ await budget.tick();
167
+ pending.push(current.content[index]);
168
+ }
169
+ }
170
+ }
171
+ else if (current.kind === "text")
172
+ yield* escape(current.text, false, budget);
173
+ else if (current.kind === "cdata") {
174
+ yield "<![CDATA[";
175
+ yield current.text;
176
+ yield "]]>";
177
+ }
178
+ else if (current.kind === "comment") {
179
+ yield "<!--";
180
+ yield current.text;
181
+ yield "-->";
182
+ }
183
+ else if (current.kind === "processing-instruction") {
184
+ yield `<?${current.target}`;
185
+ if (current.text) {
186
+ yield " ";
187
+ yield current.text;
188
+ }
189
+ yield "?>";
190
+ }
191
+ }
192
+ }
193
+ async function* escape(value, attribute, budget) {
194
+ let part = "";
195
+ for (const character of value) {
196
+ await budget.tick();
197
+ part += character === "&" ? "&amp;" : character === "<" ? "&lt;" : character === ">" ? "&gt;"
198
+ : attribute && character === '"' ? "&quot;" : attribute && character === "\n" ? "&#10;"
199
+ : character === "\r" ? "&#13;" : attribute && character === "\t" ? "&#9;" : character;
200
+ if (part.length >= 4096) {
201
+ yield part;
202
+ part = "";
203
+ }
204
+ }
205
+ if (part)
206
+ yield part;
207
+ }
208
+ //# sourceMappingURL=evaluate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"evaluate.js","sourceRoot":"","sources":["../../../src/commands/xml/evaluate.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import {
2
+ createXmlCommands,
3
+ defaultXmlQueryLimits,
4
+ xmlCommands
5
+ } from "../../chunks/chunk-3ISDVRIM.js";
6
+ export {
7
+ createXmlCommands,
8
+ defaultXmlQueryLimits,
9
+ xmlCommands
10
+ };
11
+ //# sourceMappingURL=index.browser.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
@@ -0,0 +1,7 @@
1
+ import { type CommandDefinition, type VirtualShellPlugin } from "../../contracts/index.js";
2
+ import { type XmlCommandsOptions } from "./limits.js";
3
+ export { defaultXmlQueryLimits } from "./limits.js";
4
+ export type { XmlCommandsOptions, XmlQueryLimits } from "./limits.js";
5
+ export declare function createXmlCommands(options?: XmlCommandsOptions): readonly CommandDefinition[];
6
+ export declare function xmlCommands(options?: XmlCommandsOptions): VirtualShellPlugin;
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/xml/index.ts"],"names":[],"mappings":"AACA,OAAO,EAA2G,KAAK,iBAAiB,EAAE,KAAK,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAKpM,OAAO,EAAuE,KAAK,kBAAkB,EAAuB,MAAM,aAAa,CAAC;AAIhJ,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,YAAY,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AA2HtE,wBAAgB,iBAAiB,CAAC,OAAO,GAAE,kBAAuB,GAAG,SAAS,iBAAiB,EAAE,CAGhG;AACD,wBAAgB,WAAW,CAAC,OAAO,GAAE,kBAAuB,GAAG,kBAAkB,CAShF"}
@@ -0,0 +1,196 @@
1
+ import { parseXmlSteps, XmlLimitError } from "@poe-platform/safe-fs/core";
2
+ import { FsError, getCommandArguments, readBytes, toByteSource, writeBytes } from "../../contracts/index.js";
3
+ import { shellValueByteLength } from "../../contracts/value.js";
4
+ import { writeDiagnostic } from "../../escaping.js";
5
+ import { pathOf } from "../internal.js";
6
+ import { interruptible } from "../structured/limits.js";
7
+ import { XmlBudget, XmlQueryError, XmlQueryLimitError, resolveXmlQueryLimits } from "./limits.js";
8
+ import { parseQuery } from "./query.js";
9
+ import { evaluate, serialize, stringValue } from "./evaluate.js";
10
+ export { defaultXmlQueryLimits } from "./limits.js";
11
+ async function argumentsFor(context, budget) {
12
+ if (context.args.length > 5)
13
+ throw new XmlQueryError("expected one XML input FILE or -", 2);
14
+ const carrier = getCommandArguments(context);
15
+ const args = carrier.args;
16
+ async function admitted(position, limit) {
17
+ const text = args[position];
18
+ if (text.length > budget.limits[limit])
19
+ throw new XmlQueryLimitError(limit);
20
+ const size = shellValueByteLength(carrier.values[position]);
21
+ if (size > budget.limits[limit])
22
+ throw new XmlQueryLimitError(limit);
23
+ for (let offset = 0; offset < size; offset += 1024)
24
+ await budget.tick(Math.min(1024, size - offset));
25
+ let decoded;
26
+ try {
27
+ decoded = new TextDecoder("utf-8", { fatal: true, ignoreBOM: true }).decode(carrier.bytes(position));
28
+ }
29
+ catch {
30
+ throw new XmlQueryError("XPath and filenames require valid UTF-8", 2);
31
+ }
32
+ if (decoded !== text)
33
+ throw new XmlQueryError("XPath and filenames require lossless UTF-8", 2);
34
+ return decoded;
35
+ }
36
+ let index = 0;
37
+ if (context.command === "xmllint") {
38
+ if (args[index++] !== "--xpath")
39
+ throw new XmlQueryError("expected --xpath QUERY [FILE|-]", 2);
40
+ }
41
+ if (args[index] === "--")
42
+ index++;
43
+ const sourceIndex = index++;
44
+ const source = args[sourceIndex];
45
+ if (source === undefined || source.startsWith("-"))
46
+ throw new XmlQueryError("expected QUERY [FILE|-]", 2);
47
+ if (args[index] === "--")
48
+ index++;
49
+ const fileIndex = index++;
50
+ const file = args[fileIndex];
51
+ if (index < args.length || file !== undefined && file.startsWith("-") && file !== "-")
52
+ throw new XmlQueryError("expected one XML input FILE or -", 2);
53
+ const query = await parseQuery(await admitted(sourceIndex, "maxSourceBytes"), budget);
54
+ return { query, file: file === undefined ? undefined : await admitted(fileIndex, "maxInputBytes") };
55
+ }
56
+ async function input(context, file, budget) {
57
+ let source = context.stdin;
58
+ if (file !== undefined && file !== "-") {
59
+ const path = pathOf(context, file);
60
+ const capabilities = context.fs.capabilitiesFor
61
+ ? await interruptible(() => context.fs.capabilitiesFor(path, { signal: context.signal }), context.signal)
62
+ : context.fs.capabilities;
63
+ context.signal.throwIfAborted();
64
+ if (context.fs.readStream && capabilities.streamingRead !== false)
65
+ source = context.fs.readStream(path, { signal: context.signal });
66
+ else {
67
+ try {
68
+ source = toByteSource(await interruptible(() => context.fs.readFile(path, { signal: context.signal, maxBytes: budget.limits.maxInputBytes }), context.signal));
69
+ }
70
+ catch (error) {
71
+ context.signal.throwIfAborted();
72
+ if (error instanceof FsError && error.code === "EFBIG")
73
+ throw new XmlQueryLimitError("maxInputBytes");
74
+ throw error;
75
+ }
76
+ }
77
+ }
78
+ const parts = [];
79
+ let size = 0;
80
+ const decoder = new TextDecoder("utf-8", { fatal: true });
81
+ for await (const chunk of readBytes(source, context.signal)) {
82
+ await budget.tick();
83
+ size += chunk.byteLength;
84
+ if (size > budget.limits.maxInputBytes)
85
+ throw new XmlQueryLimitError("maxInputBytes");
86
+ // Decode before requesting another chunk; a producer may reuse its backing bytes.
87
+ for (let offset = 0; offset < chunk.length; offset += 4096) {
88
+ await budget.tick(Math.min(4096, chunk.length - offset));
89
+ try {
90
+ parts.push(decoder.decode(chunk.subarray(offset, offset + 4096), { stream: true }));
91
+ }
92
+ catch {
93
+ throw new XmlQueryError("XML input must be UTF-8", 1);
94
+ }
95
+ }
96
+ }
97
+ try {
98
+ parts.push(decoder.decode());
99
+ }
100
+ catch {
101
+ throw new XmlQueryError("XML input must be UTF-8", 1);
102
+ }
103
+ return parts.join("");
104
+ }
105
+ async function execute(context, limits) {
106
+ const budget = new XmlBudget(limits, context.signal);
107
+ let outputFailed = false;
108
+ try {
109
+ const options = await argumentsFor(context, budget);
110
+ const source = await input(context, options.file, budget);
111
+ const parser = parseXmlSteps(source, { ...limits, maxContentNodes: limits.maxNodes, expectedEncoding: "UTF-8" });
112
+ let parsed = parser.next();
113
+ try {
114
+ while (!parsed.done) {
115
+ await budget.tick(parsed.value);
116
+ parsed = parser.next();
117
+ }
118
+ }
119
+ finally {
120
+ if (!parsed.done)
121
+ parser.return(undefined);
122
+ }
123
+ const nodes = await evaluate(options.query, parsed.value, budget);
124
+ async function write(part) {
125
+ for (let offset = 0; offset < part.length;) {
126
+ let end = Math.min(offset + 4096, part.length);
127
+ if (end < part.length && part.charCodeAt(end - 1) >= 0xd800 && part.charCodeAt(end - 1) <= 0xdbff)
128
+ end--;
129
+ await budget.tick(end - offset);
130
+ const slice = part.slice(offset, end);
131
+ const size = Buffer.byteLength(slice);
132
+ if (size > limits.maxOutputBytes - budget.outputBytes)
133
+ throw new XmlQueryLimitError("maxOutputBytes");
134
+ budget.outputBytes += size;
135
+ try {
136
+ await writeBytes(context.stdout, Buffer.from(slice), context.signal);
137
+ }
138
+ catch (error) {
139
+ outputFailed = true;
140
+ throw error;
141
+ }
142
+ offset = end;
143
+ }
144
+ }
145
+ if (options.query.scalar === "count")
146
+ await write(String(nodes.length));
147
+ else if (options.query.scalar === "boolean")
148
+ await write(nodes.length ? "true" : "false");
149
+ else if (options.query.scalar === "string") {
150
+ for await (const part of stringValue(nodes[0], budget))
151
+ await write(part);
152
+ }
153
+ else {
154
+ if (!nodes.length)
155
+ throw new XmlQueryError("XPath set is empty", 11);
156
+ for (const node of nodes) {
157
+ for await (const part of serialize(node, budget))
158
+ await write(part);
159
+ await write("\n");
160
+ }
161
+ return { exitCode: 0 };
162
+ }
163
+ await write("\n");
164
+ return { exitCode: 0 };
165
+ }
166
+ catch (error) {
167
+ context.signal.throwIfAborted();
168
+ if (outputFailed || error instanceof FsError && error.code === "EPIPE")
169
+ throw error;
170
+ const status = error instanceof XmlQueryError ? error.status : error instanceof XmlLimitError ? 5
171
+ : error instanceof SyntaxError || error instanceof FsError ? 1 : undefined;
172
+ if (status === undefined)
173
+ throw error;
174
+ const message = error instanceof Error ? error.message.slice(0, 1000) : "XML query failed";
175
+ await writeDiagnostic(context.stderr, `${context.command}: ${message}\n`, context.signal);
176
+ return { exitCode: status };
177
+ }
178
+ }
179
+ export function createXmlCommands(options = {}) {
180
+ const limits = resolveXmlQueryLimits(options.limits);
181
+ return ["xq", "xmllint"].map(name => ({ name, execute: context => execute(context, limits) }));
182
+ }
183
+ export function xmlCommands(options = {}) {
184
+ const definitions = createXmlCommands(options);
185
+ const replace = options.replace ?? false;
186
+ return { name: "xml-commands", setup(host) {
187
+ if (!replace)
188
+ for (const definition of definitions) {
189
+ if (host.commands.has(definition.name))
190
+ throw new Error(`Command already registered: ${definition.name}`);
191
+ }
192
+ for (const definition of definitions)
193
+ host.commands.register(definition, { replace });
194
+ } };
195
+ }
196
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/xml/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ export interface XmlQueryLimits {
2
+ readonly maxInputBytes: number;
3
+ readonly maxOutputBytes: number;
4
+ readonly maxSourceBytes: number;
5
+ readonly maxDepth: number;
6
+ readonly maxNodes: number;
7
+ readonly maxAttributes: number;
8
+ readonly maxAttributesPerElement: number;
9
+ readonly maxNamespaces: number;
10
+ readonly maxSteps: number;
11
+ readonly maxResults: number;
12
+ }
13
+ export interface XmlCommandsOptions {
14
+ readonly replace?: boolean;
15
+ readonly limits?: Partial<XmlQueryLimits>;
16
+ }
17
+ export declare const defaultXmlQueryLimits: Readonly<XmlQueryLimits>;
18
+ export declare class XmlQueryError extends Error {
19
+ readonly status: number;
20
+ constructor(message: string, status: number);
21
+ }
22
+ export declare class XmlQueryLimitError extends XmlQueryError {
23
+ constructor(name: keyof XmlQueryLimits);
24
+ }
25
+ export declare function resolveXmlQueryLimits(options?: Partial<XmlQueryLimits>): XmlQueryLimits;
26
+ export declare class XmlBudget {
27
+ readonly limits: XmlQueryLimits;
28
+ readonly signal: AbortSignal;
29
+ private steps;
30
+ private checkpoint;
31
+ outputBytes: number;
32
+ constructor(limits: XmlQueryLimits, signal: AbortSignal);
33
+ tick(work?: number): Promise<void>;
34
+ results(size: number): void;
35
+ }
36
+ //# sourceMappingURL=limits.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"limits.d.ts","sourceRoot":"","sources":["../../../src/commands/xml/limits.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,uBAAuB,EAAE,MAAM,CAAC;IACzC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AACD,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;CAC3C;AACD,eAAO,MAAM,qBAAqB,EAAE,QAAQ,CAAC,cAAc,CAKzD,CAAC;AACH,qBAAa,aAAc,SAAQ,KAAK;IACT,QAAQ,CAAC,MAAM,EAAE,MAAM;gBAAxC,OAAO,EAAE,MAAM,EAAW,MAAM,EAAE,MAAM;CACrD;AACD,qBAAa,kBAAmB,SAAQ,aAAa;gBACvC,IAAI,EAAE,MAAM,cAAc;CACvC;AACD,wBAAgB,qBAAqB,CAAC,OAAO,GAAE,OAAO,CAAC,cAAc,CAAM,GAAG,cAAc,CAS3F;AACD,qBAAa,SAAS;IAIR,QAAQ,CAAC,MAAM,EAAE,cAAc;IAAE,QAAQ,CAAC,MAAM,EAAE,WAAW;IAHzE,OAAO,CAAC,KAAK,CAAK;IAClB,OAAO,CAAC,UAAU,CAAK;IACvB,WAAW,SAAK;gBACK,MAAM,EAAE,cAAc,EAAW,MAAM,EAAE,WAAW;IACnE,IAAI,CAAC,IAAI,SAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAUnC,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;CAG5B"}