shadok-ai 0.11.8 → 0.11.10

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 (2) hide show
  1. package/package.json +1 -1
  2. package/public/index.html +19 -5
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "shadok-ai",
3
- "version": "0.11.8",
3
+ "version": "0.11.10",
4
4
  "main": "dist/session.js",
5
5
  "scripts": {
6
6
  "test": "node --import tsx --test test/*.ts context/*/test/*.test.mjs",
package/public/index.html CHANGED
@@ -1146,12 +1146,24 @@
1146
1146
  #chanBar #dirGauge, #chanBar #branchGauge { display: none !important; }
1147
1147
  #chanBar .gauge .label { display: none; } /* values only, more compact */
1148
1148
  #chanBar { gap: 6px; padding: 6px 10px; }
1149
- header { flex-wrap: wrap; row-gap: 6px; gap: 8px; padding: 8px 12px; }
1150
1149
  /* One header row: brand + dials + ⋯. reflowHeaderTools (JS) moves ALL tool
1151
- icons into the ⋯ menu on a phone, so nothing wraps to a second line. The
1152
- spacer that right-aligns them on desktop is dropped so what remains packs
1153
- left. .hdr-tools keeps its base `display: contents`. */
1150
+ icons into the ⋯ menu, and `nowrap` makes the brand — the one elastic item
1151
+ — ABSORB the squeeze instead of shoving a dial onto a second line. Before
1152
+ this, a long instance title (e.g. a full hostname) pushed the 7d gauge to
1153
+ wrap, leaving the header a broken two-row mess that also peeked, dimmed,
1154
+ behind every open modal. The spacer that right-aligns the tools on desktop
1155
+ is dropped so what remains packs left. */
1156
+ header { flex-wrap: nowrap; gap: 8px; padding: 8px 12px; }
1154
1157
  header .spacer { display: none; }
1158
+ /* The brand becomes a flex row of its own so ONLY the name ellipsizes: the
1159
+ ◆ and the version badge keep their size, the title yields. The pencil cue
1160
+ is hover-only, so it is of no use on a phone and just eats width. */
1161
+ header .brand { display: flex; align-items: baseline; gap: 4px; min-width: 0; flex: 0 1 auto; }
1162
+ header .brand-name { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
1163
+ header .brand-edit { display: none; }
1164
+ /* While renaming, show the whole field — a transient nudge of the dials is
1165
+ fine, the ellipsis returns the moment the edit commits. */
1166
+ header .brand.editing .brand-name, header .brand-name:focus { overflow: visible; text-overflow: clip; }
1155
1167
  header button.icon { padding: 5px 7px; }
1156
1168
  /* The star pill is the widest tool and would push an icon off the row; on a
1157
1169
  phone it moves into the ⋯ menu (#starMenuItem) instead. */
@@ -1526,6 +1538,8 @@
1526
1538
  #secretsAdd .sec-add-row { display: flex; gap: 8px; }
1527
1539
  #secretsAdd input { flex: 1; min-width: 0; padding: 6px 8px; border-radius: 6px; border: 1px solid rgba(255,255,255,.15); background: rgba(0,0,0,.25); color: inherit; font-size: 16px; }
1528
1540
  #secretsAdd #secretSubmit { flex: none; padding: 6px 12px; border-radius: 6px; border: 1px solid rgba(255,255,255,.15); background: rgba(255,255,255,.08); color: inherit; cursor: pointer; }
1541
+ #secretsAdd #secretEditCancel { flex: none; padding: 6px 10px; border-radius: 6px; border: 1px solid var(--line); background: none; color: var(--text-dim); cursor: pointer; font-size: 14px; line-height: 1; }
1542
+ #secretsAdd #secretEditCancel:hover { border-color: var(--err); color: var(--err); }
1529
1543
  #secretKey[readonly] { opacity: .65; }
1530
1544
  .sec-attach { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; }
1531
1545
  .sec-attach-label { font-size: 12px; color: var(--text-dim); }
@@ -1650,11 +1664,11 @@
1650
1664
  <input id="secretKey" placeholder="NAME" autocomplete="off" spellcheck="false" />
1651
1665
  <input id="secretVal" placeholder="value" autocomplete="off" spellcheck="false" />
1652
1666
  <button type="submit" id="secretSubmit">Add</button>
1667
+ <button type="button" id="secretEditCancel" title="Cancel — back to adding a secret" aria-label="Cancel edit" hidden>✕</button>
1653
1668
  </div>
1654
1669
  <div id="secretAttach" class="sec-attach" hidden>
1655
1670
  <span class="sec-attach-label">Inject into profiles:</span>
1656
1671
  <div id="secretProfiles" class="sec-profiles"></div>
1657
- <button type="button" id="secretEditCancel" class="linkish" hidden>cancel edit</button>
1658
1672
  </div>
1659
1673
  </form>
1660
1674
  <div id="secretsReload" class="sec-reload" hidden></div>