@tylertech/forge-ai 0.13.2 → 0.13.4
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/custom-elements.json +783 -574
- package/dist/ai-artifact/ai-artifact.scss.mjs +1 -1
- package/dist/ai-assistant-response/ai-assistant-response.d.ts +0 -2
- package/dist/ai-assistant-response/ai-assistant-response.mjs +24 -106
- package/dist/ai-assistant-response/ai-assistant-response.scss.mjs +1 -1
- package/dist/ai-chat-header/ai-chat-header.scss.mjs +1 -1
- package/dist/ai-chat-interface/ai-chat-interface.scss.mjs +1 -1
- package/dist/ai-chatbot/ai-chatbot-base.d.ts +4 -2
- package/dist/ai-chatbot/ai-chatbot-base.mjs +16 -24
- package/dist/ai-chatbot/ai-chatbot-tool-call.d.ts +0 -5
- package/dist/ai-chatbot/ai-chatbot-tool-call.mjs +5 -175
- package/dist/ai-chatbot/ai-chatbot-tool-call.scss.mjs +1 -1
- package/dist/ai-chatbot/ai-chatbot.mjs +5 -258
- package/dist/ai-chatbot/ai-chatbot.scss.mjs +1 -1
- package/dist/ai-chatbot/index.d.ts +1 -1
- package/dist/ai-chatbot/utils.d.ts +20 -1
- package/dist/ai-chatbot/utils.mjs +44 -0
- package/dist/ai-chatbot-launcher/ai-chatbot-launcher.mjs +20 -9
- package/dist/ai-chatbot-launcher/ai-chatbot-launcher.scss.mjs +1 -1
- package/dist/ai-error-message/ai-error-message.scss.mjs +1 -1
- package/dist/ai-floating-chat/ai-floating-chat.d.ts +8 -0
- package/dist/ai-floating-chat/ai-floating-chat.mjs +8 -0
- package/dist/ai-message-thread/ai-message-thread.d.ts +1 -1
- package/dist/ai-message-thread/ai-message-thread.mjs +13 -20
- package/dist/ai-message-thread/ai-message-thread.scss.mjs +1 -1
- package/dist/ai-prompt/ai-prompt.mjs +4 -4
- package/dist/ai-reasoning-header/ai-reasoning-header.mjs +4 -4
- package/dist/ai-response-message/ai-response-message.scss.mjs +1 -1
- package/dist/ai-response-message-toolbar/ai-response-message-toolbar.mjs +12 -12
- package/dist/ai-thread-actions-menu/ai-thread-actions-menu.mjs +3 -2
- package/dist/ai-thread-actions-menu/ai-thread-actions-menu.scss.mjs +1 -1
- package/dist/ai-threads/ai-threads.scss.mjs +1 -1
- package/dist/ai-tool-call-indicator/ai-tool-call-indicator.d.ts +12 -8
- package/dist/ai-tool-call-indicator/ai-tool-call-indicator.mjs +244 -32
- package/dist/ai-tool-call-indicator/ai-tool-call-indicator.scss.mjs +1 -1
- package/dist/ai-user-message/ai-user-message.scss.mjs +1 -1
- package/dist/core/tooltip/tooltip.scss.mjs +1 -1
- package/dist/tools/ai-data-table/ai-data-table.mjs +60 -25
- package/dist/tools/ai-data-table/ai-data-table.scss.mjs +1 -1
- package/dist/utils/csv-utils.d.ts +4 -0
- package/dist/utils/csv-utils.mjs +65 -0
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.mjs +6 -1
- package/package.json +5 -5
- package/dist/ai-event-stream-viewer/ai-event-stream-viewer.d.ts +0 -19
- package/dist/ai-event-stream-viewer/ai-event-stream-viewer.mjs +0 -164
- package/dist/ai-event-stream-viewer/ai-event-stream-viewer.scss.mjs +0 -4
- package/dist/ai-event-stream-viewer/index.d.ts +0 -1
- package/dist/ai-event-stream-viewer/index.mjs +0 -5
|
@@ -32,7 +32,7 @@ var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot
|
|
|
32
32
|
var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
|
|
33
33
|
var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
|
|
34
34
|
var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "access private method"), method);
|
|
35
|
-
var _chatInterfaceRef, _headerRef, _conversationsPanelRef, _conversationsDialogRef, _boundEscapeHandler, _AiChatbotComponent_instances, handleHeaderExpand_fn, handleHeaderMinimize_fn, handleHeaderClear_fn, handleHeaderInfo_fn, handleConversationsDialogClose_fn, handleEscapeKey_fn, handleBackdropClick_fn, handleConversationsToggle_fn, handleThreadSelect_fn, handleNewChat_fn, handlePanelClose_fn, _handleConversationSearch, _handleConversationLoadMore, _handleConversationRename, _handleConversationDelete, promptSlot_get, messageThread_get
|
|
35
|
+
var _chatInterfaceRef, _headerRef, _conversationsPanelRef, _conversationsDialogRef, _boundEscapeHandler, _AiChatbotComponent_instances, handleHeaderExpand_fn, handleHeaderMinimize_fn, handleHeaderClear_fn, handleHeaderInfo_fn, handleConversationsDialogClose_fn, handleEscapeKey_fn, handleBackdropClick_fn, handleConversationsToggle_fn, handleThreadSelect_fn, handleNewChat_fn, handlePanelClose_fn, _handleConversationSearch, _handleConversationLoadMore, _handleConversationRename, _handleConversationDelete, promptSlot_get, messageThread_get;
|
|
36
36
|
const AiChatbotComponentTagName = "forge-ai-chatbot";
|
|
37
37
|
let AiChatbotComponent = class extends AiChatbotBase {
|
|
38
38
|
constructor() {
|
|
@@ -101,260 +101,6 @@ let AiChatbotComponent = class extends AiChatbotBase {
|
|
|
101
101
|
e.preventDefault();
|
|
102
102
|
}
|
|
103
103
|
});
|
|
104
|
-
__privateAdd(this, _defaultEmptyStateIcon, html`
|
|
105
|
-
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 200 200" class="empty-state-icon">
|
|
106
|
-
<defs>
|
|
107
|
-
<style>
|
|
108
|
-
.cls-1 {
|
|
109
|
-
isolation: isolate;
|
|
110
|
-
}
|
|
111
|
-
.cls-2 {
|
|
112
|
-
fill: #d0dbf4;
|
|
113
|
-
}
|
|
114
|
-
.cls-11,
|
|
115
|
-
.cls-2 {
|
|
116
|
-
fill-rule: evenodd;
|
|
117
|
-
}
|
|
118
|
-
.cls-15,
|
|
119
|
-
.cls-3 {
|
|
120
|
-
fill: #fcbf12;
|
|
121
|
-
}
|
|
122
|
-
.cls-13,
|
|
123
|
-
.cls-4,
|
|
124
|
-
.cls-5 {
|
|
125
|
-
fill: none;
|
|
126
|
-
}
|
|
127
|
-
.cls-14,
|
|
128
|
-
.cls-15,
|
|
129
|
-
.cls-16,
|
|
130
|
-
.cls-17,
|
|
131
|
-
.cls-4,
|
|
132
|
-
.cls-5 {
|
|
133
|
-
stroke: #586ab1;
|
|
134
|
-
stroke-linecap: round;
|
|
135
|
-
stroke-linejoin: round;
|
|
136
|
-
}
|
|
137
|
-
.cls-5 {
|
|
138
|
-
stroke-width: 0.75px;
|
|
139
|
-
}
|
|
140
|
-
.cls-6 {
|
|
141
|
-
fill: #99a2bc;
|
|
142
|
-
}
|
|
143
|
-
.cls-10,
|
|
144
|
-
.cls-12,
|
|
145
|
-
.cls-17,
|
|
146
|
-
.cls-19,
|
|
147
|
-
.cls-7 {
|
|
148
|
-
fill: #d1d1d1;
|
|
149
|
-
}
|
|
150
|
-
.cls-7 {
|
|
151
|
-
opacity: 0.6;
|
|
152
|
-
}
|
|
153
|
-
.cls-10,
|
|
154
|
-
.cls-12,
|
|
155
|
-
.cls-19,
|
|
156
|
-
.cls-7 {
|
|
157
|
-
mix-blend-mode: multiply;
|
|
158
|
-
}
|
|
159
|
-
.cls-8 {
|
|
160
|
-
fill: #e5e5e5;
|
|
161
|
-
}
|
|
162
|
-
.cls-11,
|
|
163
|
-
.cls-14,
|
|
164
|
-
.cls-9 {
|
|
165
|
-
fill: #fff;
|
|
166
|
-
}
|
|
167
|
-
.cls-10 {
|
|
168
|
-
opacity: 0.44;
|
|
169
|
-
}
|
|
170
|
-
.cls-12 {
|
|
171
|
-
opacity: 0.62;
|
|
172
|
-
}
|
|
173
|
-
.cls-16 {
|
|
174
|
-
fill: #5cc5cd;
|
|
175
|
-
}
|
|
176
|
-
.cls-18 {
|
|
177
|
-
fill: #586ab1;
|
|
178
|
-
}
|
|
179
|
-
.cls-19 {
|
|
180
|
-
opacity: 0.07;
|
|
181
|
-
}
|
|
182
|
-
</style>
|
|
183
|
-
</defs>
|
|
184
|
-
<title>chickadee-guide-spot-hero</title>
|
|
185
|
-
<g class="cls-1">
|
|
186
|
-
<g id="Layer_1" data-name="Layer 1">
|
|
187
|
-
<path class="cls-2" d="M98.17,120.45A43.77,43.77,0,1,0,54.4,76.68,43.77,43.77,0,0,0,98.17,120.45Z" />
|
|
188
|
-
<path
|
|
189
|
-
class="cls-3"
|
|
190
|
-
d="M157.52,156.26s1.48-.55,2.14,2c2,7.77-1.77,16.33-3.63,15.77,0,0-1.44,1.58-2.93-.84,0,0-1.16-3.07-12.51-3.25l-58-.28-10.6-.37s-2,1.3-5.21-.56-16.84-8.93-16.84-8.93-4.46-.75-6.6-.37L28,154.12s-1.12-1.3.65-1.3,14.08,3.25,14.08,3.25l8.15-.27-3.67-6.89s-.05-2.14,1.81-.74L54.63,156l16.84,7.54,36.28-1.12,31.63-.18s9.86,0,13.39-2.05A14.54,14.54,0,0,0,157.52,156.26Z" />
|
|
191
|
-
<path
|
|
192
|
-
class="cls-4"
|
|
193
|
-
d="M51.61,156l-8.85.11s-10.24-2.58-13.17-3.17-1.86,1-1.86,1L43,159.31s4.93-.27,7.37.74,15.39,8.15,17.2,9a5.89,5.89,0,0,0,3.59.33l24.32.58s43.72-.15,45.77-.06,8.93.82,12.56,3.61c0,0,2.09,2.23,3.9-.7" />
|
|
194
|
-
<path
|
|
195
|
-
class="cls-4"
|
|
196
|
-
d="M50.77,155.34l-3.53-6.43a1.17,1.17,0,0,1,1.16-1.47L55,156.18,70,162.78l70.41-.47c2,.09,13.59-.64,16-4.56,0,0,1.86-2.28,2.84-.19" />
|
|
197
|
-
<path
|
|
198
|
-
class="cls-5"
|
|
199
|
-
d="M96.45,167.25a61.73,61.73,0,0,0,16.31,0c12.94-1.71,14.89-1.47,21-.74a54.38,54.38,0,0,0,14.32,0" />
|
|
200
|
-
<path class="cls-5" d="M90.59,166.08s.9.28,2.53.61" />
|
|
201
|
-
<path class="cls-5" d="M150.61,166a10.32,10.32,0,0,1,5.13-.49" />
|
|
202
|
-
<path class="cls-5" d="M87.52,165.24s-4.75-.84-7-.42" />
|
|
203
|
-
<path class="cls-5" d="M55.56,159.8s9.49,4.88,14.8,4.74" />
|
|
204
|
-
<path
|
|
205
|
-
class="cls-6"
|
|
206
|
-
d="M101.4,143.68,89.26,159.31a2.44,2.44,0,0,1-1.39.7c-.7,0-9.7-.56-11.24-.28s-1.74.83-1.39,1,6.77.91,6.77.91l-7,1.61s-1.26,1.11-1,1.74,2-.07,2-.07L84,163.36s-4.81,2-5.3,2.86-1.51,1.95-.86,2S89.12,163,90,162.87a45,45,0,0,1,5,.21s1.13-.79-.13-1.41a12.23,12.23,0,0,0-3.63-.76s-.49-.55.48-1.67,13.82-13.19,13.82-13.19l-4.4-2.44" />
|
|
207
|
-
<polygon class="cls-7" points="97.52 148.73 100.96 150.03 103.38 147.8 99.1 146.77 97.52 148.73" />
|
|
208
|
-
<path
|
|
209
|
-
class="cls-6"
|
|
210
|
-
d="M117.1,146.26a142.71,142.71,0,0,1,8.84,11.44c3.16,4.84,6,7,8,6s1.86-5.12,1.86-5.12,6.91.65,8.1-2-1.22-3.81-4.38-5.11S127.24,141,127.24,141Z" />
|
|
211
|
-
<path class="cls-7" d="M120,150.4c.65-.18,9.12-2.79,11.44-4.65l-2.1-1.53-2.92-.05-8.65,3.63Z" />
|
|
212
|
-
<path
|
|
213
|
-
class="cls-6"
|
|
214
|
-
d="M113.24,146.4,110.45,161a1.75,1.75,0,0,1-1.54.83,12.83,12.83,0,0,0-4,0c-.51.28-.79.79-.14.88a19.22,19.22,0,0,1,4.38,1.21c.65.47,6.6,5.3,7.21,6.05s3,3.49,3.53,3,.23-2.33-.6-3.12-2.66-2.75-2.66-2.75l7.17,4.28s1.52-.89.43-1.79-7-4.11-7-4.11,8,1.95,7.72,1.2-12.33-4.88-12.33-4.88l5.12-14.65Z" />
|
|
215
|
-
<polygon class="cls-7" points="112.68 150.68 116.5 150.4 117.69 147.5 113.89 148.36 112.68 150.68" />
|
|
216
|
-
<path
|
|
217
|
-
class="cls-8"
|
|
218
|
-
d="M41.68,90.4s-5,19.93-1.36,26c0,0,1.88,2.28,2.3-1.17S45.88,105,47.85,104c0,0-2.65,12.43.34,18.13,0,0,1.42,4.08,2.61,3.6s.91-3.6.78-6,2.24-11.78,5.52-12.87c0,0-4.71,15.92,3.36,22.66,0,0,2,.89,2-2s-.95-9.57,2.14-12.47c0,0,.25,12.82,9.07,12.82,0,0,4.61-28.74,3.66-29s-32.68-14.1-32.68-14.1Z" />
|
|
219
|
-
<path
|
|
220
|
-
class="cls-4"
|
|
221
|
-
d="M124.32,137.45s8.39,11.4,17.51,14.8c0,0,4.29,1.58,2.07,4.24s-7.69,2-7.69,2,.54,4.68-2.81,5.17-6.37-3.79-7.16-5.57-5.72-9-9.37-11.64" />
|
|
222
|
-
<path
|
|
223
|
-
class="cls-9"
|
|
224
|
-
d="M75.38,91.57s-9.07,14.09-7.95,26.37,10.18,20.51,18.27,24,18,6.83,24.56,6.42,14.65-3.07,17.72-4.89a36.75,36.75,0,0,0,6.7-5.86L112.08,92Z" />
|
|
225
|
-
<path
|
|
226
|
-
class="cls-10"
|
|
227
|
-
d="M97.8,105.56s-1.58,2.7-.19,4.66L103.1,117s-5.86,9.76-1.77,17.67c0,0,1.58,2.7,7,1.68,0,0,6.88,8.65,15.63,9l2.88-1.21Z" />
|
|
228
|
-
<path
|
|
229
|
-
class="cls-6"
|
|
230
|
-
d="M83,85.61s-5.26,2.19-6.84,4.56c0,0,1.44,8,4.84,10.19,0,0-.47-1.82.46-2.1s1.86,2.19,1.86,2.19,1.54-4.75,3.3-4.37-.18,4.46-.18,4.46,2.72-1.74,2.91-.66-1.28,2.89-1.28,2.89,10.51-2.32,15.16-5,4-2.79,4-2.79l-1.07-3.67s-5-4.28-6.56-5.82a10.69,10.69,0,0,0-2.93-2.14S93.75,89,92.5,89.24s-7.07-3.77-7.07-3.77Z" />
|
|
231
|
-
<path
|
|
232
|
-
class="cls-11"
|
|
233
|
-
d="M79,75s-5.49,8.47-4,17c0,0,1.39-4,7.53-6.32,0,0-4.09.84-3.25-.75s5.76-5.76,5.76-5.76S79.94,77.38,79,75Z" />
|
|
234
|
-
<path
|
|
235
|
-
class="cls-12"
|
|
236
|
-
d="M79.26,75.43a8.75,8.75,0,0,0-2.88,4s3.07,1.86,4.65,2l3-2.23S79.54,77.29,79.26,75.43Z" />
|
|
237
|
-
<path
|
|
238
|
-
class="cls-11"
|
|
239
|
-
d="M91.84,76.36a20.73,20.73,0,0,1,8,2.09c4.46,2.09,15.76,3.63,21.07-8.23,0,0,4.88,9.07,5.58,15.76,0,0-9.07,10.47-11,11.31s-19-14.24-19.54-15.77S92.54,76.5,91.84,76.36Z" />
|
|
240
|
-
<polyline class="cls-13" points="-0.12 199.83 -0.12 -0.17 199.88 -0.17" />
|
|
241
|
-
<path
|
|
242
|
-
class="cls-6"
|
|
243
|
-
d="M84.12,79a11.71,11.71,0,0,1,8.56-2.46,19.88,19.88,0,0,1,5,1c3.38,1.43,6.82,3.56,12.32,2,8.1-2.24,10.33-8.52,10.33-8.52l.42-1.81a19.11,19.11,0,0,0-6-9.77s-.14-1,.28-.84,7.8-1.54,7-2.23-9.07,1.26-8.37.84,2.93-3.91,2.79-4.33-2.09-.69-3.35,1a9.83,9.83,0,0,1-3.49,2.65s-16.32-8.23-28.46,5c0,0-4.19,9.16-2.79,10.27L78,73.43S80.54,78,82.36,78.5" />
|
|
244
|
-
<path
|
|
245
|
-
class="cls-12"
|
|
246
|
-
d="M107.94,72.17s-1,7.42-6.28,8.23c-5.75.89-7.82-2.09-7.82-2.09S103.66,82.5,107.94,72.17Z" />
|
|
247
|
-
<path
|
|
248
|
-
class="cls-6"
|
|
249
|
-
d="M69.83,101.93c1.45-4,3.3-6.79,5.07-12.21l-2.78.51a12.72,12.72,0,0,1-2,.31c-.67,0-3.08-.13-3.08-.13s-8.84.41-18.5-7.89c0,0-6.18-6.33-10-1.86-2.43,2.83-.44,11.13-9.16,12.61,0,0-2.55,1.34,1.21,2.41s8.58,2.69,15-8.58l1.21-1.74s8.53,14.48,21.68,14.88" />
|
|
250
|
-
<path class="cls-4" d="M48.53,82.52c2.26,2.06,13.66,10.59,26.37,7" />
|
|
251
|
-
<path
|
|
252
|
-
class="cls-4"
|
|
253
|
-
d="M42.22,92.87s-6.58,17.83-1.35,24.27c0,0,1.35,1.08,1.75-1.88s3-9.79,5.23-11.26c0,0-2,9.12-.81,15.83,0,0,1.61,6.16,3.76,5.9S52,120,52,120s-.41-9,5.09-13.14c0,0-4.83,13.54,3.36,22.66,0,0,1.74,1.07,2-2,0,0-1.34-7.64,2.14-12.47,0,0-.13,6.21,3.09,10.32a7.76,7.76,0,0,0,2.55,2.18" />
|
|
254
|
-
<path class="cls-4" d="M46.78,85.36S55.63,99.17,68,100.24A5.52,5.52,0,0,1,69.7,102" />
|
|
255
|
-
<polygon class="cls-14" points="32.83 107.73 37.77 104.93 32.88 102.06 32.83 107.73" />
|
|
256
|
-
<rect
|
|
257
|
-
class="cls-15"
|
|
258
|
-
x="40.84"
|
|
259
|
-
y="72.64"
|
|
260
|
-
width="5.72"
|
|
261
|
-
height="33.14"
|
|
262
|
-
transform="translate(51.23 -9.84) rotate(30.45)" />
|
|
263
|
-
<line class="cls-5" x1="35.29" y1="103.42" x2="51.82" y2="75.44" />
|
|
264
|
-
<path
|
|
265
|
-
class="cls-16"
|
|
266
|
-
d="M56.14,71.65,52.83,69.8a.91.91,0,0,0-.58-.11.81.81,0,0,0-.36.12,1,1,0,0,0-.34.35l-.83,1.48a1,1,0,0,0,0,.82.89.89,0,0,0,.4.46l3.32,1.85a1,1,0,0,0,.76.07,1,1,0,0,0,.52-.43l.82-1.49a.89.89,0,0,0,.11-.63A1,1,0,0,0,56.5,72,.89.89,0,0,0,56.14,71.65Z" />
|
|
267
|
-
<path
|
|
268
|
-
class="cls-17"
|
|
269
|
-
d="M50.58,72.13c-.12,0-.29.11-.4.31l-.57,1c-.13.24-.14.48,0,.55h0l1.08.6L53,75.91h0l1.13.64h0c.12.07.32-.07.45-.3l.57-1c.13-.23.14-.48,0-.54l-.07,0-4.51-2.53Z" />
|
|
270
|
-
<circle class="cls-18" cx="33.52" cy="106.5" r="0.75" />
|
|
271
|
-
<path class="cls-6" d="M42.84,81.91s.87,9.72-3.51,12.75S32,95.85,32,95.85l.56-2Z" />
|
|
272
|
-
<path
|
|
273
|
-
class="cls-4"
|
|
274
|
-
d="M43,84.69s-.4,8.18-4.56,10.73-9.25,0-9.25,0-1.75-2.15.93-2.28,6-2.69,7.52-9.8S45.43,80,45.43,80" />
|
|
275
|
-
<path
|
|
276
|
-
class="cls-10"
|
|
277
|
-
d="M72.12,90.23s-8.25,12.24-7.17,26.7c0,0,2,10.3,6,10.85a28.14,28.14,0,0,1-2-22.78,109.62,109.62,0,0,1,5-11.93l1-2.35-.73-1.18Z" />
|
|
278
|
-
<line class="cls-4" x1="117.68" y1="147.5" x2="112.17" y2="162.5" />
|
|
279
|
-
<path
|
|
280
|
-
class="cls-4"
|
|
281
|
-
d="M78.45,75.59S74,81.08,75,91.15c0,0-9,16.91-7.85,25.68S72.49,140,99.38,147,139,132.63,139,132.63s-14-60.81-20.46-69a24.7,24.7,0,0,0-22.89-9.52C80.22,55.8,78.73,67.84,78.73,67.84s-.68,3-.91,4.75" />
|
|
282
|
-
<path class="cls-4" d="M98.72,144.64c.44.23.88.46,1.34.68" />
|
|
283
|
-
<path class="cls-4" d="M83.29,103.19S78,130.34,95.77,142.82" />
|
|
284
|
-
<path
|
|
285
|
-
class="cls-4"
|
|
286
|
-
d="M96.92,82.64S94,77.08,90.79,76.5c0,0-5.26-.29-11.69,7.89,0,0-1.76.88,2.63,1.17S93.12,84.68,96.92,82.64Z" />
|
|
287
|
-
<path class="cls-4" d="M86.11,86.14s4.68,3.51,6.43,2.93,4.38-6.43,4.38-6.43" />
|
|
288
|
-
<line class="cls-4" x1="98.39" y1="147.25" x2="88.77" y2="159.88" />
|
|
289
|
-
<path class="cls-4" d="M125,98.71s-5.26,9.06-4.38,16.07" />
|
|
290
|
-
<path class="cls-4" d="M121.47,69.05c-7.74,15-19.14,11.25-22.5,9.06s-8.18-1.61-8.18-1.61" />
|
|
291
|
-
<path class="cls-4" d="M112,89.8c10.09.58,14-5.7,14-5.7" />
|
|
292
|
-
<path class="cls-4" d="M110.58,57s2.54-4.77,5.26-4.38-3.5,4.77-3.5,4.77,8.47-2,9.64-1-8.09,2.37-8.09,2.37" />
|
|
293
|
-
<path
|
|
294
|
-
class="cls-19"
|
|
295
|
-
d="M97.8,105.56s-1.58,2.7-.19,4.66L103.1,117s-5.86,9.76-1.77,17.67c0,0,1.58,2.7,7,1.68,0,0,6.88,8.65,15.63,9l2.88-1.21Z" />
|
|
296
|
-
<line class="cls-4" x1="103.06" y1="148.12" x2="90.82" y2="160.17" />
|
|
297
|
-
<path
|
|
298
|
-
class="cls-4"
|
|
299
|
-
d="M121.05,88.45s2,1.21,1,2.14-4.93-.93-4.93-.93.37,2.23-1.49,2.6S108,89.57,108,89.57s0,1.58-1.3,1.86c-1,.21-4.68-3.41-6.34-5.1l-.83-.86a17,17,0,0,0-2.88-2.74" />
|
|
300
|
-
<path class="cls-4" d="M83.19,85.75s-6,1.58-8.56,6.33" />
|
|
301
|
-
<path class="cls-4" d="M87.74,102.9c5.61-.26,13.42-3,20.94-8.78" />
|
|
302
|
-
<path class="cls-4" d="M76.12,90.59s1.53,7,5,10.37" />
|
|
303
|
-
<path class="cls-18" d="M108.51,55.37s-3.25-2.78-4.68-2.89.61,2.08.61,2.08l4.54,1" />
|
|
304
|
-
<path class="cls-18" d="M110.76,57c-.2-.79-.88-5.32-2.52-5.77s-.52,4.85-.52,4.85Z" />
|
|
305
|
-
<path
|
|
306
|
-
class="cls-4"
|
|
307
|
-
d="M81.3,101.41s-1.18-2.8,0-3.22,2.3,2.88,2.3,2.88.5-4.84,2.88-4.92-.17,5.09-.17,5.09,2.11-2.11,3-1.36c1.18.94-1.7,3.08-1.7,3.08" />
|
|
308
|
-
<ellipse class="cls-4" cx="99.14" cy="70.08" rx="8.69" ry="9.07" />
|
|
309
|
-
<ellipse class="cls-4" cx="81.62" cy="70.98" rx="6.98" ry="8.85" />
|
|
310
|
-
<path class="cls-4" d="M107.89,70.08c.42-.14,13.26-6.7,13.26-6.7s2.37-1,3.07,1.25" />
|
|
311
|
-
<line class="cls-4" x1="90.45" y1="69.24" x2="88.36" y2="69.24" />
|
|
312
|
-
<path class="cls-4" d="M102.47,68.3a3.51,3.51,0,0,0-4.54-1.6" />
|
|
313
|
-
<circle class="cls-18" cx="98.98" cy="73.02" r="2.08" />
|
|
314
|
-
<circle class="cls-9" cx="98.29" cy="72.57" r="0.5" />
|
|
315
|
-
<path class="cls-18" d="M107.68,68.75l1-.28A8.61,8.61,0,0,1,108.9,71l-.94.21Z" />
|
|
316
|
-
<path class="cls-4" d="M81.14,68.3a3.5,3.5,0,0,1,4.53-1.6" />
|
|
317
|
-
<circle class="cls-18" cx="84.63" cy="73.02" r="2.08" />
|
|
318
|
-
<circle class="cls-9" cx="85.32" cy="72.57" r="0.5" />
|
|
319
|
-
<path class="cls-4" d="M84.45,79s-4.19.69-6.56-6.14" />
|
|
320
|
-
<path
|
|
321
|
-
class="cls-4"
|
|
322
|
-
d="M86.25,162.69c-.26.19-6.38,2.33-7.27,3.16s-1.46,2.06-1.18,2.36,1.94-.53,1.94-.53,9.15-5.06,12.17-4.89,3.57.28,3.57.28.61-.83-.63-1.4a7.84,7.84,0,0,0-2.79-.56,1.37,1.37,0,0,1-1.33-.89" />
|
|
323
|
-
<path class="cls-4" d="M85.15,163c-3,.65-10.44,2.53-11,2.42s-.36-1.1.5-1.84,9.13-1.84,9.13-1.84" />
|
|
324
|
-
<path class="cls-4" d="M88.54,160S77,159.1,75.36,160s1.13,1.1,2.36,1.18l6.54.46" />
|
|
325
|
-
<path
|
|
326
|
-
class="cls-4"
|
|
327
|
-
d="M113.84,165.29c.2.26,5,4,5.62,5s.78,2.39.43,2.6-1.69-1.08-1.69-1.08-7.26-7.53-10.2-8.26-3.49-.78-3.49-.78-.33-1,1-1.15a7.83,7.83,0,0,1,2.82.28,7.83,7.83,0,0,0,1.73-.13" />
|
|
328
|
-
<path class="cls-4" d="M114.4,165.76c2.67,1.54,9.2,5.62,9.74,5.68s.68-.94.09-1.9-8.12-4.7-8.12-4.7" />
|
|
329
|
-
<path class="cls-4" d="M112.46,162.2s10.94,2.41,12.19,3.8-1.42.7-2.61.39-6.15-1.62-6.15-1.62" />
|
|
330
|
-
<line class="cls-4" x1="113.22" y1="148.24" x2="110.08" y2="162.31" />
|
|
331
|
-
<path class="cls-5" d="M127.94,145.52a22.35,22.35,0,0,0,9.9,7.44" />
|
|
332
|
-
<path class="cls-5" d="M139.56,153.84s1,.47.84.93" />
|
|
333
|
-
<path class="cls-5" d="M122.31,148.12s5.21,6.14,6.51,8.28,2.05,3.54,2.61,3.72" />
|
|
334
|
-
<path
|
|
335
|
-
class="cls-6"
|
|
336
|
-
d="M108.13,115.5s-6.13,10.81-5.65,15,6.67,3.39,6.67,3.39,12.33,12.59,21.68,9.72c0,0,1-.52-2.05-5.85,0,0,10.48,4.09,14.35,1.73,0,0,2.59-1.73.33-2.85l-4.84-2.42L146,132a124.87,124.87,0,0,0,1.61-25.33S142,93.88,128.13,93.56Z" />
|
|
337
|
-
<path
|
|
338
|
-
class="cls-17"
|
|
339
|
-
d="M113.83,89.32a4.47,4.47,0,0,0-7.15,5.36l-5.37,4,4.48,6,17.85-13.38-4.49-6Zm-5.28,3.92a2.08,2.08,0,1,1,3.32-2.5Z" />
|
|
340
|
-
<path
|
|
341
|
-
class="cls-3"
|
|
342
|
-
d="M111.84,124.7c-.43.75-13.45-18.29-13.45-18.29a1.79,1.79,0,0,1,.86-2c1.29-1,24.52-17.75,24.52-17.75s1.3-3.38,3.23-1,11,20.65,11,20.65,1.29,1.45-.48,1.93S116,117.28,111.84,124.7Z" />
|
|
343
|
-
<path
|
|
344
|
-
class="cls-4"
|
|
345
|
-
d="M111.84,124.54,98.39,106.41a1.16,1.16,0,0,1,.25-1.62l26.75-19.38a1.14,1.14,0,0,1,1.61.25l12.1,21.94" />
|
|
346
|
-
<path class="cls-4" d="M107.8,126.79s.81,1.94,4.52-2.58,15-12.9,26.78-16.45c0,0,1.94,0,1.94-2.75" />
|
|
347
|
-
<path
|
|
348
|
-
class="cls-4"
|
|
349
|
-
d="M109.15,133.89c.43.22,10.43,11.51,20.22,10.33,0,0,2.9-.33,1.61-2.69s-2.69-4.41-2.69-4.41,7,5.48,14.84,2.37a2,2,0,0,0,1.08-1.94c-.22-1.29-7.42-4.41-7.42-4.41" />
|
|
350
|
-
<path class="cls-4" d="M138.4,133.68A18.6,18.6,0,0,0,146,132s2.47-6.24,1.5-24.42c0,0,.41-8.73-16-13.75" />
|
|
351
|
-
<path class="cls-4" d="M106.57,117.54s-5.81,10.54-3.45,15.28c0,0,1.51,2.15,8.82.64" />
|
|
352
|
-
<path class="cls-5" d="M114.47,127.49a5.72,5.72,0,0,0,1.21-.8" />
|
|
353
|
-
<path class="cls-5" d="M117.83,124.94s7.75-6.78,14.44-9.44" />
|
|
354
|
-
</g>
|
|
355
|
-
</g>
|
|
356
|
-
</svg>
|
|
357
|
-
`);
|
|
358
104
|
}
|
|
359
105
|
_handleInfo() {
|
|
360
106
|
const header = __privateGet(this, _headerRef).value;
|
|
@@ -427,7 +173,7 @@ let AiChatbotComponent = class extends AiChatbotBase {
|
|
|
427
173
|
?show-conversations-button=${this.showConversationsButton}
|
|
428
174
|
?expanded=${this.expanded}
|
|
429
175
|
?disable-agent-selector=${this._isStreaming}
|
|
430
|
-
export-option=${this._hasMessages ? "enabled" : "off"}
|
|
176
|
+
export-option=${this.exportOption === "off" ? "off" : this._hasMessages ? "enabled" : "off"}
|
|
431
177
|
clear-option=${this._hasMessages ? "enabled" : "off"}
|
|
432
178
|
.minimizeIcon=${this.minimizeIcon}
|
|
433
179
|
.agentInfo=${this.agentInfo}
|
|
@@ -579,6 +325,8 @@ promptSlot_get = function() {
|
|
|
579
325
|
variant="icon-button"
|
|
580
326
|
multiple
|
|
581
327
|
?disabled=${isUploading}
|
|
328
|
+
.maxSize=${this.maxFileSize}
|
|
329
|
+
.accept=${this.acceptedFileTypes}
|
|
582
330
|
.selectedFiles=${this._coreController?.pendingAttachments.map((a) => a.filename) ?? []}
|
|
583
331
|
@forge-ai-file-picker-change=${this._handleFileSelect}
|
|
584
332
|
@forge-ai-file-picker-error=${this._handleFileError}>
|
|
@@ -611,7 +359,7 @@ messageThread_get = function() {
|
|
|
611
359
|
@forge-ai-message-thread-user-copy=${this._handleUserCopy}
|
|
612
360
|
@forge-ai-message-thread-user-resend=${this._handleUserResend}
|
|
613
361
|
@forge-ai-message-thread-user-edit=${this._handleUserEdit}>
|
|
614
|
-
<slot name="empty-state-icon" slot="empty-state-icon"
|
|
362
|
+
<slot name="empty-state-icon" slot="empty-state-icon"></slot>
|
|
615
363
|
<slot name="empty-state-heading" slot="empty-state-heading"></slot>
|
|
616
364
|
<slot name="empty-state-message" slot="empty-state-message"></slot>
|
|
617
365
|
<div class="suggestions-container" slot="empty-state-actions">
|
|
@@ -624,7 +372,6 @@ messageThread_get = function() {
|
|
|
624
372
|
</forge-ai-message-thread>
|
|
625
373
|
`;
|
|
626
374
|
};
|
|
627
|
-
_defaultEmptyStateIcon = /* @__PURE__ */ new WeakMap();
|
|
628
375
|
AiChatbotComponent.styles = unsafeCSS(styles);
|
|
629
376
|
__decorateClass([
|
|
630
377
|
property({ type: Boolean, attribute: "show-expand-button" })
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const styles = '/* prettier-ignore */\n/**\n * @license\n * Copyright Tyler Technologies, Inc.\n * License: Apache-2.0\n */\n@keyframes forge-dialog-zoom-in {\n from {\n opacity: var(--_dialog-zoom-opacity);\n scale: var(--_dialog-zoom-scale);\n }\n to {\n opacity: 1;\n scale: 1;\n }\n}\n@keyframes forge-dialog-zoom-out {\n from {\n opacity: 1;\n scale: 1;\n }\n to {\n opacity: var(--_dialog-zoom-opacity);\n scale: var(--_dialog-zoom-scale);\n }\n}\n@keyframes forge-dialog-fade-in {\n from {\n opacity: var(--_dialog-fade-opacity);\n }\n to {\n opacity: 1;\n }\n}\n@keyframes forge-dialog-fade-out {\n from {\n opacity: 1;\n }\n to {\n opacity: var(--_dialog-fade-opacity);\n }\n}\n@keyframes forge-dialog-slide-in {\n from {\n opacity: var(--_dialog-slide-opacity);\n translate: var(--_dialog-slide-translate);\n }\n to {\n opacity: 1;\n translate: 0 0;\n }\n}\n@keyframes forge-dialog-slide-out {\n from {\n opacity: 1;\n translate: 0 0;\n }\n to {\n opacity: var(--_dialog-slide-opacity);\n translate: var(--_dialog-slide-translate);\n }\n}\n.forge-dialog {\n --_dialog-background:var(--forge-dialog-background, var(--forge-theme-surface-bright, #ffffff));\n --_dialog-shape:var(--forge-dialog-shape, calc(var(--forge-shape-medium, 4px) * var(--forge-shape-factor, 1)));\n --_dialog-elevation:var(--forge-dialog-elevation, 0px 11px 15px -7px rgba(0, 0, 0, 0.2), 0px 24px 38px 3px rgba(0, 0, 0, 0.14), 0px 9px 46px 8px rgba(0, 0, 0, 0.12));\n --_dialog-spacing:var(--forge-dialog-spacing, auto);\n --_dialog-block-start-spacing:var(--forge-dialog-block-start-spacing, var(--_dialog-spacing));\n --_dialog-block-end-spacing:var(--forge-dialog-block-end-spacing, var(--_dialog-spacing));\n --_dialog-inline-start-spacing:var(--forge-dialog-inline-start-spacing, var(--_dialog-spacing));\n --_dialog-inline-end-spacing:var(--forge-dialog-inline-end-spacing, var(--_dialog-spacing));\n --_dialog-padding:var(--forge-dialog-padding, 0);\n --_dialog-width:var(--forge-dialog-width, fit-content);\n --_dialog-height:var(--forge-dialog-height, fit-content);\n --_dialog-min-width:var(--forge-dialog-min-width, 0);\n --_dialog-max-width:var(--forge-dialog-max-width, calc(100% - var(--forge-spacing-xxlarge, 48px)));\n --_dialog-min-height:var(--forge-dialog-min-height, 0);\n --_dialog-max-height:var(--forge-dialog-max-height, calc(100% - var(--forge-spacing-xxlarge, 48px)));\n --_dialog-z-index:var(--forge-dialog-z-index, var(--forge-z-index-dialog, 8));\n --_dialog-move-handle-color:var(--forge-dialog-move-handle-color, currentColor);\n --_dialog-move-handle-size:var(--forge-dialog-move-handle-size, 24px);\n --_dialog-move-handle-hover-cursor:var(--forge-dialog-move-handle-hover-cursor, grab);\n --_dialog-move-handle-active-cursor:var(--forge-dialog-move-handle-active-cursor, grabbing);\n --_dialog-move-handle-spacing:var(--forge-dialog-move-handle-spacing, calc(var(--forge-spacing-xxsmall, 4px) * -1) 0 0);\n --_dialog-move-transition-duration:var(--forge-dialog-move-transition-duration, var(--forge-animation-duration-short4, 200ms));\n --_dialog-move-transition-easing:var(--forge-dialog-move-transition-easing, var(--forge-animation-easing-standard, cubic-bezier(0.2, 0, 0, 1)));\n --_dialog-moving-opacity:var(--forge-dialog-moving-opacity, 0.54);\n --_dialog-enter-animation-duration:var(--forge-dialog-enter-animation-duration, var(--forge-animation-duration-medium1, 250ms));\n --_dialog-enter-animation-easing:var(--forge-dialog-enter-animation-easing, var(--forge-animation-easing-standard, cubic-bezier(0.2, 0, 0, 1)));\n --_dialog-exit-animation-duration:var(--forge-dialog-exit-animation-duration, var(--forge-animation-duration-short2, 100ms));\n --_dialog-exit-animation-easing:var(--forge-dialog-exit-animation-easing, var(--forge-animation-easing-emphasized-accelerate, cubic-bezier(0.3, 0, 0.8, 0.15)));\n --_dialog-zoom-opacity:var(--forge-dialog-zoom-opacity, 0);\n --_dialog-zoom-scale:var(--forge-dialog-zoom-scale, 0.8);\n --_dialog-fade-opacity:var(--forge-dialog-fade-opacity, 0);\n --_dialog-slide-opacity:var(--forge-dialog-slide-opacity, 0);\n --_dialog-slide-translate:var(--forge-dialog-slide-translate, 0 -30%);\n --_dialog-backdrop-opacity:var(--forge-dialog-backdrop-opacity, var(--forge-backdrop-opacity, 0.54));\n --_dialog-nonmodal-elevation:var(--forge-dialog-nonmodal-elevation, 0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12));\n --_dialog-fullscreen-enter-animation-duration:var(--forge-dialog-fullscreen-enter-animation-duration, var(--forge-animation-duration-medium1, 250ms));\n --_dialog-fullscreen-exit-animation-duration:var(--forge-dialog-fullscreen-exit-animation-duration, var(--forge-animation-duration-short2, 100ms));\n --_dialog-position-x:var(--forge-dialog-position-x, 0);\n --_dialog-position-y:var(--forge-dialog-position-y, 0);\n --_dialog-preset-sheet-enter-animation-duration:var(--forge-dialog-preset-sheet-enter-animation-duration, var(--forge-animation-duration-medium1, 250ms));\n --_dialog-preset-sheet-exit-animation-duration:var(--forge-dialog-preset-sheet-exit-animation-duration, var(--forge-animation-duration-short3, 150ms));\n --_backdrop-background:var(--forge-backdrop-background, #000);\n --_backdrop-opacity:var(--forge-backdrop-opacity, 0.54);\n --_backdrop-z-index:var(--forge-backdrop-z-index, var(--forge-z-index-backdrop, 7));\n --_backdrop-enter-animation-duration:var(--forge-backdrop-enter-animation-duration, var(--forge-animation-duration-short4, 200ms));\n --_backdrop-enter-animation-easing:var(--forge-backdrop-enter-animation-easing, var(--forge-animation-easing-standard, cubic-bezier(0.2, 0, 0, 1)));\n --_backdrop-exit-animation-duration:var(--forge-backdrop-exit-animation-duration, var(--forge-animation-duration-short1, 50ms));\n --_backdrop-exit-animation-easing:var(--forge-backdrop-exit-animation-easing, var(--forge-animation-easing-emphasized-accelerate, cubic-bezier(0.3, 0, 0.8, 0.15)));\n --forge-theme-surface: var(--forge-theme-surface-bright, #ffffff);\n}\n\n.forge-dialog {\n position: fixed;\n inset: 0;\n z-index: var(--_dialog-z-index);\n background-color: rgba(0, 0, 0, 0);\n color: inherit;\n border: none;\n width: auto;\n height: auto;\n padding: 0;\n margin: 0;\n overflow: visible;\n max-width: 100%;\n max-height: 100%;\n box-sizing: border-box;\n position: absolute;\n inset: 0;\n display: flex;\n background: var(--_dialog-background);\n box-shadow: var(--_dialog-elevation);\n z-index: var(--_dialog-z-index);\n overflow: hidden;\n border-radius: var(--_dialog-shape);\n margin-block-start: var(--_dialog-block-start-spacing);\n margin-block-end: var(--_dialog-block-end-spacing);\n margin-inline-start: var(--_dialog-inline-start-spacing);\n margin-inline-end: var(--_dialog-inline-end-spacing);\n padding: var(--_dialog-padding);\n width: var(--_dialog-width);\n height: var(--_dialog-height);\n min-width: var(--_dialog-min-width);\n max-width: var(--_dialog-max-width);\n min-height: var(--_dialog-min-height);\n max-height: var(--_dialog-max-height);\n box-sizing: border-box;\n animation-duration: var(--_dialog-exit-animation-duration);\n animation-timing-function: var(--_dialog-exit-animation-easing);\n position: fixed;\n transition-property: display, opacity, overlay, scale;\n transition-behavior: allow-discrete;\n}\n\n.forge-dialog > forge-scaffold {\n height: auto;\n}\n\n.forge-dialog--fullscreen {\n --_dialog-enter-animation-duration:var(--_dialog-fullscreen-enter-animation-duration);\n --_dialog-exit-animation-duration:var(--_dialog-fullscreen-exit-animation-duration);\n height: 100%;\n width: 100%;\n max-width: none;\n max-height: none;\n border-radius: 0;\n box-shadow: none;\n}\n\n.forge-dialog:not(:modal) {\n --_dialog-elevation:var(--_dialog-nonmodal-elevation);\n pointer-events: all;\n}\n\n.forge-dialog--moveable {\n user-select: none;\n transition-property: opacity;\n transition-duration: var(--_dialog-move-transition-duration);\n transition-timing-function: var(--_dialog-move-transition-easing);\n}\n\n.forge-dialog--moved {\n margin: 0;\n}\n\n.forge-dialog--moving {\n opacity: var(--_dialog-moving-opacity);\n}\n\n.forge-dialog__move-handle {\n fill: var(--_dialog-move-handle-color);\n height: var(--_dialog-move-handle-size);\n width: var(--_dialog-move-handle-size);\n margin: var(--_dialog-move-handle-spacing);\n touch-action: none;\n}\n\n.forge-dialog__move-handle:hover {\n cursor: var(--_dialog-move-handle-hover-cursor);\n}\n\n.forge-dialog__move-handle:active {\n cursor: var(--_dialog-move-handle-active-cursor);\n}\n\n.forge-dialog__move-handle-container {\n position: absolute;\n top: 0;\n z-index: 1;\n display: flex;\n justify-content: center;\n width: 100%;\n}\n\n.forge-dialog--top {\n --_dialog-block-start-spacing:var(--forge-dialog-block-start-spacing, 0);\n top: 0;\n bottom: auto;\n}\n\n.forge-dialog--top-right {\n --_dialog-spacing:var(--forge-dialog-spacing, 0);\n top: 0;\n left: auto;\n right: 0;\n bottom: auto;\n}\n\n.forge-dialog--top-left {\n --_dialog-spacing:var(--forge-dialog-spacing, 0);\n top: 0;\n left: 0;\n right: auto;\n bottom: auto;\n}\n\n.forge-dialog--bottom {\n --_dialog-block-end-spacing:var(--forge-dialog-block-end-spacing, 0);\n top: auto;\n bottom: 0;\n}\n\n.forge-dialog--bottom-right {\n --_dialog-spacing:var(--forge-dialog-spacing, 0);\n top: auto;\n left: auto;\n right: 0;\n bottom: 0;\n}\n\n.forge-dialog--bottom-left {\n --_dialog-spacing:var(--forge-dialog-spacing, 0);\n top: auto;\n left: 0;\n right: auto;\n bottom: 0;\n}\n\n.forge-dialog--right {\n --_dialog-spacing:var(--forge-dialog-spacing, 0);\n top: auto;\n left: auto;\n right: 0;\n bottom: auto;\n}\n\n.forge-dialog--left {\n --_dialog-spacing:var(--forge-dialog-spacing, 0);\n top: auto;\n left: 0;\n right: auto;\n bottom: auto;\n}\n\n.forge-dialog--custom {\n margin: 0;\n top: var(--_dialog-position-x);\n left: var(--_dialog-position-y);\n}\n\n.forge-dialog--bottom-sheet {\n --_dialog-enter-animation-duration:var(--_dialog-preset-sheet-enter-animation-duration);\n --_dialog-exit-animation-duration:var(--_dialog-preset-sheet-exit-animation-duration);\n --_dialog-max-width:var(--forge-dialog-max-width, none);\n --_dialog-max-height:var(--forge-dialog-max-height, none);\n inset: auto;\n display: inline-flex;\n bottom: 0;\n left: 0;\n right: 0;\n border-bottom-left-radius: 0;\n border-bottom-right-radius: 0;\n --_dialog-slide-translate:var(--forge-dialog-slide-translate, 0 100%);\n}\n\n.forge-dialog--bottom-sheet.forge-dialog {\n transition-property: display, opacity, overlay, translate;\n}\n\n.forge-dialog--bottom-sheet.forge-dialog[open] {\n translate: 0 0;\n}\n\n@starting-style {\n .forge-dialog--bottom-sheet.forge-dialog[open] {\n opacity: var(--_dialog-slide-opacity);\n translate: var(--_dialog-slide-translate);\n }\n}\n.forge-dialog--bottom-sheet.forge-dialog:not([open]) {\n opacity: var(--_dialog-slide-opacity);\n scale: 1;\n translate: var(--_dialog-slide-translate);\n}\n\n.forge-dialog--left-sheet {\n --_dialog-enter-animation-duration:var(--_dialog-preset-sheet-enter-animation-duration);\n --_dialog-exit-animation-duration:var(--_dialog-preset-sheet-exit-animation-duration);\n --_dialog-max-width:var(--forge-dialog-max-width, none);\n --_dialog-max-height:var(--forge-dialog-max-height, none);\n inset: auto;\n display: inline-flex;\n left: 0;\n bottom: 0;\n top: 0;\n height: 100%;\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n --_dialog-slide-translate:var(--forge-dialog-slide-translate, -100% 0);\n}\n\n.forge-dialog--left-sheet.forge-dialog {\n transition-property: display, opacity, overlay, translate;\n}\n\n.forge-dialog--left-sheet.forge-dialog[open] {\n translate: 0 0;\n}\n\n@starting-style {\n .forge-dialog--left-sheet.forge-dialog[open] {\n opacity: var(--_dialog-slide-opacity);\n translate: var(--_dialog-slide-translate);\n }\n}\n.forge-dialog--left-sheet.forge-dialog:not([open]) {\n opacity: var(--_dialog-slide-opacity);\n scale: 1;\n translate: var(--_dialog-slide-translate);\n}\n\n.forge-dialog--right-sheet {\n --_dialog-enter-animation-duration:var(--_dialog-preset-sheet-enter-animation-duration);\n --_dialog-exit-animation-duration:var(--_dialog-preset-sheet-exit-animation-duration);\n --_dialog-max-width:var(--forge-dialog-max-width, none);\n --_dialog-max-height:var(--forge-dialog-max-height, none);\n inset: auto;\n display: inline-flex;\n right: 0;\n bottom: 0;\n top: 0;\n height: 100%;\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n --_dialog-slide-translate:var(--forge-dialog-slide-translate, 100% 0);\n}\n\n.forge-dialog--right-sheet.forge-dialog {\n transition-property: display, opacity, overlay, translate;\n}\n\n.forge-dialog--right-sheet.forge-dialog[open] {\n translate: 0 0;\n}\n\n@starting-style {\n .forge-dialog--right-sheet.forge-dialog[open] {\n opacity: var(--_dialog-slide-opacity);\n translate: var(--_dialog-slide-translate);\n }\n}\n.forge-dialog--right-sheet.forge-dialog:not([open]) {\n opacity: var(--_dialog-slide-opacity);\n scale: 1;\n translate: var(--_dialog-slide-translate);\n}\n\n.forge-dialog--top-sheet {\n --_dialog-enter-animation-duration:var(--_dialog-preset-sheet-enter-animation-duration);\n --_dialog-exit-animation-duration:var(--_dialog-preset-sheet-exit-animation-duration);\n --_dialog-max-width:var(--forge-dialog-max-width, none);\n --_dialog-max-height:var(--forge-dialog-max-height, none);\n inset: auto;\n display: inline-flex;\n top: 0;\n left: 0;\n right: 0;\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n --_dialog-slide-translate:var(--forge-dialog-slide-translate, 0 -100%);\n}\n\n.forge-dialog--top-sheet.forge-dialog {\n transition-property: display, opacity, overlay, translate;\n}\n\n.forge-dialog--top-sheet.forge-dialog[open] {\n translate: 0 0;\n}\n\n@starting-style {\n .forge-dialog--top-sheet.forge-dialog[open] {\n opacity: var(--_dialog-slide-opacity);\n translate: var(--_dialog-slide-translate);\n }\n}\n.forge-dialog--top-sheet.forge-dialog:not([open]) {\n opacity: var(--_dialog-slide-opacity);\n scale: 1;\n translate: var(--_dialog-slide-translate);\n}\n\n.forge-dialog::backdrop {\n --forge-backdrop-opacity: var(--_backdrop-opacity);\n --forge-backdrop-enter-animation-duration: var(--_backdrop-enter-animation-duration);\n --forge-backdrop-enter-animation-easing: var(--_backdrop-enter-animation-easing);\n --forge-backdrop-exit-animation-duration: var(--_backdrop-exit-animation-duration);\n --forge-backdrop-exit-animation-easing: var(--_backdrop-exit-animation-easing);\n position: absolute;\n inset: 0;\n z-index: var(--_backdrop-z-index);\n background: var(--_backdrop-background);\n opacity: 0;\n animation-fill-mode: forwards;\n transition-property: display, opacity, overlay;\n}\n\n.forge-dialog[open] {\n opacity: 1;\n scale: 1;\n transition-duration: var(--_dialog-enter-animation-duration);\n transition-timing-function: var(--_dialog-enter-animation-easing);\n}\n\n@starting-style {\n .forge-dialog[open] {\n opacity: var(--_dialog-zoom-opacity);\n scale: var(--_dialog-zoom-scale);\n }\n}\n.forge-dialog[open]::backdrop {\n opacity: var(--_backdrop-opacity);\n transition-duration: var(--_backdrop-enter-animation-duration);\n transition-timing-function: var(--_backdrop-enter-animation-easing);\n}\n\n@starting-style {\n .forge-dialog[open]::backdrop {\n opacity: 0;\n }\n}\n.forge-dialog:not([open]) {\n animation-duration: var(--_dialog-enter-animation-duration);\n animation-timing-function: var(--_dialog-enter-animation-easing);\n display: none;\n opacity: var(--_dialog-zoom-opacity);\n scale: var(--_dialog-zoom-scale);\n transition-duration: var(--_dialog-exit-animation-duration);\n transition-timing-function: var(--_dialog-exit-animation-easing);\n}\n\n.forge-dialog:not([open])::backdrop {\n transition-duration: var(--_backdrop-exit-animation-duration);\n transition-timing-function: var(--_backdrop-exit-animation-easing);\n}\n\n.forge-dialog--animation-fade.forge-dialog {\n transition-property: display, opacity, overlay;\n}\n\n@starting-style {\n .forge-dialog--animation-fade.forge-dialog[open] {\n opacity: var(--_dialog-fade-opacity);\n }\n}\n.forge-dialog--animation-fade.forge-dialog:not([open]) {\n opacity: var(--_dialog-fade-opacity);\n scale: 1;\n}\n\n.forge-dialog--animation-slide.forge-dialog {\n transition-property: display, opacity, overlay, translate;\n}\n\n.forge-dialog--animation-slide.forge-dialog[open] {\n translate: 0 0;\n}\n\n@starting-style {\n .forge-dialog--animation-slide.forge-dialog[open] {\n opacity: var(--_dialog-slide-opacity);\n translate: var(--_dialog-slide-translate);\n }\n}\n.forge-dialog--animation-slide.forge-dialog:not([open]) {\n opacity: var(--_dialog-slide-opacity);\n scale: 1;\n translate: var(--_dialog-slide-translate);\n}\n\n.forge-dialog--animation-none {\n --_dialog-enter-animation-duration:var(--forge-dialog-enter-animation-duration, 0s);\n --_dialog-exit-animation-duration:var(--forge-dialog-exit-animation-duration, 0s);\n --_backdrop-enter-animation-duration:var(--forge-backdrop-enter-animation-duration, 0s);\n --_backdrop-exit-animation-duration:var(--forge-backdrop-exit-animation-duration, 0s);\n}\n\n@media (prefers-reduced-motion) {\n .forge-dialog.forge-dialog {\n transition-property: display, opacity, overlay;\n }\n @starting-style {\n .forge-dialog.forge-dialog[open] {\n opacity: var(--_dialog-fade-opacity);\n }\n }\n .forge-dialog.forge-dialog:not([open]) {\n opacity: var(--_dialog-fade-opacity);\n scale: 1;\n }\n}\n:host {\n display: block;\n width: 100%;\n height: 100%;\n --_ai-chatbot-icon-shape: var(--forge-ai-chatbot-icon-shape, calc(var(--forge-shape-round, 50%) * var(--forge-shape-factor, 1)));\n}\n\n.chatbot-container {\n position: relative;\n display: grid;\n height: 100%;\n overflow: hidden;\n}\n\nforge-ai-chat-interface::part(messages) {\n overflow: hidden;\n}\nforge-ai-chat-interface forge-ai-message-thread {\n min-height: 0;\n}\n\n.disclaimer {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: var(--forge-typography-label1-font-family, var(--forge-typography-font-family, "Roboto", sans-serif));\n font-size: var(--forge-typography-label1-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-label-font-size-scale, 0.75)));\n font-weight: var(--forge-typography-label1-font-weight, 400);\n line-height: var(--forge-typography-label1-line-height, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-label-line-height-scale, 1.25)));\n letter-spacing: var(--forge-typography-label1-letter-spacing, 0.0357142857em);\n text-transform: var(--forge-typography-label1-text-transform, inherit);\n text-decoration: var(--forge-typography-label1-text-decoration, inherit);\n color: var(--forge-theme-text-medium, rgba(0, 0, 0, 0.6));\n text-align: center;\n margin-block-start: var(--forge-spacing-xxsmall, 4px);\n margin-block-end: calc(var(--forge-spacing-small, 12px) * -1);\n}\n\n.suggestions-container {\n width: 100%;\n align-self: start;\n}\n\n.empty-state-icon,\n::slotted([slot=empty-state-icon]) {\n height: 200px;\n width: 200px;\n border-radius: var(--_ai-chatbot-icon-shape);\n}\n\n.conversations-backdrop {\n position: absolute;\n inset: 0;\n background-color: transparent;\n z-index: 1;\n}\n\n.conversations-dialog {\n display: grid;\n width: min(90%, 360px);\n padding: 0;\n border: 0;\n position: absolute;\n z-index: 2;\n --forge-dialog-shape: 0;\n --forge-dialog-nonmodal-elevation: 0px 2px 1px -1px rgba(0, 0, 0, 0.2), 0px 1px 1px 0px rgba(0, 0, 0, 0.14), 0px 1px 3px 0px rgba(0, 0, 0, 0.12);\n}';
|
|
1
|
+
const styles = '/* prettier-ignore */\n/**\n * @license\n * Copyright Tyler Technologies, Inc.\n * License: Apache-2.0\n */\n@keyframes forge-dialog-zoom-in {\n from {\n opacity: var(--_dialog-zoom-opacity);\n scale: var(--_dialog-zoom-scale);\n }\n to {\n opacity: 1;\n scale: 1;\n }\n}\n@keyframes forge-dialog-zoom-out {\n from {\n opacity: 1;\n scale: 1;\n }\n to {\n opacity: var(--_dialog-zoom-opacity);\n scale: var(--_dialog-zoom-scale);\n }\n}\n@keyframes forge-dialog-fade-in {\n from {\n opacity: var(--_dialog-fade-opacity);\n }\n to {\n opacity: 1;\n }\n}\n@keyframes forge-dialog-fade-out {\n from {\n opacity: 1;\n }\n to {\n opacity: var(--_dialog-fade-opacity);\n }\n}\n@keyframes forge-dialog-slide-in {\n from {\n opacity: var(--_dialog-slide-opacity);\n translate: var(--_dialog-slide-translate);\n }\n to {\n opacity: 1;\n translate: 0 0;\n }\n}\n@keyframes forge-dialog-slide-out {\n from {\n opacity: 1;\n translate: 0 0;\n }\n to {\n opacity: var(--_dialog-slide-opacity);\n translate: var(--_dialog-slide-translate);\n }\n}\n.forge-dialog {\n --_dialog-background:var(--forge-dialog-background, var(--forge-theme-surface-bright, #ffffff));\n --_dialog-shape:var(--forge-dialog-shape, calc(var(--forge-shape-medium, 4px) * var(--forge-shape-factor, 1)));\n --_dialog-elevation:var(--forge-dialog-elevation, 0px 11px 15px -7px rgba(0, 0, 0, 0.2), 0px 24px 38px 3px rgba(0, 0, 0, 0.14), 0px 9px 46px 8px rgba(0, 0, 0, 0.12));\n --_dialog-spacing:var(--forge-dialog-spacing, auto);\n --_dialog-block-start-spacing:var(--forge-dialog-block-start-spacing, var(--_dialog-spacing));\n --_dialog-block-end-spacing:var(--forge-dialog-block-end-spacing, var(--_dialog-spacing));\n --_dialog-inline-start-spacing:var(--forge-dialog-inline-start-spacing, var(--_dialog-spacing));\n --_dialog-inline-end-spacing:var(--forge-dialog-inline-end-spacing, var(--_dialog-spacing));\n --_dialog-padding:var(--forge-dialog-padding, 0);\n --_dialog-width:var(--forge-dialog-width, fit-content);\n --_dialog-height:var(--forge-dialog-height, fit-content);\n --_dialog-min-width:var(--forge-dialog-min-width, 0);\n --_dialog-max-width:var(--forge-dialog-max-width, calc(100% - var(--forge-spacing-xxlarge, 48px)));\n --_dialog-min-height:var(--forge-dialog-min-height, 0);\n --_dialog-max-height:var(--forge-dialog-max-height, calc(100% - var(--forge-spacing-xxlarge, 48px)));\n --_dialog-z-index:var(--forge-dialog-z-index, var(--forge-z-index-dialog, 8));\n --_dialog-move-handle-color:var(--forge-dialog-move-handle-color, currentColor);\n --_dialog-move-handle-size:var(--forge-dialog-move-handle-size, 24px);\n --_dialog-move-handle-hover-cursor:var(--forge-dialog-move-handle-hover-cursor, grab);\n --_dialog-move-handle-active-cursor:var(--forge-dialog-move-handle-active-cursor, grabbing);\n --_dialog-move-handle-spacing:var(--forge-dialog-move-handle-spacing, calc(var(--forge-spacing-xxsmall, 4px) * -1) 0 0);\n --_dialog-move-transition-duration:var(--forge-dialog-move-transition-duration, var(--forge-animation-duration-short4, 200ms));\n --_dialog-move-transition-easing:var(--forge-dialog-move-transition-easing, var(--forge-animation-easing-standard, cubic-bezier(0.2, 0, 0, 1)));\n --_dialog-moving-opacity:var(--forge-dialog-moving-opacity, 0.54);\n --_dialog-enter-animation-duration:var(--forge-dialog-enter-animation-duration, var(--forge-animation-duration-medium1, 250ms));\n --_dialog-enter-animation-easing:var(--forge-dialog-enter-animation-easing, var(--forge-animation-easing-standard, cubic-bezier(0.2, 0, 0, 1)));\n --_dialog-exit-animation-duration:var(--forge-dialog-exit-animation-duration, var(--forge-animation-duration-short2, 100ms));\n --_dialog-exit-animation-easing:var(--forge-dialog-exit-animation-easing, var(--forge-animation-easing-emphasized-accelerate, cubic-bezier(0.3, 0, 0.8, 0.15)));\n --_dialog-zoom-opacity:var(--forge-dialog-zoom-opacity, 0);\n --_dialog-zoom-scale:var(--forge-dialog-zoom-scale, 0.8);\n --_dialog-fade-opacity:var(--forge-dialog-fade-opacity, 0);\n --_dialog-slide-opacity:var(--forge-dialog-slide-opacity, 0);\n --_dialog-slide-translate:var(--forge-dialog-slide-translate, 0 -30%);\n --_dialog-backdrop-opacity:var(--forge-dialog-backdrop-opacity, var(--forge-backdrop-opacity, 0.54));\n --_dialog-nonmodal-elevation:var(--forge-dialog-nonmodal-elevation, 0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12));\n --_dialog-fullscreen-enter-animation-duration:var(--forge-dialog-fullscreen-enter-animation-duration, var(--forge-animation-duration-medium1, 250ms));\n --_dialog-fullscreen-exit-animation-duration:var(--forge-dialog-fullscreen-exit-animation-duration, var(--forge-animation-duration-short2, 100ms));\n --_dialog-position-x:var(--forge-dialog-position-x, 0);\n --_dialog-position-y:var(--forge-dialog-position-y, 0);\n --_dialog-preset-sheet-enter-animation-duration:var(--forge-dialog-preset-sheet-enter-animation-duration, var(--forge-animation-duration-medium1, 250ms));\n --_dialog-preset-sheet-exit-animation-duration:var(--forge-dialog-preset-sheet-exit-animation-duration, var(--forge-animation-duration-short3, 150ms));\n --_backdrop-background:var(--forge-backdrop-background, #000);\n --_backdrop-opacity:var(--forge-backdrop-opacity, 0.54);\n --_backdrop-z-index:var(--forge-backdrop-z-index, var(--forge-z-index-backdrop, 7));\n --_backdrop-enter-animation-duration:var(--forge-backdrop-enter-animation-duration, var(--forge-animation-duration-short4, 200ms));\n --_backdrop-enter-animation-easing:var(--forge-backdrop-enter-animation-easing, var(--forge-animation-easing-standard, cubic-bezier(0.2, 0, 0, 1)));\n --_backdrop-exit-animation-duration:var(--forge-backdrop-exit-animation-duration, var(--forge-animation-duration-short1, 50ms));\n --_backdrop-exit-animation-easing:var(--forge-backdrop-exit-animation-easing, var(--forge-animation-easing-emphasized-accelerate, cubic-bezier(0.3, 0, 0.8, 0.15)));\n --forge-theme-surface: var(--forge-theme-surface-bright, #ffffff);\n}\n\n.forge-dialog {\n position: fixed;\n inset: 0;\n z-index: var(--_dialog-z-index);\n background-color: rgba(0, 0, 0, 0);\n color: inherit;\n border: none;\n width: auto;\n height: auto;\n padding: 0;\n margin: 0;\n overflow: visible;\n max-width: 100%;\n max-height: 100%;\n box-sizing: border-box;\n position: absolute;\n inset: 0;\n display: flex;\n background: var(--_dialog-background);\n box-shadow: var(--_dialog-elevation);\n z-index: var(--_dialog-z-index);\n overflow: hidden;\n border-radius: var(--_dialog-shape);\n margin-block-start: var(--_dialog-block-start-spacing);\n margin-block-end: var(--_dialog-block-end-spacing);\n margin-inline-start: var(--_dialog-inline-start-spacing);\n margin-inline-end: var(--_dialog-inline-end-spacing);\n padding: var(--_dialog-padding);\n width: var(--_dialog-width);\n height: var(--_dialog-height);\n min-width: var(--_dialog-min-width);\n max-width: var(--_dialog-max-width);\n min-height: var(--_dialog-min-height);\n max-height: var(--_dialog-max-height);\n box-sizing: border-box;\n animation-duration: var(--_dialog-exit-animation-duration);\n animation-timing-function: var(--_dialog-exit-animation-easing);\n position: fixed;\n transition-property: display, opacity, overlay, scale;\n transition-behavior: allow-discrete;\n}\n\n.forge-dialog > forge-scaffold {\n height: auto;\n}\n\n.forge-dialog--fullscreen {\n --_dialog-enter-animation-duration:var(--_dialog-fullscreen-enter-animation-duration);\n --_dialog-exit-animation-duration:var(--_dialog-fullscreen-exit-animation-duration);\n height: 100%;\n width: 100%;\n max-width: none;\n max-height: none;\n border-radius: 0;\n box-shadow: none;\n}\n\n.forge-dialog:not(:modal) {\n --_dialog-elevation:var(--_dialog-nonmodal-elevation);\n pointer-events: all;\n}\n\n.forge-dialog--moveable {\n user-select: none;\n transition-property: opacity;\n transition-duration: var(--_dialog-move-transition-duration);\n transition-timing-function: var(--_dialog-move-transition-easing);\n}\n\n.forge-dialog--moved {\n margin: 0;\n}\n\n.forge-dialog--moving {\n opacity: var(--_dialog-moving-opacity);\n}\n\n.forge-dialog__move-handle {\n fill: var(--_dialog-move-handle-color);\n height: var(--_dialog-move-handle-size);\n width: var(--_dialog-move-handle-size);\n margin: var(--_dialog-move-handle-spacing);\n touch-action: none;\n}\n\n.forge-dialog__move-handle:hover {\n cursor: var(--_dialog-move-handle-hover-cursor);\n}\n\n.forge-dialog__move-handle:active {\n cursor: var(--_dialog-move-handle-active-cursor);\n}\n\n.forge-dialog__move-handle-container {\n position: absolute;\n top: 0;\n z-index: 1;\n display: flex;\n justify-content: center;\n width: 100%;\n}\n\n.forge-dialog--top {\n --_dialog-block-start-spacing:var(--forge-dialog-block-start-spacing, 0);\n top: 0;\n bottom: auto;\n}\n\n.forge-dialog--top-right {\n --_dialog-spacing:var(--forge-dialog-spacing, 0);\n top: 0;\n left: auto;\n right: 0;\n bottom: auto;\n}\n\n.forge-dialog--top-left {\n --_dialog-spacing:var(--forge-dialog-spacing, 0);\n top: 0;\n left: 0;\n right: auto;\n bottom: auto;\n}\n\n.forge-dialog--bottom {\n --_dialog-block-end-spacing:var(--forge-dialog-block-end-spacing, 0);\n top: auto;\n bottom: 0;\n}\n\n.forge-dialog--bottom-right {\n --_dialog-spacing:var(--forge-dialog-spacing, 0);\n top: auto;\n left: auto;\n right: 0;\n bottom: 0;\n}\n\n.forge-dialog--bottom-left {\n --_dialog-spacing:var(--forge-dialog-spacing, 0);\n top: auto;\n left: 0;\n right: auto;\n bottom: 0;\n}\n\n.forge-dialog--right {\n --_dialog-spacing:var(--forge-dialog-spacing, 0);\n top: auto;\n left: auto;\n right: 0;\n bottom: auto;\n}\n\n.forge-dialog--left {\n --_dialog-spacing:var(--forge-dialog-spacing, 0);\n top: auto;\n left: 0;\n right: auto;\n bottom: auto;\n}\n\n.forge-dialog--custom {\n margin: 0;\n top: var(--_dialog-position-x);\n left: var(--_dialog-position-y);\n}\n\n.forge-dialog--bottom-sheet {\n --_dialog-enter-animation-duration:var(--_dialog-preset-sheet-enter-animation-duration);\n --_dialog-exit-animation-duration:var(--_dialog-preset-sheet-exit-animation-duration);\n --_dialog-max-width:var(--forge-dialog-max-width, none);\n --_dialog-max-height:var(--forge-dialog-max-height, none);\n inset: auto;\n display: inline-flex;\n bottom: 0;\n left: 0;\n right: 0;\n border-bottom-left-radius: 0;\n border-bottom-right-radius: 0;\n --_dialog-slide-translate:var(--forge-dialog-slide-translate, 0 100%);\n}\n\n.forge-dialog--bottom-sheet.forge-dialog {\n transition-property: display, opacity, overlay, translate;\n}\n\n.forge-dialog--bottom-sheet.forge-dialog[open] {\n translate: 0 0;\n}\n\n@starting-style {\n .forge-dialog--bottom-sheet.forge-dialog[open] {\n opacity: var(--_dialog-slide-opacity);\n translate: var(--_dialog-slide-translate);\n }\n}\n.forge-dialog--bottom-sheet.forge-dialog:not([open]) {\n opacity: var(--_dialog-slide-opacity);\n scale: 1;\n translate: var(--_dialog-slide-translate);\n}\n\n.forge-dialog--left-sheet {\n --_dialog-enter-animation-duration:var(--_dialog-preset-sheet-enter-animation-duration);\n --_dialog-exit-animation-duration:var(--_dialog-preset-sheet-exit-animation-duration);\n --_dialog-max-width:var(--forge-dialog-max-width, none);\n --_dialog-max-height:var(--forge-dialog-max-height, none);\n inset: auto;\n display: inline-flex;\n left: 0;\n bottom: 0;\n top: 0;\n height: 100%;\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n --_dialog-slide-translate:var(--forge-dialog-slide-translate, -100% 0);\n}\n\n.forge-dialog--left-sheet.forge-dialog {\n transition-property: display, opacity, overlay, translate;\n}\n\n.forge-dialog--left-sheet.forge-dialog[open] {\n translate: 0 0;\n}\n\n@starting-style {\n .forge-dialog--left-sheet.forge-dialog[open] {\n opacity: var(--_dialog-slide-opacity);\n translate: var(--_dialog-slide-translate);\n }\n}\n.forge-dialog--left-sheet.forge-dialog:not([open]) {\n opacity: var(--_dialog-slide-opacity);\n scale: 1;\n translate: var(--_dialog-slide-translate);\n}\n\n.forge-dialog--right-sheet {\n --_dialog-enter-animation-duration:var(--_dialog-preset-sheet-enter-animation-duration);\n --_dialog-exit-animation-duration:var(--_dialog-preset-sheet-exit-animation-duration);\n --_dialog-max-width:var(--forge-dialog-max-width, none);\n --_dialog-max-height:var(--forge-dialog-max-height, none);\n inset: auto;\n display: inline-flex;\n right: 0;\n bottom: 0;\n top: 0;\n height: 100%;\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n --_dialog-slide-translate:var(--forge-dialog-slide-translate, 100% 0);\n}\n\n.forge-dialog--right-sheet.forge-dialog {\n transition-property: display, opacity, overlay, translate;\n}\n\n.forge-dialog--right-sheet.forge-dialog[open] {\n translate: 0 0;\n}\n\n@starting-style {\n .forge-dialog--right-sheet.forge-dialog[open] {\n opacity: var(--_dialog-slide-opacity);\n translate: var(--_dialog-slide-translate);\n }\n}\n.forge-dialog--right-sheet.forge-dialog:not([open]) {\n opacity: var(--_dialog-slide-opacity);\n scale: 1;\n translate: var(--_dialog-slide-translate);\n}\n\n.forge-dialog--top-sheet {\n --_dialog-enter-animation-duration:var(--_dialog-preset-sheet-enter-animation-duration);\n --_dialog-exit-animation-duration:var(--_dialog-preset-sheet-exit-animation-duration);\n --_dialog-max-width:var(--forge-dialog-max-width, none);\n --_dialog-max-height:var(--forge-dialog-max-height, none);\n inset: auto;\n display: inline-flex;\n top: 0;\n left: 0;\n right: 0;\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n --_dialog-slide-translate:var(--forge-dialog-slide-translate, 0 -100%);\n}\n\n.forge-dialog--top-sheet.forge-dialog {\n transition-property: display, opacity, overlay, translate;\n}\n\n.forge-dialog--top-sheet.forge-dialog[open] {\n translate: 0 0;\n}\n\n@starting-style {\n .forge-dialog--top-sheet.forge-dialog[open] {\n opacity: var(--_dialog-slide-opacity);\n translate: var(--_dialog-slide-translate);\n }\n}\n.forge-dialog--top-sheet.forge-dialog:not([open]) {\n opacity: var(--_dialog-slide-opacity);\n scale: 1;\n translate: var(--_dialog-slide-translate);\n}\n\n.forge-dialog::backdrop {\n --forge-backdrop-opacity: var(--_backdrop-opacity);\n --forge-backdrop-enter-animation-duration: var(--_backdrop-enter-animation-duration);\n --forge-backdrop-enter-animation-easing: var(--_backdrop-enter-animation-easing);\n --forge-backdrop-exit-animation-duration: var(--_backdrop-exit-animation-duration);\n --forge-backdrop-exit-animation-easing: var(--_backdrop-exit-animation-easing);\n position: absolute;\n inset: 0;\n z-index: var(--_backdrop-z-index);\n background: var(--_backdrop-background);\n opacity: 0;\n animation-fill-mode: forwards;\n transition-property: display, opacity, overlay;\n}\n\n.forge-dialog[open] {\n opacity: 1;\n scale: 1;\n transition-duration: var(--_dialog-enter-animation-duration);\n transition-timing-function: var(--_dialog-enter-animation-easing);\n}\n\n@starting-style {\n .forge-dialog[open] {\n opacity: var(--_dialog-zoom-opacity);\n scale: var(--_dialog-zoom-scale);\n }\n}\n.forge-dialog[open]::backdrop {\n opacity: var(--_backdrop-opacity);\n transition-duration: var(--_backdrop-enter-animation-duration);\n transition-timing-function: var(--_backdrop-enter-animation-easing);\n}\n\n@starting-style {\n .forge-dialog[open]::backdrop {\n opacity: 0;\n }\n}\n.forge-dialog:not([open]) {\n animation-duration: var(--_dialog-enter-animation-duration);\n animation-timing-function: var(--_dialog-enter-animation-easing);\n display: none;\n opacity: var(--_dialog-zoom-opacity);\n scale: var(--_dialog-zoom-scale);\n transition-duration: var(--_dialog-exit-animation-duration);\n transition-timing-function: var(--_dialog-exit-animation-easing);\n}\n\n.forge-dialog:not([open])::backdrop {\n transition-duration: var(--_backdrop-exit-animation-duration);\n transition-timing-function: var(--_backdrop-exit-animation-easing);\n}\n\n.forge-dialog--animation-fade.forge-dialog {\n transition-property: display, opacity, overlay;\n}\n\n@starting-style {\n .forge-dialog--animation-fade.forge-dialog[open] {\n opacity: var(--_dialog-fade-opacity);\n }\n}\n.forge-dialog--animation-fade.forge-dialog:not([open]) {\n opacity: var(--_dialog-fade-opacity);\n scale: 1;\n}\n\n.forge-dialog--animation-slide.forge-dialog {\n transition-property: display, opacity, overlay, translate;\n}\n\n.forge-dialog--animation-slide.forge-dialog[open] {\n translate: 0 0;\n}\n\n@starting-style {\n .forge-dialog--animation-slide.forge-dialog[open] {\n opacity: var(--_dialog-slide-opacity);\n translate: var(--_dialog-slide-translate);\n }\n}\n.forge-dialog--animation-slide.forge-dialog:not([open]) {\n opacity: var(--_dialog-slide-opacity);\n scale: 1;\n translate: var(--_dialog-slide-translate);\n}\n\n.forge-dialog--animation-none {\n --_dialog-enter-animation-duration:var(--forge-dialog-enter-animation-duration, 0s);\n --_dialog-exit-animation-duration:var(--forge-dialog-exit-animation-duration, 0s);\n --_backdrop-enter-animation-duration:var(--forge-backdrop-enter-animation-duration, 0s);\n --_backdrop-exit-animation-duration:var(--forge-backdrop-exit-animation-duration, 0s);\n}\n\n@media (prefers-reduced-motion) {\n .forge-dialog.forge-dialog {\n transition-property: display, opacity, overlay;\n }\n @starting-style {\n .forge-dialog.forge-dialog[open] {\n opacity: var(--_dialog-fade-opacity);\n }\n }\n .forge-dialog.forge-dialog:not([open]) {\n opacity: var(--_dialog-fade-opacity);\n scale: 1;\n }\n}\n:host {\n display: block;\n width: 100%;\n height: 100%;\n --_ai-chatbot-icon-shape: var(--forge-ai-chatbot-icon-shape, 0);\n}\n\n.chatbot-container {\n position: relative;\n display: grid;\n height: 100%;\n overflow: hidden;\n border-radius: inherit;\n}\n\nforge-ai-chat-interface::part(messages) {\n overflow: hidden;\n}\nforge-ai-chat-interface forge-ai-message-thread {\n min-height: 0;\n}\n\n.disclaimer {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-family: var(--forge-typography-label1-font-family, var(--forge-typography-font-family, "Roboto", sans-serif));\n font-size: var(--forge-typography-label1-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-label-font-size-scale, 0.75)));\n font-weight: var(--forge-typography-label1-font-weight, 400);\n line-height: var(--forge-typography-label1-line-height, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-label-line-height-scale, 1.25)));\n letter-spacing: var(--forge-typography-label1-letter-spacing, 0.0357142857em);\n text-transform: var(--forge-typography-label1-text-transform, inherit);\n text-decoration: var(--forge-typography-label1-text-decoration, inherit);\n color: var(--forge-theme-text-medium, rgba(0, 0, 0, 0.6));\n text-align: center;\n margin-block-start: var(--forge-spacing-xxsmall, 4px);\n margin-block-end: calc(var(--forge-spacing-small, 12px) * -1);\n}\n\n.suggestions-container {\n width: 100%;\n align-self: start;\n}\n\n::slotted([slot=empty-state-icon]) {\n height: 200px;\n width: 200px;\n border-radius: var(--_ai-chatbot-icon-shape);\n}\n\n.conversations-backdrop {\n position: absolute;\n inset: 0;\n background-color: transparent;\n z-index: 1;\n}\n\n.conversations-dialog {\n display: grid;\n width: min(90%, 360px);\n padding: 0;\n border: 0;\n position: absolute;\n z-index: 2;\n --forge-dialog-shape: 0;\n --forge-dialog-nonmodal-elevation: 0px 2px 1px -1px rgba(0, 0, 0, 0.2), 0px 1px 1px 0px rgba(0, 0, 0, 0.14), 0px 1px 3px 0px rgba(0, 0, 0, 0.12);\n}';
|
|
2
2
|
export {
|
|
3
3
|
styles as default
|
|
4
4
|
};
|
|
@@ -4,7 +4,7 @@ export type { ForgeAiChatbotMessageEventData, ForgeAiChatbotToolCallEventData, F
|
|
|
4
4
|
export { AiChatbotToolCallComponent, AiChatbotToolCallComponentTagName } from './ai-chatbot-tool-call.js';
|
|
5
5
|
export type { Suggestion } from '../ai-suggestions/index.js';
|
|
6
6
|
export { AgentAdapter, type MessageStartEvent, type MessageDeltaEvent, type MessageEndEvent, type ToolCallEvent, type ToolCallStartEvent, type ToolCallArgsEvent, type ToolCallEndEvent, type FileUploadEvent, type FileRemoveEvent, type AdapterState, type ErrorEvent, type CustomAgentEvent, type RawAgentEvent, type RunStartedAgentEvent, type StepStartedAgentEvent, type StepFinishedAgentEvent, type StateSnapshotAgentEvent, type StateDeltaAgentEvent, type ActivitySnapshotAgentEvent, type ActivityDeltaAgentEvent } from './agent-adapter.js';
|
|
7
|
-
export type { Agent, ChatMessage, ContextItem, ToolDefinition, ToolCall, ToolRenderer, IToolRenderer, HandlerContext, ToolStartContext, ToolDeltaContext, ToolEndContext, FileAttachment, UploadedFileMetadata, FileUploadCallbacks, FileUploadHandler, FileRemoveCallbacks, ThreadState, FeedbackType, ResponseFeedback, ForgeAiChatbotContextRemoveEventData } from './types.js';
|
|
7
|
+
export type { Agent, ChatMessage, ContextItem, ToolDefinition, ToolCall, ToolRenderer, IToolRenderer, HandlerContext, ToolStartContext, ToolDeltaContext, ToolEndContext, FileAttachment, UploadedFileMetadata, FileUploadCallbacks, FileUploadHandler, FileRemoveCallbacks, ThreadState, FeedbackType, ResponseFeedback, MessageItem, ForgeAiChatbotContextRemoveEventData } from './types.js';
|
|
8
8
|
export * from './ag-ui-adapter.js';
|
|
9
9
|
export * from './http-agent-with-credentials.js';
|
|
10
10
|
export * from './event-emitter.js';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ChatMessage, ContextItem, FileAttachment, ToolCall } from './types.js';
|
|
2
2
|
/**
|
|
3
3
|
* Generates a unique ID using UUID v4
|
|
4
4
|
*/
|
|
@@ -15,3 +15,22 @@ export declare function downloadFile(content: string, filename: string, mimeType
|
|
|
15
15
|
* Converts file attachments to context items
|
|
16
16
|
*/
|
|
17
17
|
export declare function fileAttachmentsToContextItems(completedAttachments: FileAttachment[], pendingAttachments: FileAttachment[]): ContextItem[];
|
|
18
|
+
/**
|
|
19
|
+
* Formats a single tool call as indented text lines for a chat export.
|
|
20
|
+
*/
|
|
21
|
+
export declare function formatToolCallForExport(toolCall: ToolCall): string;
|
|
22
|
+
/**
|
|
23
|
+
* Formats a list of chat messages into a plain-text transcript. Tool call
|
|
24
|
+
* details are only included when `includeToolCalls` is enabled. When a message
|
|
25
|
+
* retains its interleaved `children`, text and tool calls are emitted in the
|
|
26
|
+
* exact order they occurred; otherwise it falls back to the flat content plus a
|
|
27
|
+
* trailing tool call block.
|
|
28
|
+
*/
|
|
29
|
+
export declare function formatChatTranscript(messages: ChatMessage[], { includeToolCalls }?: {
|
|
30
|
+
includeToolCalls?: boolean | undefined;
|
|
31
|
+
}): string;
|
|
32
|
+
/**
|
|
33
|
+
* Builds a timestamped filename for an exported chat transcript, optionally
|
|
34
|
+
* prefixed with a slugified agent name.
|
|
35
|
+
*/
|
|
36
|
+
export declare function createChatExportFilename(agentName?: string): string;
|
|
@@ -54,6 +54,47 @@ function fileAttachmentsToContextItems(completedAttachments, pendingAttachments)
|
|
|
54
54
|
}));
|
|
55
55
|
return [...pending, ...completed];
|
|
56
56
|
}
|
|
57
|
+
function formatToolCallForExport(toolCall) {
|
|
58
|
+
const lines = [` - Tool: ${toolCall.name}`, ` Args: ${JSON.stringify(toolCall.args)}`];
|
|
59
|
+
if (toolCall.status === "error") {
|
|
60
|
+
const errorMsg = typeof toolCall.result === "object" && toolCall.result !== null && "error" in toolCall.result ? toolCall.result.error : "Unknown error";
|
|
61
|
+
lines.push(` Error: ${errorMsg}`);
|
|
62
|
+
} else if (toolCall.result !== void 0) {
|
|
63
|
+
lines.push(` Result: ${JSON.stringify(toolCall.result)}`);
|
|
64
|
+
}
|
|
65
|
+
return lines.join("\n");
|
|
66
|
+
}
|
|
67
|
+
function formatChatTranscript(messages, { includeToolCalls = false } = {}) {
|
|
68
|
+
return messages.map((message) => {
|
|
69
|
+
const timestamp = new Date(message.timestamp).toLocaleString();
|
|
70
|
+
const role = message.role === "user" ? "You" : "Agent";
|
|
71
|
+
const body = message.children?.length ? formatInterleavedBody(message.children, includeToolCalls) : formatFlatBody(message, includeToolCalls);
|
|
72
|
+
return `[${timestamp}] ${role}:
|
|
73
|
+
${body}
|
|
74
|
+
`;
|
|
75
|
+
}).join("\n");
|
|
76
|
+
}
|
|
77
|
+
function formatInterleavedBody(children, includeToolCalls) {
|
|
78
|
+
return children.map((item) => {
|
|
79
|
+
if (item.type === "text") {
|
|
80
|
+
return item.content;
|
|
81
|
+
}
|
|
82
|
+
return includeToolCalls ? formatToolCallForExport(item.data) : "";
|
|
83
|
+
}).filter((part) => part.trim().length > 0).join("\n\n");
|
|
84
|
+
}
|
|
85
|
+
function formatFlatBody(message, includeToolCalls) {
|
|
86
|
+
let body = message.content;
|
|
87
|
+
if (includeToolCalls && message.toolCalls?.length) {
|
|
88
|
+
body += "\n" + message.toolCalls.map(formatToolCallForExport).join("\n\n") + "\n";
|
|
89
|
+
}
|
|
90
|
+
return body;
|
|
91
|
+
}
|
|
92
|
+
function createChatExportFilename(agentName) {
|
|
93
|
+
const timestamp = (/* @__PURE__ */ new Date()).toISOString().slice(0, 19).replace(/:/g, "-");
|
|
94
|
+
const slug = agentName?.toLowerCase().replace(/[^a-z0-9]+/g, "-").replace(/^-+|-+$/g, "");
|
|
95
|
+
const prefix = slug ? `${slug}-` : "";
|
|
96
|
+
return `${prefix}chat-history-${timestamp}.txt`;
|
|
97
|
+
}
|
|
57
98
|
function formatBytes(bytes) {
|
|
58
99
|
if (bytes === 0) {
|
|
59
100
|
return "0 B";
|
|
@@ -64,8 +105,11 @@ function formatBytes(bytes) {
|
|
|
64
105
|
return `${Math.round(bytes / Math.pow(k, i) * 100) / 100} ${sizes[i]}`;
|
|
65
106
|
}
|
|
66
107
|
export {
|
|
108
|
+
createChatExportFilename,
|
|
67
109
|
downloadFile,
|
|
68
110
|
fileAttachmentsToContextItems,
|
|
111
|
+
formatChatTranscript,
|
|
112
|
+
formatToolCallForExport,
|
|
69
113
|
generateId,
|
|
70
114
|
renderMarkdown
|
|
71
115
|
};
|
|
@@ -271,6 +271,8 @@ promptTemplate_get = function() {
|
|
|
271
271
|
variant="icon-button"
|
|
272
272
|
multiple
|
|
273
273
|
?disabled=${isUploading}
|
|
274
|
+
.maxSize=${this.maxFileSize}
|
|
275
|
+
.accept=${this.acceptedFileTypes}
|
|
274
276
|
.selectedFiles=${this._coreController?.pendingAttachments.map((a) => a.filename) ?? []}
|
|
275
277
|
@forge-ai-file-picker-change=${this._handleFileSelect}
|
|
276
278
|
@forge-ai-file-picker-error=${this._handleFileError}>
|
|
@@ -340,14 +342,23 @@ threadName_get = function() {
|
|
|
340
342
|
</forge-ai-edit-thread>
|
|
341
343
|
`,
|
|
342
344
|
() => html`
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
345
|
+
${when(
|
|
346
|
+
this.showThreadRename,
|
|
347
|
+
() => html`
|
|
348
|
+
<button
|
|
349
|
+
class="forge-button forge-button--dense thread-name__button"
|
|
350
|
+
id="thread-name-button"
|
|
351
|
+
aria-label="Edit thread name: ${this.threadName}"
|
|
352
|
+
@click=${__privateMethod(this, _AiChatbotLauncherComponent_instances, handleThreadNameClick_fn)}>
|
|
353
|
+
<span class="thread-name__text">${this.threadName}</span>
|
|
354
|
+
</button>
|
|
355
|
+
<forge-ai-tooltip for="thread-name-button" placement="bottom">${this.threadName}</forge-ai-tooltip>
|
|
356
|
+
`,
|
|
357
|
+
() => html`
|
|
358
|
+
<span class="thread-name__text" id="thread-name-text">${this.threadName}</span>
|
|
359
|
+
<forge-ai-tooltip for="thread-name-text" placement="bottom">${this.threadName}</forge-ai-tooltip>
|
|
360
|
+
`
|
|
361
|
+
)}
|
|
351
362
|
${when(showActions, () => __privateGet(this, _AiChatbotLauncherComponent_instances, threadActionsMenu_get))}
|
|
352
363
|
`
|
|
353
364
|
)}
|
|
@@ -380,7 +391,7 @@ conversationContentTemplate_get = function() {
|
|
|
380
391
|
<forge-ai-chat-header
|
|
381
392
|
${ref(__privateGet(this, _headerRef))}
|
|
382
393
|
?disable-agent-selector=${this._isStreaming}
|
|
383
|
-
export-option=${this._hasMessages ? "enabled" : "off"}
|
|
394
|
+
export-option=${this.exportOption === "off" ? "off" : this._hasMessages ? "enabled" : "off"}
|
|
384
395
|
clear-option=${this._hasMessages ? "enabled" : "off"}
|
|
385
396
|
.agentInfo=${this.agentInfo}
|
|
386
397
|
.headingLevel=${this.headingLevel}
|