JSPM

  • Created
  • Published
  • Downloads 21444
  • Score
    100M100P100Q176182F
  • License MIT

Convert shorthand hex color codes into full

Package Exports

  • color-shorthand-hex-to-six-digit

Readme

color-shorthand-hex-to-six-digit

Convert shorthand hex color codes into full

Install

This package is ESM only: Node 12+ is needed to use it and it must be imported instead of required:

npm i color-shorthand-hex-to-six-digit

If you need a legacy version which works with require, use version 3.1.0

Quick Take

import { strict as assert } from "assert";
import { conv } from "color-shorthand-hex-to-six-digit";

// converts shorthand hex color codes within strings (imagine that could be
// email template source code):
assert.equal(
  conv("aaaa #f0c zzzz\n\t\t\t#fc0"),
  "aaaa #ff00cc zzzz\n\t\t\t#ffcc00"
);

// converts shorthand hex colour codes within plain objects:
assert.deepEqual(
  conv({
    a: "#ffcc00",
    b: "#f0c",
    c: "text",
  }),
  {
    a: "#ffcc00",
    b: "#ff00cc",
    c: "text",
  }
);

// converts shorthand hex colour codes within arrays:
assert.deepEqual(conv(["#fc0", "#f0c", "text", ""]), [
  "#ffcc00",
  "#ff00cc",
  "text",
  "",
]);

// converts shorthand hex colour codes within nested spaghetti's:
assert.deepEqual(
  conv([[[[[[{ x: ["#fc0"] }]]]]], { z: "#f0c" }, ["text"], { y: "" }]),
  [[[[[[{ x: ["#ffcc00"] }]]]]], { z: "#ff00cc" }, ["text"], { y: "" }]
);

// in all other cases it silently returns the input:
assert.equal(conv(null), null);

Documentation

Please visit codsen.com for a full description of the API and examples.

Contributing

To report bugs or request features or assistance, raise an issue on GitHub.

Licence

MIT License

Copyright (c) 2010-2021 Roy Revelt and other contributors

ok codsen star