@kolbo/mcp 1.104.0 → 1.104.2

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kolbo/mcp",
3
- "version": "1.104.0",
3
+ "version": "1.104.2",
4
4
  "description": "Kolbo AI MCP Server - Generate images, videos, music, speech, and sound effects from Claude Code",
5
5
  "main": "src/index.js",
6
6
  "bin": {
package/src/apps/html.js CHANGED
@@ -179,6 +179,15 @@ function ensurePeek() {
179
179
  if (it) window.kolbo.openLink(downloadUrl(it.dl || it.url));
180
180
  };
181
181
  box.onclick = function (e) { if (e.target === box || e.target === el('peek-stage')) closePeek(); };
182
+ // Touch hosts have no arrow keys: a horizontal swipe pages.
183
+ var x0 = null;
184
+ box.addEventListener('touchstart', function (e) { x0 = e.touches[0].clientX; }, { passive: true });
185
+ box.addEventListener('touchend', function (e) {
186
+ if (x0 == null) return;
187
+ var dx = e.changedTouches[0].clientX - x0;
188
+ x0 = null;
189
+ if (Math.abs(dx) > 50) stepPeek(dx < 0 ? 1 : -1);
190
+ }, { passive: true });
182
191
  return box;
183
192
  }
184
193
  function peekAttrs(url, kind, cap) {
package/src/apps/theme.js CHANGED
@@ -178,7 +178,10 @@ html.k-peek-open .k-card { min-height: 460px; }
178
178
  /* Host granted fullscreen: the lightbox owns the whole viewport, not the card. */
179
179
  html.k-peek-fs, html.k-peek-fs body { height: 100%; overflow: hidden; }
180
180
  html.k-peek-fs .k-peek { position: fixed; inset: 0; z-index: 50; }
181
- html.k-peek-fs .k-card { min-height: 0; }
181
+ /* backdrop-filter (and any transform) makes the card the containing block for
182
+ position:fixed descendants, so a GRANTED fullscreen still showed the lightbox
183
+ card-sized. Drop them while the lightbox owns the viewport. */
184
+ html.k-peek-fs .k-card { min-height: 0; backdrop-filter: none; -webkit-backdrop-filter: none; transform: none; animation: none; }
182
185
  /* Expand button on every inline video — replaces the native fullscreen button,
183
186
  which a host iframe without allow="fullscreen" always greys out. */
184
187
  .k-vexpand {
@@ -307,7 +310,10 @@ video::-webkit-media-controls-fullscreen-button { display: none !important; }
307
310
  display: inline-flex; align-items: center; justify-content: center;
308
311
  cursor: pointer; opacity: 0; transition: opacity 150ms var(--smooth), background 150ms var(--smooth);
309
312
  }
310
- .k-media:hover .k-dl, .k-viewer:hover .k-dl, .k-skel:hover .k-dl { opacity: 1; }
313
+ .k-media:hover .k-dl, .k-viewer:hover .k-dl, .k-skel:hover .k-dl, .k-dl:focus-visible { opacity: 1; }
314
+ /* Same contract as .k-tile-acts: on a touch host there is no hover, and the
315
+ hover-only Download / Attach buttons were simply invisible. */
316
+ @media (hover: none) { .k-dl { opacity: 1; } }
311
317
  .k-dl:hover { background: var(--brand); border-color: var(--brand); }
312
318
  /* Attach-to-prompt sits immediately left of Download (30px button + 8px gap). */
313
319
  .k-attach { right: 46px; }