@truffle/spinners

v0.2.5
CLI spinners singleton
compile ethereum etherscan ipfs solidity sourcify verify-source

@truffle/spinners

This is used to manage multiple CLI spinners. It is essentially just a wrapper around the spinnies library that keeps a single instance of the spinnies object in module-level scope.

Usage

Typical example

import { Spinner } from "@truffle/spinners";

const spinner = new Spinner("unique-spinner-name", "watch me spin!");

try {
  await someLongRunningTask();
  spinner.succeed("Phew! 😅");
} catch {
  spinner.fail("Whoops, got too dizzy and fell over! 😵");
}

Hide on completion

import { Spinner } from "@truffle/spinners";

const spinner = new Spinner("unique-spinner-name", "Now you see me");

await someLongRunningTask();
spinner.remove();

Text updates

import { Spinner } from "@truffle/spinners";

const spinner = new Spinner("unique-spinner-name", "Reticulating splines...");

try {
  await reticulateSplines();

  spinner.text = "Perturbing Matrices";
  Promise.all(matrices.map(perturb));

  spinner.text = "Charging Ozone Layer";
  await ozoneLayer.charge();

  spinner.succeed();
} catch {
  spinner.fail("Darn it!");
}
npm i @truffle/spinners

Metadata

  • MIT
  • ^16.20 || ^18.16 || >=20
  • Ben Burns
  • released 9/7/2023

Downloads