1.0.4-2 • Published 4 years ago

parse-template v1.0.4-2

Weekly downloads
744
License
ISC
Repository
github
Last release
4 years ago

Parse Template

A very light weight library which allows you to process tokenised strings

Say you have a string like this:

const input = 'Hello ${firstName}'

You can parse it like this:

import { parseTemplate } from 'parse-template'

const meta = { firstName: 'Jess' }

parseTemplate(input, meta) // 'Hello Jess'

Installing

npm i --save parse-template

Features

Object syntax

const meta = { user: { firstName: 'Joe' } }

parseTemplate('Hello ${user.firstName}', meta) // 'Hello Joe'

Array syntax

const meta = { guests: [{ firstName: 'Alex'}] }

parseTemplate('Hello ${guests[0].firstName}', meta) // 'Hello Alex'

Fallback syntax

const meta = { nickName: null, firstName: 'Sam' }

parseTemplate('Hello ${nickname || firstName || "there"}', meta) // 'Hello Sam'

Empty value

Empty values are replaced with an empty string

const meta = { nickName: null }

parseTemplate('Hello ${nickname}', meta) // 'Hello '

Undefined value

Undefined values are replaced with an empty string

const meta = {}

parseTemplate('Hello ${nickname}', meta) // 'Hello '

Object unwrapping

The resolved "meta" value must be either a string or a number, otherwise it is ignored. So objects and other non string/number values are ommitted

const meta = { user: { nickName: 'Roger' } }

parseTemplate('Hello ${user}', meta) // 'Hello '

Contributing

Thanks for the help :) Please open a PR!

Local Development

npm i

npm test

npm run build
1.0.4-2

4 years ago

1.0.4-0

4 years ago

1.0.1

4 years ago

1.0.0

4 years ago

0.2.1

4 years ago

0.2.0

4 years ago