@holostaff/sdk 0.4.1 → 0.9.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/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +102 -11
- package/dist/index.js.map +1 -1
- package/dist/presence/chip.d.ts +37 -0
- package/dist/presence/chip.d.ts.map +1 -0
- package/dist/presence/chip.js +348 -0
- package/dist/presence/chip.js.map +1 -0
- package/dist/presence/index.d.ts +35 -0
- package/dist/presence/index.d.ts.map +1 -0
- package/dist/presence/index.js +81 -0
- package/dist/presence/index.js.map +1 -0
- package/dist/presence/note.d.ts +47 -0
- package/dist/presence/note.d.ts.map +1 -0
- package/dist/presence/note.js +501 -0
- package/dist/presence/note.js.map +1 -0
- package/dist/presence/types.d.ts +69 -0
- package/dist/presence/types.d.ts.map +1 -0
- package/dist/presence/types.js +8 -0
- package/dist/presence/types.js.map +1 -0
- package/dist/stage/anamFace.d.ts +32 -0
- package/dist/stage/anamFace.d.ts.map +1 -0
- package/dist/stage/anamFace.js +95 -0
- package/dist/stage/anamFace.js.map +1 -0
- package/dist/stage/index.d.ts +39 -0
- package/dist/stage/index.d.ts.map +1 -0
- package/dist/stage/index.js +182 -0
- package/dist/stage/index.js.map +1 -0
- package/dist/stage/realtime.d.ts +50 -0
- package/dist/stage/realtime.d.ts.map +1 -0
- package/dist/stage/realtime.js +165 -0
- package/dist/stage/realtime.js.map +1 -0
- package/dist/stage/ui.d.ts +27 -0
- package/dist/stage/ui.d.ts.map +1 -0
- package/dist/stage/ui.js +176 -0
- package/dist/stage/ui.js.map +1 -0
- package/dist/theater/index.d.ts +46 -0
- package/dist/theater/index.d.ts.map +1 -0
- package/dist/theater/index.js +222 -0
- package/dist/theater/index.js.map +1 -0
- package/dist/transport.d.ts +6 -0
- package/dist/transport.d.ts.map +1 -1
- package/dist/transport.js +26 -0
- package/dist/transport.js.map +1 -1
- package/dist/types.d.ts +46 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +5 -2
- package/dist/widget.d.ts +0 -48
- package/dist/widget.d.ts.map +0 -1
- package/dist/widget.js +0 -311
- package/dist/widget.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/theater/index.ts"],"names":[],"mappings":"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"}
|
package/dist/transport.d.ts
CHANGED
|
@@ -21,6 +21,12 @@ export declare function resolveTransportConfig(opts: InitOptions): TransportConf
|
|
|
21
21
|
* or HTTP error. Errors route to onError; never throws.
|
|
22
22
|
*/
|
|
23
23
|
export declare function postJson(cfg: TransportConfig, path: string, body: Record<string, unknown>): Promise<boolean>;
|
|
24
|
+
/**
|
|
25
|
+
* POST JSON and return the parsed 2xx response body (or null on error).
|
|
26
|
+
* Used where the caller needs the response — e.g. the voice-Stage mint.
|
|
27
|
+
* Never throws; routes errors to onError.
|
|
28
|
+
*/
|
|
29
|
+
export declare function postJsonResult<T>(cfg: TransportConfig, path: string, body: Record<string, unknown>): Promise<T | null>;
|
|
24
30
|
/**
|
|
25
31
|
* POST via sendBeacon — survives page navigation. Used by the close
|
|
26
32
|
* path on pagehide/beforeunload. Falls back to fetch with keepalive
|
package/dist/transport.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../src/transport.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAI7C,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,WAAW,CAAC,SAAS,CAAC,CAAA;CACjC;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,WAAW,GAAG,eAAe,CAMzE;AAQD;;;GAGG;AACH,wBAAsB,QAAQ,CAC5B,GAAG,EAAE,eAAe,EACpB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,OAAO,CAAC,OAAO,CAAC,CAwBlB;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CACxB,GAAG,EAAE,eAAe,EACpB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,OAAO,CA2BT;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAC/B,GAAG,EAAE,eAAe,EACpB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,GACf,WAAW,GAAG,IAAI,CAapB"}
|
|
1
|
+
{"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../src/transport.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAI7C,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,WAAW,CAAC,SAAS,CAAC,CAAA;CACjC;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,WAAW,GAAG,eAAe,CAMzE;AAQD;;;GAGG;AACH,wBAAsB,QAAQ,CAC5B,GAAG,EAAE,eAAe,EACpB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,OAAO,CAAC,OAAO,CAAC,CAwBlB;AAED;;;;GAIG;AACH,wBAAsB,cAAc,CAAC,CAAC,EACpC,GAAG,EAAE,eAAe,EACpB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,CAsBnB;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CACxB,GAAG,EAAE,eAAe,EACpB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,OAAO,CA2BT;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAC/B,GAAG,EAAE,eAAe,EACpB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,GACf,WAAW,GAAG,IAAI,CAapB"}
|
package/dist/transport.js
CHANGED
|
@@ -50,6 +50,32 @@ export async function postJson(cfg, path, body) {
|
|
|
50
50
|
return false;
|
|
51
51
|
}
|
|
52
52
|
}
|
|
53
|
+
/**
|
|
54
|
+
* POST JSON and return the parsed 2xx response body (or null on error).
|
|
55
|
+
* Used where the caller needs the response — e.g. the voice-Stage mint.
|
|
56
|
+
* Never throws; routes errors to onError.
|
|
57
|
+
*/
|
|
58
|
+
export async function postJsonResult(cfg, path, body) {
|
|
59
|
+
try {
|
|
60
|
+
const res = await fetch(`${cfg.baseUrl}${path}`, {
|
|
61
|
+
method: 'POST',
|
|
62
|
+
headers: buildHeaders(cfg),
|
|
63
|
+
body: JSON.stringify(body),
|
|
64
|
+
credentials: 'omit',
|
|
65
|
+
mode: 'cors',
|
|
66
|
+
});
|
|
67
|
+
if (!res.ok) {
|
|
68
|
+
const text = await res.text().catch(() => '');
|
|
69
|
+
cfg.onError?.(new Error(`HTTP ${res.status} ${res.statusText}${text ? ` — ${text}` : ''}`), { method: 'POST', path });
|
|
70
|
+
return null;
|
|
71
|
+
}
|
|
72
|
+
return await res.json();
|
|
73
|
+
}
|
|
74
|
+
catch (err) {
|
|
75
|
+
cfg.onError?.(err instanceof Error ? err : new Error(String(err)), { method: 'POST', path });
|
|
76
|
+
return null;
|
|
77
|
+
}
|
|
78
|
+
}
|
|
53
79
|
/**
|
|
54
80
|
* POST via sendBeacon — survives page navigation. Used by the close
|
|
55
81
|
* path on pagehide/beforeunload. Falls back to fetch with keepalive
|
package/dist/transport.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transport.js","sourceRoot":"","sources":["../src/transport.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"transport.js","sourceRoot":"","sources":["../src/transport.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -21,6 +21,31 @@ export interface ObserveOptions {
|
|
|
21
21
|
*/
|
|
22
22
|
rrweb?: Record<string, unknown>;
|
|
23
23
|
}
|
|
24
|
+
/** Where the presence chip docks. Default bottom-right. */
|
|
25
|
+
export type DockCorner = 'bottom-right' | 'bottom-left' | 'top-right' | 'top-left';
|
|
26
|
+
export interface PresenceOptions {
|
|
27
|
+
/** Master switch. Default true. */
|
|
28
|
+
enabled?: boolean;
|
|
29
|
+
/** Dock corner. Default 'bottom-right'. */
|
|
30
|
+
dock?: DockCorner;
|
|
31
|
+
/** Pixel offset from the docked corner. Default 16. */
|
|
32
|
+
offset?: number;
|
|
33
|
+
}
|
|
34
|
+
export interface TheaterOptions {
|
|
35
|
+
/** Master switch. Default true (degrades gracefully if CSP-blocked). */
|
|
36
|
+
enabled?: boolean;
|
|
37
|
+
/** Theater service origin. Defaults to the public Holostaff Theater. */
|
|
38
|
+
baseUrl?: string;
|
|
39
|
+
}
|
|
40
|
+
export interface VoiceOptions {
|
|
41
|
+
/**
|
|
42
|
+
* Master switch for the voice Stage (P6). Default true. When on, the
|
|
43
|
+
* chip click + a note's "Talk" CTA open a live voice conversation
|
|
44
|
+
* (needs the host to allow `microphone` for its own origin). Set
|
|
45
|
+
* `voice: { enabled: false }` to ship presence + Theater without voice.
|
|
46
|
+
*/
|
|
47
|
+
enabled?: boolean;
|
|
48
|
+
}
|
|
24
49
|
export interface InitOptions {
|
|
25
50
|
/**
|
|
26
51
|
* rrweb session-capture options. Capture is ON by default — the
|
|
@@ -30,6 +55,27 @@ export interface InitOptions {
|
|
|
30
55
|
* `observe: { enabled: false }` to opt a host out entirely.
|
|
31
56
|
*/
|
|
32
57
|
observe?: ObserveOptions;
|
|
58
|
+
/**
|
|
59
|
+
* Living-portrait presence chip (P2). On by default. Configure the
|
|
60
|
+
* dock corner here when the default bottom-right collides with a host
|
|
61
|
+
* chat widget: `presence: { dock: 'bottom-left' }`. Set
|
|
62
|
+
* `presence: { enabled: false }` to suppress the chip entirely.
|
|
63
|
+
*/
|
|
64
|
+
presence?: PresenceOptions;
|
|
65
|
+
/**
|
|
66
|
+
* Theater presentation overlay (P5). On by default; opens from a
|
|
67
|
+
* note's "Show me" CTA (and the Stage's `present()` in P6). Degrades
|
|
68
|
+
* gracefully if the host's `frame-src` CSP blocks the iframe. Point
|
|
69
|
+
* `theater: { baseUrl }` at a self-hosted Theater service if needed.
|
|
70
|
+
*/
|
|
71
|
+
theater?: TheaterOptions;
|
|
72
|
+
/**
|
|
73
|
+
* Live voice Stage (P6). On by default; the chip click + a note's
|
|
74
|
+
* "Talk" open a voice conversation (Realtime brain + Anam face). Needs
|
|
75
|
+
* host `microphone` permission. `voice: { enabled: false }` ships
|
|
76
|
+
* presence + Theater without voice.
|
|
77
|
+
*/
|
|
78
|
+
voice?: VoiceOptions;
|
|
33
79
|
/** The knowledge source id (e.g. 'cli-source-abc'). Provided by the deploy PR. */
|
|
34
80
|
sourceId: string;
|
|
35
81
|
/**
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,MAAM,MAAM,WAAW,GACnB,WAAW,GACX,WAAW,GACX,WAAW,GACX,eAAe,GACf,YAAY,GACZ,UAAU,GACV,WAAW,CAAA;AAEf,eAAO,MAAM,aAAa,EAAE,SAAS,WAAW,EAQtC,CAAA;AAEV,MAAM,WAAW,cAAc;IAC7B,qEAAqE;IACrE,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,2DAA2D;IAC3D,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,+DAA+D;IAC/D,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAChC;AAED,MAAM,WAAW,WAAW;IAC1B;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,cAAc,CAAA;IACxB,kFAAkF;IAClF,QAAQ,EAAE,MAAM,CAAA;IAChB;;;;OAIG;IACH,QAAQ,EAAE,MAAM,CAAA;IAChB,+EAA+E;IAC/E,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;IACf;;;;OAIG;IACH,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAA;CACtE;AAED,MAAM,MAAM,mBAAmB,GAC3B,SAAS,GACT,WAAW,GACX,SAAS,GACT,YAAY,GACZ,SAAS,GACT,SAAS,CAAA"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,MAAM,MAAM,WAAW,GACnB,WAAW,GACX,WAAW,GACX,WAAW,GACX,eAAe,GACf,YAAY,GACZ,UAAU,GACV,WAAW,CAAA;AAEf,eAAO,MAAM,aAAa,EAAE,SAAS,WAAW,EAQtC,CAAA;AAEV,MAAM,WAAW,cAAc;IAC7B,qEAAqE;IACrE,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,2DAA2D;IAC3D,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,+DAA+D;IAC/D,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAChC;AAED,2DAA2D;AAC3D,MAAM,MAAM,UAAU,GAAG,cAAc,GAAG,aAAa,GAAG,WAAW,GAAG,UAAU,CAAA;AAElF,MAAM,WAAW,eAAe;IAC9B,mCAAmC;IACnC,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,2CAA2C;IAC3C,IAAI,CAAC,EAAE,UAAU,CAAA;IACjB,uDAAuD;IACvD,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,WAAW,cAAc;IAC7B,wEAAwE;IACxE,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,wEAAwE;IACxE,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,YAAY;IAC3B;;;;;OAKG;IACH,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,MAAM,WAAW,WAAW;IAC1B;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,cAAc,CAAA;IACxB;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,eAAe,CAAA;IAC1B;;;;;OAKG;IACH,OAAO,CAAC,EAAE,cAAc,CAAA;IACxB;;;;;OAKG;IACH,KAAK,CAAC,EAAE,YAAY,CAAA;IACpB,kFAAkF;IAClF,QAAQ,EAAE,MAAM,CAAA;IAChB;;;;OAIG;IACH,QAAQ,EAAE,MAAM,CAAA;IAChB,+EAA+E;IAC/E,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;IACf;;;;OAIG;IACH,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAA;CACtE;AAED,MAAM,MAAM,mBAAmB,GAC3B,SAAS,GACT,WAAW,GACX,SAAS,GACT,YAAY,GACZ,SAAS,GACT,SAAS,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@holostaff/sdk",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"description": "Holostaff SDK — lifetime identity, stage detection, custom signal probes, and the
|
|
3
|
+
"version": "0.9.0",
|
|
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",
|
|
7
7
|
"type": "module",
|
|
@@ -41,5 +41,8 @@
|
|
|
41
41
|
},
|
|
42
42
|
"dependencies": {
|
|
43
43
|
"rrweb": "^2.0.0-alpha.4"
|
|
44
|
+
},
|
|
45
|
+
"optionalDependencies": {
|
|
46
|
+
"@anam-ai/js-sdk": "^3.0.0"
|
|
44
47
|
}
|
|
45
48
|
}
|
package/dist/widget.d.ts
DELETED
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Widget — the intervention card.
|
|
3
|
-
*
|
|
4
|
-
* Listens to the SSE command channel for `fire_intervention` events
|
|
5
|
-
* and renders the copilot's message as a card in the host page,
|
|
6
|
-
* reporting dismiss / engage / ignore outcomes back to /outcome.
|
|
7
|
-
*
|
|
8
|
-
* Appearance & lifecycle (redesigned with UX best practices after the
|
|
9
|
-
* first live dogfood session — the v1 pill could linger after its
|
|
10
|
-
* outcome resolved and carried no copilot identity):
|
|
11
|
-
*
|
|
12
|
-
* - IDENTITY FIRST. Every card leads with the copilot's avatar and
|
|
13
|
-
* name — the visitor always knows who is speaking. Missing avatar
|
|
14
|
-
* degrades to an initial-letter monogram, never an empty box.
|
|
15
|
-
* - RELEVANT OR SILENT. The server stamps the route the decision
|
|
16
|
-
* was made for; if the visitor has navigated since (stale fire),
|
|
17
|
-
* the card is not rendered and the outcome reports 'ignored'.
|
|
18
|
-
* - ANIMATED IN, ANIMATED OUT, THEN GONE. Entry: fade + 12px rise
|
|
19
|
-
* (240ms ease-out). Exit: fade + fall (180ms), and the DOM node is
|
|
20
|
-
* removed on transition end — no ghost cards. `prefers-reduced-
|
|
21
|
-
* motion` skips both.
|
|
22
|
-
* - ATTENTION IS BORROWED, NOT STOLEN. aria-live=polite (no focus
|
|
23
|
-
* steal), auto-ignore after 30s — but the timer PAUSES while the
|
|
24
|
-
* visitor hovers or focuses the card and resumes on leave, so
|
|
25
|
-
* reading slowly never counts as ignoring.
|
|
26
|
-
* - ONE CARD AT A TIME. A new fire animates the old card out (as
|
|
27
|
-
* 'ignored') before the new one enters.
|
|
28
|
-
* - Shadow-DOM isolated: host CSS can't bleed in, ours can't bleed
|
|
29
|
-
* out.
|
|
30
|
-
*
|
|
31
|
-
* Outcomes: ✕ → 'dismissed' · "Got it" → 'engaged' · 30s of unpaused
|
|
32
|
-
* inattention or stale-route skip → 'ignored'.
|
|
33
|
-
*/
|
|
34
|
-
import { type TransportConfig } from './transport.js';
|
|
35
|
-
export interface WidgetBindingDeps {
|
|
36
|
-
cfg: TransportConfig;
|
|
37
|
-
/** Resolves the current session id at event time (may rotate after clearIdentity). */
|
|
38
|
-
getSessionId: () => string;
|
|
39
|
-
/** Common body builder — tenantId/sourceId/deviceId/hostUserId. */
|
|
40
|
-
buildBody: () => Record<string, unknown>;
|
|
41
|
-
/** SSE source — the same EventSource the SDK already opened. */
|
|
42
|
-
source: EventSource | null;
|
|
43
|
-
}
|
|
44
|
-
export interface WidgetBinding {
|
|
45
|
-
dispose(): void;
|
|
46
|
-
}
|
|
47
|
-
export declare function startWidget(deps: WidgetBindingDeps): WidgetBinding;
|
|
48
|
-
//# sourceMappingURL=widget.d.ts.map
|
package/dist/widget.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"widget.d.ts","sourceRoot":"","sources":["../src/widget.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAEH,OAAO,EAAY,KAAK,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAW/D,MAAM,WAAW,iBAAiB;IAChC,GAAG,EAAE,eAAe,CAAA;IACpB,sFAAsF;IACtF,YAAY,EAAE,MAAM,MAAM,CAAA;IAC1B,mEAAmE;IACnE,SAAS,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACxC,gEAAgE;IAChE,MAAM,EAAE,WAAW,GAAG,IAAI,CAAA;CAC3B;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,IAAI,IAAI,CAAA;CAChB;AAaD,wBAAgB,WAAW,CAAC,IAAI,EAAE,iBAAiB,GAAG,aAAa,CAoElE"}
|
package/dist/widget.js
DELETED
|
@@ -1,311 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Widget — the intervention card.
|
|
3
|
-
*
|
|
4
|
-
* Listens to the SSE command channel for `fire_intervention` events
|
|
5
|
-
* and renders the copilot's message as a card in the host page,
|
|
6
|
-
* reporting dismiss / engage / ignore outcomes back to /outcome.
|
|
7
|
-
*
|
|
8
|
-
* Appearance & lifecycle (redesigned with UX best practices after the
|
|
9
|
-
* first live dogfood session — the v1 pill could linger after its
|
|
10
|
-
* outcome resolved and carried no copilot identity):
|
|
11
|
-
*
|
|
12
|
-
* - IDENTITY FIRST. Every card leads with the copilot's avatar and
|
|
13
|
-
* name — the visitor always knows who is speaking. Missing avatar
|
|
14
|
-
* degrades to an initial-letter monogram, never an empty box.
|
|
15
|
-
* - RELEVANT OR SILENT. The server stamps the route the decision
|
|
16
|
-
* was made for; if the visitor has navigated since (stale fire),
|
|
17
|
-
* the card is not rendered and the outcome reports 'ignored'.
|
|
18
|
-
* - ANIMATED IN, ANIMATED OUT, THEN GONE. Entry: fade + 12px rise
|
|
19
|
-
* (240ms ease-out). Exit: fade + fall (180ms), and the DOM node is
|
|
20
|
-
* removed on transition end — no ghost cards. `prefers-reduced-
|
|
21
|
-
* motion` skips both.
|
|
22
|
-
* - ATTENTION IS BORROWED, NOT STOLEN. aria-live=polite (no focus
|
|
23
|
-
* steal), auto-ignore after 30s — but the timer PAUSES while the
|
|
24
|
-
* visitor hovers or focuses the card and resumes on leave, so
|
|
25
|
-
* reading slowly never counts as ignoring.
|
|
26
|
-
* - ONE CARD AT A TIME. A new fire animates the old card out (as
|
|
27
|
-
* 'ignored') before the new one enters.
|
|
28
|
-
* - Shadow-DOM isolated: host CSS can't bleed in, ours can't bleed
|
|
29
|
-
* out.
|
|
30
|
-
*
|
|
31
|
-
* Outcomes: ✕ → 'dismissed' · "Got it" → 'engaged' · 30s of unpaused
|
|
32
|
-
* inattention or stale-route skip → 'ignored'.
|
|
33
|
-
*/
|
|
34
|
-
import { postJson } from './transport.js';
|
|
35
|
-
/** Auto-ignore timeout — runtime doc §9.1 'ignored' outcome. */
|
|
36
|
-
const AUTO_DISMISS_MS = 30000;
|
|
37
|
-
const ENTER_MS = 240;
|
|
38
|
-
const EXIT_MS = 180;
|
|
39
|
-
/** Container id — single instance per page. */
|
|
40
|
-
const CONTAINER_ID = 'holostaff-widget-root';
|
|
41
|
-
export function startWidget(deps) {
|
|
42
|
-
if (typeof window === 'undefined' || !deps.source) {
|
|
43
|
-
return { dispose: () => { } };
|
|
44
|
-
}
|
|
45
|
-
let currentWidget = null;
|
|
46
|
-
const reportOutcome = (interventionId, outcome) => {
|
|
47
|
-
void postJson(deps.cfg, `/api/runtime/sessions/${deps.getSessionId()}/outcome`, {
|
|
48
|
-
...deps.buildBody(),
|
|
49
|
-
interventionId,
|
|
50
|
-
outcome,
|
|
51
|
-
});
|
|
52
|
-
};
|
|
53
|
-
const onFire = (rawEvent) => {
|
|
54
|
-
let parsed = null;
|
|
55
|
-
try {
|
|
56
|
-
const data = JSON.parse(rawEvent.data);
|
|
57
|
-
if (!data || typeof data.interventionId !== 'string')
|
|
58
|
-
return;
|
|
59
|
-
parsed = data;
|
|
60
|
-
}
|
|
61
|
-
catch {
|
|
62
|
-
return;
|
|
63
|
-
}
|
|
64
|
-
if (!parsed)
|
|
65
|
-
return;
|
|
66
|
-
// Modality gate — only text is renderable in this build.
|
|
67
|
-
if (parsed.modality !== 'text') {
|
|
68
|
-
deps.cfg.onError?.(new Error(`Modality '${parsed.modality}' is not supported in this SDK build`), { method: 'WIDGET', path: '(fire_intervention)' });
|
|
69
|
-
return;
|
|
70
|
-
}
|
|
71
|
-
// Stale-fire guard: the decision was made for a route the visitor
|
|
72
|
-
// has already left. Showing it now would be a non-sequitur — skip
|
|
73
|
-
// the render, close the loop as 'ignored'.
|
|
74
|
-
if (parsed.route) {
|
|
75
|
-
const decidedPath = parsed.route.split('?')[0];
|
|
76
|
-
if (decidedPath && decidedPath !== window.location.pathname) {
|
|
77
|
-
reportOutcome(parsed.interventionId, 'ignored');
|
|
78
|
-
return;
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
// One card at a time — retire the old one as 'ignored'.
|
|
82
|
-
if (currentWidget) {
|
|
83
|
-
currentWidget.reportAndClose('ignored');
|
|
84
|
-
}
|
|
85
|
-
currentWidget = renderWidget(deps, parsed, () => {
|
|
86
|
-
if (currentWidget && currentWidget.event.interventionId === parsed.interventionId) {
|
|
87
|
-
currentWidget = null;
|
|
88
|
-
}
|
|
89
|
-
});
|
|
90
|
-
};
|
|
91
|
-
deps.source.addEventListener('fire_intervention', onFire);
|
|
92
|
-
return {
|
|
93
|
-
dispose() {
|
|
94
|
-
deps.source?.removeEventListener('fire_intervention', onFire);
|
|
95
|
-
if (currentWidget) {
|
|
96
|
-
currentWidget.detach();
|
|
97
|
-
currentWidget = null;
|
|
98
|
-
}
|
|
99
|
-
},
|
|
100
|
-
};
|
|
101
|
-
}
|
|
102
|
-
function renderWidget(deps, event, onClosed) {
|
|
103
|
-
const container = ensureContainer();
|
|
104
|
-
const root = container.shadowRoot;
|
|
105
|
-
// Defensive single-card invariant.
|
|
106
|
-
root.innerHTML = '';
|
|
107
|
-
const reducedMotion = typeof window.matchMedia === 'function'
|
|
108
|
-
&& window.matchMedia('(prefers-reduced-motion: reduce)').matches;
|
|
109
|
-
const card = document.createElement('div');
|
|
110
|
-
card.className = 'card enter';
|
|
111
|
-
card.setAttribute('role', 'status');
|
|
112
|
-
card.setAttribute('aria-live', 'polite');
|
|
113
|
-
card.setAttribute('data-intervention-id', event.interventionId);
|
|
114
|
-
// -- Header: avatar + name + dismiss ---------------------------------
|
|
115
|
-
const head = document.createElement('div');
|
|
116
|
-
head.className = 'head';
|
|
117
|
-
const copilotName = event.copilot?.name?.trim() || 'Copilot';
|
|
118
|
-
const avatarUrl = event.copilot?.avatar?.trim() || '';
|
|
119
|
-
if (avatarUrl) {
|
|
120
|
-
const avatar = document.createElement('img');
|
|
121
|
-
avatar.className = 'avatar';
|
|
122
|
-
avatar.src = avatarUrl;
|
|
123
|
-
avatar.alt = '';
|
|
124
|
-
avatar.referrerPolicy = 'no-referrer';
|
|
125
|
-
// Broken avatar URL → swap in the monogram rather than the
|
|
126
|
-
// browser's broken-image glyph.
|
|
127
|
-
avatar.addEventListener('error', () => {
|
|
128
|
-
avatar.replaceWith(monogram(copilotName));
|
|
129
|
-
});
|
|
130
|
-
head.appendChild(avatar);
|
|
131
|
-
}
|
|
132
|
-
else {
|
|
133
|
-
head.appendChild(monogram(copilotName));
|
|
134
|
-
}
|
|
135
|
-
const name = document.createElement('div');
|
|
136
|
-
name.className = 'name';
|
|
137
|
-
name.textContent = copilotName;
|
|
138
|
-
head.appendChild(name);
|
|
139
|
-
const dismissBtn = document.createElement('button');
|
|
140
|
-
dismissBtn.className = 'x';
|
|
141
|
-
dismissBtn.type = 'button';
|
|
142
|
-
dismissBtn.setAttribute('aria-label', 'Dismiss');
|
|
143
|
-
dismissBtn.textContent = '✕';
|
|
144
|
-
head.appendChild(dismissBtn);
|
|
145
|
-
// -- Message + actions ------------------------------------------------
|
|
146
|
-
const message = document.createElement('div');
|
|
147
|
-
message.className = 'message';
|
|
148
|
-
message.textContent = event.content || event.goal;
|
|
149
|
-
const actions = document.createElement('div');
|
|
150
|
-
actions.className = 'actions';
|
|
151
|
-
const engageBtn = document.createElement('button');
|
|
152
|
-
engageBtn.className = 'btn engage';
|
|
153
|
-
engageBtn.type = 'button';
|
|
154
|
-
engageBtn.textContent = 'Got it';
|
|
155
|
-
actions.appendChild(engageBtn);
|
|
156
|
-
card.appendChild(head);
|
|
157
|
-
card.appendChild(message);
|
|
158
|
-
card.appendChild(actions);
|
|
159
|
-
root.appendChild(styleNode());
|
|
160
|
-
root.appendChild(card);
|
|
161
|
-
// Entry animation — next frame so the transition actually runs.
|
|
162
|
-
if (reducedMotion) {
|
|
163
|
-
card.classList.remove('enter');
|
|
164
|
-
}
|
|
165
|
-
else {
|
|
166
|
-
requestAnimationFrame(() => requestAnimationFrame(() => card.classList.remove('enter')));
|
|
167
|
-
}
|
|
168
|
-
// -- Auto-ignore timer: pauses on hover/focus, resumes on leave ------
|
|
169
|
-
let closed = false;
|
|
170
|
-
let remainingMs = AUTO_DISMISS_MS;
|
|
171
|
-
let deadlineTimer = null;
|
|
172
|
-
let timerStartedAt = 0;
|
|
173
|
-
const startTimer = () => {
|
|
174
|
-
if (closed)
|
|
175
|
-
return;
|
|
176
|
-
timerStartedAt = Date.now();
|
|
177
|
-
deadlineTimer = setTimeout(() => instance.reportAndClose('ignored'), remainingMs);
|
|
178
|
-
};
|
|
179
|
-
const pauseTimer = () => {
|
|
180
|
-
if (deadlineTimer == null)
|
|
181
|
-
return;
|
|
182
|
-
clearTimeout(deadlineTimer);
|
|
183
|
-
deadlineTimer = null;
|
|
184
|
-
remainingMs = Math.max(1000, remainingMs - (Date.now() - timerStartedAt));
|
|
185
|
-
};
|
|
186
|
-
card.addEventListener('mouseenter', pauseTimer);
|
|
187
|
-
card.addEventListener('focusin', pauseTimer);
|
|
188
|
-
card.addEventListener('mouseleave', startTimer);
|
|
189
|
-
card.addEventListener('focusout', startTimer);
|
|
190
|
-
startTimer();
|
|
191
|
-
const sendOutcome = (outcome) => {
|
|
192
|
-
void postJson(deps.cfg, `/api/runtime/sessions/${deps.getSessionId()}/outcome`, {
|
|
193
|
-
...deps.buildBody(),
|
|
194
|
-
interventionId: event.interventionId,
|
|
195
|
-
outcome,
|
|
196
|
-
});
|
|
197
|
-
};
|
|
198
|
-
const close = (outcome) => {
|
|
199
|
-
if (closed)
|
|
200
|
-
return;
|
|
201
|
-
closed = true;
|
|
202
|
-
if (deadlineTimer != null) {
|
|
203
|
-
clearTimeout(deadlineTimer);
|
|
204
|
-
deadlineTimer = null;
|
|
205
|
-
}
|
|
206
|
-
if (outcome)
|
|
207
|
-
sendOutcome(outcome);
|
|
208
|
-
const remove = () => {
|
|
209
|
-
try {
|
|
210
|
-
root.removeChild(card);
|
|
211
|
-
}
|
|
212
|
-
catch { /* removed already */ }
|
|
213
|
-
onClosed();
|
|
214
|
-
};
|
|
215
|
-
if (reducedMotion) {
|
|
216
|
-
remove();
|
|
217
|
-
}
|
|
218
|
-
else {
|
|
219
|
-
card.classList.add('exit');
|
|
220
|
-
// transitionend can be swallowed if the tab is hidden — back it
|
|
221
|
-
// up with a timeout so the node ALWAYS leaves the DOM.
|
|
222
|
-
let removed = false;
|
|
223
|
-
const once = () => { if (!removed) {
|
|
224
|
-
removed = true;
|
|
225
|
-
remove();
|
|
226
|
-
} };
|
|
227
|
-
card.addEventListener('transitionend', once, { once: true });
|
|
228
|
-
setTimeout(once, EXIT_MS + 80);
|
|
229
|
-
}
|
|
230
|
-
};
|
|
231
|
-
dismissBtn.addEventListener('click', () => close('dismissed'));
|
|
232
|
-
engageBtn.addEventListener('click', () => close('engaged'));
|
|
233
|
-
const instance = {
|
|
234
|
-
event,
|
|
235
|
-
reportAndClose(outcome) { close(outcome); },
|
|
236
|
-
detach() { close(null); },
|
|
237
|
-
};
|
|
238
|
-
return instance;
|
|
239
|
-
}
|
|
240
|
-
function monogram(name) {
|
|
241
|
-
const el = document.createElement('div');
|
|
242
|
-
el.className = 'avatar mono';
|
|
243
|
-
el.textContent = (name.trim()[0] ?? '?').toUpperCase();
|
|
244
|
-
return el;
|
|
245
|
-
}
|
|
246
|
-
function ensureContainer() {
|
|
247
|
-
let el = document.getElementById(CONTAINER_ID);
|
|
248
|
-
if (el)
|
|
249
|
-
return el;
|
|
250
|
-
el = document.createElement('div');
|
|
251
|
-
el.id = CONTAINER_ID;
|
|
252
|
-
el.style.cssText = 'position:fixed;right:16px;bottom:16px;z-index:2147483647;pointer-events:none';
|
|
253
|
-
el.attachShadow({ mode: 'open' });
|
|
254
|
-
document.body.appendChild(el);
|
|
255
|
-
return el;
|
|
256
|
-
}
|
|
257
|
-
function styleNode() {
|
|
258
|
-
const node = document.createElement('style');
|
|
259
|
-
// Shadow-DOM scoped; no host page leakage either direction.
|
|
260
|
-
node.textContent = `
|
|
261
|
-
.card {
|
|
262
|
-
pointer-events: auto;
|
|
263
|
-
width: 340px;
|
|
264
|
-
max-width: calc(100vw - 32px);
|
|
265
|
-
background: #111;
|
|
266
|
-
color: #fafafa;
|
|
267
|
-
border-radius: 16px;
|
|
268
|
-
box-shadow: 0 12px 32px rgba(0,0,0,0.32), 0 2px 8px rgba(0,0,0,0.12);
|
|
269
|
-
padding: 12px 14px 12px;
|
|
270
|
-
font: 14px/1.45 -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;
|
|
271
|
-
opacity: 1;
|
|
272
|
-
transform: translateY(0);
|
|
273
|
-
transition: opacity ${ENTER_MS}ms ease-out, transform ${ENTER_MS}ms ease-out;
|
|
274
|
-
}
|
|
275
|
-
.card.enter { opacity: 0; transform: translateY(12px); }
|
|
276
|
-
.card.exit { opacity: 0; transform: translateY(12px); transition-duration: ${EXIT_MS}ms; }
|
|
277
|
-
.head { display: flex; align-items: center; gap: 10px; margin-bottom: 8px; }
|
|
278
|
-
.avatar {
|
|
279
|
-
width: 36px; height: 36px; border-radius: 50%;
|
|
280
|
-
object-fit: cover; flex: none;
|
|
281
|
-
background: #2a2a2a;
|
|
282
|
-
}
|
|
283
|
-
.avatar.mono {
|
|
284
|
-
display: flex; align-items: center; justify-content: center;
|
|
285
|
-
color: #9ab8ff; font-weight: 600; font-size: 16px;
|
|
286
|
-
}
|
|
287
|
-
.name { font-weight: 600; font-size: 13px; color: #e8e8e8; flex: 1; }
|
|
288
|
-
.x {
|
|
289
|
-
appearance: none; border: 0; background: transparent;
|
|
290
|
-
color: #8a8a8a; font-size: 13px; line-height: 1;
|
|
291
|
-
padding: 6px; margin: -6px -4px -6px 0; border-radius: 8px;
|
|
292
|
-
cursor: pointer; flex: none;
|
|
293
|
-
}
|
|
294
|
-
.x:hover { color: #fff; background: rgba(255,255,255,0.08); }
|
|
295
|
-
.message { margin: 0 2px 12px; color: #f2f2f2; }
|
|
296
|
-
.actions { display: flex; justify-content: flex-end; }
|
|
297
|
-
.btn {
|
|
298
|
-
appearance: none; border: 0;
|
|
299
|
-
padding: 7px 14px; border-radius: 9px;
|
|
300
|
-
font: inherit; font-size: 13px; font-weight: 500;
|
|
301
|
-
cursor: pointer;
|
|
302
|
-
}
|
|
303
|
-
.btn.engage { background: #4f8bff; color: #fff; }
|
|
304
|
-
.btn.engage:hover { background: #6aa0ff; }
|
|
305
|
-
.btn:focus-visible, .x:focus-visible {
|
|
306
|
-
outline: 2px solid #9ab8ff; outline-offset: 2px;
|
|
307
|
-
}
|
|
308
|
-
`;
|
|
309
|
-
return node;
|
|
310
|
-
}
|
|
311
|
-
//# sourceMappingURL=widget.js.map
|
package/dist/widget.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"widget.js","sourceRoot":"","sources":["../src/widget.ts"],"names":[],"mappings":"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"}
|