1.1.1 • Published 8 months ago

@storyous/utils v1.1.1

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

utils

Usage of ExternalId

import { externalId } from '@storyous/utils';

const encoded = externalId.encode('1231'); // returns 7cW9wazJv
const decoded = externalId.decode(encoded); // returns 1231

const encodedWithPreifix = externalId.encode('1231', 'p'); // returns p:7cW9wazJv
const decodedWithPrefix = externalId.decode(encoded); // returns 1231

Usage of Filter

import { filter } from '@storyous/utils';

filter.stringToSearchArray('text text2'); // returns ['text text2', 'text', 'text2']

filter.searchStringToChunks('text text2'); // returns [new RegExp('^text text2'), new RegExp('^text'), new RegExp('^text2')]

filter.escapeRegex('.*'); // returns '\\.\\*'

filter.normalize('ÃbCd-%řžýáí\\\\%ěš.!"!//'); // returns 'abcd-%rzyai_%es'

filter.normalizeForTranslations('ÃbCd-%řžýáí\\\\%ěš.!"!//'); // returns 'AbCd-%rzyai_%es.!_!'

filter.deleteForbidden({ foo: 'bar', und: undefined }, { foo: 'bar' }); // returns { und: undefined }

filter.generateQueryOr('long text', 'label');
// returns
//    [
//        {
//            label: /^long text/,
//        },
//        {
//            $and: [
//                { label: /^long/ },
//                { label: /^text/ },
//            ],
//        },
//    ]

Usage of ParseFloatHuman

import { parseFloatHuman } from '@storyous/utils';

parseFloatHuman('123.567'); // returns 123.567 as a number

Usage of RequestValidator

import { requestValidator } from '@storyous/utils';

requestValidator.objectIdList('12', 'name'); // returns ['12']

requestValidator.objectId('12', 'name'); // returns '12'

requestValidator.boolean(true); // returns true

requestValidator.array(['aa'], null, 'name'); // returns ['aa']

requestValidator.string(10, undefined, 'name'); // returns '10'

requestValidator.object({}); // returns {}

requestValidator.propFilled({ foo: 'bar' }, 'foo'); // property exist and is filled, Exception won't be thrown.

requestValidator.stringEnum('foo', ['foo', 'BAR'], false, 'name'); // returns 'foo'

requestValidator.date(new Date('2018-08-03T14:59:46Z')); // returns Date('2018-08-03T14:59:46Z')

requestValidator.decimalNumber('3.156'); // returns 3.16

requestValidator.email('aa@aa.aa'); // returns 'aa@aa.aa'

requestValidator.setOfObjects(
    [{ foo: 'bar' }],
    { foo: 'barbar' },
    'name',
    () => false,
    this,
); // returns { foo: 'bar' }

requestValidator.commaList('a,b', 'aa'); // returns ['a', 'b']

requestValidator.integer('10.1', 1, 'name'); // returns 10

requestValidator.version('1.1'); // returns 1.1

Usage of Secret

import { Secrets } from '@storyous/utils';

const encrypted = secrets.encrypt('plainText');
secrets.decrypt(encrypted);
1.1.1

8 months ago

1.1.0

8 months ago

1.0.6

1 year ago

1.0.5

1 year ago

1.0.4

2 years ago

1.0.2

2 years ago

1.0.1

2 years ago

1.0.0

2 years ago