npm init -y
npm i --save-dev nodemon
npm add babel-preset-env babel-cli
Create a .babelrc config in your project root. Insert the following
{
"presets": ["env"]
| // Log incoming traffic | |
| var metricStore = new Map(); | |
| /** | |
| * | |
| * @param {string} key | |
| * @returns {void} | |
| */ | |
| const getCount = (key) => metricStore.has(key) ? metricStore.get(key) + 1 : 1; |
| const compose = (...functions) => args => functions.reduceRight((arg, fn) => fn(arg), args); |
| const asyncRunAll = (arrOfFunc, numberOfWorkers) => { | |
| return new Promise((resolve, reject) => { | |
| if (!("length" in arrOfFunc) || arrOfFunc.length <= 0) return resolve([]); | |
| numberOfWorkers = Math.min( | |
| numberOfWorkers || arrOfFunc.length, | |
| arrOfFunc.length | |
| ); | |
| let stop = false; | |
| let freeWorkers = numberOfWorkers; | |
| let counter = 0; |
| var mongoose = require('mongoose'); | |
| mongoose.connect('localhost', 'testing_emitUpdate'); | |
| var Schema = mongoose.Schema; | |
| var schema = new Schema({ | |
| name: String | |
| }); | |
| // plumbing | |
| schema.pre('save', function (next) { |
| // import ..... | |
| const inputUploadFile: CSSProperties = { | |
| display: 'none', | |
| }; | |
| const buttonUploadFile: CSSProperties = { | |
| margin: 8, | |
| }; |
| const providerContent = await content.reduce((promises, item) => { | |
| const { html, type, url } = item; | |
| return promises.then(responses => { | |
| if (type === 'inlineText') { | |
| return new Promise(resolve => resolve(responses.concat([item]))); | |
| } | |
| return providerService.getProviderResponse({ url, provider: type }) | |
| .then(response => { | |
| return new Promise(resolve => { | |
| console.log({url}) |
| function requestAllWithDelay (urls, delay) { | |
| return urls.reduce((promise, url) => { | |
| return promise | |
| .then((responses) => { | |
| return fetch(url) // Or whatever request library you're using. If it doesn't support promises, you can wrap it in `new Promise((resolve, reject) => someLib(url, { onSuccess: resolve, onError: reject }));` or something similar. | |
| .then(response => { | |
| return new Promise(resolve => { | |
| setTimeout(resolve, delay, responses.concat(response)); // replies.concat might not work, depending on how you want to accumulate all the data. Maybe you don't even care about the responses? | |
| }) | |
| }) |
| function toMatrix(arr, rowSize) { | |
| var store = []; | |
| for (var i = 0; i < arr.length; i += rowSize) { | |
| store.push(data.slice(i, i + rowSize)); /*?*/ | |
| } | |
| return store; | |
| } | |
| toMatrix([1, 2, 3, 4, 5, 6, 7, 8, 9], 2); |
| { | |
| "extends": [ | |
| "airbnb", | |
| "prettier", | |
| "prettier/react" | |
| ], | |
| "parser": "babel-eslint", | |
| "parserOptions": { | |
| "ecmaVersion": 8, | |
| "ecmaFeatures": { |