botframework-webchat-api 4.18.0 → 4.18.1-main.20240807.dfe788c
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/botframework-webchat-api.d.mts +30 -3
- package/dist/botframework-webchat-api.mjs +2 -2
- package/dist/botframework-webchat-api.mjs.map +1 -1
- package/dist/metafile-esm.json +1 -1
- package/lib/StyleOptions.d.ts +23 -2
- package/lib/StyleOptions.d.ts.map +1 -1
- package/lib/StyleOptions.js +1 -1
- package/lib/defaultStyleOptions.d.ts.map +1 -1
- package/lib/defaultStyleOptions.js +6 -2
- package/lib/hooks/useSuggestedActions.d.ts +8 -2
- package/lib/hooks/useSuggestedActions.d.ts.map +1 -1
- package/lib/hooks/useSuggestedActions.js +18 -6
- package/lib/index.js +2 -2
- package/lib/normalizeStyleOptions.d.ts.map +1 -1
- package/lib/normalizeStyleOptions.js +8 -1
- package/package.json +3 -3
- package/src/StyleOptions.ts +29 -2
- package/src/defaultStyleOptions.ts +3 -1
- package/src/hooks/useSuggestedActions.ts +17 -4
- package/src/normalizeStyleOptions.ts +13 -0
|
@@ -13,6 +13,7 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
|
|
|
13
13
|
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
14
14
|
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
15
15
|
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
16
|
+
var bubbleImageHeightDeprecation = (0, _botframeworkWebchatCore.warnOnce)('"styleOptions.bubbleImageHeight" has been deprecated. Use "styleOptions.bubbleImageMaxHeight" and "styleOptions.bubbleImageMinHeight" instead. This deprecation migration will be removed on or after 2026-07-05.');
|
|
16
17
|
var hideScrollToEndButtonDeprecation = (0, _botframeworkWebchatCore.warnOnce)('"styleOptions.hideScrollToEndButton" has been deprecated. To hide scroll to end button, set "scrollToEndBehavior" to false. This deprecation migration will be removed on or after 2023-06-02.');
|
|
17
18
|
var newMessagesButtonFontSizeDeprecation = (0, _botframeworkWebchatCore.warnOnce)('"styleOptions.newMessagesButtonFontSize" has been renamed to "styleOptions.scrollToEndButtonFontSize". This deprecation migration will be removed on or after 2023-06-02.');
|
|
18
19
|
var suggestedActionBackgroundDeprecation = (0, _botframeworkWebchatCore.warnOnce)('"styleOptions.suggestedActionBackground" has been deprecated. Please use "styleOptions.suggestedActionBackgroundColor" instead. This deprecation migration will be removed on or after 2021-09-16.');
|
|
@@ -137,6 +138,12 @@ function normalizeStyleOptions() {
|
|
|
137
138
|
suggestedActionDisabledDeprecation();
|
|
138
139
|
filledOptions.suggestedActionTextColorOnDisabled = options.suggestedActionTextColorOnDisabled || options.suggestedActionDisabledTextColor;
|
|
139
140
|
}
|
|
141
|
+
if (options.bubbleImageHeight) {
|
|
142
|
+
bubbleImageHeightDeprecation();
|
|
143
|
+
filledOptions.bubbleImageMaxHeight = options.bubbleImageHeight;
|
|
144
|
+
filledOptions.bubbleImageMinHeight = options.bubbleImageHeight;
|
|
145
|
+
filledOptions.bubbleImageHeight = undefined;
|
|
146
|
+
}
|
|
140
147
|
return _objectSpread(_objectSpread({}, filledOptions), {}, {
|
|
141
148
|
bubbleFromUserNubOffset: normalizedBubbleFromUserNubOffset,
|
|
142
149
|
bubbleNubOffset: normalizedBubbleNubOffset,
|
|
@@ -144,4 +151,4 @@ function normalizeStyleOptions() {
|
|
|
144
151
|
scrollToEndButtonBehavior: patchedScrollToEndButtonBehavior
|
|
145
152
|
});
|
|
146
153
|
}
|
|
147
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfYm90ZnJhbWV3b3JrV2ViY2hhdENvcmUiLCJyZXF1aXJlIiwiX2RlZmF1bHRTdHlsZU9wdGlvbnMiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX2V4Y2x1ZGVkIiwib2JqIiwiX19lc01vZHVsZSIsImRlZmF1bHQiLCJvd25LZXlzIiwib2JqZWN0IiwiZW51bWVyYWJsZU9ubHkiLCJrZXlzIiwiT2JqZWN0IiwiZ2V0T3duUHJvcGVydHlTeW1ib2xzIiwic3ltYm9scyIsImZpbHRlciIsInN5bSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImVudW1lcmFibGUiLCJwdXNoIiwiYXBwbHkiLCJfb2JqZWN0U3ByZWFkIiwidGFyZ2V0IiwiaSIsImFyZ3VtZW50cyIsImxlbmd0aCIsInNvdXJjZSIsImZvckVhY2giLCJrZXkiLCJfZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzIiwiZGVmaW5lUHJvcGVydGllcyIsImRlZmluZVByb3BlcnR5IiwidmFsdWUiLCJjb25maWd1cmFibGUiLCJ3cml0YWJsZSIsIl9vYmplY3RXaXRob3V0UHJvcGVydGllcyIsImV4Y2x1ZGVkIiwiX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UiLCJzb3VyY2VTeW1ib2xLZXlzIiwiaW5kZXhPZiIsInByb3RvdHlwZSIsInByb3BlcnR5SXNFbnVtZXJhYmxlIiwiY2FsbCIsInNvdXJjZUtleXMiLCJoaWRlU2Nyb2xsVG9FbmRCdXR0b25EZXByZWNhdGlvbiIsIndhcm5PbmNlIiwibmV3TWVzc2FnZXNCdXR0b25Gb250U2l6ZURlcHJlY2F0aW9uIiwic3VnZ2VzdGVkQWN0aW9uQmFja2dyb3VuZERlcHJlY2F0aW9uIiwic3VnZ2VzdGVkQWN0aW9uWFhYQmFja2dyb3VuZERlcHJlY2F0aW9uIiwic3VnZ2VzdGVkQWN0aW9uRGlzYWJsZWREZXByZWNhdGlvbiIsIm5vcm1hbGl6ZVN0eWxlT3B0aW9ucyIsIl9yZWYiLCJ1bmRlZmluZWQiLCJoaWRlU2Nyb2xsVG9FbmRCdXR0b24iLCJuZXdNZXNzYWdlc0J1dHRvbkZvbnRTaXplIiwib3B0aW9ucyIsImZpbGxlZE9wdGlvbnMiLCJkZWZhdWx0U3R5bGVPcHRpb25zIiwiYnViYmxlRnJvbVVzZXJOdWJPZmZzZXQiLCJidWJibGVOdWJPZmZzZXQiLCJlbW9qaVNldCIsIm5vcm1hbGl6ZWRCdWJibGVGcm9tVXNlck51Yk9mZnNldCIsIm5vcm1hbGl6ZWRCdWJibGVOdWJPZmZzZXQiLCJub3JtYWxpemVkRW1vamlTZXQiLCJ0b1N0cmluZyIsImNvbnNvbGUiLCJ3YXJuIiwic2Nyb2xsVG9FbmRCdXR0b25CZWhhdmlvciIsInBhdGNoZWRTY3JvbGxUb0VuZEJ1dHRvbkJlaGF2aW9yIiwic2Nyb2xsVG9FbmRCdXR0b25Gb250U2l6ZSIsInN1Z2dlc3RlZEFjdGlvbkJhY2tncm91bmQiLCJzdWdnZXN0ZWRBY3Rpb25BY3RpdmVCYWNrZ3JvdW5kIiwic3VnZ2VzdGVkQWN0aW9uQmFja2dyb3VuZENvbG9yT25BY3RpdmUiLCJzdWdnZXN0ZWRBY3Rpb25Gb2N1c0JhY2tncm91bmQiLCJzdWdnZXN0ZWRBY3Rpb25CYWNrZ3JvdW5kQ29sb3JPbkZvY3VzIiwic3VnZ2VzdGVkQWN0aW9uSG92ZXJCYWNrZ3JvdW5kIiwic3VnZ2VzdGVkQWN0aW9uQmFja2dyb3VuZENvbG9yT25Ib3ZlciIsInN1Z2dlc3RlZEFjdGlvbkRpc2FibGVkQmFja2dyb3VuZCIsInN1Z2dlc3RlZEFjdGlvbkJhY2tncm91bmRDb2xvck9uRGlzYWJsZWQiLCJzdWdnZXN0ZWRBY3Rpb25EaXNhYmxlZEJvcmRlckNvbG9yIiwic3VnZ2VzdGVkQWN0aW9uQm9yZGVyQ29sb3JPbkRpc2FibGVkIiwic3VnZ2VzdGVkQWN0aW9uRGlzYWJsZWRCb3JkZXJTdHlsZSIsInN1Z2dlc3RlZEFjdGlvbkJvcmRlclN0eWxlT25EaXNhYmxlZCIsInN1Z2dlc3RlZEFjdGlvbkRpc2FibGVkQm9yZGVyV2lkdGgiLCJzdWdnZXN0ZWRBY3Rpb25Cb3JkZXJXaWR0aE9uRGlzYWJsZWQiLCJzdWdnZXN0ZWRBY3Rpb25EaXNhYmxlZFRleHRDb2xvciIsInN1Z2dlc3RlZEFjdGlvblRleHRDb2xvck9uRGlzYWJsZWQiXSwic291cmNlUm9vdCI6ImNvbXBvbmVudDovLy8iLCJzb3VyY2VzIjpbIi4uL3NyYy9ub3JtYWxpemVTdHlsZU9wdGlvbnMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgd2Fybk9uY2UgfSBmcm9tICdib3RmcmFtZXdvcmstd2ViY2hhdC1jb3JlJztcblxuaW1wb3J0IGRlZmF1bHRTdHlsZU9wdGlvbnMgZnJvbSAnLi9kZWZhdWx0U3R5bGVPcHRpb25zJztcbmltcG9ydCBTdHlsZU9wdGlvbnMsIHsgU3RyaWN0U3R5bGVPcHRpb25zIH0gZnJvbSAnLi9TdHlsZU9wdGlvbnMnO1xuXG5jb25zdCBoaWRlU2Nyb2xsVG9FbmRCdXR0b25EZXByZWNhdGlvbiA9IHdhcm5PbmNlKFxuICAnXCJzdHlsZU9wdGlvbnMuaGlkZVNjcm9sbFRvRW5kQnV0dG9uXCIgaGFzIGJlZW4gZGVwcmVjYXRlZC4gVG8gaGlkZSBzY3JvbGwgdG8gZW5kIGJ1dHRvbiwgc2V0IFwic2Nyb2xsVG9FbmRCZWhhdmlvclwiIHRvIGZhbHNlLiBUaGlzIGRlcHJlY2F0aW9uIG1pZ3JhdGlvbiB3aWxsIGJlIHJlbW92ZWQgb24gb3IgYWZ0ZXIgMjAyMy0wNi0wMi4nXG4pO1xuXG5jb25zdCBuZXdNZXNzYWdlc0J1dHRvbkZvbnRTaXplRGVwcmVjYXRpb24gPSB3YXJuT25jZShcbiAgJ1wic3R5bGVPcHRpb25zLm5ld01lc3NhZ2VzQnV0dG9uRm9udFNpemVcIiBoYXMgYmVlbiByZW5hbWVkIHRvIFwic3R5bGVPcHRpb25zLnNjcm9sbFRvRW5kQnV0dG9uRm9udFNpemVcIi4gVGhpcyBkZXByZWNhdGlvbiBtaWdyYXRpb24gd2lsbCBiZSByZW1vdmVkIG9uIG9yIGFmdGVyIDIwMjMtMDYtMDIuJ1xuKTtcblxuY29uc3Qgc3VnZ2VzdGVkQWN0aW9uQmFja2dyb3VuZERlcHJlY2F0aW9uID0gd2Fybk9uY2UoXG4gICdcInN0eWxlT3B0aW9ucy5zdWdnZXN0ZWRBY3Rpb25CYWNrZ3JvdW5kXCIgaGFzIGJlZW4gZGVwcmVjYXRlZC4gUGxlYXNlIHVzZSBcInN0eWxlT3B0aW9ucy5zdWdnZXN0ZWRBY3Rpb25CYWNrZ3JvdW5kQ29sb3JcIiBpbnN0ZWFkLiBUaGlzIGRlcHJlY2F0aW9uIG1pZ3JhdGlvbiB3aWxsIGJlIHJlbW92ZWQgb24gb3IgYWZ0ZXIgMjAyMS0wOS0xNi4nXG4pO1xuXG5jb25zdCBzdWdnZXN0ZWRBY3Rpb25YWFhCYWNrZ3JvdW5kRGVwcmVjYXRpb24gPSB3YXJuT25jZShcbiAgJ1wic3R5bGVPcHRpb25zLnN1Z2dlc3RlZEFjdGlvblhYWEJhY2tncm91bmRcIiBoYXMgYmVlbiBkZXByZWNhdGVkLiBQbGVhc2UgdXNlIFwic3R5bGVPcHRpb25zLnN1Z2dlc3RlZEFjdGlvbkJhY2tncm91bmRDb2xvck9uWFhYXCIgaW5zdGVhZC4gVGhpcyBkZXByZWNhdGlvbiBtaWdyYXRpb24gd2lsbCBiZSByZW1vdmVkIG9uIG9yIGFmdGVyIDIwMjEtMDktMTYuJ1xuKTtcblxuY29uc3Qgc3VnZ2VzdGVkQWN0aW9uRGlzYWJsZWREZXByZWNhdGlvbiA9IHdhcm5PbmNlKFxuICAnXCJzdHlsZU9wdGlvbnMuc3VnZ2VzdGVkQWN0aW9uRGlzYWJsZWRYWFhcIiBoYXMgYmVlbiByZW5hbWVkIHRvIFwic3R5bGVPcHRpb25zLnN1Z2dlc3RlZEFjdGlvblhYWE9uRGlzYWJsZWRcIi4gVGhpcyBkZXByZWNhdGlvbiBtaWdyYXRpb24gd2lsbCBiZSByZW1vdmVkIG9uIG9yIGFmdGVyIDIwMjEtMDktMTYuJ1xuKTtcblxuLy8gVE9ETzogW1A0XSBXZSBzaG91bGQgYWRkIGEgbm90aWNlIGZvciBwZW9wbGUgd2hvIHdhbnQgdG8gdXNlIFwic3R5bGVTZXRcIiBpbnN0ZWFkIG9mIFwic3R5bGVPcHRpb25zXCIuXG4vLyAgICAgICBcInN0eWxlU2V0XCIgaXMgYWN0dWFsbHkgQ1NTIHN0eWxlc2hlZXQgYW5kIGl0IGlzIGJhc2VkIG9uIHRoZSBET00gdHJlZS5cbi8vICAgICAgIERPTSB0cmVlIG1heSBjaGFuZ2UgZnJvbSB0aW1lIHRvIHRpbWUsIHRodXMsIG1haW50YWluaW5nIFwic3R5bGVTZXRcIiBiZWNvbWVzIGEgY29uc3RhbnQgZWZmb3J0LlxuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgY29tcGxleGl0eVxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gbm9ybWFsaXplU3R5bGVPcHRpb25zKHtcbiAgaGlkZVNjcm9sbFRvRW5kQnV0dG9uLFxuICBuZXdNZXNzYWdlc0J1dHRvbkZvbnRTaXplLFxuICAuLi5vcHRpb25zXG59OiBTdHlsZU9wdGlvbnMgPSB7fSk6IFN0cmljdFN0eWxlT3B0aW9ucyB7XG4gIGNvbnN0IGZpbGxlZE9wdGlvbnM6IFJlcXVpcmVkPFN0eWxlT3B0aW9ucz4gPSB7IC4uLmRlZmF1bHRTdHlsZU9wdGlvbnMsIC4uLm9wdGlvbnMgfTtcblxuICAvLyBLZWVwIHRoaXMgbGlzdCBmbGF0IChubyBuZXN0ZWQgc3R5bGUpIGFuZCBzZXJpYWxpemFibGUgKG5vIGZ1bmN0aW9ucylcbiAgY29uc3QgeyBidWJibGVGcm9tVXNlck51Yk9mZnNldCwgYnViYmxlTnViT2Zmc2V0LCBlbW9qaVNldCB9ID0gZmlsbGVkT3B0aW9ucztcblxuICBsZXQgbm9ybWFsaXplZEJ1YmJsZUZyb21Vc2VyTnViT2Zmc2V0OiBudW1iZXI7XG4gIGxldCBub3JtYWxpemVkQnViYmxlTnViT2Zmc2V0OiBudW1iZXI7XG4gIGxldCBub3JtYWxpemVkRW1vamlTZXQ6IGZhbHNlIHwgUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcblxuICBpZiAoYnViYmxlRnJvbVVzZXJOdWJPZmZzZXQgPT09ICd0b3AnKSB7XG4gICAgbm9ybWFsaXplZEJ1YmJsZUZyb21Vc2VyTnViT2Zmc2V0ID0gMDtcbiAgfSBlbHNlIGlmICh0eXBlb2YgYnViYmxlRnJvbVVzZXJOdWJPZmZzZXQgIT09ICdudW1iZXInKSB7XG4gICAgbm9ybWFsaXplZEJ1YmJsZUZyb21Vc2VyTnViT2Zmc2V0ID0gLTA7XG4gIH0gZWxzZSB7XG4gICAgbm9ybWFsaXplZEJ1YmJsZUZyb21Vc2VyTnViT2Zmc2V0ID0gYnViYmxlRnJvbVVzZXJOdWJPZmZzZXQ7XG4gIH1cblxuICBpZiAoYnViYmxlTnViT2Zmc2V0ID09PSAndG9wJykge1xuICAgIG5vcm1hbGl6ZWRCdWJibGVOdWJPZmZzZXQgPSAwO1xuICB9IGVsc2UgaWYgKHR5cGVvZiBidWJibGVOdWJPZmZzZXQgIT09ICdudW1iZXInKSB7XG4gICAgbm9ybWFsaXplZEJ1YmJsZU51Yk9mZnNldCA9IC0wO1xuICB9IGVsc2Uge1xuICAgIG5vcm1hbGl6ZWRCdWJibGVOdWJPZmZzZXQgPSBidWJibGVOdWJPZmZzZXQ7XG4gIH1cblxuICBpZiAoZW1vamlTZXQgPT09IHRydWUpIHtcbiAgICBub3JtYWxpemVkRW1vamlTZXQgPSB7XG4gICAgICAnOiknOiAn8J+YiicsXG4gICAgICAnOi0pJzogJ/CfmIonLFxuICAgICAgJyg6JzogJ/CfmIonLFxuICAgICAgJygtOic6ICfwn5iKJyxcbiAgICAgICc6LXwnOiAn8J+YkCcsXG4gICAgICAnOnwnOiAn8J+YkCcsXG4gICAgICAnOi0oJzogJ+KYue+4jycsXG4gICAgICAnOignOiAn4pi577iPJyxcbiAgICAgICc6LUQnOiAn8J+YgCcsXG4gICAgICAnOkQnOiAn8J+YgCcsXG4gICAgICAnOi1wJzogJ/CfmJsnLFxuICAgICAgJzpwJzogJ/CfmJsnLFxuICAgICAgJzotUCc6ICfwn5ibJyxcbiAgICAgICc6UCc6ICfwn5ibJyxcbiAgICAgICc6LW8nOiAn8J+YsicsXG4gICAgICAnOm8nOiAn8J+YsicsXG4gICAgICAnOk8nOiAn8J+YsicsXG4gICAgICAnOi1PJzogJ/CfmLInLFxuICAgICAgJzotMCc6ICfwn5iyJyxcbiAgICAgICc6MCc6ICfwn5iyJyxcbiAgICAgICc7LSknOiAn8J+YiScsXG4gICAgICAnOyknOiAn8J+YiScsXG4gICAgICAnPDMnOiAn4p2k77iPJyxcbiAgICAgICc8LzMnOiAn8J+SlCcsXG4gICAgICAnPFxcXFwzJzogJ/CfkpQnXG4gICAgfTtcbiAgfSBlbHNlIGlmIChPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoZW1vamlTZXQpICE9PSAnW29iamVjdCBPYmplY3RdJykge1xuICAgIGNvbnNvbGUud2FybignYm90ZnJhbWV3b3JrLXdlYmNoYXQ6IGVtb2ppU2V0IG11c3QgYmUgYSBib29sZWFuIG9yIGFuIG9iamVjdCB3aXRoIGVtb3RpY29uOiBlbW9qaVZhbHVlcycpO1xuICAgIG5vcm1hbGl6ZWRFbW9qaVNldCA9IGZhbHNlO1xuICB9IGVsc2Uge1xuICAgIG5vcm1hbGl6ZWRFbW9qaVNldCA9IGVtb2ppU2V0O1xuICB9XG5cbiAgaWYgKGhpZGVTY3JvbGxUb0VuZEJ1dHRvbikge1xuICAgIGhpZGVTY3JvbGxUb0VuZEJ1dHRvbkRlcHJlY2F0aW9uKCk7XG5cbiAgICAvLyBPbmx5IHNldCBpZiB0aGUgXCJzY3JvbGxUb0VuZEJ1dHRvbkJlaGF2aW9yXCIgaXMgbm90IHNldC5cbiAgICAvLyBJZiBpdCBoYXMgYmVlbiBzZXQsIHRoZSBkZXZlbG9wZXIgc2hvdWxkIGtub3cgdGhlIG9sZGVyIFwiaGlkZVNjcm9sbFRvRW5kQnV0dG9uXCIgb3B0aW9uIGlzIGRlcHJlY2F0ZWQuXG4gICAgZmlsbGVkT3B0aW9ucy5zY3JvbGxUb0VuZEJ1dHRvbkJlaGF2aW9yID0gb3B0aW9ucy5zY3JvbGxUb0VuZEJ1dHRvbkJlaGF2aW9yIHx8IGZhbHNlO1xuICB9XG5cbiAgbGV0IHBhdGNoZWRTY3JvbGxUb0VuZEJ1dHRvbkJlaGF2aW9yID0gZmlsbGVkT3B0aW9ucy5zY3JvbGxUb0VuZEJ1dHRvbkJlaGF2aW9yO1xuXG4gIGlmIChwYXRjaGVkU2Nyb2xsVG9FbmRCdXR0b25CZWhhdmlvciAhPT0gJ2FueScgJiYgcGF0Y2hlZFNjcm9sbFRvRW5kQnV0dG9uQmVoYXZpb3IgIT09IGZhbHNlKSB7XG4gICAgcGF0Y2hlZFNjcm9sbFRvRW5kQnV0dG9uQmVoYXZpb3IgPT09ICd1bnJlYWQnIHx8XG4gICAgICBjb25zb2xlLndhcm4oXG4gICAgICAgICdXZWIgQ2hhdDogXCJzY3JvbGxUb0VuZEJ1dHRvbkJlaGF2aW9yXCIgbXVzdCBiZSBlaXRoZXIgXCJ1bnJlYWRcIiwgXCJhbnlcIiwgb3IgZmFsc2UsIHdpbGwgc2V0IHRvIFwidW5yZWFkXCIuJ1xuICAgICAgKTtcblxuICAgIHBhdGNoZWRTY3JvbGxUb0VuZEJ1dHRvbkJlaGF2aW9yID0gJ3VucmVhZCc7XG4gIH1cblxuICBpZiAobmV3TWVzc2FnZXNCdXR0b25Gb250U2l6ZSkge1xuICAgIG5ld01lc3NhZ2VzQnV0dG9uRm9udFNpemVEZXByZWNhdGlvbigpO1xuXG4gICAgLy8gT25seSBzZXQgaWYgdGhlIFwic2Nyb2xsVG9FbmRCdXR0b25Gb250U2l6ZVwiIGlzIG5vdCBzZXQuXG4gICAgZmlsbGVkT3B0aW9ucy5zY3JvbGxUb0VuZEJ1dHRvbkZvbnRTaXplID0gb3B0aW9ucy5zY3JvbGxUb0VuZEJ1dHRvbkZvbnRTaXplIHx8IG5ld01lc3NhZ2VzQnV0dG9uRm9udFNpemU7XG4gIH1cblxuICBvcHRpb25zLnN1Z2dlc3RlZEFjdGlvbkJhY2tncm91bmQgJiYgc3VnZ2VzdGVkQWN0aW9uQmFja2dyb3VuZERlcHJlY2F0aW9uKCk7XG5cbiAgaWYgKG9wdGlvbnMuc3VnZ2VzdGVkQWN0aW9uQWN0aXZlQmFja2dyb3VuZCkge1xuICAgIHN1Z2dlc3RlZEFjdGlvblhYWEJhY2tncm91bmREZXByZWNhdGlvbigpO1xuXG4gICAgZmlsbGVkT3B0aW9ucy5zdWdnZXN0ZWRBY3Rpb25CYWNrZ3JvdW5kQ29sb3JPbkFjdGl2ZSA9XG4gICAgICBvcHRpb25zLnN1Z2dlc3RlZEFjdGlvbkJhY2tncm91bmRDb2xvck9uQWN0aXZlIHx8IG9wdGlvbnMuc3VnZ2VzdGVkQWN0aW9uQWN0aXZlQmFja2dyb3VuZDtcbiAgfVxuXG4gIGlmIChvcHRpb25zLnN1Z2dlc3RlZEFjdGlvbkZvY3VzQmFja2dyb3VuZCkge1xuICAgIHN1Z2dlc3RlZEFjdGlvblhYWEJhY2tncm91bmREZXByZWNhdGlvbigpO1xuXG4gICAgZmlsbGVkT3B0aW9ucy5zdWdnZXN0ZWRBY3Rpb25CYWNrZ3JvdW5kQ29sb3JPbkZvY3VzID1cbiAgICAgIG9wdGlvbnMuc3VnZ2VzdGVkQWN0aW9uQmFja2dyb3VuZENvbG9yT25Gb2N1cyB8fCBvcHRpb25zLnN1Z2dlc3RlZEFjdGlvbkZvY3VzQmFja2dyb3VuZDtcbiAgfVxuXG4gIGlmIChvcHRpb25zLnN1Z2dlc3RlZEFjdGlvbkhvdmVyQmFja2dyb3VuZCkge1xuICAgIHN1Z2dlc3RlZEFjdGlvblhYWEJhY2tncm91bmREZXByZWNhdGlvbigpO1xuXG4gICAgZmlsbGVkT3B0aW9ucy5zdWdnZXN0ZWRBY3Rpb25CYWNrZ3JvdW5kQ29sb3JPbkhvdmVyID1cbiAgICAgIG9wdGlvbnMuc3VnZ2VzdGVkQWN0aW9uQmFja2dyb3VuZENvbG9yT25Ib3ZlciB8fCBvcHRpb25zLnN1Z2dlc3RlZEFjdGlvbkhvdmVyQmFja2dyb3VuZDtcbiAgfVxuXG4gIGlmIChvcHRpb25zLnN1Z2dlc3RlZEFjdGlvbkRpc2FibGVkQmFja2dyb3VuZCkge1xuICAgIHN1Z2dlc3RlZEFjdGlvblhYWEJhY2tncm91bmREZXByZWNhdGlvbigpO1xuXG4gICAgZmlsbGVkT3B0aW9ucy5zdWdnZXN0ZWRBY3Rpb25CYWNrZ3JvdW5kQ29sb3JPbkRpc2FibGVkID1cbiAgICAgIG9wdGlvbnMuc3VnZ2VzdGVkQWN0aW9uQmFja2dyb3VuZENvbG9yT25EaXNhYmxlZCB8fCBvcHRpb25zLnN1Z2dlc3RlZEFjdGlvbkRpc2FibGVkQmFja2dyb3VuZDtcbiAgfVxuXG4gIGlmIChvcHRpb25zLnN1Z2dlc3RlZEFjdGlvbkRpc2FibGVkQm9yZGVyQ29sb3IpIHtcbiAgICBzdWdnZXN0ZWRBY3Rpb25EaXNhYmxlZERlcHJlY2F0aW9uKCk7XG5cbiAgICBmaWxsZWRPcHRpb25zLnN1Z2dlc3RlZEFjdGlvbkJvcmRlckNvbG9yT25EaXNhYmxlZCA9XG4gICAgICBvcHRpb25zLnN1Z2dlc3RlZEFjdGlvbkJvcmRlckNvbG9yT25EaXNhYmxlZCB8fCBvcHRpb25zLnN1Z2dlc3RlZEFjdGlvbkRpc2FibGVkQm9yZGVyQ29sb3I7XG4gIH1cblxuICBpZiAob3B0aW9ucy5zdWdnZXN0ZWRBY3Rpb25EaXNhYmxlZEJvcmRlclN0eWxlKSB7XG4gICAgc3VnZ2VzdGVkQWN0aW9uRGlzYWJsZWREZXByZWNhdGlvbigpO1xuXG4gICAgZmlsbGVkT3B0aW9ucy5zdWdnZXN0ZWRBY3Rpb25Cb3JkZXJTdHlsZU9uRGlzYWJsZWQgPVxuICAgICAgb3B0aW9ucy5zdWdnZXN0ZWRBY3Rpb25Cb3JkZXJTdHlsZU9uRGlzYWJsZWQgfHwgb3B0aW9ucy5zdWdnZXN0ZWRBY3Rpb25EaXNhYmxlZEJvcmRlclN0eWxlO1xuICB9XG5cbiAgaWYgKG9wdGlvbnMuc3VnZ2VzdGVkQWN0aW9uRGlzYWJsZWRCb3JkZXJXaWR0aCkge1xuICAgIHN1Z2dlc3RlZEFjdGlvbkRpc2FibGVkRGVwcmVjYXRpb24oKTtcblxuICAgIGZpbGxlZE9wdGlvbnMuc3VnZ2VzdGVkQWN0aW9uQm9yZGVyV2lkdGhPbkRpc2FibGVkID1cbiAgICAgIG9wdGlvbnMuc3VnZ2VzdGVkQWN0aW9uQm9yZGVyV2lkdGhPbkRpc2FibGVkIHx8IG9wdGlvbnMuc3VnZ2VzdGVkQWN0aW9uRGlzYWJsZWRCb3JkZXJXaWR0aDtcbiAgfVxuXG4gIGlmIChvcHRpb25zLnN1Z2dlc3RlZEFjdGlvbkRpc2FibGVkVGV4dENvbG9yKSB7XG4gICAgc3VnZ2VzdGVkQWN0aW9uRGlzYWJsZWREZXByZWNhdGlvbigpO1xuXG4gICAgZmlsbGVkT3B0aW9ucy5zdWdnZXN0ZWRBY3Rpb25UZXh0Q29sb3JPbkRpc2FibGVkID1cbiAgICAgIG9wdGlvbnMuc3VnZ2VzdGVkQWN0aW9uVGV4dENvbG9yT25EaXNhYmxlZCB8fCBvcHRpb25zLnN1Z2dlc3RlZEFjdGlvbkRpc2FibGVkVGV4dENvbG9yO1xuICB9XG5cbiAgcmV0dXJuIHtcbiAgICAuLi5maWxsZWRPcHRpb25zLFxuICAgIGJ1YmJsZUZyb21Vc2VyTnViT2Zmc2V0OiBub3JtYWxpemVkQnViYmxlRnJvbVVzZXJOdWJPZmZzZXQsXG4gICAgYnViYmxlTnViT2Zmc2V0OiBub3JtYWxpemVkQnViYmxlTnViT2Zmc2V0LFxuICAgIGVtb2ppU2V0OiBub3JtYWxpemVkRW1vamlTZXQsXG4gICAgc2Nyb2xsVG9FbmRCdXR0b25CZWhhdmlvcjogcGF0Y2hlZFNjcm9sbFRvRW5kQnV0dG9uQmVoYXZpb3JcbiAgfTtcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsSUFBQUEsd0JBQUEsR0FBQUMsT0FBQTtBQUVBLElBQUFDLG9CQUFBLEdBQUFDLHNCQUFBLENBQUFGLE9BQUE7QUFBd0QsSUFBQUcsU0FBQTtBQUFBLFNBQUFELHVCQUFBRSxHQUFBLFdBQUFBLEdBQUEsSUFBQUEsR0FBQSxDQUFBQyxVQUFBLEdBQUFELEdBQUEsS0FBQUUsT0FBQSxFQUFBRixHQUFBO0FBQUEsU0FBQUcsUUFBQUMsTUFBQSxFQUFBQyxjQUFBLFFBQUFDLElBQUEsR0FBQUMsTUFBQSxDQUFBRCxJQUFBLENBQUFGLE1BQUEsT0FBQUcsTUFBQSxDQUFBQyxxQkFBQSxRQUFBQyxPQUFBLEdBQUFGLE1BQUEsQ0FBQUMscUJBQUEsQ0FBQUosTUFBQSxHQUFBQyxjQUFBLEtBQUFJLE9BQUEsR0FBQUEsT0FBQSxDQUFBQyxNQUFBLFdBQUFDLEdBQUEsV0FBQUosTUFBQSxDQUFBSyx3QkFBQSxDQUFBUixNQUFBLEVBQUFPLEdBQUEsRUFBQUUsVUFBQSxPQUFBUCxJQUFBLENBQUFRLElBQUEsQ0FBQUMsS0FBQSxDQUFBVCxJQUFBLEVBQUFHLE9BQUEsWUFBQUgsSUFBQTtBQUFBLFNBQUFVLGNBQUFDLE1BQUEsYUFBQUMsQ0FBQSxNQUFBQSxDQUFBLEdBQUFDLFNBQUEsQ0FBQUMsTUFBQSxFQUFBRixDQUFBLFVBQUFHLE1BQUEsV0FBQUYsU0FBQSxDQUFBRCxDQUFBLElBQUFDLFNBQUEsQ0FB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
|
|
154
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfYm90ZnJhbWV3b3JrV2ViY2hhdENvcmUiLCJyZXF1aXJlIiwiX2RlZmF1bHRTdHlsZU9wdGlvbnMiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX2V4Y2x1ZGVkIiwib2JqIiwiX19lc01vZHVsZSIsImRlZmF1bHQiLCJvd25LZXlzIiwib2JqZWN0IiwiZW51bWVyYWJsZU9ubHkiLCJrZXlzIiwiT2JqZWN0IiwiZ2V0T3duUHJvcGVydHlTeW1ib2xzIiwic3ltYm9scyIsImZpbHRlciIsInN5bSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImVudW1lcmFibGUiLCJwdXNoIiwiYXBwbHkiLCJfb2JqZWN0U3ByZWFkIiwidGFyZ2V0IiwiaSIsImFyZ3VtZW50cyIsImxlbmd0aCIsInNvdXJjZSIsImZvckVhY2giLCJrZXkiLCJfZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzIiwiZGVmaW5lUHJvcGVydGllcyIsImRlZmluZVByb3BlcnR5IiwidmFsdWUiLCJjb25maWd1cmFibGUiLCJ3cml0YWJsZSIsIl9vYmplY3RXaXRob3V0UHJvcGVydGllcyIsImV4Y2x1ZGVkIiwiX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UiLCJzb3VyY2VTeW1ib2xLZXlzIiwiaW5kZXhPZiIsInByb3RvdHlwZSIsInByb3BlcnR5SXNFbnVtZXJhYmxlIiwiY2FsbCIsInNvdXJjZUtleXMiLCJidWJibGVJbWFnZUhlaWdodERlcHJlY2F0aW9uIiwid2Fybk9uY2UiLCJoaWRlU2Nyb2xsVG9FbmRCdXR0b25EZXByZWNhdGlvbiIsIm5ld01lc3NhZ2VzQnV0dG9uRm9udFNpemVEZXByZWNhdGlvbiIsInN1Z2dlc3RlZEFjdGlvbkJhY2tncm91bmREZXByZWNhdGlvbiIsInN1Z2dlc3RlZEFjdGlvblhYWEJhY2tncm91bmREZXByZWNhdGlvbiIsInN1Z2dlc3RlZEFjdGlvbkRpc2FibGVkRGVwcmVjYXRpb24iLCJub3JtYWxpemVTdHlsZU9wdGlvbnMiLCJfcmVmIiwidW5kZWZpbmVkIiwiaGlkZVNjcm9sbFRvRW5kQnV0dG9uIiwibmV3TWVzc2FnZXNCdXR0b25Gb250U2l6ZSIsIm9wdGlvbnMiLCJmaWxsZWRPcHRpb25zIiwiZGVmYXVsdFN0eWxlT3B0aW9ucyIsImJ1YmJsZUZyb21Vc2VyTnViT2Zmc2V0IiwiYnViYmxlTnViT2Zmc2V0IiwiZW1vamlTZXQiLCJub3JtYWxpemVkQnViYmxlRnJvbVVzZXJOdWJPZmZzZXQiLCJub3JtYWxpemVkQnViYmxlTnViT2Zmc2V0Iiwibm9ybWFsaXplZEVtb2ppU2V0IiwidG9TdHJpbmciLCJjb25zb2xlIiwid2FybiIsInNjcm9sbFRvRW5kQnV0dG9uQmVoYXZpb3IiLCJwYXRjaGVkU2Nyb2xsVG9FbmRCdXR0b25CZWhhdmlvciIsInNjcm9sbFRvRW5kQnV0dG9uRm9udFNpemUiLCJzdWdnZXN0ZWRBY3Rpb25CYWNrZ3JvdW5kIiwic3VnZ2VzdGVkQWN0aW9uQWN0aXZlQmFja2dyb3VuZCIsInN1Z2dlc3RlZEFjdGlvbkJhY2tncm91bmRDb2xvck9uQWN0aXZlIiwic3VnZ2VzdGVkQWN0aW9uRm9jdXNCYWNrZ3JvdW5kIiwic3VnZ2VzdGVkQWN0aW9uQmFja2dyb3VuZENvbG9yT25Gb2N1cyIsInN1Z2dlc3RlZEFjdGlvbkhvdmVyQmFja2dyb3VuZCIsInN1Z2dlc3RlZEFjdGlvbkJhY2tncm91bmRDb2xvck9uSG92ZXIiLCJzdWdnZXN0ZWRBY3Rpb25EaXNhYmxlZEJhY2tncm91bmQiLCJzdWdnZXN0ZWRBY3Rpb25CYWNrZ3JvdW5kQ29sb3JPbkRpc2FibGVkIiwic3VnZ2VzdGVkQWN0aW9uRGlzYWJsZWRCb3JkZXJDb2xvciIsInN1Z2dlc3RlZEFjdGlvbkJvcmRlckNvbG9yT25EaXNhYmxlZCIsInN1Z2dlc3RlZEFjdGlvbkRpc2FibGVkQm9yZGVyU3R5bGUiLCJzdWdnZXN0ZWRBY3Rpb25Cb3JkZXJTdHlsZU9uRGlzYWJsZWQiLCJzdWdnZXN0ZWRBY3Rpb25EaXNhYmxlZEJvcmRlcldpZHRoIiwic3VnZ2VzdGVkQWN0aW9uQm9yZGVyV2lkdGhPbkRpc2FibGVkIiwic3VnZ2VzdGVkQWN0aW9uRGlzYWJsZWRUZXh0Q29sb3IiLCJzdWdnZXN0ZWRBY3Rpb25UZXh0Q29sb3JPbkRpc2FibGVkIiwiYnViYmxlSW1hZ2VIZWlnaHQiLCJidWJibGVJbWFnZU1heEhlaWdodCIsImJ1YmJsZUltYWdlTWluSGVpZ2h0Il0sInNvdXJjZVJvb3QiOiJjb21wb25lbnQ6Ly8vIiwic291cmNlcyI6WyIuLi9zcmMvbm9ybWFsaXplU3R5bGVPcHRpb25zLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHdhcm5PbmNlIH0gZnJvbSAnYm90ZnJhbWV3b3JrLXdlYmNoYXQtY29yZSc7XG5cbmltcG9ydCBkZWZhdWx0U3R5bGVPcHRpb25zIGZyb20gJy4vZGVmYXVsdFN0eWxlT3B0aW9ucyc7XG5pbXBvcnQgU3R5bGVPcHRpb25zLCB7IFN0cmljdFN0eWxlT3B0aW9ucyB9IGZyb20gJy4vU3R5bGVPcHRpb25zJztcblxuY29uc3QgYnViYmxlSW1hZ2VIZWlnaHREZXByZWNhdGlvbiA9IHdhcm5PbmNlKFxuICAnXCJzdHlsZU9wdGlvbnMuYnViYmxlSW1hZ2VIZWlnaHRcIiBoYXMgYmVlbiBkZXByZWNhdGVkLiBVc2UgXCJzdHlsZU9wdGlvbnMuYnViYmxlSW1hZ2VNYXhIZWlnaHRcIiBhbmQgXCJzdHlsZU9wdGlvbnMuYnViYmxlSW1hZ2VNaW5IZWlnaHRcIiBpbnN0ZWFkLiBUaGlzIGRlcHJlY2F0aW9uIG1pZ3JhdGlvbiB3aWxsIGJlIHJlbW92ZWQgb24gb3IgYWZ0ZXIgMjAyNi0wNy0wNS4nXG4pO1xuXG5jb25zdCBoaWRlU2Nyb2xsVG9FbmRCdXR0b25EZXByZWNhdGlvbiA9IHdhcm5PbmNlKFxuICAnXCJzdHlsZU9wdGlvbnMuaGlkZVNjcm9sbFRvRW5kQnV0dG9uXCIgaGFzIGJlZW4gZGVwcmVjYXRlZC4gVG8gaGlkZSBzY3JvbGwgdG8gZW5kIGJ1dHRvbiwgc2V0IFwic2Nyb2xsVG9FbmRCZWhhdmlvclwiIHRvIGZhbHNlLiBUaGlzIGRlcHJlY2F0aW9uIG1pZ3JhdGlvbiB3aWxsIGJlIHJlbW92ZWQgb24gb3IgYWZ0ZXIgMjAyMy0wNi0wMi4nXG4pO1xuXG5jb25zdCBuZXdNZXNzYWdlc0J1dHRvbkZvbnRTaXplRGVwcmVjYXRpb24gPSB3YXJuT25jZShcbiAgJ1wic3R5bGVPcHRpb25zLm5ld01lc3NhZ2VzQnV0dG9uRm9udFNpemVcIiBoYXMgYmVlbiByZW5hbWVkIHRvIFwic3R5bGVPcHRpb25zLnNjcm9sbFRvRW5kQnV0dG9uRm9udFNpemVcIi4gVGhpcyBkZXByZWNhdGlvbiBtaWdyYXRpb24gd2lsbCBiZSByZW1vdmVkIG9uIG9yIGFmdGVyIDIwMjMtMDYtMDIuJ1xuKTtcblxuY29uc3Qgc3VnZ2VzdGVkQWN0aW9uQmFja2dyb3VuZERlcHJlY2F0aW9uID0gd2Fybk9uY2UoXG4gICdcInN0eWxlT3B0aW9ucy5zdWdnZXN0ZWRBY3Rpb25CYWNrZ3JvdW5kXCIgaGFzIGJlZW4gZGVwcmVjYXRlZC4gUGxlYXNlIHVzZSBcInN0eWxlT3B0aW9ucy5zdWdnZXN0ZWRBY3Rpb25CYWNrZ3JvdW5kQ29sb3JcIiBpbnN0ZWFkLiBUaGlzIGRlcHJlY2F0aW9uIG1pZ3JhdGlvbiB3aWxsIGJlIHJlbW92ZWQgb24gb3IgYWZ0ZXIgMjAyMS0wOS0xNi4nXG4pO1xuXG5jb25zdCBzdWdnZXN0ZWRBY3Rpb25YWFhCYWNrZ3JvdW5kRGVwcmVjYXRpb24gPSB3YXJuT25jZShcbiAgJ1wic3R5bGVPcHRpb25zLnN1Z2dlc3RlZEFjdGlvblhYWEJhY2tncm91bmRcIiBoYXMgYmVlbiBkZXByZWNhdGVkLiBQbGVhc2UgdXNlIFwic3R5bGVPcHRpb25zLnN1Z2dlc3RlZEFjdGlvbkJhY2tncm91bmRDb2xvck9uWFhYXCIgaW5zdGVhZC4gVGhpcyBkZXByZWNhdGlvbiBtaWdyYXRpb24gd2lsbCBiZSByZW1vdmVkIG9uIG9yIGFmdGVyIDIwMjEtMDktMTYuJ1xuKTtcblxuY29uc3Qgc3VnZ2VzdGVkQWN0aW9uRGlzYWJsZWREZXByZWNhdGlvbiA9IHdhcm5PbmNlKFxuICAnXCJzdHlsZU9wdGlvbnMuc3VnZ2VzdGVkQWN0aW9uRGlzYWJsZWRYWFhcIiBoYXMgYmVlbiByZW5hbWVkIHRvIFwic3R5bGVPcHRpb25zLnN1Z2dlc3RlZEFjdGlvblhYWE9uRGlzYWJsZWRcIi4gVGhpcyBkZXByZWNhdGlvbiBtaWdyYXRpb24gd2lsbCBiZSByZW1vdmVkIG9uIG9yIGFmdGVyIDIwMjEtMDktMTYuJ1xuKTtcblxuLy8gVE9ETzogW1A0XSBXZSBzaG91bGQgYWRkIGEgbm90aWNlIGZvciBwZW9wbGUgd2hvIHdhbnQgdG8gdXNlIFwic3R5bGVTZXRcIiBpbnN0ZWFkIG9mIFwic3R5bGVPcHRpb25zXCIuXG4vLyAgICAgICBcInN0eWxlU2V0XCIgaXMgYWN0dWFsbHkgQ1NTIHN0eWxlc2hlZXQgYW5kIGl0IGlzIGJhc2VkIG9uIHRoZSBET00gdHJlZS5cbi8vICAgICAgIERPTSB0cmVlIG1heSBjaGFuZ2UgZnJvbSB0aW1lIHRvIHRpbWUsIHRodXMsIG1haW50YWluaW5nIFwic3R5bGVTZXRcIiBiZWNvbWVzIGEgY29uc3RhbnQgZWZmb3J0LlxuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgY29tcGxleGl0eVxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gbm9ybWFsaXplU3R5bGVPcHRpb25zKHtcbiAgaGlkZVNjcm9sbFRvRW5kQnV0dG9uLFxuICBuZXdNZXNzYWdlc0J1dHRvbkZvbnRTaXplLFxuICAuLi5vcHRpb25zXG59OiBTdHlsZU9wdGlvbnMgPSB7fSk6IFN0cmljdFN0eWxlT3B0aW9ucyB7XG4gIGNvbnN0IGZpbGxlZE9wdGlvbnM6IFJlcXVpcmVkPFN0eWxlT3B0aW9ucz4gPSB7IC4uLmRlZmF1bHRTdHlsZU9wdGlvbnMsIC4uLm9wdGlvbnMgfTtcblxuICAvLyBLZWVwIHRoaXMgbGlzdCBmbGF0IChubyBuZXN0ZWQgc3R5bGUpIGFuZCBzZXJpYWxpemFibGUgKG5vIGZ1bmN0aW9ucylcbiAgY29uc3QgeyBidWJibGVGcm9tVXNlck51Yk9mZnNldCwgYnViYmxlTnViT2Zmc2V0LCBlbW9qaVNldCB9ID0gZmlsbGVkT3B0aW9ucztcblxuICBsZXQgbm9ybWFsaXplZEJ1YmJsZUZyb21Vc2VyTnViT2Zmc2V0OiBudW1iZXI7XG4gIGxldCBub3JtYWxpemVkQnViYmxlTnViT2Zmc2V0OiBudW1iZXI7XG4gIGxldCBub3JtYWxpemVkRW1vamlTZXQ6IGZhbHNlIHwgUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcblxuICBpZiAoYnViYmxlRnJvbVVzZXJOdWJPZmZzZXQgPT09ICd0b3AnKSB7XG4gICAgbm9ybWFsaXplZEJ1YmJsZUZyb21Vc2VyTnViT2Zmc2V0ID0gMDtcbiAgfSBlbHNlIGlmICh0eXBlb2YgYnViYmxlRnJvbVVzZXJOdWJPZmZzZXQgIT09ICdudW1iZXInKSB7XG4gICAgbm9ybWFsaXplZEJ1YmJsZUZyb21Vc2VyTnViT2Zmc2V0ID0gLTA7XG4gIH0gZWxzZSB7XG4gICAgbm9ybWFsaXplZEJ1YmJsZUZyb21Vc2VyTnViT2Zmc2V0ID0gYnViYmxlRnJvbVVzZXJOdWJPZmZzZXQ7XG4gIH1cblxuICBpZiAoYnViYmxlTnViT2Zmc2V0ID09PSAndG9wJykge1xuICAgIG5vcm1hbGl6ZWRCdWJibGVOdWJPZmZzZXQgPSAwO1xuICB9IGVsc2UgaWYgKHR5cGVvZiBidWJibGVOdWJPZmZzZXQgIT09ICdudW1iZXInKSB7XG4gICAgbm9ybWFsaXplZEJ1YmJsZU51Yk9mZnNldCA9IC0wO1xuICB9IGVsc2Uge1xuICAgIG5vcm1hbGl6ZWRCdWJibGVOdWJPZmZzZXQgPSBidWJibGVOdWJPZmZzZXQ7XG4gIH1cblxuICBpZiAoZW1vamlTZXQgPT09IHRydWUpIHtcbiAgICBub3JtYWxpemVkRW1vamlTZXQgPSB7XG4gICAgICAnOiknOiAn8J+YiicsXG4gICAgICAnOi0pJzogJ/CfmIonLFxuICAgICAgJyg6JzogJ/CfmIonLFxuICAgICAgJygtOic6ICfwn5iKJyxcbiAgICAgICc6LXwnOiAn8J+YkCcsXG4gICAgICAnOnwnOiAn8J+YkCcsXG4gICAgICAnOi0oJzogJ+KYue+4jycsXG4gICAgICAnOignOiAn4pi577iPJyxcbiAgICAgICc6LUQnOiAn8J+YgCcsXG4gICAgICAnOkQnOiAn8J+YgCcsXG4gICAgICAnOi1wJzogJ/CfmJsnLFxuICAgICAgJzpwJzogJ/CfmJsnLFxuICAgICAgJzotUCc6ICfwn5ibJyxcbiAgICAgICc6UCc6ICfwn5ibJyxcbiAgICAgICc6LW8nOiAn8J+YsicsXG4gICAgICAnOm8nOiAn8J+YsicsXG4gICAgICAnOk8nOiAn8J+YsicsXG4gICAgICAnOi1PJzogJ/CfmLInLFxuICAgICAgJzotMCc6ICfwn5iyJyxcbiAgICAgICc6MCc6ICfwn5iyJyxcbiAgICAgICc7LSknOiAn8J+YiScsXG4gICAgICAnOyknOiAn8J+YiScsXG4gICAgICAnPDMnOiAn4p2k77iPJyxcbiAgICAgICc8LzMnOiAn8J+SlCcsXG4gICAgICAnPFxcXFwzJzogJ/CfkpQnXG4gICAgfTtcbiAgfSBlbHNlIGlmIChPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoZW1vamlTZXQpICE9PSAnW29iamVjdCBPYmplY3RdJykge1xuICAgIGNvbnNvbGUud2FybignYm90ZnJhbWV3b3JrLXdlYmNoYXQ6IGVtb2ppU2V0IG11c3QgYmUgYSBib29sZWFuIG9yIGFuIG9iamVjdCB3aXRoIGVtb3RpY29uOiBlbW9qaVZhbHVlcycpO1xuICAgIG5vcm1hbGl6ZWRFbW9qaVNldCA9IGZhbHNlO1xuICB9IGVsc2Uge1xuICAgIG5vcm1hbGl6ZWRFbW9qaVNldCA9IGVtb2ppU2V0O1xuICB9XG5cbiAgaWYgKGhpZGVTY3JvbGxUb0VuZEJ1dHRvbikge1xuICAgIGhpZGVTY3JvbGxUb0VuZEJ1dHRvbkRlcHJlY2F0aW9uKCk7XG5cbiAgICAvLyBPbmx5IHNldCBpZiB0aGUgXCJzY3JvbGxUb0VuZEJ1dHRvbkJlaGF2aW9yXCIgaXMgbm90IHNldC5cbiAgICAvLyBJZiBpdCBoYXMgYmVlbiBzZXQsIHRoZSBkZXZlbG9wZXIgc2hvdWxkIGtub3cgdGhlIG9sZGVyIFwiaGlkZVNjcm9sbFRvRW5kQnV0dG9uXCIgb3B0aW9uIGlzIGRlcHJlY2F0ZWQuXG4gICAgZmlsbGVkT3B0aW9ucy5zY3JvbGxUb0VuZEJ1dHRvbkJlaGF2aW9yID0gb3B0aW9ucy5zY3JvbGxUb0VuZEJ1dHRvbkJlaGF2aW9yIHx8IGZhbHNlO1xuICB9XG5cbiAgbGV0IHBhdGNoZWRTY3JvbGxUb0VuZEJ1dHRvbkJlaGF2aW9yID0gZmlsbGVkT3B0aW9ucy5zY3JvbGxUb0VuZEJ1dHRvbkJlaGF2aW9yO1xuXG4gIGlmIChwYXRjaGVkU2Nyb2xsVG9FbmRCdXR0b25CZWhhdmlvciAhPT0gJ2FueScgJiYgcGF0Y2hlZFNjcm9sbFRvRW5kQnV0dG9uQmVoYXZpb3IgIT09IGZhbHNlKSB7XG4gICAgcGF0Y2hlZFNjcm9sbFRvRW5kQnV0dG9uQmVoYXZpb3IgPT09ICd1bnJlYWQnIHx8XG4gICAgICBjb25zb2xlLndhcm4oXG4gICAgICAgICdXZWIgQ2hhdDogXCJzY3JvbGxUb0VuZEJ1dHRvbkJlaGF2aW9yXCIgbXVzdCBiZSBlaXRoZXIgXCJ1bnJlYWRcIiwgXCJhbnlcIiwgb3IgZmFsc2UsIHdpbGwgc2V0IHRvIFwidW5yZWFkXCIuJ1xuICAgICAgKTtcblxuICAgIHBhdGNoZWRTY3JvbGxUb0VuZEJ1dHRvbkJlaGF2aW9yID0gJ3VucmVhZCc7XG4gIH1cblxuICBpZiAobmV3TWVzc2FnZXNCdXR0b25Gb250U2l6ZSkge1xuICAgIG5ld01lc3NhZ2VzQnV0dG9uRm9udFNpemVEZXByZWNhdGlvbigpO1xuXG4gICAgLy8gT25seSBzZXQgaWYgdGhlIFwic2Nyb2xsVG9FbmRCdXR0b25Gb250U2l6ZVwiIGlzIG5vdCBzZXQuXG4gICAgZmlsbGVkT3B0aW9ucy5zY3JvbGxUb0VuZEJ1dHRvbkZvbnRTaXplID0gb3B0aW9ucy5zY3JvbGxUb0VuZEJ1dHRvbkZvbnRTaXplIHx8IG5ld01lc3NhZ2VzQnV0dG9uRm9udFNpemU7XG4gIH1cblxuICBvcHRpb25zLnN1Z2dlc3RlZEFjdGlvbkJhY2tncm91bmQgJiYgc3VnZ2VzdGVkQWN0aW9uQmFja2dyb3VuZERlcHJlY2F0aW9uKCk7XG5cbiAgaWYgKG9wdGlvbnMuc3VnZ2VzdGVkQWN0aW9uQWN0aXZlQmFja2dyb3VuZCkge1xuICAgIHN1Z2dlc3RlZEFjdGlvblhYWEJhY2tncm91bmREZXByZWNhdGlvbigpO1xuXG4gICAgZmlsbGVkT3B0aW9ucy5zdWdnZXN0ZWRBY3Rpb25CYWNrZ3JvdW5kQ29sb3JPbkFjdGl2ZSA9XG4gICAgICBvcHRpb25zLnN1Z2dlc3RlZEFjdGlvbkJhY2tncm91bmRDb2xvck9uQWN0aXZlIHx8IG9wdGlvbnMuc3VnZ2VzdGVkQWN0aW9uQWN0aXZlQmFja2dyb3VuZDtcbiAgfVxuXG4gIGlmIChvcHRpb25zLnN1Z2dlc3RlZEFjdGlvbkZvY3VzQmFja2dyb3VuZCkge1xuICAgIHN1Z2dlc3RlZEFjdGlvblhYWEJhY2tncm91bmREZXByZWNhdGlvbigpO1xuXG4gICAgZmlsbGVkT3B0aW9ucy5zdWdnZXN0ZWRBY3Rpb25CYWNrZ3JvdW5kQ29sb3JPbkZvY3VzID1cbiAgICAgIG9wdGlvbnMuc3VnZ2VzdGVkQWN0aW9uQmFja2dyb3VuZENvbG9yT25Gb2N1cyB8fCBvcHRpb25zLnN1Z2dlc3RlZEFjdGlvbkZvY3VzQmFja2dyb3VuZDtcbiAgfVxuXG4gIGlmIChvcHRpb25zLnN1Z2dlc3RlZEFjdGlvbkhvdmVyQmFja2dyb3VuZCkge1xuICAgIHN1Z2dlc3RlZEFjdGlvblhYWEJhY2tncm91bmREZXByZWNhdGlvbigpO1xuXG4gICAgZmlsbGVkT3B0aW9ucy5zdWdnZXN0ZWRBY3Rpb25CYWNrZ3JvdW5kQ29sb3JPbkhvdmVyID1cbiAgICAgIG9wdGlvbnMuc3VnZ2VzdGVkQWN0aW9uQmFja2dyb3VuZENvbG9yT25Ib3ZlciB8fCBvcHRpb25zLnN1Z2dlc3RlZEFjdGlvbkhvdmVyQmFja2dyb3VuZDtcbiAgfVxuXG4gIGlmIChvcHRpb25zLnN1Z2dlc3RlZEFjdGlvbkRpc2FibGVkQmFja2dyb3VuZCkge1xuICAgIHN1Z2dlc3RlZEFjdGlvblhYWEJhY2tncm91bmREZXByZWNhdGlvbigpO1xuXG4gICAgZmlsbGVkT3B0aW9ucy5zdWdnZXN0ZWRBY3Rpb25CYWNrZ3JvdW5kQ29sb3JPbkRpc2FibGVkID1cbiAgICAgIG9wdGlvbnMuc3VnZ2VzdGVkQWN0aW9uQmFja2dyb3VuZENvbG9yT25EaXNhYmxlZCB8fCBvcHRpb25zLnN1Z2dlc3RlZEFjdGlvbkRpc2FibGVkQmFja2dyb3VuZDtcbiAgfVxuXG4gIGlmIChvcHRpb25zLnN1Z2dlc3RlZEFjdGlvbkRpc2FibGVkQm9yZGVyQ29sb3IpIHtcbiAgICBzdWdnZXN0ZWRBY3Rpb25EaXNhYmxlZERlcHJlY2F0aW9uKCk7XG5cbiAgICBmaWxsZWRPcHRpb25zLnN1Z2dlc3RlZEFjdGlvbkJvcmRlckNvbG9yT25EaXNhYmxlZCA9XG4gICAgICBvcHRpb25zLnN1Z2dlc3RlZEFjdGlvbkJvcmRlckNvbG9yT25EaXNhYmxlZCB8fCBvcHRpb25zLnN1Z2dlc3RlZEFjdGlvbkRpc2FibGVkQm9yZGVyQ29sb3I7XG4gIH1cblxuICBpZiAob3B0aW9ucy5zdWdnZXN0ZWRBY3Rpb25EaXNhYmxlZEJvcmRlclN0eWxlKSB7XG4gICAgc3VnZ2VzdGVkQWN0aW9uRGlzYWJsZWREZXByZWNhdGlvbigpO1xuXG4gICAgZmlsbGVkT3B0aW9ucy5zdWdnZXN0ZWRBY3Rpb25Cb3JkZXJTdHlsZU9uRGlzYWJsZWQgPVxuICAgICAgb3B0aW9ucy5zdWdnZXN0ZWRBY3Rpb25Cb3JkZXJTdHlsZU9uRGlzYWJsZWQgfHwgb3B0aW9ucy5zdWdnZXN0ZWRBY3Rpb25EaXNhYmxlZEJvcmRlclN0eWxlO1xuICB9XG5cbiAgaWYgKG9wdGlvbnMuc3VnZ2VzdGVkQWN0aW9uRGlzYWJsZWRCb3JkZXJXaWR0aCkge1xuICAgIHN1Z2dlc3RlZEFjdGlvbkRpc2FibGVkRGVwcmVjYXRpb24oKTtcblxuICAgIGZpbGxlZE9wdGlvbnMuc3VnZ2VzdGVkQWN0aW9uQm9yZGVyV2lkdGhPbkRpc2FibGVkID1cbiAgICAgIG9wdGlvbnMuc3VnZ2VzdGVkQWN0aW9uQm9yZGVyV2lkdGhPbkRpc2FibGVkIHx8IG9wdGlvbnMuc3VnZ2VzdGVkQWN0aW9uRGlzYWJsZWRCb3JkZXJXaWR0aDtcbiAgfVxuXG4gIGlmIChvcHRpb25zLnN1Z2dlc3RlZEFjdGlvbkRpc2FibGVkVGV4dENvbG9yKSB7XG4gICAgc3VnZ2VzdGVkQWN0aW9uRGlzYWJsZWREZXByZWNhdGlvbigpO1xuXG4gICAgZmlsbGVkT3B0aW9ucy5zdWdnZXN0ZWRBY3Rpb25UZXh0Q29sb3JPbkRpc2FibGVkID1cbiAgICAgIG9wdGlvbnMuc3VnZ2VzdGVkQWN0aW9uVGV4dENvbG9yT25EaXNhYmxlZCB8fCBvcHRpb25zLnN1Z2dlc3RlZEFjdGlvbkRpc2FibGVkVGV4dENvbG9yO1xuICB9XG5cbiAgaWYgKG9wdGlvbnMuYnViYmxlSW1hZ2VIZWlnaHQpIHtcbiAgICBidWJibGVJbWFnZUhlaWdodERlcHJlY2F0aW9uKCk7XG5cbiAgICBmaWxsZWRPcHRpb25zLmJ1YmJsZUltYWdlTWF4SGVpZ2h0ID0gb3B0aW9ucy5idWJibGVJbWFnZUhlaWdodDtcbiAgICBmaWxsZWRPcHRpb25zLmJ1YmJsZUltYWdlTWluSGVpZ2h0ID0gb3B0aW9ucy5idWJibGVJbWFnZUhlaWdodDtcblxuICAgIGZpbGxlZE9wdGlvbnMuYnViYmxlSW1hZ2VIZWlnaHQgPSB1bmRlZmluZWQ7XG4gIH1cblxuICByZXR1cm4ge1xuICAgIC4uLmZpbGxlZE9wdGlvbnMsXG4gICAgYnViYmxlRnJvbVVzZXJOdWJPZmZzZXQ6IG5vcm1hbGl6ZWRCdWJibGVGcm9tVXNlck51Yk9mZnNldCxcbiAgICBidWJibGVOdWJPZmZzZXQ6IG5vcm1hbGl6ZWRCdWJibGVOdWJPZmZzZXQsXG4gICAgZW1vamlTZXQ6IG5vcm1hbGl6ZWRFbW9qaVNldCxcbiAgICBzY3JvbGxUb0VuZEJ1dHRvbkJlaGF2aW9yOiBwYXRjaGVkU2Nyb2xsVG9FbmRCdXR0b25CZWhhdmlvclxuICB9O1xu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
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "botframework-webchat-api",
|
|
3
|
-
"version": "4.18.
|
|
3
|
+
"version": "4.18.1-main.20240807.dfe788c",
|
|
4
4
|
"description": "React DOM component of botframework-webchat",
|
|
5
5
|
"main": "./lib/index.js",
|
|
6
6
|
"types": "./lib/index.d.ts",
|
|
@@ -92,7 +92,7 @@
|
|
|
92
92
|
"@types/react": "^16.14.60",
|
|
93
93
|
"babel-plugin-istanbul": "^6.1.1",
|
|
94
94
|
"babel-plugin-transform-inline-environment-variables": "^0.4.4",
|
|
95
|
-
"cldr-data": "4.18.
|
|
95
|
+
"cldr-data": "4.18.1-main.20240807.dfe788c",
|
|
96
96
|
"concurrently": "^8.2.2",
|
|
97
97
|
"core-js": "^3.37.0",
|
|
98
98
|
"cross-env": "^7.0.3",
|
|
@@ -103,7 +103,7 @@
|
|
|
103
103
|
"typescript": "^5.4.5"
|
|
104
104
|
},
|
|
105
105
|
"dependencies": {
|
|
106
|
-
"botframework-webchat-core": "4.18.
|
|
106
|
+
"botframework-webchat-core": "4.18.1-main.20240807.dfe788c",
|
|
107
107
|
"globalize": "1.7.0",
|
|
108
108
|
"math-random": "2.0.1",
|
|
109
109
|
"prop-types": "15.8.1",
|
package/src/StyleOptions.ts
CHANGED
|
@@ -150,7 +150,32 @@ type StyleOptions = {
|
|
|
150
150
|
bubbleFromUserNubSize?: number;
|
|
151
151
|
|
|
152
152
|
bubbleFromUserTextColor?: string;
|
|
153
|
-
|
|
153
|
+
|
|
154
|
+
/**
|
|
155
|
+
* Specifies the fixed height of the bubble for image, default to unset.
|
|
156
|
+
*
|
|
157
|
+
* @deprecated Use `bubbleImageMaxHeight` and `bubbleImageMinHeight` instead. To mimick behavior before deprecation, set both options to 240px.
|
|
158
|
+
*/
|
|
159
|
+
bubbleImageHeight?: number | undefined;
|
|
160
|
+
|
|
161
|
+
/**
|
|
162
|
+
* Specifies the maximum height of the bubble for image, default to 240px.
|
|
163
|
+
*
|
|
164
|
+
* CSS variable: `--webchat__max-height--image-bubble`.
|
|
165
|
+
*
|
|
166
|
+
* New in 4.18.0.
|
|
167
|
+
*/
|
|
168
|
+
bubbleImageMaxHeight?: number | undefined;
|
|
169
|
+
|
|
170
|
+
/**
|
|
171
|
+
* Specifies the minimum height of the bubble for image, default to 240px.
|
|
172
|
+
*
|
|
173
|
+
* CSS variable: `--webchat__min-height--image-bubble`.
|
|
174
|
+
*
|
|
175
|
+
* New in 4.18.0.
|
|
176
|
+
*/
|
|
177
|
+
bubbleImageMinHeight?: number | undefined;
|
|
178
|
+
|
|
154
179
|
bubbleMaxWidth?: number;
|
|
155
180
|
bubbleMinHeight?: number;
|
|
156
181
|
bubbleMinWidth?: number;
|
|
@@ -853,7 +878,9 @@ type StyleOptions = {
|
|
|
853
878
|
// 1. Allow developers to set the "bubbleNubOffset" option as "top" (string), but when we normalize them, we will convert it to 0 (number);
|
|
854
879
|
// 2. Renamed/deprecated options, only the newer option will be kept, the older option will be dropped.
|
|
855
880
|
// Internally, no code should use the deprecated value except the migration code.
|
|
856
|
-
type StrictStyleOptions = Required<
|
|
881
|
+
type StrictStyleOptions = Required<
|
|
882
|
+
Omit<StyleOptions, 'bubbleImageHeight' | 'hideScrollToEndButton' | 'newMessagesButtonFontSize'>
|
|
883
|
+
> & {
|
|
857
884
|
bubbleFromUserNubOffset: number;
|
|
858
885
|
bubbleNubOffset: number;
|
|
859
886
|
emojiSet: false | Record<string, string>;
|
|
@@ -53,7 +53,9 @@ const DEFAULT_OPTIONS: Required<StyleOptions> = {
|
|
|
53
53
|
bubbleFromUserNubOffset: 0,
|
|
54
54
|
bubbleFromUserNubSize: undefined,
|
|
55
55
|
bubbleFromUserTextColor: 'Black',
|
|
56
|
-
bubbleImageHeight:
|
|
56
|
+
bubbleImageHeight: undefined,
|
|
57
|
+
bubbleImageMaxHeight: 240, // Based on previously default `bubbleImageHeight` of 240px.
|
|
58
|
+
bubbleImageMinHeight: 240, // TODO: Should change to 180px. Based on 320px bubble width showing a 16:9 image, or `320 / (16 / 9)`. 320px bubble width is based on 360px wide of the chat canvas.
|
|
57
59
|
bubbleMaxWidth: 480, // Based off screen width = 600px
|
|
58
60
|
bubbleMinHeight: 40,
|
|
59
61
|
bubbleMinWidth: 250, // min screen width = 300px; Microsoft Edge requires 372px (https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/13621468/)
|
|
@@ -1,11 +1,23 @@
|
|
|
1
|
+
import type { DirectLineCardAction, WebChatActivity } from 'botframework-webchat-core';
|
|
1
2
|
import { useCallback } from 'react';
|
|
2
|
-
import type { DirectLineCardAction } from 'botframework-webchat-core';
|
|
3
3
|
|
|
4
4
|
import { useSelector } from './internal/WebChatReduxContext';
|
|
5
5
|
import useWebChatAPIContext from './internal/useWebChatAPIContext';
|
|
6
6
|
|
|
7
|
-
export default function useSuggestedActions(): [
|
|
8
|
-
|
|
7
|
+
export default function useSuggestedActions(): [
|
|
8
|
+
DirectLineCardAction[],
|
|
9
|
+
(suggestedActions: never[]) => void,
|
|
10
|
+
extras: { activity: WebChatActivity }
|
|
11
|
+
] {
|
|
12
|
+
const [value, activity] = useSelector(
|
|
13
|
+
({
|
|
14
|
+
suggestedActions,
|
|
15
|
+
suggestedActionsOriginActivity: { activity }
|
|
16
|
+
}: {
|
|
17
|
+
suggestedActions: readonly DirectLineCardAction[];
|
|
18
|
+
suggestedActionsOriginActivity: { activity: undefined | WebChatActivity };
|
|
19
|
+
}) => [suggestedActions, activity]
|
|
20
|
+
);
|
|
9
21
|
const { clearSuggestedActions } = useWebChatAPIContext();
|
|
10
22
|
|
|
11
23
|
return [
|
|
@@ -19,6 +31,7 @@ export default function useSuggestedActions(): [DirectLineCardAction[], (suggest
|
|
|
19
31
|
clearSuggestedActions();
|
|
20
32
|
},
|
|
21
33
|
[clearSuggestedActions]
|
|
22
|
-
)
|
|
34
|
+
),
|
|
35
|
+
{ activity }
|
|
23
36
|
];
|
|
24
37
|
}
|
|
@@ -3,6 +3,10 @@ import { warnOnce } from 'botframework-webchat-core';
|
|
|
3
3
|
import defaultStyleOptions from './defaultStyleOptions';
|
|
4
4
|
import StyleOptions, { StrictStyleOptions } from './StyleOptions';
|
|
5
5
|
|
|
6
|
+
const bubbleImageHeightDeprecation = warnOnce(
|
|
7
|
+
'"styleOptions.bubbleImageHeight" has been deprecated. Use "styleOptions.bubbleImageMaxHeight" and "styleOptions.bubbleImageMinHeight" instead. This deprecation migration will be removed on or after 2026-07-05.'
|
|
8
|
+
);
|
|
9
|
+
|
|
6
10
|
const hideScrollToEndButtonDeprecation = warnOnce(
|
|
7
11
|
'"styleOptions.hideScrollToEndButton" has been deprecated. To hide scroll to end button, set "scrollToEndBehavior" to false. This deprecation migration will be removed on or after 2023-06-02.'
|
|
8
12
|
);
|
|
@@ -177,6 +181,15 @@ export default function normalizeStyleOptions({
|
|
|
177
181
|
options.suggestedActionTextColorOnDisabled || options.suggestedActionDisabledTextColor;
|
|
178
182
|
}
|
|
179
183
|
|
|
184
|
+
if (options.bubbleImageHeight) {
|
|
185
|
+
bubbleImageHeightDeprecation();
|
|
186
|
+
|
|
187
|
+
filledOptions.bubbleImageMaxHeight = options.bubbleImageHeight;
|
|
188
|
+
filledOptions.bubbleImageMinHeight = options.bubbleImageHeight;
|
|
189
|
+
|
|
190
|
+
filledOptions.bubbleImageHeight = undefined;
|
|
191
|
+
}
|
|
192
|
+
|
|
180
193
|
return {
|
|
181
194
|
...filledOptions,
|
|
182
195
|
bubbleFromUserNubOffset: normalizedBubbleFromUserNubOffset,
|