1.3.4 • Published 7 months ago
pigeon-lft v1.3.4
Pigeon Light Fast Transformer
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
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