Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

bowhead-js

mgenware10MIT6.0.2TypeScript support: included

Tiny string interpolation library

string interpolation

readme

bowhead-js

Build Status MEAN Module npm version Node.js Version

Tiny string interpolation library, written in TypeScript.

Installation

yarn add bowhead-js

Usage

import format from 'bowhead-js';

// Index-based arguments.
format('{1} {0} {1}', 1, 'haha'); // 'haha 1 haha'

// Custom functions.
format('{0|uppercase}', 'haha'); // 'HAHA'

// Plurals.
format('{0} {0|countable|fish|fishes}', '1'); // '1 fish';
format('{0} {0|countable|fish|fishes}', '2'); // '2 fishes'
format('{0} {0|countable|fish|fishes}', '0'); // '0 fishes'
// "deer" is both singular and plural.
format('{0} {0|countable|deer}', '1'); // '1 deer'
format('{0} {0|countable|deer}', '2'); // '2 deer'

Functions available

  • uppercase to uppercase
  • lowercase to lowercase
  • capitalized capitalizes first letter
  • countable handles plurals

Error handling

By default, bowhead-js mutes index-out-of-range errors being thrown and returns error messages in resulting strings, you can disable this behavior by calling muteExceptions:

import { muteExceptions } from 'bowhead-js';

format('{1} {7}', 23, 'haha'))
// Prints 'haha <7 is out of range>'

muteExceptions(false);
format('{1} {7}', 23, 'haha'))
// Error thrown.