/** * Copyright (c) HashiCorp, Inc. * SPDX-License-Identifier: MPL-2.0 */ /** * Promise aware conditional function call * * @param {function} cb - The function to possibily call * @param {Promise} [what] - A boolean resolving promise * @returns {function} - function when called returns a Promise that resolves the argument it is called with */ export default function (cb, what) { return function (res) { return what.then(function (bool) { if (bool) { cb(); } return res; }); }; }