reviver.js 784 B

1234567891011121314151617181920212223242526
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", {
  3. value: true
  4. });
  5. exports.createReviver = void 0;
  6. var _factory = require("../utils/factory.js");
  7. var name = 'reviver';
  8. var dependencies = ['classes'];
  9. var createReviver = /* #__PURE__ */(0, _factory.factory)(name, dependencies, function (_ref) {
  10. var classes = _ref.classes;
  11. /**
  12. * Instantiate mathjs data types from their JSON representation
  13. * @param {string} key
  14. * @param {*} value
  15. * @returns {*} Returns the revived object
  16. */
  17. return function reviver(key, value) {
  18. var constructor = classes[value && value.mathjs];
  19. if (constructor && typeof constructor.fromJSON === 'function') {
  20. return constructor.fromJSON(value);
  21. }
  22. return value;
  23. };
  24. });
  25. exports.createReviver = createReviver;