Releases: webdiscus/ansis
v3.17.0
v3.17.0
Features
Added support for typescript
< 5.6
to fix TS2526 error.
This update fixes the TS2526 error in older TypeScript versions (< 5.6):
A 'this' type is available only in a non-static member of a class or interface.
Note
If you are already using TypeScript >= 5.6, this update is not required.
v3.16.0
v3.14.0
v3.14.0
Cumulative Release v3.6.0 - v3.14.0
Features
-
Added support for chromium-based browsers.
Now you can use truecolor in the consoles of Chrome, Edge, Opera, Brave, Vivaldi and other Chromium-based browsers.
Browsers that do not support ANSI codes will display black and white text. -
Added support for
\n
as a newline in template literals, e.g.:green`Hello\nWorld`
renders:Hello World
-
Function
ansis.reset()
returns the reset escape code\e[0m
. -
Enforce a specific color support by a
FORCE_COLOR
value:- false - Disables colors
- 0 - Disables colors
- true (or unset) - Auto detects the supported colors (if no color detected, enforce truecolor)
- 1 - Enables 16 colors
- 2 - Enables 256 colors
- 3 - Enables truecolor
-
Removed undocumented pointless dummy function
ansis(any)
.
Warning
This is not a BREAKING CHANGE because it was never officially documented!
import ansis from 'ansis';
ansis('text'); // <= now will occur the ERROR TS2349: This expression is not callable.
This warning applies only to projects where Chalk was replaced with Ansis and something like chalk('text')
was used.
Just replace ansis('text')
with 'text'
.
The ansis('text')
function was a dummy and did nothing except return the same input string.
- Added support for legacy Node.js v14 (in package.json for npm was changed the
engines
to"node": ">=14"
). - Micro optimisations for slight performance improvements.
Bug Fixes
- If the function argument is an empty string should be returned an empty string w/o escape codes:
ansis.red('') => '', // returns empty string w/o escape codes
- Cast falsy values
false
andNaN
to a string.
In previous versions, the empty string''
was returned for falsy values. - Functions with argument
0
, e.g.ansis.red(0)
, returning empty string''
, now return colored value'0'
v3.5.2
v3.5.2
Features
- Optimised the npm package size from
10.3
kB to7.0 kB
.Now, Ansis is the
smallest
yet most powerful library withrich functionality
.
A slightly smaller ispicocolors
(6.4 kB), but it offers onlybasic functionality
. - Added detection of the
xterm-direct
terminal as supportingtruecolor
. - Added support for the
COLORTERM
environment variable with the following values:truecolor
,24bit
,ansi256
,ansi
(16 colors).
Bug Fixes (TypeScript)
- Fixed default import in
TypeScript
compiled withtsc
:
import ansis from 'ansis'
now works so well asimport * as ansis from 'ansis'
. - Fixed the TS2339: Property 'strip' does not exist on type when the
tsc
optionmodule
isnode16
.
v3.4.0
v3.4.0
Cumulative Release v3.3.2 - v3.4.0
Bug Fixes
- Correct detect TTY on Windows platform.
Chore
- Optimised the npm package to reduce size by ~1.1 kB, from 11.4 kB to 10.3 kB.
- Added benchmarks for
kolorist
package. - Added new representative benchmarks by using combination of 1, 2, 3 and 4 styles.
- Refactor: invisible code optimisations.
v3.3.1
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
Chore
- Deleted
old
named import syntax DEPRECATED inv2.0.0
(2023-11-03)
If you update the package fromv1.x
tov3.3.0
then check your code:
ESMCJS- import { red } from 'ansis/colors'; + import { red } from 'ansis';
- const { red } = require('ansis/colors'); + const { red } = require('ansis');
- Cleanup
pickages.json
for NPM - Updated
README
for NPM
v3.2.1
v3.2.0
Features
- Added
ansis.isSupported()
method to detect color support.
v3.1.1
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.