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

Package detail

ts-dedent

tamino-martinius34.3mMIT2.2.0TypeScript support: included

TypeScript package which smartly trims and strips indentation from multi-line strings

dedent, deindent, indentation, multi-line string, multiline strings, template literals, template strings, ts, typescript, es6, harmony

readme

TypeScript Dedent

codecov

TypeScript package which smartly trims and strips indentation from multi-line strings.

Usage Examples

import dedent from 'dedent';

console.log(dedent`A string that gets so long you need to break it over
                    multiple lines. Luckily dedent is here to keep it
                    readable without lots of spaces ending up in the string
                    itself.`);

console.log(dedent`
  A string that gets so long you need to break it over
  multiple lines. Luckily dedent is here to keep it
  readable without lots of spaces ending up in the string
  itself.
`);
A string that gets so long you need to break it over
multiple lines. Luckily dedent is here to keep it
readable without lots of spaces ending up in the string
itself.

console.log(dedent`
  Leading and trailing lines will be trimmed, so you can write something like
  this and have it work as you expect:

    * how convenient it is
    * that I can use an indented list
        - and still have it do the right thing

  That's all.
`);
Leading and trailing lines will be trimmed, so you can write something like
this and have it work as you expect:

  * how convenient it is
  * that I can use an indented list
    - and still have it do the right thing

That's all.

console.log(dedent`
  Also works fine

  ${1}. With any kind of
  ${2}. Placeholders
`);
Also works fine

1. With any kind of
2. Placeholders

console.log(dedent(`
  Wait! I lied. Dedent can also be used as a function.
`);
Wait! I lied. Dedent can also be used as a function.

License

MIT

Based on

Changelog

See history for more details.

  • 2.2.0 2021-08-01 Add indentation to values with multiline strings & added ESM module
  • 2.1.1 2021-03-31 Update dependencies
  • 2.1.0 2021-03-24 Bugfixes
  • 2.0.0 2020-09-28 Bugfixes
  • 1.2.0 2020-09-28 Update dependencies and a couple of minor improvments
  • 1.1.0 2019-07-26 Update dependencies and fixed links in readme
  • 1.0.0 2018-06-14 Initial release

changelog

History

vNext

TBA

v2.2.0

Add indentation to values with multiline strings & added ESM module

  • Updated all dependencies to their latest version
  • Updated CI settings (added node 16, multiple os platforms)
  • Moved from Travis CI to Github Actions

v2.1.1

Security update with dependency changes

  • Updated all dependencies to their latest version
  • Updated CI settings (added node 15)

v2.1.0

  • Correctly handle escape sequences when used as a tag
  • Add test build to CI
  • Only run coverage once per change

v2.0.0

Fixes #4

  • ! Might break/change existing behavior
  • If a line does not start with whitespace don't remove the indentation

v1.2.0

Security update with dependency changes

  • Updated all dependencies to their latest version
  • Updated CI settings
  • Replaced tslint with typescript-eslint
  • Removed unused @types/node
  • Added lint to run with the test suite

v1.1.0

Security update with dependency changes

  • Updated all dependencies to their latest version

v1.0.0

First release includes following functions

  • `function dedent(TemplateStringsArray | string, ...any[]): string