Skip to content

Releases: webdiscus/ansis

v3.3.1

18 Jul 15:10
84bb0e3
Compare
Choose a tag to compare

Chore

  • Improved performance, e.g. using chained styles: 70.000.000 -> 80.000.000 ops/sec
  • Optimised the code to reduce the size by ~600 bytes.
  • Minified index.d.ts to reduce the size by ~200 bytes.
  • Optimised README for NPM package to reduce the size by ~1 KB.

v3.3.0

14 Jul 17:23
d700050
Compare
Choose a tag to compare

Chore

  • Deleted old named import syntax DEPRECATED in v2.0.0 (2023-11-03)
    If you update the package from v1.x to v3.3.0 then check your code:
    ESM
    - import { red } from 'ansis/colors';
    + import { red } from 'ansis';
    CJS
    - const { red } = require('ansis/colors');
    + const { red } = require('ansis');
  • Cleanup pickages.json for NPM
  • Updated README for NPM

v3.2.1

12 Jul 10:19
d1be810
Compare
Choose a tag to compare

Chore

  • Reduce unpacked size of NPM package by ~ 1 KB
  • Optimized README for NPM

v3.2.0

06 Jun 08:56
7400c8a
Compare
Choose a tag to compare

Features

v3.1.1

15 Apr 13:45
8769dc8
Compare
Choose a tag to compare

Cumulative Release v3.0.1 - v3.1.1

Features

  • Added detection of color support when using PM2 process manager.

Bug Fixes

  • Correct interpret FORCE_COLOR=false or FORCE_COLOR=0 as force disable colors
    others values, e.g., FORCE_COLOR=true or FORCE_COLOR=1 - force enable colors.
    See https://force-color.org.

Chore

  • Reduce unpacked size from 49 KB to 14 KB.

v3.0.0

30 Mar 14:07
96a2a47
Compare
Choose a tag to compare

Features

  • Added detection of color spaces support: TrueColor, 256 colors, 16 colors, no color (black & white).
  • Added fallback for supported color space: truecolor —> 256 colors —> 16 colors —> no colors.
  • Improved performance for the hex() function.

BREAKING CHANGE

In the new major version 3.x are removed unused styles and methods.

⚠️ Warning

Before update, please check your code whether is used deleted styles and methods.

Support Node.js

Drop supports for Node <= 14. Minimal supported version is 15.0.0 (Released 2020-10-20).
In the theory the v3 can works with Node12, but we can't test it.

Deleted styles

The not widely supported styles are deleted:

  • faint (alias for dim), replace in your code with dim
  • doubleUnderline, replace in your code with underline
  • frame, replace in your code with underline
  • encircle, replace in your code with underline
  • overline, replace in your code with underline

Deleted methods

The methods are deleted:

  • ansi, replace in your code with ansi256 or fg
  • bgAnsi, replace in your code with bgAnsi256 or bg

Deleted clamp in functions

The clamp (0, 255) for the ANSI 256 codes and RGB values is removed, because is unused.
You should self check the function arguments.

The affected functions:

  • ansi256 and fg (alias to ansi256) - expected a code in the range 0 - 255
  • bgAnsi256 and bg (alias to bgAnsi256) - expected a code in the range0 - 255
  • rgb - expected r, g, b values in the range 0 - 255
  • bgRgb - expected r, g, b values in the range 0 - 255

v2.3.0

29 Mar 23:13
07010f1
Compare
Choose a tag to compare

Cumulative Release v2.0.1 - v2.3.0

Features

  • Added detection of additional terminals, thanks @dse, colors.js:issue #42.
  • Added supports the argument as number.
  • Added bgGrey and bgGray aliases for bgBlackBright.

Bug Fixes

  • Fixed index.d.ts to use function overload to make the tagged template have the correct type, #16.
  • Fixed when could not be found a declaration file for module 'ansis'.

v2.0.0

03 Nov 11:53
Compare
Choose a tag to compare

Features

  • Added support for Deno.
  • Added support for Next.js edge runtime.
  • Added NEW named import for ansis:
    import { red } from 'ansis';
    For example:
    NEW v2.x.x
    import ansis, { red } from 'ansis'; // default and named import
    ansis.red`error`;
    red`error`;
    OLD v1.5.x
    import ansis from 'ansis'; // default import
    import { red } from 'ansis/colors'; // named import
    ansis.red`error`;
    red`error`;
  • Optimised named export into one file to avoid separate wraps files for CJS and ESM.
  • Reduced the size of dist/ directory by 50%.

BREAKING CHANGE (TypeScript only)

The deprecated OLD named import from 'ansis/colors' still works, but using TypeScript can be occurred the error:

TS2307: Cannot find module ansis/colors ...

Solution: update your code, e.g.: import { red } from 'ansis/colors' --> import { red } from 'ansis'

DEPRECATIONS

  • OLD named import import { red } from 'ansis/colors' is deprecated, use the NEW named import.
  • The barely used ansi() function name is deprecated, use ansi256() or alias fg() instead.
  • The barely used bgAnsi() function name is deprecated, use bgAnsi256() or alias bg() instead.

v1.5.5

31 Jul 09:58
Compare
Choose a tag to compare

Cumulative Release v1.3.0 - v1.5.5

Features

  • Added support for nested template literal syntax:
    console.log(red`red ${yellow`yellow ${green`green`} yellow`} red`)
  • Added named export of colors with support for chained syntax:
    import { red, green, yellow } from 'ansis/colors';
    console.log(red.bold.underline`text`);
  • Added extending of base colors with named custom truecolor:
    import ansis from 'ansis';
    ansis.extend({ orange: '#FFAB40' });
    console.log(ansis.orange.bold('text'));
  • Added the strip() method to remove all ANSI codes from string
  • Added UK spelling alias grey for gray
  • Added support for both CommonJS and ESM
  • Added aliases: .fg() for .ansi256() and .bg() for .bgAnsi256() methods
  • Optimized distributed code size to less than 4 KB.

Bug Fixes

  • Fixed visible style with nested template strings
  • Set correct aliases for bgAnsi and fg methods by named export
  • Regard the value of the environment variable FORCE_COLOR=0 to force disable colors

v1.2.2

28 Dec 20:12
Compare
Choose a tag to compare

Cumulative Release v1.1.0 - v1.2.2

Features

  • Added supports the environment variables NO_COLOR FORCE_COLOR and flags --no-color --color
  • Added aliases .ansi() for .ansi256() and .bgAnsi() for .bgAnsi256() methods
  • Added support for the use of open and close properties for each style
  • Improve performance

Bug Fixes

  • Fixed ANSI codes for ansi256() and bgAnsi256() methods