@seamly/web-ui 20.8.0-beta.2 → 20.8.0-beta.5

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.
@@ -28,7 +28,7 @@ __webpack_require__.d(__webpack_exports__, {
28
28
  "createListenerMiddleware": () => (/* binding */ createListenerMiddleware),
29
29
  "createNextState": () => (/* reexport */ immer_esm),
30
30
  "createReducer": () => (/* binding */ createReducer),
31
- "createSelector": () => (/* reexport */ es.createSelector),
31
+ "createSelector": () => (/* reexport */ es/* createSelector */.P1),
32
32
  "createSerializableStateInvariantMiddleware": () => (/* binding */ createSerializableStateInvariantMiddleware),
33
33
  "createSlice": () => (/* binding */ createSlice),
34
34
  "createStore": () => (/* reexport */ createStore),
@@ -943,7 +943,7 @@ var createDraftSafeSelector = function () {
943
943
  for (var _i = 0; _i < arguments.length; _i++) {
944
944
  args[_i] = arguments[_i];
945
945
  }
946
- var selector = es.createSelector.apply(void 0, args);
946
+ var selector = es/* createSelector.apply */.P1.apply(void 0, args);
947
947
  var wrappedSelector = function (value) {
948
948
  var rest = [];
949
949
  for (var _i = 1; _i < arguments.length; _i++) {
@@ -2735,7 +2735,6 @@ exports.initializeApp = (0, toolkit_1.createAsyncThunk)('initializeApp', (_, {
2735
2735
  });
2736
2736
  }
2737
2737
 
2738
- dispatch((0, actions_2.setLocale)(locale));
2739
2738
  return {
2740
2739
  initialState: undefined,
2741
2740
  locale,
@@ -2772,7 +2771,15 @@ exports.resetApp = (0, toolkit_1.createAsyncThunk)('resetApp', (_, {
2772
2771
  yield api.clearStore();
2773
2772
  dispatch((0, actions_1.resetConfig)());
2774
2773
  yield dispatch((0, actions_1.initializeConfig)());
2775
- yield dispatch((0, exports.initializeApp)());
2774
+
2775
+ try {
2776
+ const {
2777
+ locale
2778
+ } = yield dispatch((0, exports.initializeApp)()).unwrap();
2779
+ yield dispatch((0, actions_2.setLocale)(locale));
2780
+ } catch (rejectedValueOrSerializedError) {// nothing to do
2781
+ }
2782
+
2776
2783
  dispatch((0, actions_3.initializeVisibility)());
2777
2784
  }));
2778
2785
 
@@ -2914,6 +2921,9 @@ exports.initializeConfig = (0, toolkit_1.createAsyncThunk)('initializeConfig', (
2914
2921
  startChatIcon
2915
2922
  } = yield api.getConfig();
2916
2923
  const locale = ((_a = config === null || config === void 0 ? void 0 : config.context) === null || _a === void 0 ? void 0 : _a.locale) || defaultLocale;
2924
+ const {
2925
+ connectWhenInView
2926
+ } = config;
2917
2927
  return {
2918
2928
  features,
2919
2929
  defaultLocale,
@@ -2921,7 +2931,8 @@ exports.initializeConfig = (0, toolkit_1.createAsyncThunk)('initializeConfig', (
2921
2931
  agentParticipant,
2922
2932
  userParticipant,
2923
2933
  startChatIcon,
2924
- locale
2934
+ locale,
2935
+ connectWhenInView
2925
2936
  };
2926
2937
  } catch (e) {
2927
2938
  const err = new seamly_unavailable_error_1.default();
@@ -3305,56 +3316,33 @@ exports.setLocale = void 0;
3305
3316
 
3306
3317
  const toolkit_1 = __webpack_require__(427);
3307
3318
 
3308
- const selectors_1 = __webpack_require__(658);
3309
-
3310
3319
  exports.setLocale = (0, toolkit_1.createAsyncThunk)('setLocale', (locale, {
3311
- getState,
3312
3320
  extra: {
3313
3321
  api
3314
3322
  }
3315
3323
  }) => __awaiter(void 0, void 0, void 0, function* () {
3316
- const stateLocale = (0, selectors_1.selectLocale)(getState());
3317
-
3318
- if (locale === stateLocale) {
3319
- return undefined;
3320
- }
3321
-
3322
3324
  const response = yield api.getTranslations(locale);
3323
3325
  return {
3324
3326
  translations: response,
3325
3327
  locale
3326
3328
  };
3327
- }));
3328
-
3329
- /***/ }),
3330
-
3331
- /***/ 658:
3332
- /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3333
-
3334
-
3329
+ }), {
3330
+ condition: (locale, {
3331
+ getState
3332
+ }) => {
3333
+ const {
3334
+ i18n: {
3335
+ isLoading,
3336
+ locale: stateLocale
3337
+ }
3338
+ } = getState();
3335
3339
 
3336
- Object.defineProperty(exports, "__esModule", ({
3337
- value: true
3338
- }));
3339
- exports.selectLocale = exports.selectInitialLocale = exports.selectTranslations = void 0;
3340
-
3341
- const reselect_1 = __webpack_require__(573);
3342
-
3343
- exports.selectTranslations = (0, reselect_1.createSelector)(({
3344
- i18n
3345
- }) => i18n, ({
3346
- translations
3347
- }) => translations);
3348
- exports.selectInitialLocale = (0, reselect_1.createSelector)(({
3349
- i18n
3350
- }) => i18n, ({
3351
- initialLocale
3352
- }) => initialLocale);
3353
- exports.selectLocale = (0, reselect_1.createSelector)(({
3354
- i18n
3355
- }) => i18n, ({
3356
- locale
3357
- }) => locale);
3340
+ if (locale === stateLocale || isLoading) {
3341
+ // Already fetched or in progress, don't need to re-fetch
3342
+ return false;
3343
+ }
3344
+ }
3345
+ });
3358
3346
 
3359
3347
  /***/ }),
3360
3348
 
@@ -3417,11 +3405,16 @@ exports.W_ = (0, toolkit_1.createSlice)({
3417
3405
  payload
3418
3406
  }) => {
3419
3407
  state.initialLocale = payload.locale;
3408
+ }).addCase(actions_2.setLocale.pending, state => {
3409
+ state.isLoading = true;
3410
+ }).addCase(actions_2.setLocale.rejected, state => {
3411
+ state.isLoading = false;
3420
3412
  }).addCase(actions_2.setLocale.fulfilled, (state, {
3421
3413
  payload
3422
3414
  }) => {
3415
+ state.isLoading = false;
3416
+
3423
3417
  if (!(payload === null || payload === void 0 ? void 0 : payload.translations)) {
3424
- state.isLoading = false;
3425
3418
  return;
3426
3419
  }
3427
3420
 
@@ -4413,7 +4406,9 @@ exports.setShowInlineView = exports.setFromStorage = exports.visibilitySlice = v
4413
4406
 
4414
4407
  const toolkit_1 = __webpack_require__(427);
4415
4408
 
4416
- const actions_1 = __webpack_require__(234);
4409
+ const actions_1 = __webpack_require__(915);
4410
+
4411
+ const actions_2 = __webpack_require__(234);
4417
4412
 
4418
4413
  const constants_1 = __webpack_require__(629);
4419
4414
 
@@ -4433,12 +4428,19 @@ exports.visibilitySlice = (0, toolkit_1.createSlice)({
4433
4428
  }
4434
4429
  },
4435
4430
  extraReducers: builder => {
4436
- builder.addCase(actions_1.setVisibility.fulfilled, (state, {
4431
+ builder.addCase(actions_2.setVisibility.fulfilled, (state, {
4437
4432
  payload: visibility
4438
4433
  }) => {
4439
4434
  if (visibility) {
4440
4435
  state.visibility = visibility;
4441
4436
  }
4437
+ }).addCase(actions_1.initializeConfig.fulfilled, (state, {
4438
+ payload
4439
+ }) => {
4440
+ // We only want to (always) show the inlineView when connectWhenInView is disabled
4441
+ if (!payload.connectWhenInView) {
4442
+ state.showInlineView = !payload.connectWhenInView;
4443
+ }
4442
4444
  });
4443
4445
  }
4444
4446
  });
@@ -7453,7 +7455,7 @@ const selectState = ({
7453
7455
  state
7454
7456
  }) => state;
7455
7457
  const useSeamlyStateContext = () => (0,react_redux__WEBPACK_IMPORTED_MODULE_4__.useSelector)(selectState);
7456
- const selectEventsWithSuggestion = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_5__.createSelector)(selectState, domains_config_selectors__WEBPACK_IMPORTED_MODULE_0__.selectConfig, domains_app_selectors__WEBPACK_IMPORTED_MODULE_2__.selectUserHasResponded, ({
7458
+ const selectEventsWithSuggestion = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_5__/* .createSelector */ .P1)(selectState, domains_config_selectors__WEBPACK_IMPORTED_MODULE_0__.selectConfig, domains_app_selectors__WEBPACK_IMPORTED_MODULE_2__.selectUserHasResponded, ({
7457
7459
  events,
7458
7460
  serviceData
7459
7461
  }, config, hasUserResponded) => {
@@ -7467,7 +7469,7 @@ const selectEventsWithSuggestion = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_
7467
7469
  };
7468
7470
  return [...events, suggestionsEvent];
7469
7471
  });
7470
- const selectEvents = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_5__.createSelector)(selectEventsWithSuggestion, domains_config_selectors__WEBPACK_IMPORTED_MODULE_0__.selectConfig, (events, config) => {
7472
+ const selectEvents = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_5__/* .createSelector */ .P1)(selectEventsWithSuggestion, domains_config_selectors__WEBPACK_IMPORTED_MODULE_0__.selectConfig, (events, config) => {
7471
7473
  const {
7472
7474
  enabled,
7473
7475
  threshold
@@ -7497,7 +7499,7 @@ const selectEvents = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_5__.createSele
7497
7499
  return mappedEvents;
7498
7500
  });
7499
7501
  const useEvents = () => (0,react_redux__WEBPACK_IMPORTED_MODULE_4__.useSelector)(selectEvents);
7500
- const selectEventIds = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_5__.createSelector)(selectEvents, events => {
7502
+ const selectEventIds = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_5__/* .createSelector */ .P1)(selectEvents, events => {
7501
7503
  return events.map(event => event.payload.id);
7502
7504
  });
7503
7505
  const useEventsIds = () => (0,react_redux__WEBPACK_IMPORTED_MODULE_4__.useSelector)(selectEventIds);
@@ -7508,7 +7510,7 @@ const useLoadedImageEventIds = () => useSeamlyStateContext().loadedImageEventIds
7508
7510
  const useSkiplink = () => useSeamlyStateContext().skiplinkTargetId;
7509
7511
  const useSeamlyParticipant = participantId => useSeamlyStateContext().participantInfo.participants[participantId];
7510
7512
  const useSeamlyServiceInfo = () => useSeamlyStateContext().serviceInfo;
7511
- const selectLastMessageEventId = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_5__.createSelector)(selectEvents, events => {
7513
+ const selectLastMessageEventId = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_5__/* .createSelector */ .P1)(selectEvents, events => {
7512
7514
  const filteredEvents = events.filter(event => event.type === 'message');
7513
7515
  return filteredEvents[filteredEvents.length - 1]?.payload.id;
7514
7516
  });
@@ -9127,18 +9129,14 @@ if (true) {
9127
9129
  /***/ 573:
9128
9130
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
9129
9131
 
9130
- // ESM COMPAT FLAG
9131
- __webpack_require__.r(__webpack_exports__);
9132
9132
 
9133
9133
  // EXPORTS
9134
9134
  __webpack_require__.d(__webpack_exports__, {
9135
- "createSelector": () => (/* binding */ createSelector),
9136
- "createSelectorCreator": () => (/* binding */ createSelectorCreator),
9137
- "createStructuredSelector": () => (/* binding */ createStructuredSelector),
9138
- "defaultEqualityCheck": () => (/* reexport */ defaultEqualityCheck),
9139
- "defaultMemoize": () => (/* reexport */ defaultMemoize)
9135
+ "P1": () => (/* binding */ createSelector)
9140
9136
  });
9141
9137
 
9138
+ // UNUSED EXPORTS: createSelectorCreator, createStructuredSelector, defaultEqualityCheck, defaultMemoize
9139
+
9142
9140
  ;// CONCATENATED MODULE: ./node_modules/reselect/es/defaultMemoize.js
9143
9141
  // Cache implementation based on Erik Rasmussen's `lru-memoize`:
9144
9142
  // https://github.com/erikras/lru-memoize