Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

cli-pages

Package Overview
Dependencies
Maintainers
1
Versions
22
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

cli-pages

pagination for command line apps

  • 1.1.2
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
0
decreased by-100%
Maintainers
1
Weekly downloads
 
Created
Source

logo


Contents

About

cli-pages is used to easily create pages for your command line interfaces and apps in no time! It has all the features you possibly need! pages can be toggled by using custom words like 'n' or 'next' and 'p' or 'previous' or any other custom word. Custom words for exiting the book can also be set using .setCloseKey() function available in the 'Book' class.

logo

Installation

npm install cli-pages

Example Usage


Creation

const { Book } = require("cli-pages");

let pages = new Book([
    {
        title: "Welcome to my app!",
        content: "This app does a lot of stuff! It can help you build a rocket!",
        footer: "Hope you enjoy!"
    },
    {
        title: "This is Amazing!",
        content: "epic!",
        footer: "Hope you understood!"
    },
    {
        title: "Thank you!",
        content: "Thank you for using my app! I really appreciate it!",
        footer: "<3"
    }
]);

OR

let pages = new Book();

pages.addPage({
    title: "Welcome to my app!",
    content: "This app does a lot of stuff! It can help you build a rocket!",
    footer: "Hope you enjoy!"
});
...

Displaying the pages in the terminal

const { Book } = require("cli-pages");

let pages = new Book([
    {
        title: "Welcome to my app!",
        content: "This app does a lot of stuff! It can help you build a rocket!",
        footer: "Hope you enjoy!"
    },
    {
        title: "This is Amazing!",
        content: "epic!",
        footer: "Hope you understood!"
    },
    {
        title: "Thank you!",
        content: "Thank you for using my app! I really appreciate it!",
        footer: "<3"
    }
]);

pages.open(); // displays the pages in the terminal

setTimeout(function(){
   pages.close(); // ends the page session and stops displaying the code after 60 seconds.
}, 60000)

Examples on how to edit, remove pages, get number of pages, set custom configurations can be found here

Documentation

Pages are created by using the 'Book' class that is included in this package.

Initializing

const { Book } = require("cli-pages"); // importing the class from the package

let pages = new Book(); // creating our pages

.addPage()

const { Book } = require("cli-pages"); 

let pages = new Book([
   {
      title: "hello!",
      content: "cli-pages is the best!",
      footer: "Thanks!"
   }
]);

There is an alternative to the above code! Use the .addPage() function

Parameters:

  • type: object
  • structure: { title: string, content: any, footer: string | undefined }
const { Book } = require("cli-pages"); 

let pages = new Book();

pages.addPage({
  title: "hello!",
  content: "cli-pages is the best!",
  footer: "Thanks!"
});

.removePage()

Parameters:

  • type: number
  • structure: page-number: number
const { Book } = require("cli-pages"); 

let pages = new Book();

pages.addPage({
  title: "hello!",
  content: "cli-pages is the best!",
  footer: "Thanks!"
});

pages.addPage({
  title: "sup!",
  content: "cli-pages is the worst!",
  footer: "Nope!"
});

pages.removePage(2); // removes the 2nd page [titled 'sup!']

.editPage()

Parameters:

  • type: number, object
  • structure: page-number, { title: string, content: any, footer: string | undefined }
const { Book } = require("cli-pages"); 

let pages = new Book();

pages.addPage({
  title: "hello!",
  content: "cli-pages is the best!",
  footer: "Thanks!"
});

pages.addPage({
  title: "sup!",
  content: "cli-pages is the worst!",
  footer: "Nope!"
});

pages.editPage(1, { content: "this is the new content!" }); // edits content of the 1st page

.hasPage()

Parameters:

  • type: number
  • structure: page-number: number
const { Book } = require("cli-pages"); 

let pages = new Book();

pages.addPage({
  title: "hello!",
  content: "cli-pages is the best!",
  footer: "Thanks!"
});

pages.addPage({
  title: "sup!",
  content: "cli-pages is the worst!",
  footer: "Nope!"
});

pages.hasPage(2); // returns true
pages.hasPage(6); // returns false

.size()

Parameters: none

const { Book } = require("cli-pages"); 

let pages = new Book();

pages.addPage({
  title: "hello!",
  content: "cli-pages is the best!",
  footer: "Thanks!"
});

pages.addPage({
  title: "sup!",
  content: "cli-pages is the worst!",
  footer: "Nope!"
});

console.log(pages.size()); // prints 2

.open()

Parameters: none

const { Book } = require("cli-pages"); 

let pages = new Book();

pages.addPage({
  title: "hello!",
  content: "cli-pages is the best!",
  footer: "Thanks!"
});

pages.addPage({
  title: "sup!",
  content: "cli-pages is the worst!",
  footer: "Nope!"
});

pages.open(); // displays the book in the console

.close()

Parameters: none

const { Book } = require("cli-pages"); 

let pages = new Book();

pages.addPage({
  title: "hello!",
  content: "cli-pages is the best!",
  footer: "Thanks!"
});

pages.addPage({
  title: "sup!",
  content: "cli-pages is the worst!",
  footer: "Nope!"
});

pages.open(); // displays the book in the console

setTimeout(function(){
   pages.close(); // used to close the book. here it closes after 60 seconds of use
}, 60000)

.setCloseKey()

Parameters:

  • type: string
  • structure: key: string
const { Book } = require("cli-pages"); 

let pages = new Book();

pages.addPage({
  title: "hello!",
  content: "cli-pages is the best!",
  footer: "Thanks!"
});

pages.addPage({
  title: "sup!",
  content: "cli-pages is the worst!",
  footer: "Nope!"
});

pages.setCloseKey("exit"); // 'exit' here will be used to close the book on prompt

🤝 Contribution

For contributing to this project, fork the repository here, make the changes and open a pull request! Pull requests will be reviewed before being merged.

🐛 Bugs

Found a bug? Having an issue with the package? Open a new issue here!

Keywords

FAQs

Package last updated on 13 Jul 2021

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc