@strdr4605/mockingcase
    TypeScript icon, indicating that this package has built-in type declarations

    1.10.5 • Public • Published

    mockingcase Build Status

    Convert a string to mOcKiNgCaSe.

    Read more on wikipedia Studly caps.

    mocking spongebob

    Inspired by the meme Mocking Spongebob and http://dannypage.github.io/spongebob.html

    Install

    npm install @strdr4605/mockingcase --save

    Usage

    const mockingcase = require('@strdr4605/mockingcase');
    // es6 - import mockingcase from '@strdr4605/mockingcase';
    //  ts - import * as mockingcase from '@strdr4605/mockingcase';
    //  ts - import mockingcase = require('@strdr4605/mockingcase');
    
    mockingcase('foo-bar');
    //=> 'fOo-bAr'
    
    mockingcase('aa', {random: false});
    //=> 'aA'
    
    mockingcase('aa', {random: true});
    //=> 'aa'
    //=> 'aA'
    //=> 'Aa'
    //=> 'AA'
    
    mockingcase('42foo!bar');
    //=> '42fOo!bAr'
    
    mockingcase('aa123', {onlyLetters: true});
    //=> 'aA'
    
    mockingcase('a13%$a', {onlyLetters: true});
    //=> 'aA'
    
    mockingcase('foo bar', {firstUpper: true});
    //=> 'FoO BaR'
    
    mockingcase('foo', {firstUpper: true, random: true});
    //=> 'Foo'
    //=> 'FOo'
    //=> 'FoO'
    //=> 'FOO'
    
    mockingcase('abcdef', {upper: /[bdf]/});
    //=> 'aBcDeF'
    
    mockingcase('ABCDEF', {lower: 'bcd'});
    //=> 'abcdeF'

    API

    Functions

    mockingcase(input, [options])string

    Converts the input string(s) to mOcKiNgCaSe.

    Typedefs

    Options : Object

    Options for mockingcase

    mockingcase(input, [options]) ⇒ string ⬆️

    Converts the input string(s) to mOcKiNgCaSe.

    Kind: global function Returns: string - string in mOcKiNgCaSe

    Param Type Default Description
    input string | Array.<string> String(s) to be converted.
    [options] Options {random: false, onlyLetters: false, firstUpper: false, upper: '', lower: ''} Conversion options.
    mockingcase('foo-bar');
    //=> 'fOo-bAr'
    
    mockingcase('aa', {random: false});
    //=> 'aA'
    
    mockingcase('aa', {random: true});
    //=> 'aa'
    //=> 'aA'
    //=> 'Aa'
    //=> 'AA'
    
    mockingcase('42foo!bar');
    //=> '42fOo!bAr'
    
    mockingcase('aa123', {onlyLetters: true});
    //=> 'aA'
    
    mockingcase('a13%$a', {onlyLetters: true});
    //=> 'aA'
    
    mockingcase('foo bar', {firstUpper: true});
    //=> 'FoO BaR'
    
    mockingcase('foo bar', {firstUpper: true, lower: /[fb]/});
    //=> 'foO baR'
    
    mockingcase('foo bar', {firstUpper: true, upper: /[oa]/});
    //=> 'FOO BAR'
    
    mockingcase('foo', {firstUpper: true, random: true});
    //=> 'Foo'
    //=> 'FOo'
    //=> 'FoO'
    //=> 'FOO'
    
    mockingcase(['foo','bar']);
    //=> 'fOoBaR'
    
    mockingcase(undefined);
    //=> Error "An input is required"

    mockingcase.overrideString() ⇒ mockingcase ⬆️

    Creates String.prototype.toMockingCase().

    Kind: static method of mockingcase
    Returns: mockingcase

    mockingcase.overrideString();
    
    'foo_bar'.toMockingCase();
    //=> 'fOo_bAr'
    
    'foo_bar'.toMockingCase({firstUpper: true});
    //=> 'FoO_BaR'

    String.prototype.toMockingCase([options]) ⇒ string ⬆️

    Converts this string to mOcKiNgCaSe.

    NOTE: this function is created by invoking mockingcase.overrideString().

    Kind: prototype
    Returns: string - local string in mOcKiNgCaSe

    Param Type Default Description
    input string | Array.<string> String(S) to be converted.
    [options] Options {random: false, onlyLetters: false, firstUpper: false, upper: '', lower: ''} Conversion options.
    'foo_bar'.toMockingCase();
    //=> 'fOo_bAr'
    
    'foo_bar'.toMockingCase({firstUpper: true});
    //=> 'FoO_BaR'

    mockingcase.config(defaultOptions) ⇒ mockingcase ⬆️

    Outputs a mockingcase with default options.

    Kind: static method of mockingcase
    Returns: mockingcase with default options

    Param Type Default Description
    defaultOptions Options {random: false, onlyLetters: false, firstUpper: false, upper: '', lower: ''} Conversion options.
    const mockingcase = require('@strdr4605/mockingcase').config({onlyLetters: true, firstUpper: true});
    // const mOcKiNgCaSe = mOcKiNgCaSe.config({onlyLetters: true, firstUpper: true});
    
    mockingcase('foo bar42');
    //=> 'FoO BaR'
    
    mockingcase('foo bar42', {onlyLetters: false, firstUpper: false});
    //=> 'fOo bAr42'

    mockingcase.log(input, [options]) ⬆️

    Outputs a message to the console in mOcKiNgCaSe.

    Kind: static method of mockingcase

    Param Type Default Description
    input string | Array.<string> String(S) to be converted.
    [options] Options {random: false, onlyLetters: false, firstUpper: false, upper: '', lower: ''} Conversion options.
    mockingcase.log('foo bar');
    // console.log('fOo bAr');


    mockingcase.overrideConsole([options]) ⇒ mockingcase ⬆️

    Overrides console.log input to print the input mOcKiNgCaSe.

    Kind: static method of mockingcase
    Returns: function - mockingcase function
    See: mockingcase

    Param Type Default Description
    [options] Options {random: false, onlyLetters: false, firstUpper: false, upper: '', lower: ''} Conversion options.
    const mockingcase = require('@strdr4605/mockingcase').overrideConsole();
    console.log('foobar')
    // => 'fOoBaR'
    mockingcase('foobar');
    // => 'fOoBaR'

    Options : Object ⬆️

    Options for mockingcase

    Kind: global typedef
    Properties

    Name Type Default Description
    [random] boolean false If case conversion should be randomized.
    [onlyLetters] boolean false If non letters characters should be removed.
    [firstUpper] boolean false If the first letter should be capitalized instead of the second when converting to mOcKiNgCaSe (e.g. MoCkInGcAsE). When combined with options.random, the first letter of the random string will be capitalized.
    [upper] string | RegExp '' Characters or substring set to change to uppercase, upper has higher priority that lower.
    [lower] string | RegExp '' Characters or substring set to change to lowercase.

    Browser Usage ⬆️

    mOcKiNgCaSe can be used in a node environment, as well as in the browser. You can serve it yourself, or pull it from a CDN. For example:

    <!DOCTYPE html>
    <html lang="en">
    <head>
      <title>mockingcase</title>
    </head>
    <body>
    </body>
    <script src="https://unpkg.com/@strdr4605/mockingcase@1.10.3/src/mockingcase.js"></script>
    <script>
      const output = mockingcase('foo-bar');
      console.log(output);
      const output2 = mockingcase('foo-bar');
      console.log(output2);
    </script>
    </html>

    Self Hosting

    To host mockingcase yourself simply put src/mockingcase.js wherever your static content (like CSS stylesheets) are kept. You can also download a minified file from one of the CDNs below.

    CDN Usage

    Simply pull in one of the following JS files below.

    Name Link
    unpkg.com https://unpkg.com/@strdr4605/mockingcase@1.10.3/src/mockingcase.js
    JSDelivr.com https://cdn.jsdelivr.net/npm/@strdr4605/mockingcase@1.10.3/src/mockingcase.min.js

    See also Mockingcase bindings for ReasonML

    Install

    npm i @strdr4605/mockingcase

    DownloadsWeekly Downloads

    4

    Version

    1.10.5

    License

    ISC

    Unpacked Size

    18.7 kB

    Total Files

    5

    Last publish

    Collaborators

    • strdr4605