sceyt-chat-react-uikit 1.6.9-beta.14 → 1.6.9-beta.16

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.
Files changed (3) hide show
  1. package/index.js +507 -230
  2. package/index.modern.js +507 -230
  3. package/package.json +1 -1
package/index.js CHANGED
@@ -603,6 +603,10 @@ function getPlugin(pluginKey) {
603
603
  }
604
604
  return plugin;
605
605
  }
606
+ function loadPlugin(pluginKey, implementation) {
607
+ if (!plugins[pluginKey])
608
+ plugins[pluginKey] = implementation;
609
+ }
606
610
 
607
611
  // src/core/scope.ts
608
612
  var currentScope;
@@ -1119,6 +1123,256 @@ function currentImpl(value) {
1119
1123
  return copy;
1120
1124
  }
1121
1125
 
1126
+ // src/plugins/mapset.ts
1127
+ function enableMapSet() {
1128
+ class DraftMap extends Map {
1129
+ constructor(target, parent) {
1130
+ super();
1131
+ this[DRAFT_STATE] = {
1132
+ type_: 2 /* Map */,
1133
+ parent_: parent,
1134
+ scope_: parent ? parent.scope_ : getCurrentScope(),
1135
+ modified_: false,
1136
+ finalized_: false,
1137
+ copy_: void 0,
1138
+ assigned_: void 0,
1139
+ base_: target,
1140
+ draft_: this,
1141
+ isManual_: false,
1142
+ revoked_: false
1143
+ };
1144
+ }
1145
+ get size() {
1146
+ return latest(this[DRAFT_STATE]).size;
1147
+ }
1148
+ has(key) {
1149
+ return latest(this[DRAFT_STATE]).has(key);
1150
+ }
1151
+ set(key, value) {
1152
+ const state = this[DRAFT_STATE];
1153
+ assertUnrevoked(state);
1154
+ if (!latest(state).has(key) || latest(state).get(key) !== value) {
1155
+ prepareMapCopy(state);
1156
+ markChanged(state);
1157
+ state.assigned_.set(key, true);
1158
+ state.copy_.set(key, value);
1159
+ state.assigned_.set(key, true);
1160
+ }
1161
+ return this;
1162
+ }
1163
+ delete(key) {
1164
+ if (!this.has(key)) {
1165
+ return false;
1166
+ }
1167
+ const state = this[DRAFT_STATE];
1168
+ assertUnrevoked(state);
1169
+ prepareMapCopy(state);
1170
+ markChanged(state);
1171
+ if (state.base_.has(key)) {
1172
+ state.assigned_.set(key, false);
1173
+ } else {
1174
+ state.assigned_.delete(key);
1175
+ }
1176
+ state.copy_.delete(key);
1177
+ return true;
1178
+ }
1179
+ clear() {
1180
+ const state = this[DRAFT_STATE];
1181
+ assertUnrevoked(state);
1182
+ if (latest(state).size) {
1183
+ prepareMapCopy(state);
1184
+ markChanged(state);
1185
+ state.assigned_ = /* @__PURE__ */ new Map();
1186
+ each(state.base_, (key) => {
1187
+ state.assigned_.set(key, false);
1188
+ });
1189
+ state.copy_.clear();
1190
+ }
1191
+ }
1192
+ forEach(cb, thisArg) {
1193
+ const state = this[DRAFT_STATE];
1194
+ latest(state).forEach((_value, key, _map) => {
1195
+ cb.call(thisArg, this.get(key), key, this);
1196
+ });
1197
+ }
1198
+ get(key) {
1199
+ const state = this[DRAFT_STATE];
1200
+ assertUnrevoked(state);
1201
+ const value = latest(state).get(key);
1202
+ if (state.finalized_ || !isDraftable(value)) {
1203
+ return value;
1204
+ }
1205
+ if (value !== state.base_.get(key)) {
1206
+ return value;
1207
+ }
1208
+ const draft = createProxy(value, state);
1209
+ prepareMapCopy(state);
1210
+ state.copy_.set(key, draft);
1211
+ return draft;
1212
+ }
1213
+ keys() {
1214
+ return latest(this[DRAFT_STATE]).keys();
1215
+ }
1216
+ values() {
1217
+ const iterator = this.keys();
1218
+ return {
1219
+ [Symbol.iterator]: () => this.values(),
1220
+ next: () => {
1221
+ const r = iterator.next();
1222
+ if (r.done)
1223
+ return r;
1224
+ const value = this.get(r.value);
1225
+ return {
1226
+ done: false,
1227
+ value
1228
+ };
1229
+ }
1230
+ };
1231
+ }
1232
+ entries() {
1233
+ const iterator = this.keys();
1234
+ return {
1235
+ [Symbol.iterator]: () => this.entries(),
1236
+ next: () => {
1237
+ const r = iterator.next();
1238
+ if (r.done)
1239
+ return r;
1240
+ const value = this.get(r.value);
1241
+ return {
1242
+ done: false,
1243
+ value: [r.value, value]
1244
+ };
1245
+ }
1246
+ };
1247
+ }
1248
+ [(Symbol.iterator)]() {
1249
+ return this.entries();
1250
+ }
1251
+ }
1252
+ function proxyMap_(target, parent) {
1253
+ return new DraftMap(target, parent);
1254
+ }
1255
+ function prepareMapCopy(state) {
1256
+ if (!state.copy_) {
1257
+ state.assigned_ = /* @__PURE__ */ new Map();
1258
+ state.copy_ = new Map(state.base_);
1259
+ }
1260
+ }
1261
+ class DraftSet extends Set {
1262
+ constructor(target, parent) {
1263
+ super();
1264
+ this[DRAFT_STATE] = {
1265
+ type_: 3 /* Set */,
1266
+ parent_: parent,
1267
+ scope_: parent ? parent.scope_ : getCurrentScope(),
1268
+ modified_: false,
1269
+ finalized_: false,
1270
+ copy_: void 0,
1271
+ base_: target,
1272
+ draft_: this,
1273
+ drafts_: /* @__PURE__ */ new Map(),
1274
+ revoked_: false,
1275
+ isManual_: false
1276
+ };
1277
+ }
1278
+ get size() {
1279
+ return latest(this[DRAFT_STATE]).size;
1280
+ }
1281
+ has(value) {
1282
+ const state = this[DRAFT_STATE];
1283
+ assertUnrevoked(state);
1284
+ if (!state.copy_) {
1285
+ return state.base_.has(value);
1286
+ }
1287
+ if (state.copy_.has(value))
1288
+ return true;
1289
+ if (state.drafts_.has(value) && state.copy_.has(state.drafts_.get(value)))
1290
+ return true;
1291
+ return false;
1292
+ }
1293
+ add(value) {
1294
+ const state = this[DRAFT_STATE];
1295
+ assertUnrevoked(state);
1296
+ if (!this.has(value)) {
1297
+ prepareSetCopy(state);
1298
+ markChanged(state);
1299
+ state.copy_.add(value);
1300
+ }
1301
+ return this;
1302
+ }
1303
+ delete(value) {
1304
+ if (!this.has(value)) {
1305
+ return false;
1306
+ }
1307
+ const state = this[DRAFT_STATE];
1308
+ assertUnrevoked(state);
1309
+ prepareSetCopy(state);
1310
+ markChanged(state);
1311
+ return state.copy_.delete(value) || (state.drafts_.has(value) ? state.copy_.delete(state.drafts_.get(value)) : (
1312
+ /* istanbul ignore next */
1313
+ false
1314
+ ));
1315
+ }
1316
+ clear() {
1317
+ const state = this[DRAFT_STATE];
1318
+ assertUnrevoked(state);
1319
+ if (latest(state).size) {
1320
+ prepareSetCopy(state);
1321
+ markChanged(state);
1322
+ state.copy_.clear();
1323
+ }
1324
+ }
1325
+ values() {
1326
+ const state = this[DRAFT_STATE];
1327
+ assertUnrevoked(state);
1328
+ prepareSetCopy(state);
1329
+ return state.copy_.values();
1330
+ }
1331
+ entries() {
1332
+ const state = this[DRAFT_STATE];
1333
+ assertUnrevoked(state);
1334
+ prepareSetCopy(state);
1335
+ return state.copy_.entries();
1336
+ }
1337
+ keys() {
1338
+ return this.values();
1339
+ }
1340
+ [(Symbol.iterator)]() {
1341
+ return this.values();
1342
+ }
1343
+ forEach(cb, thisArg) {
1344
+ const iterator = this.values();
1345
+ let result = iterator.next();
1346
+ while (!result.done) {
1347
+ cb.call(thisArg, result.value, result.value, this);
1348
+ result = iterator.next();
1349
+ }
1350
+ }
1351
+ }
1352
+ function proxySet_(target, parent) {
1353
+ return new DraftSet(target, parent);
1354
+ }
1355
+ function prepareSetCopy(state) {
1356
+ if (!state.copy_) {
1357
+ state.copy_ = /* @__PURE__ */ new Set();
1358
+ state.base_.forEach((value) => {
1359
+ if (isDraftable(value)) {
1360
+ const draft = createProxy(value, state);
1361
+ state.drafts_.set(value, draft);
1362
+ state.copy_.add(draft);
1363
+ } else {
1364
+ state.copy_.add(value);
1365
+ }
1366
+ });
1367
+ }
1368
+ }
1369
+ function assertUnrevoked(state) {
1370
+ if (state.revoked_)
1371
+ die(3, JSON.stringify(latest(state)));
1372
+ }
1373
+ loadPlugin("MapSet", { proxyMap_, proxySet_ });
1374
+ }
1375
+
1122
1376
  // src/immer.ts
1123
1377
  var immer = new Immer2();
1124
1378
  var produce = immer.produce;
@@ -2600,181 +2854,205 @@ function _catch(body, recover) {
2600
2854
  return result;
2601
2855
  }
2602
2856
 
2603
- var currentVersion = 1;
2604
- var _setDataToDB = function setDataToDB(dbName, storeName, data, keyPath) {
2605
- if (!('indexedDB' in window)) {
2606
- log.info("This browser doesn't support IndexedDB");
2607
- } else {
2608
- var openRequest = indexedDB.open(dbName, currentVersion);
2609
- openRequest.onupgradeneeded = function (event) {
2610
- var db = openRequest.result;
2611
- var transaction = event.target.transaction;
2612
- addData(db, storeName, keyPath, data, transaction);
2857
+ // Asynchronously await a promise and pass the result to a finally continuation
2858
+ function _finallyRethrows(body, finalizer) {
2859
+ try {
2860
+ var result = body();
2861
+ } catch (e) {
2862
+ return finalizer(true, e);
2863
+ }
2864
+ if (result && result.then) {
2865
+ return result.then(finalizer.bind(null, false), finalizer.bind(null, true));
2866
+ }
2867
+ return finalizer(false, result);
2868
+ }
2869
+
2870
+ var openDatabase = function openDatabase(dbName) {
2871
+ return new Promise(function (resolve, reject) {
2872
+ var request = indexedDB.open(dbName);
2873
+ request.onsuccess = function () {
2874
+ return resolve(request.result);
2613
2875
  };
2614
- openRequest.onerror = function () {
2615
- log.error('Indexeddb Error ', openRequest.error);
2876
+ request.onerror = function () {
2877
+ return reject(request.error);
2616
2878
  };
2617
- openRequest.onsuccess = function (event) {
2618
- var db = event.target.result;
2879
+ });
2880
+ };
2881
+ var runUpgrade = function runUpgrade(dbName, onUpgrade) {
2882
+ try {
2883
+ return Promise.resolve(openDatabase(dbName)).then(function (db) {
2884
+ var nextVersion = db.version + 1;
2885
+ db.close();
2886
+ return new Promise(function (resolve, reject) {
2887
+ var request = indexedDB.open(dbName, nextVersion);
2888
+ request.onupgradeneeded = function () {
2889
+ var upgradeDb = request.result;
2890
+ onUpgrade(upgradeDb);
2891
+ };
2892
+ request.onsuccess = function () {
2893
+ return resolve(request.result);
2894
+ };
2895
+ request.onerror = function () {
2896
+ return reject(request.error);
2897
+ };
2898
+ request.onblocked = function () {
2899
+ log.warn('IndexedDB upgrade blocked; close other tabs to proceed');
2900
+ };
2901
+ });
2902
+ });
2903
+ } catch (e) {
2904
+ return Promise.reject(e);
2905
+ }
2906
+ };
2907
+ var ensureStore = function ensureStore(dbName, storeName, keyPath) {
2908
+ try {
2909
+ return Promise.resolve(openDatabase(dbName)).then(function (db) {
2619
2910
  if (db.objectStoreNames.contains(storeName)) {
2620
- addData(db, storeName, keyPath, data);
2621
- } else {
2622
- db.close();
2623
- currentVersion++;
2624
- _setDataToDB(dbName, storeName, data, keyPath);
2911
+ return db;
2625
2912
  }
2626
- db.onversionchange = function () {
2627
- db.close();
2628
- };
2629
- };
2630
- openRequest.onblocked = function () {};
2913
+ db.close();
2914
+ return Promise.resolve(runUpgrade(dbName, function (upgradeDb) {
2915
+ if (!upgradeDb.objectStoreNames.contains(storeName)) {
2916
+ upgradeDb.createObjectStore(storeName, {
2917
+ keyPath: keyPath
2918
+ });
2919
+ }
2920
+ }));
2921
+ });
2922
+ } catch (e) {
2923
+ return Promise.reject(e);
2631
2924
  }
2632
2925
  };
2633
- var _getDataFromDB = function getDataFromDB(dbName, storeName, keyPath, keyPatName) {
2926
+ var awaitTransaction = function awaitTransaction(tx) {
2634
2927
  return new Promise(function (resolve, reject) {
2635
- var openRequest = indexedDB.open(dbName, currentVersion);
2636
- openRequest.onupgradeneeded = function (event) {
2637
- var db = event.target.result;
2638
- var transaction = event.target.transaction;
2639
- if (db.objectStoreNames.contains(storeName)) {
2640
- var objectStore = transaction.objectStore(storeName);
2641
- var request = objectStore.get(keyPath);
2642
- request.onsuccess = function (event) {
2643
- var result = event.target.result;
2644
- resolve(result || '');
2645
- };
2646
- request.onerror = function (event) {
2647
- log.error('Error retrieving data during upgrade: ', event.target.error);
2648
- resolve('');
2649
- };
2650
- } else {
2651
- db.createObjectStore(storeName, {
2652
- keyPath: keyPatName
2653
- });
2654
- resolve('');
2655
- }
2928
+ tx.oncomplete = function () {
2929
+ return resolve();
2656
2930
  };
2657
- openRequest.onerror = function (event) {
2658
- if (event.target.error.name === 'VersionError') {
2659
- currentVersion++;
2660
- resolve(_getDataFromDB(dbName, storeName, keyPath));
2661
- } else {
2662
- reject(event);
2663
- }
2931
+ tx.onerror = function () {
2932
+ return reject(tx.error);
2664
2933
  };
2665
- openRequest.onsuccess = function (event) {
2666
- var db = event.target.result;
2667
- if (db.objectStoreNames.contains(storeName)) {
2668
- var transaction = db.transaction(storeName, 'readonly');
2669
- var objectStore = transaction.objectStore(storeName);
2670
- var request = objectStore.get(keyPath);
2671
- request.onsuccess = function (event) {
2672
- var result = event.target.result;
2673
- if (result) {
2674
- db.close();
2675
- resolve(result);
2676
- } else {
2677
- log.info('No data found for the specified keyPathValue.');
2678
- db.close();
2679
- resolve('');
2680
- }
2681
- };
2682
- request.onerror = function (event) {
2683
- db.close();
2684
- log.error('Error retrieving data: ', event.target.error);
2685
- };
2686
- } else {
2687
- db.close();
2688
- resolve('');
2689
- }
2934
+ tx.onabort = function () {
2935
+ return reject(tx.error);
2690
2936
  };
2691
2937
  });
2692
2938
  };
2693
- var addData = function addData(db, storeName, keyPath, data, transaction) {
2694
- if (!db.objectStoreNames.contains(storeName)) {
2695
- var objectStore = db.createObjectStore(storeName, {
2696
- keyPath: keyPath
2697
- });
2698
- data.forEach(function (value) {
2699
- var request = objectStore.put(value);
2700
- request.onsuccess = function () {
2701
- log.info('data added to db during upgrade.. ', request.result);
2702
- };
2703
- request.onerror = function () {
2704
- log.info('Error on put data to db during upgrade.. ', request.error);
2705
- };
2706
- });
2707
- } else {
2708
- if (transaction) {
2709
- var store = transaction.objectStore(storeName);
2710
- data.forEach(function (value) {
2711
- var request = store.put(value);
2712
- request.onsuccess = function () {
2713
- log.info('data added to db using existing transaction.. ', request.result);
2714
- };
2715
- request.onerror = function () {
2716
- log.info('Error on put data to db using existing transaction.. ', request.error);
2717
- };
2939
+ var putWithPossibleOutOfLineKey = function putWithPossibleOutOfLineKey(store, value, keyField) {
2940
+ try {
2941
+ if (store.keyPath !== null) {
2942
+ store.put(value);
2943
+ return;
2944
+ }
2945
+ } catch (e) {}
2946
+ var explicitKey = value === null || value === void 0 ? void 0 : value[keyField];
2947
+ if (explicitKey === undefined || explicitKey === null) {
2948
+ throw new Error("IndexedDB put requires explicit key but value has no '" + keyField + "' field");
2949
+ }
2950
+ store.put(value, explicitKey);
2951
+ };
2952
+ var setDataToDB = function setDataToDB(dbName, storeName, data, keyPath) {
2953
+ try {
2954
+ if (!('indexedDB' in window)) {
2955
+ log.info("This browser doesn't support IndexedDB");
2956
+ return Promise.resolve();
2957
+ }
2958
+ return Promise.resolve(ensureStore(dbName, storeName, keyPath)).then(function (db) {
2959
+ var _temp = _finallyRethrows(function () {
2960
+ var tx = db.transaction(storeName, 'readwrite');
2961
+ var store = tx.objectStore(storeName);
2962
+ data.forEach(function (value) {
2963
+ putWithPossibleOutOfLineKey(store, value, keyPath);
2964
+ });
2965
+ return Promise.resolve(awaitTransaction(tx)).then(function () {});
2966
+ }, function (_wasThrown, _result) {
2967
+ db.close();
2968
+ if (_wasThrown) throw _result;
2969
+ return _result;
2718
2970
  });
2719
- } else {
2720
- var newTransaction = db.transaction(storeName, 'readwrite');
2721
- var _store = newTransaction.objectStore(storeName);
2722
- data.forEach(function (value) {
2723
- var request = _store.put(value);
2724
- request.onsuccess = function () {
2725
- log.info('data added to db.. ', request.result);
2726
- };
2727
- request.onerror = function () {
2728
- log.info('Error on put channel to db .. ', request.error);
2729
- };
2971
+ if (_temp && _temp.then) return _temp.then(function () {});
2972
+ });
2973
+ } catch (e) {
2974
+ return Promise.reject(e);
2975
+ }
2976
+ };
2977
+ var getDataFromDB = function getDataFromDB(dbName, storeName, keyPathValue, keyPathName) {
2978
+ try {
2979
+ return Promise.resolve(_catch(function () {
2980
+ return Promise.resolve(openDatabase(dbName)).then(function (db) {
2981
+ var _exit = false;
2982
+ function _temp5(_result2) {
2983
+ if (_exit) return _result2;
2984
+ var tx = db.transaction(storeName, 'readonly');
2985
+ var objectStore = tx.objectStore(storeName);
2986
+ return Promise.resolve(new Promise(function (resolve, reject) {
2987
+ var request = objectStore.get(keyPathValue);
2988
+ request.onsuccess = function () {
2989
+ return resolve(request.result);
2990
+ };
2991
+ request.onerror = function () {
2992
+ return reject(request.error);
2993
+ };
2994
+ })).then(function (result) {
2995
+ db.close();
2996
+ return result || '';
2997
+ });
2998
+ }
2999
+ var _temp4 = function () {
3000
+ if (!db.objectStoreNames.contains(storeName)) {
3001
+ var _temp3 = function _temp3() {
3002
+ _exit = true;
3003
+ return '';
3004
+ };
3005
+ db.close();
3006
+ var _temp2 = function () {
3007
+ if (keyPathName) {
3008
+ return Promise.resolve(ensureStore(dbName, storeName, keyPathName)).then(function (upgraded) {
3009
+ upgraded.close();
3010
+ });
3011
+ }
3012
+ }();
3013
+ return _temp2 && _temp2.then ? _temp2.then(_temp3) : _temp3(_temp2);
3014
+ }
3015
+ }();
3016
+ return _temp4 && _temp4.then ? _temp4.then(_temp5) : _temp5(_temp4);
2730
3017
  });
2731
- }
3018
+ }, function (error) {
3019
+ log.error('Error retrieving data: ', error);
3020
+ return '';
3021
+ }));
3022
+ } catch (e) {
3023
+ return Promise.reject(e);
2732
3024
  }
2733
3025
  };
2734
3026
  var getAllStoreNames = function getAllStoreNames(dbName) {
2735
- return new Promise(function (resolve, reject) {
2736
- var openRequest = indexedDB.open(dbName, currentVersion);
2737
- openRequest.onupgradeneeded = function (event) {
2738
- var db = event.target.result;
2739
- resolve(Array.from(db.objectStoreNames));
2740
- };
2741
- openRequest.onerror = function () {
2742
- log.error('Indexeddb Error ', openRequest.error);
2743
- reject(openRequest.error);
2744
- };
2745
- openRequest.onsuccess = function (event) {
2746
- var db = event.target.result;
3027
+ try {
3028
+ return Promise.resolve(openDatabase(dbName)).then(function (db) {
2747
3029
  try {
2748
- var storeNames = Array.from(db.objectStoreNames);
2749
- db.close();
2750
- resolve(storeNames);
2751
- } catch (error) {
3030
+ return Array.from(db.objectStoreNames);
3031
+ } finally {
2752
3032
  db.close();
2753
- reject(error);
2754
3033
  }
2755
- };
2756
- });
3034
+ });
3035
+ } catch (e) {
3036
+ return Promise.reject(e);
3037
+ }
2757
3038
  };
2758
3039
  var deleteStore = function deleteStore(dbName, storeName) {
2759
- return new Promise(function (resolve, reject) {
2760
- var openRequest = indexedDB.open(dbName, currentVersion + 1);
2761
- openRequest.onupgradeneeded = function (event) {
2762
- var db = event.target.result;
2763
- if (db.objectStoreNames.contains(storeName)) {
2764
- db.deleteObjectStore(storeName);
2765
- currentVersion++;
2766
- }
2767
- };
2768
- openRequest.onerror = function () {
2769
- log.error('Indexeddb Error ', openRequest.error);
2770
- reject(openRequest.error);
2771
- };
2772
- openRequest.onsuccess = function (event) {
2773
- var db = event.target.result;
3040
+ try {
3041
+ return Promise.resolve(openDatabase(dbName)).then(function (db) {
3042
+ var shouldDelete = db.objectStoreNames.contains(storeName);
2774
3043
  db.close();
2775
- resolve();
2776
- };
2777
- });
3044
+ if (!shouldDelete) return;
3045
+ return Promise.resolve(runUpgrade(dbName, function (upgradeDb) {
3046
+ if (upgradeDb.objectStoreNames.contains(storeName)) {
3047
+ upgradeDb.deleteObjectStore(storeName);
3048
+ }
3049
+ })).then(function (upgraded) {
3050
+ upgraded.close();
3051
+ });
3052
+ });
3053
+ } catch (e) {
3054
+ return Promise.reject(e);
3055
+ }
2778
3056
  };
2779
3057
 
2780
3058
  var METADATA_DB_NAME = 'sceyt-metadata-db';
@@ -2797,7 +3075,7 @@ var storeMetadata = function storeMetadata(url, metadata) {
2797
3075
  expiresAt: Date.now() + CACHE_DURATION
2798
3076
  });
2799
3077
  var _temp = _catch(function () {
2800
- return Promise.resolve(_setDataToDB(METADATA_DB_NAME, currentMonth, [metadataRecord], 'url')).then(function () {});
3078
+ return Promise.resolve(setDataToDB(METADATA_DB_NAME, currentMonth, [metadataRecord], 'url')).then(function () {});
2801
3079
  }, function (error) {
2802
3080
  console.error('Failed to store metadata in IndexedDB:', error);
2803
3081
  });
@@ -2845,7 +3123,7 @@ var cleanupOldMonthsMetadata = function cleanupOldMonthsMetadata() {
2845
3123
  var getMetadata = function getMetadata(url) {
2846
3124
  return Promise.resolve(_catch(function () {
2847
3125
  var currentMonth = getCurrentMonthKey();
2848
- return Promise.resolve(_getDataFromDB(METADATA_DB_NAME, currentMonth, url, 'url')).then(function (result) {
3126
+ return Promise.resolve(getDataFromDB(METADATA_DB_NAME, currentMonth, url, 'url')).then(function (result) {
2849
3127
  if (!result || typeof result === 'string') {
2850
3128
  return null;
2851
3129
  }
@@ -10683,11 +10961,11 @@ var defaultTheme = {
10683
10961
  light: '#D9D9DF',
10684
10962
  dark: '#303032'
10685
10963
  }, _colors[THEME_COLORS.OVERLAY_BACKGROUND] = {
10686
- light: 'rgba(0, 0, 0, 0.5)',
10687
- dark: 'rgba(0, 0, 0, 0.5)'
10964
+ light: '#111539',
10965
+ dark: '#111539'
10688
10966
  }, _colors[THEME_COLORS.OVERLAY_BACKGROUND_2] = {
10689
- light: 'rgba(17, 21, 57, 0.4)',
10690
- dark: 'rgba(17, 21, 57, 0.4)'
10967
+ light: '#111539',
10968
+ dark: '#111539'
10691
10969
  }, _colors[THEME_COLORS.WARNING] = {
10692
10970
  light: '#FA4C56',
10693
10971
  dark: '#FA4C56'
@@ -11013,11 +11291,12 @@ var sendTypingAC = function sendTypingAC(state) {
11013
11291
  }
11014
11292
  };
11015
11293
  };
11016
- var sendRecordingAC = function sendRecordingAC(state) {
11294
+ var sendRecordingAC = function sendRecordingAC(state, channelId) {
11017
11295
  return {
11018
11296
  type: SEND_RECORDING,
11019
11297
  payload: {
11020
- state: state
11298
+ state: state,
11299
+ channelId: channelId
11021
11300
  }
11022
11301
  };
11023
11302
  };
@@ -12643,7 +12922,7 @@ var UploadPercent = styled__default.span(_templateObject38 || (_templateObject38
12643
12922
  }, function (props) {
12644
12923
  return props.fileAttachment || props.isRepliedMessage || props.isDetailsView ? '40px' : '56px';
12645
12924
  }, function (props) {
12646
- return props.backgroundColor + "40";
12925
+ return props.backgroundColor + "66";
12647
12926
  }, function (props) {
12648
12927
  return props.borderRadius ? props.borderRadius : props.fileAttachment ? '8px' : props.isRepliedMessage ? '4px' : ' 50%';
12649
12928
  }, function (props) {
@@ -15964,47 +16243,43 @@ function sendTyping(action) {
15964
16243
  }, _marked22, null, [[3, 7]]);
15965
16244
  }
15966
16245
  function sendRecording(action) {
15967
- var state, activeChannelId, channel, _t24;
16246
+ var _action$payload, state, channelId, channel, _t24;
15968
16247
  return _regenerator().w(function (_context23) {
15969
16248
  while (1) switch (_context23.p = _context23.n) {
15970
16249
  case 0:
15971
- state = action.payload.state;
16250
+ _action$payload = action.payload, state = _action$payload.state, channelId = _action$payload.channelId;
15972
16251
  _context23.n = 1;
15973
- return effects.call(getActiveChannelId);
16252
+ return effects.call(getChannelFromMap, channelId);
15974
16253
  case 1:
15975
- activeChannelId = _context23.v;
15976
- _context23.n = 2;
15977
- return effects.call(getChannelFromMap, activeChannelId);
15978
- case 2:
15979
16254
  channel = _context23.v;
15980
- _context23.p = 3;
16255
+ _context23.p = 2;
15981
16256
  if (!channel) {
15982
- _context23.n = 6;
16257
+ _context23.n = 5;
15983
16258
  break;
15984
16259
  }
15985
16260
  if (!state) {
15986
- _context23.n = 5;
16261
+ _context23.n = 4;
15987
16262
  break;
15988
16263
  }
15989
- _context23.n = 4;
16264
+ _context23.n = 3;
15990
16265
  return effects.call(channel.startRecording);
15991
- case 4:
15992
- _context23.n = 6;
16266
+ case 3:
16267
+ _context23.n = 5;
15993
16268
  break;
15994
- case 5:
15995
- _context23.n = 6;
16269
+ case 4:
16270
+ _context23.n = 5;
15996
16271
  return effects.call(channel.stopRecording);
15997
- case 6:
15998
- _context23.n = 8;
16272
+ case 5:
16273
+ _context23.n = 7;
15999
16274
  break;
16000
- case 7:
16001
- _context23.p = 7;
16275
+ case 6:
16276
+ _context23.p = 6;
16002
16277
  _t24 = _context23.v;
16003
16278
  log.error('ERROR in send recording', _t24);
16004
- case 8:
16279
+ case 7:
16005
16280
  return _context23.a(2);
16006
16281
  }
16007
- }, _marked23, null, [[3, 7]]);
16282
+ }, _marked23, null, [[2, 6]]);
16008
16283
  }
16009
16284
  function clearHistory(action) {
16010
16285
  var payload, channelId, channel, activeChannelId, groupName, _t25;
@@ -16985,7 +17260,7 @@ function sendMessage(action) {
16985
17260
  } else {
16986
17261
  var pendingAttachment = getPendingAttachment(attachment.tid);
16987
17262
  if (!attachment.cachedUrl) {
16988
- _setDataToDB(DB_NAMES.FILES_STORAGE, DB_STORE_NAMES.ATTACHMENTS, [_extends({}, updatedAttachment, {
17263
+ setDataToDB(DB_NAMES.FILES_STORAGE, DB_STORE_NAMES.ATTACHMENTS, [_extends({}, updatedAttachment, {
16989
17264
  checksum: pendingAttachment.checksum
16990
17265
  })], 'checksum');
16991
17266
  }
@@ -17143,7 +17418,7 @@ function sendMessage(action) {
17143
17418
  });
17144
17419
  pendingAttachment = getPendingAttachment(messageAttachment[k].tid);
17145
17420
  if (!messageAttachment[k].cachedUrl) {
17146
- _setDataToDB(DB_NAMES.FILES_STORAGE, DB_STORE_NAMES.ATTACHMENTS, [_extends({}, messageResponse.attachments[k], {
17421
+ setDataToDB(DB_NAMES.FILES_STORAGE, DB_STORE_NAMES.ATTACHMENTS, [_extends({}, messageResponse.attachments[k], {
17147
17422
  checksum: pendingAttachment.checksum || (pendingAttachment === null || pendingAttachment === void 0 ? void 0 : pendingAttachment.file)
17148
17423
  })], 'checksum');
17149
17424
  }
@@ -19689,6 +19964,7 @@ function rootSaga() {
19689
19964
  }, _marked$6);
19690
19965
  }
19691
19966
 
19967
+ enableMapSet();
19692
19968
  var sagaMiddleware = createSagaMiddleware__default();
19693
19969
  var store = configureStore({
19694
19970
  reducer: {
@@ -20759,15 +21035,15 @@ var Channel = function Channel(_ref3) {
20759
21035
  items: filteredItems,
20760
21036
  isTyping: !!filteredItems.find(function (item) {
20761
21037
  return item.typingState;
21038
+ }),
21039
+ isRecording: !!filteredItems.find(function (item) {
21040
+ return item.recordingState;
20762
21041
  })
20763
21042
  };
20764
21043
  }, [typingOrRecordingIndicator]);
20765
- var isTypingOrRecording = React.useMemo(function () {
20766
- return typingOrRecording.items.length > 0;
20767
- }, [typingOrRecording]);
20768
21044
  var MessageText = React.useMemo(function () {
20769
21045
  return /*#__PURE__*/React__default.createElement(ChannelMessageText, {
20770
- isTypingOrRecording: isTypingOrRecording,
21046
+ isTypingOrRecording: (typingOrRecording === null || typingOrRecording === void 0 ? void 0 : typingOrRecording.isTyping) || (typingOrRecording === null || typingOrRecording === void 0 ? void 0 : typingOrRecording.isRecording),
20771
21047
  user: user,
20772
21048
  contactsMap: contactsMap,
20773
21049
  getFromContacts: getFromContacts,
@@ -20781,7 +21057,7 @@ var Channel = function Channel(_ref3) {
20781
21057
  lastMessage: lastMessage,
20782
21058
  isDirectChannel: isDirectChannel
20783
21059
  });
20784
- }, [isTypingOrRecording, draftMessageText, lastMessage, user, contactsMap, getFromContacts, lastMessageMetas, accentColor, typingOrRecording, channel, isDirectChannel]);
21060
+ }, [typingOrRecording === null || typingOrRecording === void 0 ? void 0 : typingOrRecording.isTyping, typingOrRecording === null || typingOrRecording === void 0 ? void 0 : typingOrRecording.isRecording, draftMessageText, lastMessage, user, contactsMap, getFromContacts, lastMessageMetas, accentColor, typingOrRecording, channel, isDirectChannel]);
20785
21061
  return /*#__PURE__*/React__default.createElement(Container$2, {
20786
21062
  theme: theme,
20787
21063
  selectedChannel: channel.id === activeChannel.id,
@@ -20824,9 +21100,9 @@ var Channel = function Channel(_ref3) {
20824
21100
  unreadMentions: !!(channel.newMentionCount && channel.newMentionCount > 0),
20825
21101
  fontSize: channelLastMessageFontSize,
20826
21102
  height: channelLastMessageHeight
20827
- }, isTypingOrRecording ? !isDirectChannel ? (/*#__PURE__*/React__default.createElement(LastMessageAuthor, {
21103
+ }, typingOrRecording !== null && typingOrRecording !== void 0 && typingOrRecording.isTyping || typingOrRecording !== null && typingOrRecording !== void 0 && typingOrRecording.isRecording ? !isDirectChannel ? (/*#__PURE__*/React__default.createElement(LastMessageAuthor, {
20828
21104
  typing: typingOrRecording.isTyping,
20829
- recording: !typingOrRecording.isTyping,
21105
+ recording: typingOrRecording.isRecording,
20830
21106
  color: textPrimary
20831
21107
  }, /*#__PURE__*/React__default.createElement("span", {
20832
21108
  ref: messageAuthorRef
@@ -20844,11 +21120,11 @@ var Channel = function Channel(_ref3) {
20844
21120
  color: textPrimary
20845
21121
  }, /*#__PURE__*/React__default.createElement("span", {
20846
21122
  ref: messageAuthorRef
20847
- }, lastMessage.user.id === user.id ? 'You' : makeUsername(contactsMap && contactsMap[lastMessage.user.id], lastMessage.user, getFromContacts, true)))), !isTypingOrRecording && (isDirectChannel ? !isTypingOrRecording && (draftMessageText || lastMessage.user && lastMessage.state !== MESSAGE_STATUS.DELETE && (channel.lastReactedMessage && channel.newReactions && channel.newReactions[0] ? channel.newReactions[0].user && channel.newReactions[0].user.id === user.id : lastMessage.user.id === user.id)) : isTypingOrRecording && draftMessageText || lastMessage && lastMessage.state !== MESSAGE_STATUS.DELETE && lastMessage.type !== 'system') && (/*#__PURE__*/React__default.createElement(Points, {
21123
+ }, lastMessage.user.id === user.id ? 'You' : makeUsername(contactsMap && contactsMap[lastMessage.user.id], lastMessage.user, getFromContacts, true)))), !(typingOrRecording !== null && typingOrRecording !== void 0 && typingOrRecording.isTyping) && !(typingOrRecording !== null && typingOrRecording !== void 0 && typingOrRecording.isRecording) && (isDirectChannel ? !(typingOrRecording !== null && typingOrRecording !== void 0 && typingOrRecording.isTyping) && !(typingOrRecording !== null && typingOrRecording !== void 0 && typingOrRecording.isRecording) && (draftMessageText || lastMessage.user && lastMessage.state !== MESSAGE_STATUS.DELETE && (channel.lastReactedMessage && channel.newReactions && channel.newReactions[0] ? channel.newReactions[0].user && channel.newReactions[0].user.id === user.id : lastMessage.user.id === user.id)) : ((typingOrRecording === null || typingOrRecording === void 0 ? void 0 : typingOrRecording.isTyping) || (typingOrRecording === null || typingOrRecording === void 0 ? void 0 : typingOrRecording.isRecording)) && draftMessageText || lastMessage && lastMessage.state !== MESSAGE_STATUS.DELETE && lastMessage.type !== 'system') && (/*#__PURE__*/React__default.createElement(Points, {
20848
21124
  color: draftMessageText && warningColor || textPrimary
20849
21125
  }, ": ")), /*#__PURE__*/React__default.createElement(LastMessageText, {
20850
21126
  color: textSecondary,
20851
- withAttachments: !!(lastMessage && lastMessage.attachments && lastMessage.attachments.length && lastMessage.attachments[0].type !== attachmentTypes.link) && !isTypingOrRecording,
21127
+ withAttachments: !!(lastMessage && lastMessage.attachments && lastMessage.attachments.length && lastMessage.attachments[0].type !== attachmentTypes.link) && (!(typingOrRecording !== null && typingOrRecording !== void 0 && typingOrRecording.isTyping) || !(typingOrRecording !== null && typingOrRecording !== void 0 && typingOrRecording.isRecording)),
20852
21128
  noBody: lastMessage && !lastMessage.body,
20853
21129
  deletedMessage: lastMessage && lastMessage.state === MESSAGE_STATUS.DELETE
20854
21130
  }, MessageText)))), /*#__PURE__*/React__default.createElement(ChannelStatus, {
@@ -21364,7 +21640,7 @@ var Container$4 = styled__default.div(_templateObject$8 || (_templateObject$8 =
21364
21640
  }, function (props) {
21365
21641
  return props.height ? props.height + "px" : '0px';
21366
21642
  }, function (props) {
21367
- return props.background + "40";
21643
+ return props.background + "66";
21368
21644
  });
21369
21645
 
21370
21646
  var _templateObject$9, _templateObject2$8, _templateObject3$5, _templateObject4$5, _templateObject5$3, _templateObject6$2, _templateObject7$2, _templateObject8$2, _templateObject9$2, _templateObject0$2, _templateObject1$2;
@@ -23808,7 +24084,7 @@ var Container$a = styled__default.div(_templateObject$j || (_templateObject$j =
23808
24084
  }, function (props) {
23809
24085
  return props.dateDividerTextColor;
23810
24086
  }, function (props) {
23811
- return props.dateDividerBackgroundColor + "40";
24087
+ return props.dateDividerBackgroundColor + "66";
23812
24088
  }, function (props) {
23813
24089
  return props.dateDividerBorderRadius || '14px';
23814
24090
  }, function (props) {
@@ -25338,7 +25614,7 @@ var SliderPopup = function SliderPopup(_ref) {
25338
25614
  text: '',
25339
25615
  styles: {
25340
25616
  background: {
25341
- fill: overlayBackground2 + "40"
25617
+ fill: overlayBackground2 + "66"
25342
25618
  },
25343
25619
  path: {
25344
25620
  stroke: textOnPrimary,
@@ -25593,7 +25869,7 @@ var Container$c = styled__default.div(_templateObject$p || (_templateObject$p =
25593
25869
  }, function (props) {
25594
25870
  return props.textColor;
25595
25871
  }, function (props) {
25596
- return props.backgroundColor + "40";
25872
+ return props.backgroundColor + "66";
25597
25873
  }, function (props) {
25598
25874
  return props.border;
25599
25875
  }, function (props) {
@@ -26641,7 +26917,7 @@ var VideoTime = styled__default.div(_templateObject2$o || (_templateObject2$o =
26641
26917
  }, function (props) {
26642
26918
  return props.isRepliedMessage ? '0 3px' : '4px 6px';
26643
26919
  }, function (props) {
26644
- return props.messageTimeBackgroundColor + "40";
26920
+ return props.messageTimeBackgroundColor + "66";
26645
26921
  }, function (props) {
26646
26922
  return props.color;
26647
26923
  }, function (props) {
@@ -29255,7 +29531,7 @@ var Attachment = function Attachment(_ref) {
29255
29531
  text: '',
29256
29532
  styles: {
29257
29533
  background: {
29258
- fill: overlayBackground2 + "40"
29534
+ fill: overlayBackground2 + "66"
29259
29535
  },
29260
29536
  path: {
29261
29537
  stroke: textOnPrimary,
@@ -29305,7 +29581,7 @@ var Attachment = function Attachment(_ref) {
29305
29581
  text: '',
29306
29582
  styles: {
29307
29583
  background: {
29308
- fill: overlayBackground2 + "40"
29584
+ fill: overlayBackground2 + "66"
29309
29585
  },
29310
29586
  path: {
29311
29587
  stroke: textOnPrimary,
@@ -29412,7 +29688,7 @@ var Attachment = function Attachment(_ref) {
29412
29688
  text: '',
29413
29689
  styles: {
29414
29690
  background: {
29415
- fill: overlayBackground2 + "40"
29691
+ fill: overlayBackground2 + "66"
29416
29692
  },
29417
29693
  path: {
29418
29694
  stroke: textOnPrimary,
@@ -30584,7 +30860,7 @@ var MessageStatusAndTime = function MessageStatusAndTime(_ref) {
30584
30860
  }))));
30585
30861
  };
30586
30862
  var MessageStatusAndTime$1 = /*#__PURE__*/React__default.memo(MessageStatusAndTime, function (prevProps, nextProps) {
30587
- return prevProps.message.state === nextProps.message.state && prevProps.message.deliveryStatus === nextProps.message.deliveryStatus && prevProps.message.createdAt === nextProps.message.createdAt && prevProps.showMessageTimeAndStatusOnlyOnHover === nextProps.showMessageTimeAndStatusOnlyOnHover && prevProps.messageStatusSize === nextProps.messageStatusSize && prevProps.messageStatusColor === nextProps.messageStatusColor && prevProps.messageReadStatusColor === nextProps.messageReadStatusColor && prevProps.messageStateFontSize === nextProps.messageStateFontSize && prevProps.messageStateColor === nextProps.messageStateColor && prevProps.messageTimeFontSize === nextProps.messageTimeFontSize && prevProps.messageStatusAndTimeLineHeight === nextProps.messageStatusAndTimeLineHeight && prevProps.messageTimeColor === nextProps.messageTimeColor && prevProps.messageTimeVisible === nextProps.messageTimeVisible && prevProps.messageStatusVisible === nextProps.messageStatusVisible && prevProps.ownMessageOnRightSide === nextProps.ownMessageOnRightSide && prevProps.bottomOfMessage === nextProps.bottomOfMessage && prevProps.marginBottom === nextProps.marginBottom && prevProps.messageTimeColorOnAttachment === nextProps.messageTimeColorOnAttachment;
30863
+ return prevProps.message.state === nextProps.message.state && prevProps.message.deliveryStatus === nextProps.message.deliveryStatus && prevProps.message.createdAt === nextProps.message.createdAt && prevProps.showMessageTimeAndStatusOnlyOnHover === nextProps.showMessageTimeAndStatusOnlyOnHover && prevProps.messageStatusSize === nextProps.messageStatusSize && prevProps.messageStatusColor === nextProps.messageStatusColor && prevProps.messageReadStatusColor === nextProps.messageReadStatusColor && prevProps.messageStateFontSize === nextProps.messageStateFontSize && prevProps.messageStateColor === nextProps.messageStateColor && prevProps.messageTimeFontSize === nextProps.messageTimeFontSize && prevProps.messageStatusAndTimeLineHeight === nextProps.messageStatusAndTimeLineHeight && prevProps.messageTimeColor === nextProps.messageTimeColor && prevProps.messageTimeVisible === nextProps.messageTimeVisible && prevProps.messageStatusVisible === nextProps.messageStatusVisible && prevProps.ownMessageOnRightSide === nextProps.ownMessageOnRightSide && prevProps.bottomOfMessage === nextProps.bottomOfMessage && prevProps.marginBottom === nextProps.marginBottom && prevProps.messageTimeColorOnAttachment === nextProps.messageTimeColorOnAttachment && prevProps.withAttachment === nextProps.withAttachment;
30588
30864
  });
30589
30865
  var MessageStatus = styled__default.span(_templateObject$z || (_templateObject$z = _taggedTemplateLiteralLoose(["\n display: inline-flex;\n align-items: center;\n margin-left: 4px;\n text-align: right;\n height: ", ";\n\n & > svg {\n height: 16px;\n width: 16px;\n }\n"])), function (props) {
30590
30866
  return props.height || '14px';
@@ -30603,7 +30879,7 @@ var MessageStatusAndTimeContainer = styled__default.span(_templateObject3$o || (
30603
30879
  }, function (props) {
30604
30880
  return props.withAttachment && '4px 6px';
30605
30881
  }, function (props) {
30606
- return props.withAttachment && !props.fileAttachment && props.messageTimeBackgroundColor + "40";
30882
+ return props.withAttachment && !props.fileAttachment && props.messageTimeBackgroundColor + "66";
30607
30883
  }, function (props) {
30608
30884
  return props.lineHeight || '14px';
30609
30885
  }, function (props) {
@@ -30659,7 +30935,7 @@ var OGMetadata = function OGMetadata(_ref) {
30659
30935
  var queryBuilder = new client.MessageLinkOGQueryBuilder(url);
30660
30936
  return Promise.resolve(queryBuilder.build()).then(function (query) {
30661
30937
  return Promise.resolve(query.loadOGData()).then(function (metadata) {
30662
- return Promise.resolve(storeMetadata(url.replace('https://', ''), metadata)).then(function () {
30938
+ return Promise.resolve(storeMetadata(url.replace('https://', '').replace('http://', ''), metadata)).then(function () {
30663
30939
  setMetadata(metadata);
30664
30940
  });
30665
30941
  });
@@ -30681,7 +30957,7 @@ var OGMetadata = function OGMetadata(_ref) {
30681
30957
  if (attachment !== null && attachment !== void 0 && attachment.id && !metadata) {
30682
30958
  var url = attachment === null || attachment === void 0 ? void 0 : attachment.url;
30683
30959
  if (url) {
30684
- getMetadata(url.replace('https://', '')).then(function (cachedMetadata) {
30960
+ getMetadata(url.replace('https://', '').replace('http://', '')).then(function (cachedMetadata) {
30685
30961
  try {
30686
30962
  if (cachedMetadata) {
30687
30963
  setMetadata(cachedMetadata);
@@ -33082,7 +33358,7 @@ var MessageTopDate = styled__default.div(_templateObject4$o || (_templateObject4
33082
33358
  }, function (props) {
33083
33359
  return props.dateDividerTextColor;
33084
33360
  }, function (props) {
33085
- return props.dateDividerBackgroundColor + "40";
33361
+ return props.dateDividerBackgroundColor + "66";
33086
33362
  }, function (props) {
33087
33363
  return props.dateDividerBorder;
33088
33364
  }, function (props) {
@@ -35126,19 +35402,19 @@ var AudioRecord = function AudioRecord(_ref) {
35126
35402
  }, [currentRecordedFile]);
35127
35403
  var dispatch = reactRedux.useDispatch();
35128
35404
  var handleStartRecording = function handleStartRecording() {
35129
- dispatch(sendRecordingAC(true));
35405
+ dispatch(sendRecordingAC(true, currentChannelId));
35130
35406
  if (sendingInterval) {
35131
35407
  clearInterval(sendingInterval);
35132
35408
  setSendingInterval(null);
35133
35409
  return;
35134
35410
  }
35135
35411
  var interval = setInterval(function () {
35136
- dispatch(sendRecordingAC(true));
35412
+ dispatch(sendRecordingAC(true, currentChannelId));
35137
35413
  }, 1000);
35138
35414
  setSendingInterval(interval);
35139
35415
  };
35140
35416
  var handleStopRecording = function handleStopRecording() {
35141
- dispatch(sendRecordingAC(false));
35417
+ dispatch(sendRecordingAC(false, currentChannelId));
35142
35418
  if (sendingInterval) {
35143
35419
  clearInterval(sendingInterval);
35144
35420
  setSendingInterval(null);
@@ -35292,10 +35568,9 @@ var AudioRecord = function AudioRecord(_ref) {
35292
35568
  return Promise.resolve(_catch(function () {
35293
35569
  var _wavesurfer$current3;
35294
35570
  function _temp3(_result3) {
35571
+ var _wavesurfer$current$i, _wavesurfer$current$i2;
35295
35572
  if (_exit) return _result3;
35296
- if (draft) {
35297
- return;
35298
- }
35573
+ setCurrentTime(((_wavesurfer$current$i = wavesurfer.current[id]) === null || _wavesurfer$current$i === void 0 ? void 0 : (_wavesurfer$current$i2 = _wavesurfer$current$i.decodedData) === null || _wavesurfer$current$i2 === void 0 ? void 0 : _wavesurfer$current$i2.duration) || 0);
35299
35574
  wavesurfer.current[id].on('ready', function () {
35300
35575
  setRecordingIsReadyToPlay(true);
35301
35576
  var audioDuration = wavesurfer.current[id].getDuration();
@@ -35407,7 +35682,6 @@ var AudioRecord = function AudioRecord(_ref) {
35407
35682
  recorder.stop().getMp3().then(function (_ref4) {
35408
35683
  var buffer = _ref4[0],
35409
35684
  blob = _ref4[1];
35410
- setCurrentTime(0);
35411
35685
  var file = new File(buffer, 'record.mp3', {
35412
35686
  type: blob.type,
35413
35687
  lastModified: Date.now()
@@ -35473,15 +35747,12 @@ var AudioRecord = function AudioRecord(_ref) {
35473
35747
  if ((_wavesurfer$current5 = wavesurfer.current) !== null && _wavesurfer$current5 !== void 0 && _wavesurfer$current5[cId || currentChannelId]) {
35474
35748
  if (!wavesurfer.current[cId || currentChannelId].isPlaying()) {
35475
35749
  setPlayAudio(true);
35476
- handleStartRecording();
35477
35750
  intervalRef.current[cId || currentChannelId] = setInterval(function () {
35478
35751
  var currentTime = wavesurfer.current[cId || currentChannelId].getCurrentTime();
35479
35752
  if (currentTime >= 0) {
35480
35753
  setCurrentTime(currentTime);
35481
35754
  }
35482
35755
  }, 10);
35483
- } else {
35484
- handleStopRecording();
35485
35756
  }
35486
35757
  wavesurfer.current[cId || currentChannelId].playPause();
35487
35758
  }
@@ -35597,6 +35868,7 @@ var AudioRecord = function AudioRecord(_ref) {
35597
35868
  setRecordedFile(audioRecording || null);
35598
35869
  setRecordingIsReadyToPlay(!!audioRecording);
35599
35870
  }
35871
+ handleStopRecording();
35600
35872
  setCurrentChannelId(channelId);
35601
35873
  }, [channelId]);
35602
35874
  return /*#__PURE__*/React__default.createElement(Container$j, {
@@ -36620,7 +36892,7 @@ var SendMessageInput = function SendMessageInput(_ref3) {
36620
36892
  }
36621
36893
  var dataFromDb;
36622
36894
  var _temp11 = _catch(function () {
36623
- return Promise.resolve(_getDataFromDB(DB_NAMES.FILES_STORAGE, DB_STORE_NAMES.ATTACHMENTS, checksumHash, 'checksum')).then(function (_getDataFromDB) {
36895
+ return Promise.resolve(getDataFromDB(DB_NAMES.FILES_STORAGE, DB_STORE_NAMES.ATTACHMENTS, checksumHash, 'checksum')).then(function (_getDataFromDB) {
36624
36896
  dataFromDb = _getDataFromDB;
36625
36897
  });
36626
36898
  }, function (e) {
@@ -36960,16 +37232,21 @@ var SendMessageInput = function SendMessageInput(_ref3) {
36960
37232
  }
36961
37233
  };
36962
37234
  }, []);
36963
- var filteredTypingOrRecordingIndicator = React.useMemo(function () {
36964
- return typingOrRecordingIndicator ? Object.values(typingOrRecordingIndicator).filter(function (item) {
37235
+ var typingOrRecording = React.useMemo(function () {
37236
+ var dataValues = typingOrRecordingIndicator ? Object.values(typingOrRecordingIndicator) : [];
37237
+ var filteredItems = dataValues.filter(function (item) {
36965
37238
  return item.typingState || item.recordingState;
36966
- }) : [];
36967
- }, [typingOrRecordingIndicator]);
36968
- var isTyping = React.useMemo(function () {
36969
- return !!filteredTypingOrRecordingIndicator.find(function (item) {
36970
- return item.typingState;
36971
37239
  });
36972
- }, [filteredTypingOrRecordingIndicator]);
37240
+ return {
37241
+ items: filteredItems,
37242
+ isTyping: !!filteredItems.find(function (item) {
37243
+ return item.typingState;
37244
+ }),
37245
+ isRecording: !!filteredItems.find(function (item) {
37246
+ return item.recordingState;
37247
+ })
37248
+ };
37249
+ }, [typingOrRecordingIndicator]);
36973
37250
  var formatTypingIndicatorText = function formatTypingIndicatorText(users, maxShownUsers) {
36974
37251
  if (maxShownUsers === void 0) {
36975
37252
  maxShownUsers = 3;
@@ -36978,7 +37255,7 @@ var SendMessageInput = function SendMessageInput(_ref3) {
36978
37255
  if (users.length === 1) {
36979
37256
  var _user = users[0];
36980
37257
  var userName = makeUsername(getFromContacts && _user.from && contactsMap[_user.from.id], _user.from, getFromContacts);
36981
- return "" + userName + (isTyping ? activeChannel.type === DEFAULT_CHANNEL_TYPE.DIRECT ? ' is typing' : '' : activeChannel.type === DEFAULT_CHANNEL_TYPE.DIRECT ? ' is recording' : '');
37258
+ return "" + userName + (typingOrRecording !== null && typingOrRecording !== void 0 && typingOrRecording.isTyping ? activeChannel.type === DEFAULT_CHANNEL_TYPE.DIRECT ? ' is typing' : '' : activeChannel.type === DEFAULT_CHANNEL_TYPE.DIRECT ? ' is recording' : '');
36982
37259
  }
36983
37260
  if (users.length <= maxShownUsers) {
36984
37261
  var userNames = users.map(function (user) {
@@ -37048,8 +37325,8 @@ var SendMessageInput = function SendMessageInput(_ref3) {
37048
37325
  }, "Join")) : (activeChannel.type === DEFAULT_CHANNEL_TYPE.BROADCAST || activeChannel.type === DEFAULT_CHANNEL_TYPE.PUBLIC ? !(activeChannel.userRole === 'admin' || activeChannel.userRole === 'owner') : activeChannel.type !== DEFAULT_CHANNEL_TYPE.DIRECT && !checkActionPermission('sendMessage')) ? (/*#__PURE__*/React__default.createElement(ReadOnlyCont, {
37049
37326
  color: textPrimary,
37050
37327
  iconColor: accentColor
37051
- }, /*#__PURE__*/React__default.createElement(SvgEye, null), " Read only")) : (/*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(TypingIndicator$1, null, filteredTypingOrRecordingIndicator.length > 0 && (CustomTypingIndicator ? (/*#__PURE__*/React__default.createElement(CustomTypingIndicator, {
37052
- from: filteredTypingOrRecordingIndicator.map(function (item) {
37328
+ }, /*#__PURE__*/React__default.createElement(SvgEye, null), " Read only")) : (/*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(TypingIndicator$1, null, (typingOrRecording === null || typingOrRecording === void 0 ? void 0 : typingOrRecording.items.length) > 0 && (CustomTypingIndicator ? (/*#__PURE__*/React__default.createElement(CustomTypingIndicator, {
37329
+ from: typingOrRecording === null || typingOrRecording === void 0 ? void 0 : typingOrRecording.items.map(function (item) {
37053
37330
  return {
37054
37331
  id: item.from.id,
37055
37332
  name: item.from.name,
@@ -37059,7 +37336,7 @@ var SendMessageInput = function SendMessageInput(_ref3) {
37059
37336
  })
37060
37337
  })) : (/*#__PURE__*/React__default.createElement(TypingIndicatorCont, null, /*#__PURE__*/React__default.createElement(TypingFrom, {
37061
37338
  color: textSecondary
37062
- }, formatTypingIndicatorText(filteredTypingOrRecordingIndicator, 3)), isTyping ? (/*#__PURE__*/React__default.createElement(TypingAnimation, {
37339
+ }, formatTypingIndicatorText(typingOrRecording === null || typingOrRecording === void 0 ? void 0 : typingOrRecording.items, 3)), typingOrRecording !== null && typingOrRecording !== void 0 && typingOrRecording.isTyping ? (/*#__PURE__*/React__default.createElement(TypingAnimation, {
37063
37340
  borderColor: iconInactive
37064
37341
  }, /*#__PURE__*/React__default.createElement(DotOne, null), /*#__PURE__*/React__default.createElement(DotTwo, null), /*#__PURE__*/React__default.createElement(DotThree, null))) : (/*#__PURE__*/React__default.createElement(RecordingAnimation, {
37065
37342
  borderColor: iconInactive
@@ -38829,7 +39106,7 @@ var Files = function Files(_ref) {
38829
39106
  text: '',
38830
39107
  styles: {
38831
39108
  background: {
38832
- fill: overlayBackground2 + "40"
39109
+ fill: overlayBackground2 + "66"
38833
39110
  },
38834
39111
  path: {
38835
39112
  stroke: accentColor,