@xpert-ai/chatkit-web-component 0.18.0 → 0.19.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.
@@ -47,7 +47,7 @@ var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read fr
47
47
  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);
48
48
  var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), setter ? setter.call(obj, value) : member.set(obj, value), value);
49
49
  var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "access private method"), method);
50
- var _a, _b, _setTrainingOptOut_dec, _hideHistory_dec, _showHistory_dec, _sendCustomAction_dec, _shareThread_dec, _focusMessage_dec, _setThreadId_dec, _setRuntimeCapabilities_dec, _setComposerValue_dec, _sendUserMessage_dec, _fetchUpdates_dec, _focusComposer_dec, _c, _opts, _frameUrl, _frame, _wrapper, _windowDrag, _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;
50
+ var _a, _b, _setTrainingOptOut_dec, _hideHistory_dec, _showHistory_dec, _sendCustomAction_dec, _shareThread_dec, _focusMessage_dec, _prepareLeave_dec, _setThreadId_dec, _setRuntimeCapabilities_dec, _setComposerValue_dec, _sendUserMessage_dec, _fetchUpdates_dec, _focusComposer_dec, _c, _opts, _frameUrl, _frame, _wrapper, _windowDrag, _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;
51
51
  class EventEmitter {
52
52
  constructor() {
53
53
  __publicField(this, "callbacks", /* @__PURE__ */ new Map());
@@ -752,6 +752,7 @@ const BASE_CAPABILITY_ALLOWLIST = [
752
752
  "command.setThreadId",
753
753
  "command.focusComposer",
754
754
  "command.focusMessage",
755
+ "command.prepareLeave",
755
756
  "command.fetchUpdates",
756
757
  "command.sendCustomAction",
757
758
  "command.showHistory",
@@ -1045,6 +1046,14 @@ const DEFAULT_PET_BOUNDS_PADDING = {
1045
1046
  left: 0
1046
1047
  };
1047
1048
  const DEFAULT_PET_STORAGE_KEY = "chatkit:pet:position:v1";
1049
+ function getPetAssetsBaseUrl(pet) {
1050
+ return pet && typeof pet === "object" ? pet.assetsBaseUrl : void 0;
1051
+ }
1052
+ function getPetAssetUrl(id, assetsBaseUrl) {
1053
+ const base = ((assetsBaseUrl == null ? void 0 : assetsBaseUrl.trim()) || "/pets").replace(/\/+$/, "");
1054
+ const resourceId = id;
1055
+ return `${base}/${encodeURIComponent(resourceId)}/spritesheet.webp`;
1056
+ }
1048
1057
  const DEFAULT_PET_SPRITESHEET_URL = "/pets/boba/spritesheet.webp";
1049
1058
  const DEFAULT_PET_CHARACTER = {
1050
1059
  type: "sprite-atlas",
@@ -1091,12 +1100,16 @@ function normalizeCharacter(character) {
1091
1100
  return DEFAULT_PET_CHARACTER;
1092
1101
  }
1093
1102
  function normalizePetOptions(pet) {
1103
+ var _a2;
1094
1104
  if (!pet) {
1095
1105
  return null;
1096
1106
  }
1097
1107
  if (pet === true) {
1098
1108
  return {
1099
- character: DEFAULT_PET_CHARACTER,
1109
+ character: {
1110
+ ...DEFAULT_PET_CHARACTER,
1111
+ src: getPetAssetUrl("boba")
1112
+ },
1100
1113
  position: DEFAULT_POSITION,
1101
1114
  behavior: "auto",
1102
1115
  ariaLabel: "Animated pet",
@@ -1107,7 +1120,10 @@ function normalizePetOptions(pet) {
1107
1120
  return null;
1108
1121
  }
1109
1122
  return {
1110
- character: normalizeCharacter(pet.character),
1123
+ character: ((_a2 = pet.character) == null ? void 0 : _a2.src) ? normalizeCharacter(pet.character) : {
1124
+ ...DEFAULT_PET_CHARACTER,
1125
+ src: getPetAssetUrl("boba", pet.assetsBaseUrl)
1126
+ },
1111
1127
  position: {
1112
1128
  ...DEFAULT_POSITION,
1113
1129
  ...pet.position
@@ -2747,7 +2763,7 @@ function requireCommandCapability(value, context) {
2747
2763
  return value.apply(this, args);
2748
2764
  };
2749
2765
  }
2750
- class ChatKitElementBase extends (_c = HTMLElement, _focusComposer_dec = [requireCommandCapability], _fetchUpdates_dec = [requireCommandCapability], _sendUserMessage_dec = [requireCommandCapability], _setComposerValue_dec = [requireCommandCapability], _setRuntimeCapabilities_dec = [requireCommandCapability], _setThreadId_dec = [requireCommandCapability], _focusMessage_dec = [requireCommandCapability], _shareThread_dec = [requireCommandCapability], _sendCustomAction_dec = [requireCommandCapability], _showHistory_dec = [requireCommandCapability], _hideHistory_dec = [requireCommandCapability], _setTrainingOptOut_dec = [requireCommandCapability], _c) {
2766
+ class ChatKitElementBase extends (_c = HTMLElement, _focusComposer_dec = [requireCommandCapability], _fetchUpdates_dec = [requireCommandCapability], _sendUserMessage_dec = [requireCommandCapability], _setComposerValue_dec = [requireCommandCapability], _setRuntimeCapabilities_dec = [requireCommandCapability], _setThreadId_dec = [requireCommandCapability], _prepareLeave_dec = [requireCommandCapability], _focusMessage_dec = [requireCommandCapability], _shareThread_dec = [requireCommandCapability], _sendCustomAction_dec = [requireCommandCapability], _showHistory_dec = [requireCommandCapability], _hideHistory_dec = [requireCommandCapability], _setTrainingOptOut_dec = [requireCommandCapability], _c) {
2751
2767
  constructor({ profile }) {
2752
2768
  super();
2753
2769
  __runInitializers(_init, 5, this);
@@ -3293,6 +3309,11 @@ class ChatKitElementBase extends (_c = HTMLElement, _focusComposer_dec = [requir
3293
3309
  await __privateGet(this, _loaded);
3294
3310
  await ((_a2 = __privateGet(this, _messenger)) == null ? void 0 : _a2.commands.setThreadId({ threadId }));
3295
3311
  }
3312
+ async prepareLeave() {
3313
+ await __privateGet(this, _loaded);
3314
+ if (!__privateGet(this, _messenger)) return false;
3315
+ return __privateGet(this, _messenger).commands.prepareLeave();
3316
+ }
3296
3317
  async focusMessage(request) {
3297
3318
  await __privateGet(this, _loaded);
3298
3319
  if (!__privateGet(this, _messenger)) return { success: false, code: "not_ready" };
@@ -3362,7 +3383,7 @@ getConfiguredPetOptions_fn = function(options = __privateGet(this, _opts)) {
3362
3383
  return null;
3363
3384
  }
3364
3385
  if (__privateMethod(this, _ChatKitElementBase_instances, getDisplayMode_fn).call(this, options) === "pet" && !normalizePetOptions(options.pet ?? null)) {
3365
- return true;
3386
+ return typeof options.pet === "object" ? { ...options.pet, enabled: true } : true;
3366
3387
  }
3367
3388
  return options.pet ?? null;
3368
3389
  };
@@ -3420,7 +3441,11 @@ resolvePetAssetUrl_fn = function(src) {
3420
3441
  }
3421
3442
  };
3422
3443
  resolveOverlayPetOptions_fn = function(pet) {
3423
- const normalized = normalizePetOptions(pet ?? null);
3444
+ var _a2;
3445
+ const assetsBaseUrl = getPetAssetsBaseUrl(pet ?? void 0) ?? getPetAssetsBaseUrl((_a2 = __privateGet(this, _opts)) == null ? void 0 : _a2.pet);
3446
+ const normalized = normalizePetOptions(
3447
+ pet ? { ...pet === true ? {} : pet, assetsBaseUrl } : null
3448
+ );
3424
3449
  if (!normalized) {
3425
3450
  return null;
3426
3451
  }
@@ -3566,6 +3591,7 @@ __decorateElement(_init, 1, "sendUserMessage", _sendUserMessage_dec, ChatKitElem
3566
3591
  __decorateElement(_init, 1, "setComposerValue", _setComposerValue_dec, ChatKitElementBase);
3567
3592
  __decorateElement(_init, 1, "setRuntimeCapabilities", _setRuntimeCapabilities_dec, ChatKitElementBase);
3568
3593
  __decorateElement(_init, 1, "setThreadId", _setThreadId_dec, ChatKitElementBase);
3594
+ __decorateElement(_init, 1, "prepareLeave", _prepareLeave_dec, ChatKitElementBase);
3569
3595
  __decorateElement(_init, 1, "focusMessage", _focusMessage_dec, ChatKitElementBase);
3570
3596
  __decorateElement(_init, 1, "shareThread", _shareThread_dec, ChatKitElementBase);
3571
3597
  __decorateElement(_init, 1, "sendCustomAction", _sendCustomAction_dec, ChatKitElementBase);