diff.transform.js 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. import { factory } from '../../utils/factory.js';
  2. import { errorTransform } from './utils/errorTransform.js';
  3. import { createDiff } from '../../function/matrix/diff.js';
  4. import { lastDimToZeroBase } from './utils/lastDimToZeroBase.js';
  5. var name = 'diff';
  6. var dependencies = ['typed', 'matrix', 'subtract', 'number', 'bignumber'];
  7. export var createDiffTransform = /* #__PURE__ */factory(name, dependencies, _ref => {
  8. var {
  9. typed,
  10. matrix,
  11. subtract,
  12. number,
  13. bignumber
  14. } = _ref;
  15. var diff = createDiff({
  16. typed,
  17. matrix,
  18. subtract,
  19. number,
  20. bignumber
  21. });
  22. /**
  23. * Attach a transform function to math.diff
  24. * Adds a property transform containing the transform function.
  25. *
  26. * This transform creates a range which includes the end value
  27. */
  28. return typed(name, {
  29. '...any': function any(args) {
  30. args = lastDimToZeroBase(args);
  31. try {
  32. return diff.apply(null, args);
  33. } catch (err) {
  34. throw errorTransform(err);
  35. }
  36. }
  37. });
  38. }, {
  39. isTransformFunction: true
  40. });