@relace-ai/jacq 0.1.2-beta.4 → 0.1.2-beta.6

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 (94) hide show
  1. package/dist/actions/messages.d.ts +16 -16
  2. package/dist/actions/messages.js +47 -29
  3. package/dist/actions/messages.js.map +1 -1
  4. package/dist/actions/tasks.d.ts +1 -2
  5. package/dist/actions/tasks.js +8 -8
  6. package/dist/actions/tasks.js.map +1 -1
  7. package/dist/approvalGate.d.ts +42 -0
  8. package/dist/approvalGate.js +140 -0
  9. package/dist/approvalGate.js.map +1 -0
  10. package/dist/approvals.d.ts +21 -0
  11. package/dist/approvals.js +79 -0
  12. package/dist/approvals.js.map +1 -0
  13. package/dist/auth.d.ts +1 -0
  14. package/dist/auth.js +3 -0
  15. package/dist/auth.js.map +1 -1
  16. package/dist/charWidth.d.ts +7 -0
  17. package/dist/charWidth.js +24 -19
  18. package/dist/charWidth.js.map +1 -1
  19. package/dist/clipboard.d.ts +0 -5
  20. package/dist/clipboard.js +0 -5
  21. package/dist/clipboard.js.map +1 -1
  22. package/dist/commands.js +3 -2
  23. package/dist/commands.js.map +1 -1
  24. package/dist/config.d.ts +2 -1
  25. package/dist/config.js +17 -10
  26. package/dist/config.js.map +1 -1
  27. package/dist/connection.d.ts +2 -0
  28. package/dist/connection.js +199 -6
  29. package/dist/connection.js.map +1 -1
  30. package/dist/index.js +196 -34
  31. package/dist/index.js.map +1 -1
  32. package/dist/markdown/parser.js +248 -60
  33. package/dist/markdown/parser.js.map +1 -1
  34. package/dist/markdown/renderer.d.ts +3 -3
  35. package/dist/markdown/renderer.js +254 -108
  36. package/dist/markdown/renderer.js.map +1 -1
  37. package/dist/markdown/types.d.ts +4 -1
  38. package/dist/markdown/types.js.map +1 -1
  39. package/dist/protocol.d.ts +0 -2
  40. package/dist/protocol.js +137 -98
  41. package/dist/protocol.js.map +1 -1
  42. package/dist/renderer.js +4 -0
  43. package/dist/renderer.js.map +1 -1
  44. package/dist/startupAnimation.d.ts +4 -0
  45. package/dist/startupAnimation.js +326 -0
  46. package/dist/startupAnimation.js.map +1 -0
  47. package/dist/state.js +23 -5
  48. package/dist/state.js.map +1 -1
  49. package/dist/styles.js +4 -1
  50. package/dist/styles.js.map +1 -1
  51. package/dist/terminal.d.ts +9 -0
  52. package/dist/terminal.js +15 -0
  53. package/dist/terminal.js.map +1 -1
  54. package/dist/tools/registry.js +138 -13
  55. package/dist/tools/registry.js.map +1 -1
  56. package/dist/types.d.ts +57 -21
  57. package/dist/types.js +3 -1
  58. package/dist/types.js.map +1 -1
  59. package/dist/ui/config.d.ts +6 -0
  60. package/dist/ui/config.js +53 -0
  61. package/dist/ui/config.js.map +1 -0
  62. package/dist/ui/diffViewer.d.ts +9 -0
  63. package/dist/ui/diffViewer.js +320 -0
  64. package/dist/ui/diffViewer.js.map +1 -0
  65. package/dist/ui/index.js +40 -21
  66. package/dist/ui/index.js.map +1 -1
  67. package/dist/ui/input.d.ts +1 -1
  68. package/dist/ui/input.js +40 -15
  69. package/dist/ui/input.js.map +1 -1
  70. package/dist/ui/localCommands.d.ts +8 -0
  71. package/dist/ui/localCommands.js +267 -0
  72. package/dist/ui/localCommands.js.map +1 -0
  73. package/dist/ui/messages.js +195 -93
  74. package/dist/ui/messages.js.map +1 -1
  75. package/dist/ui/primitives.js +2 -1
  76. package/dist/ui/primitives.js.map +1 -1
  77. package/dist/ui/promptInput.js +42 -8
  78. package/dist/ui/promptInput.js.map +1 -1
  79. package/dist/ui/promptPicker.js +3 -4
  80. package/dist/ui/promptPicker.js.map +1 -1
  81. package/dist/ui/resumeTask.d.ts +6 -0
  82. package/dist/ui/resumeTask.js +136 -0
  83. package/dist/ui/resumeTask.js.map +1 -0
  84. package/dist/ui/sessions.js +2 -2
  85. package/dist/ui/sessions.js.map +1 -1
  86. package/dist/ui/welcome.js +22 -35
  87. package/dist/ui/welcome.js.map +1 -1
  88. package/dist/utils/resolvePath.d.ts +10 -0
  89. package/dist/utils/resolvePath.js +24 -0
  90. package/dist/utils/resolvePath.js.map +1 -0
  91. package/package.json +7 -4
  92. package/dist/ui/backgroundTasks.d.ts +0 -7
  93. package/dist/ui/backgroundTasks.js +0 -192
  94. package/dist/ui/backgroundTasks.js.map +0 -1
@@ -18,11 +18,11 @@ export function parseInline(text) {
18
18
  const tokens = [];
19
19
  let remaining = text;
20
20
  // Pattern priority: code > bold > italic > link
21
- // Code first because ** inside ` should not be parsed as bold
21
+ // Code first because ** inside \` should not be parsed as bold
22
22
  const patterns = [
23
- // Inline code: `code`
23
+ // Inline code: \`code\`
24
24
  {
25
- regex: /^`([^`]+)`/,
25
+ regex: /^\`([^\`]+)\`/,
26
26
  handler: (m) => ({ type: 'code', content: m[1] }),
27
27
  },
28
28
  // Bold: **text** or __text__
@@ -43,7 +43,7 @@ export function parseInline(text) {
43
43
  // Link: [text](url)
44
44
  {
45
45
  regex: /^\[([^\]]+)\]\(([^)]+)\)/,
46
- handler: (m) => ({ type: 'link', text: m[1], url: m[2] }),
46
+ handler: (m) => ({ type: 'link', children: parseInline(m[1]), url: m[2] }),
47
47
  },
48
48
  ];
49
49
  while (remaining.length > 0) {
@@ -64,7 +64,7 @@ export function parseInline(text) {
64
64
  while (plainEnd < remaining.length) {
65
65
  const char = remaining[plainEnd];
66
66
  // Stop if we hit a potential pattern start
67
- if ('*_`[~'.includes(char))
67
+ if ('*_\`[~'.includes(char))
68
68
  break;
69
69
  plainEnd++;
70
70
  }
@@ -89,16 +89,75 @@ export function parseInline(text) {
89
89
  * Check if a line is a table separator (|---|---|)
90
90
  */
91
91
  function isTableSeparator(line) {
92
- return /^\|?[\s-:|]+\|[\s-:|]+\|?$/.test(line);
92
+ // A valid separator must:
93
+ // 1. Contain at least one dash
94
+ // 2. Only contain pipes, dashes, colons, and whitespace
95
+ // 3. Have pipes separating cells (or be wrapped in pipes for single column)
96
+ const trimmed = line.trim();
97
+ // Must contain at least one dash
98
+ if (!trimmed.includes('-'))
99
+ return false;
100
+ // Must only contain valid separator chars
101
+ if (!/^[\s|:\-]+$/.test(trimmed))
102
+ return false;
103
+ // Must have at least one pipe
104
+ if (!trimmed.includes('|'))
105
+ return false;
106
+ // Single column: |---| or |:---:| etc
107
+ if (/^\|[\s:-]*-+[\s:-]*\|$/.test(trimmed))
108
+ return true;
109
+ // Multi-column: |---|---| or ---|--- or |---|--- etc
110
+ // Must have at least one internal pipe between dashes
111
+ if (/^[\s|:-]*-+[\s:-]*\|[\s|:-]*-+[\s|:-]*$/.test(trimmed))
112
+ return true;
113
+ if (/\|[\s:-]*-+[\s:-]*\|[\s:-]*-+[\s:-]*\|/.test(trimmed))
114
+ return true;
115
+ return false;
93
116
  }
94
117
  /**
95
- * Parse a table row into cells
118
+ * Parse a table row into cells, respecting inline code spans
119
+ * (pipes inside matched backticks don't split cells)
96
120
  */
97
121
  function parseTableRow(line) {
98
- return line
99
- .replace(/^\||\|$/g, '') // Remove leading/trailing pipes
100
- .split('|')
101
- .map((cell) => cell.trim());
122
+ // Remove leading/trailing pipes
123
+ line = line.replace(/^\||\|$/g, '');
124
+ // Find all matched backtick pairs to know which ranges are "in code"
125
+ const codeRanges = [];
126
+ let i = 0;
127
+ while (i < line.length) {
128
+ if (line[i] === '`') {
129
+ const start = i;
130
+ i++;
131
+ // Find closing backtick
132
+ while (i < line.length && line[i] !== '`') {
133
+ i++;
134
+ }
135
+ if (i < line.length) {
136
+ // Found closing backtick
137
+ codeRanges.push({ start, end: i });
138
+ }
139
+ // If no closing backtick found, don't treat as code range
140
+ }
141
+ i++;
142
+ }
143
+ const isInCode = (idx) => {
144
+ return codeRanges.some(r => idx > r.start && idx < r.end);
145
+ };
146
+ // Now split on pipes that aren't inside code ranges
147
+ const cells = [];
148
+ let current = '';
149
+ for (let j = 0; j < line.length; j++) {
150
+ const char = line[j];
151
+ if (char === '|' && !isInCode(j)) {
152
+ cells.push(current.trim());
153
+ current = '';
154
+ }
155
+ else {
156
+ current += char;
157
+ }
158
+ }
159
+ cells.push(current.trim());
160
+ return cells;
102
161
  }
103
162
  /**
104
163
  * Parse a table block (header + separator + rows)
@@ -111,35 +170,140 @@ function parseTable(lines) {
111
170
  if (!isTableSeparator(separatorLine))
112
171
  return null;
113
172
  const headers = parseTableRow(headerLine).map((cell) => parseInline(cell));
173
+ const separatorCells = parseTableRow(separatorLine);
174
+ // Header and separator must have the same number of columns
175
+ if (headers.length !== separatorCells.length)
176
+ return null;
177
+ // Must have at least one column
178
+ if (headers.length === 0)
179
+ return null;
180
+ // Parse alignment from separator cells
181
+ const alignments = separatorCells.map((cell) => {
182
+ const trimmed = cell.trim();
183
+ const leftColon = trimmed.startsWith(':');
184
+ const rightColon = trimmed.endsWith(':');
185
+ if (leftColon && rightColon)
186
+ return 'center';
187
+ if (rightColon)
188
+ return 'right';
189
+ return 'left';
190
+ });
114
191
  const rows = lines.slice(2).map((line) => parseTableRow(line).map((cell) => parseInline(cell)));
115
- return { type: 'table', headers, rows };
192
+ return { type: 'table', headers, rows, alignments };
193
+ }
194
+ /**
195
+ * Get indentation level (number of leading spaces)
196
+ */
197
+ function getIndent(line) {
198
+ const match = line.match(/^(\s*)/);
199
+ return match ? match[1].length : 0;
116
200
  }
117
201
  /**
118
- * Parse a list block (ordered or unordered)
202
+ * Parse a list item line, returning content and checked state
203
+ */
204
+ function parseListItemContent(line) {
205
+ // Remove list marker (1. or - or * or +)
206
+ let content = line.replace(/^(\d+\.|[-*+])\s*/, '');
207
+ // Detect task list markers: [x] or [ ]
208
+ let checked;
209
+ const taskMatch = content.match(/^\[([ xX])\]\s*/);
210
+ if (taskMatch) {
211
+ checked = taskMatch[1].toLowerCase() === 'x';
212
+ content = content.slice(taskMatch[0].length);
213
+ }
214
+ return { content, checked };
215
+ }
216
+ /**
217
+ * Parse a list block (ordered or unordered) with proper nesting
119
218
  */
120
219
  function parseList(lines) {
121
- const firstLine = lines[0];
220
+ const firstLine = lines[0].trimStart();
122
221
  const ordered = /^\d+\./.test(firstLine);
123
- const items = lines.map((line) => {
124
- // Remove list marker
125
- let content = line.replace(/^(\d+\.|[-*+])\s*/, '');
126
- // Detect task list markers: [x] or [ ]
127
- let checked;
128
- const taskMatch = content.match(/^\[([ xX])\]\s*/);
129
- if (taskMatch) {
130
- checked = taskMatch[1].toLowerCase() === 'x';
131
- content = content.slice(taskMatch[0].length);
222
+ const baseIndent = getIndent(lines[0]);
223
+ const items = [];
224
+ let i = 0;
225
+ while (i < lines.length) {
226
+ const line = lines[i];
227
+ const trimmed = line.trimStart();
228
+ if (trimmed === '') {
229
+ i++;
230
+ continue;
132
231
  }
133
- return { children: parseInline(content), checked };
134
- });
232
+ const indent = getIndent(line);
233
+ const isOrderedItem = /^\d+\.\s/.test(trimmed);
234
+ const isUnorderedItem = /^[-*+]\s/.test(trimmed);
235
+ // Check if this is a top-level item for this list
236
+ if (indent <= baseIndent && (isOrderedItem || isUnorderedItem)) {
237
+ const { content, checked } = parseListItemContent(trimmed);
238
+ const item = { children: parseInline(content), checked };
239
+ // Collect sub-items (indented lines following this item)
240
+ const subLines = [];
241
+ i++;
242
+ while (i < lines.length) {
243
+ const subLine = lines[i];
244
+ const subTrimmed = subLine.trimStart();
245
+ const subIndent = getIndent(subLine);
246
+ // Empty line - include but check what follows
247
+ if (subTrimmed === '') {
248
+ // Look ahead - if next non-empty line is still indented, include the blank
249
+ let lookahead = i + 1;
250
+ while (lookahead < lines.length && lines[lookahead].trim() === '') {
251
+ lookahead++;
252
+ }
253
+ if (lookahead < lines.length && getIndent(lines[lookahead]) > baseIndent) {
254
+ subLines.push(subLine);
255
+ i++;
256
+ continue;
257
+ }
258
+ break;
259
+ }
260
+ // If indented more than base, it's a sub-item
261
+ if (subIndent > baseIndent) {
262
+ subLines.push(subLine);
263
+ i++;
264
+ continue;
265
+ }
266
+ // Back to base level - end of sub-items
267
+ break;
268
+ }
269
+ // Parse sub-items if any
270
+ if (subLines.length > 0) {
271
+ item.subItems = parseSubItems(subLines, baseIndent);
272
+ }
273
+ items.push(item);
274
+ }
275
+ else {
276
+ // Skip lines we don't understand at this level
277
+ i++;
278
+ }
279
+ }
135
280
  return { type: 'list', ordered, items };
136
281
  }
282
+ /**
283
+ * Parse indented sub-items into a flat list of ListItems
284
+ */
285
+ function parseSubItems(lines, parentIndent) {
286
+ const items = [];
287
+ for (const line of lines) {
288
+ const trimmed = line.trimStart();
289
+ if (trimmed === '')
290
+ continue;
291
+ const isOrderedItem = /^\d+\.\s/.test(trimmed);
292
+ const isUnorderedItem = /^[-*+]\s/.test(trimmed);
293
+ if (isOrderedItem || isUnorderedItem) {
294
+ const { content, checked } = parseListItemContent(trimmed);
295
+ items.push({ children: parseInline(content), checked });
296
+ }
297
+ // Skip continuation text for now - could be enhanced later
298
+ }
299
+ return items;
300
+ }
137
301
  /**
138
302
  * Parse a fenced code block
139
303
  */
140
304
  function parseCodeBlock(lines) {
141
305
  const firstLine = lines[0];
142
- const language = firstLine.replace(/^```/, '').trim();
306
+ const language = firstLine.replace(/^\`\`\`/, '').trim();
143
307
  const content = lines.slice(1, -1).join('\n'); // Exclude fence lines
144
308
  return { type: 'codeblock', language, content };
145
309
  }
@@ -159,11 +323,11 @@ export function parseBlocks(input, config = {}) {
159
323
  i++;
160
324
  continue;
161
325
  }
162
- // Fenced code block: ```
163
- if (cfg.enableCodeBlocks && trimmed.startsWith('```')) {
326
+ // Fenced code block: \`\`\`
327
+ if (cfg.enableCodeBlocks && trimmed.startsWith('\`\`\`')) {
164
328
  const blockLines = [line];
165
329
  i++;
166
- while (i < lines.length && !lines[i].trim().startsWith('```')) {
330
+ while (i < lines.length && !lines[i].trim().startsWith('\`\`\`')) {
167
331
  blockLines.push(lines[i]);
168
332
  i++;
169
333
  }
@@ -204,8 +368,15 @@ export function parseBlocks(input, config = {}) {
204
368
  if (cfg.enableTables && trimmed.includes('|')) {
205
369
  const tableLines = [line];
206
370
  i++;
207
- while (i < lines.length && lines[i].includes('|')) {
208
- tableLines.push(lines[i]);
371
+ while (i < lines.length) {
372
+ const nextLine = lines[i];
373
+ // Stop if we hit a code fence
374
+ if (nextLine.trim().startsWith('```'))
375
+ break;
376
+ // Stop if line doesn't contain pipe
377
+ if (!nextLine.includes('|'))
378
+ break;
379
+ tableLines.push(nextLine);
209
380
  i++;
210
381
  }
211
382
  const table = parseTable(tableLines);
@@ -221,29 +392,37 @@ export function parseBlocks(input, config = {}) {
221
392
  const listLines = [line];
222
393
  i++;
223
394
  while (i < lines.length) {
224
- const currentLine = lines[i].trim();
225
- // Direct match - add to list
226
- if (/^[-*+]\s/.test(currentLine)) {
227
- listLines.push(lines[i]);
395
+ const currentLine = lines[i];
396
+ const currentTrimmed = currentLine.trim();
397
+ const currentIndent = getIndent(currentLine);
398
+ // Direct list item at base level
399
+ if (/^[-*+]\s/.test(currentTrimmed) && currentIndent === 0) {
400
+ listLines.push(currentLine);
401
+ i++;
402
+ continue;
403
+ }
404
+ // Indented content (sub-items)
405
+ if (currentIndent > 0 && currentTrimmed !== '') {
406
+ listLines.push(currentLine);
228
407
  i++;
229
408
  continue;
230
409
  }
231
410
  // Blank line - look ahead for continuation
232
- if (currentLine === '') {
411
+ if (currentTrimmed === '') {
233
412
  let lookahead = i + 1;
234
- // Skip up to 1 more blank line (allow max 2 blank lines)
235
- while (lookahead < lines.length &&
236
- lookahead - i <= 2 &&
237
- lines[lookahead].trim() === '') {
413
+ while (lookahead < lines.length && lines[lookahead].trim() === '') {
238
414
  lookahead++;
239
415
  }
240
- // Check if next non-blank line is a list item
241
- if (lookahead < lines.length && /^[-*+]\s/.test(lines[lookahead].trim())) {
242
- i = lookahead; // Skip blank lines
243
- continue;
416
+ if (lookahead < lines.length) {
417
+ const nextLine = lines[lookahead];
418
+ const nextTrimmed = nextLine.trim();
419
+ if (/^[-*+]\s/.test(nextTrimmed) || getIndent(nextLine) > 0) {
420
+ listLines.push(currentLine);
421
+ i++;
422
+ continue;
423
+ }
244
424
  }
245
425
  }
246
- // Not a continuation - exit loop
247
426
  break;
248
427
  }
249
428
  tokens.push(parseList(listLines));
@@ -254,29 +433,37 @@ export function parseBlocks(input, config = {}) {
254
433
  const listLines = [line];
255
434
  i++;
256
435
  while (i < lines.length) {
257
- const currentLine = lines[i].trim();
258
- // Direct match - add to list
259
- if (/^\d+\.\s/.test(currentLine)) {
260
- listLines.push(lines[i]);
436
+ const currentLine = lines[i];
437
+ const currentTrimmed = currentLine.trim();
438
+ const currentIndent = getIndent(currentLine);
439
+ // Next numbered item at base level
440
+ if (/^\d+\.\s/.test(currentTrimmed) && currentIndent === 0) {
441
+ listLines.push(currentLine);
261
442
  i++;
262
443
  continue;
263
444
  }
264
- // Blank line - look ahead for continuation
265
- if (currentLine === '') {
445
+ // Sub-bullet or indented content
446
+ if (currentIndent > 0 && currentTrimmed !== '') {
447
+ listLines.push(currentLine);
448
+ i++;
449
+ continue;
450
+ }
451
+ // Blank line - look ahead
452
+ if (currentTrimmed === '') {
266
453
  let lookahead = i + 1;
267
- // Skip up to 1 more blank line (allow max 2 blank lines)
268
- while (lookahead < lines.length &&
269
- lookahead - i <= 2 &&
270
- lines[lookahead].trim() === '') {
454
+ while (lookahead < lines.length && lines[lookahead].trim() === '') {
271
455
  lookahead++;
272
456
  }
273
- // Check if next non-blank line is a list item
274
- if (lookahead < lines.length && /^\d+\.\s/.test(lines[lookahead].trim())) {
275
- i = lookahead; // Skip blank lines
276
- continue;
457
+ if (lookahead < lines.length) {
458
+ const nextLine = lines[lookahead];
459
+ const nextTrimmed = nextLine.trim();
460
+ if (/^\d+\.\s/.test(nextTrimmed) || /^[-*+]\s/.test(nextTrimmed) || getIndent(nextLine) > 0) {
461
+ listLines.push(currentLine);
462
+ i++;
463
+ continue;
464
+ }
277
465
  }
278
466
  }
279
- // Not a continuation - exit loop
280
467
  break;
281
468
  }
282
469
  tokens.push(parseList(listLines));
@@ -290,6 +477,7 @@ export function parseBlocks(input, config = {}) {
290
477
  !lines[i].trim().startsWith('#') &&
291
478
  !lines[i].trim().startsWith('```') &&
292
479
  !lines[i].trim().startsWith('>') &&
480
+ !lines[i].trim().startsWith('|') && // Don't consume potential table starts
293
481
  !/^[-*+]\s/.test(lines[i].trim()) &&
294
482
  !/^\d+\.\s/.test(lines[i].trim()) &&
295
483
  !/^[-*_]{3,}$/.test(lines[i].trim())) {
@@ -1 +1 @@
1
- {"version":3,"file":"parser.js","sourceRoot":"","sources":["../../src/markdown/parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parser.js","sourceRoot":"","sources":["../../src/markdown/parser.ts"],"names":[],"mappings":"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"}
@@ -8,11 +8,11 @@
8
8
  * segments: [{ start, end, styleKey }]
9
9
  */
10
10
  import type { BlockToken } from './types.js';
11
- import type { StyledLine, LineSegment } from '../types.js';
11
+ import type { StyledLine, LineSegment, LineLink } from '../types.js';
12
12
  /**
13
- * Wrap text to fit within maxWidth, preserving segments
13
+ * Wrap text to fit within maxWidth, preserving segments and links
14
14
  */
15
- export declare function wrapWithSegments(text: string, segments: LineSegment[], maxWidth: number, defaultStyle: string, prefix?: string, continuationPrefix?: string | null): StyledLine[];
15
+ export declare function wrapWithSegments(text: string, segments: LineSegment[], maxWidth: number, defaultStyle: string, prefix?: string, continuationPrefix?: string | null, links?: LineLink[]): StyledLine[];
16
16
  /**
17
17
  * Render markdown tokens to styled lines
18
18
  */