Versions:
- node 8 (engine V8 5.9)
- node 10 (engine V8 6.6)
- node 12 (engine V8 7.4)
- node 14 (engine V8 8.4)
V8 6.0:
- SharedArrayBuffer
- Object rest/spread properties
const tap = require('gulp-tap'); | |
const postHTML = require('posthtml'); | |
const { series, src, dest } = require('gulp'); | |
const StreamFromPromise = require('stream-from-promise'); | |
const { exec } = require('child_process'); | |
const GLOB = './__sapper__/export/**/*.*'; | |
const DEST = './__sapper__/rexport/'; | |
const filter = (expr, cb) => file => expr.exec(file.path) && cb(file); |
const genToAsyncGen = async iteration => ({ | |
value: await (await iteration).value, | |
done: (await iteration).done, | |
}); | |
const iterableToIterator = (iterable = []) => { | |
if (iterable[Symbol.asyncIterator]) | |
return iterable[Symbol.asyncIterator](); | |
if (iterable[Symbol.iterator]) | |
return iterable[Symbol.iterator](); |
const reduce = reducer => fns => value => fns.reduce(reducer, value); | |
const functor = (reducer) => (...fns) => { | |
const fn = reducer(fns); | |
fn.map = (...fnsToo) => functor(reducer)(...fns, ...fnsToo); | |
return fn; | |
}; | |
const all = (acc, fn) => fn(acc); | |
const map = functor(reduce(all)); |
data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEASABIAAD//gAbY21wMy4xMC4zLjFMcTQgMHg4YmU3YmMzZP/iAkBJQ0NfUFJPRklMRQABAQAAAjBBREJFAhAAAG1udHJSR0IgWFlaIAfPAAYAAwAAAAAAAGFjc3BBUFBMAAAAAG5vbmUAAAAAAAAAAAAAAAAAAAAAAAD21gABAAAAANMtQURCRQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACmNwcnQAAAD8AAAAMmRlc2MAAAEwAAAAa3d0cHQAAAGcAAAAFGJrcHQAAAGwAAAAFHJUUkMAAAHEAAAADmdUUkMAAAHUAAAADmJUUkMAAAHkAAAADnJYWVoAAAH0AAAAFGdYWVoAAAIIAAAAFGJYWVoAAAIcAAAAFHRleHQAAAAAQ29weXJpZ2h0IDE5OTkgQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQAAABkZXNjAAAAAAAAABFBZG9iZSBSR0IgKDE5OTgpAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYWVogAAAAAAAA81EAAQAAAAEWzFhZWiAAAAAAAAAAAAAAAAAAAAAAY3VydgAAAAAAAAABAjMAAGN1cnYAAAAAAAAAAQIzAABjdXJ2AAAAAAAAAAECMwAAWFlaIAAAAAAAAJwYAABPpQAABPxYWVogAAAAAAAANI0AAKAsAAAPlVhZWiAAAAAAAAAmMQAAEC8AAL6c/9sAQwAIBgYHBgUIBwcHCQkICgwUDQwLCwwZEhMPFB0aHx4dGhwcICQuJyAiLCMcHCg3KSwwMTQ0NB8nOT04MjwuMzQy/9sAQwEJCQkMCwwYDQ0YMiEcITIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyM |
Versions:
V8 6.0:
const LaconiaWSS = require("@laconia/laconiaWSS"); | |
const { | |
getHandler, | |
updateHandler, | |
disconnectHandler, | |
connectHandler, | |
sendHandler | |
} = laconiaWSS('WEBSOCKET_CONNECTION_TABLE_NAME'); |
const identity = value => value; | |
const mappingAdapter = (mappings = []) => fn => (event, laconiaContext) => { | |
const args = [ | |
...mappings.reduce( | |
(actual, mapping) => mapping( | |
actual, event, laconiaContext | |
), | |
[] | |
), |
#! /usr/bin/env python | |
import sys | |
import os | |
import subprocess | |
import collections | |
PathParm = collections.namedtuple('PathParm', 'app path') | |
FileParam = collections.namedtuple('FileParam', 'app path line col protocol filetype app_desktop') |
const typeNameOf = arg => { | |
if(arg === null) return 'Null'; | |
if(Number.isNaN(arg)) return 'NaN'; | |
if(arg === undefined) return 'Undefined'; | |
return arg.constructor.name || typeof arg; | |
}; | |
const overload = (defaultFn, registry = {}) => { | |
const overloaded = (...args) => { | |
const types = args.map(typeNameOf); |
const laconia = require("@laconia/core"); | |
const api = require("@laconia/adapter-api").apigateway({ inputType: "body" }); | |
const AWS = require('aws-sdk'); | |
const instances = ({ requestContext: { connectionId, domainName, stage } }) => ({ | |
send: async payload => { | |
const client = new AWS.ApiGatewayManagementApi({ | |
apiVersion: '2018-11-29', | |
endpoint: `https://${domainName}/${stage}` | |
}); |