utils.js 823 B

123456789101112131415161718192021222324
  1. import Storage from '@converse/skeletor/src/storage.js';
  2. import _converse from '@converse/headless/shared/_converse';
  3. import log from '@converse/headless/log';
  4. import u from '@converse/headless/utils/core';
  5. export function createStore (id, storage) {
  6. const s = _converse.storage[storage || _converse.getDefaultStore()];
  7. return new Storage(id, s);
  8. }
  9. export function replacePromise (name) {
  10. const existing_promise = _converse.promises[name];
  11. if (!existing_promise) {
  12. throw new Error(`Tried to replace non-existing promise: ${name}`);
  13. }
  14. if (existing_promise.replace) {
  15. const promise = u.getResolveablePromise();
  16. promise.replace = existing_promise.replace;
  17. _converse.promises[name] = promise;
  18. } else {
  19. log.debug(`Not replacing promise "${name}"`);
  20. }
  21. }