simple-query-mutator

2.2.0 • Public • Published

simple-query-mutator

NPM version

Install

$ npm install simple-query-mutator --save

formatQuery

formatQuery direct formats the query, can delete a property and change the value of another property at the same time or can be left null.

formatQuery(rawQuery,propToBeRemoved,propToBeChange,ChangeValue);
import { formatQuery } from 'simple-query-mutator';
// ...
const searchStr = '?language=eng&sort=price&type=product';
const result = formatQuery(searchStr, 'language');
// "?sort=price&type=product"
 
const result = formatQuery(searchStr, null, 'sort', 'date');
// "?language=eng&sort=date&type=product"
 
const result = formatQuery(searchStr, 'type', 'language', 'alien');
// "?language=alien&sort=date"

checkAndFormatQuery

checkAndFormatQuery checks whether or not the prop exist then continue formatting.

checkAndFormatQuery(rawQuery,method,prop,ChangeValue);
import { checkAndFormatQuery } from 'simple-query-mutator';
// ...
const searchStr = '?language=eng&sort=price&type=product';
const result = checkAndFormatQuery(searchStr, 'get', 'type');
// "product"
 
const result = checkAndFormatQuery(searchStr, 'has', 'type');
// true
 
const result = checkAndFormatQuery(searchStr, 'change', 'language', 'alien');
// "?language=alien&sort=date"
 
const result = checkAndFormatQuery(searchStr, 'delete', 'language');
// "?sort=date"

changeQueryProp

changeQueryProp change the query's property key to a new property key, can change value too.

changeQueryProp(searchQuery,oldProp,newProp,newValue); accept string or object. newValue can be null
import { changeQueryProp } from 'simple-query-mutator';
// ...
const searchObj = { language: 'eng', sort: 'date', type: 'product' };
const searchStr = '?language=eng&sort=date&type=product';
 
const resultObjWithNewKey = changeQueryProp(searchObj, 'type', 'category');
// { language: 'eng', sort: 'date', category: 'product' }
const resultObjWithNewKeyAndValue = changeQueryProp(
  searchObj,
  'type',
  'category',
  'notproduct'
);
// { language: 'eng', sort: 'date', category: 'notproduct' }
 
const resultStrWithNewKey = changeQueryProp(searchStr, 'type', 'category');
// { language: 'eng', sort: 'date', category: 'product' }
const resultStrWithNewKeyAndValue = changeQueryProp(
  searchStr,
  'type',
  'category',
  'notproduct'
);
// { language: 'eng', sort: 'date', category: 'notproduct' }
Can be combined with  queryObjToString method.

queryObjToString

queryObjToString turns a search object into string;

queryObjToString(searchObj);
import { queryObjToString } from 'simple-query-mutator';
// ...
const searchObj = { language: 'eng', sort: 'date', type: 'product' };
const result = queryObjToString(searchObj);
// '?language=eng&sort=date&type=product';

Dependencies (0)

    Dev Dependencies (1)

    Package Sidebar

    Install

    npm i simple-query-mutator

    Weekly Downloads

    5

    Version

    2.2.0

    License

    MIT

    Unpacked Size

    9.56 kB

    Total Files

    5

    Last publish

    Collaborators

    • yizhuang