@cccarv82/freya 2.13.3 → 2.13.4

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.
package/cli/web-ui.css CHANGED
@@ -371,6 +371,7 @@ body {
371
371
  align-items: center;
372
372
  padding: 16px 20px 10px;
373
373
  background: transparent;
374
+ flex-shrink: 0;
374
375
  }
375
376
 
376
377
  .brandLine {
@@ -592,6 +593,9 @@ body {
592
593
  gap: 18px;
593
594
  flex: 1;
594
595
  }
596
+ .centerBody > * {
597
+ flex-shrink: 0;
598
+ }
595
599
 
596
600
  .promptShell {
597
601
  display: flex;
package/cli/web-ui.js CHANGED
@@ -139,9 +139,10 @@
139
139
  }
140
140
 
141
141
  const li = line.match(/^[ \t]*[-*][ \t]+(.*)$/);
142
- if (li) {
142
+ const oli = !li ? line.match(/^[ \t]*\d+\.[ \t]+(.*)$/) : null;
143
+ if (li || oli) {
143
144
  if (!inList) { html += '<ul class="md-ul">'; inList = true; }
144
- const content = inlineFormat(li[1]);
145
+ const content = inlineFormat((li || oli)[1]);
145
146
  html += '<li>' + content + '</li>';
146
147
  continue;
147
148
  }
@@ -192,42 +193,37 @@
192
193
 
193
194
  // --- Strategy 2: regex fallback for truncated/malformed JSON ---
194
195
  var lines = [];
195
- var num = 0;
196
196
 
197
197
  // Match append_daily_log / appenddailylog actions
198
198
  var logRe = /"type"\s*:\s*"append_?daily_?log"\s*,\s*"text"\s*:\s*"([^"]{1,300})/gi;
199
199
  var m;
200
200
  while ((m = logRe.exec(text)) !== null) {
201
- num++;
202
201
  var t = m[1].slice(0, 140);
203
- lines.push(num + '. \u{1F4DD} **Registrar no log:** ' + t + (m[1].length > 140 ? '...' : ''));
202
+ lines.push('- \u{1F4DD} **Registrar no log:** ' + t + (m[1].length > 140 ? '...' : ''));
204
203
  }
205
204
 
206
205
  // Match create_task actions
207
206
  var taskRe = /"type"\s*:\s*"create_?task"\s*,\s*"description"\s*:\s*"([^"]{1,200})/gi;
208
207
  while ((m = taskRe.exec(text)) !== null) {
209
- num++;
210
208
  var desc = m[1].slice(0, 120);
211
209
  var priMatch = text.slice(m.index, m.index + 400).match(/"priority"\s*:\s*"(\w+)"/i);
212
210
  var pri = priMatch ? ' (prioridade: **' + priMatch[1].toUpperCase() + '**)' : '';
213
- lines.push(num + '. \u2705 **Criar tarefa:** ' + desc + pri);
211
+ lines.push('- \u2705 **Criar tarefa:** ' + desc + pri);
214
212
  }
215
213
 
216
214
  // Match create_blocker actions
217
215
  var blockerRe = /"type"\s*:\s*"create_?blocker"\s*,\s*"title"\s*:\s*"([^"]{1,200})/gi;
218
216
  while ((m = blockerRe.exec(text)) !== null) {
219
- num++;
220
217
  var title = m[1].slice(0, 120);
221
218
  var sevMatch = text.slice(m.index, m.index + 400).match(/"severity"\s*:\s*"(\w+)"/i);
222
219
  var sev = sevMatch ? ' (severidade: **' + sevMatch[1].toUpperCase() + '**)' : '';
223
- lines.push(num + '. \u{1F6A7} **Registrar blocker:** ' + title + sev);
220
+ lines.push('- \u{1F6A7} **Registrar blocker:** ' + title + sev);
224
221
  }
225
222
 
226
223
  // Match suggest_report actions
227
224
  var repRe = /"type"\s*:\s*"suggest_?report"\s*,\s*"name"\s*:\s*"([^"]+)"/gi;
228
225
  while ((m = repRe.exec(text)) !== null) {
229
- num++;
230
- lines.push(num + '. \u{1F4CA} **Sugerir relatorio:** ' + m[1]);
226
+ lines.push('- \u{1F4CA} **Sugerir relatorio:** ' + m[1]);
231
227
  }
232
228
 
233
229
  return lines.length > 0 ? lines.join('\n') : null;
@@ -240,33 +236,32 @@
240
236
  oraclequery: '\u{1F50D}'
241
237
  };
242
238
 
243
- var lines = actions.map(function(a, i) {
239
+ var lines = actions.map(function(a) {
244
240
  var type = String(a.type || '').trim().toLowerCase().replace(/_/g, '');
245
241
  var icon = icons[type] || '\u2022';
246
- var num = i + 1;
247
242
 
248
243
  if (type === 'appenddailylog') {
249
244
  var t = String(a.text || '').slice(0, 140);
250
- return num + '. ' + icon + ' **Registrar no log:** ' + t + (String(a.text || '').length > 140 ? '...' : '');
245
+ return '- ' + icon + ' **Registrar no log:** ' + t + (String(a.text || '').length > 140 ? '...' : '');
251
246
  }
252
247
  if (type === 'createtask') {
253
248
  var desc = String(a.description || '').slice(0, 120);
254
249
  var pri = a.priority ? ' (prioridade: **' + String(a.priority).toUpperCase() + '**)' : '';
255
250
  var cat = a.category ? ' [' + a.category + ']' : '';
256
- return num + '. ' + icon + ' **Criar tarefa:** ' + desc + pri + cat;
251
+ return '- ' + icon + ' **Criar tarefa:** ' + desc + pri + cat;
257
252
  }
258
253
  if (type === 'createblocker') {
259
254
  var title = String(a.title || a.description || '').slice(0, 120);
260
255
  var sev = a.severity ? ' (severidade: **' + String(a.severity).toUpperCase() + '**)' : '';
261
- return num + '. ' + icon + ' **Registrar blocker:** ' + title + sev;
256
+ return '- ' + icon + ' **Registrar blocker:** ' + title + sev;
262
257
  }
263
258
  if (type === 'suggestreport') {
264
- return num + '. ' + icon + ' **Sugerir relatorio:** ' + String(a.name || a.reportType || '');
259
+ return '- ' + icon + ' **Sugerir relatorio:** ' + String(a.name || a.reportType || '');
265
260
  }
266
261
  if (type === 'oraclequery') {
267
- return num + '. ' + icon + ' **Consultar oracle:** ' + String(a.query || '').slice(0, 120);
262
+ return '- ' + icon + ' **Consultar oracle:** ' + String(a.query || '').slice(0, 120);
268
263
  }
269
- return num + '. \u2022 **' + String(a.type || 'acao') + '**';
264
+ return '- \u2022 **' + String(a.type || 'acao') + '**';
270
265
  });
271
266
 
272
267
  return lines.join('\n');
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cccarv82/freya",
3
- "version": "2.13.3",
3
+ "version": "2.13.4",
4
4
  "description": "Personal AI Assistant with local-first persistence",
5
5
  "scripts": {
6
6
  "health": "node scripts/validate-data.js && node scripts/validate-structure.js",