vidpipe 1.3.14 → 1.3.16
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/dist/cli.js +11463 -9519
- package/dist/cli.js.map +1 -1
- package/dist/index.d.ts +9 -0
- package/dist/index.js +6567 -5245
- package/dist/index.js.map +1 -1
- package/dist/public/index.html +46 -5
- package/package.json +1 -1
package/dist/public/index.html
CHANGED
|
@@ -379,6 +379,32 @@
|
|
|
379
379
|
</div>`
|
|
380
380
|
}
|
|
381
381
|
|
|
382
|
+
function ThumbnailPreview({ group }) {
|
|
383
|
+
const firstItem = group.items[0]
|
|
384
|
+
if (!firstItem) return null
|
|
385
|
+
const thumbnailUrl = '/media/queue/' + encodeURIComponent(firstItem.id) + '/thumbnail.png'
|
|
386
|
+
const [loaded, setLoaded] = useState(false)
|
|
387
|
+
const [error, setError] = useState(false)
|
|
388
|
+
|
|
389
|
+
if (error) return null
|
|
390
|
+
|
|
391
|
+
return html`
|
|
392
|
+
<div class="px-5 pb-3">
|
|
393
|
+
<div class="text-xs font-semibold text-gray-400 mb-2">🖼️ Thumbnail:</div>
|
|
394
|
+
<div class="rounded-xl overflow-hidden bg-black/20 border border-white/10 inline-block">
|
|
395
|
+
<img
|
|
396
|
+
src=${thumbnailUrl}
|
|
397
|
+
alt="Thumbnail preview"
|
|
398
|
+
class="max-h-48 w-auto object-contain rounded-xl"
|
|
399
|
+
style=${{ display: loaded ? 'block' : 'none' }}
|
|
400
|
+
onLoad=${() => setLoaded(true)}
|
|
401
|
+
onError=${() => setError(true)}
|
|
402
|
+
/>
|
|
403
|
+
${!loaded && !error && html`<div class="h-24 w-40 flex items-center justify-center text-gray-500 text-xs">Loading...</div>`}
|
|
404
|
+
</div>
|
|
405
|
+
</div>`
|
|
406
|
+
}
|
|
407
|
+
|
|
382
408
|
function PlatformCheckboxes({ group, selectedPlatforms, onToggle, accounts }) {
|
|
383
409
|
return html`
|
|
384
410
|
<div class="px-5 pb-3">
|
|
@@ -423,13 +449,27 @@
|
|
|
423
449
|
}
|
|
424
450
|
|
|
425
451
|
function PostContentPreview({ group }) {
|
|
426
|
-
const firstItem = group.items[0]
|
|
427
|
-
const content = firstItem.postContent || ''
|
|
428
452
|
return html`
|
|
429
453
|
<div class="px-5 pb-3">
|
|
430
|
-
<div class="text-xs font-semibold text-gray-400 mb-
|
|
431
|
-
<div class="
|
|
432
|
-
${
|
|
454
|
+
<div class="text-xs font-semibold text-gray-400 mb-2">📝 Posts per platform:</div>
|
|
455
|
+
<div class="space-y-3">
|
|
456
|
+
${group.items.map(item => {
|
|
457
|
+
const platform = normalizePlatform(item.metadata.platform)
|
|
458
|
+
const cfg = PLATFORMS[platform] || { icon: '❓', color: '#888', name: platform }
|
|
459
|
+
const content = item.postContent || ''
|
|
460
|
+
return html`
|
|
461
|
+
<div class="rounded-lg border border-white/10 bg-white/5 overflow-hidden">
|
|
462
|
+
<div class="flex items-center gap-2 px-3 py-1.5 border-b border-white/10 bg-white/5">
|
|
463
|
+
<span class="text-sm">${cfg.icon}</span>
|
|
464
|
+
<span class="text-xs font-semibold" style="color: ${cfg.color}">${cfg.name}</span>
|
|
465
|
+
<span class="text-xs text-gray-500 ml-auto">${content.length} chars</span>
|
|
466
|
+
</div>
|
|
467
|
+
<div class="text-sm leading-relaxed text-gray-300 whitespace-pre-wrap break-words max-h-40 overflow-y-auto px-3 py-2">
|
|
468
|
+
${content}
|
|
469
|
+
</div>
|
|
470
|
+
</div>
|
|
471
|
+
`
|
|
472
|
+
})}
|
|
433
473
|
</div>
|
|
434
474
|
</div>`
|
|
435
475
|
}
|
|
@@ -497,6 +537,7 @@
|
|
|
497
537
|
<!-- Scrollable middle: video + checkboxes + preview -->
|
|
498
538
|
<div class="flex-1 overflow-y-auto min-h-0">
|
|
499
539
|
<${VideoPlayer} group=${group} />
|
|
540
|
+
<${ThumbnailPreview} group=${group} />
|
|
500
541
|
<${PlatformCheckboxes}
|
|
501
542
|
group=${group}
|
|
502
543
|
selectedPlatforms=${selectedPlatforms}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "vidpipe",
|
|
3
|
-
"version": "1.3.
|
|
3
|
+
"version": "1.3.16",
|
|
4
4
|
"description": "AI-powered pipeline that watches for video recordings and generates transcripts, summaries, short clips, and social media posts",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|