1.3.4 • Published 7 months ago

pigeon-lft v1.3.4

Weekly downloads
-
License
ISC
Repository
github
Last release
7 months ago

Pigeon Light Fast Transformer

semantic-release: javascript GitHub CI codecov contributions welcome

Get started

Installation

Using Yarn

yarn add pigeon-lft

Using NPM

npm i pigeon-lft

Why?

pigeon is an alias for a message-delivering microservice we build at work, so since we need a replacement text for variables with formatter... we need a Pigeon-LFT

meme what originated the name of the library

Basic using

const { formatTextValues } = require('pigeon-lft');

let message = 'hello, my name is {{name}} this library name is {{lib}}';

const variables = {
  name: 'Victor',
  lib: 'pigeon-lft',
};

message = formatTextValues(message, {variables});
// hello, my name is Victor this library name is pigeon-lft

Using with transform

const { formatTextValues } = require('pigeon-lft');

let message = 'hello, my name is {{name}} this library name is {{lib}}';

const variables = {
  name: '  Victor  ',
  lib: 'PIGEON-LFT',
};

const transform = {
  name: (text) => text.trim(),
  lib: (text) => text.toLowerCase(),
};

message = formatTextValues(message, {variables, transform});
// hello, my name is Victor this library name is pigeon-lft

Using custom regex

const { formatTextValues } = require('pigeon-lft');

let message1 = 'hello, my name is {{name}} this library name is {{lib}}';
let message2 = 'hello, my name is {[name]} this library name is {[lib]}';
let message3 = 'hello, my name is [name] this library name is [lib]';

const variables = {
  name: 'Victor',
  lib: 'pigeon-lft',
};

const match = /\[[^\d!"#$%&'()*+,\-.\/:;<=>?@[\]^`{|}~][\w]+\]/;

message1 = formatTextValues(message1, {variables, match});
// hello, my name is {{name}} this library name is {{lib}}
message2 = formatTextValues(message2, {variables, match});
// hello, my name is {Victor} this library name is {pigeon-lft}
message3 = formatTextValues(message3, {variables, match});
// hello, my name is Victor this library name is pigeon-lft

Using default values ( version: +1.3.0 )

const { formatTextValues } = require('pigeon-lft');

let message = 'hello, my name is {{name}} this library name is {{lib}}';

const variables = {
  name: 'Victor',
  lib: 'pigeon-lft',
};

const defaultValues = {
  lib: 'pigeon-lft',
};

const match = /\[[^\d!"#$%&'()*+,\-.\/:;<=>?@[\]^`{|}~][\w]+\]/;

message = formatTextValues(message, {variables, defaultValues});
// hello, my name is Victor this library name is pigeon-lft
message = formatTextValues(message, {defaultValues: 'default'});
// hello, my name is default this library name is default
message = formatTextValues(message, {defaultValues: {name: 'Pigeon-LFT', lib: "Victor"}});
// hello, my name is Pigeon-LFT this library name is Victor

After thinking more about my library's purpose, I think it doesn't need validation, if you need more features, send me an email.

Looking for performance gaps, if you find one, email me

1.3.4

7 months ago

1.3.3

10 months ago

1.3.3-develop.1

10 months ago

1.3.2-develop.2

10 months ago

1.3.2

10 months ago

1.3.2-develop.1

10 months ago

1.3.1-develop.2

10 months ago

1.3.1

10 months ago

1.3.1-develop.1

10 months ago

1.3.0-develop.3

10 months ago

1.3.0

10 months ago

1.3.0-develop.2

10 months ago

1.3.0-develop.1

10 months ago

1.2.0-develop.2

10 months ago

1.2.0

10 months ago

1.2.0-develop.1

10 months ago

1.1.0-develop.3

10 months ago

1.1.1

10 months ago

1.1.0

10 months ago

1.1.0-develop.2

10 months ago

1.1.0-develop.1

10 months ago

1.0.1-develop.1

10 months ago

1.0.1

10 months ago

1.0.0

10 months ago

0.0.1-development

10 months ago

0.0.0-development

10 months ago