@xpert-ai/chatkit-ui5 0.4.1 → 0.4.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/chatkit.cjs +135 -23
- package/dist/chatkit.cjs.map +1 -1
- package/dist/chatkit.ui5.js +135 -23
- package/dist/chatkit.ui5.js.map +1 -1
- package/dist/index.js +135 -23
- package/dist/index.js.map +1 -1
- package/package.json +3 -3
package/dist/chatkit.ui5.js
CHANGED
|
@@ -51,7 +51,7 @@ var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot
|
|
|
51
51
|
var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), setter ? setter.call(obj, value) : member.set(obj, value), value);
|
|
52
52
|
var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "access private method"), method);
|
|
53
53
|
|
|
54
|
-
var _a, _b, _setTrainingOptOut_dec, _hideHistory_dec, _showHistory_dec, _sendCustomAction_dec, _shareThread_dec, _setThreadId_dec, _setRuntimeCapabilities_dec, _setComposerValue_dec, _sendUserMessage_dec, _fetchUpdates_dec, _focusComposer_dec, _c, _opts, _frameUrl, _frame, _wrapper, _launcherCloseButton, _launcherOpen, _chatMinimizedToPet, _framePetOptionsOverride, _petClosedByContextMenu, _shadow, _petOverlay, _resolveLoaded, _loaded, _messenger, _ChatKitElementBase_instances, emitAndThrow_fn, setOptionsDataAttributes_fn, getDisplayMode_fn, getConfiguredPetOptions_fn, mergeConfiguredPetPositionDefaults_fn, getOverlayPetOptions_fn, resolvePetAssetUrl_fn, resolveOverlayPetOptions_fn, getFrameOptions_fn, setLauncherOpen_fn, setChatMinimizedToPet_fn, syncPetOverlayOptions_fn, handlePetActivate_fn, handlePetClose_fn, handlePetReply_fn, handlePetThreadSummaryActivate_fn, _handleLauncherClose, getFrameUrl_fn, setFrameUrl_fn, consumeFrameUrl_fn, _handleFrameLoad, _initialized, maybeInit_fn, _init;
|
|
54
|
+
var _a, _b, _setTrainingOptOut_dec, _hideHistory_dec, _showHistory_dec, _sendCustomAction_dec, _shareThread_dec, _setThreadId_dec, _setRuntimeCapabilities_dec, _setComposerValue_dec, _sendUserMessage_dec, _fetchUpdates_dec, _focusComposer_dec, _c, _opts, _frameUrl, _frame, _wrapper, _launcherCloseButton, _launcherOpen, _chatMinimizedToPet, _framePetOptionsOverride, _petClosedByContextMenu, _shadow, _petOverlay, _resolveLoaded, _loaded, _channelId, _messenger, _ChatKitElementBase_instances, emitAndThrow_fn, setOptionsDataAttributes_fn, getDisplayMode_fn, getConfiguredPetOptions_fn, mergeConfiguredPetPositionDefaults_fn, getOverlayPetOptions_fn, resolvePetAssetUrl_fn, resolveOverlayPetOptions_fn, getFrameOptions_fn, setLauncherOpen_fn, setChatMinimizedToPet_fn, syncPetOverlayOptions_fn, handlePetActivate_fn, handlePetClose_fn, handlePetReply_fn, handlePetThreadSummaryActivate_fn, _handleLauncherClose, getFrameUrl_fn, setFrameUrl_fn, consumeFrameUrl_fn, _handleFrameLoad, _initialized, maybeInit_fn, _init;
|
|
55
55
|
class EventEmitter {
|
|
56
56
|
constructor() {
|
|
57
57
|
__publicField(this, "callbacks", /* @__PURE__ */ new Map());
|
|
@@ -370,7 +370,7 @@ var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "acce
|
|
|
370
370
|
}
|
|
371
371
|
});
|
|
372
372
|
};
|
|
373
|
-
function
|
|
373
|
+
function createSecureChannelId() {
|
|
374
374
|
const cryptoRef = globalThis.crypto;
|
|
375
375
|
if (typeof (cryptoRef == null ? void 0 : cryptoRef.randomUUID) === "function") {
|
|
376
376
|
return cryptoRef.randomUUID();
|
|
@@ -382,7 +382,30 @@ var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "acce
|
|
|
382
382
|
bytes[8] = bytes[8] & 63 | 128;
|
|
383
383
|
return [...bytes].map((byte) => byte.toString(16).padStart(2, "0")).join("").replace(/^(.{8})(.{4})(.{4})(.{4})(.{12})$/, "$1-$2-$3-$4-$5");
|
|
384
384
|
}
|
|
385
|
-
return
|
|
385
|
+
return null;
|
|
386
|
+
}
|
|
387
|
+
function safeRandomUUID() {
|
|
388
|
+
return createSecureChannelId() ?? `ck_${Date.now()}_${Math.random().toString(16).slice(2)}`;
|
|
389
|
+
}
|
|
390
|
+
function isTrustedChatKitMessageEvent(event, { channelId, expectedOrigin, expectedSource }) {
|
|
391
|
+
const payload = event.data;
|
|
392
|
+
if (!payload || typeof payload !== "object" || !("__xpaiChatKit" in payload)) {
|
|
393
|
+
return false;
|
|
394
|
+
}
|
|
395
|
+
if (payload.__xpaiChatKit !== true) {
|
|
396
|
+
return false;
|
|
397
|
+
}
|
|
398
|
+
if (expectedOrigin !== "*" && event.origin !== expectedOrigin) {
|
|
399
|
+
return false;
|
|
400
|
+
}
|
|
401
|
+
if (event.source === expectedSource) {
|
|
402
|
+
return true;
|
|
403
|
+
}
|
|
404
|
+
const normalizedChannelId = channelId == null ? void 0 : channelId.trim();
|
|
405
|
+
if (normalizedChannelId) {
|
|
406
|
+
return "channelId" in payload && payload.channelId === normalizedChannelId;
|
|
407
|
+
}
|
|
408
|
+
return false;
|
|
386
409
|
}
|
|
387
410
|
let IntegrationError$1 = class IntegrationError2 extends Error {
|
|
388
411
|
constructor(message) {
|
|
@@ -416,10 +439,12 @@ var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "acce
|
|
|
416
439
|
handlers,
|
|
417
440
|
target,
|
|
418
441
|
targetOrigin,
|
|
442
|
+
channelId,
|
|
419
443
|
fetch: fetch2 = window.fetch
|
|
420
444
|
}) {
|
|
421
445
|
__publicField(this, "targetOrigin");
|
|
422
446
|
__publicField(this, "target");
|
|
447
|
+
__publicField(this, "channelId");
|
|
423
448
|
__publicField(this, "commandHandlers");
|
|
424
449
|
__publicField(this, "_fetch");
|
|
425
450
|
__publicField(this, "emitter", new EventEmitter());
|
|
@@ -450,7 +475,11 @@ var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "acce
|
|
|
450
475
|
));
|
|
451
476
|
__publicField(this, "handleMessage", async (event) => {
|
|
452
477
|
var _a2, _b2, _c2, _d;
|
|
453
|
-
if (!event
|
|
478
|
+
if (!isTrustedChatKitMessageEvent(event, {
|
|
479
|
+
channelId: this.channelId,
|
|
480
|
+
expectedOrigin: this.targetOrigin,
|
|
481
|
+
expectedSource: this.target()
|
|
482
|
+
})) {
|
|
454
483
|
return;
|
|
455
484
|
}
|
|
456
485
|
const data = event.data;
|
|
@@ -591,6 +620,7 @@ var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "acce
|
|
|
591
620
|
this.commandHandlers = handlers;
|
|
592
621
|
this.target = target;
|
|
593
622
|
this.targetOrigin = targetOrigin;
|
|
623
|
+
this.channelId = (channelId == null ? void 0 : channelId.trim()) || void 0;
|
|
594
624
|
this._fetch = (...args) => fetch2(...args);
|
|
595
625
|
}
|
|
596
626
|
setTargetOrigin(targetOrigin) {
|
|
@@ -600,6 +630,7 @@ var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "acce
|
|
|
600
630
|
var _a2;
|
|
601
631
|
const message = {
|
|
602
632
|
__xpaiChatKit: true,
|
|
633
|
+
...this.channelId ? { channelId: this.channelId } : {},
|
|
603
634
|
...data
|
|
604
635
|
};
|
|
605
636
|
(_a2 = this.target()) == null ? void 0 : _a2.postMessage(message, this.targetOrigin, transfer);
|
|
@@ -715,6 +746,8 @@ var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "acce
|
|
|
715
746
|
"event.response.end",
|
|
716
747
|
"event.response.stop",
|
|
717
748
|
"event.thread.change",
|
|
749
|
+
"event.project.change",
|
|
750
|
+
"event.connectors.change",
|
|
718
751
|
"event.tool.change",
|
|
719
752
|
"event.thread.load.start",
|
|
720
753
|
"event.thread.load.end",
|
|
@@ -820,7 +853,7 @@ var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "acce
|
|
|
820
853
|
"widget.Map"
|
|
821
854
|
];
|
|
822
855
|
const PROFILE_TO_RULES = {
|
|
823
|
-
|
|
856
|
+
chatkit: {
|
|
824
857
|
allow: [...BASE_CAPABILITY_ALLOWLIST, "thread.item.image_generation"],
|
|
825
858
|
deny: BASE_CAPABILITY_DENYLIST
|
|
826
859
|
}
|
|
@@ -1154,6 +1187,7 @@ var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "acce
|
|
|
1154
1187
|
this.lastDragPosition = null;
|
|
1155
1188
|
this.lastDragClientX = null;
|
|
1156
1189
|
this.dragAnimation = null;
|
|
1190
|
+
this.activePointerId = null;
|
|
1157
1191
|
this.isDragging = false;
|
|
1158
1192
|
this.isHovering = false;
|
|
1159
1193
|
this.movedDuringDrag = false;
|
|
@@ -1285,7 +1319,7 @@ var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "acce
|
|
|
1285
1319
|
};
|
|
1286
1320
|
this.handlePointerDown = (event) => {
|
|
1287
1321
|
var _a2, _b2;
|
|
1288
|
-
if (event.button !== 0 || event.ctrlKey) {
|
|
1322
|
+
if (event.button !== 0 || event.ctrlKey || this.isDragging) {
|
|
1289
1323
|
return;
|
|
1290
1324
|
}
|
|
1291
1325
|
this.closeContextMenu();
|
|
@@ -1311,12 +1345,17 @@ var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "acce
|
|
|
1311
1345
|
this.movedDuringDrag = false;
|
|
1312
1346
|
this.dragPosition = nextPosition;
|
|
1313
1347
|
this.isDragging = true;
|
|
1348
|
+
this.activePointerId = event.pointerId;
|
|
1314
1349
|
this.clearRestingDelayTimer();
|
|
1315
1350
|
this.isHovering = true;
|
|
1351
|
+
this.captureActivePointer();
|
|
1316
1352
|
this.installDragListeners();
|
|
1317
1353
|
this.rescheduleAnimation();
|
|
1318
1354
|
};
|
|
1319
1355
|
this.handlePointerMove = (event) => {
|
|
1356
|
+
if (!this.isActiveDragPointer(event)) {
|
|
1357
|
+
return;
|
|
1358
|
+
}
|
|
1320
1359
|
const nextPosition = this.getNextDragPosition(event);
|
|
1321
1360
|
const last = this.lastDragPosition;
|
|
1322
1361
|
if (last && (Math.abs(last.x - nextPosition.x) > DRAG_DIRECTION_THRESHOLD_PX || Math.abs(last.y - nextPosition.y) > DRAG_DIRECTION_THRESHOLD_PX)) {
|
|
@@ -1336,20 +1375,18 @@ var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "acce
|
|
|
1336
1375
|
this.render();
|
|
1337
1376
|
};
|
|
1338
1377
|
this.handlePointerUp = (event) => {
|
|
1378
|
+
if (!this.isActiveDragPointer(event)) {
|
|
1379
|
+
return;
|
|
1380
|
+
}
|
|
1339
1381
|
const finalPosition = this.lastDragPosition ?? this.getNextDragPosition(event);
|
|
1340
|
-
this.
|
|
1341
|
-
|
|
1342
|
-
|
|
1343
|
-
this.
|
|
1344
|
-
|
|
1345
|
-
this.persistPosition(finalPosition);
|
|
1346
|
-
if (event.pointerType === "mouse" && this.isPointerOverPet(event)) {
|
|
1347
|
-
this.isHovering = true;
|
|
1348
|
-
this.rescheduleAnimation();
|
|
1349
|
-
} else {
|
|
1350
|
-
this.enterRestingAfterDelay();
|
|
1351
|
-
this.rescheduleAnimation();
|
|
1382
|
+
this.finishDrag(finalPosition, event);
|
|
1383
|
+
};
|
|
1384
|
+
this.handleLostPointerCapture = (event) => {
|
|
1385
|
+
if (!this.isActiveDragPointer(event)) {
|
|
1386
|
+
return;
|
|
1352
1387
|
}
|
|
1388
|
+
const finalPosition = this.lastDragPosition ?? this.getNextDragPosition(event);
|
|
1389
|
+
this.finishDrag(finalPosition, event);
|
|
1353
1390
|
};
|
|
1354
1391
|
this.handleClick = () => {
|
|
1355
1392
|
var _a2;
|
|
@@ -1553,6 +1590,7 @@ var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "acce
|
|
|
1553
1590
|
pet.addEventListener("pointerenter", this.handlePointerEnter);
|
|
1554
1591
|
pet.addEventListener("pointerleave", this.handlePointerLeave);
|
|
1555
1592
|
pet.addEventListener("pointerdown", this.handlePointerDown);
|
|
1593
|
+
pet.addEventListener("lostpointercapture", this.handleLostPointerCapture);
|
|
1556
1594
|
pet.addEventListener("contextmenu", this.handleContextMenu);
|
|
1557
1595
|
pet.addEventListener("click", this.handleClick);
|
|
1558
1596
|
overlay.append(style, pet);
|
|
@@ -1562,6 +1600,7 @@ var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "acce
|
|
|
1562
1600
|
}
|
|
1563
1601
|
removeOverlay() {
|
|
1564
1602
|
var _a2;
|
|
1603
|
+
this.cancelActiveDrag();
|
|
1565
1604
|
this.clearRestingDelayTimer();
|
|
1566
1605
|
this.clearTimers();
|
|
1567
1606
|
this.closeContextMenu();
|
|
@@ -1578,6 +1617,10 @@ var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "acce
|
|
|
1578
1617
|
"pointerdown",
|
|
1579
1618
|
this.handlePointerDown
|
|
1580
1619
|
);
|
|
1620
|
+
this.petElement.removeEventListener(
|
|
1621
|
+
"lostpointercapture",
|
|
1622
|
+
this.handleLostPointerCapture
|
|
1623
|
+
);
|
|
1581
1624
|
this.petElement.removeEventListener(
|
|
1582
1625
|
"contextmenu",
|
|
1583
1626
|
this.handleContextMenu
|
|
@@ -2295,6 +2338,34 @@ var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "acce
|
|
|
2295
2338
|
this.render();
|
|
2296
2339
|
}
|
|
2297
2340
|
}
|
|
2341
|
+
captureActivePointer() {
|
|
2342
|
+
const pointerId = this.activePointerId;
|
|
2343
|
+
const pet = this.petElement;
|
|
2344
|
+
if (pointerId === null || typeof (pet == null ? void 0 : pet.setPointerCapture) !== "function") {
|
|
2345
|
+
return;
|
|
2346
|
+
}
|
|
2347
|
+
try {
|
|
2348
|
+
pet.setPointerCapture(pointerId);
|
|
2349
|
+
} catch {
|
|
2350
|
+
}
|
|
2351
|
+
}
|
|
2352
|
+
releaseActivePointer() {
|
|
2353
|
+
const pointerId = this.activePointerId;
|
|
2354
|
+
const pet = this.petElement;
|
|
2355
|
+
this.activePointerId = null;
|
|
2356
|
+
if (pointerId === null || typeof (pet == null ? void 0 : pet.hasPointerCapture) !== "function" || typeof pet.releasePointerCapture !== "function") {
|
|
2357
|
+
return;
|
|
2358
|
+
}
|
|
2359
|
+
try {
|
|
2360
|
+
if (pet.hasPointerCapture(pointerId)) {
|
|
2361
|
+
pet.releasePointerCapture(pointerId);
|
|
2362
|
+
}
|
|
2363
|
+
} catch {
|
|
2364
|
+
}
|
|
2365
|
+
}
|
|
2366
|
+
isActiveDragPointer(event) {
|
|
2367
|
+
return this.isDragging && event.pointerId === this.activePointerId;
|
|
2368
|
+
}
|
|
2298
2369
|
getNextDragPosition(event) {
|
|
2299
2370
|
if (!this.options) {
|
|
2300
2371
|
return { x: 0, y: 0 };
|
|
@@ -2309,12 +2380,35 @@ var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "acce
|
|
|
2309
2380
|
chatkitTypes.normalizeBoundsPadding(this.options.position.boundsPadding)
|
|
2310
2381
|
);
|
|
2311
2382
|
}
|
|
2383
|
+
finishDrag(finalPosition, event) {
|
|
2384
|
+
this.isDragging = false;
|
|
2385
|
+
this.dragPosition = null;
|
|
2386
|
+
this.dragAnimation = null;
|
|
2387
|
+
this.lastDragClientX = null;
|
|
2388
|
+
this.removeDragListeners();
|
|
2389
|
+
this.releaseActivePointer();
|
|
2390
|
+
this.persistPosition(finalPosition);
|
|
2391
|
+
if (event.pointerType === "mouse" && this.isPointerOverPet(event)) {
|
|
2392
|
+
this.isHovering = true;
|
|
2393
|
+
this.rescheduleAnimation();
|
|
2394
|
+
} else {
|
|
2395
|
+
this.enterRestingAfterDelay();
|
|
2396
|
+
this.rescheduleAnimation();
|
|
2397
|
+
}
|
|
2398
|
+
}
|
|
2399
|
+
cancelActiveDrag() {
|
|
2400
|
+
this.isDragging = false;
|
|
2401
|
+
this.dragPosition = null;
|
|
2402
|
+
this.dragAnimation = null;
|
|
2403
|
+
this.lastDragPosition = null;
|
|
2404
|
+
this.lastDragClientX = null;
|
|
2405
|
+
this.removeDragListeners();
|
|
2406
|
+
this.releaseActivePointer();
|
|
2407
|
+
}
|
|
2312
2408
|
installDragListeners() {
|
|
2313
2409
|
window.addEventListener("pointermove", this.handlePointerMove);
|
|
2314
|
-
window.addEventListener("pointerup", this.handlePointerUp
|
|
2315
|
-
window.addEventListener("pointercancel", this.handlePointerUp
|
|
2316
|
-
once: true
|
|
2317
|
-
});
|
|
2410
|
+
window.addEventListener("pointerup", this.handlePointerUp);
|
|
2411
|
+
window.addEventListener("pointercancel", this.handlePointerUp);
|
|
2318
2412
|
}
|
|
2319
2413
|
removeDragListeners() {
|
|
2320
2414
|
window.removeEventListener("pointermove", this.handlePointerMove);
|
|
@@ -2361,7 +2455,9 @@ var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "acce
|
|
|
2361
2455
|
__privateAdd(this, _loaded, new Promise((resolve) => {
|
|
2362
2456
|
__privateSet(this, _resolveLoaded, resolve);
|
|
2363
2457
|
}));
|
|
2458
|
+
__privateAdd(this, _channelId, createSecureChannelId());
|
|
2364
2459
|
__privateAdd(this, _messenger, new ChatFrameMessenger({
|
|
2460
|
+
channelId: __privateGet(this, _channelId) ?? void 0,
|
|
2365
2461
|
fetch: (...args) => {
|
|
2366
2462
|
var _a2;
|
|
2367
2463
|
const customFetch = ((_a2 = __privateGet(this, _opts)) == null ? void 0 : _a2.api) && "fetch" in __privateGet(this, _opts).api && __privateGet(this, _opts).api.fetch;
|
|
@@ -2418,6 +2514,16 @@ var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "acce
|
|
|
2418
2514
|
}
|
|
2419
2515
|
return onRequestPreview(request);
|
|
2420
2516
|
},
|
|
2517
|
+
onConnectWorkspaceConnector: async (request) => {
|
|
2518
|
+
var _a2, _b2, _c2;
|
|
2519
|
+
const connect = (_c2 = (_b2 = (_a2 = __privateGet(this, _opts)) == null ? void 0 : _a2.composer) == null ? void 0 : _b2.resources) == null ? void 0 : _c2.onConnect;
|
|
2520
|
+
if (!connect) {
|
|
2521
|
+
__privateMethod(this, _ChatKitElementBase_instances, emitAndThrow_fn).call(this, new IntegrationError(
|
|
2522
|
+
"Add composer.resources.onConnect to handle workspace Connector connections."
|
|
2523
|
+
));
|
|
2524
|
+
}
|
|
2525
|
+
return connect(request);
|
|
2526
|
+
},
|
|
2421
2527
|
onWorkbenchClientCommand: async ({
|
|
2422
2528
|
commandKey,
|
|
2423
2529
|
payload,
|
|
@@ -2860,6 +2966,7 @@ var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "acce
|
|
|
2860
2966
|
_petOverlay = new WeakMap();
|
|
2861
2967
|
_resolveLoaded = new WeakMap();
|
|
2862
2968
|
_loaded = new WeakMap();
|
|
2969
|
+
_channelId = new WeakMap();
|
|
2863
2970
|
_messenger = new WeakMap();
|
|
2864
2971
|
_ChatKitElementBase_instances = new WeakSet();
|
|
2865
2972
|
emitAndThrow_fn = function(error) {
|
|
@@ -3070,7 +3177,8 @@ var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "acce
|
|
|
3070
3177
|
frameURL.hash = encodeBase64({
|
|
3071
3178
|
options: getInnerOptions(__privateMethod(this, _ChatKitElementBase_instances, getFrameOptions_fn).call(this, __privateGet(this, _opts))),
|
|
3072
3179
|
referrer: window.location.origin,
|
|
3073
|
-
profile: this.profile
|
|
3180
|
+
profile: this.profile,
|
|
3181
|
+
...__privateGet(this, _channelId) ? { channelId: __privateGet(this, _channelId) } : {}
|
|
3074
3182
|
});
|
|
3075
3183
|
__privateGet(this, _messenger).connect();
|
|
3076
3184
|
__privateGet(this, _frame).src = frameURL.toString();
|
|
@@ -3114,6 +3222,8 @@ var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "acce
|
|
|
3114
3222
|
"chatkit.response.start": "onResponseStart",
|
|
3115
3223
|
"chatkit.log": "onLog",
|
|
3116
3224
|
"chatkit.thread.change": "onThreadChange",
|
|
3225
|
+
"chatkit.project.change": "onProjectChange",
|
|
3226
|
+
"chatkit.connectors.change": "onConnectorsChange",
|
|
3117
3227
|
"chatkit.thread.load.start": "onThreadLoadStart",
|
|
3118
3228
|
"chatkit.thread.load.end": "onThreadLoadEnd",
|
|
3119
3229
|
"chatkit.ready": "onReady",
|
|
@@ -3125,6 +3235,8 @@ var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "acce
|
|
|
3125
3235
|
"chatkit.response.start": "responseStart",
|
|
3126
3236
|
"chatkit.log": "log",
|
|
3127
3237
|
"chatkit.thread.change": "threadChange",
|
|
3238
|
+
"chatkit.project.change": "projectChange",
|
|
3239
|
+
"chatkit.connectors.change": "connectorsChange",
|
|
3128
3240
|
"chatkit.thread.load.start": "threadLoadStart",
|
|
3129
3241
|
"chatkit.thread.load.end": "threadLoadEnd",
|
|
3130
3242
|
"chatkit.ready": "ready",
|