@mochabug/adapt-astro 1.0.0-rc2 → 1.0.0-rc4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mochabug/adapt-astro",
3
- "version": "1.0.0-rc2",
3
+ "version": "1.0.0-rc4",
4
4
  "description": "Astro component for Adapt automation platform",
5
5
  "type": "module",
6
6
  "main": "./src/index.ts",
@@ -17,7 +17,7 @@
17
17
  ],
18
18
  "scripts": {
19
19
  "build": "echo 'Astro component distributes source - no build needed'",
20
- "sample": "cd sample && npm install && npm run dev"
20
+ "sample": "npm run build && cd sample && npm install && npm run dev"
21
21
  },
22
22
  "keywords": [
23
23
  "adapt",
@@ -31,6 +31,6 @@
31
31
  "astro": "^3.0.0 || ^4.0.0 || ^5.0.0"
32
32
  },
33
33
  "dependencies": {
34
- "@mochabug/adapt-web": "^1.0.0-rc23"
34
+ "@mochabug/adapt-web": "^1.0.0-rc25"
35
35
  }
36
36
  }
package/src/Adapt.astro CHANGED
@@ -7,11 +7,15 @@ export interface Props
7
7
  | "id"
8
8
  | "sessionToken"
9
9
  | "authToken"
10
+ | "transmitter"
11
+ | "signals"
10
12
  | "inheritToken"
11
13
  | "inheritFrom"
12
14
  | "forkDisplayMode"
13
15
  | "sideBySideSplit"
14
16
  | "dialogBackdropClose"
17
+ | "onSession"
18
+ | "onOutput"
15
19
  | "classNames"
16
20
  > {
17
21
  /** CSS class name for the container */
@@ -24,11 +28,15 @@ const {
24
28
  id,
25
29
  sessionToken,
26
30
  authToken,
31
+ transmitter,
32
+ signals,
27
33
  inheritToken,
28
34
  inheritFrom,
29
35
  forkDisplayMode = "side-by-side",
30
36
  sideBySideSplit = 50,
31
37
  dialogBackdropClose = false,
38
+ onSession,
39
+ onOutput,
32
40
  classNames,
33
41
  class: className,
34
42
  style,
@@ -44,6 +52,8 @@ const containerId = `adapt-${Math.random().toString(36).slice(2, 11)}`;
44
52
  data-adapt-id={id}
45
53
  data-adapt-session-token={sessionToken}
46
54
  data-adapt-auth-token={authToken}
55
+ data-adapt-transmitter={transmitter}
56
+ data-adapt-signals={signals ? JSON.stringify(signals) : undefined}
47
57
  data-adapt-inherit-token={inheritToken}
48
58
  data-adapt-inherit-from={inheritFrom ? JSON.stringify(inheritFrom) : undefined}
49
59
  data-adapt-fork-display-mode={forkDisplayMode}
@@ -61,18 +71,36 @@ const containerId = `adapt-${Math.random().toString(36).slice(2, 11)}`;
61
71
 
62
72
  const inheritFromStr = container.dataset.adaptInheritFrom;
63
73
  const classNamesStr = container.dataset.adaptClassNames;
74
+ const signalsStr = container.dataset.adaptSignals;
64
75
 
65
76
  const client = new AdaptWebClient({
66
77
  container: container.id,
67
78
  id,
68
79
  sessionToken: container.dataset.adaptSessionToken,
69
80
  authToken: container.dataset.adaptAuthToken,
81
+ transmitter: container.dataset.adaptTransmitter,
82
+ signals: signalsStr ? JSON.parse(signalsStr) : undefined,
70
83
  inheritToken: container.dataset.adaptInheritToken,
71
84
  inheritFrom: inheritFromStr ? JSON.parse(inheritFromStr) : undefined,
72
85
  forkDisplayMode: container.dataset.adaptForkDisplayMode as "side-by-side" | "dialog",
73
86
  sideBySideSplit: Number(container.dataset.adaptSideBySideSplit) || 50,
74
87
  dialogBackdropClose: container.dataset.adaptDialogBackdropClose === "true",
75
88
  classNames: classNamesStr ? JSON.parse(classNamesStr) : undefined,
89
+ // onSession and onOutput callbacks can be attached via custom events:
90
+ // container.addEventListener('adapt:session', (e) => { ... })
91
+ // container.addEventListener('adapt:output', (e) => { ... })
92
+ onSession: (status, fork) => {
93
+ container.dispatchEvent(new CustomEvent('adapt:session', {
94
+ detail: { status, fork },
95
+ bubbles: true
96
+ }));
97
+ },
98
+ onOutput: (output) => {
99
+ container.dispatchEvent(new CustomEvent('adapt:output', {
100
+ detail: { output },
101
+ bubbles: true
102
+ }));
103
+ },
76
104
  });
77
105
 
78
106
  // Store reference for cleanup
package/src/index.ts CHANGED
@@ -1,6 +1,5 @@
1
1
  // Import the component directly from the .astro file
2
2
  // Usage: import Adapt from '@mochabug/adapt-astro/Adapt.astro';
3
3
 
4
- // Re-export types for convenience
5
- export type { Output, StatusJson } from "@mochabug/adapt-core";
6
- export type { AdaptWebClientOptions } from "@mochabug/adapt-web";
4
+ // Re-export everything from web
5
+ export * from "@mochabug/adapt-web";