@cccarv82/freya 1.0.55 → 1.0.57

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
@@ -61,6 +61,10 @@
61
61
  [data-theme="dark"] *::-webkit-scrollbar-thumb:hover { background: rgba(229,231,235,.26); }
62
62
 
63
63
 
64
+ html, body {
65
+ height: 100%;
66
+ }
67
+
64
68
  body {
65
69
  margin: 0;
66
70
  font-family: var(--sans);
@@ -72,28 +76,28 @@ body {
72
76
  background: radial-gradient(800px 360px at 65% 10%, rgba(45,212,191,.10), transparent 55%), var(--bg);
73
77
  }
74
78
 
75
- .app { padding: 18px; }
79
+ .app { padding: 0; height: 100%; }
76
80
 
77
81
  .frame {
78
- max-width: 1400px;
79
- margin: 0 auto;
80
- border-radius: 22px;
82
+ width: 100vw;
83
+ height: 100vh;
84
+ margin: 0;
85
+ border-radius: 0;
81
86
  overflow: hidden;
82
- box-shadow: var(--shadow);
83
- border: 1px solid var(--line);
84
- background: var(--paper2);
87
+ box-shadow: none;
88
+ border: none;
89
+ background: transparent;
85
90
  }
86
91
 
87
92
  .shell {
88
93
  display: grid;
89
- grid-template-columns: 72px minmax(520px, 1fr) 360px;
90
- height: calc(100vh - 36px);
94
+ grid-template-columns: 72px minmax(520px, 1fr);
95
+ height: 100vh;
91
96
  min-height: 0;
92
97
  }
93
98
 
94
99
  @media (max-width: 1200px) {
95
100
  .shell { grid-template-columns: 72px 1fr; }
96
- .chatPane { display: none; }
97
101
  }
98
102
 
99
103
  @media (max-width: 860px) {
@@ -167,6 +171,21 @@ body {
167
171
  .dot { width: 10px; height: 10px; border-radius: 6px; background: rgba(148,163,184,.6); }
168
172
  .dot.ok { background: rgba(16,185,129,.85); }
169
173
  .dot.err { background: rgba(239,68,68,.85); }
174
+ .dot.run { background: rgba(56,189,248,.9); }
175
+ .dot.plan { background: rgba(250,204,21,.9); }
176
+
177
+ .railStatus {
178
+ width: 16px;
179
+ height: 16px;
180
+ border-radius: 999px;
181
+ border: 1px solid var(--line2);
182
+ background: rgba(148,163,184,.6);
183
+ box-shadow: 0 0 0 4px rgba(0,0,0,.25);
184
+ }
185
+ .railStatus.ok { background: rgba(16,185,129,.9); }
186
+ .railStatus.err { background: rgba(239,68,68,.9); }
187
+ .railStatus.run { background: rgba(56,189,248,.9); }
188
+ .railStatus.plan { background: rgba(250,204,21,.9); }
170
189
 
171
190
  .sidePath {
172
191
  margin: 10px 6px 10px;
@@ -392,20 +411,11 @@ textarea:focus { box-shadow: var(--ring); border-color: rgba(45,212,191,.35); }
392
411
  [data-theme="dark"] .md-code{ background: rgba(0,0,0,.22); }
393
412
  .md-sp{ height: 10px; }
394
413
 
395
- /* RIGHT: CHAT */
414
+ /* RIGHT: CHAT (hidden for Perplexity layout) */
396
415
  .chatPane {
397
- border-left: 1px solid var(--line);
398
- background: var(--paper);
399
- display: grid;
400
- grid-template-rows: auto 1fr;
401
- overflow: hidden;
402
- min-height: 0;
416
+ display: none;
403
417
  }
404
418
 
405
- .chatHead { padding: 18px 16px; border-bottom: 1px solid var(--line); }
406
- .chatTitle { font-weight: 800; letter-spacing: -.01em; }
407
- .chatSub { margin-top: 2px; font-size: 12px; color: var(--faint); }
408
-
409
419
  .chatThread {
410
420
  padding: 14px;
411
421
  overflow: auto;
package/cli/web-ui.js CHANGED
@@ -32,10 +32,12 @@
32
32
 
33
33
  function setPill(kind, text) {
34
34
  const dot = $('dot');
35
- if (!dot) return;
36
- dot.classList.remove('ok', 'err');
37
- if (kind === 'ok') dot.classList.add('ok');
38
- if (kind === 'err') dot.classList.add('err');
35
+ const rail = $('railStatus');
36
+ const classes = ['ok', 'err', 'run', 'plan'];
37
+ if (dot) dot.classList.remove(...classes);
38
+ if (rail) rail.classList.remove(...classes);
39
+ if (dot && classes.includes(kind)) dot.classList.add(kind);
40
+ if (rail && classes.includes(kind)) rail.classList.add(kind);
39
41
  const pill = $('pill');
40
42
  if (pill) pill.textContent = text;
41
43
  const status = $('status');
@@ -988,7 +990,8 @@
988
990
  }
989
991
 
990
992
  // init
991
- applyTheme(localStorage.getItem('freya.theme') || 'dark');
993
+ applyTheme('dark');
994
+ try { localStorage.setItem('freya.theme', 'dark'); } catch (err) {}
992
995
  $('chipPort').textContent = location.host;
993
996
  loadLocal();
994
997
 
package/cli/web.js CHANGED
@@ -901,14 +901,14 @@ function buildHtml(safeDefault, appVersion) {
901
901
  <div class="railLogo">F</div>
902
902
  </div>
903
903
  <div class="railNav">
904
- <button class="railBtn active" type="button" title="Dashboard">H</button>
905
- <button class="railBtn" type="button" title="Workspace">W</button>
906
- <button class="railBtn" type="button" title="Relatórios">R</button>
904
+ <button class="railBtn active" type="button" title="Dashboard" onclick="window.scrollTo({ top: 0, behavior: 'smooth' })">D</button>
905
+ <button class="railBtn" type="button" title="Relatórios" onclick="document.getElementById('reportsSection')?.scrollIntoView({ behavior: 'smooth' })">R</button>
906
+ <button class="railBtn" type="button" title="Relatórios (atalho 2)">R</button>
907
907
  <button class="railBtn" type="button" title="Preview">P</button>
908
908
  <button class="railBtn" type="button" title="Conversa">C</button>
909
909
  </div>
910
910
  <div class="railBottom">
911
- <button class="railBtn railToggle" id="themeToggle" type="button" onclick="toggleTheme()">Claro</button>
911
+ <div class="railStatus" id="railStatus" title="status"></div>
912
912
  </div>
913
913
  </aside>
914
914
 
@@ -954,7 +954,7 @@ function buildHtml(safeDefault, appVersion) {
954
954
  </div>
955
955
  </section>
956
956
 
957
- <section class="utilityGrid">
957
+ <section class="utilityGrid" id="reportsSection">
958
958
  <div class="utilityCard">
959
959
  <div class="utilityHead">Área de trabalho</div>
960
960
  <div class="sidePath" id="sidePath">./freya</div>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cccarv82/freya",
3
- "version": "1.0.55",
3
+ "version": "1.0.57",
4
4
  "description": "Personal AI Assistant with local-first persistence",
5
5
  "scripts": {
6
6
  "health": "node scripts/validate-data.js",