@tienne/gestalt 0.104.0 → 0.106.0
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/package.json +1 -1
- package/dist/plugin/role-agents/video-summarizer/AGENT.md +28 -4
- package/dist/plugin/skills/_shared/proactive-routing.md +2 -2
- package/dist/plugin/skills/dispatch/SKILL.md +14 -0
- package/dist/plugin/skills/handoff/SKILL.md +39 -5
- package/dist/plugin/skills/video-digest/SKILL.md +72 -22
- package/dist/src/digest/render-html.d.ts.map +1 -1
- package/dist/src/digest/render-html.js +15 -9
- package/dist/src/digest/render-html.js.map +1 -1
- package/dist/src/digest/reports.d.ts +9 -1
- package/dist/src/digest/reports.d.ts.map +1 -1
- package/dist/src/digest/reports.js +24 -1
- package/dist/src/digest/reports.js.map +1 -1
- package/dist/src/digest/viewer-js.d.ts.map +1 -1
- package/dist/src/digest/viewer-js.js +56 -47
- package/dist/src/digest/viewer-js.js.map +1 -1
- package/dist/src/digest/viewer-logic.d.ts +22 -5
- package/dist/src/digest/viewer-logic.d.ts.map +1 -1
- package/dist/src/digest/viewer-logic.js +23 -4
- package/dist/src/digest/viewer-logic.js.map +1 -1
- package/package.json +1 -1
- package/plugin/.codex-plugin/plugin.json +1 -1
- package/plugin/.mcp.json +1 -1
- package/plugin/mcp.json +1 -1
- package/plugin/role-agents/video-summarizer/AGENT.md +28 -4
- package/plugin/skills/_shared/proactive-routing.md +2 -2
- package/plugin/skills/dispatch/SKILL.md +14 -0
- package/plugin/skills/handoff/SKILL.md +39 -5
- package/plugin/skills/video-digest/SKILL.md +72 -22
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"render-html.js","sourceRoot":"","sources":["../../../src/digest/render-html.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"render-html.js","sourceRoot":"","sources":["../../../src/digest/render-html.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,10 +12,18 @@ export declare function rangeSpan(range: readonly [number, number], segments: re
|
|
|
12
12
|
to: number;
|
|
13
13
|
} | null;
|
|
14
14
|
/**
|
|
15
|
-
*
|
|
15
|
+
* 분량과 난이도만으로 가려지는 리포트인지 본다. 툴바의 쉽게 보기 토글이 이 리포트끼리 오간다.
|
|
16
16
|
* 구간이나 프롬프트가 붙었거나 첫 리포트와 언어가 다르면 따로 고르는 리포트다
|
|
17
17
|
*/
|
|
18
18
|
export declare function isPreset(options: ReportOptions, base: ReportOptions): boolean;
|
|
19
|
+
/**
|
|
20
|
+
* 쉽게 보기 토글이 오갈 짝의 자리. 난이도만 반대고 분량, 언어, 구간, 요청이 같아야 짝이라 키로 비교한다. 없으면 -1
|
|
21
|
+
*/
|
|
22
|
+
export declare function pairIndex(reports: readonly Report[], i: number): number;
|
|
23
|
+
/**
|
|
24
|
+
* 뷰어를 처음 열 때 보일 리포트. 스킬이 길게와 보통을 기본으로 만들므로 그 조합을 먼저 찾고 없으면 첫 리포트를 연다
|
|
25
|
+
*/
|
|
26
|
+
export declare function initialReportIndex(reports: readonly Report[]): number;
|
|
19
27
|
export declare function reportLabel(options: ReportOptions, withHours?: boolean): string;
|
|
20
28
|
export declare function findReport(digest: Digest, key: string): Report | undefined;
|
|
21
29
|
/** 같은 키의 리포트가 있으면 그 자리에 바꿔 끼우고 없으면 뒤에 붙인다 */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reports.d.ts","sourceRoot":"","sources":["../../../src/digest/reports.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAE1E,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,MAAM,CAIhE,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,aAAa,CAAC,YAAY,CAAC,EAAE,MAAM,CAGxE,CAAC;AAEF;;;GAGG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,aAAa,GAAG,MAAM,CASxD;AAED,wDAAwD;AACxD,wBAAgB,SAAS,CACvB,KAAK,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,EAChC,QAAQ,EAAE,SAAS,OAAO,EAAE,GAC3B;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CASrC;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,aAAa,GAAG,OAAO,CAE7E;AAED,wBAAgB,WAAW,CAAC,OAAO,EAAE,aAAa,EAAE,SAAS,UAAQ,GAAG,MAAM,CAU7E;AAED,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAE1E;AAED,6CAA6C;AAC7C,wBAAgB,YAAY,CAC1B,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,GACb;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAA;CAAE,CAOvC"}
|
|
1
|
+
{"version":3,"file":"reports.d.ts","sourceRoot":"","sources":["../../../src/digest/reports.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAE1E,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,MAAM,CAIhE,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,aAAa,CAAC,YAAY,CAAC,EAAE,MAAM,CAGxE,CAAC;AAEF;;;GAGG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,aAAa,GAAG,MAAM,CASxD;AAED,wDAAwD;AACxD,wBAAgB,SAAS,CACvB,KAAK,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,EAChC,QAAQ,EAAE,SAAS,OAAO,EAAE,GAC3B;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CASrC;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,aAAa,GAAG,OAAO,CAE7E;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAQvE;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAQrE;AAED,wBAAgB,WAAW,CAAC,OAAO,EAAE,aAAa,EAAE,SAAS,UAAQ,GAAG,MAAM,CAU7E;AAED,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAE1E;AAED,6CAA6C;AAC7C,wBAAgB,YAAY,CAC1B,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,GACb;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAA;CAAE,CAOvC"}
|
|
@@ -37,12 +37,35 @@ export function rangeSpan(range, segments) {
|
|
|
37
37
|
return from < 0 ? null : { from, to };
|
|
38
38
|
}
|
|
39
39
|
/**
|
|
40
|
-
*
|
|
40
|
+
* 분량과 난이도만으로 가려지는 리포트인지 본다. 툴바의 쉽게 보기 토글이 이 리포트끼리 오간다.
|
|
41
41
|
* 구간이나 프롬프트가 붙었거나 첫 리포트와 언어가 다르면 따로 고르는 리포트다
|
|
42
42
|
*/
|
|
43
43
|
export function isPreset(options, base) {
|
|
44
44
|
return !options.range && !options.prompt && options.lang === base.lang;
|
|
45
45
|
}
|
|
46
|
+
/**
|
|
47
|
+
* 쉽게 보기 토글이 오갈 짝의 자리. 난이도만 반대고 분량, 언어, 구간, 요청이 같아야 짝이라 키로 비교한다. 없으면 -1
|
|
48
|
+
*/
|
|
49
|
+
export function pairIndex(reports, i) {
|
|
50
|
+
const options = reports[i]?.options;
|
|
51
|
+
if (!options)
|
|
52
|
+
return -1;
|
|
53
|
+
const want = reportKey({
|
|
54
|
+
...options,
|
|
55
|
+
difficulty: options.difficulty === 'easy' ? 'normal' : 'easy',
|
|
56
|
+
});
|
|
57
|
+
return reports.findIndex((r) => reportKey(r.options) === want);
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* 뷰어를 처음 열 때 보일 리포트. 스킬이 길게와 보통을 기본으로 만들므로 그 조합을 먼저 찾고 없으면 첫 리포트를 연다
|
|
61
|
+
*/
|
|
62
|
+
export function initialReportIndex(reports) {
|
|
63
|
+
const base = reports[0]?.options;
|
|
64
|
+
if (!base)
|
|
65
|
+
return 0;
|
|
66
|
+
const at = reports.findIndex((r) => isPreset(r.options, base) && r.options.length === 'long' && r.options.difficulty === 'normal');
|
|
67
|
+
return at >= 0 ? at : 0;
|
|
68
|
+
}
|
|
46
69
|
export function reportLabel(options, withHours = false) {
|
|
47
70
|
const parts = [`${LENGTH_LABEL[options.length]}, ${DIFFICULTY_LABEL[options.difficulty]}`];
|
|
48
71
|
if (options.range) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reports.js","sourceRoot":"","sources":["../../../src/digest/reports.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"reports.js","sourceRoot":"","sources":["../../../src/digest/reports.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"viewer-js.d.ts","sourceRoot":"","sources":["../../../src/digest/viewer-js.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,SAAS,
|
|
1
|
+
{"version":3,"file":"viewer-js.d.ts","sourceRoot":"","sources":["../../../src/digest/viewer-js.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,SAAS,QAkuBrB,CAAC;AAEF,gEAAgE;AAChE,eAAO,MAAM,gBAAgB,QAAkE,CAAC"}
|
|
@@ -300,7 +300,7 @@ export const VIEWER_JS = VIEWER_LOGIC_JS +
|
|
|
300
300
|
};
|
|
301
301
|
}
|
|
302
302
|
|
|
303
|
-
// 사용자가 패널을 직접 움직이면 3초 동안 멈춘다
|
|
303
|
+
// 일시정지 중에도 하이라이트는 옮긴다. 사용자가 패널을 직접 움직이면 3초 동안 스크롤을 멈춘다
|
|
304
304
|
function setupScriptFollow(player) {
|
|
305
305
|
if (!player.live) return;
|
|
306
306
|
var panel = document.getElementById('script-body');
|
|
@@ -315,14 +315,20 @@ export const VIEWER_JS = VIEWER_LOGIC_JS +
|
|
|
315
315
|
var t = player.currentTime();
|
|
316
316
|
if (t === null || t === undefined) return;
|
|
317
317
|
var idx = findSegmentIndex(starts, t);
|
|
318
|
-
|
|
319
|
-
if (
|
|
320
|
-
|
|
318
|
+
var changed = idx !== current;
|
|
319
|
+
if (changed) {
|
|
320
|
+
if (lines[current]) lines[current].classList.remove('is-playing');
|
|
321
|
+
current = idx;
|
|
322
|
+
}
|
|
321
323
|
var li = lines[idx];
|
|
322
324
|
if (!li) return;
|
|
323
|
-
li.classList.add('is-playing');
|
|
324
|
-
if (!panel
|
|
325
|
-
|
|
325
|
+
if (changed) li.classList.add('is-playing');
|
|
326
|
+
if (!panel) return;
|
|
327
|
+
var visible = isLineVisible(li.offsetTop, li.offsetHeight, panel.scrollTop, panel.clientHeight);
|
|
328
|
+
if (!shouldScrollScript(player.state(), changed, Date.now(), holdUntil, visible)) return;
|
|
329
|
+
var top = Math.max(0, li.offsetTop - panel.clientHeight / 3);
|
|
330
|
+
if (Math.abs(top - panel.scrollTop) <= 1) return;
|
|
331
|
+
panel.scrollTo({ top: top, behavior: reduceMotion ? 'auto' : 'smooth' });
|
|
326
332
|
}, 250);
|
|
327
333
|
}
|
|
328
334
|
|
|
@@ -344,8 +350,9 @@ export const VIEWER_JS = VIEWER_LOGIC_JS +
|
|
|
344
350
|
document.querySelectorAll('section.sec').forEach(function(s){ io.observe(s); });
|
|
345
351
|
}
|
|
346
352
|
|
|
347
|
-
// 읽는 소섹션이 바뀌면 영상을 그 구간 첫 문장으로 옮긴다.
|
|
353
|
+
// 읽는 소섹션이 바뀌면 영상을 그 구간 첫 문장으로 옮긴다. 재생 중이면 요약을 스크롤해도 영상을 옮기지 않고 빠르게 훑을 때는 멈춘 자리만 따른다.
|
|
348
354
|
// 방금 시각을 눌렀으면 유예가 끝난 뒤 영상이 멈춰 있을 때만 따라간다. 기다리는 사이 그 소섹션이 화면에서 빠지면 따라가지 않는다
|
|
355
|
+
// 앞선 이동의 버퍼링이 덜 끝났으면 재생 중으로 읽히므로 300ms 뒤 두 번까지 다시 본다
|
|
349
356
|
function setupSubsectionFollow(player) {
|
|
350
357
|
var subs = document.querySelectorAll('.sub[data-from]');
|
|
351
358
|
if (!player.live || !('IntersectionObserver' in window) || !subs.length) return;
|
|
@@ -354,6 +361,15 @@ export const VIEWER_JS = VIEWER_LOGIC_JS +
|
|
|
354
361
|
var t = player.currentTime();
|
|
355
362
|
return t === null || t === undefined ? -1 : findSegmentIndex(starts, t);
|
|
356
363
|
};
|
|
364
|
+
var follow = function(target, from, to, tries){
|
|
365
|
+
if (!player.live || pendingSub !== target) return;
|
|
366
|
+
if (shouldRetryFollow(player.state(), tries)) {
|
|
367
|
+
followTimer = setTimeout(function(){ follow(target, from, to, tries - 1); }, 300);
|
|
368
|
+
return;
|
|
369
|
+
}
|
|
370
|
+
if (!shouldFollowHeld(player.state(), currentIdx(), from, to, Date.now(), manualUntil)) return;
|
|
371
|
+
if (typeof starts[from] === 'number') player.cue(starts[from]);
|
|
372
|
+
};
|
|
357
373
|
var subIo = new IntersectionObserver(function(entries){
|
|
358
374
|
entries.forEach(function(en){
|
|
359
375
|
if (!en.isIntersecting) {
|
|
@@ -368,21 +384,16 @@ export const VIEWER_JS = VIEWER_LOGIC_JS +
|
|
|
368
384
|
var to = Number(en.target.getAttribute('data-to'));
|
|
369
385
|
clearTimeout(followTimer);
|
|
370
386
|
clearTimeout(heldTimer);
|
|
371
|
-
pendingSub = en.target;
|
|
387
|
+
var target = pendingSub = en.target;
|
|
372
388
|
followTimer = setTimeout(function(){
|
|
373
389
|
if (!player.live) return;
|
|
374
390
|
var now = Date.now();
|
|
375
391
|
// 시각을 누른 직후에 넘어온 소섹션은 버리지 않고 유예가 끝난 뒤 한 번만 다시 본다
|
|
376
392
|
if (now < manualUntil) {
|
|
377
|
-
heldTimer = setTimeout(function(){
|
|
378
|
-
if (!player.live) return;
|
|
379
|
-
if (!shouldFollowHeld(player.state(), currentIdx(), from, to, Date.now(), manualUntil)) return;
|
|
380
|
-
if (typeof starts[from] === 'number') player.cue(starts[from]);
|
|
381
|
-
}, manualUntil - now + 50);
|
|
393
|
+
heldTimer = setTimeout(function(){ follow(target, from, to, 2); }, manualUntil - now + 50);
|
|
382
394
|
return;
|
|
383
395
|
}
|
|
384
|
-
|
|
385
|
-
if (typeof starts[from] === 'number') player.cue(starts[from]);
|
|
396
|
+
follow(target, from, to, 2);
|
|
386
397
|
}, 400);
|
|
387
398
|
});
|
|
388
399
|
}, { rootMargin: '-15% 0px -70% 0px' });
|
|
@@ -530,55 +541,53 @@ export const VIEWER_JS = VIEWER_LOGIC_JS +
|
|
|
530
541
|
};
|
|
531
542
|
}
|
|
532
543
|
|
|
533
|
-
// 툴바는
|
|
544
|
+
// 툴바는 쉽게 보기 토글 하나로 보통과 쉬운 리포트를 오간다. 없는 리포트는 서버가 만들지 않고 생성 명령만 보여 준다
|
|
534
545
|
function setupReports() {
|
|
535
546
|
var REPORT_KEY = 'gestalt-digest-report:' + data.slug;
|
|
536
547
|
var boxes = document.querySelectorAll('.report[data-ri]');
|
|
537
548
|
var maps = document.querySelectorAll('.minimap[data-ri]');
|
|
538
|
-
var
|
|
539
|
-
var diffBtns = document.querySelectorAll('.report-bar [data-difficulty]');
|
|
549
|
+
var easyToggle = document.getElementById('easy-toggle');
|
|
540
550
|
var select = document.getElementById('report-select');
|
|
541
551
|
var missing = document.getElementById('report-missing');
|
|
552
|
+
var missingMsg = document.getElementById('report-missing-msg');
|
|
553
|
+
var cmdWrap = document.getElementById('report-cmd-wrap');
|
|
554
|
+
var status = document.getElementById('report-status');
|
|
542
555
|
var cmd = document.getElementById('report-cmd');
|
|
543
556
|
var copyCmd = document.getElementById('copy-cmd');
|
|
544
|
-
var
|
|
545
|
-
|
|
546
|
-
|
|
557
|
+
var initial = data.reports[data.initial] ? data.initial : 0;
|
|
558
|
+
var current = initial;
|
|
559
|
+
function hideMissing(){
|
|
560
|
+
if (missing) missing.hidden = true;
|
|
561
|
+
if (status) status.textContent = '';
|
|
547
562
|
}
|
|
548
563
|
function show(ri){
|
|
549
|
-
if (!data.reports[ri]) ri =
|
|
564
|
+
if (!data.reports[ri]) ri = initial;
|
|
550
565
|
current = ri;
|
|
551
566
|
boxes.forEach(function(b){ b.hidden = Number(b.getAttribute('data-ri')) !== ri; });
|
|
552
567
|
maps.forEach(function(m){ m.hidden = Number(m.getAttribute('data-ri')) !== ri; });
|
|
553
568
|
var r = data.reports[ri];
|
|
554
|
-
|
|
555
|
-
press(diffBtns, 'data-difficulty', r.difficulty);
|
|
569
|
+
if (easyToggle) easyToggle.setAttribute('aria-pressed', r.difficulty === 'easy' ? 'true' : 'false');
|
|
556
570
|
if (select) select.value = String(ri);
|
|
557
|
-
|
|
571
|
+
hideMissing();
|
|
558
572
|
try { localStorage.setItem(REPORT_KEY, r.key); } catch (e) {}
|
|
559
573
|
}
|
|
560
|
-
function choose(
|
|
561
|
-
var
|
|
574
|
+
function choose(difficulty){
|
|
575
|
+
var r = data.reports[current];
|
|
576
|
+
var ri = r.pair;
|
|
577
|
+
// 짝이 없는 옛 짧게, 기본 리포트는 길게로 간다. 스킬이 길게만 만들어서다. 구간이나 요청이 붙은 리포트는 다른 리포트로 넘기지 않는다
|
|
578
|
+
if (ri < 0 && r.preset) ri = pickReport(data.reports, 'long', difficulty);
|
|
562
579
|
if (ri >= 0) { show(ri); return; }
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
if (
|
|
580
|
+
var notice = missingNotice(r, data.slug, difficulty);
|
|
581
|
+
if (missingMsg) missingMsg.textContent = notice.msg;
|
|
582
|
+
if (cmdWrap) cmdWrap.hidden = notice.cmd === null;
|
|
583
|
+
if (cmd) cmd.textContent = notice.cmd || '';
|
|
566
584
|
if (missing) missing.hidden = false;
|
|
585
|
+
if (status) status.textContent = notice.msg;
|
|
567
586
|
}
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
}
|
|
573
|
-
lengthBtns.forEach(function(b){
|
|
574
|
-
b.addEventListener('click', function(){
|
|
575
|
-
choose(b.getAttribute('data-length'), pressedOf(diffBtns, 'data-difficulty') || data.reports[current].difficulty);
|
|
576
|
-
});
|
|
577
|
-
});
|
|
578
|
-
diffBtns.forEach(function(b){
|
|
579
|
-
b.addEventListener('click', function(){
|
|
580
|
-
choose(pressedOf(lengthBtns, 'data-length') || data.reports[current].length, b.getAttribute('data-difficulty'));
|
|
581
|
-
});
|
|
587
|
+
// 눌림 상태는 보이는 리포트만 따른다. 안내가 떠 있으면 다시 눌러 닫는다
|
|
588
|
+
if (easyToggle) easyToggle.addEventListener('click', function(){
|
|
589
|
+
if (missing && !missing.hidden) { hideMissing(); return; }
|
|
590
|
+
choose(data.reports[current].difficulty === 'easy' ? 'normal' : 'easy');
|
|
582
591
|
});
|
|
583
592
|
if (select) select.addEventListener('change', function(){ show(Number(select.value)); });
|
|
584
593
|
if (copyCmd && cmd) copyCmd.addEventListener('click', function(){
|
|
@@ -586,14 +595,14 @@ export const VIEWER_JS = VIEWER_LOGIC_JS +
|
|
|
586
595
|
});
|
|
587
596
|
var saved = null;
|
|
588
597
|
try { saved = localStorage.getItem(REPORT_KEY); } catch (e) {}
|
|
589
|
-
var start =
|
|
598
|
+
var start = initial;
|
|
590
599
|
data.reports.forEach(function(r, i){ if (r.key === saved) start = i; });
|
|
591
600
|
// 공유된 앵커가 다른 리포트의 섹션을 가리키면 그 리포트를 연다
|
|
592
601
|
var anchor = safeDecode(location.hash.slice(1));
|
|
593
602
|
var target = anchor ? document.getElementById(anchor) : null;
|
|
594
603
|
var owner = target && target.closest ? target.closest('.report[data-ri]') : null;
|
|
595
604
|
if (owner) start = Number(owner.getAttribute('data-ri'));
|
|
596
|
-
if (start !==
|
|
605
|
+
if (start !== initial) show(start);
|
|
597
606
|
if (owner && target) target.scrollIntoView();
|
|
598
607
|
return { current: function(){ return current; } };
|
|
599
608
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"viewer-js.js","sourceRoot":"","sources":["../../../src/digest/viewer-js.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,iCAAiC;AACjC,MAAM,CAAC,MAAM,SAAS,GACpB,eAAe;IACf
|
|
1
|
+
{"version":3,"file":"viewer-js.js","sourceRoot":"","sources":["../../../src/digest/viewer-js.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,iCAAiC;AACjC,MAAM,CAAC,MAAM,SAAS,GACpB,eAAe;IACf;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAguBD,CAAC;AAEF,gEAAgE;AAChE,MAAM,CAAC,MAAM,gBAAgB,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC"}
|
|
@@ -3,14 +3,22 @@
|
|
|
3
3
|
* 테스트가 이 문자열을 그대로 실행해 본다. DOM과 유튜브 플레이어를 다루는 IIFE는 viewer-js.ts에 있고
|
|
4
4
|
* 테스트에서 문법만 확인한다. OCR처럼 Node 쪽에서 같은 판단이 필요한 코드는 뷰어 스크립트 대신 이 모듈을 가져온다.
|
|
5
5
|
*/
|
|
6
|
-
export declare const VIEWER_LOGIC_JS = "\nfunction findSegmentIndex(starts, t) {\n if (!starts.length || !(t >= starts[0])) return -1;\n var lo = 0, hi = starts.length - 1;\n while (lo < hi) {\n var mid = (lo + hi + 1) >> 1;\n if (starts[mid] <= t) lo = mid; else hi = mid - 1;\n }\n return lo;\n}\nfunction shouldFollow(idx, from, to, now, manualUntil) {\n if (now < manualUntil) return false;\n return !(idx >= from && idx <= to);\n}\nfunction shouldFollowHeld(state, idx, from, to, now, manualUntil) {\n if (state
|
|
6
|
+
export declare const VIEWER_LOGIC_JS = "\nfunction findSegmentIndex(starts, t) {\n if (!starts.length || !(t >= starts[0])) return -1;\n var lo = 0, hi = starts.length - 1;\n while (lo < hi) {\n var mid = (lo + hi + 1) >> 1;\n if (starts[mid] <= t) lo = mid; else hi = mid - 1;\n }\n return lo;\n}\nfunction shouldFollow(idx, from, to, now, manualUntil) {\n if (now < manualUntil) return false;\n return !(idx >= from && idx <= to);\n}\nfunction isPlaying(state) {\n return state === 1 || state === 3;\n}\nfunction shouldFollowHeld(state, idx, from, to, now, manualUntil) {\n if (isPlaying(state)) return false;\n return shouldFollow(idx, from, to, now, manualUntil);\n}\nfunction shouldScrollScript(state, changed, now, holdUntil, visible) {\n if (!isPlaying(state) || now < holdUntil) return false;\n return changed || !visible;\n}\nfunction shouldRetryFollow(state, tries) {\n return state === 3 && tries > 0;\n}\nfunction isLineVisible(top, height, scrollTop, clientHeight) {\n if (height > clientHeight) return top >= scrollTop && top < scrollTop + clientHeight;\n return top >= scrollTop && top + height <= scrollTop + clientHeight;\n}\nfunction cueAction(state) {\n return state === 1 || state === 2 || state === 3 ? 'seek' : 'cue';\n}\nfunction citeWindow(from, to, max) {\n var end = Math.min(to, from + max - 1);\n return { end: end, more: Math.max(0, to - end) };\n}\nfunction pickReport(reports, length, difficulty) {\n for (var i = 0; i < reports.length; i++) {\n var r = reports[i];\n if (r.preset && r.length === length && r.difficulty === difficulty) return i;\n }\n return -1;\n}\nfunction reportCommand(slug, difficulty, lang, range) {\n var cmd = '/gestalt:video-digest slug=' + slug + ' difficulty=' + difficulty;\n if (range) cmd += ' range=' + Math.floor(range[0]) + '-' + Math.ceil(range[1]);\n return lang ? cmd + ' reportLang=' + lang : cmd;\n}\nfunction missingNotice(r, slug, difficulty) {\n if (r.prompted) return { msg: '\uC694\uCCAD\uC744 \uBD99\uC5EC \uB9CC\uB4E0 \uB9AC\uD3EC\uD2B8\uB77C \uC9DD\uC774 \uC5C6\uC5B4\uC694. \uAC19\uC740 \uC694\uCCAD\uC73C\uB85C \uB2E4\uC2DC \uB9CC\uB4E4\uC5B4 \uC8FC\uC138\uC694.', cmd: null };\n return { msg: '\uC774 \uB9AC\uD3EC\uD2B8\uB294 \uC544\uC9C1 \uC5C6\uC5B4\uC694. \uC544\uB798 \uBA85\uB839\uC744 \uC138\uC158\uC5D0 \uBD99\uC5EC \uB123\uC73C\uBA74 \uB9CC\uB4E4\uC5B4\uC694.', cmd: reportCommand(slug, difficulty, r.lang, r.range) };\n}\nfunction templateCommand(slug, id, lang) {\n var cmd = '/gestalt:video-digest slug=' + slug + ' templates=' + id;\n return lang ? cmd + ' reportLang=' + lang : cmd;\n}\nfunction tabStep(i, n, key) {\n if (key === 'ArrowRight') return (i + 1) % n;\n if (key === 'ArrowLeft') return (i - 1 + n) % n;\n if (key === 'Home') return 0;\n if (key === 'End') return n - 1;\n return -1;\n}\nfunction safeDecode(s) {\n try { return decodeURIComponent(s); } catch (e) { return ''; }\n}\nfunction videoState(ended, paused, time, readyState) {\n if (ended) return 0;\n if (paused) return time > 0 ? 2 : -1;\n return readyState < 3 ? 3 : 1;\n}\n// \uB450 \uBCF5\uC0AC \uBC84\uD2BC\uC774 \uB77C\uC774\uBE0C \uC601\uC5ED \uD558\uB098\uB97C \uAC19\uC774 \uC368\uC11C \uD0C0\uC774\uBA38\uB3C4 \uD558\uB098\uB85C \uBB36\uB294\uB2E4. \uC55E \uD0C0\uC774\uBA38\uAC00 \uB0A8\uC73C\uBA74 \uB4A4 \uBB38\uAD6C\uB97C \uC77C\uCC0D \uC9C0\uC6B4\uB2E4\n// \uBC84\uD2BC \uAE00\uC790\uB9CC \uBC14\uAFB8\uBA74 \uC2A4\uD06C\uB9B0\uB9AC\uB354\uAC00 \uACB0\uACFC\uB97C \uC548 \uC77D\uC5B4\uC11C \uACB0\uACFC \uBB38\uAD6C\uB294 \uB77C\uC774\uBE0C \uC601\uC5ED\uC5D0 \uB530\uB85C \uC4F4\uB2E4.\n// \uAC19\uC740 \uBB38\uAD6C\uB97C \uADF8\uB300\uB85C \uB2E4\uC2DC \uB123\uC73C\uBA74 \uC548 \uC77D\uB294 \uB9AC\uB354\uAC00 \uC788\uC5B4\uC11C \uD55C \uBC88 \uBE44\uC6B0\uACE0 setTimeout 0\uC73C\uB85C \uBBF8\uB904 \uC4F4\uB2E4\nfunction makeFlash(getStatus) {\n var flashTimer = null;\n var flashBtn = null;\n var flashLabel = '';\n return function flash(btn, label, failed) {\n var status = getStatus();\n clearTimeout(flashTimer);\n if (flashBtn && flashBtn !== btn) flashBtn.textContent = flashLabel;\n flashBtn = btn;\n flashLabel = label;\n btn.textContent = failed ? '\uBCF5\uC0AC \uC2E4\uD328' : '\uBCF5\uC0AC\uD588\uC5B4\uC694';\n if (status) status.textContent = '';\n flashTimer = setTimeout(function(){\n if (status) status.textContent = failed ? '\uBCF5\uC0AC\uD558\uC9C0 \uBABB\uD588\uC5B4\uC694. \uC9C1\uC811 \uC120\uD0DD\uD574 \uBCF5\uC0AC\uD574 \uC8FC\uC138\uC694' : '\uBCF5\uC0AC\uD588\uC5B4\uC694';\n flashTimer = setTimeout(function(){\n btn.textContent = label;\n flashBtn = null;\n if (status) status.textContent = '';\n }, failed ? 3000 : 1500);\n }, 0);\n };\n}\n";
|
|
7
7
|
export interface ViewerLogic {
|
|
8
8
|
/** 재생 시각 t에 해당하는 문장 번호. 첫 문장보다 이르면 -1 */
|
|
9
9
|
findSegmentIndex: (starts: number[], t: number) => number;
|
|
10
10
|
/** 읽는 소섹션이 바뀌었을 때 영상을 그 구간으로 옮길지 */
|
|
11
11
|
shouldFollow: (idx: number, from: number, to: number, now: number, manualUntil: number) => boolean;
|
|
12
|
-
/**
|
|
12
|
+
/** 재생 중인지. 버퍼링도 재생 중으로 본다 */
|
|
13
|
+
isPlaying: (state: number) => boolean;
|
|
14
|
+
/** 읽는 소섹션으로 영상을 옮길지. 재생이나 버퍼링 중이면 보던 자리를 둔다. 시각을 누른 직후 미뤄 둔 이동도 유예가 끝난 뒤 이걸로 본다 */
|
|
13
15
|
shouldFollowHeld: (state: number, idx: number, from: number, to: number, now: number, manualUntil: number) => boolean;
|
|
16
|
+
/** 스크립트 패널을 현재 문장으로 스크롤할지. 재생 중이고 사용자가 만지는 중이 아닐 때, 문장이 바뀌었거나 현재 줄이 패널 밖일 때만 */
|
|
17
|
+
shouldScrollScript: (state: number, changed: boolean, now: number, holdUntil: number, visible: boolean) => boolean;
|
|
18
|
+
/** 직전 이동의 버퍼링(3)이 덜 끝나 재생 중으로 읽힐 때 잠시 뒤 다시 볼지. 남은 횟수가 0이면 그대로 판정한다 */
|
|
19
|
+
shouldRetryFollow: (state: number, tries: number) => boolean;
|
|
20
|
+
/** 스크립트 줄이 패널 안에 보이는지. 줄이 패널보다 높으면 윗변이 패널 안에 있을 때 보인다고 친다. 안 그러면 재생 중 매번 스크롤을 다시 건다 */
|
|
21
|
+
isLineVisible: (top: number, height: number, scrollTop: number, clientHeight: number) => boolean;
|
|
14
22
|
/** 유튜브 재생 상태별로 seekTo를 쓸지 cueVideoById를 쓸지 */
|
|
15
23
|
cueAction: (state: number) => 'seek' | 'cue';
|
|
16
24
|
/** 출처 툴팁에 보일 마지막 문장 번호와 생략한 문장 수 */
|
|
@@ -18,14 +26,23 @@ export interface ViewerLogic {
|
|
|
18
26
|
end: number;
|
|
19
27
|
more: number;
|
|
20
28
|
};
|
|
21
|
-
/**
|
|
29
|
+
/** 분량과 난이도가 맞는 툴바용 리포트 자리. 없으면 -1 */
|
|
22
30
|
pickReport: (reports: {
|
|
23
31
|
preset: boolean;
|
|
24
32
|
length: string;
|
|
25
33
|
difficulty: string;
|
|
26
34
|
}[], length: string, difficulty: string) => number;
|
|
27
|
-
/** 없는
|
|
28
|
-
reportCommand: (slug: string,
|
|
35
|
+
/** 없는 리포트를 고르면 복사해 주는 생성 명령. 스킬이 길게만 만들어서 분량은 싣지 않는다. 지금 보는 리포트의 언어와 구간을 따라가야 엉뚱한 리포트가 안 생긴다 */
|
|
36
|
+
reportCommand: (slug: string, difficulty: string, lang?: string, range?: [number, number]) => string;
|
|
37
|
+
/** 짝이 없는 리포트에서 토글을 누르면 띄울 안내와 복사할 명령. 요청문은 따옴표가 섞일 수 있어 명령 인자로 안전하게 못 넘기니 요청 리포트는 명령 없이 안내만 한다 */
|
|
38
|
+
missingNotice: (r: {
|
|
39
|
+
prompted: boolean;
|
|
40
|
+
lang?: string;
|
|
41
|
+
range?: [number, number];
|
|
42
|
+
}, slug: string, difficulty: string) => {
|
|
43
|
+
msg: string;
|
|
44
|
+
cmd: string | null;
|
|
45
|
+
};
|
|
29
46
|
/** "+ 더 만들기"에서 템플릿을 고르면 복사해 주는 명령. 언어는 지금 보는 리포트를 따른다 */
|
|
30
47
|
templateCommand: (slug: string, id: string, lang?: string) => string;
|
|
31
48
|
/** 탭 목록에서 방향키, Home, End로 옮겨 갈 자리. 다른 키면 -1 */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"viewer-logic.d.ts","sourceRoot":"","sources":["../../../src/digest/viewer-logic.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,eAAO,MAAM,eAAe,
|
|
1
|
+
{"version":3,"file":"viewer-logic.d.ts","sourceRoot":"","sources":["../../../src/digest/viewer-logic.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,eAAO,MAAM,eAAe,moJAmG3B,CAAC;AAEF,MAAM,WAAW,WAAW;IAC1B,yCAAyC;IACzC,gBAAgB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC;IAC1D,oCAAoC;IACpC,YAAY,EAAE,CACZ,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,MAAM,EACV,GAAG,EAAE,MAAM,EACX,WAAW,EAAE,MAAM,KAChB,OAAO,CAAC;IACb,6BAA6B;IAC7B,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC;IACtC,mFAAmF;IACnF,gBAAgB,EAAE,CAChB,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,MAAM,EACV,GAAG,EAAE,MAAM,EACX,WAAW,EAAE,MAAM,KAChB,OAAO,CAAC;IACb,gFAAgF;IAChF,kBAAkB,EAAE,CAClB,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,MAAM,EACX,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,OAAO,KACb,OAAO,CAAC;IACb,sEAAsE;IACtE,iBAAiB,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC;IAC7D,uFAAuF;IACvF,aAAa,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,KAAK,OAAO,CAAC;IACjG,8CAA8C;IAC9C,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,GAAG,KAAK,CAAC;IAC7C,oCAAoC;IACpC,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IACrF,qCAAqC;IACrC,UAAU,EAAE,CACV,OAAO,EAAE;QAAE,MAAM,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,EAAE,EAClE,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,KACf,MAAM,CAAC;IACZ,gGAAgG;IAChG,aAAa,EAAE,CACb,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,MAAM,EAClB,IAAI,CAAC,EAAE,MAAM,EACb,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,KACrB,MAAM,CAAC;IACZ,kGAAkG;IAClG,aAAa,EAAE,CACb,CAAC,EAAE;QAAE,QAAQ,EAAE,OAAO,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE,EACjE,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,MAAM,KACf;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC;IACzC,yDAAyD;IACzD,eAAe,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC;IACrE,+CAA+C;IAC/C,OAAO,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC;IACvD,6CAA6C;IAC7C,UAAU,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC;IAClC,2DAA2D;IAC3D,UAAU,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,KAAK,MAAM,CAAC;IAC1F,gFAAgF;IAChF,SAAS,EAAE,CACT,SAAS,EAAE,MAAM;QAAE,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,GAAG,IAAI,KACnD,CAAC,GAAG,EAAE;QAAE,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;CACpF;AAED,eAAO,MAAM,WAAW,EAEjB,WAAW,CAAC;AAEnB,eAAO,MAAM,gBAAgB,WAzEA,MAAM,EAAE,KAAK,MAAM,KAAK,MAyEO,CAAC"}
|
|
@@ -17,10 +17,24 @@ function shouldFollow(idx, from, to, now, manualUntil) {
|
|
|
17
17
|
if (now < manualUntil) return false;
|
|
18
18
|
return !(idx >= from && idx <= to);
|
|
19
19
|
}
|
|
20
|
+
function isPlaying(state) {
|
|
21
|
+
return state === 1 || state === 3;
|
|
22
|
+
}
|
|
20
23
|
function shouldFollowHeld(state, idx, from, to, now, manualUntil) {
|
|
21
|
-
if (state
|
|
24
|
+
if (isPlaying(state)) return false;
|
|
22
25
|
return shouldFollow(idx, from, to, now, manualUntil);
|
|
23
26
|
}
|
|
27
|
+
function shouldScrollScript(state, changed, now, holdUntil, visible) {
|
|
28
|
+
if (!isPlaying(state) || now < holdUntil) return false;
|
|
29
|
+
return changed || !visible;
|
|
30
|
+
}
|
|
31
|
+
function shouldRetryFollow(state, tries) {
|
|
32
|
+
return state === 3 && tries > 0;
|
|
33
|
+
}
|
|
34
|
+
function isLineVisible(top, height, scrollTop, clientHeight) {
|
|
35
|
+
if (height > clientHeight) return top >= scrollTop && top < scrollTop + clientHeight;
|
|
36
|
+
return top >= scrollTop && top + height <= scrollTop + clientHeight;
|
|
37
|
+
}
|
|
24
38
|
function cueAction(state) {
|
|
25
39
|
return state === 1 || state === 2 || state === 3 ? 'seek' : 'cue';
|
|
26
40
|
}
|
|
@@ -35,10 +49,15 @@ function pickReport(reports, length, difficulty) {
|
|
|
35
49
|
}
|
|
36
50
|
return -1;
|
|
37
51
|
}
|
|
38
|
-
function reportCommand(slug,
|
|
39
|
-
var cmd = '/gestalt:video-digest slug=' + slug + '
|
|
52
|
+
function reportCommand(slug, difficulty, lang, range) {
|
|
53
|
+
var cmd = '/gestalt:video-digest slug=' + slug + ' difficulty=' + difficulty;
|
|
54
|
+
if (range) cmd += ' range=' + Math.floor(range[0]) + '-' + Math.ceil(range[1]);
|
|
40
55
|
return lang ? cmd + ' reportLang=' + lang : cmd;
|
|
41
56
|
}
|
|
57
|
+
function missingNotice(r, slug, difficulty) {
|
|
58
|
+
if (r.prompted) return { msg: '요청을 붙여 만든 리포트라 짝이 없어요. 같은 요청으로 다시 만들어 주세요.', cmd: null };
|
|
59
|
+
return { msg: '이 리포트는 아직 없어요. 아래 명령을 세션에 붙여 넣으면 만들어요.', cmd: reportCommand(slug, difficulty, r.lang, r.range) };
|
|
60
|
+
}
|
|
42
61
|
function templateCommand(slug, id, lang) {
|
|
43
62
|
var cmd = '/gestalt:video-digest slug=' + slug + ' templates=' + id;
|
|
44
63
|
return lang ? cmd + ' reportLang=' + lang : cmd;
|
|
@@ -84,6 +103,6 @@ function makeFlash(getStatus) {
|
|
|
84
103
|
};
|
|
85
104
|
}
|
|
86
105
|
`;
|
|
87
|
-
export const viewerLogic = new Function(`${VIEWER_LOGIC_JS}; return { findSegmentIndex: findSegmentIndex, shouldFollow: shouldFollow, shouldFollowHeld: shouldFollowHeld, cueAction: cueAction, citeWindow: citeWindow, pickReport: pickReport, reportCommand: reportCommand, templateCommand: templateCommand, tabStep: tabStep, safeDecode: safeDecode, videoState: videoState, makeFlash: makeFlash };`)();
|
|
106
|
+
export const viewerLogic = new Function(`${VIEWER_LOGIC_JS}; return { findSegmentIndex: findSegmentIndex, shouldFollow: shouldFollow, isPlaying: isPlaying, shouldFollowHeld: shouldFollowHeld, shouldScrollScript: shouldScrollScript, shouldRetryFollow: shouldRetryFollow, isLineVisible: isLineVisible, cueAction: cueAction, citeWindow: citeWindow, pickReport: pickReport, reportCommand: reportCommand, missingNotice: missingNotice, templateCommand: templateCommand, tabStep: tabStep, safeDecode: safeDecode, videoState: videoState, makeFlash: makeFlash };`)();
|
|
88
107
|
export const findSegmentIndex = viewerLogic.findSegmentIndex;
|
|
89
108
|
//# sourceMappingURL=viewer-logic.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"viewer-logic.js","sourceRoot":"","sources":["../../../src/digest/viewer-logic.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG
|
|
1
|
+
{"version":3,"file":"viewer-logic.js","sourceRoot":"","sources":["../../../src/digest/viewer-logic.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmG9B,CAAC;AAyEF,MAAM,CAAC,MAAM,WAAW,GAAG,IAAI,QAAQ,CACrC,GAAG,eAAe,gfAAgf,CACngB,EAAiB,CAAC;AAEnB,MAAM,CAAC,MAAM,gBAAgB,GAAG,WAAW,CAAC,gBAAgB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "gestalt",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.106.0",
|
|
4
4
|
"description": "Gestalt psychology-driven AI development harness. Transforms scattered requirements into structured, validated specifications through interactive interviews.",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "tienne"
|
package/plugin/.mcp.json
CHANGED