Skip to content

Instantly share code, notes, and snippets.

View nikshinde-7's full-sized avatar

Nikhil Shinde nikshinde-7

View GitHub Profile
let promise = Promise.resolve(1)
let nestedPromise1 = (x) => Promise.resolve(x * 2)
let nestedPromise2 = (x) => Promise.resolve(x + 6)
const firstNestingResult = await promise.then(nestedPromise1).then(nestedPromise2);
const secondNestingResult = await promise.then((x) => nestedPromise1(x).then(nestedPromise2));
console.log(firstNestingResult == secondNestingResult);
// Should log as true ✅
let promise = Promise.resolve(1);
let wrapInPromise = (x) => Promise.resolve(x);
const boxResult = await promise.then(wrapInPromise);
const wrapperResult = await wrapInPromise(value);
console.log(boxResult == wrapperResult);
// Should log as true ✅
let value = 1;
let promise = Promise.resolve(value);
let wrapInPromise = (x) => Promise.resolve(x * 2);
const boxResult = await promise.then(wrapInPromise);
const wrapperResult = await wrapInPromise(value);
console.log(boxResult == wrapperResult);
// Should log as true ✅
// Thanks to top-level await 🤓
identityMonad(value)
 .bind(k)
 .bind(j, j1, j2)
 .bind(i, i2)
 .bind(h, h1, h2)
 .bind(g, g1, g2)
 .bind(f, f1, f2);
f(g(h(i(j(k(value), j1), i2), h1, h2), g1, g2), f1, f2);
{
"BitPayConfiguration": {
"Environment": "Test",
"EnvConfig": {
"Test": {
"PrivateKeyPath": "",
"PrivateKey": "<Your Private Key>",
"ApiTokens": {
"merchant": "<Your Bitpay merchant token>",
"payroll": "<Your Bitpay payroll token>"
const fs = require('fs');
// const request = require('client-request');
const axios = require('axios').default;
const BitPaySDK = require('../index');
const readline = require('readline');
let privateKeyPath = __dirname + '/../secure/private_key';
let ConfFilePath = __dirname + '/../secure/BitPay.config.json';
let keyUtils = new BitPaySDK.KeyUtils();
let keyPair;
let ecKey;
// To destroy the session we use this endpoint
router.get('/logout', (req, res) => {
req.logout();
req.session.destroy();
res.redirect(process.env.BASEURL);
});
// DeserializeUser gets called everytime when a route is hitted at backend server
passport.deserializeUser((req, user, done) => {
store.findUser(
null,
{ userName: user.email },
async (err, existingUser) => {
if(err) {
return done(err);
}
// serializeUser is just basically an lifecycle method in PassPortJS.
passport.serializeUser((user, done) => {
done(null, user);
});