@genesislcap/ai-assistant 15.85.1 → 15.86.1

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.
Files changed (40) hide show
  1. package/dist/ai-assistant.api.json +65 -4
  2. package/dist/ai-assistant.d.ts +56 -2
  3. package/dist/chat-driver.cjs +2 -0
  4. package/dist/chat-driver.cjs.map +2 -2
  5. package/dist/chat-driver.mjs +2 -0
  6. package/dist/chat-driver.mjs.map +2 -2
  7. package/dist/custom-elements.json +1181 -993
  8. package/dist/dts/autopilot/autopilot-driver.d.ts +46 -2
  9. package/dist/dts/autopilot/autopilot-driver.d.ts.map +1 -1
  10. package/dist/dts/components/chat-bubble/chat-bubble.d.ts +9 -2
  11. package/dist/dts/components/chat-bubble/chat-bubble.d.ts.map +1 -1
  12. package/dist/dts/components/chat-markdown/chat-markdown.d.ts.map +1 -1
  13. package/dist/dts/genesis/write-review/write-review.d.ts +23 -0
  14. package/dist/dts/genesis/write-review/write-review.d.ts.map +1 -1
  15. package/dist/dts/genesis/write-review/write-review.styles.d.ts.map +1 -1
  16. package/dist/dts/genesis/write-review/write-review.template.d.ts.map +1 -1
  17. package/dist/dts/main/main.d.ts +8 -0
  18. package/dist/dts/main/main.d.ts.map +1 -1
  19. package/dist/dts/main/main.styles.d.ts.map +1 -1
  20. package/dist/dts/main/main.template.d.ts.map +1 -1
  21. package/dist/dts/main/main.types.d.ts +2 -0
  22. package/dist/dts/main/main.types.d.ts.map +1 -1
  23. package/dist/dts/react.d.ts +1 -0
  24. package/dist/dts/state/debug-event-log.d.ts +1 -1
  25. package/dist/dts/state/debug-event-log.d.ts.map +1 -1
  26. package/dist/esm/autopilot/autopilot-driver.js +112 -6
  27. package/dist/esm/components/chat-bubble/chat-bubble.js +18 -21
  28. package/dist/esm/components/chat-markdown/chat-markdown.js +18 -2
  29. package/dist/esm/genesis/write-review/write-review.js +48 -0
  30. package/dist/esm/genesis/write-review/write-review.styles.js +67 -1
  31. package/dist/esm/genesis/write-review/write-review.template.js +44 -27
  32. package/dist/esm/main/main.js +13 -0
  33. package/dist/esm/main/main.styles.js +42 -0
  34. package/dist/esm/main/main.template.js +11 -1
  35. package/dist/esm/main/main.types.js +2 -0
  36. package/dist/esm/state/debug-event-log.js +3 -1
  37. package/dist/react.cjs +6 -1
  38. package/dist/react.mjs +6 -1
  39. package/docs/styling.md +10 -4
  40. package/package.json +17 -17
package/dist/react.mjs CHANGED
@@ -51,12 +51,14 @@ export const AiWavesIndicator = React.forwardRef(function AiWavesIndicator(props
51
51
  });
52
52
 
53
53
  export const FoundationAiAssistant = React.forwardRef(function FoundationAiAssistant(props, ref) {
54
- const { onBudgetRefreshRequested, onChatHeaderMousedown, onSessionCleared, onHandoffStarted, onHandoffReturned, onHandoffUnwound, children, ...rest } = props;
54
+ const { onBudgetRefreshRequested, onChatHeaderMousedown, onCloseRequested, onSessionCleared, onHandoffStarted, onHandoffReturned, onHandoffUnwound, children, ...rest } = props;
55
55
  const _innerRef = React.useRef(null);
56
56
  const _onBudgetRefreshRequestedRef = React.useRef(onBudgetRefreshRequested);
57
57
  _onBudgetRefreshRequestedRef.current = onBudgetRefreshRequested;
58
58
  const _onChatHeaderMousedownRef = React.useRef(onChatHeaderMousedown);
59
59
  _onChatHeaderMousedownRef.current = onChatHeaderMousedown;
60
+ const _onCloseRequestedRef = React.useRef(onCloseRequested);
61
+ _onCloseRequestedRef.current = onCloseRequested;
60
62
  const _onSessionClearedRef = React.useRef(onSessionCleared);
61
63
  _onSessionClearedRef.current = onSessionCleared;
62
64
  const _onHandoffStartedRef = React.useRef(onHandoffStarted);
@@ -72,6 +74,8 @@ export const FoundationAiAssistant = React.forwardRef(function FoundationAiAssis
72
74
  el.addEventListener('budget-refresh-requested', _onBudgetRefreshRequestedFn);
73
75
  const _onChatHeaderMousedownFn = (e) => _onChatHeaderMousedownRef.current?.(e);
74
76
  el.addEventListener('chat-header-mousedown', _onChatHeaderMousedownFn);
77
+ const _onCloseRequestedFn = (e) => _onCloseRequestedRef.current?.(e);
78
+ el.addEventListener('close-requested', _onCloseRequestedFn);
75
79
  const _onSessionClearedFn = (e) => _onSessionClearedRef.current?.(e);
76
80
  el.addEventListener('session-cleared', _onSessionClearedFn);
77
81
  const _onHandoffStartedFn = (e) => _onHandoffStartedRef.current?.(e);
@@ -83,6 +87,7 @@ export const FoundationAiAssistant = React.forwardRef(function FoundationAiAssis
83
87
  return () => {
84
88
  el.removeEventListener('budget-refresh-requested', _onBudgetRefreshRequestedFn);
85
89
  el.removeEventListener('chat-header-mousedown', _onChatHeaderMousedownFn);
90
+ el.removeEventListener('close-requested', _onCloseRequestedFn);
86
91
  el.removeEventListener('session-cleared', _onSessionClearedFn);
87
92
  el.removeEventListener('handoff-started', _onHandoffStartedFn);
88
93
  el.removeEventListener('handoff-returned', _onHandoffReturnedFn);
package/docs/styling.md CHANGED
@@ -391,15 +391,21 @@ foundation-ai-assistant::part(messages-content) { display: contents; }
391
391
 
392
392
  ### The header buttons
393
393
 
394
- The header's popout and settings buttons are design-system buttons, so their
394
+ The header's close, popout and settings buttons are design-system buttons, so their
395
395
  padded inner `control` sits two shadow boundaries from the app. `::part()` crosses
396
396
  exactly one, so the assistant re-publishes them under its own namespace:
397
397
 
398
398
  | Part | Element |
399
399
  | --- | --- |
400
- | `popout-button` / `settings-button` | The button hosts |
401
- | `popout-button-control` / `settings-button-control` | The button's inner control — where padding and sizing actually live |
402
- | `popout-button-content` / `settings-button-content` | The content slot wrapper inside the control |
400
+ | `close-button` / `popout-button` / `settings-button` | The button hosts |
401
+ | `close-button-control` / `popout-button-control` / `settings-button-control` | The button's inner control — where padding and sizing actually live |
402
+ | `close-button-content` / `popout-button-content` / `settings-button-content` | The content slot wrapper inside the control |
403
+
404
+ By default each is a square as wide as the control is tall, with its icon centred. The close
405
+ button shows while the `closable` attribute is set — the chat bubble sets it while the assistant
406
+ is in its dialog — and fires `close-requested`; it replaces the button the bubble used to inject
407
+ into the `header-actions-extra` slot, so a host rule aimed at that slotted button no longer
408
+ matches anything.
403
409
 
404
410
  Size the control, not the host: shrinking the host and clipping the overflow
405
411
  flattens the glyph, which is the workaround these parts exist to remove.
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@genesislcap/ai-assistant",
3
3
  "description": "Genesis AI Assistant micro-frontend",
4
- "version": "15.85.1",
4
+ "version": "15.86.1",
5
5
  "license": "SEE LICENSE IN license.txt",
6
6
  "main": "dist/esm/index.js",
7
7
  "types": "dist/dts/index.d.ts",
@@ -92,31 +92,31 @@
92
92
  }
93
93
  },
94
94
  "devDependencies": {
95
- "@genesislcap/foundation-comms": "15.85.1",
96
- "@genesislcap/foundation-testing": "15.85.1",
97
- "@genesislcap/genx": "15.85.1",
98
- "@genesislcap/ts-builder": "15.85.1",
99
- "@genesislcap/uvu-playwright-builder": "15.85.1",
100
- "@genesislcap/vite-builder": "15.85.1",
101
- "@genesislcap/webpack-builder": "15.85.1",
95
+ "@genesislcap/foundation-comms": "15.86.1",
96
+ "@genesislcap/foundation-testing": "15.86.1",
97
+ "@genesislcap/genx": "15.86.1",
98
+ "@genesislcap/ts-builder": "15.86.1",
99
+ "@genesislcap/uvu-playwright-builder": "15.86.1",
100
+ "@genesislcap/vite-builder": "15.86.1",
101
+ "@genesislcap/webpack-builder": "15.86.1",
102
102
  "@types/dompurify": "^3.0.5",
103
103
  "@types/marked": "^5.0.2",
104
104
  "esbuild": "0.25.12"
105
105
  },
106
106
  "dependencies": {
107
- "@genesislcap/foundation-ai": "15.85.1",
108
- "@genesislcap/foundation-logger": "15.85.1",
109
- "@genesislcap/foundation-notifications": "15.85.1",
110
- "@genesislcap/foundation-redux": "15.85.1",
111
- "@genesislcap/foundation-ui": "15.85.1",
112
- "@genesislcap/foundation-utils": "15.85.1",
113
- "@genesislcap/rapid-design-system": "15.85.1",
114
- "@genesislcap/web-core": "15.85.1",
107
+ "@genesislcap/foundation-ai": "15.86.1",
108
+ "@genesislcap/foundation-logger": "15.86.1",
109
+ "@genesislcap/foundation-notifications": "15.86.1",
110
+ "@genesislcap/foundation-redux": "15.86.1",
111
+ "@genesislcap/foundation-ui": "15.86.1",
112
+ "@genesislcap/foundation-utils": "15.86.1",
113
+ "@genesislcap/rapid-design-system": "15.86.1",
114
+ "@genesislcap/web-core": "15.86.1",
115
115
  "dompurify": "^3.3.1",
116
116
  "marked": "^17.0.3"
117
117
  },
118
118
  "peerDependencies": {
119
- "@genesislcap/foundation-comms": "^15.85.1"
119
+ "@genesislcap/foundation-comms": "^15.86.1"
120
120
  },
121
121
  "peerDependenciesMeta": {
122
122
  "@genesislcap/foundation-comms": {