@carbon/ai-chat-components 0.8.0 → 0.9.0-rc.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/README.md +1 -0
- package/custom-elements.json +894 -253
- package/es/components/card/src/card-footer.scss.js +1 -1
- package/es/components/card/src/card-steps.scss.js +1 -1
- package/es/components/card/src/card.scss.js +1 -1
- package/es/components/chat-button/src/chat-button.scss.js +1 -1
- package/es/components/chat-shell/index.d.ts +2 -2
- package/es/components/chat-shell/index.js +2 -2
- package/es/components/chat-shell/src/{cds-aichat-panel.d.ts → panel.d.ts} +11 -2
- package/es/components/chat-shell/src/{cds-aichat-panel.js → panel.js} +79 -26
- package/es/components/chat-shell/src/panel.js.map +1 -0
- package/es/components/chat-shell/src/panel.scss.js +13 -0
- package/es/components/chat-shell/src/panel.scss.js.map +1 -0
- package/es/components/chat-shell/src/{cds-aichat-shell.d.ts → shell.d.ts} +19 -3
- package/es/components/chat-shell/src/{cds-aichat-shell.js → shell.js} +249 -93
- package/es/components/chat-shell/src/shell.js.map +1 -0
- package/es/components/chat-shell/src/shell.scss.js +13 -0
- package/es/components/chat-shell/src/shell.scss.js.map +1 -0
- package/es/components/chat-shell/src/workspace-manager-utils.d.ts +90 -0
- package/es/components/chat-shell/src/workspace-manager-utils.js +120 -0
- package/es/components/chat-shell/src/workspace-manager-utils.js.map +1 -0
- package/es/components/chat-shell/src/workspace-manager.d.ts +52 -8
- package/es/components/chat-shell/src/workspace-manager.js +330 -117
- package/es/components/chat-shell/src/workspace-manager.js.map +1 -1
- package/es/components/code-snippet/src/code-snippet.d.ts +27 -11
- package/es/components/code-snippet/src/code-snippet.scss.js +1 -1
- package/es/components/markdown/src/markdown.js +1 -1
- package/es/components/markdown/src/markdown.js.map +1 -1
- package/es/components/toolbar/src/toolbar.d.ts +4 -0
- package/es/components/toolbar/src/toolbar.js +62 -28
- package/es/components/toolbar/src/toolbar.js.map +1 -1
- package/es/components/toolbar/src/toolbar.scss.js +1 -1
- package/es/components/workspace-shell/src/workspace-shell-footer.js +6 -1
- package/es/components/workspace-shell/src/workspace-shell-footer.js.map +1 -1
- package/es/components/workspace-shell/src/workspace-shell-footer.scss.js +1 -1
- package/es/components/workspace-shell/src/workspace-shell.d.ts +0 -1
- package/es/components/workspace-shell/src/workspace-shell.js +0 -6
- package/es/components/workspace-shell/src/workspace-shell.js.map +1 -1
- package/es/components/workspace-shell/src/workspace-shell.scss.js +1 -1
- package/es/react/chat-shell.d.ts +3 -3
- package/es/react/chat-shell.js +4 -4
- package/es/react/chat-shell.js.map +1 -1
- package/es/react/panel.d.ts +3 -3
- package/es/react/panel.js +5 -4
- package/es/react/panel.js.map +1 -1
- package/es/react/toolbar.js +1 -1
- package/es/react/toolbar.js.map +1 -1
- package/es-custom/components/card/src/card-footer.scss.js +1 -1
- package/es-custom/components/card/src/card-steps.scss.js +1 -1
- package/es-custom/components/card/src/card.scss.js +1 -1
- package/es-custom/components/chat-button/src/chat-button.scss.js +1 -1
- package/es-custom/components/chat-shell/index.d.ts +2 -2
- package/es-custom/components/chat-shell/index.js +2 -2
- package/es-custom/components/chat-shell/src/{cds-aichat-panel.d.ts → panel.d.ts} +11 -2
- package/es-custom/components/chat-shell/src/{cds-aichat-panel.js → panel.js} +79 -26
- package/es-custom/components/chat-shell/src/panel.js.map +1 -0
- package/es-custom/components/chat-shell/src/panel.scss.js +13 -0
- package/es-custom/components/chat-shell/src/panel.scss.js.map +1 -0
- package/es-custom/components/chat-shell/src/{cds-aichat-shell.d.ts → shell.d.ts} +19 -3
- package/es-custom/components/chat-shell/src/{cds-aichat-shell.js → shell.js} +249 -93
- package/es-custom/components/chat-shell/src/shell.js.map +1 -0
- package/es-custom/components/chat-shell/src/shell.scss.js +13 -0
- package/es-custom/components/chat-shell/src/shell.scss.js.map +1 -0
- package/es-custom/components/chat-shell/src/workspace-manager-utils.d.ts +90 -0
- package/es-custom/components/chat-shell/src/workspace-manager-utils.js +120 -0
- package/es-custom/components/chat-shell/src/workspace-manager-utils.js.map +1 -0
- package/es-custom/components/chat-shell/src/workspace-manager.d.ts +52 -8
- package/es-custom/components/chat-shell/src/workspace-manager.js +330 -117
- package/es-custom/components/chat-shell/src/workspace-manager.js.map +1 -1
- package/es-custom/components/code-snippet/src/code-snippet.d.ts +27 -11
- package/es-custom/components/code-snippet/src/code-snippet.scss.js +1 -1
- package/es-custom/components/markdown/src/markdown.js +1 -1
- package/es-custom/components/markdown/src/markdown.js.map +1 -1
- package/es-custom/components/toolbar/src/toolbar.d.ts +4 -0
- package/es-custom/components/toolbar/src/toolbar.js +62 -28
- package/es-custom/components/toolbar/src/toolbar.js.map +1 -1
- package/es-custom/components/toolbar/src/toolbar.scss.js +1 -1
- package/es-custom/components/workspace-shell/src/workspace-shell-footer.js +6 -1
- package/es-custom/components/workspace-shell/src/workspace-shell-footer.js.map +1 -1
- package/es-custom/components/workspace-shell/src/workspace-shell-footer.scss.js +1 -1
- package/es-custom/components/workspace-shell/src/workspace-shell.d.ts +0 -1
- package/es-custom/components/workspace-shell/src/workspace-shell.js +0 -6
- package/es-custom/components/workspace-shell/src/workspace-shell.js.map +1 -1
- package/es-custom/components/workspace-shell/src/workspace-shell.scss.js +1 -1
- package/es-custom/react/chat-shell.d.ts +3 -3
- package/es-custom/react/chat-shell.js +4 -4
- package/es-custom/react/chat-shell.js.map +1 -1
- package/es-custom/react/panel.d.ts +3 -3
- package/es-custom/react/panel.js +5 -4
- package/es-custom/react/panel.js.map +1 -1
- package/es-custom/react/toolbar.js +1 -1
- package/es-custom/react/toolbar.js.map +1 -1
- package/package.json +13 -10
- package/es/components/chat-shell/src/cds-aichat-panel.js.map +0 -1
- package/es/components/chat-shell/src/cds-aichat-panel.scss.js +0 -13
- package/es/components/chat-shell/src/cds-aichat-panel.scss.js.map +0 -1
- package/es/components/chat-shell/src/cds-aichat-shell.js.map +0 -1
- package/es/components/chat-shell/src/cds-aichat-shell.scss.js +0 -13
- package/es/components/chat-shell/src/cds-aichat-shell.scss.js.map +0 -1
- package/es-custom/components/chat-shell/src/cds-aichat-panel.js.map +0 -1
- package/es-custom/components/chat-shell/src/cds-aichat-panel.scss.js +0 -13
- package/es-custom/components/chat-shell/src/cds-aichat-panel.scss.js.map +0 -1
- package/es-custom/components/chat-shell/src/cds-aichat-shell.js.map +0 -1
- package/es-custom/components/chat-shell/src/cds-aichat-shell.scss.js +0 -13
- package/es-custom/components/chat-shell/src/cds-aichat-shell.scss.js.map +0 -1
|
@@ -6,5 +6,5 @@
|
|
|
6
6
|
* This source code is licensed under the Apache-2.0 license found in the
|
|
7
7
|
* LICENSE file in the root directory of this source tree.
|
|
8
8
|
*/
|
|
9
|
-
import "./src/
|
|
10
|
-
import "./src/
|
|
9
|
+
import "./src/shell.js";
|
|
10
|
+
import "./src/panel.js";
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
* LICENSE file in the root directory of this source tree.
|
|
8
8
|
*/
|
|
9
9
|
import { LitElement, PropertyValues } from "lit";
|
|
10
|
-
declare class
|
|
10
|
+
declare class CDSAIChatPanel extends LitElement {
|
|
11
11
|
static styles: any;
|
|
12
12
|
/**
|
|
13
13
|
* Controls whether the panel is open or closed
|
|
@@ -29,6 +29,14 @@ declare class CdsAiChatPanel extends LitElement {
|
|
|
29
29
|
* Shows a frame border around the panel
|
|
30
30
|
*/
|
|
31
31
|
showFrame: boolean;
|
|
32
|
+
/**
|
|
33
|
+
* Shows the AI gradient background
|
|
34
|
+
*/
|
|
35
|
+
aiEnabled: boolean;
|
|
36
|
+
/**
|
|
37
|
+
* Removes padding from the panel body
|
|
38
|
+
*/
|
|
39
|
+
bodyNoPadding: boolean;
|
|
32
40
|
/**
|
|
33
41
|
* Specifies the animation to use when opening the panel
|
|
34
42
|
*/
|
|
@@ -61,6 +69,7 @@ declare class CdsAiChatPanel extends LitElement {
|
|
|
61
69
|
private updateWidthClass;
|
|
62
70
|
private hasSlotContent;
|
|
63
71
|
private observeSlotContent;
|
|
72
|
+
private handleBodyScroll;
|
|
64
73
|
render(): import("lit-html").TemplateResult<1>;
|
|
65
74
|
}
|
|
66
|
-
export default
|
|
75
|
+
export default CDSAIChatPanel;
|
|
@@ -9,7 +9,7 @@ import { __decorate } from 'tslib';
|
|
|
9
9
|
import { LitElement, html } from 'lit';
|
|
10
10
|
import { property } from 'lit/decorators.js';
|
|
11
11
|
import { carbonElement } from '../../../globals/decorators/carbon-element.js';
|
|
12
|
-
import styles from './
|
|
12
|
+
import styles from './panel.scss.js';
|
|
13
13
|
|
|
14
14
|
/**
|
|
15
15
|
* @license
|
|
@@ -19,10 +19,10 @@ import styles from './cds-aichat-panel.scss.js';
|
|
|
19
19
|
* This source code is licensed under the Apache-2.0 license found in the
|
|
20
20
|
* LICENSE file in the root directory of this source tree.
|
|
21
21
|
*/
|
|
22
|
-
var
|
|
22
|
+
var CDSAIChatPanel_1;
|
|
23
23
|
const ANIMATION_START_DETECTION_DELAY_MS = 120;
|
|
24
24
|
const MESSAGES_MAX_WIDTH_FALLBACK = 672; // Fallback if CSS custom property is not set
|
|
25
|
-
let
|
|
25
|
+
let CDSAIChatPanel = CDSAIChatPanel_1 = class CDSAIChatPanel extends LitElement {
|
|
26
26
|
constructor() {
|
|
27
27
|
super(...arguments);
|
|
28
28
|
/**
|
|
@@ -45,6 +45,14 @@ let CdsAiChatPanel = CdsAiChatPanel_1 = class CdsAiChatPanel extends LitElement
|
|
|
45
45
|
* Shows a frame border around the panel
|
|
46
46
|
*/
|
|
47
47
|
this.showFrame = false;
|
|
48
|
+
/**
|
|
49
|
+
* Shows the AI gradient background
|
|
50
|
+
*/
|
|
51
|
+
this.aiEnabled = false;
|
|
52
|
+
/**
|
|
53
|
+
* Removes padding from the panel body
|
|
54
|
+
*/
|
|
55
|
+
this.bodyNoPadding = false;
|
|
48
56
|
/**
|
|
49
57
|
* Makes the panel inert (non-interactive)
|
|
50
58
|
*/
|
|
@@ -103,6 +111,25 @@ let CdsAiChatPanel = CdsAiChatPanel_1 = class CdsAiChatPanel extends LitElement
|
|
|
103
111
|
this.completeClose();
|
|
104
112
|
}
|
|
105
113
|
};
|
|
114
|
+
this.handleBodyScroll = (event) => {
|
|
115
|
+
const target = event.target;
|
|
116
|
+
if (!target) {
|
|
117
|
+
return;
|
|
118
|
+
}
|
|
119
|
+
// Dispatch a custom event with scroll information
|
|
120
|
+
this.dispatchEvent(new CustomEvent("body-scroll", {
|
|
121
|
+
bubbles: true,
|
|
122
|
+
composed: true,
|
|
123
|
+
detail: {
|
|
124
|
+
scrollTop: target.scrollTop,
|
|
125
|
+
scrollHeight: target.scrollHeight,
|
|
126
|
+
clientHeight: target.clientHeight,
|
|
127
|
+
scrollBottom: target.scrollTop + target.clientHeight,
|
|
128
|
+
isAtBottom: target.scrollTop + target.clientHeight >= target.scrollHeight - 1,
|
|
129
|
+
isScrollable: target.scrollHeight > target.clientHeight,
|
|
130
|
+
},
|
|
131
|
+
}));
|
|
132
|
+
};
|
|
106
133
|
}
|
|
107
134
|
connectedCallback() {
|
|
108
135
|
super.connectedCallback();
|
|
@@ -112,6 +139,10 @@ let CdsAiChatPanel = CdsAiChatPanel_1 = class CdsAiChatPanel extends LitElement
|
|
|
112
139
|
this.setupResizeObserver();
|
|
113
140
|
}
|
|
114
141
|
disconnectedCallback() {
|
|
142
|
+
const panelBody = this.renderRoot.querySelector(".panel-body");
|
|
143
|
+
if (panelBody) {
|
|
144
|
+
panelBody.removeEventListener("scroll", this.handleBodyScroll);
|
|
145
|
+
}
|
|
115
146
|
this.removeEventListener("animationstart", this.handleAnimationStart);
|
|
116
147
|
this.removeEventListener("animationend", this.handleAnimationEnd);
|
|
117
148
|
this.clearAnimationFallback();
|
|
@@ -130,8 +161,15 @@ let CdsAiChatPanel = CdsAiChatPanel_1 = class CdsAiChatPanel extends LitElement
|
|
|
130
161
|
this.classList.toggle("panel--with-chat-header", this.showChatHeader);
|
|
131
162
|
this.classList.toggle("panel--with-frame", this.showFrame);
|
|
132
163
|
this.classList.toggle("panel--full-width", this.fullWidth);
|
|
164
|
+
this.classList.toggle("panel--ai-theme", this.aiEnabled);
|
|
165
|
+
this.classList.toggle("panel--body--no-padding", this.bodyNoPadding);
|
|
133
166
|
this.updateHostClasses();
|
|
134
167
|
this.observeSlotContent();
|
|
168
|
+
// Add scroll listener to panel-body
|
|
169
|
+
const panelBody = this.renderRoot.querySelector(".panel-body");
|
|
170
|
+
if (panelBody) {
|
|
171
|
+
panelBody.addEventListener("scroll", this.handleBodyScroll);
|
|
172
|
+
}
|
|
135
173
|
}
|
|
136
174
|
updated(changedProperties) {
|
|
137
175
|
if (changedProperties.has("open") || changedProperties.has("inert")) {
|
|
@@ -146,6 +184,12 @@ let CdsAiChatPanel = CdsAiChatPanel_1 = class CdsAiChatPanel extends LitElement
|
|
|
146
184
|
if (changedProperties.has("fullWidth")) {
|
|
147
185
|
this.classList.toggle("panel--full-width", this.fullWidth);
|
|
148
186
|
}
|
|
187
|
+
if (changedProperties.has("aiEnabled")) {
|
|
188
|
+
this.classList.toggle("panel--ai-theme", this.aiEnabled);
|
|
189
|
+
}
|
|
190
|
+
if (changedProperties.has("bodyNoPadding")) {
|
|
191
|
+
this.classList.toggle("panel--body--no-padding", this.bodyNoPadding);
|
|
192
|
+
}
|
|
149
193
|
if (changedProperties.has("animationOnOpen") ||
|
|
150
194
|
changedProperties.has("animationOnClose")) {
|
|
151
195
|
this.updateHostClasses();
|
|
@@ -293,10 +337,13 @@ let CdsAiChatPanel = CdsAiChatPanel_1 = class CdsAiChatPanel extends LitElement
|
|
|
293
337
|
return;
|
|
294
338
|
}
|
|
295
339
|
this.resizeObserver = new ResizeObserver((entries) => {
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
340
|
+
// Use requestAnimationFrame to avoid ResizeObserver loop errors
|
|
341
|
+
requestAnimationFrame(() => {
|
|
342
|
+
for (const entry of entries) {
|
|
343
|
+
const width = entry.contentRect.width;
|
|
344
|
+
this.updateWidthClass(width);
|
|
345
|
+
}
|
|
346
|
+
});
|
|
300
347
|
});
|
|
301
348
|
this.resizeObserver.observe(this);
|
|
302
349
|
}
|
|
@@ -340,14 +387,14 @@ let CdsAiChatPanel = CdsAiChatPanel_1 = class CdsAiChatPanel extends LitElement
|
|
|
340
387
|
}
|
|
341
388
|
observeSlotContent() {
|
|
342
389
|
const updateSlotStates = () => {
|
|
343
|
-
const previousStates = new Map(
|
|
390
|
+
const previousStates = new Map(CDSAIChatPanel_1.OBSERVED_SLOTS.map(({ stateKey }) => [
|
|
344
391
|
stateKey,
|
|
345
392
|
this[stateKey],
|
|
346
393
|
]));
|
|
347
|
-
|
|
394
|
+
CDSAIChatPanel_1.OBSERVED_SLOTS.forEach(({ name, stateKey }) => {
|
|
348
395
|
this[stateKey] = this.hasSlotContent(name);
|
|
349
396
|
});
|
|
350
|
-
const hasChanged =
|
|
397
|
+
const hasChanged = CDSAIChatPanel_1.OBSERVED_SLOTS.some(({ stateKey }) => previousStates.get(stateKey) !== this[stateKey]);
|
|
351
398
|
if (hasChanged) {
|
|
352
399
|
this.requestUpdate();
|
|
353
400
|
}
|
|
@@ -355,7 +402,7 @@ let CdsAiChatPanel = CdsAiChatPanel_1 = class CdsAiChatPanel extends LitElement
|
|
|
355
402
|
// Initial check
|
|
356
403
|
updateSlotStates();
|
|
357
404
|
// Observe slot changes
|
|
358
|
-
const slots =
|
|
405
|
+
const slots = CDSAIChatPanel_1.OBSERVED_SLOTS.map(({ name }) => this.renderRoot.querySelector(`slot[name="${name}"]`)).filter((slot) => slot !== null);
|
|
359
406
|
slots.forEach((slot) => {
|
|
360
407
|
slot.addEventListener("slotchange", updateSlotStates);
|
|
361
408
|
});
|
|
@@ -391,43 +438,49 @@ let CdsAiChatPanel = CdsAiChatPanel_1 = class CdsAiChatPanel extends LitElement
|
|
|
391
438
|
`;
|
|
392
439
|
}
|
|
393
440
|
};
|
|
394
|
-
|
|
441
|
+
CDSAIChatPanel.styles = styles;
|
|
395
442
|
/**
|
|
396
443
|
* @internal
|
|
397
444
|
*/
|
|
398
|
-
|
|
445
|
+
CDSAIChatPanel.OBSERVED_SLOTS = [
|
|
399
446
|
{ name: "header", stateKey: "hasHeaderContent" },
|
|
400
447
|
{ name: "body", stateKey: "hasBodyContent" },
|
|
401
448
|
{ name: "footer", stateKey: "hasFooterContent" },
|
|
402
449
|
];
|
|
403
450
|
__decorate([
|
|
404
451
|
property({ type: Boolean, reflect: true })
|
|
405
|
-
],
|
|
452
|
+
], CDSAIChatPanel.prototype, "open", void 0);
|
|
406
453
|
__decorate([
|
|
407
454
|
property({ type: Number, reflect: true })
|
|
408
|
-
],
|
|
455
|
+
], CDSAIChatPanel.prototype, "priority", void 0);
|
|
409
456
|
__decorate([
|
|
410
457
|
property({ type: Boolean, attribute: "full-width", reflect: true })
|
|
411
|
-
],
|
|
458
|
+
], CDSAIChatPanel.prototype, "fullWidth", void 0);
|
|
412
459
|
__decorate([
|
|
413
460
|
property({ type: Boolean, attribute: "show-chat-header", reflect: true })
|
|
414
|
-
],
|
|
461
|
+
], CDSAIChatPanel.prototype, "showChatHeader", void 0);
|
|
415
462
|
__decorate([
|
|
416
463
|
property({ type: Boolean, attribute: "show-frame", reflect: true })
|
|
417
|
-
],
|
|
464
|
+
], CDSAIChatPanel.prototype, "showFrame", void 0);
|
|
465
|
+
__decorate([
|
|
466
|
+
property({ type: Boolean, attribute: "ai-enabled", reflect: true })
|
|
467
|
+
], CDSAIChatPanel.prototype, "aiEnabled", void 0);
|
|
468
|
+
__decorate([
|
|
469
|
+
property({ type: Boolean, attribute: "body-no-padding", reflect: true })
|
|
470
|
+
], CDSAIChatPanel.prototype, "bodyNoPadding", void 0);
|
|
418
471
|
__decorate([
|
|
419
472
|
property({ type: String, attribute: "animation-on-open", reflect: true })
|
|
420
|
-
],
|
|
473
|
+
], CDSAIChatPanel.prototype, "animationOnOpen", void 0);
|
|
421
474
|
__decorate([
|
|
422
475
|
property({ type: String, attribute: "animation-on-close", reflect: true })
|
|
423
|
-
],
|
|
476
|
+
], CDSAIChatPanel.prototype, "animationOnClose", void 0);
|
|
424
477
|
__decorate([
|
|
425
478
|
property({ type: Boolean, reflect: true })
|
|
426
|
-
],
|
|
427
|
-
|
|
479
|
+
], CDSAIChatPanel.prototype, "inert", void 0);
|
|
480
|
+
CDSAIChatPanel = CDSAIChatPanel_1 = __decorate([
|
|
428
481
|
carbonElement("cds-aichat-panel")
|
|
429
|
-
],
|
|
430
|
-
var
|
|
482
|
+
], CDSAIChatPanel);
|
|
483
|
+
var CdsChatPanelElement = CDSAIChatPanel;
|
|
431
484
|
|
|
432
|
-
export {
|
|
433
|
-
//# sourceMappingURL=
|
|
485
|
+
export { CdsChatPanelElement as default };
|
|
486
|
+
//# sourceMappingURL=panel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"panel.js","sources":["../../../../src/components/chat-shell/src/panel.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright IBM Corp. 2025
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the Apache-2.0 license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
import { css } from 'lit';
|
|
9
|
+
|
|
10
|
+
var styles = css([":host{block-size:100%;border-end-end-radius:var(--cds-aichat-rounded-modifier-radius-end-end,0);border-end-start-radius:var(--cds-aichat-rounded-modifier-radius-end-start,0);border-start-end-radius:var(--cds-aichat-rounded-modifier-radius-start-start,0);border-start-start-radius:var(--cds-aichat-rounded-modifier-radius-start-end,0);box-sizing:border-box;display:block;inline-size:100%;inset-block-start:0;inset-inline-start:0;margin:0;min-block-size:100%;position:absolute;text-align:start}:host(.panel--ai-theme){background-color:var(--cds-custom-chat-shell-background,#fff);background-image:linear-gradient(0deg,var(--cds-custom-ai-aura-start-sm,rgba(69,137,255,.16)) 0,15%,var(--cds-custom-ai-aura-end,hsla(0,0%,100%,0)) 50%,transparent 100%);border-block-end-color:var(--cds-custom-ai-border-strong,#4589ff)}:host(:not(.panel--ai-theme)){background-color:var(--cds-custom-chat-shell-background,#fff)}:host(.panel--with-less-than-messages-max-width){--cds-aichat-rounded-modifier-radius-end-start:var(--cds-aichat-rounded-modifier-radius,0.5rem);--cds-aichat-rounded-modifier-radius-end-end:var(--cds-aichat-rounded-modifier-radius,0.5rem)}:host(.panel--full-width),:host(:not([show-frame])){--cds-aichat-rounded-modifier-radius-end-start:var(--cds-aichat-rounded-modifier-radius,0.5rem);--cds-aichat-rounded-modifier-radius-end-end:var(--cds-aichat-rounded-modifier-radius,0.5rem)}:host(.panel--full-width:not(.panel--with-chat-header)),:host([show-frame]:not(.panel--full-width)){--cds-aichat-rounded-modifier-radius-start-start:var(--cds-aichat-rounded-modifier-radius,0.5rem);--cds-aichat-rounded-modifier-radius-start-end:var(--cds-aichat-rounded-modifier-radius,0.5rem)}:host(.panel--with-less-than-messages-max-width:not(.panel--with-chat-header)){--cds-aichat-rounded-modifier-radius-start-start:var(--cds-aichat-rounded-modifier-radius,0.5rem);--cds-aichat-rounded-modifier-radius-start-end:var(--cds-aichat-rounded-modifier-radius,0.5rem)}:host([show-frame].panel--with-chat-header){--cds-aichat-rounded-modifier-radius-start-start:var(--cds-aichat-rounded-modifier-radius,0.5rem);--cds-aichat-rounded-modifier-radius-start-end:var(--cds-aichat-rounded-modifier-radius,0.5rem);--cds-aichat-rounded-modifier-radius-start-start:0.5rem;--cds-aichat-rounded-modifier-radius-start-end:0.5rem}:host(.panel-container--animating){overflow:hidden}:host(.panel--closed){display:none}:host-context([dir=rtl]){inset-inline:unset 0;text-align:end}@media screen and (prefers-reduced-motion:no-preference){:host(.panel--opening--fade-in){animation:fade-in .24s cubic-bezier(0,0,.3,1) both}:host(.panel--opening--slide-in-from-bottom){animation:slide-in-from-bottom .24s cubic-bezier(.4,.14,1,1) both}:host(.panel--closing--fade-out){animation:fade-out .24s cubic-bezier(.4,.14,1,1) both}:host(.panel--closing--slide-out-to-top){animation:slide-out-to-top .15s cubic-bezier(.4,.14,1,1) both}:host(.panel--closing--slide-out-to-bottom){animation:slide-out-to-bottom .15s cubic-bezier(.4,.14,1,1) both}}:host(.panel--with-chat-header){block-size:calc(100% - var(--cds-aichat-header-height, 0px));border-start-end-radius:0;border-start-start-radius:0;inline-size:100%;inset-block-start:var(--cds-aichat-header-height,0);min-block-size:calc(100% - var(--cds-aichat-header-height, 0px));overflow:hidden}@media screen and (prefers-reduced-motion:no-preference){:host(.panel--with-chat-header.panel--opening--slide-in-from-bottom){animation:slide-in-from-bottom-with-header .24s cubic-bezier(.4,.14,1,1) both}:host(.panel--with-chat-header.panel--closing--slide-out-to-bottom){animation:slide-out-to-bottom-with-header .15s cubic-bezier(.4,.14,1,1) both}}.panel-content{block-size:100%;border-end-end-radius:var(--cds-aichat-rounded-modifier-radius-end-end,0);border-end-start-radius:var(--cds-aichat-rounded-modifier-radius-end-start,0);border-start-end-radius:var(--cds-aichat-rounded-modifier-radius-start-end,0);border-start-start-radius:var(--cds-aichat-rounded-modifier-radius-start-start,0);box-sizing:border-box;display:flex;flex-direction:column;inline-size:100%;margin:auto;min-block-size:0}:host([show-frame]) .panel-content{background-color:var(--cds-custom-chat-shell-background,#fff);border:1px solid var(--cds-custom-chat-bubble-border,#e0e0e0)}:host([show-frame]:not(.panel--full-width)) .panel-content{margin:auto;max-inline-size:var(--cds-aichat-messages-max-width,672px)}.panel-body{box-sizing:border-box;flex:1 1 auto;inline-size:100%;margin:auto;max-inline-size:var(--cds-aichat-messages-max-width,672px);min-block-size:0;overflow:auto;padding:.75rem}:host(.panel--full-width) .panel-body{max-inline-size:100%}:host(.panel--body--no-padding) .panel-body{padding:0}.panel-footer,.panel-header{flex:0 0 auto;inline-size:100%;max-inline-size:100%}:host([show-frame].panel--with-chat-header) .panel-header.has-content{border-start-end-radius:var(--cds-aichat-rounded-modifier-radius-start-end,0);border-start-start-radius:var(--cds-aichat-rounded-modifier-radius-start-start,0)}:host([show-frame].panel--with-chat-header) .panel-header:not(.has-content)+.panel-body{border-start-end-radius:var(--cds-aichat-rounded-modifier-radius-start-end,0);border-start-start-radius:var(--cds-aichat-rounded-modifier-radius-start-start,0)}:host([show-frame]:not(.panel--full-width)) .panel-footer,:host([show-frame]:not(.panel--full-width)) .panel-header{inline-size:auto;max-inline-size:var(--cds-aichat-messages-max-width,672px)}@keyframes fade-in{0%{inset-inline-end:0;opacity:0}to{inset-inline-end:0;opacity:1}}@keyframes fade-out{0%{opacity:1}to{opacity:0}}@keyframes slide-in-from-bottom{0%{inset-block-start:100%}to{inset-block-start:0}}@keyframes slide-out-to-bottom{0%{inset-block-start:0}to{inset-block-start:100%}}@keyframes slide-in-from-bottom-with-header{0%{inset-block-start:100%}to{inset-block-start:var(--cds-aichat-header-height,0)}}@keyframes slide-out-to-bottom-with-header{0%{inset-block-start:var(--cds-aichat-header-height,0)}to{inset-block-start:100%}}"]);
|
|
11
|
+
|
|
12
|
+
export { styles as default };
|
|
13
|
+
//# sourceMappingURL=panel.scss.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"panel.scss.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;"}
|
|
@@ -7,9 +7,9 @@
|
|
|
7
7
|
* LICENSE file in the root directory of this source tree.
|
|
8
8
|
*/
|
|
9
9
|
import { LitElement, PropertyValues } from "lit";
|
|
10
|
-
import "./
|
|
10
|
+
import "./panel.js";
|
|
11
11
|
type StartOrEnd = "start" | "end";
|
|
12
|
-
declare class
|
|
12
|
+
declare class CDSAIChatShell extends LitElement {
|
|
13
13
|
static styles: any;
|
|
14
14
|
/**
|
|
15
15
|
* Enables AI-specific theming for the chat shell
|
|
@@ -39,6 +39,18 @@ declare class CdsAiChatShell extends LitElement {
|
|
|
39
39
|
* Determines the location of the history panel ("start" or "end")
|
|
40
40
|
*/
|
|
41
41
|
historyLocation: StartOrEnd;
|
|
42
|
+
/**
|
|
43
|
+
* ARIA label for the workspace region
|
|
44
|
+
*/
|
|
45
|
+
workspaceAriaLabel: string;
|
|
46
|
+
/**
|
|
47
|
+
* ARIA label for the history region
|
|
48
|
+
*/
|
|
49
|
+
historyAriaLabel: string;
|
|
50
|
+
/**
|
|
51
|
+
* ARIA label for the messages region
|
|
52
|
+
*/
|
|
53
|
+
messagesAriaLabel: string;
|
|
42
54
|
private getWidgetClasses;
|
|
43
55
|
private getInputAndMessagesClasses;
|
|
44
56
|
private renderSlot;
|
|
@@ -69,5 +81,9 @@ declare class CdsAiChatShell extends LitElement {
|
|
|
69
81
|
* Check if --cds-aichat-messages-max-width has changed and trigger recalculation.
|
|
70
82
|
*/
|
|
71
83
|
private checkMessagesMaxWidthChange;
|
|
84
|
+
private syncWorkspacePanelState;
|
|
85
|
+
private scheduleWorkspacePanelOpen;
|
|
86
|
+
private cancelWorkspacePanelOpenSchedule;
|
|
87
|
+
private handleWorkspacePanelCloseEnd;
|
|
72
88
|
}
|
|
73
|
-
export default
|
|
89
|
+
export default CDSAIChatShell;
|