Skip to content

Instantly share code, notes, and snippets.

@dansalias
dansalias / node-switch.sh
Created December 9, 2019 18:25
Switch node versions without nvm
#!/bin/bash
system=linux-x64
directory=$HOME/.node-versions
# create directory
prepare() {
mkdir -p $directory
}
# install specified version
@dansalias
dansalias / package.json
Created November 15, 2019 10:03
Lambda Testing Example - package.json
{
...
"scripts": {
"test": "nvm exec 10.16.3 npx jest",
...
},
...
"devDependencies": {
...
"jest": "^24.9.0",
@dansalias
dansalias / capitalise.spec.js
Last active November 18, 2019 21:28
Lambda Testing Example - capitalise.spec.js
describe('capitalise lambda', () => {
it('should capitalise the first letter of every word', () => {
const handler = require('capitalise.js').handler;
const result = handler({name: 'dan salias'});
expect(result).toStrictEqual({name: 'Dan Salias'});
});
});
@dansalias
dansalias / capitalise.js
Last active November 18, 2019 21:29
Lambda Testing Example - capitalise.js
const changeCase = require('change-case');
exports.handler = async function(event) {
const result = { success: false, name: '' };
if(event.name) {
result.name = changeCase.titleCase(event.name);
result.success = true;
}
return result;
}
@dansalias
dansalias / MaterialInput.vue
Created October 2, 2018 09:59
Material-style (animated placeholder label) text input component in Vue.js
<template>
<div class="input-wrapper">
<input :type="type" :class="{ 'has-content': value.length }" v-model="value">
<div class="input-label">{{ label }}</div>
</div>
</template>
<script>
export default {
name: 'Input',