1.4.0 • Published 6 years ago

scrollable-string v1.4.0

Weekly downloads
5
License
MIT
Repository
github
Last release
6 years ago

scrollable-string

Generate a diff friendly string that is bounded by a configurable scroll box.

npm install scrollable-string

Build Status

Made for usage with ansi-diff-stream and friends

Usage

var scrollable = require('scrollable-string')

var multiLineString = `
  foo
  bar
  baz
`

var str = scrollable(multiLineString, {
  maxHeight: 2 // max 32 rows high
})

console.log(str.toString()) // prints foo\nbar\n
str.down()
console.log(str.toString()) // prints bar\nbaz\n
str.down()
console.log(str.toString()) // still prints bar\nbaz\n

API

var str = scrollable(string, [options])

Create a new scrollable string. Options include:

{
  maxHeight: 32, // max rows height
  minHeight: 0 // min height (will pad the input string)
}

Event: update

Emitted after either str.up() or str.down() have been sucessfully called.

var moved = str.setPosition(pos)

Set absolute scroll position.

Returns true if the position changed, false if not.

var moved = str.up()

Move the view-port up.

Returns true if the position changed, false if not.

var moved = str.down()

Move the view-port down.

Returns true if the position changed, false if not.

var moved = str.move(inc)

Move the view-port up or down, i.e str.move(-5) to move 5 lines up.

Returns true if the position changed, false if not.

var moved = str.bottom()

Move to bottom.

Returns true if the position changed, false if not.

var moved = str.top()

Move to top.

Returns true if the position changed, false if not.

var rows = str.height()

Returns the height of the string in rows.

var changed = str.resize(options)

Resize the view-port. Takes same options as the constructor.

Returns true if either the position or the height changed, false if not.

var string = str.toString()

Returns the string rendered by the view-port.

var percentage = str.pct()

Returns the current scroll position in percent (a number between 0 and 1).

var bool = str.atBottom()

Check if the view-port is at the bottom.

var bool = str.atTop()

Check if the view-port is at the top.

var bool = str.scrollable()

Check if the view-port is not at the top or bottom.

License

MIT

1.4.0

6 years ago

1.3.1

6 years ago

1.3.0

7 years ago

1.2.0

7 years ago

1.1.2

7 years ago

1.1.1

7 years ago

1.1.0

7 years ago

1.0.1

7 years ago

1.0.0

7 years ago