@mxenabled/connect-widget 0.16.0 → 0.17.1

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/index.es.js CHANGED
@@ -5131,23 +5131,39 @@ function baseFindIndex$2(array, predicate, fromIndex, fromRight) {
5131
5131
  }
5132
5132
  var _baseFindIndex = baseFindIndex$2;
5133
5133
 
5134
- var reWhitespace = /\s/;
5135
- function trimmedEndIndex$1(string) {
5136
- var index = string.length;
5137
- while (index-- && reWhitespace.test(string.charAt(index))) {
5138
- }
5139
- return index;
5134
+ var _trimmedEndIndex;
5135
+ var hasRequired_trimmedEndIndex;
5136
+
5137
+ function require_trimmedEndIndex () {
5138
+ if (hasRequired_trimmedEndIndex) return _trimmedEndIndex;
5139
+ hasRequired_trimmedEndIndex = 1;
5140
+ var reWhitespace = /\s/;
5141
+ function trimmedEndIndex(string) {
5142
+ var index = string.length;
5143
+ while (index-- && reWhitespace.test(string.charAt(index))) {
5144
+ }
5145
+ return index;
5146
+ }
5147
+ _trimmedEndIndex = trimmedEndIndex;
5148
+ return _trimmedEndIndex;
5140
5149
  }
5141
- var _trimmedEndIndex = trimmedEndIndex$1;
5142
5150
 
5143
- var trimmedEndIndex = _trimmedEndIndex;
5144
- var reTrimStart = /^\s+/;
5145
- function baseTrim$1(string) {
5146
- return string ? string.slice(0, trimmedEndIndex(string) + 1).replace(reTrimStart, "") : string;
5151
+ var _baseTrim;
5152
+ var hasRequired_baseTrim;
5153
+
5154
+ function require_baseTrim () {
5155
+ if (hasRequired_baseTrim) return _baseTrim;
5156
+ hasRequired_baseTrim = 1;
5157
+ var trimmedEndIndex = require_trimmedEndIndex();
5158
+ var reTrimStart = /^\s+/;
5159
+ function baseTrim(string) {
5160
+ return string ? string.slice(0, trimmedEndIndex(string) + 1).replace(reTrimStart, "") : string;
5161
+ }
5162
+ _baseTrim = baseTrim;
5163
+ return _baseTrim;
5147
5164
  }
5148
- var _baseTrim = baseTrim$1;
5149
5165
 
5150
- var baseTrim = _baseTrim, isObject$7 = isObject_1, isSymbol$1 = isSymbol_1;
5166
+ var baseTrim = require_baseTrim(), isObject$7 = isObject_1, isSymbol$1 = isSymbol_1;
5151
5167
  var NAN = 0 / 0;
5152
5168
  var reIsBadHex = /^[-+]0x[0-9a-f]+$/i;
5153
5169
  var reIsBinary = /^0b[01]+$/i;
@@ -8613,7 +8629,7 @@ var hasRequiredTrim;
8613
8629
  function requireTrim () {
8614
8630
  if (hasRequiredTrim) return trim_1;
8615
8631
  hasRequiredTrim = 1;
8616
- var baseToString = _baseToString, baseTrim = _baseTrim, castSlice = require_castSlice(), charsEndIndex = require_charsEndIndex(), charsStartIndex = require_charsStartIndex(), stringToArray = require_stringToArray(), toString = toString_1;
8632
+ var baseToString = _baseToString, baseTrim = require_baseTrim(), castSlice = require_castSlice(), charsEndIndex = require_charsEndIndex(), charsStartIndex = require_charsStartIndex(), stringToArray = require_stringToArray(), toString = toString_1;
8617
8633
  function trim(string, chars, guard) {
8618
8634
  string = toString(string);
8619
8635
  if (string && (guard || chars === void 0)) {
@@ -9500,6 +9516,7 @@ const COMBO_JOB_DATA_TYPES = {
9500
9516
  };
9501
9517
 
9502
9518
  const initialState$5 = {
9519
+ _initialValues: "",
9503
9520
  is_mobile_webview: false,
9504
9521
  target_origin_referrer: null,
9505
9522
  ui_message_protocol: "post_message",
@@ -9533,12 +9550,23 @@ const configSlice = createSlice({
9533
9550
  (state, action) => {
9534
9551
  const productDetermineMode = getProductDeterminedMode(action.payload);
9535
9552
  const ui_message_version = typeof action.payload.ui_message_version === "string" ? parseInt(action.payload.ui_message_version, 10) : action.payload.ui_message_version || state.ui_message_version;
9536
- return {
9553
+ const loadedState = {
9537
9554
  ...state,
9538
9555
  ...action.payload,
9539
9556
  ui_message_version,
9540
9557
  mode: productDetermineMode !== null ? productDetermineMode : action.payload.mode || state.mode
9541
9558
  };
9559
+ const { _initialValues, ...stateWithoutInitialValues } = loadedState;
9560
+ return {
9561
+ ...stateWithoutInitialValues,
9562
+ // _initialValues is a reference to the values that were used to load the widget initially.
9563
+ // It is meant to be set, and then READ ONLY after that.
9564
+ // Example:
9565
+ // When a user dynamically changes the mode, use_cases, or data for a connection we need to
9566
+ // reset the mode, use_cases, and data to the initial state for the next connection attempt.
9567
+ // JSON is used here to deeply copy the object, use a selector to get the values.
9568
+ _initialValues: JSON.stringify(stateWithoutInitialValues)
9569
+ };
9542
9570
  }
9543
9571
  );
9544
9572
  }