1.0.10 • Published 11 years ago

diy-handlebars-helpers v1.0.10

Weekly downloads
43
License
-
Repository
-
Last release
11 years ago

diy-handlebars-helpers

Collection of generic handlebars helpers.

Installation

npm install diy-handlebars-helpers

Basic Use

var handlebars-helpers    = require('diy-handlebars-helpers');

Testing

npm test

Helpers

abbr-count

{{abbr-count 4000}} // 4k+

captialize

{{capitalize 'hey dude'}} // Hey dude

chr-gt

{{chr-gt 'hey dude' 3}}
    // WOO! string is greater than 3
{{else}}
    // string is not longer than 3
{{/chr-gt}}

chr-lt

{{chr-lt 'hey dude' 3}}
    // string is less than 3
{{else}}
    // WOO! string is not less than 3
{{/chr-lt}}

each-key

{{#each-key object}}
Key: {{this.key}} Value: {{this.value}}
{{/each-key}}

each-limit

{{#each-limit items 3}}
    // will only iterate 3 times even if items is longer
{{/each-limit}}

each-reverse

{{#each-reverse items}}
    // iterating backwards!
{{/each-reverse}}

either

{{either false true false}}
    // at least one value was true
{{else}}
    // none were true
{{/either}}

encodeURIComponent

{{encodeURIComponent exactlyWhatYouThink}}

eq

{{#eq val1 val2}}
    // absolute comparision was true ===
{{else}}
    // here not so much
{{/eq}}

firstof

{{firstof false false 'real value' false}} // "real value" great for picking default text for empty variables

if-gt

{{#if-gt 10 5}}
    // of course 10 is greater than 5
{{else}}
    // this wouldn't execute
{{/if-gt}}

if-lt

{{#if-lt 5 10}}
    // of course 5 is less than 10
{{else}}
    // this wouldn't execute
{{/if-lt}}

indefinite-article

{{indefinite-article 'apple'}} // an
{{indefinite-article 'pineapple'}} // a

input-select

{{{input-select "month" options "05"}}} // builds <select name="month">...</select> an

options should be a multi-dimentional array: [['val1', 'text1'], ['val2', 'text2']]. If no text is provided, the value will be used for the option text.

The third optional argument is the default value. (will get the selected attribute.)

iter

{{#iter items}}
    {{i}} //index
    {{iPlus1}} // index + 1
{{/iter}}

join

{{join array ","}} // "item1, item2"

neither

{{neither false false false}}
    // all must be false for this to execute
{{else}}
    // at least one was true
{{/neither}}

not-eq

{{#not-eq val1 val2}}
    // absolute not comparision was true !==
{{else}}
    // here not so much
{{/not-eq}}

number

{{number 100000}} // "100,000"

pack-it

{{#pack-it items}}
    {{content}} // original item
    {{size}} // pack size
{{/pack-it}}

paragraphify

{{paragraphify textWithNewLines}} // <p>first line</p><p>second line</p>

posessive

{{posessive 'john'}} // "john's"

repeat

{{#repeat 5}}Hello!{{/repeat}} // "Hello!Hello!Hello!Hello!Hello!"

subtract

{{subtract a.length 2}}

title-case

{{title-case 'hey hey hey'}} // "Hey Hey Hey"

urlify

{{urlify 'Hey Hey'}} // "hey-hey"
1.0.10

11 years ago

1.0.9

11 years ago

1.0.8

11 years ago

1.0.7

11 years ago

1.0.6

11 years ago

1.0.5

11 years ago

1.0.4

11 years ago

1.0.3

11 years ago

1.0.2

11 years ago

1.0.1

11 years ago

1.0.0

11 years ago