File tree Expand file tree Collapse file tree 3 files changed +37
-8
lines changed Expand file tree Collapse file tree 3 files changed +37
-8
lines changed Original file line number Diff line number Diff line change 11{
22 "name" : " log-update-async-hook" ,
3- "version" : " 2.0.2 " ,
3+ "version" : " 2.0.3 " ,
44 "description" : " log-update fork that uses async-exit-hook internally" ,
55 "license" : " MIT" ,
66 "repository" : " AndreyBelym/log-update-async-hook" ,
77 "author" : {
88 "name" : " Andrey Belym" ,
99 "email" : " belym.a.2105@gmail.com"
1010 },
11- "contributors" : [{
12- "name" : " Sindre Sorhus" ,
13- "email" : " sindresorhus@gmail.com" ,
14- "url" : " sindresorhus.com"
15- }],
11+ "contributors" : [
12+ {
13+ "name" : " Sindre Sorhus" ,
14+ "email" : " sindresorhus@gmail.com" ,
15+ "url" : " sindresorhus.com"
16+ }
17+ ],
1618 "scripts" : {
1719 "test" : " node test.js"
1820 },
Original file line number Diff line number Diff line change @@ -7,21 +7,42 @@ var cliCursor = require('./cli-cursor');
77function main ( stream ) {
88 var prevLineCount = 0 ;
99
10+ var streamWrite = stream . write ;
11+
12+ var overridenWrite = function ( ...args ) {
13+ if ( prevLineCount )
14+ render . clear ( ) ;
15+
16+ return streamWrite . apply ( this , args ) ;
17+ } ;
18+
1019 var render = function ( ) {
1120 cliCursor . hide ( ) ;
21+
22+ if ( stream . write !== overridenWrite ) {
23+ streamWrite = stream . write ;
24+ stream . write = overridenWrite
25+ }
26+
1227 var out = [ ] . join . call ( arguments , ' ' ) + '\n' ;
28+
1329 out = wrapAnsi ( out , process . stdout . columns || 80 , { wordWrap : false } ) ;
14- stream . write ( ansiEscapes . eraseLines ( prevLineCount ) + out ) ;
30+
31+ streamWrite . call ( stream , ansiEscapes . eraseLines ( prevLineCount ) + out ) ;
32+
1533 prevLineCount = out . split ( '\n' ) . length ;
1634 } ;
1735
1836 render . clear = function ( ) {
19- stream . write ( ansiEscapes . eraseLines ( prevLineCount ) ) ;
37+ streamWrite . call ( stream , ansiEscapes . eraseLines ( prevLineCount ) ) ;
38+
2039 prevLineCount = 0 ;
2140 } ;
2241
2342 render . done = function ( ) {
2443 prevLineCount = 0 ;
44+ stream . write = streamWrite ;
45+
2546 cliCursor . show ( ) ;
2647 } ;
2748
Original file line number Diff line number Diff line change @@ -17,6 +17,12 @@ const int = setInterval(() => {
1717} , 100 ) ;
1818
1919setTimeout ( logUpdate . done , 1000 ) ;
20+
21+ setTimeout ( ( ) => {
22+ console . log ( 'some log' ) ;
23+ console . error ( 'some error' ) ;
24+ } , 2000 ) ;
25+
2026setTimeout ( logUpdate . done , 3000 ) ;
2127
2228setTimeout ( ( ) => {
You can’t perform that action at this time.
0 commit comments