@poe-platform/safe-bash 0.1.534 → 0.1.536

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 (123) hide show
  1. package/dist/safe-bash/chunks/chunk-5Y4AEZB2.js +517 -0
  2. package/dist/safe-bash/chunks/chunk-5Y4AEZB2.js.map +7 -0
  3. package/dist/safe-bash/chunks/{chunk-IKATLB4I.js → chunk-AVXYPKV7.js} +7 -5
  4. package/dist/safe-bash/chunks/{chunk-IKATLB4I.js.map → chunk-AVXYPKV7.js.map} +1 -1
  5. package/dist/safe-bash/chunks/chunk-FRSZDCZA.js +1236 -0
  6. package/dist/safe-bash/chunks/chunk-FRSZDCZA.js.map +7 -0
  7. package/dist/safe-bash/chunks/{chunk-LUJYX5H5.js → chunk-L2GZSOSJ.js} +245 -747
  8. package/dist/safe-bash/chunks/chunk-L2GZSOSJ.js.map +7 -0
  9. package/dist/safe-bash/chunks/{chunk-54Z5EUCW.js → chunk-M7KZ7V4P.js} +2 -2
  10. package/dist/safe-bash/chunks/{chunk-UGMUVHIY.js → chunk-NVUC5B2R.js} +10 -188
  11. package/dist/safe-bash/chunks/{chunk-UGMUVHIY.js.map → chunk-NVUC5B2R.js.map} +3 -3
  12. package/dist/safe-bash/chunks/{chunk-2GV4WO7O.js → chunk-PPVCI2F2.js} +2 -2
  13. package/dist/safe-bash/chunks/chunk-QY2XHZTE.js +192 -0
  14. package/dist/safe-bash/chunks/chunk-QY2XHZTE.js.map +7 -0
  15. package/dist/safe-bash/chunks/{chunk-6MHYEBAJ.js → chunk-UZELUFGF.js} +8 -6
  16. package/dist/safe-bash/chunks/{chunk-6MHYEBAJ.js.map → chunk-UZELUFGF.js.map} +1 -1
  17. package/dist/safe-bash/chunks/chunk-XROAIPKA.js +12095 -0
  18. package/dist/safe-bash/chunks/chunk-XROAIPKA.js.map +7 -0
  19. package/dist/safe-bash/commands/csplit/command.d.ts +6 -0
  20. package/dist/safe-bash/commands/csplit/command.d.ts.map +1 -0
  21. package/dist/safe-bash/commands/csplit/command.js +78 -0
  22. package/dist/safe-bash/commands/csplit/command.js.map +1 -0
  23. package/dist/safe-bash/commands/csplit/index.browser.js +14 -0
  24. package/dist/safe-bash/commands/csplit/index.browser.js.map +7 -0
  25. package/dist/safe-bash/commands/csplit/index.d.ts +7 -0
  26. package/dist/safe-bash/commands/csplit/index.d.ts.map +1 -0
  27. package/dist/safe-bash/commands/csplit/index.js +21 -0
  28. package/dist/safe-bash/commands/csplit/index.js.map +1 -0
  29. package/dist/safe-bash/commands/csplit/internal.d.ts +61 -0
  30. package/dist/safe-bash/commands/csplit/internal.d.ts.map +1 -0
  31. package/dist/safe-bash/commands/csplit/internal.js +147 -0
  32. package/dist/safe-bash/commands/csplit/internal.js.map +1 -0
  33. package/dist/safe-bash/commands/csplit/io.d.ts +52 -0
  34. package/dist/safe-bash/commands/csplit/io.d.ts.map +1 -0
  35. package/dist/safe-bash/commands/csplit/io.js +330 -0
  36. package/dist/safe-bash/commands/csplit/io.js.map +1 -0
  37. package/dist/safe-bash/commands/csplit/options.d.ts +16 -0
  38. package/dist/safe-bash/commands/csplit/options.d.ts.map +1 -0
  39. package/dist/safe-bash/commands/csplit/options.js +178 -0
  40. package/dist/safe-bash/commands/csplit/options.js.map +1 -0
  41. package/dist/safe-bash/commands/csplit/patterns.d.ts +19 -0
  42. package/dist/safe-bash/commands/csplit/patterns.d.ts.map +1 -0
  43. package/dist/safe-bash/commands/csplit/patterns.js +92 -0
  44. package/dist/safe-bash/commands/csplit/patterns.js.map +1 -0
  45. package/dist/safe-bash/commands/csplit/quoting.d.ts +2 -0
  46. package/dist/safe-bash/commands/csplit/quoting.d.ts.map +1 -0
  47. package/dist/safe-bash/commands/csplit/quoting.js +138 -0
  48. package/dist/safe-bash/commands/csplit/quoting.js.map +1 -0
  49. package/dist/safe-bash/commands/csplit/split.d.ts +18 -0
  50. package/dist/safe-bash/commands/csplit/split.d.ts.map +1 -0
  51. package/dist/safe-bash/commands/csplit/split.js +122 -0
  52. package/dist/safe-bash/commands/csplit/split.js.map +1 -0
  53. package/dist/safe-bash/commands/expr/bre-engine.d.ts +4 -1
  54. package/dist/safe-bash/commands/expr/bre-engine.d.ts.map +1 -1
  55. package/dist/safe-bash/commands/expr/bre-engine.js +724 -13
  56. package/dist/safe-bash/commands/expr/bre-engine.js.map +1 -1
  57. package/dist/safe-bash/commands/expr/bre-worker.d.ts +2 -1
  58. package/dist/safe-bash/commands/expr/bre-worker.d.ts.map +1 -1
  59. package/dist/safe-bash/commands/expr/bre-worker.js +10 -1
  60. package/dist/safe-bash/commands/expr/bre-worker.js.map +1 -1
  61. package/dist/safe-bash/commands/network/index.browser.js +5 -3
  62. package/dist/safe-bash/commands/pr/command.d.ts +4 -0
  63. package/dist/safe-bash/commands/pr/command.d.ts.map +1 -0
  64. package/dist/safe-bash/commands/pr/command.js +117 -0
  65. package/dist/safe-bash/commands/pr/command.js.map +1 -0
  66. package/dist/safe-bash/commands/pr/format.d.ts +52 -0
  67. package/dist/safe-bash/commands/pr/format.d.ts.map +1 -0
  68. package/dist/safe-bash/commands/pr/format.js +527 -0
  69. package/dist/safe-bash/commands/pr/format.js.map +1 -0
  70. package/dist/safe-bash/commands/pr/index.browser.js +13 -0
  71. package/dist/safe-bash/commands/pr/index.browser.js.map +7 -0
  72. package/dist/safe-bash/commands/pr/index.d.ts +7 -0
  73. package/dist/safe-bash/commands/pr/index.d.ts.map +1 -0
  74. package/dist/safe-bash/commands/pr/index.js +13 -0
  75. package/dist/safe-bash/commands/pr/index.js.map +1 -0
  76. package/dist/safe-bash/commands/pr/internal.d.ts +61 -0
  77. package/dist/safe-bash/commands/pr/internal.d.ts.map +1 -0
  78. package/dist/safe-bash/commands/pr/internal.js +181 -0
  79. package/dist/safe-bash/commands/pr/internal.js.map +1 -0
  80. package/dist/safe-bash/commands/pr/io.d.ts +37 -0
  81. package/dist/safe-bash/commands/pr/io.d.ts.map +1 -0
  82. package/dist/safe-bash/commands/pr/io.js +210 -0
  83. package/dist/safe-bash/commands/pr/io.js.map +1 -0
  84. package/dist/safe-bash/commands/pr/options.d.ts +36 -0
  85. package/dist/safe-bash/commands/pr/options.d.ts.map +1 -0
  86. package/dist/safe-bash/commands/pr/options.js +250 -0
  87. package/dist/safe-bash/commands/pr/options.js.map +1 -0
  88. package/dist/safe-bash/commands/regex-execution/bounded-provider.d.ts.map +1 -1
  89. package/dist/safe-bash/commands/regex-execution/bounded-provider.js +16 -5
  90. package/dist/safe-bash/commands/regex-execution/bounded-provider.js.map +1 -1
  91. package/dist/safe-bash/commands/regex-execution/portable.d.ts +3 -1
  92. package/dist/safe-bash/commands/regex-execution/portable.d.ts.map +1 -1
  93. package/dist/safe-bash/commands/regex-execution/portable.js +17 -4
  94. package/dist/safe-bash/commands/regex-execution/portable.js.map +1 -1
  95. package/dist/safe-bash/commands/regex-execution/protocol.d.ts +31 -0
  96. package/dist/safe-bash/commands/regex-execution/protocol.d.ts.map +1 -1
  97. package/dist/safe-bash/commands/regex-execution/protocol.js +83 -0
  98. package/dist/safe-bash/commands/regex-execution/protocol.js.map +1 -1
  99. package/dist/safe-bash/commands/regex-execution/provider.d.ts +2 -2
  100. package/dist/safe-bash/commands/regex-execution/provider.d.ts.map +1 -1
  101. package/dist/safe-bash/commands/regex-execution/worker.js +16 -2
  102. package/dist/safe-bash/commands/regex-execution/worker.js.map +1 -1
  103. package/dist/safe-bash/commands/xml/index.browser.js +4 -3
  104. package/dist/safe-bash/commands/yq/index.browser.js +5 -4
  105. package/dist/safe-bash/core.browser.js +1953 -4081
  106. package/dist/safe-bash/core.browser.js.map +4 -4
  107. package/dist/safe-bash/core.d.ts +2 -0
  108. package/dist/safe-bash/core.d.ts.map +1 -1
  109. package/dist/safe-bash/core.js +2 -0
  110. package/dist/safe-bash/core.js.map +1 -1
  111. package/dist/safe-bash/plugins/composition.d.ts +5 -0
  112. package/dist/safe-bash/plugins/composition.d.ts.map +1 -1
  113. package/dist/safe-bash/plugins/composition.js +7 -1
  114. package/dist/safe-bash/plugins/composition.js.map +1 -1
  115. package/dist/safe-bash/plugins/index.js +1 -1
  116. package/dist/safe-bash/plugins/index.js.map +1 -1
  117. package/dist/safe-bash/shell/runtime.d.ts.map +1 -1
  118. package/dist/safe-bash/shell/runtime.js +28 -3
  119. package/dist/safe-bash/shell/runtime.js.map +1 -1
  120. package/package.json +14 -2
  121. package/dist/safe-bash/chunks/chunk-LUJYX5H5.js.map +0 -7
  122. /package/dist/safe-bash/chunks/{chunk-54Z5EUCW.js.map → chunk-M7KZ7V4P.js.map} +0 -0
  123. /package/dist/safe-bash/chunks/{chunk-2GV4WO7O.js.map → chunk-PPVCI2F2.js.map} +0 -0
@@ -0,0 +1,527 @@
1
+ import { Budget, PrError, PrReadError } from "./internal.js";
2
+ import { Lifecycle, Reader } from "./io.js";
3
+ export class Formatter {
4
+ options;
5
+ lifecycle;
6
+ budget;
7
+ body;
8
+ columnWidth;
9
+ numberWidth;
10
+ store;
11
+ columns = [];
12
+ lineNumber;
13
+ pageNumber = 1;
14
+ inputPosition = 0;
15
+ outputPosition = 0;
16
+ spaces = 0;
17
+ separators = 0;
18
+ padding = 0;
19
+ vertical = false;
20
+ empty = true;
21
+ alignEmpty = false;
22
+ feedOnly = false;
23
+ printFeed = false;
24
+ needHeader = false;
25
+ storing = false;
26
+ stored = "";
27
+ rendered = "";
28
+ pageRetained = 0;
29
+ constructor(options, lifecycle, count) {
30
+ this.options = options;
31
+ this.lifecycle = lifecycle;
32
+ this.budget = lifecycle.budget;
33
+ if (options.length <= 10) {
34
+ options.extremities = false;
35
+ options.keepFF = true;
36
+ }
37
+ this.body = Math.floor((options.extremities ? options.length - 10 : options.length) / (options.doubleSpace ? 2 : 1));
38
+ if (this.body < 1)
39
+ throw new PrError("page has no text lines");
40
+ options.columns = options.merge ? count : options.columns;
41
+ if (options.columns > 1) {
42
+ if (!options.useSeparator) {
43
+ options.useSeparator = true;
44
+ options.separator = options.join ? "\t" : " ";
45
+ }
46
+ else if (!options.join && options.separator === "\t")
47
+ options.separator = " ";
48
+ options.truncate = true;
49
+ options.tabify = true;
50
+ }
51
+ if (options.join)
52
+ options.truncate = false;
53
+ this.numberWidth = options.numberSeparator === "\t" ? options.digits + 8 - options.digits % 8 : options.digits + 1;
54
+ this.columnWidth = Math.trunc((options.width - (options.merge && options.numbered ? this.numberWidth : 0) - (options.columns - 1) * options.separator.length) / options.columns);
55
+ if (this.columnWidth < 1)
56
+ throw new PrError("page width too narrow");
57
+ this.store = options.columns > 1 && !options.merge && !options.across;
58
+ this.lineNumber = options.startNumber;
59
+ lifecycle.cleanup(async () => {
60
+ this.budget.retain(-this.pageRetained - this.rendered.length * 2);
61
+ this.pageRetained = 0;
62
+ this.rendered = "";
63
+ this.columns = [];
64
+ });
65
+ }
66
+ append(value) {
67
+ this.budget.charge(value.length);
68
+ this.budget.retain(value.length * 2);
69
+ this.rendered += value;
70
+ }
71
+ repeat(value, count, construction = false) {
72
+ this.budget.admitString(value.length * count);
73
+ if (construction)
74
+ this.budget.charge(value.length * count);
75
+ return value.repeat(count);
76
+ }
77
+ async flush() {
78
+ const text = this.rendered;
79
+ this.rendered = "";
80
+ this.budget.retain(-text.length * 2);
81
+ if (text)
82
+ await this.lifecycle.write(text);
83
+ }
84
+ white() {
85
+ let position = this.outputPosition;
86
+ const goal = position + this.spaces;
87
+ this.budget.check(Math.max(0, this.spaces), this.budget.limits.maxBufferedBytes, "horizontal padding");
88
+ while (goal - position > 1) {
89
+ const next = position + this.options.outputTabWidth - position % this.options.outputTabWidth;
90
+ if (next > goal)
91
+ break;
92
+ this.append(this.options.outputTab);
93
+ position = next;
94
+ }
95
+ if (goal > position)
96
+ this.append(this.repeat(" ", goal - position));
97
+ this.outputPosition = goal;
98
+ this.spaces = 0;
99
+ }
100
+ pad(position) {
101
+ if (this.options.tabify)
102
+ this.spaces = position - this.outputPosition;
103
+ else {
104
+ if (position > this.outputPosition)
105
+ this.append(this.repeat(" ", position - this.outputPosition));
106
+ this.outputPosition = position;
107
+ }
108
+ }
109
+ separator() {
110
+ if (this.separators <= 0) {
111
+ if (this.spaces > 0)
112
+ this.white();
113
+ return;
114
+ }
115
+ let offset = 0;
116
+ for (; this.separators > 0; this.separators--) {
117
+ while (offset < this.options.separator.length) {
118
+ const character = this.options.separator[offset++];
119
+ if (character === " ")
120
+ this.spaces++;
121
+ else {
122
+ if (this.spaces > 0)
123
+ this.white();
124
+ this.append(character);
125
+ this.outputPosition++;
126
+ }
127
+ }
128
+ if (this.spaces > 0)
129
+ this.white();
130
+ }
131
+ }
132
+ character(character) {
133
+ if (this.storing) {
134
+ this.budget.charge(character.length);
135
+ this.budget.retain(character.length * 2);
136
+ this.pageRetained += character.length * 2;
137
+ this.stored += character;
138
+ return;
139
+ }
140
+ if (this.options.tabify) {
141
+ if (character === " ") {
142
+ this.spaces++;
143
+ return;
144
+ }
145
+ if (this.spaces > 0)
146
+ this.white();
147
+ if (character >= " " && character <= "~")
148
+ this.outputPosition++;
149
+ else if (character === "\b")
150
+ this.outputPosition--;
151
+ }
152
+ this.append(character);
153
+ }
154
+ number(column) {
155
+ this.budget.admitString(this.options.digits);
156
+ const text = String(this.lineNumber++).padStart(this.options.digits, " ").slice(-this.options.digits);
157
+ for (const character of text)
158
+ this.character(character);
159
+ if (this.columns.length > 1 && this.options.numberSeparator === "\t") {
160
+ for (let count = this.numberWidth - this.options.digits; count > 0; count--)
161
+ this.character(" ");
162
+ }
163
+ else {
164
+ this.character(this.options.numberSeparator);
165
+ if (this.columns.length === 1 && this.options.numberSeparator === "\t")
166
+ this.outputPosition += this.options.outputTabWidth - this.outputPosition % this.options.outputTabWidth;
167
+ }
168
+ if (this.options.truncate && !this.options.merge)
169
+ this.inputPosition += this.numberWidth;
170
+ this.budget.charge(column.numbered ? 1 : 0);
171
+ }
172
+ align(column) {
173
+ this.padding = column.start;
174
+ if (this.options.separator.length < this.padding) {
175
+ this.pad(this.padding - this.options.separator.length);
176
+ this.padding = 0;
177
+ }
178
+ if (this.options.useSeparator)
179
+ this.separator();
180
+ if (column.numbered)
181
+ this.number(column);
182
+ }
183
+ clump(byte) {
184
+ const character = String.fromCharCode(byte);
185
+ let width;
186
+ let text = character;
187
+ if (character === this.options.inputTab || byte === 9) {
188
+ const tab = character === this.options.inputTab ? this.options.inputTabWidth : 8;
189
+ width = tab - this.inputPosition % tab;
190
+ if (this.options.expand)
191
+ text = this.repeat(" ", width, true);
192
+ }
193
+ else if (byte < 32 || byte > 126) {
194
+ if (this.options.octal || this.options.control && byte >= 128) {
195
+ text = `\\${byte.toString(8).padStart(3, "0")}`;
196
+ width = 4;
197
+ }
198
+ else if (this.options.control) {
199
+ text = `^${String.fromCharCode(byte ^ 64)}`;
200
+ width = 2;
201
+ }
202
+ else
203
+ width = byte === 8 ? -1 : 0;
204
+ }
205
+ else
206
+ width = 1;
207
+ if (width < 0 && this.inputPosition === 0)
208
+ return "";
209
+ this.inputPosition = Math.max(0, this.inputPosition + width);
210
+ return text;
211
+ }
212
+ close(column) {
213
+ for (const current of this.options.merge ? [column] : this.columns) {
214
+ current.status = "closed";
215
+ if (!current.lines.length)
216
+ current.remaining = 0;
217
+ }
218
+ }
219
+ hold(column) {
220
+ for (const current of this.options.merge ? [column] : this.columns)
221
+ current.status = this.store ? "feed" : "held";
222
+ column.remaining = 0;
223
+ }
224
+ async feed(column) {
225
+ const next = await column.reader.get();
226
+ if (next !== 10)
227
+ column.reader.unget(next);
228
+ this.hold(column);
229
+ }
230
+ async rest(column) {
231
+ for (;;) {
232
+ const byte = await column.reader.get();
233
+ if (byte === 10)
234
+ return;
235
+ if (byte === 12) {
236
+ await this.feed(column);
237
+ if (this.options.keepFF)
238
+ this.printFeed = true;
239
+ return;
240
+ }
241
+ if (byte < 0) {
242
+ this.close(column);
243
+ return;
244
+ }
245
+ }
246
+ }
247
+ header(date, name) {
248
+ const { env } = this.budget.context;
249
+ if (![undefined, "", "UTC", "UTC0", ":UTC", "GMT", "GMT0"].includes(env.TZ))
250
+ throw new PrError("only UTC timezones are supported for headers");
251
+ const ctype = env.LC_ALL || env.LC_CTYPE || env.LANG || "C";
252
+ if (ctype === "C.UTF-8" || ctype === "C.utf8") {
253
+ for (const character of name)
254
+ if (character.charCodeAt(0) >= 128)
255
+ throw new PrError("non-ASCII headers require the C locale");
256
+ }
257
+ this.outputPosition = 0;
258
+ this.pad(this.options.margin);
259
+ this.white();
260
+ const width = (text) => {
261
+ this.budget.charge(text.length);
262
+ let result = 0;
263
+ for (const character of text)
264
+ if (character >= " " && character !== "\x7f")
265
+ result++;
266
+ return result;
267
+ };
268
+ const page = `Page ${this.pageNumber}`;
269
+ const available = Math.max(0, this.options.width - width(date) - width(name) - width(page));
270
+ const left = Math.floor(available / 2);
271
+ this.budget.admitString(5 + this.options.margin + date.length + name.length + page.length + Math.max(1, left) + Math.max(1, available - left));
272
+ this.append(`\n\n${this.repeat(" ", this.options.margin)}${date}${this.repeat(" ", Math.max(1, left))}${name}${this.repeat(" ", Math.max(1, available - left))}${page}\n\n\n`);
273
+ this.needHeader = false;
274
+ this.outputPosition = 0;
275
+ }
276
+ async read(column, date, name) {
277
+ let byte = await column.reader.get();
278
+ if (byte === 12 && column.full) {
279
+ byte = await column.reader.get();
280
+ if (byte === 10)
281
+ byte = await column.reader.get();
282
+ }
283
+ column.full = false;
284
+ if (byte === 12) {
285
+ await this.feed(column);
286
+ this.feedOnly = true;
287
+ if (this.needHeader && !this.store) {
288
+ this.vertical = true;
289
+ this.header(date, name);
290
+ }
291
+ else if (this.options.keepFF)
292
+ this.printFeed = true;
293
+ return;
294
+ }
295
+ if (byte < 0) {
296
+ this.close(column);
297
+ return;
298
+ }
299
+ let clump = byte === 10 ? "" : this.clump(byte);
300
+ if (this.options.truncate && this.inputPosition > this.columnWidth) {
301
+ this.inputPosition = 0;
302
+ await this.rest(column);
303
+ return;
304
+ }
305
+ if (!this.storing) {
306
+ this.vertical = true;
307
+ if (this.needHeader && !this.store)
308
+ this.header(date, name);
309
+ if (this.options.merge && this.alignEmpty) {
310
+ const pending = this.separators;
311
+ this.separators = 0;
312
+ for (let index = 0; index < pending; index++) {
313
+ this.align(this.columns[index]);
314
+ this.separators++;
315
+ }
316
+ this.padding = column.start;
317
+ this.spaces = this.options.truncate ? this.columnWidth : 0;
318
+ this.alignEmpty = false;
319
+ }
320
+ if (this.options.separator.length < this.padding) {
321
+ this.pad(this.padding - this.options.separator.length);
322
+ this.padding = 0;
323
+ }
324
+ if (this.options.useSeparator)
325
+ this.separator();
326
+ }
327
+ if (column.numbered)
328
+ this.number(column);
329
+ this.empty = false;
330
+ if (byte === 10)
331
+ return;
332
+ for (const character of clump)
333
+ this.character(character);
334
+ for (;;) {
335
+ byte = await column.reader.get();
336
+ if (byte === 10)
337
+ return;
338
+ if (byte === 12) {
339
+ await this.feed(column);
340
+ if (this.options.keepFF)
341
+ this.printFeed = true;
342
+ return;
343
+ }
344
+ if (byte < 0) {
345
+ this.close(column);
346
+ return;
347
+ }
348
+ const previous = this.inputPosition;
349
+ clump = this.clump(byte);
350
+ if (this.options.truncate && this.inputPosition > this.columnWidth) {
351
+ this.inputPosition = previous;
352
+ await this.rest(column);
353
+ return;
354
+ }
355
+ for (const character of clump)
356
+ this.character(character);
357
+ }
358
+ }
359
+ ready() {
360
+ return this.columns.some(column => column.status === "open" || column.status === "feed" || this.store && column.remaining > 0 && column.lines.length > 0);
361
+ }
362
+ async storePage(date, name) {
363
+ this.budget.retain(-this.pageRetained);
364
+ this.pageRetained = 0;
365
+ const lines = [];
366
+ this.storing = true;
367
+ for (const column of this.columns) {
368
+ column.lines = [];
369
+ column.current = 0;
370
+ }
371
+ try {
372
+ for (const column of this.columns) {
373
+ for (let count = 0; count < this.body && column.status === "open"; count++) {
374
+ this.stored = "";
375
+ this.inputPosition = 0;
376
+ await this.read(column, date, name);
377
+ if (column.status === "open" || this.stored.length) {
378
+ this.budget.retain(32);
379
+ this.pageRetained += 32;
380
+ lines.push({ text: this.stored, end: this.inputPosition });
381
+ }
382
+ }
383
+ }
384
+ }
385
+ finally {
386
+ this.storing = false;
387
+ }
388
+ let start = 0;
389
+ for (let index = 0; index < this.columns.length; index++) {
390
+ const column = this.columns[index];
391
+ const count = Math.floor(lines.length / this.columns.length) + (index < lines.length % this.columns.length ? 1 : 0);
392
+ column.lines = lines.slice(start, start + count);
393
+ column.remaining = count;
394
+ start += count;
395
+ }
396
+ }
397
+ storedLine(column, date, name) {
398
+ this.vertical = true;
399
+ if (this.needHeader)
400
+ this.header(date, name);
401
+ if (column.status === "feed") {
402
+ for (const current of this.columns)
403
+ current.status = "held";
404
+ if (this.columns[0].remaining <= 0) {
405
+ if (!this.options.extremities)
406
+ this.vertical = false;
407
+ return;
408
+ }
409
+ }
410
+ const line = column.lines[column.current++];
411
+ if (!line)
412
+ return;
413
+ if (this.options.separator.length < this.padding) {
414
+ this.pad(this.padding - this.options.separator.length);
415
+ this.padding = 0;
416
+ }
417
+ if (this.options.useSeparator)
418
+ this.separator();
419
+ for (const character of line.text)
420
+ this.character(character);
421
+ if (this.spaces === 0) {
422
+ this.outputPosition = column.start + line.end;
423
+ if (column.start - this.options.separator.length === this.options.margin)
424
+ this.outputPosition -= this.options.separator.length;
425
+ }
426
+ }
427
+ async run(readers, date, name) {
428
+ const count = this.options.merge ? readers.length : this.options.columns;
429
+ for (let index = 0; index < count; index++) {
430
+ const start = index === 0 ? this.options.margin + this.options.separator.length : this.options.truncate
431
+ ? this.options.margin + index * (this.columnWidth + this.options.separator.length) + (this.options.merge && this.options.numbered ? this.numberWidth : 0) : 0;
432
+ this.columns.push({ reader: readers[this.options.merge ? index : 0], status: "open", full: false,
433
+ numbered: this.options.numbered && (!this.options.merge || index === 0), start,
434
+ lines: [], current: 0, remaining: 0 });
435
+ }
436
+ try {
437
+ await this.pages(date, name);
438
+ }
439
+ catch (error) {
440
+ if (error instanceof PrReadError)
441
+ await this.flush();
442
+ throw error;
443
+ }
444
+ }
445
+ async pages(date, name) {
446
+ for (;;) {
447
+ if (this.store)
448
+ await this.storePage(date, name);
449
+ else
450
+ for (const column of this.columns)
451
+ column.remaining = column.status === "open" ? this.body : 0;
452
+ if (!this.ready())
453
+ return;
454
+ this.budget.page();
455
+ this.needHeader = this.options.extremities;
456
+ let printed = false;
457
+ let left = this.body * (this.options.doubleSpace ? 2 : 1);
458
+ while (left > 0 && this.ready()) {
459
+ this.outputPosition = 0;
460
+ this.spaces = 0;
461
+ this.separators = 0;
462
+ this.vertical = false;
463
+ this.alignEmpty = false;
464
+ this.empty = true;
465
+ for (const column of this.columns) {
466
+ this.budget.charge();
467
+ this.inputPosition = 0;
468
+ if (column.remaining > 0 || column.status === "feed") {
469
+ this.feedOnly = false;
470
+ this.padding = column.start;
471
+ if (this.store)
472
+ this.storedLine(column, date, name);
473
+ else
474
+ await this.read(column, date, name);
475
+ printed ||= this.vertical;
476
+ column.remaining--;
477
+ if (column.remaining <= 0 && !this.ready())
478
+ break;
479
+ if (this.options.merge && column.status !== "open") {
480
+ if (this.empty)
481
+ this.alignEmpty = true;
482
+ else if (column.status === "closed" || this.feedOnly)
483
+ this.align(column);
484
+ }
485
+ }
486
+ else if (this.options.merge) {
487
+ if (this.empty)
488
+ this.alignEmpty = true;
489
+ else
490
+ this.align(column);
491
+ }
492
+ if (this.options.useSeparator)
493
+ this.separators++;
494
+ }
495
+ if (this.vertical) {
496
+ this.append("\n");
497
+ left--;
498
+ }
499
+ if (!this.ready() && !this.options.extremities) {
500
+ await this.flush();
501
+ break;
502
+ }
503
+ if (this.options.doubleSpace && printed) {
504
+ this.append("\n");
505
+ left--;
506
+ }
507
+ await this.flush();
508
+ }
509
+ if (left === 0)
510
+ for (const column of this.columns)
511
+ if (column.status === "open")
512
+ column.full = true;
513
+ if (printed && this.options.extremities)
514
+ this.append(this.options.formFeed ? "\f" : this.repeat("\n", left + 5));
515
+ else if (this.options.keepFF && this.printFeed) {
516
+ this.append("\f");
517
+ this.printFeed = false;
518
+ }
519
+ await this.flush();
520
+ this.pageNumber++;
521
+ for (const column of this.columns)
522
+ if (column.status === "held")
523
+ column.status = "open";
524
+ }
525
+ }
526
+ }
527
+ //# sourceMappingURL=format.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"format.js","sourceRoot":"","sources":["../../../src/commands/pr/format.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import {
2
+ createPrCommand,
3
+ createPrCommands,
4
+ prCommands
5
+ } from "../../chunks/chunk-FRSZDCZA.js";
6
+ import "../../chunks/chunk-PPVCI2F2.js";
7
+ import "../../chunks/chunk-L2GZSOSJ.js";
8
+ export {
9
+ createPrCommand,
10
+ createPrCommands,
11
+ prCommands
12
+ };
13
+ //# 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, VirtualShellPlugin } from "../../contracts/index.js";
2
+ import type { PrCommandsOptions } from "./internal.js";
3
+ export { createPrCommand } from "./command.js";
4
+ export type { PrCommandsOptions, PrLimits } from "./internal.js";
5
+ export declare function createPrCommands(options?: PrCommandsOptions): readonly CommandDefinition[];
6
+ export declare function prCommands(options?: PrCommandsOptions): VirtualShellPlugin;
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/pr/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAEtF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAEvD,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,YAAY,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEjE,wBAAgB,gBAAgB,CAAC,OAAO,GAAE,iBAAsB,GAAG,SAAS,iBAAiB,EAAE,CAE9F;AAED,wBAAgB,UAAU,CAAC,OAAO,GAAE,iBAAsB,GAAG,kBAAkB,CAK9E"}
@@ -0,0 +1,13 @@
1
+ import { createPrCommand } from "./command.js";
2
+ export { createPrCommand } from "./command.js";
3
+ export function createPrCommands(options = {}) {
4
+ return [createPrCommand(options)];
5
+ }
6
+ export function prCommands(options = {}) {
7
+ const commands = createPrCommands(options);
8
+ return { name: "pr-commands", setup(host) {
9
+ for (const command of commands)
10
+ host.commands.register(command, { replace: options.replace ?? false });
11
+ } };
12
+ }
13
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/pr/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAG/C,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAG/C,MAAM,UAAU,gBAAgB,CAAC,UAA6B,EAAE;IAC9D,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC;AACpC,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,UAA6B,EAAE;IACxD,MAAM,QAAQ,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAC3C,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,CAAC,IAAI;YACtC,KAAK,MAAM,OAAO,IAAI,QAAQ;gBAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,KAAK,EAAE,CAAC,CAAC;QACzG,CAAC,EAAE,CAAC;AACN,CAAC"}