()
| 127510 | return target.domain(source.domain()).range(source.range()).interpolate(source.interpolate()).clamp(source.clamp()).unknown(source.unknown()); |
| 127511 | } |
| 127512 | function transformer() { |
| 127513 | var domain = unit, range = unit, interpolate = (0, _d3Interpolate.interpolate), transform, untransform, unknown, clamp = identity, piecewise, output, input; |
| 127514 | function rescale() { |
| 127515 | var n = Math.min(domain.length, range.length); |
| 127516 | if (clamp !== identity) clamp = clamper(domain[0], domain[n - 1]); |
| 127517 | piecewise = n > 2 ? polymap : bimap; |
| 127518 | output = input = null; |
| 127519 | return scale; |
| 127520 | } |
| 127521 | function scale(x) { |
| 127522 | return x == null || isNaN(x = +x) ? unknown : (output || (output = piecewise(domain.map(transform), range, interpolate)))(transform(clamp(x))); |
| 127523 | } |
| 127524 | scale.invert = function(y) { |
| 127525 | return clamp(untransform((input || (input = piecewise(range, domain.map(transform), (0, _d3Interpolate.interpolateNumber))))(y))); |
| 127526 | }; |
| 127527 | scale.domain = function(_) { |
| 127528 | return arguments.length ? (domain = Array.from(_, (0, _numberJsDefault.default)), rescale()) : domain.slice(); |
| 127529 | }; |
| 127530 | scale.range = function(_) { |
| 127531 | return arguments.length ? (range = Array.from(_), rescale()) : range.slice(); |
| 127532 | }; |
| 127533 | scale.rangeRound = function(_) { |
| 127534 | return range = Array.from(_), interpolate = (0, _d3Interpolate.interpolateRound), rescale(); |
| 127535 | }; |
| 127536 | scale.clamp = function(_) { |
| 127537 | return arguments.length ? (clamp = _ ? true : identity, rescale()) : clamp !== identity; |
| 127538 | }; |
| 127539 | scale.interpolate = function(_) { |
| 127540 | return arguments.length ? (interpolate = _, rescale()) : interpolate; |
| 127541 | }; |
| 127542 | scale.unknown = function(_) { |
| 127543 | return arguments.length ? (unknown = _, scale) : unknown; |
| 127544 | }; |
| 127545 | return function(t, u) { |
| 127546 | transform = t, untransform = u; |
| 127547 | return rescale(); |
| 127548 | }; |
| 127549 | } |
| 127550 | function continuous() { |
| 127551 | return transformer()(identity, identity); |
| 127552 | } |
no test coverage detected