jodit 4.12.43 → 4.12.44

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 (63) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/es2015/jodit.css +1 -1
  3. package/es2015/jodit.fat.min.js +3 -3
  4. package/es2015/jodit.js +44 -5
  5. package/es2015/jodit.min.js +3 -3
  6. package/es2015/plugins/debug/debug.css +1 -1
  7. package/es2015/plugins/debug/debug.js +1 -1
  8. package/es2015/plugins/debug/debug.min.js +1 -1
  9. package/es2015/plugins/speech-recognize/speech-recognize.css +1 -1
  10. package/es2015/plugins/speech-recognize/speech-recognize.js +1 -1
  11. package/es2015/plugins/speech-recognize/speech-recognize.min.js +1 -1
  12. package/es2018/jodit.fat.min.js +3 -3
  13. package/es2018/jodit.min.js +3 -3
  14. package/es2018/plugins/debug/debug.min.js +1 -1
  15. package/es2018/plugins/speech-recognize/speech-recognize.min.js +1 -1
  16. package/es2021/jodit.css +1 -1
  17. package/es2021/jodit.fat.min.js +5 -5
  18. package/es2021/jodit.js +44 -5
  19. package/es2021/jodit.min.js +5 -5
  20. package/es2021/plugins/debug/debug.css +1 -1
  21. package/es2021/plugins/debug/debug.js +1 -1
  22. package/es2021/plugins/debug/debug.min.js +1 -1
  23. package/es2021/plugins/speech-recognize/speech-recognize.css +1 -1
  24. package/es2021/plugins/speech-recognize/speech-recognize.js +1 -1
  25. package/es2021/plugins/speech-recognize/speech-recognize.min.js +1 -1
  26. package/es2021.en/jodit.css +1 -1
  27. package/es2021.en/jodit.fat.min.js +5 -5
  28. package/es2021.en/jodit.js +44 -5
  29. package/es2021.en/jodit.min.js +5 -5
  30. package/es2021.en/plugins/debug/debug.css +1 -1
  31. package/es2021.en/plugins/debug/debug.js +1 -1
  32. package/es2021.en/plugins/debug/debug.min.js +1 -1
  33. package/es2021.en/plugins/speech-recognize/speech-recognize.css +1 -1
  34. package/es2021.en/plugins/speech-recognize/speech-recognize.js +1 -1
  35. package/es2021.en/plugins/speech-recognize/speech-recognize.min.js +1 -1
  36. package/es5/jodit.css +2 -2
  37. package/es5/jodit.fat.min.js +2 -2
  38. package/es5/jodit.js +44 -5
  39. package/es5/jodit.min.css +2 -2
  40. package/es5/jodit.min.js +2 -2
  41. package/es5/plugins/debug/debug.css +1 -1
  42. package/es5/plugins/debug/debug.js +1 -1
  43. package/es5/plugins/debug/debug.min.js +1 -1
  44. package/es5/plugins/speech-recognize/speech-recognize.css +1 -1
  45. package/es5/plugins/speech-recognize/speech-recognize.js +1 -1
  46. package/es5/plugins/speech-recognize/speech-recognize.min.js +1 -1
  47. package/es5/polyfills.fat.min.js +1 -1
  48. package/es5/polyfills.js +1 -1
  49. package/es5/polyfills.min.js +1 -1
  50. package/esm/config.d.ts +22 -0
  51. package/esm/config.js +21 -0
  52. package/esm/core/constants.js +1 -1
  53. package/esm/core/storage/async-storage.d.ts +2 -2
  54. package/esm/core/storage/async-storage.js +19 -1
  55. package/esm/core/storage/engines/local-storage-provider.js +6 -1
  56. package/esm/core/view/view.js +1 -1
  57. package/esm/types/storage.d.ts +15 -0
  58. package/esm/types/view.d.ts +8 -1
  59. package/package.json +1 -1
  60. package/types/config.d.ts +22 -0
  61. package/types/core/storage/async-storage.d.ts +2 -2
  62. package/types/types/storage.d.ts +15 -0
  63. package/types/types/view.d.ts +8 -1
package/es5/jodit.js CHANGED
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit - Jodit is an awesome and useful wysiwyg editor with filebrowser
3
3
  * Author: Chupurnov <chupurnov@gmail.com> (https://xdsoft.net/jodit/)
4
- * Version: v4.12.43
4
+ * Version: v4.12.44
5
5
  * Url: https://xdsoft.net/jodit/
6
6
  * License(s): MIT
7
7
  */
@@ -378,6 +378,26 @@ var ConfigPrototype = {};
378
378
  /**
379
379
  * if set true, then the current mode is saved in a cookie, and is restored after a reload of the page
380
380
  */ (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_2__._)(this, "saveModeInStorage", false);
381
+ /**
382
+ * Configure the provider that backs {@link IViewBased.asyncStorage}.
383
+ *
384
+ * By default the editor's `asyncStorage` uses persistent `IndexedDB` (with an
385
+ * in-memory fallback when it is unavailable). Set `defaultProvider` to override it:
386
+ * - `'local'` — persist in `localStorage`;
387
+ * - `'memory'` — keep everything in memory (nothing survives a reload);
388
+ * - a custom {@link IAsyncStorage} implementation — plug in your own backend.
389
+ *
390
+ * ```javascript
391
+ * Jodit.make('#editor', {
392
+ * asyncStorage: { defaultProvider: 'local' }
393
+ * });
394
+ *
395
+ * // or a fully custom backend
396
+ * Jodit.make('#editor', {
397
+ * asyncStorage: { defaultProvider: myAsyncStorage }
398
+ * });
399
+ * ```
400
+ */ (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_2__._)(this, "asyncStorage", {});
381
401
  /**
382
402
  * Class name that can be appended to the editable area
383
403
  *
@@ -2087,7 +2107,7 @@ __webpack_require__.r(__webpack_exports__);
2087
2107
  * @packageDocumentation
2088
2108
  * @module constants
2089
2109
  */
2090
- var APP_VERSION = "4.12.43";
2110
+ var APP_VERSION = "4.12.44";
2091
2111
  // prettier-ignore
2092
2112
  var ES = "es5";
2093
2113
  var IS_ES_MODERN = false;
@@ -14997,9 +15017,23 @@ var AsyncStorage = /*#__PURE__*/ function() {
14997
15017
  {
14998
15018
  key: "makeStorage",
14999
15019
  value: function makeStorage() {
15000
- var persistentOrStrategy = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : false, suffix = arguments.length > 1 ? arguments[1] : void 0;
15020
+ var persistentOrStrategy = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : false, suffix = arguments.length > 1 ? arguments[1] : void 0, options = arguments.length > 2 ? arguments[2] : void 0;
15001
15021
  var provider = undefined;
15002
15022
  var storage = null;
15023
+ // An explicit `defaultProvider` overrides the strategy-based selection
15024
+ // below and decides which provider backs the storage.
15025
+ var defaultProvider = options === null || options === void 0 ? void 0 : options.defaultProvider;
15026
+ if (defaultProvider != null) {
15027
+ if (defaultProvider === 'local') {
15028
+ provider = (0,_engines_local_storage_provider__WEBPACK_IMPORTED_MODULE_7__.canUsePersistentStorage)('localStorage') ? new _engines_local_storage_provider__WEBPACK_IMPORTED_MODULE_7__.LocalStorageProvider(_storage__WEBPACK_IMPORTED_MODULE_9__.StorageKey + (suffix || '')) : new _engines_memory_storage_provider__WEBPACK_IMPORTED_MODULE_8__.MemoryStorageProvider();
15029
+ } else if (defaultProvider === 'memory') {
15030
+ provider = new _engines_memory_storage_provider__WEBPACK_IMPORTED_MODULE_8__.MemoryStorageProvider();
15031
+ } else {
15032
+ // A custom IAsyncStorage implementation, used as-is.
15033
+ provider = defaultProvider;
15034
+ }
15035
+ return new AsyncStorage(Promise.resolve(provider), suffix);
15036
+ }
15003
15037
  if (persistentOrStrategy === 'localStorage' || persistentOrStrategy === 'sessionStorage') {
15004
15038
  if ((0,_engines_local_storage_provider__WEBPACK_IMPORTED_MODULE_7__.canUsePersistentStorage)(persistentOrStrategy)) {
15005
15039
  provider = new _engines_local_storage_provider__WEBPACK_IMPORTED_MODULE_7__.LocalStorageProvider(_storage__WEBPACK_IMPORTED_MODULE_9__.StorageKey + (suffix || ''), persistentOrStrategy);
@@ -15728,7 +15762,12 @@ function clearUseIndexedDBCache() {
15728
15762
  key: "delete",
15729
15763
  value: function _delete(key) {
15730
15764
  try {
15731
- this.storage.removeItem(this.rootKey);
15765
+ var buffer = this.storage.getItem(this.rootKey);
15766
+ if (buffer) {
15767
+ var json = JSON.parse(buffer);
15768
+ delete json[key];
15769
+ this.storage.setItem(this.rootKey, JSON.stringify(json));
15770
+ }
15732
15771
  } catch (unused) {}
15733
15772
  return this;
15734
15773
  }
@@ -20269,7 +20308,7 @@ var View = /*#__PURE__*/ function(Component) {
20269
20308
  get: /**
20270
20309
  * Container for persistent set/get value
20271
20310
  */ function get() {
20272
- return jodit_core_storage_async_storage__WEBPACK_IMPORTED_MODULE_21__.AsyncStorage.makeStorage(true, this.id);
20311
+ return jodit_core_storage_async_storage__WEBPACK_IMPORTED_MODULE_21__.AsyncStorage.makeStorage(true, this.id, this.o.asyncStorage);
20273
20312
  }
20274
20313
  },
20275
20314
  {
package/es5/jodit.min.css CHANGED
@@ -1,14 +1,14 @@
1
1
  /*!
2
2
  * jodit - Jodit is an awesome and useful wysiwyg editor with filebrowser
3
3
  * Author: Chupurnov <chupurnov@gmail.com> (https://xdsoft.net/jodit/)
4
- * Version: v4.12.43
4
+ * Version: v4.12.44
5
5
  * Url: https://xdsoft.net/jodit/
6
6
  * License(s): MIT
7
7
  */
8
8
  /*!
9
9
  * jodit - Jodit is an awesome and useful wysiwyg editor with filebrowser
10
10
  * Author: Chupurnov <chupurnov@gmail.com> (https://xdsoft.net/jodit/)
11
- * Version: v4.12.43
11
+ * Version: v4.12.44
12
12
  * Url: https://xdsoft.net/jodit/
13
13
  * License(s): MIT
14
14
  */