snippet f "function" ! function ${1:function_name}(${2:argument}) { ${VISUAL}$0 } endsnippet snippet scf "self calling function" ! (function (${1:argument}) { ${VISUAL}$0 }(${2:$1})); endsnippet snippet log "console.log" console.log(${1:"${2:value}"}); endsnippet snippet strict "use strict" 'use strict'; endsnippet snippet timeout "setTimeout" ! setTimeout(function () { ${1://code} }, 0); endsnippet snippet it "it test case" ! it('→ $1', function () { }); endsnippet snippet desc "describe test case" ! describe('→ $1', function () { }); endsnippet snippet exp "expect" b expect($1).toBe($2); endsnippet snippet umd "Universal Module Definition" b (function (root, factory) { if (typeof define === "function" && define.amd) { define(["${1:dependency}"], factory); } else if (typeof exports === "object") { module.exports = factory(require("$1")); } else { root.${2:Export} = factory(root.$1); } }(this, function ($1) { function $2($3) { } return $2; })); endsnippet snippet debug "debugger" ! /* eslint no-debugger: "off" */ debugger$1 endsnippet snippet flow "flow" /* @flow */$1 endsnippet