Socket
Socket
Sign inDemoInstall

pvutils

Package Overview
Dependencies
Maintainers
2
Versions
20
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

pvutils - npm Package Compare versions

Comparing version 1.0.10 to 1.0.11

91

build/utils.js

@@ -23,3 +23,2 @@ "use strict";

exports.nearestPowerOf2 = nearestPowerOf2;
exports.generatorsDriver = generatorsDriver;
//**************************************************************************************

@@ -649,92 +648,2 @@ /**

//**************************************************************************************
//region GeneratorDriver's related functions
//**************************************************************************************
var isGenerator = function isGenerator(generator) {
if (typeof generator === "undefined") return false;
return typeof generator.next === "function" && typeof generator.throw === "function";
};
//**************************************************************************************
var isGeneratorFunction = function isGeneratorFunction(generator) {
if (typeof generator === "undefined") return false;
var constructor = generator.constructor;
if (!constructor) return false;
if (constructor.name === "GeneratorFunction" || constructor.displayName === "GeneratorFunction") return true;
return isGenerator(generator);
};
//**************************************************************************************
/**
* Simple "generator's driver" inspired by "https://github.com/tj/co".
* @param {Generator|GeneratorFunction} generatorInstance
* @returns {Promise}
*/
function generatorsDriver(generatorInstance) {
//region Check that we do have instance of "Generator" as input
if (!isGenerator(generatorInstance)) {
if (isGeneratorFunction(generatorInstance)) generatorInstance = generatorInstance();else throw new Error("Only generator instance of generator function is a valid input");
}
//endregion
return new Promise(function (resolve, reject) {
/**
* Driver function called on "reject" status in Promises
* @param {*} error
* @returns {*}
*/
var onReject = function onReject(error) {
var result = void 0;
try {
result = generatorInstance.throw(error);
} catch (ex) {
return reject(ex);
}
return callback(result);
};
/**
* Main driver function
* @param {*} [result]
* @returns {*}
*/
var callback = function callback(result) {
/**
* @type Object
* @property {boolean} done
* @property {*} value
*/
var generatorResult = void 0;
try {
generatorResult = generatorInstance.next(result);
} catch (ex) {
return reject(ex);
}
switch (true) {
case generatorResult.value instanceof Promise:
return generatorResult.done ? resolve(generatorResult.value) : generatorResult.value.then(callback, onReject);
case isGeneratorFunction(generatorResult.value):
case isGenerator(generatorResult.value):
return generatorResult.done ? generatorsDriver(generatorResult.value).then(function (driverResult) {
resolve(driverResult);
}, onReject) : generatorsDriver(generatorResult.value).then(callback, onReject);
case typeof generatorResult.value === "function":
generatorResult.value = generatorResult.value();
default:
return generatorResult.done ? resolve(generatorResult.value) : callback(generatorResult.value);
}
};
callback();
});
}
//**************************************************************************************
//endregion
//**************************************************************************************
//# sourceMappingURL=utils.js.map

2

package.json

@@ -29,4 +29,4 @@ {

"name": "pvutils",
"version": "1.0.10",
"version": "1.0.11",
"license": "MIT"
}

@@ -557,113 +557,1 @@ //**************************************************************************************

//**************************************************************************************
//region GeneratorDriver's related functions
//**************************************************************************************
const isGenerator = generator =>
{
if(typeof generator === "undefined")
return false;
return ((typeof generator.next === "function") && (typeof generator.throw === "function"));
};
//**************************************************************************************
const isGeneratorFunction = generator =>
{
if(typeof generator === "undefined")
return false;
const constructor = generator.constructor;
if(!constructor)
return false;
if((constructor.name === "GeneratorFunction") || (constructor.displayName === "GeneratorFunction"))
return true;
return isGenerator(generator);
};
//**************************************************************************************
/**
* Simple "generator's driver" inspired by "https://github.com/tj/co".
* @param {Generator|GeneratorFunction} generatorInstance
* @returns {Promise}
*/
export function generatorsDriver(generatorInstance)
{
//region Check that we do have instance of "Generator" as input
if(!isGenerator(generatorInstance))
{
if(isGeneratorFunction(generatorInstance))
generatorInstance = generatorInstance();
else
throw new Error("Only generator instance of generator function is a valid input");
}
//endregion
return new Promise((resolve, reject) =>
{
/**
* Driver function called on "reject" status in Promises
* @param {*} error
* @returns {*}
*/
const onReject = error =>
{
let result;
try
{
result = generatorInstance.throw(error);
}
catch(ex)
{
return reject(ex);
}
return callback(result);
};
/**
* Main driver function
* @param {*} [result]
* @returns {*}
*/
const callback = result =>
{
/**
* @type Object
* @property {boolean} done
* @property {*} value
*/
let generatorResult;
try
{
generatorResult = generatorInstance.next(result);
}
catch(ex)
{
return reject(ex);
}
switch(true)
{
case (generatorResult.value instanceof Promise):
return ((generatorResult.done) ? resolve(generatorResult.value) : generatorResult.value.then(callback, onReject));
case isGeneratorFunction(generatorResult.value):
case isGenerator(generatorResult.value):
return ((generatorResult.done) ? generatorsDriver(generatorResult.value).then(driverResult =>
{
resolve(driverResult);
}, onReject) : generatorsDriver(generatorResult.value).then(callback, onReject));
case (typeof generatorResult.value === "function"):
generatorResult.value = generatorResult.value();
default:
return (generatorResult.done) ? resolve(generatorResult.value) : callback(generatorResult.value);
}
};
callback();
});
}
//**************************************************************************************
//endregion
//**************************************************************************************

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc