{"version":3,"file":"Color.cjs","sources":["../../../../../../../../.yarn/berry/cache/chroma-js-npm-3.2.0-d5c39f5077-10c0.zip/node_modules/chroma-js/src/Color.js"],"sourcesContent":["import { last, clip_rgb, type } from './utils/index.js';\nimport _input from './io/input.js';\n\nclass Color {\n    constructor(...args) {\n        const me = this;\n        if (\n            type(args[0]) === 'object' &&\n            args[0].constructor &&\n            args[0].constructor === this.constructor\n        ) {\n            // the argument is already a Color instance\n            return args[0];\n        }\n        // last argument could be the mode\n        let mode = last(args);\n        let autodetect = false;\n        if (!mode) {\n            autodetect = true;\n\n            if (!_input.sorted) {\n                _input.autodetect = _input.autodetect.sort((a, b) => b.p - a.p);\n                _input.sorted = true;\n            }\n\n            // auto-detect format\n            for (let chk of _input.autodetect) {\n                mode = chk.test(...args);\n                if (mode) break;\n            }\n        }\n        if (_input.format[mode]) {\n            const rgb = _input.format[mode].apply(\n                null,\n                autodetect ? args : args.slice(0, -1)\n            );\n            me._rgb = clip_rgb(rgb);\n        } else {\n            throw new Error('unknown format: ' + args);\n        }\n        // add alpha channel\n        if (me._rgb.length === 3) me._rgb.push(1);\n    }\n    toString() {\n        if (type(this.hex) == 'function') return this.hex();\n        return `[${this._rgb.join(',')}]`;\n    }\n}\nexport default Color;\n"],"names":["_input"],"mappings":";;;;;AAGA,MAAM,MAAM;AAAA,EACR,eAAe,MAAM;AACjB,UAAM,KAAK;AACX,QACI,KAAK,KAAK,CAAC,CAAC,MAAM,YAClB,KAAK,CAAC,EAAE,eACR,KAAK,CAAC,EAAE,gBAAgB,KAAK,aAC/B;AAEE,aAAO,KAAK,CAAC;AAAA,IACjB;AAEA,QAAI,OAAO,KAAK,IAAI;AACpB,QAAI,aAAa;AACjB,QAAI,CAAC,MAAM;AACP,mBAAa;AAEb,UAAI,CAACA,MAAO,QAAQ;AAChBA,cAAO,aAAaA,MAAO,WAAW,KAAK,CAAC,GAAG,MAAM,EAAE,IAAI,EAAE,CAAC;AAC9DA,cAAO,SAAS;AAAA,MACpB;AAGA,eAAS,OAAOA,MAAO,YAAY;AAC/B,eAAO,IAAI,KAAK,GAAG,IAAI;AACvB,YAAI,KAAM;AAAA,MACd;AAAA,IACJ;AACA,QAAIA,MAAO,OAAO,IAAI,GAAG;AACrB,YAAM,MAAMA,MAAO,OAAO,IAAI,EAAE;AAAA,QAC5B;AAAA,QACA,aAAa,OAAO,KAAK,MAAM,GAAG,EAAE;AAAA,MACpD;AACY,SAAG,OAAO,SAAS,GAAG;AAAA,IAC1B,OAAO;AACH,YAAM,IAAI,MAAM,qBAAqB,IAAI;AAAA,IAC7C;AAEA,QAAI,GAAG,KAAK,WAAW,EAAG,IAAG,KAAK,KAAK,CAAC;AAAA,EAC5C;AAAA,EACA,WAAW;AACP,QAAI,KAAK,KAAK,GAAG,KAAK,WAAY,QAAO,KAAK,IAAG;AACjD,WAAO,IAAI,KAAK,KAAK,KAAK,GAAG,CAAC;AAAA,EAClC;AACJ;;","x_google_ignoreList":[0]}