Have ideas to improve npm?Join in the discussion! »

    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';

    Install

    npm i simple-query-mutator

    DownloadsWeekly Downloads

    2

    Version

    2.2.0

    License

    MIT

    Unpacked Size

    9.56 kB

    Total Files

    5

    Last publish

    Collaborators

    • avatar