This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
[alias] | |
refresh = !git fetch --all --prune && git checkout master && git pull --rebase && git lastbranch | |
amend = commit --amend --no-edit | |
lastbranch = checkout @{-1} | |
ql = log -10 --oneline --decorate --graph | |
qb = "!qb(){ git refresh && git checkout -b aei/PPN-$@; }; qb" | |
qc = "!qc(){ git checkout aei/PPN-$@; }; qc" | |
qa = "!qa(){ git refresh && git branch --remote | grep $@ | sed 's/origin\\///' | xargs git checkout && git pull --rebase && git rebase master; }; qa" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Show hidden characters
{ | |
"console.log(\"***\", ...)": { | |
"prefix": "conso", | |
"scope": "javascript,typescript,typescriptreact", | |
"body": [ | |
"console.log(\"*** $1\", $0)", | |
"" | |
] | |
}, | |
"debug-map":{ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const combinePredicates = (predicate1, predicate2, ...predicateRest) => | |
(item) => | |
predicate1(item) && (predicateRest.length > 0? combinePredicates(predicate2, predicateRest[0]): predicate2)(item); | |
// sample predicates | |
const exclude = (val) => (item) => item !== val; | |
const excludeRange = (from, to) => (item) => item < from || item > to; | |
// sample data | |
let arr = [1,2,3,4,5,6,7,8,9,10]; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
function wrapInReadOnlyProxy(orig, throwOnSet = false) { | |
if (typeof orig !== "object") { | |
return orig; | |
} | |
return new Proxy(orig, { | |
get: function(target, property) { | |
if (property in target) { | |
return wrapInReadOnlyProxy(target[property]); | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"presets": [ | |
["@babel/preset-env", {"modules": "commonjs"}] | |
], | |
"plugins": [ | |
["@babel/plugin-proposal-object-rest-spread", {}], | |
["@babel/plugin-proposal-class-properties", { "loose": false }], | |
["@babel/plugin-proposal-nullish-coalescing-operator"], | |
["@babel/plugin-proposal-optional-chaining"], | |
["@babel/plugin-proposal-pipeline-operator", { "proposal": "minimal" }] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
module.exports = { | |
"env": | |
{ | |
"browser": true, | |
"es6": true, | |
"node": true | |
}, | |
"extends": "eslint:recommended", | |
"parserOptions": | |
{ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Function to turn node style functions with callbacks into promises. | |
// This is useful when using async/await, since promises can be awaited upon. | |
const callback = (resolve, reject) => (err, res) => err ? reject(err) : resolve(res); | |
const awaitable = async action => new Promise((resolve, reject) => action(callback(resolve, reject))) | |
module.exports = awaitable; | |
// Usage: | |
// const fs = require("fs"); | |
// const awaitable = require("./awaitable"); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"version": "0.1.0", | |
"command": "mocha", | |
"isShellCommand": true, | |
"showOutput": "silent", | |
"args": [ | |
"--reporter", | |
"tap", | |
"--colors" | |
], |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const angular = require("angular"); | |
const _ = require("lodash"); | |
angular | |
.module("modulename") | |
.directive("componentBinder", function($compile, $parse) { | |
return { | |
restrict: "E", | |
scope: { | |
componentName: "<", | |
}, |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Returns a new array, with the element at pos replaced with replacement item or calling the replacement function on arr[pos] | |
function changeAtIndex(arr, pos, replacement) { | |
if (typeof replacement == "function") { | |
replacement = replacement(arr[pos]); | |
} | |
return [...arr.slice(0, pos), replacement, ...arr.slice(pos + 1)]; | |
} | |
// Returns a new array, with the first element matching the predicate function replaced with replacement item or calling the replacement function on arr[pos] |