diff options
Diffstat (limited to 'snippets/javascript')
| -rw-r--r-- | snippets/javascript/javascript-jquery.snippets | 589 | ||||
| -rw-r--r-- | snippets/javascript/javascript-react.snippets | 190 | ||||
| -rw-r--r-- | snippets/javascript/javascript-redux.snippets | 37 | ||||
| -rw-r--r-- | snippets/javascript/javascript-requirejs.snippets | 14 | ||||
| -rw-r--r-- | snippets/javascript/javascript.node.snippets | 51 | ||||
| -rw-r--r-- | snippets/javascript/javascript.snippets | 359 |
6 files changed, 1240 insertions, 0 deletions
diff --git a/snippets/javascript/javascript-jquery.snippets b/snippets/javascript/javascript-jquery.snippets new file mode 100644 index 0000000..ef6f66c --- /dev/null +++ b/snippets/javascript/javascript-jquery.snippets @@ -0,0 +1,589 @@ +snippet add + ${1:obj}.add('${2:selector expression}') +snippet addClass + ${1:obj}.addClass('${2:class name}') +snippet after + ${1:obj}.after('${2:Some text <b>and bold!</b>}') +snippet ajax + $.ajax({ + url: '${1:mydomain.com/url}', + type: '${2:POST}', + dataType: '${3:xml/html/script/json}', + data: $.param( $('${4:Element or Expression}') ), + complete: function (jqXHR, textStatus) { + ${5:// callback} + }, + success: function (data, textStatus, jqXHR) { + ${6:// success callback} + }, + error: function (jqXHR, textStatus, errorThrown) { + ${0:// error callback} + } + }); +snippet ajaxcomplete + ${1:obj}.ajaxComplete(function (${1:e}, xhr, settings) { + ${0:// callback} + }); +snippet ajaxerror + ${1:obj}.ajaxError(function (${1:e}, xhr, settings, thrownError) { + ${2:// error callback} + }); + ${0} +snippet ajaxget + $.get('${1:mydomain.com/url}', + ${2:{ param1: value1 },} + function (data, textStatus, jqXHR) { + ${0:// success callback} + } + ); +snippet ajaxpost + $.post('${1:mydomain.com/url}', + ${2:{ param1: value1 },} + function (data, textStatus, jqXHR) { + ${0:// success callback} + } + ); +snippet ajaxprefilter + $.ajaxPrefilter(function (${1:options}, ${2:originalOptions}, jqXHR) { + ${0: // Modify options, control originalOptions, store jqXHR, etc} + }); +snippet ajaxsend + ${1:obj}.ajaxSend(function (${1:request, settings}) { + ${2:// error callback} + }); + ${0} +snippet ajaxsetup + $.ajaxSetup({ + url: "${1:mydomain.com/url}", + type: "${2:POST}", + dataType: "${3:xml/html/script/json}", + data: $.param( $("${4:Element or Expression}") ), + complete: function (jqXHR, textStatus) { + ${5:// callback} + }, + success: function (data, textStatus, jqXHR) { + ${6:// success callback} + }, + error: function (jqXHR, textStatus, errorThrown) { + ${0:// error callback} + } + }); +snippet ajaxstart + $.ajaxStart(function () { + ${1:// handler for when an AJAX call is started and no other AJAX calls are in progress}; + }); + ${0} +snippet ajaxstop + $.ajaxStop(function () { + ${1:// handler for when all AJAX calls have been completed}; + }); + ${0} +snippet ajaxsuccess + $.ajaxSuccess(function (${1:e}, xhr, settings) { + ${2:// handler for when any AJAX call is successfully completed}; + }); + ${0} +snippet andself + ${1:obj}.andSelf() +snippet animate + ${1:obj}.animate({${2:param1: value1, param2: value2}}, ${3:speed}) +snippet append + ${1:obj}.append('${2:Some text <b>and bold!</b>}') +snippet appendTo + ${1:obj}.appendTo('${2:selector expression}') +snippet attr + ${1:obj}.attr('${2:attribute}', '${3:value}') +snippet attrm + ${1:obj}.attr({'${2:attr1}': '${3:value1}', '${4:attr2}': '${5:value2}'}) +snippet before + ${1:obj}.before('${2:Some text <b>and bold!</b>}') +snippet bind + ${1:obj}.bind('${2:event name}', function (${3:e}) { + ${0:// event handler} + }); +snippet blur + ${1:obj}.blur(function (${2:e}) { + ${0:// event handler} + }); +snippet C + $.Callbacks() +snippet Cadd + ${1:callbacks}.add(${2:callbacks}) +snippet Cdis + ${1:callbacks}.disable() +snippet Cempty + ${1:callbacks}.empty() +snippet Cfire + ${1:callbacks}.fire(${2:args}) +snippet Cfired + ${1:callbacks}.fired() +snippet Cfirew + ${1:callbacks}.fireWith(${2:this}, ${3:args}) +snippet Chas + ${1:callbacks}.has(${2:callback}) +snippet Clock + ${1:callbacks}.lock() +snippet Clocked + ${1:callbacks}.locked() +snippet Crem + ${1:callbacks}.remove(${2:callbacks}) +snippet change + ${1:obj}.change(function (${2:e}) { + ${0:// event handler} + }); +snippet children + ${1:obj}.children('${2:selector expression}') +snippet clearq + ${1:obj}.clearQueue(${2:'queue name'}) +snippet click + ${1:obj}.click(function (${2:e}) { + ${0:// event handler} + }); +snippet clone + ${1:obj}.clone() +snippet contains + $.contains(${1:container}, ${0:contents}); +snippet css + ${1:obj}.css('${2:attribute}', '${3:value}') +snippet csshooks + $.cssHooks['${1:CSS prop}'] = { + get: function (elem, computed, extra) { + ${2: // handle getting the CSS property} + }, + set: function (elem, value) { + ${0: // handle setting the CSS value} + } + }; +snippet cssm + ${1:obj}.css({${2:attribute1}: '${3:value1}', ${4:attribute2}: '${5:value2}'}) +snippet D + $.Deferred() +snippet Dalways + ${1:deferred}.always(${2:callbacks}) +snippet Ddone + ${1:deferred}.done(${2:callbacks}) +snippet Dfail + ${1:deferred}.fail(${2:callbacks}) +snippet Disrej + ${1:deferred}.isRejected() +snippet Disres + ${1:deferred}.isResolved() +snippet Dnotify + ${1:deferred}.notify(${2:args}) +snippet Dnotifyw + ${1:deferred}.notifyWith(${2:this}, ${3:args}) +snippet Dpipe + ${1:deferred}.then(${2:doneFilter}, ${3:failFilter}, ${4:progressFilter}) +snippet Dprog + ${1:deferred}.progress(${2:callbacks}) +snippet Dprom + ${1:deferred}.promise(${2:target}) +snippet Drej + ${1:deferred}.reject(${2:args}) +snippet Drejw + ${1:deferred}.rejectWith(${2:this}, ${3:args}) +snippet Dres + ${1:deferred}.resolve(${2:args}) +snippet Dresw + ${1:deferred}.resolveWith(${2:this}, ${3:args}) +snippet Dstate + ${1:deferred}.state() +snippet Dthen + ${1:deferred}.then(${2:doneCallbacks}, ${3:failCallbacks}, ${4:progressCallbacks}) +snippet Dwhen + $.when(${1:deferreds}) +snippet data + ${1:obj}.data(${2:obj}) +snippet dataa + $.data('${1:selector expression}', '${2:key}'${3:, 'value'}) +snippet dblclick + ${1:obj}.dblclick(function (${2:e}) { + ${0:// event handler} + }); +snippet delay + ${1:obj}.delay('${2:slow/400/fast}'${3:, 'queue name'}) +snippet dele + ${1:obj}.delegate('${2:selector expression}', '${3:event name}', function (${4:e}) { + ${0:// event handler} + }); +snippet deq + ${1:obj}.dequeue(${2:'queue name'}) +snippet deqq + $.dequeue('${1:selector expression}'${2:, 'queue name'}) +snippet detach + ${1:obj}.detach('${2:selector expression}') +snippet die + ${1:obj}.die(${2:event}, ${3:handler}) +snippet each + ${1:obj}.each(function (index) { + ${0:this.innerHTML = this + " is the element, " + index + " is the position";} + }); +snippet el + $('<${1}/>'${2:, {}}) +snippet eltrim + $.trim('${1:string}') +snippet empty + ${1:obj}.empty() +snippet end + ${1:obj}.end() +snippet eq + ${1:obj}.eq(${2:element index}) +snippet error + ${1:obj}.error(function (${2:e}) { + ${0:// event handler} + }); +snippet eventsmap + { + :f${0} + } +snippet extend + $.extend(${1:true, }${2:target}, ${3:obj}) +snippet fadein + ${1:obj}.fadeIn('${2:slow/400/fast}') +snippet fadeinc + ${1:obj}.fadeIn('slow/400/fast', function () { + ${0:// callback}; + }); +snippet fadeout + ${1:obj}.fadeOut('${2:slow/400/fast}') +snippet fadeoutc + ${1:obj}.fadeOut('slow/400/fast', function () { + ${0:// callback}; + }); +snippet fadeto + ${1:obj}.fadeTo('${2:slow/400/fast}', ${3:0.5}) +snippet fadetoc + ${1:obj}.fadeTo('slow/400/fast', ${2:0.5}, function () { + ${0:// callback}; + }); +snippet filter + ${1:obj}.filter('${2:selector expression}') +snippet filtert + ${1:obj}.filter(function (${2:index}) { + ${3} + }) +snippet find + ${1:obj}.find('${2:selector expression}') +snippet focus + ${1:obj}.focus(function (${2:e}) { + ${0:// event handler} + }); +snippet focusin + ${1:obj}.focusIn(function (${2:e}) { + ${0:// event handler} + }); +snippet focusout + ${1:obj}.focusOut(function (${2:e}) { + ${0:// event handler} + }); +snippet get + ${1:obj}.get(${2:element index}) +snippet getjson + $.getJSON('${1:mydomain.com/url}', + ${2:{ param1: value1 },} + function (data, textStatus, jqXHR) { + ${0:// success callback} + } + ); +snippet getscript + $.getScript('${1:mydomain.com/url}', function (script, textStatus, jqXHR) { + ${0:// callback} + }); +snippet grep + $.grep(${1:array}, function (item, index) { + ${2} + }${0:, true}); +snippet hasc + ${1:obj}.hasClass('${2:className}') +snippet hasd + $.hasData('${0:selector expression}'); +snippet height + ${1:obj}.height(${2:integer}) +snippet hide + ${1:obj}.hide('${2:slow/400/fast}') +snippet hidec + ${1:obj}.hide('${2:slow/400/fast}', function () { + ${0:// callback} + }); +snippet hover + ${1:obj}.hover(function (${2:e}) { + ${3:// event handler} + }, function ($2) { + ${4:// event handler} + }); +snippet html + ${1:obj}.html('${2:Some text <b>and bold!</b>}') +snippet inarr + $.inArray(${1:value}, ${0:array}); +snippet insa + ${1:obj}.insertAfter('${2:selector expression}') +snippet insb + ${1:obj}.insertBefore('${2:selector expression}') +snippet is + ${1:obj}.is('${2:selector expression}') +snippet isarr + $.isArray(${1:obj}) +snippet isempty + $.isEmptyObject(${1:obj}) +snippet isfunc + $.isFunction(${1:obj}) +snippet isnum + $.isNumeric(${1:value}) +snippet isobj + $.isPlainObject(${1:obj}) +snippet iswin + $.isWindow(${1:obj}) +snippet isxml + $.isXMLDoc(${1:node}) +snippet jj + $('${1:selector}') +snippet kdown + ${1:obj}.keydown(function (${2:e}) { + ${0:// event handler} + }); +snippet kpress + ${1:obj}.keypress(function (${2:e}) { + ${0:// event handler} + }); +snippet kup + ${1:obj}.keyup(function (${2:e}) { + ${0:// event handler} + }); +snippet last + ${1:obj}.last('${1:selector expression}') +snippet live + ${1:obj}.live('${2:events}', function (${3:e}) { + ${0:// event handler} + }); +snippet load + ${1:obj}.load(function (${2:e}) { + ${0:// event handler} + }); +snippet loadf + ${1:obj}.load('${2:mydomain.com/url}', + ${2:{ param1: value1 },} + function (responseText, textStatus, xhr) { + ${0:// success callback} + } + }); +snippet makearray + $.makeArray(${0:obj}); +snippet map + ${1:obj}.map(function (${2:index}, ${3:element}) { + ${0:// callback} + }); +snippet mapp + $.map(${1:arrayOrObject}, function (${2:value}, ${3:indexOrKey}) { + ${0:// callback} + }); +snippet merge + $.merge(${1:target}, ${0:original}); +snippet mdown + ${1:obj}.mousedown(function (${2:e}) { + ${0:// event handler} + }); +snippet menter + ${1:obj}.mouseenter(function (${2:e}) { + ${0:// event handler} + }); +snippet mleave + ${1:obj}.mouseleave(function (${2:e}) { + ${0:// event handler} + }); +snippet mmove + ${1:obj}.mousemove(function (${2:e}) { + ${0:// event handler} + }); +snippet mout + ${1:obj}.mouseout(function (${2:e}) { + ${0:// event handler} + }); +snippet mover + ${1:obj}.mouseover(function (${2:e}) { + ${0:// event handler} + }); +snippet mup + ${1:obj}.mouseup(function (${2:e}) { + ${0:// event handler} + }); +snippet next + ${1:obj}.next('${2:selector expression}') +snippet nexta + ${1:obj}.nextAll('${2:selector expression}') +snippet nextu + ${1:obj}.nextUntil('${2:selector expression}'${3:, 'filter expression'}) +snippet not + ${1:obj}.not('${2:selector expression}') +snippet off + ${1:obj}.off('${2:events}', '${3:selector expression}'${4:, handler}) +snippet offset + ${1:obj}.offset() +snippet offsetp + ${1:obj}.offsetParent() +snippet on + ${1:obj}.on('${2:events}', '${3:selector expression}', function (${4:e}) { + ${0:// event handler} + }); +snippet one + ${1:obj}.one('${2:event name}', function (${3:e}) { + ${0:// event handler} + }); +snippet outerh + ${1:obj}.outerHeight() +snippet outerw + ${1:obj}.outerWidth() +snippet param + $.param(${1:obj}) +snippet parent + ${1:obj}.parent('${2:selector expression}') +snippet parents + ${1:obj}.parents('${2:selector expression}') +snippet parentsu + ${1:obj}.parentsUntil('${2:selector expression}'${3:, 'filter expression'}) +snippet parsejson + $.parseJSON(${1:data}) +snippet parsexml + $.parseXML(${1:data}) +snippet pos + ${1:obj}.position() +snippet prepend + ${1:obj}.prepend('${2:Some text <b>and bold!</b>}') +snippet prependto + ${1:obj}.prependTo('${2:selector expression}') +snippet prev + ${1:obj}.prev('${2:selector expression}') +snippet preva + ${1:obj}.prevAll('${2:selector expression}') +snippet prevu + ${1:obj}.prevUntil('${2:selector expression}'${3:, 'filter expression'}) +snippet promise + ${1:obj}.promise(${2:'fx'}, ${3:target}) +snippet prop + ${1:obj}.prop('${2:property name}') +snippet proxy + $.proxy(${1:function}, ${2:this}) +snippet pushstack + ${1:obj}.pushStack(${2:elements}) +snippet queue + ${1:obj}.queue(${2:name}${3:, newQueue}) +snippet queuee + $.queue(${1:element}${2:, name}${3:, newQueue}) +snippet ready + $(function () { + ${0} + }); +snippet rem + ${1:obj}.remove() +snippet rema + ${1:obj}.removeAttr('${2:attribute name}') +snippet remc + ${1:obj}.removeClass('${2:class name}') +snippet remd + ${1:obj}.removeData('${2:key name}') +snippet remdd + $.removeData(${1:element}${2:, 'key name}') +snippet remp + ${1:obj}.removeProp('${2:property name}') +snippet repa + ${1:obj}.replaceAll(${2:target}) +snippet repw + ${1:obj}.replaceWith(${2:content}) +snippet reset + ${1:obj}.reset(function (${2:e}) { + ${0:// event handler} + }); +snippet resize + ${1:obj}.resize(function (${2:e}) { + ${0:// event handler} + }); +snippet scroll + ${1:obj}.scroll(function (${2:e}) { + ${0:// event handler} + }); +snippet scrolll + ${1:obj}.scrollLeft(${2:value}) +snippet scrollt + ${1:obj}.scrollTop(${2:value}) +snippet sdown + ${1:obj}.slideDown('${2:slow/400/fast}') +snippet sdownc + ${1:obj}.slideDown('${2:slow/400/fast}', function () { + ${0:// callback}; + }); +snippet select + ${1:obj}.select(function (${2:e}) { + ${0:// event handler} + }); +snippet serialize + ${1:obj}.serialize() +snippet serializea + ${1:obj}.serializeArray() +snippet show + ${1:obj}.show('${2:slow/400/fast}') +snippet showc + ${1:obj}.show('${2:slow/400/fast}', function () { + ${0:// callback} + }); +snippet sib + ${1:obj}.siblings('${2:selector expression}') +snippet size + ${1:obj}.size() +snippet slice + ${1:obj}.slice(${2:start}${3:, end}) +snippet stoggle + ${1:obj}.slideToggle('${2:slow/400/fast}') +snippet stop + ${1:obj}.stop('${2:queue}', ${3:false}, ${4:false}) +snippet submit + ${1:obj}.submit(function (${2:e}) { + ${0:// event handler} + }); +snippet sup + ${1:obj}.slideUp('${2:slow/400/fast}') +snippet supc + ${1:obj}.slideUp('${2:slow/400/fast}', function () { + ${0:// callback}; + }); +snippet text + ${1:obj}.text(${2:'some text'}) +snippet this + $(this) +snippet toarr + ${0:obj}.toArray() +snippet tog + ${1:obj}.toggle(function (${2:e}) { + ${3:// event handler} + }, function ($2) { + ${4:// event handler} + }); + ${0} +snippet togclass + ${1:obj}.toggleClass('${2:class name}') +snippet togsh + ${1:obj}.toggle('${2:slow/400/fast}') +snippet trig + ${1:obj}.trigger('${2:event name}') +snippet trigh + ${1:obj}.triggerHandler('${2:event name}') +snippet $trim + $.trim(${1:str}) +snippet $type + $.type(${1:obj}) +snippet unbind + ${1:obj}.unbind('${2:event name}') +snippet undele + ${1:obj}.undelegate(${2:selector expression}, ${3:event}, ${4:handler}) +snippet uniq + $.unique(${1:array}) +snippet unload + ${1:obj}.unload(function (${2:e}) { + ${0:// event handler} + }); +snippet unwrap + ${1:obj}.unwrap() +snippet val + ${1:obj}.val('${2:text}') +snippet width + ${1:obj}.width(${2:integer}) +snippet wrap + ${1:obj}.wrap('${2:<div class="extra-wrapper"></div>}') diff --git a/snippets/javascript/javascript-react.snippets b/snippets/javascript/javascript-react.snippets new file mode 100644 index 0000000..65cb4e1 --- /dev/null +++ b/snippets/javascript/javascript-react.snippets @@ -0,0 +1,190 @@ +# Import +snippet ir import React + import React from 'react'; + +snippet irc import React and Component + import React, { Component } from 'react'; + +snippet irh import React hooks + import { use$1 } from 'react'; + +snippet ird import ReactDOM + import ReactDOM from 'react-dom'; + +snippet irp import PropTypes + import PropTypes from 'prop-types'; + +# Lifecycle Methods +snippet cdm componentDidMount + componentDidMount() { + ${1} + }; + +snippet cdup componentDidUpdate + componentDidUpdate(prevProps, prevState) { + ${1} + }; + +snippet cwm componentWillMount + componentWillMount() { + ${1} + }; + +snippet cwr componentWillReceiveProps + componentWillReceiveProps(nextProps) { + ${1} + }; + +snippet cwun componentWillUnmount + componentWillUnmount() { + ${1} + }; + +snippet cwu componentWillUpdate + componentWillUpdate(nextProps, nextState) { + ${1} + }; + +snippet scu shouldComponentUpdate + shouldComponentUpdate(nextProps, nextState) { + ${1} + } + +# Props +snippet spt static propTypes + static propTypes = { + ${1}: PropTypes.${2} + }; + +snippet pt propTypes + ${1}.propTypes = { + ${2}: PropTypes.${2} + }; + +snippet sdp static defaultProps + static defaultProps = { + ${1}: ${2} + }; + +snippet dp defaultProps + ${1}.defaultProps = { + ${2}: ${3} + }; + +snippet pp props + props.${1}; + +snippet tp this props + this.props.${1}; + +# State +snippet st + state = { + ${1}: ${2}, + }; + +snippet sst + this.setState({ + ${1}: ${2} + }); + +snippet tst + this.state.${1}; + +# Component +snippet raf + const ${1:ComponentName} = (${2:props}) => { + ${3:state} + + return ( + <> + ${4} + </> + ); + }; + +snippet rcla + class ${1:ClassName} extends Component { + render() { + return ( + <> + ${2} + </> + ); + } + } + +snippet ercla + export default class ${1:ClassName} extends Component { + render() { + return ( + <> + ${2} + </> + ); + }; + }; + +snippet ctor + constructor() { + super(); + + ${1:state} + } + +snippet ren + render() { + return ( + <> + ${2} + </> + ); + } + +snippet fup + forceUpdate(${1:callback}); + +# Hooks +snippet uses useState + const [${1:state}, set${2}] = useState(${3:initialState}); + +snippet usee useEffect + useEffect(() => { + ${1} + }); + +snippet userd useReducer + const [${1:state}, ${2:dispatch}] = useReducer(${3:reducer}); + +snippet userf useRef + const ${1:refContainer} = useRef(${2:initialValue}); + +snippet usect useContext + const ${1:value} = useContext(${2:MyContext}); + +snippet usecb useCallback + const ${1:memoizedCallback} = useCallback( + () => { + ${2}(${3}) + }, + [$3] + ); + +snippet usem useMemo + const ${1:memoizedCallback} = useMemo(() => ${2}(${3}), [$3]); + +snippet usei useImperativeHandle + useImperativeHandle(${1:ref}, ${2:createHandle}); + +snippet used useDebugValue + useDebugValue(${1:value}); + +# ReactDOM methods +snippet rdr ReactDOM.render + ReactDOM.render(${1}, ${2}); + +snippet rdh ReactDOM.hydrate + ReactDOM.hydrate(${1:element}, ${2:container}[, ${3:callback}]); + +snippet rdcp ReactDOM.createPortal + ReactDOM.createPortal(${1:child}, ${2:container}); diff --git a/snippets/javascript/javascript-redux.snippets b/snippets/javascript/javascript-redux.snippets new file mode 100644 index 0000000..e13253c --- /dev/null +++ b/snippets/javascript/javascript-redux.snippets @@ -0,0 +1,37 @@ +snippet ist + import { createStore } from 'redux'; +snippet con + connect(${1:mapStateToProps}, ${2:mapDispatchToProps})(<${3:VISUAL}/>); +snippet act + const ${1:actionName} = (${2:arg}) => { + return { + type: ${3:VISUAL}, + $2 + }; + }; +snippet rdc + const ${1:reducerName} = (state={}, action) => { + switch(action.type) { + case ${1:action}: + return { + ...state, + $2 + }; + default: + return state; + }; + }; +snippet mstp + const mapStateToProps = (state) => { + return { + ${1:propName}: state.$1, + }; + }; +snippet mdtp + const mapDispatchToProps = (dispatch) => { + return { + ${1:propName}: () => { + dispatch(${2:actionName}()); + }, + }; + }; diff --git a/snippets/javascript/javascript-requirejs.snippets b/snippets/javascript/javascript-requirejs.snippets new file mode 100644 index 0000000..8e72ada --- /dev/null +++ b/snippets/javascript/javascript-requirejs.snippets @@ -0,0 +1,14 @@ +snippet def + define(["${1:#dependencies1}"], function (${2:#dependencies2}) { + return ${0:TARGET}; + }); + +snippet defn + define("${1:#name}", ["${2:#dependencies1}"], function (${3:#dependencies2}) { + return ${0:TARGET}; + }); + +snippet reqjs + require(["${1:#dependencies1}"], function (${2:#dependencies2}) { + return ${0:TARGET}; + }); diff --git a/snippets/javascript/javascript.node.snippets b/snippets/javascript/javascript.node.snippets new file mode 100644 index 0000000..52a2ba4 --- /dev/null +++ b/snippets/javascript/javascript.node.snippets @@ -0,0 +1,51 @@ +snippet #! + #!/usr/bin/env node +# module exports +snippet ex + module.exports = ${1}; +# require +snippet re + const ${1} = require('${2:module_name}'); +# EventEmitter +snippet on + on('${1:event_name}', function(${2:stream}) { + ${3} + }); +snippet emit + emit('${1:event_name}', ${2:args}); +snippet once + once('${1:event_name}', function(${2:stream}) { + ${3} + }); +# http. User js function snippet as handler +snippet http + http.createServer(${1:handler}).listen(${2:port_number}); +# net +snippet net + net.createServer(function(${1:socket}){ + ${1}.on('data', function('data'){ + ${2} + ]}); + ${1}.on('end', function(){ + ${3} + }); + }).listen(${4:8124}); +# Stream snippets +snippet pipe + pipe(${1:stream})${2} +# Express snippets +snippet eget + ${1:app}.get('${2:route}', ${3:handler}); +snippet epost + ${1:app}.post('${2:route}', ${3:handler}); +snippet eput + ${1:app}.put('${2:route}', ${3:handler}); +snippet edel + ${1:app}.delete('${2:route}', ${3:handler}); +# process snippets +snippet stdin + process.stdin +snippet stdout + process.stdout +snippet stderr + process.stderr diff --git a/snippets/javascript/javascript.snippets b/snippets/javascript/javascript.snippets new file mode 100644 index 0000000..78c651e --- /dev/null +++ b/snippets/javascript/javascript.snippets @@ -0,0 +1,359 @@ +# Functions +# prototype +snippet proto + ${1:class_name}.prototype.${2:method_name} = function(${3}) { + ${0:${VISUAL}} + }; +# Function +snippet fun "function" + function ${1:function_name}(${2}) { + ${0:${VISUAL}} + } +# Asynchronous Function +snippet asf "async function" + async function ${1:function_name}(${2}) { + ${0:${VISUAL}} + } +# Anonymous Function +snippet anf "" w + function(${1}) { + ${0:${VISUAL}} + } +# Anonymous Function assigned to variable +snippet vaf + var ${1:function_name} = function(${2}) { + ${0:${VISUAL}} + }; +# Function assigned to variable +snippet vf + var ${1:function_name} = function $1(${2}) { + ${0:${VISUAL}} + }; +# Immediate function +snippet (f + (function(${1}) { + ${0:${VISUAL}} + }(${2})); +# Minify safe iife +snippet ;fe + ;(function(${1}) { + ${0:${VISUAL}} + }(${2})) +# self-defining function +snippet sdf + var ${1:function_name} = function (${2:argument}) { + ${3} + + $1 = function ($2) { + ${0:${VISUAL}} + }; + }; +# Flow control +# if +snippet if "if (condition) { ... }" + if (${1:true}) { + ${0:${VISUAL}} + } +# if ... else +snippet ife "if (condition) { ... } else { ... }" + if (${1:true}) { + ${0:${VISUAL}} + } else { + ${2} + } +# tertiary conditional +snippet ter + ${1:/* condition */} ? ${2:/* if true */} : ${0:/* if false */} +# switch +snippet switch + switch (${1:expression}) { + case '${3:case}': + ${4} + break; + ${0} + default: + ${2} + } +snippet case "case 'xyz': ... break" + case '${1:case}': + ${0:${VISUAL}} + break; +snippet try "try { ... } catch(e) { ... }" + try { + ${0:${VISUAL}} + } catch (${1:e}) { + ${2:/* handle error */} + } +snippet tryf "try { ... } catch(e) { ... } finally { ... }" + try { + ${0:${VISUAL}} + } catch (${1:e}) { + ${2:/* handle error */} + } finally { + ${3:/* be executed regardless of the try / catch result*/} + } +# throw Error +snippet terr + throw new Error('${1:error message}') +# return +snippet ret + return ${0:result}; +snippet for "for (...) {...}" + for (let ${1:i} = 0, ${2:len} = ${3:Things.length}; $1 < $2; $1++) { + ${0:${VISUAL}} + } +snippet forr "reversed for (...) {...}" + for (let ${2:i} = ${1:Things.length} - 1; $2 >= 0; $2--) { + ${0:${VISUAL}} + } +snippet wh "(condition) { ... }" + while (${1:/* condition */}) { + ${0:${VISUAL}} + } +snippet do "do { ... } while (condition)" + do { + ${0:${VISUAL}} + } while (${1:/* condition */}); +# For in loop +snippet fori + for (let ${1:prop} in ${2:object}) { + ${0:$2[$1]} + } +# Objects +# Object Method +snippet :f + ${1:method_name}: function (${2:attribute}) { + ${0:${VISUAL}} + }, +# hasOwnProperty +snippet has + hasOwnProperty(${0}) +# singleton +snippet sing + function ${1:Singleton} (${2:argument}) { + // the cached instance + var instance; + + // rewrite the constructor + $1 = function $1($2) { + return instance; + }; + + // carry over the prototype properties + $1.prototype = this; + + // the instance + instance = new $1(); + + // reset the constructor pointer + instance.constructor = $1; + + ${0} + + return instance; + } +# Crockford's object function +snippet obj + function object(o) { + function F() {} + F.prototype = o; + return new F(); + } +# Define multiple properties +snippet props + var ${1:my_object} = Object.defineProperties( + ${2:new Object()}, + { + ${3:property} : { + get : function $1_$3_getter() { + // getter code + }, + set : function $1_$3_setter(value) { + // setter code + }, + value : ${4:value}, + writeable : ${5:boolean}, + enumerable : ${6:boolean}, + configurable : ${0:boolean} + } + } + ); +# Define single property +snippet prop + Object.defineProperty( + ${1:object}, + '${2:property}', + { + get : function $1_$2_getter() { + // getter code + }, + set : function $1_$2_setter(value) { + // setter code + }, + value : ${3:value}, + writeable : ${4:boolean}, + enumerable : ${5:boolean}, + configurable : ${0:boolean} + } + ); +# Documentation +# docstring +snippet /** + /** + * ${0:description} + * + */ +snippet @par + @param {${1:type}} ${2:name} ${0:description} +snippet @ret + @return {${1:type}} ${0:description} +# JSON.parse +snippet jsonp + JSON.parse(${0:jstr}); +# JSON.stringify +snippet jsons + JSON.stringify(${0:object}); +# DOM selectors +# Get elements +snippet get + getElementsBy${1:TagName}('${0}') +# Get element +snippet gett + getElementBy${1:Id}('${0}') +# Elements by class +snippet by. + ${1:document}.getElementsByClassName('${0:class}') +# Element by ID +snippet by# + ${1:document}.getElementById('${0:element ID}') +# Query selector +snippet qs + ${1:document}.querySelector('${0:CSS selector}') +# Query selector all +snippet qsa + ${1:document}.querySelectorAll('${0:CSS selector}') +# Debugging +snippet de + debugger; +snippet cl "console.log" + console.log(${0}); +snippet cd "console.debug" + console.debug(${0}); +snippet ce "console.error" + console.error(${0}); +snippet cw "console.warn" + console.warn(${0}); +snippet ci "console.info" + console.info(${0}); +snippet ct "console.trace" + console.trace(${0:label}); +snippet ctime "console.time ... console.timeEnd" + console.time("${1:label}"); + ${0:${VISUAL}} + console.timeEnd("$1"); +snippet ctimestamp "console.timeStamp" + console.timeStamp("${1:label}"); +snippet ca "console.assert" + console.assert(${1:expression}, ${0:obj}); +snippet cclear "console.clear" + console.clear(); +snippet cdir "console.dir" + console.dir(${0:obj}); +snippet cdirx "console.dirxml" + console.dirxml(${1:object}); +snippet cgroup "console.group" + console.group("${1:label}"); + ${0:${VISUAL}} + console.groupEnd(); +snippet cgroupc "console.groupCollapsed" + console.groupCollapsed("${1:label}"); + ${0:${VISUAL}} + console.groupEnd(); +snippet cprof "console.profile" + console.profile("${1:label}"); + ${0:${VISUAL}} + console.profileEnd(); +snippet ctable "console.table" + console.table(${1:"${2:value}"}); +snippet clstr "console.log stringified" + console.log(JSON.stringify(${0}, null, 2)); +# Misc +snippet us + 'use strict'; +# setTimeout function +snippet timeout + setTimeout(function () {${0}}${2}, ${1:10}); +snippet const + const ${1} = ${0}; +snippet constn + const ${1} = new ${0}; +snippet let + let ${1} = ${0}; +snippet im "import xyz from 'xyz'" + import ${1} from '${2:$1}'; +snippet imas "import * as xyz from 'xyz'" + import * as ${1} from '${2:$1}'; +snippet imm "import { member } from 'xyz'" + import { ${1} } from '${2}'; +snippet cla + class ${1} { + ${0:${VISUAL}} + } +snippet clax + class ${1} extends ${2} { + ${0:${VISUAL}} + } +snippet clac + class ${1} { + constructor(${2}) { + ${0:${VISUAL}} + } + } +snippet foro "for (const prop of object}) { ... }" + for (const ${1:prop} of ${2:object}) { + ${0:$1} + } +snippet forl "for (let prop of object}) { ... }" + for (let ${1:prop} of ${2:object}) { + ${0:$1} + } +snippet fun* + function* ${1:function_name}(${2}) { + ${0:${VISUAL}} + } +snippet c=> + const ${1:function_name} = (${2}) => { + ${0:${VISUAL}} + } +snippet ca=> + const ${1:function_name} = async (${2}) => { + ${0:${VISUAL}} + } +snippet caf + const ${1:function_name} = (${2}) => { + ${0:${VISUAL}} + } +snippet casf + const ${1:function_name} = async (${2}) => { + ${0:${VISUAL}} + } +snippet => + (${1}) => { + ${0:${VISUAL}} + } +snippet af "() =>" + (${1}) => ${0:${VISUAL}} +snippet afb "() => {}" + (${1}) => { + ${0:${VISUAL}} + } +snippet sym + const ${1} = Symbol('${0}'); +snippet ed + export default ${0} +snippet ${ + \${${1}}${0} +snippet as "async" + async ${0} +snippet aw "await" + await ${0:${VISUAL}} |
