@holostaff/sdk 0.9.1 → 0.9.3
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/stage/anamFace.d.ts.map +1 -1
- package/dist/stage/anamFace.js +30 -1
- package/dist/stage/anamFace.js.map +1 -1
- package/dist/stage/realtime.d.ts.map +1 -1
- package/dist/stage/realtime.js +23 -0
- package/dist/stage/realtime.js.map +1 -1
- package/dist/stage/ui.d.ts.map +1 -1
- package/dist/stage/ui.js +47 -49
- package/dist/stage/ui.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"anamFace.d.ts","sourceRoot":"","sources":["../../src/stage/anamFace.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,MAAM,WAAW,QAAQ;IACvB,iEAAiE;IACjE,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IACnC,kEAAkE;IAClE,SAAS,IAAI,IAAI,CAAA;IACjB,IAAI,IAAI,IAAI,CAAA;CACb;AAED;;;GAGG;AACH,wBAAsB,aAAa,CAAC,IAAI,EAAE;IACxC,YAAY,EAAE,MAAM,CAAA;IACpB,OAAO,EAAE,gBAAgB,CAAA;IACzB,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,KAAK,KAAK,IAAI,CAAA;CAC/B,GAAG,OAAO,CAAC,QAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"anamFace.d.ts","sourceRoot":"","sources":["../../src/stage/anamFace.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,MAAM,WAAW,QAAQ;IACvB,iEAAiE;IACjE,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IACnC,kEAAkE;IAClE,SAAS,IAAI,IAAI,CAAA;IACjB,IAAI,IAAI,IAAI,CAAA;CACb;AAED;;;GAGG;AACH,wBAAsB,aAAa,CAAC,IAAI,EAAE;IACxC,YAAY,EAAE,MAAM,CAAA;IACpB,OAAO,EAAE,gBAAgB,CAAA;IACzB,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,KAAK,KAAK,IAAI,CAAA;CAC/B,GAAG,OAAO,CAAC,QAAQ,CAAC,CAmFpB"}
|
package/dist/stage/anamFace.js
CHANGED
|
@@ -29,20 +29,49 @@ export async function startAnamFace(opts) {
|
|
|
29
29
|
throw new Error('@anam-ai/js-sdk: createClient not found (version mismatch)');
|
|
30
30
|
}
|
|
31
31
|
const client = createClient(opts.sessionToken, { disableInputAudio: true });
|
|
32
|
+
// TEMP diagnostic — log every Anam event so we can see SESSION_READY /
|
|
33
|
+
// CONNECTION_CLOSED / video lifecycle.
|
|
34
|
+
try {
|
|
35
|
+
const AnamEvent = mod.AnamEvent
|
|
36
|
+
?? mod.default?.AnamEvent;
|
|
37
|
+
const addListener = client.addListener;
|
|
38
|
+
if (AnamEvent && typeof addListener === 'function') {
|
|
39
|
+
for (const name of Object.keys(AnamEvent)) {
|
|
40
|
+
addListener.call(client, AnamEvent[name], (...a) => {
|
|
41
|
+
try {
|
|
42
|
+
console.log('[holostaff:anam] event', name, a?.[0] ?? '');
|
|
43
|
+
}
|
|
44
|
+
catch { /* */ }
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
catch { /* best-effort */ }
|
|
32
50
|
// Bind the avatar to the video element (API name varies by version).
|
|
33
51
|
const videoId = ensureId(opts.videoEl);
|
|
52
|
+
try {
|
|
53
|
+
console.log('[holostaff:anam] streamToVideoElement →', videoId, 'found?', !!document.getElementById(videoId));
|
|
54
|
+
}
|
|
55
|
+
catch { /* */ }
|
|
34
56
|
if (typeof client.streamToVideoElement === 'function') {
|
|
35
57
|
await client.streamToVideoElement(videoId);
|
|
36
58
|
}
|
|
37
59
|
else if (typeof client.startSession === 'function') {
|
|
38
60
|
await client.startSession();
|
|
39
61
|
}
|
|
62
|
+
try {
|
|
63
|
+
const v = document.getElementById(videoId);
|
|
64
|
+
console.log('[holostaff:anam] streamToVideoElement done; srcObject?', !!v?.srcObject, 'readyState', v?.readyState);
|
|
65
|
+
}
|
|
66
|
+
catch { /* */ }
|
|
40
67
|
let stream = null;
|
|
41
68
|
const ensureStream = () => {
|
|
42
69
|
if (stream)
|
|
43
70
|
return stream;
|
|
44
71
|
if (typeof client.createTalkMessageStream === 'function') {
|
|
45
|
-
|
|
72
|
+
// 4.13 expects a correlation id (tutorLM's proven pattern).
|
|
73
|
+
const correlationId = `hs-${Date.now().toString(36)}-${Math.random().toString(36).slice(2, 8)}`;
|
|
74
|
+
stream = client.createTalkMessageStream(correlationId);
|
|
46
75
|
}
|
|
47
76
|
return stream;
|
|
48
77
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"anamFace.js","sourceRoot":"","sources":["../../src/stage/anamFace.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAUH;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,IAInC;IACC,uEAAuE;IACvE,iEAAiE;IACjE,wEAAwE;IACxE,wEAAwE;IACxE,mDAAmD;IACnD,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAe,CAAA;IACzD,MAAM,YAAY,GAAG,GAAG,CAAC,YAAY,IAAI,GAAG,CAAC,OAAO,EAAE,YAAY,CAAA;IAClE,IAAI,OAAO,YAAY,KAAK,UAAU,EAAE,CAAC;QACvC,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAA;IAC/E,CAAC;IAED,MAAM,MAAM,GAAmB,YAAY,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC,CAAA;IAE3F,qEAAqE;IACrE,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IACtC,IAAI,OAAO,MAAM,CAAC,oBAAoB,KAAK,UAAU,EAAE,CAAC;QACtD,MAAM,MAAM,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAA;IAC5C,CAAC;SAAM,IAAI,OAAO,MAAM,CAAC,YAAY,KAAK,UAAU,EAAE,CAAC;QACrD,MAAM,MAAM,CAAC,YAAY,EAAE,CAAA;IAC7B,CAAC;
|
|
1
|
+
{"version":3,"file":"anamFace.js","sourceRoot":"","sources":["../../src/stage/anamFace.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAUH;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,IAInC;IACC,uEAAuE;IACvE,iEAAiE;IACjE,wEAAwE;IACxE,wEAAwE;IACxE,mDAAmD;IACnD,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAe,CAAA;IACzD,MAAM,YAAY,GAAG,GAAG,CAAC,YAAY,IAAI,GAAG,CAAC,OAAO,EAAE,YAAY,CAAA;IAClE,IAAI,OAAO,YAAY,KAAK,UAAU,EAAE,CAAC;QACvC,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAA;IAC/E,CAAC;IAED,MAAM,MAAM,GAAmB,YAAY,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC,CAAA;IAE3F,uEAAuE;IACvE,uCAAuC;IACvC,IAAI,CAAC;QACH,MAAM,SAAS,GAAI,GAA8C,CAAC,SAAS;eACrE,GAA4D,CAAC,OAAO,EAAE,SAAS,CAAA;QACrF,MAAM,WAAW,GAAI,MAAgF,CAAC,WAAW,CAAA;QACjH,IAAI,SAAS,IAAI,OAAO,WAAW,KAAK,UAAU,EAAE,CAAC;YACnD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC1C,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,CAAC,IAAI,CAAE,EAAE,CAAC,GAAG,CAAY,EAAE,EAAE;oBAC7D,IAAI,CAAC;wBAAC,OAAO,CAAC,GAAG,CAAC,wBAAwB,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAA;oBAAC,CAAC;oBAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC;gBACnF,CAAC,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;IAE7B,qEAAqE;IACrE,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IACtC,IAAI,CAAC;QAAC,OAAO,CAAC,GAAG,CAAC,yCAAyC,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAA;IAAC,CAAC;IAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC;IACrI,IAAI,OAAO,MAAM,CAAC,oBAAoB,KAAK,UAAU,EAAE,CAAC;QACtD,MAAM,MAAM,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAA;IAC5C,CAAC;SAAM,IAAI,OAAO,MAAM,CAAC,YAAY,KAAK,UAAU,EAAE,CAAC;QACrD,MAAM,MAAM,CAAC,YAAY,EAAE,CAAA;IAC7B,CAAC;IACD,IAAI,CAAC;QACH,MAAM,CAAC,GAAG,QAAQ,CAAC,cAAc,CAAC,OAAO,CAA4B,CAAA;QACrE,OAAO,CAAC,GAAG,CAAC,wDAAwD,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,YAAY,EAAE,CAAC,EAAE,UAAU,CAAC,CAAA;IACpH,CAAC;IAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC;IAEjB,IAAI,MAAM,GAA0B,IAAI,CAAA;IACxC,MAAM,YAAY,GAAG,GAA0B,EAAE;QAC/C,IAAI,MAAM;YAAE,OAAO,MAAM,CAAA;QACzB,IAAI,OAAO,MAAM,CAAC,uBAAuB,KAAK,UAAU,EAAE,CAAC;YACzD,4DAA4D;YAC5D,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAA;YAC/F,MAAM,GAAG,MAAM,CAAC,uBAAuB,CAAC,aAAa,CAAC,CAAA;QACxD,CAAC;QACD,OAAO,MAAM,CAAA;IACf,CAAC,CAAA;IAED,OAAO;QACL,eAAe,CAAC,IAAY;YAC1B,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,CAAA;YACrB,IAAI,CAAC,CAAC;gBAAE,OAAM;YACd,IAAI,CAAC;gBACH,MAAM,CAAC,GAAG,YAAY,EAAE,CAAA;gBACxB,IAAI,CAAC,EAAE,kBAAkB;oBAAE,CAAC,CAAC,kBAAkB,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;qBACpD,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,UAAU;oBAAE,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;YACjE,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,CAAC,OAAO,EAAE,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;YACrE,CAAC;QACH,CAAC;QACD,SAAS;YACP,IAAI,CAAC;gBACH,0DAA0D;gBAC1D,6DAA6D;gBAC7D,IAAI,MAAM,EAAE,UAAU;oBAAE,MAAM,CAAC,UAAU,EAAE,CAAA;qBACtC,IAAI,OAAO,MAAM,CAAC,gBAAgB,KAAK,UAAU;oBAAE,MAAM,CAAC,gBAAgB,EAAE,CAAA;YACnF,CAAC;YAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;YAC7B,MAAM,GAAG,IAAI,CAAA;QACf,CAAC;QACD,IAAI;YACF,IAAI,CAAC;gBAAC,MAAM,EAAE,UAAU,EAAE,EAAE,CAAA;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC;YAC9C,MAAM,GAAG,IAAI,CAAA;YACb,IAAI,CAAC;gBACH,IAAI,OAAO,MAAM,CAAC,aAAa,KAAK,UAAU;oBAAE,KAAK,MAAM,CAAC,aAAa,EAAE,CAAA;qBACtE,IAAI,OAAO,MAAM,CAAC,UAAU,KAAK,UAAU;oBAAE,KAAK,MAAM,CAAC,UAAU,EAAE,CAAA;YAC5E,CAAC;YAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC;QACnB,CAAC;KACF,CAAA;AACH,CAAC;AAED,SAAS,QAAQ,CAAC,EAAe;IAC/B,IAAI,CAAC,EAAE,CAAC,EAAE;QAAE,EAAE,CAAC,EAAE,GAAG,kBAAkB,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAA;IAC9E,OAAO,EAAE,CAAC,EAAE,CAAA;AACd,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"realtime.d.ts","sourceRoot":"","sources":["../../src/stage/realtime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;IACnB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACpC;AAED,MAAM,WAAW,sBAAsB;IACrC,YAAY,EAAE,MAAM,CAAA;IACpB,6CAA6C;IAC7C,WAAW,EAAE,MAAM,CAAA;IACnB,aAAa,EAAE,MAAM,CAAA;IACrB,yEAAyE;IACzE,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,KAAK,EAAE,YAAY,EAAE,CAAA;IACrB,SAAS,EAAE,WAAW,CAAA;IACtB;2DACuD;IACvD,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED,MAAM,WAAW,iBAAiB;IAChC,2DAA2D;IAC3D,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;IAChD,6DAA6D;IAC7D,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;IAChC,gEAAgE;IAChE,mBAAmB,IAAI,IAAI,CAAA;IAC3B,gCAAgC;IAChC,UAAU,CAAC,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAA;IACvF,OAAO,CAAC,GAAG,EAAE,KAAK,GAAG,IAAI,CAAA;CAC1B;AAED,MAAM,WAAW,eAAe;IAC9B,wDAAwD;IACxD,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,IAAI,CAAA;IACrD,KAAK,IAAI,IAAI,CAAA;CACd;AAED,wBAAsB,eAAe,CACnC,IAAI,EAAE,sBAAsB,EAC5B,EAAE,EAAE,iBAAiB,GACpB,OAAO,CAAC,eAAe,CAAC,
|
|
1
|
+
{"version":3,"file":"realtime.d.ts","sourceRoot":"","sources":["../../src/stage/realtime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;IACnB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACpC;AAED,MAAM,WAAW,sBAAsB;IACrC,YAAY,EAAE,MAAM,CAAA;IACpB,6CAA6C;IAC7C,WAAW,EAAE,MAAM,CAAA;IACnB,aAAa,EAAE,MAAM,CAAA;IACrB,yEAAyE;IACzE,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,KAAK,EAAE,YAAY,EAAE,CAAA;IACrB,SAAS,EAAE,WAAW,CAAA;IACtB;2DACuD;IACvD,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED,MAAM,WAAW,iBAAiB;IAChC,2DAA2D;IAC3D,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;IAChD,6DAA6D;IAC7D,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;IAChC,gEAAgE;IAChE,mBAAmB,IAAI,IAAI,CAAA;IAC3B,gCAAgC;IAChC,UAAU,CAAC,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAA;IACvF,OAAO,CAAC,GAAG,EAAE,KAAK,GAAG,IAAI,CAAA;CAC1B;AAED,MAAM,WAAW,eAAe;IAC9B,wDAAwD;IACxD,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,IAAI,CAAA;IACrD,KAAK,IAAI,IAAI,CAAA;CACd;AAED,wBAAsB,eAAe,CACnC,IAAI,EAAE,sBAAsB,EAC5B,EAAE,EAAE,iBAAiB,GACpB,OAAO,CAAC,eAAe,CAAC,CAmI1B"}
|
package/dist/stage/realtime.js
CHANGED
|
@@ -54,6 +54,10 @@ export async function connectRealtime(opts, cb) {
|
|
|
54
54
|
}
|
|
55
55
|
// Greet first — the copilot opens by speaking (instructions say how).
|
|
56
56
|
send({ type: 'response.create' });
|
|
57
|
+
try {
|
|
58
|
+
console.log('[holostaff:rt] dc open → sent session.update + response.create');
|
|
59
|
+
}
|
|
60
|
+
catch { /* */ }
|
|
57
61
|
});
|
|
58
62
|
dc.addEventListener('message', (ev) => {
|
|
59
63
|
let msg;
|
|
@@ -63,8 +67,22 @@ export async function connectRealtime(opts, cb) {
|
|
|
63
67
|
catch {
|
|
64
68
|
return;
|
|
65
69
|
}
|
|
70
|
+
// TEMP diagnostic — surface every Realtime event type so we can see
|
|
71
|
+
// what the provider actually emits (event names vary by version).
|
|
72
|
+
try {
|
|
73
|
+
console.log('[holostaff:rt] event', msg.type, msg.delta ? `delta="${String(msg.delta).slice(0, 40)}"` : '');
|
|
74
|
+
}
|
|
75
|
+
catch { /* */ }
|
|
66
76
|
handleServerEvent(msg);
|
|
67
77
|
});
|
|
78
|
+
dc.addEventListener('error', (e) => { try {
|
|
79
|
+
console.warn('[holostaff:rt] dc error', e);
|
|
80
|
+
}
|
|
81
|
+
catch { /* */ } });
|
|
82
|
+
dc.addEventListener('close', () => { try {
|
|
83
|
+
console.log('[holostaff:rt] dc closed');
|
|
84
|
+
}
|
|
85
|
+
catch { /* */ } });
|
|
68
86
|
const handleServerEvent = (msg) => {
|
|
69
87
|
switch (msg.type) {
|
|
70
88
|
// Text deltas — naming varies across Realtime versions.
|
|
@@ -119,6 +137,11 @@ export async function connectRealtime(opts, cb) {
|
|
|
119
137
|
}
|
|
120
138
|
const answer = await sdpRes.text();
|
|
121
139
|
await pc.setRemoteDescription({ type: 'answer', sdp: answer });
|
|
140
|
+
try {
|
|
141
|
+
console.log('[holostaff:rt] SDP answer applied; ice/conn state:', pc.iceConnectionState, pc.connectionState);
|
|
142
|
+
pc.addEventListener('connectionstatechange', () => console.log('[holostaff:rt] pc state', pc.connectionState));
|
|
143
|
+
}
|
|
144
|
+
catch { /* */ }
|
|
122
145
|
return {
|
|
123
146
|
sendToolResult(callId, output) {
|
|
124
147
|
send({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"realtime.js","sourceRoot":"","sources":["../../src/stage/realtime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAwCH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,IAA4B,EAC5B,EAAqB;IAErB,MAAM,EAAE,GAAG,IAAI,iBAAiB,EAAE,CAAA;IAClC,+DAA+D;IAC/D,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE;QAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,CAAA;IAEvF,MAAM,EAAE,GAAG,EAAE,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAA;IAC7C,IAAI,MAAM,GAAG,UAAU,EAAE,CAAA;IAEzB,MAAM,IAAI,GAAG,CAAC,GAA4B,EAAQ,EAAE;QAClD,IAAI,CAAC;YAAC,IAAI,EAAE,CAAC,UAAU,KAAK,MAAM;gBAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAA;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;IAC3F,CAAC,CAAA;IAED,EAAE,CAAC,gBAAgB,CAAC,MAAM,EAAE,GAAG,EAAE;QAC/B,+DAA+D;QAC/D,6CAA6C;QAC7C,IAAI,CAAC;YACH,IAAI,EAAE,gBAAgB;YACtB,OAAO,EAAE;gBACP,UAAU,EAAE,CAAC,MAAM,CAAC;gBACpB,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;oBAC1B,IAAI,EAAE,UAAU;oBAChB,IAAI,EAAE,CAAC,CAAC,IAAI;oBACZ,WAAW,EAAE,CAAC,CAAC,WAAW;oBAC1B,UAAU,EAAE,CAAC,CAAC,UAAU;iBACzB,CAAC,CAAC;gBACH,WAAW,EAAE,MAAM;gBACnB,yBAAyB,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE;gBACjD,cAAc,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,GAAG,EAAE,mBAAmB,EAAE,GAAG,EAAE;aACjF;SACF,CAAC,CAAA;QACF,8DAA8D;QAC9D,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,IAAI,CAAC;gBACH,IAAI,EAAE,0BAA0B;gBAChC,IAAI,EAAE;oBACJ,IAAI,EAAE,SAAS;oBACf,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC;iBAC1D;aACF,CAAC,CAAA;QACJ,CAAC;QACD,sEAAsE;QACtE,IAAI,CAAC,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"realtime.js","sourceRoot":"","sources":["../../src/stage/realtime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAwCH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,IAA4B,EAC5B,EAAqB;IAErB,MAAM,EAAE,GAAG,IAAI,iBAAiB,EAAE,CAAA;IAClC,+DAA+D;IAC/D,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE;QAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,CAAA;IAEvF,MAAM,EAAE,GAAG,EAAE,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAA;IAC7C,IAAI,MAAM,GAAG,UAAU,EAAE,CAAA;IAEzB,MAAM,IAAI,GAAG,CAAC,GAA4B,EAAQ,EAAE;QAClD,IAAI,CAAC;YAAC,IAAI,EAAE,CAAC,UAAU,KAAK,MAAM;gBAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAA;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;IAC3F,CAAC,CAAA;IAED,EAAE,CAAC,gBAAgB,CAAC,MAAM,EAAE,GAAG,EAAE;QAC/B,+DAA+D;QAC/D,6CAA6C;QAC7C,IAAI,CAAC;YACH,IAAI,EAAE,gBAAgB;YACtB,OAAO,EAAE;gBACP,UAAU,EAAE,CAAC,MAAM,CAAC;gBACpB,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;oBAC1B,IAAI,EAAE,UAAU;oBAChB,IAAI,EAAE,CAAC,CAAC,IAAI;oBACZ,WAAW,EAAE,CAAC,CAAC,WAAW;oBAC1B,UAAU,EAAE,CAAC,CAAC,UAAU;iBACzB,CAAC,CAAC;gBACH,WAAW,EAAE,MAAM;gBACnB,yBAAyB,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE;gBACjD,cAAc,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,GAAG,EAAE,mBAAmB,EAAE,GAAG,EAAE;aACjF;SACF,CAAC,CAAA;QACF,8DAA8D;QAC9D,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,IAAI,CAAC;gBACH,IAAI,EAAE,0BAA0B;gBAChC,IAAI,EAAE;oBACJ,IAAI,EAAE,SAAS;oBACf,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC;iBAC1D;aACF,CAAC,CAAA;QACJ,CAAC;QACD,sEAAsE;QACtE,IAAI,CAAC,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAA;QACjC,IAAI,CAAC;YAAC,OAAO,CAAC,GAAG,CAAC,gEAAgE,CAAC,CAAA;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC;IACvG,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC,EAAgB,EAAE,EAAE;QAClD,IAAI,GAAwB,CAAA;QAC5B,IAAI,CAAC;YAAC,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,IAAc,CAAwB,CAAA;QAAC,CAAC;QAAC,MAAM,CAAC;YAAC,OAAM;QAAC,CAAC;QACnF,oEAAoE;QACpE,kEAAkE;QAClE,IAAI,CAAC;YAAC,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,GAAG,CAAC,IAAI,EAAG,GAA0B,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,MAAM,CAAE,GAA0B,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC;QACnL,iBAAiB,CAAC,GAAG,CAAC,CAAA;IACxB,CAAC,CAAC,CAAA;IACF,EAAE,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC;QAAC,OAAO,CAAC,IAAI,CAAC,yBAAyB,EAAE,CAAC,CAAC,CAAA;IAAC,CAAC;IAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAC3G,EAAE,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;QAAC,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAA;IAAC,CAAC;IAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAEvG,MAAM,iBAAiB,GAAG,CAAC,GAAwB,EAAQ,EAAE;QAC3D,QAAQ,GAAG,CAAC,IAAI,EAAE,CAAC;YACjB,wDAAwD;YACxD,KAAK,qBAAqB,CAAC;YAC3B,KAAK,4BAA4B;gBAC/B,IAAI,OAAO,GAAG,CAAC,KAAK,KAAK,QAAQ;oBAAE,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;gBACpE,MAAK;YACP,KAAK,oBAAoB,CAAC;YAC1B,KAAK,2BAA2B,CAAC;YACjC,KAAK,eAAe;gBAClB,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;gBACrB,MAAM,GAAG,UAAU,EAAE,CAAA;gBACrB,MAAK;YACP,KAAK,mCAAmC;gBACtC,EAAE,CAAC,mBAAmB,EAAE,CAAA;gBACxB,MAAK;YACP,KAAK,uCAAuC,CAAC,CAAC,CAAC;gBAC7C,MAAM,IAAI,GAAG,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAA;gBACzD,MAAM,MAAM,GAAG,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAA;gBACjE,IAAI,IAAI,GAA4B,EAAE,CAAA;gBACtC,IAAI,OAAO,GAAG,CAAC,SAAS,KAAK,QAAQ,EAAE,CAAC;oBACtC,IAAI,CAAC;wBAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAA4B,CAAA;oBAAC,CAAC;oBAAC,MAAM,CAAC,CAAC,aAAa,CAAC,CAAC;gBAC7F,CAAC;gBACD,IAAI,IAAI,IAAI,MAAM;oBAAE,EAAE,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;gBACzD,MAAK;YACP,CAAC;YACD,KAAK,OAAO;gBACV,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,OAAO,GAAG,CAAC,KAAK,KAAK,QAAQ,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAA;gBAChH,MAAK;QACT,CAAC;IACH,CAAC,CAAA;IAED,uDAAuD;IACvD,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,WAAW,EAAE,CAAA;IACpC,MAAM,EAAE,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAA;IACnC,MAAM,mBAAmB,CAAC,EAAE,CAAC,CAAA;IAE7B,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,WAAW,UAAU,kBAAkB,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,EAAE;QAChG,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,aAAa,EAAE,UAAU,IAAI,CAAC,YAAY,EAAE;YAC5C,cAAc,EAAE,iBAAiB;SAClC;QACD,IAAI,EAAE,EAAE,CAAC,gBAAgB,EAAE,GAAG,IAAI,KAAK,CAAC,GAAG,IAAI,EAAE;KAClD,CAAC,CAAA;IACF,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;QACf,EAAE,CAAC,KAAK,EAAE,CAAA;QACV,MAAM,IAAI,KAAK,CAAC,gBAAgB,MAAM,CAAC,MAAM,KAAK,CAAC,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAA;IAC1G,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAA;IAClC,MAAM,EAAE,CAAC,oBAAoB,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,CAAA;IAC9D,IAAI,CAAC;QACH,OAAO,CAAC,GAAG,CAAC,oDAAoD,EAAE,EAAE,CAAC,kBAAkB,EAAE,EAAE,CAAC,eAAe,CAAC,CAAA;QAC5G,EAAE,CAAC,gBAAgB,CAAC,uBAAuB,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,yBAAyB,EAAE,EAAE,CAAC,eAAe,CAAC,CAAC,CAAA;IAChH,CAAC;IAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC;IAEjB,OAAO;QACL,cAAc,CAAC,MAAM,EAAE,MAAM;YAC3B,IAAI,CAAC;gBACH,IAAI,EAAE,0BAA0B;gBAChC,IAAI,EAAE;oBACJ,IAAI,EAAE,sBAAsB;oBAC5B,OAAO,EAAE,MAAM;oBACf,MAAM,EAAE,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;iBACrE;aACF,CAAC,CAAA;YACF,IAAI,CAAC,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAA;QACnC,CAAC;QACD,KAAK;YACH,IAAI,CAAC;gBAAC,EAAE,CAAC,KAAK,EAAE,CAAA;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC;YAClC,IAAI,CAAC;gBAAC,EAAE,CAAC,KAAK,EAAE,CAAA;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC;QACpC,CAAC;KACF,CAAA;AACH,CAAC;AAaD,SAAS,UAAU;IACjB,OAAO,QAAQ,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAA;AACpF,CAAC;AAED;oCACoC;AACpC,SAAS,mBAAmB,CAAC,EAAqB;IAChD,IAAI,EAAE,CAAC,iBAAiB,KAAK,UAAU;QAAE,OAAO,OAAO,CAAC,OAAO,EAAE,CAAA;IACjE,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE;QAC3B,MAAM,IAAI,GAAG,GAAS,EAAE;YACtB,EAAE,CAAC,mBAAmB,CAAC,yBAAyB,EAAE,KAAK,CAAC,CAAA;YACxD,OAAO,EAAE,CAAA;QACX,CAAC,CAAA;QACD,MAAM,KAAK,GAAG,GAAS,EAAE,GAAG,IAAI,EAAE,CAAC,iBAAiB,KAAK,UAAU;YAAE,IAAI,EAAE,CAAA,CAAC,CAAC,CAAA;QAC7E,EAAE,CAAC,gBAAgB,CAAC,yBAAyB,EAAE,KAAK,CAAC,CAAA;QACrD,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA,CAAC,qCAAqC;IAC9D,CAAC,CAAC,CAAA;AACJ,CAAC"}
|
package/dist/stage/ui.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ui.d.ts","sourceRoot":"","sources":["../../src/stage/ui.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAE7C,MAAM,MAAM,UAAU,GAAG,YAAY,GAAG,WAAW,GAAG,UAAU,GAAG,UAAU,CAAA;AAI7E,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,UAAU,CAAA;IAChB,WAAW,EAAE,MAAM,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,MAAM,IAAI,CAAA;CACpB;AAED,MAAM,WAAW,OAAO;IACtB,iCAAiC;IACjC,KAAK,EAAE,gBAAgB,CAAA;IACvB,QAAQ,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI,CAAA;IACjC,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IACjC,6CAA6C;IAC7C,OAAO,IAAI,IAAI,CAAA;CAChB;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,
|
|
1
|
+
{"version":3,"file":"ui.d.ts","sourceRoot":"","sources":["../../src/stage/ui.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAE7C,MAAM,MAAM,UAAU,GAAG,YAAY,GAAG,WAAW,GAAG,UAAU,GAAG,UAAU,CAAA;AAI7E,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,UAAU,CAAA;IAChB,WAAW,EAAE,MAAM,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,MAAM,IAAI,CAAA;CACpB;AAED,MAAM,WAAW,OAAO;IACtB,iCAAiC;IACjC,KAAK,EAAE,gBAAgB,CAAA;IACvB,QAAQ,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI,CAAA;IACjC,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IACjC,6CAA6C;IAC7C,OAAO,IAAI,IAAI,CAAA;CAChB;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAmHvD"}
|
package/dist/stage/ui.js
CHANGED
|
@@ -9,10 +9,13 @@
|
|
|
9
9
|
*/
|
|
10
10
|
const CONTAINER_ID = 'holostaff-stage-root';
|
|
11
11
|
export function startStageUi(deps) {
|
|
12
|
+
// Light DOM (NOT shadow): Anam's streamToVideoElement resolves the
|
|
13
|
+
// <video> via document.getElementById, which can't see shadow roots.
|
|
14
|
+
// Styles are scoped under #holostaff-stage-root instead.
|
|
12
15
|
const container = ensureContainer();
|
|
13
|
-
const root = container
|
|
16
|
+
const root = container;
|
|
14
17
|
root.innerHTML = '';
|
|
15
|
-
|
|
18
|
+
ensureStageStyle(deps.dock);
|
|
16
19
|
const reducedMotion = typeof window.matchMedia === 'function'
|
|
17
20
|
&& window.matchMedia('(prefers-reduced-motion: reduce)').matches;
|
|
18
21
|
const sheet = document.createElement('div');
|
|
@@ -117,60 +120,55 @@ function ensureContainer() {
|
|
|
117
120
|
return el;
|
|
118
121
|
el = document.createElement('div');
|
|
119
122
|
el.id = CONTAINER_ID;
|
|
123
|
+
// Light DOM — no shadow root (Anam needs the <video> findable via
|
|
124
|
+
// document.getElementById). pointer-events:none lets the page behind
|
|
125
|
+
// the bottom-sheet stay interactive; .sheet re-enables them.
|
|
120
126
|
el.style.cssText = 'position:fixed;inset:0;z-index:2147483646;pointer-events:none';
|
|
121
|
-
el.attachShadow({ mode: 'open' });
|
|
122
127
|
document.body.appendChild(el);
|
|
123
128
|
return el;
|
|
124
129
|
}
|
|
125
|
-
|
|
126
|
-
|
|
130
|
+
const STYLE_ID = 'holostaff-stage-style';
|
|
131
|
+
/** Inject the Stage styles into <head>, scoped under #holostaff-stage-root
|
|
132
|
+
* (light DOM — no shadow root to isolate us, so every selector is
|
|
133
|
+
* prefixed and the sheet gets an explicit box-sizing reset). */
|
|
134
|
+
function ensureStageStyle(dock) {
|
|
127
135
|
const onRight = dock.endsWith('right');
|
|
128
136
|
const side = onRight ? 'right: 20px;' : 'left: 20px;';
|
|
129
137
|
const origin = `${dock.startsWith('bottom') ? 'bottom' : 'top'} ${onRight ? 'right' : 'left'}`;
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
.sheet {
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
}
|
|
145
|
-
.
|
|
146
|
-
.
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
}
|
|
150
|
-
.
|
|
151
|
-
.
|
|
152
|
-
.
|
|
153
|
-
.
|
|
154
|
-
|
|
155
|
-
.
|
|
156
|
-
|
|
157
|
-
.x { font-size: 14px; padding: 6px 9px; }
|
|
158
|
-
.cc:hover, .x:hover { background: rgba(255,255,255,0.16); }
|
|
159
|
-
.avatar-area { position: relative; flex: 1; min-height: 0; background: #16181d; display: flex; align-items: center; justify-content: center; }
|
|
160
|
-
.avatar-video { width: 100%; height: 100%; object-fit: cover; }
|
|
161
|
-
.state-ring {
|
|
162
|
-
position: absolute; inset: 0; pointer-events: none;
|
|
163
|
-
box-shadow: inset 0 0 0 0 rgba(79,139,255,0); transition: box-shadow 200ms ease-out;
|
|
164
|
-
}
|
|
165
|
-
.sheet[data-state="listening"] .state-ring { box-shadow: inset 0 0 0 3px rgba(79,139,255,0.7); }
|
|
166
|
-
.sheet[data-state="thinking"] .state-ring { box-shadow: inset 0 0 0 3px rgba(255,255,255,0.25); }
|
|
167
|
-
.sheet[data-state="speaking"] .state-ring { box-shadow: inset 0 0 0 3px rgba(120,220,160,0.6); }
|
|
168
|
-
.state-label { padding: 10px 16px 0; font-size: 12px; color: #9aa0aa; }
|
|
169
|
-
.captions { display: none; padding: 8px 16px; max-height: 96px; overflow-y: auto; color: #e8e8ea; font-size: 14px; }
|
|
170
|
-
.captions.show { display: block; }
|
|
171
|
-
.hint { padding: 8px 16px 14px; font-size: 11px; color: #6b7280; }
|
|
172
|
-
@media (prefers-reduced-motion: reduce) { .sheet { transition: none; } }
|
|
138
|
+
const S = `#${CONTAINER_ID}`;
|
|
139
|
+
const css = `
|
|
140
|
+
${S} .sheet { pointer-events: auto; box-sizing: border-box; position: fixed; ${side} bottom: 20px; width: 380px; max-width: calc(100vw - 32px); height: 560px; max-height: calc(100vh - 40px); background: #0e0f12; color: #fafafa; border-radius: 20px; overflow: hidden; box-shadow: 0 24px 64px rgba(0,0,0,0.45); display: flex; flex-direction: column; font: 14px/1.5 -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif; transform-origin: ${origin}; opacity: 1; transition: opacity 220ms ease-out, transform 220ms cubic-bezier(0.16,1,0.3,1); }
|
|
141
|
+
${S} .sheet * { box-sizing: border-box; }
|
|
142
|
+
${S} .sheet.enter { opacity: 0; transform: scale(0.9) translateY(12px); }
|
|
143
|
+
${S} .sheet.exit { opacity: 0; transform: scale(0.92) translateY(12px); }
|
|
144
|
+
@media (max-width: 480px) { ${S} .sheet { left: 0; right: 0; bottom: 0; width: 100%; height: 88vh; border-radius: 20px 20px 0 0; } }
|
|
145
|
+
${S} .head { display: flex; align-items: center; gap: 10px; padding: 14px 16px; }
|
|
146
|
+
${S} .idblock { flex: 1; min-width: 0; }
|
|
147
|
+
${S} .name { font-weight: 600; font-size: 15px; }
|
|
148
|
+
${S} .scope { font-size: 12px; color: #9aa0aa; margin-top: 1px; }
|
|
149
|
+
${S} .cc, ${S} .x { appearance: none; border: 0; background: rgba(255,255,255,0.08); color: #cfd2d8; cursor: pointer; border-radius: 8px; }
|
|
150
|
+
${S} .cc { font-size: 11px; font-weight: 700; padding: 5px 8px; }
|
|
151
|
+
${S} .cc.on { background: #4f8bff; color: #fff; }
|
|
152
|
+
${S} .x { font-size: 14px; padding: 6px 9px; }
|
|
153
|
+
${S} .cc:hover, ${S} .x:hover { background: rgba(255,255,255,0.16); }
|
|
154
|
+
${S} .avatar-area { position: relative; flex: 1; min-height: 0; background: #16181d; display: flex; align-items: center; justify-content: center; }
|
|
155
|
+
${S} .avatar-video { width: 100%; height: 100%; object-fit: cover; }
|
|
156
|
+
${S} .state-ring { position: absolute; inset: 0; pointer-events: none; box-shadow: inset 0 0 0 0 rgba(79,139,255,0); transition: box-shadow 200ms ease-out; }
|
|
157
|
+
${S} .sheet[data-state="listening"] .state-ring { box-shadow: inset 0 0 0 3px rgba(79,139,255,0.7); }
|
|
158
|
+
${S} .sheet[data-state="thinking"] .state-ring { box-shadow: inset 0 0 0 3px rgba(255,255,255,0.25); }
|
|
159
|
+
${S} .sheet[data-state="speaking"] .state-ring { box-shadow: inset 0 0 0 3px rgba(120,220,160,0.6); }
|
|
160
|
+
${S} .state-label { padding: 10px 16px 0; font-size: 12px; color: #9aa0aa; }
|
|
161
|
+
${S} .captions { display: none; padding: 8px 16px; max-height: 96px; overflow-y: auto; color: #e8e8ea; font-size: 14px; }
|
|
162
|
+
${S} .captions.show { display: block; }
|
|
163
|
+
${S} .hint { padding: 8px 16px 14px; font-size: 11px; color: #6b7280; }
|
|
164
|
+
@media (prefers-reduced-motion: reduce) { ${S} .sheet { transition: none; } }
|
|
173
165
|
`;
|
|
174
|
-
|
|
166
|
+
let style = document.getElementById(STYLE_ID);
|
|
167
|
+
if (!style) {
|
|
168
|
+
style = document.createElement('style');
|
|
169
|
+
style.id = STYLE_ID;
|
|
170
|
+
document.head.appendChild(style);
|
|
171
|
+
}
|
|
172
|
+
style.textContent = css;
|
|
175
173
|
}
|
|
176
174
|
//# sourceMappingURL=ui.js.map
|
package/dist/stage/ui.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ui.js","sourceRoot":"","sources":["../../src/stage/ui.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAMH,MAAM,YAAY,GAAG,sBAAsB,CAAA;AAkB3C,MAAM,UAAU,YAAY,CAAC,IAAiB;IAC5C,MAAM,SAAS,GAAG,eAAe,EAAE,CAAA;IACnC,MAAM,IAAI,GAAG,SAAS,
|
|
1
|
+
{"version":3,"file":"ui.js","sourceRoot":"","sources":["../../src/stage/ui.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@holostaff/sdk",
|
|
3
|
-
"version": "0.9.
|
|
3
|
+
"version": "0.9.3",
|
|
4
4
|
"description": "Holostaff SDK — lifetime identity, stage detection, custom signal probes, and the living-portrait presence layer (chip, note, Theater, voice Stage) for the Holostaff runtime.",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"homepage": "https://docs.holostaff.ai",
|