| 123456789101112131415161718192021 |
- import { interpolate } from './interpolate.mjs';
- const isCustomValueType = (v) => {
- return v && typeof v === "object" && v.mix;
- };
- const getMixer = (v) => (isCustomValueType(v) ? v.mix : undefined);
- function transform(...args) {
- const useImmediate = !Array.isArray(args[0]);
- const argOffset = useImmediate ? 0 : -1;
- const inputValue = args[0 + argOffset];
- const inputRange = args[1 + argOffset];
- const outputRange = args[2 + argOffset];
- const options = args[3 + argOffset];
- const interpolator = interpolate(inputRange, outputRange, {
- mixer: getMixer(outputRange[0]),
- ...options,
- });
- return useImmediate ? interpolator(inputValue) : interpolator;
- }
- export { transform };
|