source: node_modules/d3-scale/src/identity.js@ a762898

Last change on this file since a762898 was e4c61dd, checked in by istevanoska <ilinastevanoska@…>, 6 months ago

Prototype 1.1

  • Property mode set to 100644
File size: 654 bytes
Line 
1import {linearish} from "./linear.js";
2import number from "./number.js";
3
4export default function identity(domain) {
5 var unknown;
6
7 function scale(x) {
8 return x == null || isNaN(x = +x) ? unknown : x;
9 }
10
11 scale.invert = scale;
12
13 scale.domain = scale.range = function(_) {
14 return arguments.length ? (domain = Array.from(_, number), scale) : domain.slice();
15 };
16
17 scale.unknown = function(_) {
18 return arguments.length ? (unknown = _, scale) : unknown;
19 };
20
21 scale.copy = function() {
22 return identity(domain).unknown(unknown);
23 };
24
25 domain = arguments.length ? Array.from(domain, number) : [0, 1];
26
27 return linearish(scale);
28}
Note: See TracBrowser for help on using the repository browser.