Socket
Socket
Sign inDemoInstall

pxn-core

Package Overview
Dependencies
76
Maintainers
1
Versions
3
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 1.1.0 to 1.1.1

dist/node/utils/log.d.ts

8

CHANGELOG.md

@@ -5,2 +5,10 @@ # Changelog

### [1.1.1](https://github.com/wolframdeus/pxn-core/compare/v1.1.0...v1.1.1) (2021-04-20)
### Bug Fixes
* **animation:** comment setResize function ([0fbe9e7](https://github.com/wolframdeus/pxn-core/commit/0fbe9e7a21f7804302c5df10efafc8f5fed289b5))
* **loadframe:** fix image resizing ([f6d4290](https://github.com/wolframdeus/pxn-core/commit/f6d4290f8c5b4c9a485bf4086ed0cf95e8535165))
## 1.1.0 (2021-04-19)

@@ -7,0 +15,0 @@

5

dist/browser/Animation/Animation.d.ts

@@ -53,7 +53,2 @@ import { IAnimationConfig, IResizeConfig, TAnimationConfigFrame } from '../../shared';

/**
* Sets new resize.
* @param resize
*/
setResize(resize: IResizeConfig): void;
/**
* Returns current resize.

@@ -60,0 +55,0 @@ */

2

dist/browser/Animation/Animation.js

@@ -1,1 +0,1 @@

"use strict";var __assign=this&&this.__assign||function(){return(__assign=Object.assign||function(t){for(var e,i=1,n=arguments.length;i<n;i++)for(var r in e=arguments[i])Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t}).apply(this,arguments)},__awaiter=this&&this.__awaiter||function(t,e,i,n){return new(i||(i=Promise))(function(r,a){function o(t){try{u(n.next(t))}catch(t){a(t)}}function s(t){try{u(n.throw(t))}catch(t){a(t)}}function u(t){var e;t.done?r(t.value):(e=t.value,e instanceof i?e:new i(function(t){t(e)})).then(o,s)}u((n=n.apply(t,e||[])).next())})},__generator=this&&this.__generator||function(t,e){var i,n,r,a,o={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return a={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function s(a){return function(s){return function(a){if(i)throw new TypeError("Generator is already executing.");for(;o;)try{if(i=1,n&&(r=2&a[0]?n.return:a[0]?n.throw||((r=n.return)&&r.call(n),0):n.next)&&!(r=r.call(n,a[1])).done)return r;switch(n=0,r&&(a=[2&a[0],r.value]),a[0]){case 0:case 1:r=a;break;case 4:return o.label++,{value:a[1],done:!1};case 5:o.label++,n=a[1],a=[0];continue;case 7:a=o.ops.pop(),o.trys.pop();continue;default:if(!(r=(r=o.trys).length>0&&r[r.length-1])&&(6===a[0]||2===a[0])){o=0;continue}if(3===a[0]&&(!r||a[1]>r[0]&&a[1]<r[3])){o.label=a[1];break}if(6===a[0]&&o.label<r[1]){o.label=r[1],r=a;break}if(r&&o.label<r[2]){o.label=r[2],o.ops.push(a);break}r[2]&&o.ops.pop(),o.trys.pop();continue}a=e.call(t,o)}catch(t){a=[6,t],n=0}finally{i=r=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,s])}}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.Animation=void 0;var shared_1=require("../../shared"),utils_1=require("../utils"),utils_2=require("./utils"),Animation=function(){function t(t){this.isLoaded=!1,this.isLoading=!1,this.timings=[],this.loadedFrames=[],this._resize={type:"multiply",amount:1};var e=t.frames,i=t.width,n=t.height,r=t.resize,a=void 0===r?{type:"multiply",amount:1}:r;this.frames=e,this.initialWidth=i,this.initialHeight=n,this.setResize(a)}return t.prototype.getFrame=function(t){if(!this.isLoaded)throw new Error("Animation is not loaded, so it can not return frame");for(var e=this.loadedFrames.length,i=e-1,n=0,r=i;r>=0;r--){var a=this.timings[r];if(t===a){n=(r+1)%e;break}if(t>a){if(r!==i){n=r+1;break}t%=a}else n=r}return this.loadedFrames[n]},Object.defineProperty(t.prototype,"height",{get:function(){var t=this._resize,e=t.amount;return"multiply"===t.type?this.initialHeight*e:this.initialHeight/e},enumerable:!1,configurable:!0}),t.prototype.load=function(){return __awaiter(this,void 0,void 0,function(){var t,e,i=this;return __generator(this,function(n){switch(n.label){case 0:this.isLoading=!0,n.label=1;case 1:return n.trys.push([1,3,,4]),t=this,[4,Promise.all(this.frames.map(function(t){return __awaiter(i,void 0,void 0,function(){var e,i,n,r=this;return __generator(this,function(a){switch(a.label){case 0:return e=t.left,i=t.top,n=t.duration,[4,utils_1.loadImage("base64"in t?t.base64:t.path).then(function(t){return utils_1.resizeImage(t,r._resize)})];case 1:return[2,{image:a.sent(),left:e,top:i,duration:n}]}})})}))];case 2:return t.loadedFrames=n.sent(),this.timings=this.loadedFrames.reduce(function(t,e,i){return t.push(0===i?e.duration:e.duration+t[i-1]),t},[]),this.isLoaded=!0,[2,this];case 3:throw e=n.sent(),this.isLoading=!1,e;case 4:return[2]}})})},t.prototype.setResize=function(t){shared_1.applyResize(__assign(__assign({},t),{height:this.initialHeight,width:this.initialWidth})),this._resize=t},Object.defineProperty(t.prototype,"resize",{get:function(){return this._resize},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"width",{get:function(){var t=this._resize,e=t.amount;return"multiply"===t.type?this.initialWidth*e:this.initialWidth/e},enumerable:!1,configurable:!0}),t.fromConfigUrl=function(e,i){return void 0===i&&(i={}),__awaiter(void 0,void 0,void 0,function(){var n,r,a,o;return __generator(this,function(s){switch(s.label){case 0:return n=i.load,r=void 0!==n&&n,[4,utils_2.loadAnimationConfigFromUrl(e)];case 1:return a=s.sent(),o=new t(__assign(__assign({},a),i)),[2,r?o.load():o]}})})},t}();exports.Animation=Animation;
"use strict";var __assign=this&&this.__assign||function(){return(__assign=Object.assign||function(t){for(var e,i=1,n=arguments.length;i<n;i++)for(var r in e=arguments[i])Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t}).apply(this,arguments)},__awaiter=this&&this.__awaiter||function(t,e,i,n){return new(i||(i=Promise))(function(r,a){function o(t){try{u(n.next(t))}catch(t){a(t)}}function s(t){try{u(n.throw(t))}catch(t){a(t)}}function u(t){var e;t.done?r(t.value):(e=t.value,e instanceof i?e:new i(function(t){t(e)})).then(o,s)}u((n=n.apply(t,e||[])).next())})},__generator=this&&this.__generator||function(t,e){var i,n,r,a,o={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return a={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function s(a){return function(s){return function(a){if(i)throw new TypeError("Generator is already executing.");for(;o;)try{if(i=1,n&&(r=2&a[0]?n.return:a[0]?n.throw||((r=n.return)&&r.call(n),0):n.next)&&!(r=r.call(n,a[1])).done)return r;switch(n=0,r&&(a=[2&a[0],r.value]),a[0]){case 0:case 1:r=a;break;case 4:return o.label++,{value:a[1],done:!1};case 5:o.label++,n=a[1],a=[0];continue;case 7:a=o.ops.pop(),o.trys.pop();continue;default:if(!(r=(r=o.trys).length>0&&r[r.length-1])&&(6===a[0]||2===a[0])){o=0;continue}if(3===a[0]&&(!r||a[1]>r[0]&&a[1]<r[3])){o.label=a[1];break}if(6===a[0]&&o.label<r[1]){o.label=r[1],r=a;break}if(r&&o.label<r[2]){o.label=r[2],o.ops.push(a);break}r[2]&&o.ops.pop(),o.trys.pop();continue}a=e.call(t,o)}catch(t){a=[6,t],n=0}finally{i=r=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,s])}}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.Animation=void 0;var utils_1=require("../utils"),utils_2=require("./utils"),Animation=function(){function t(t){this.isLoaded=!1,this.isLoading=!1,this.timings=[],this.loadedFrames=[],this._resize={type:"multiply",amount:1};var e=t.frames,i=t.width,n=t.height;t.resize;this.frames=e,this.initialWidth=i,this.initialHeight=n}return t.prototype.getFrame=function(t){if(!this.isLoaded)throw new Error("Animation is not loaded, so it can not return frame");for(var e=this.loadedFrames.length,i=e-1,n=0,r=i;r>=0;r--){var a=this.timings[r];if(t===a){n=(r+1)%e;break}if(t>a){if(r!==i){n=r+1;break}t%=a}else n=r}return this.loadedFrames[n]},Object.defineProperty(t.prototype,"height",{get:function(){var t=this._resize,e=t.amount;return"multiply"===t.type?this.initialHeight*e:this.initialHeight/e},enumerable:!1,configurable:!0}),t.prototype.load=function(){return __awaiter(this,void 0,void 0,function(){var t,e,i=this;return __generator(this,function(n){switch(n.label){case 0:this.isLoading=!0,n.label=1;case 1:return n.trys.push([1,3,,4]),t=this,[4,Promise.all(this.frames.map(function(t){return __awaiter(i,void 0,void 0,function(){var e,i,n,r=this;return __generator(this,function(a){switch(a.label){case 0:return e=t.left,i=t.top,n=t.duration,[4,utils_1.loadImage("base64"in t?t.base64:t.path).then(function(t){return utils_1.resizeImage(t,r._resize)})];case 1:return[2,{image:a.sent(),left:e,top:i,duration:n}]}})})}))];case 2:return t.loadedFrames=n.sent(),this.timings=this.loadedFrames.reduce(function(t,e,i){return t.push(0===i?e.duration:e.duration+t[i-1]),t},[]),this.isLoaded=!0,[2,this];case 3:throw e=n.sent(),this.isLoading=!1,e;case 4:return[2]}})})},Object.defineProperty(t.prototype,"resize",{get:function(){return this._resize},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"width",{get:function(){var t=this._resize,e=t.amount;return"multiply"===t.type?this.initialWidth*e:this.initialWidth/e},enumerable:!1,configurable:!0}),t.fromConfigUrl=function(e,i){return void 0===i&&(i={}),__awaiter(void 0,void 0,void 0,function(){var n,r,a,o;return __generator(this,function(s){switch(s.label){case 0:return n=i.load,r=void 0!==n&&n,[4,utils_2.loadAnimationConfigFromUrl(e)];case 1:return a=s.sent(),o=new t(__assign(__assign({},a),i)),[2,r?o.load():o]}})})},t}();exports.Animation=Animation;

@@ -1,1 +0,1 @@

"use strict";var __awaiter=this&&this.__awaiter||function(e,t,n,i){return new(n||(n=Promise))(function(a,r){function o(e){try{l(i.next(e))}catch(e){r(e)}}function u(e){try{l(i.throw(e))}catch(e){r(e)}}function l(e){var t;e.done?a(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(o,u)}l((i=i.apply(e,t||[])).next())})},__generator=this&&this.__generator||function(e,t){var n,i,a,r,o={label:0,sent:function(){if(1&a[0])throw a[1];return a[1]},trys:[],ops:[]};return r={next:u(0),throw:u(1),return:u(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function u(r){return function(u){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;o;)try{if(n=1,i&&(a=2&r[0]?i.return:r[0]?i.throw||((a=i.return)&&a.call(i),0):i.next)&&!(a=a.call(i,r[1])).done)return a;switch(i=0,a&&(r=[2&r[0],a.value]),r[0]){case 0:case 1:a=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,i=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(a=(a=o.trys).length>0&&a[a.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!a||r[1]>a[0]&&r[1]<a[3])){o.label=r[1];break}if(6===r[0]&&o.label<a[1]){o.label=a[1],a=r;break}if(a&&o.label<a[2]){o.label=a[2],o.ops.push(r);break}a[2]&&o.ops.pop(),o.trys.pop();continue}r=t.call(e,o)}catch(e){r=[6,e],i=0}finally{n=a=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,u])}}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.loadFrame=void 0;var canvas_1=require("canvas"),utils_1=require("../utils"),shared_1=require("../../shared");function loadFrame(e){return __awaiter(this,void 0,void 0,function(){var t,n,i,a,r,o,u,l,s,c,d,h,p,f,v,y,m,_,g,b,w;return __generator(this,function(x){switch(x.label){case 0:return t=e.path,n=e.duration,i=e.left,a=void 0===i?0:i,r=e.top,o=void 0===r?0:r,utils_1.validateImagePath(t,"input"),shared_1.validatePositiveInt(n,"duration"),shared_1.validateInt(a,"left"),shared_1.validateInt(o,"top"),[4,canvas_1.loadImage(t)];case 1:return u=x.sent(),l=u.width,s=u.height,"multiply"in e||"height"in e||"width"in e?"multiply"in e?c={type:"multiply",amount:e.multiply}:"height"in e?(d=e.height,c=d>l?{type:"multiply",amount:d/s}:{type:"divide",amount:s/d}):(h=e.width,c=h>l?{type:"multiply",amount:h/l}:{type:"divide",amount:l/h}):c="divide"in e?{type:"divide",amount:e.divide}:"autoSize"in e?null:{type:"multiply",amount:1},null!==c?[3,3]:[4,utils_1.autoResizeImage(u)];case 2:return f=x.sent(),[3,5];case 3:return[4,utils_1.resizeImage(u,c,!0)];case 4:f=x.sent(),x.label=5;case 5:return p=f,[4,utils_1.cutImage(p)];case 6:return v=x.sent(),y=v.image,m=v.offsets,_=m[0],g=m[1],b=m[2],w=m[3],[2,{image:y,offsets:[o+_,g,b,a+w],duration:n,resolution:utils_1.getResolution(y)}]}})})}exports.loadFrame=loadFrame;
"use strict";var __awaiter=this&&this.__awaiter||function(t,e,n,i){return new(n||(n=Promise))(function(a,r){function o(t){try{l(i.next(t))}catch(t){r(t)}}function u(t){try{l(i.throw(t))}catch(t){r(t)}}function l(t){var e;t.done?a(t.value):(e=t.value,e instanceof n?e:new n(function(t){t(e)})).then(o,u)}l((i=i.apply(t,e||[])).next())})},__generator=this&&this.__generator||function(t,e){var n,i,a,r,o={label:0,sent:function(){if(1&a[0])throw a[1];return a[1]},trys:[],ops:[]};return r={next:u(0),throw:u(1),return:u(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function u(r){return function(u){return function(r){if(n)throw new TypeError("Generator is already executing.");for(;o;)try{if(n=1,i&&(a=2&r[0]?i.return:r[0]?i.throw||((a=i.return)&&a.call(i),0):i.next)&&!(a=a.call(i,r[1])).done)return a;switch(i=0,a&&(r=[2&r[0],a.value]),r[0]){case 0:case 1:a=r;break;case 4:return o.label++,{value:r[1],done:!1};case 5:o.label++,i=r[1],r=[0];continue;case 7:r=o.ops.pop(),o.trys.pop();continue;default:if(!(a=(a=o.trys).length>0&&a[a.length-1])&&(6===r[0]||2===r[0])){o=0;continue}if(3===r[0]&&(!a||r[1]>a[0]&&r[1]<a[3])){o.label=r[1];break}if(6===r[0]&&o.label<a[1]){o.label=a[1],a=r;break}if(a&&o.label<a[2]){o.label=a[2],o.ops.push(r);break}a[2]&&o.ops.pop(),o.trys.pop();continue}r=e.call(t,o)}catch(t){r=[6,t],i=0}finally{n=a=0}if(5&r[0])throw r[1];return{value:r[0]?r[1]:void 0,done:!0}}([r,u])}}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.loadFrame=void 0;var canvas_1=require("canvas"),utils_1=require("../utils"),shared_1=require("../../shared");function loadFrame(t){return __awaiter(this,void 0,void 0,function(){var e,n,i,a,r,o,u,l,s,c,d,h,p,f,v,y,m,_,g,w;return __generator(this,function(b){switch(b.label){case 0:return e=t.path,n=t.duration,i=t.left,a=void 0===i?0:i,r=t.top,o=void 0===r?0:r,utils_1.validateImagePath(e,"input"),shared_1.validatePositiveInt(n,"duration"),shared_1.validateInt(a,"left"),shared_1.validateInt(o,"top"),[4,canvas_1.loadImage(e)];case 1:return u=b.sent(),l=u.width,s=u.height,"multiply"in t||"height"in t||"width"in t?"multiply"in t?c={type:"multiply",amount:t.multiply}:"height"in t?(d=t.height,c=d>l?{type:"multiply",amount:d/s}:{type:"divide",amount:s/d}):(h=t.width,c=h>l?{type:"multiply",amount:h/l}:{type:"divide",amount:l/h}):c="divide"in t?{type:"divide",amount:t.divide}:"autoSize"in t?null:{type:"multiply",amount:1},[4,utils_1.resizeImage(u,null===c?{auto:!0}:{config:c})];case 2:return p=b.sent(),[4,utils_1.cutImage(p)];case 3:return f=b.sent(),v=f.image,y=f.offsets,m=y[0],_=y[1],g=y[2],w=y[3],[2,{image:v,offsets:[o+m,_,g,a+w],duration:n,resolution:utils_1.getResolution(v)}]}})})}exports.loadFrame=loadFrame;

@@ -1,2 +0,2 @@

import { IPixelOptions, IResizeOptions } from './types';
import { ICutOptions, IPixelOptions, TResizeOptions } from './types';
/**

@@ -7,6 +7,6 @@ * Class which is responsible for tasks connected with image files.

/**
* Resizes image.
* Cut image transparent spaces. Image will still has rectangle form.
* @param options
*/
static resize(options: IResizeOptions): Promise<void>;
static cut(options: ICutOptions): Promise<void>;
/**

@@ -17,2 +17,7 @@ * Makes image pixeled.

static pixel(options: IPixelOptions): Promise<void>;
/**
* Resizes image.
* @param options
*/
static resize(options: TResizeOptions): Promise<void>;
}

@@ -1,1 +0,1 @@

"use strict";var __awaiter=this&&this.__awaiter||function(t,e,a,n){return new(a||(a=Promise))(function(r,o){function i(t){try{s(n.next(t))}catch(t){o(t)}}function u(t){try{s(n.throw(t))}catch(t){o(t)}}function s(t){var e;t.done?r(t.value):(e=t.value,e instanceof a?e:new a(function(t){t(e)})).then(i,u)}s((n=n.apply(t,e||[])).next())})},__generator=this&&this.__generator||function(t,e){var a,n,r,o,i={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return o={next:u(0),throw:u(1),return:u(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function u(o){return function(u){return function(o){if(a)throw new TypeError("Generator is already executing.");for(;i;)try{if(a=1,n&&(r=2&o[0]?n.return:o[0]?n.throw||((r=n.return)&&r.call(n),0):n.next)&&!(r=r.call(n,o[1])).done)return r;switch(n=0,r&&(o=[2&o[0],r.value]),o[0]){case 0:case 1:r=o;break;case 4:return i.label++,{value:o[1],done:!1};case 5:i.label++,n=o[1],o=[0];continue;case 7:o=i.ops.pop(),i.trys.pop();continue;default:if(!(r=(r=i.trys).length>0&&r[r.length-1])&&(6===o[0]||2===o[0])){i=0;continue}if(3===o[0]&&(!r||o[1]>r[0]&&o[1]<r[3])){i.label=o[1];break}if(6===o[0]&&i.label<r[1]){i.label=r[1],r=o;break}if(r&&i.label<r[2]){i.label=r[2],i.ops.push(o);break}r[2]&&i.ops.pop(),i.trys.pop();continue}o=e.call(t,i)}catch(t){o=[6,t],n=0}finally{a=r=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,u])}}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.ImagesProcessor=void 0;var canvas_1=require("canvas"),utils_1=require("../utils"),ImagesProcessor=function(){function t(){}return t.resize=function(t){return __awaiter(this,void 0,void 0,function(){var e,a,n,r,o,i,u,s,c;return __generator(this,function(l){switch(l.label){case 0:return e=t.outputPath,a=t.path,n=t.amount,r=t.type,utils_1.validateImagePath(a,"input"),utils_1.validateImagePath(e,"output"),[4,canvas_1.loadImage(a).then(function(t){return utils_1.resizeImage(t,{amount:n,type:r})})];case 1:return o=l.sent(),i=o.width,u=o.height,s=canvas_1.createCanvas(i,u),(c=s.getContext("2d")).imageSmoothingEnabled=!1,c.drawImage(o,0,0,i,u),utils_1.exportCanvas(s,e),[2]}})})},t.pixel=function(t){return __awaiter(this,void 0,void 0,function(){var e,a,n,r,o,i,u,s,c,l,h,f,p,d,v,g,_,m,w,b,y,I,x;return __generator(this,function(P){switch(P.label){case 0:return e=t.precision,a=t.outputPath,n=t.path,utils_1.validateImagePath(n,"input"),utils_1.validateImagePath(a,"output"),[4,canvas_1.loadImage(n)];case 1:for(r=P.sent(),o=r.width,i=r.height,u=canvas_1.createCanvas(o,i),(s=u.getContext("2d")).imageSmoothingEnabled=!1,s.drawImage(r,0,0),c=Math.ceil(o/e),l=Math.ceil(i/e),h=Math.pow(e,2),f=0;f<c;f++)for(p=f*e,d=0;d<l;d++){for(v=d*e,g=s.getImageData(p,v,e,e),_=0,m=0,w=0,b=0,I=0;I<h;I++)x=4*I,y=g.data.slice(x,x+4),_+=y[0],m+=y[1],w+=y[2],b+=y[3];for(_/=h,m/=h,w/=h,b/=h,I=0;I<h;I++)x=4*I,g.data[x]=_,g.data[x+1]=m,g.data[x+2]=w,g.data[x+3]=b;s.putImageData(g,p,v)}return utils_1.exportCanvas(u,a),[2]}})})},t}();exports.ImagesProcessor=ImagesProcessor;
"use strict";var __awaiter=this&&this.__awaiter||function(e,t,a,r){return new(a||(a=Promise))(function(n,i){function o(e){try{u(r.next(e))}catch(e){i(e)}}function s(e){try{u(r.throw(e))}catch(e){i(e)}}function u(e){var t;e.done?n(e.value):(t=e.value,t instanceof a?t:new a(function(e){e(t)})).then(o,s)}u((r=r.apply(e,t||[])).next())})},__generator=this&&this.__generator||function(e,t){var a,r,n,i,o={label:0,sent:function(){if(1&n[0])throw n[1];return n[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(a)throw new TypeError("Generator is already executing.");for(;o;)try{if(a=1,r&&(n=2&i[0]?r.return:i[0]?r.throw||((n=r.return)&&n.call(r),0):r.next)&&!(n=n.call(r,i[1])).done)return n;switch(r=0,n&&(i=[2&i[0],n.value]),i[0]){case 0:case 1:n=i;break;case 4:return o.label++,{value:i[1],done:!1};case 5:o.label++,r=i[1],i=[0];continue;case 7:i=o.ops.pop(),o.trys.pop();continue;default:if(!(n=(n=o.trys).length>0&&n[n.length-1])&&(6===i[0]||2===i[0])){o=0;continue}if(3===i[0]&&(!n||i[1]>n[0]&&i[1]<n[3])){o.label=i[1];break}if(6===i[0]&&o.label<n[1]){o.label=n[1],n=i;break}if(n&&o.label<n[2]){o.label=n[2],o.ops.push(i);break}n[2]&&o.ops.pop(),o.trys.pop();continue}i=t.call(e,o)}catch(e){i=[6,e],r=0}finally{a=n=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,s])}}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.ImagesProcessor=void 0;var canvas_1=require("canvas"),utils_1=require("../utils"),ImagesProcessor=function(){function e(){}return e.cut=function(e){return __awaiter(this,void 0,void 0,function(){var t,a,r;return __generator(this,function(n){switch(n.label){case 0:return t=e.outputPath,a=e.path,utils_1.validateImagePath(t,"output"),[4,canvas_1.loadImage(a).then(utils_1.cutImage).then(function(e){return e.image})];case 1:return r=n.sent(),utils_1.exportCanvas(utils_1.createCanvasFromImage(r),t),[2]}})})},e.pixel=function(e){return __awaiter(this,void 0,void 0,function(){var t,a,r,n;return __generator(this,function(i){switch(i.label){case 0:return t=e.resolution,a=e.outputPath,r=e.path,utils_1.validateImagePath(a,"output"),[4,canvas_1.loadImage(r).then(function(e){return utils_1.pixelImage(e,t)})];case 1:return n=i.sent(),utils_1.exportCanvas(utils_1.createCanvasFromImage(n),a),[2]}})})},e.resize=function(e){return __awaiter(this,void 0,void 0,function(){var t,a,r,n;return __generator(this,function(i){switch(i.label){case 0:return t=e.outputPath,a=e.path,utils_1.validateImagePath(t,"output"),[4,canvas_1.loadImage(a)];case 1:return r=i.sent(),[4,utils_1.resizeImage(r,e)];case 2:return n=i.sent(),r===n&&("auto"in e?utils_1.warn('Image was not resized due to its resolution is 1. The reason is image is probably already minimized, or maybe it was not made in pixel images editor. Try to use "pixel" method to make image pixeled.'):utils_1.warn("Image was not changed after resize. Probably, the reason is you passed amount = 1 into resize config.")),utils_1.exportCanvas(utils_1.createCanvasFromImage(n),t),[2]}})})},e}();exports.ImagesProcessor=ImagesProcessor;
import { IResizeConfig } from '../../shared';
export interface IResizeOptions extends IResizeConfig {
interface IInputOutput {
/**

@@ -12,16 +12,16 @@ * Path to source image file.

}
export interface IPixelOptions {
export declare type TResizeOptions = IInputOutput & ({
config: IResizeConfig;
} | {
auto: true;
});
export interface IPixelOptions extends IInputOutput {
/**
* Path to image file.
*/
path: string;
/**
* How many pixels should be taken to create new pixel. Pixels are taken
* with square which square is equal to precision ** 2.
* with square which square is equal to resolution ** 2.
*/
precision: number;
/**
* Path to output file.
*/
outputPath: string;
resolution: number;
}
export interface ICutOptions extends IInputOutput {
}
export {};

@@ -1,2 +0,2 @@

import { Canvas } from 'canvas';
import { Canvas, Image } from 'canvas';
/**

@@ -8,1 +8,11 @@ * Exports canvas to specified path.

export declare function exportCanvas(canvas: Canvas, path: string): void;
/**
* Creates canvas from image with its sizes.
* @param image
*/
export declare function createCanvasFromImage(image: Image): Canvas;
/**
* Creates image from canvas.
* @param canvas
*/
export declare function createImageFromCanvas(canvas: Canvas): Promise<Image>;

@@ -1,1 +0,1 @@

"use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.exportCanvas=void 0;var path_1=__importDefault(require("path")),fs_1=__importDefault(require("fs")),validators_1=require("./validators");function exportCanvas(e,t){validators_1.validateImagePath(t,"output");var a=path_1.default.parse(t),r=a.ext,i=a.dir,s=".png"===r?e.toBuffer("image/png",{compressionLevel:9}):e.toBuffer("image/jpeg",{quality:1});fs_1.default.existsSync(i)||fs_1.default.mkdirSync(i),fs_1.default.writeFileSync(t,s)}exports.exportCanvas=exportCanvas;
"use strict";var __importDefault=this&&this.__importDefault||function(a){return a&&a.__esModule?a:{default:a}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.createImageFromCanvas=exports.createCanvasFromImage=exports.exportCanvas=void 0;var canvas_1=require("canvas"),path_1=__importDefault(require("path")),fs_1=__importDefault(require("fs")),validators_1=require("./validators");function exportCanvas(a,e){validators_1.validateImagePath(e,"output");var t=path_1.default.parse(e),r=t.ext,o=t.dir,s=".png"===r?a.toBuffer("image/png",{compressionLevel:9}):a.toBuffer("image/jpeg",{quality:1});fs_1.default.existsSync(o)||fs_1.default.mkdirSync(o),fs_1.default.writeFileSync(e,s)}function createCanvasFromImage(a){var e=canvas_1.createCanvas(a.width,a.height),t=e.getContext("2d");return t.imageSmoothingEnabled=!1,t.drawImage(a,0,0),e}function createImageFromCanvas(a){return canvas_1.loadImage(a.toDataURL("image/png"))}exports.exportCanvas=exportCanvas,exports.createCanvasFromImage=createCanvasFromImage,exports.createImageFromCanvas=createImageFromCanvas;

@@ -8,4 +8,9 @@ import { Image } from 'canvas';

}
declare type TResizeImageOption = {
config: IResizeConfig;
} | {
auto: true;
};
/**
* Returns initial offsets which are used to calculate normal values.
* Returns initial offsets which are used to calculate normal offset values.
*/

@@ -35,9 +40,15 @@ export declare function getInitialOffsets(): TOffsets;

/**
* Rescales image.
* Rescales image. In case, resize config is not specified, auto size will
* be applied.
* @param image
* @param config
* @param detectResolutionLost
* @param resizeOption
*/
export declare function resizeImage(image: Image, config: IResizeConfig, detectResolutionLost?: boolean): Promise<Image>;
export declare function resizeImage(image: Image, resizeOption: TResizeImageOption): Promise<Image>;
/**
* Pixelizes image.
* @param image
* @param resolution
*/
export declare function pixelImage(image: Image, resolution: number): Promise<Image>;
/**
* Resizes image according to found image resolution.

@@ -44,0 +55,0 @@ * @param image

@@ -1,1 +0,1 @@

"use strict";var __awaiter=this&&this.__awaiter||function(e,t,r,a){return new(r||(r=Promise))(function(n,i){function o(e){try{f(a.next(e))}catch(e){i(e)}}function s(e){try{f(a.throw(e))}catch(e){i(e)}}function f(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r(function(e){e(t)})).then(o,s)}f((a=a.apply(e,t||[])).next())})},__generator=this&&this.__generator||function(e,t){var r,a,n,i,o={label:0,sent:function(){if(1&n[0])throw n[1];return n[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(r)throw new TypeError("Generator is already executing.");for(;o;)try{if(r=1,a&&(n=2&i[0]?a.return:i[0]?a.throw||((n=a.return)&&n.call(a),0):a.next)&&!(n=n.call(a,i[1])).done)return n;switch(a=0,n&&(i=[2&i[0],n.value]),i[0]){case 0:case 1:n=i;break;case 4:return o.label++,{value:i[1],done:!1};case 5:o.label++,a=i[1],i=[0];continue;case 7:i=o.ops.pop(),o.trys.pop();continue;default:if(!(n=(n=o.trys).length>0&&n[n.length-1])&&(6===i[0]||2===i[0])){o=0;continue}if(3===i[0]&&(!n||i[1]>n[0]&&i[1]<n[3])){o.label=i[1];break}if(6===i[0]&&o.label<n[1]){o.label=n[1],n=i;break}if(n&&o.label<n[2]){o.label=n[2],o.ops.push(i);break}n[2]&&o.ops.pop(),o.trys.pop();continue}i=t.call(e,o)}catch(e){i=[6,e],a=0}finally{r=n=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,s])}}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.getResolution=exports.autoResizeImage=exports.resizeImage=exports.cutImage=exports.getImageOffsets=exports.formatOffsets=exports.mergeOffsets=exports.getInitialOffsets=void 0;var canvas_1=require("canvas"),shared_1=require("../../shared");function getInitialOffsets(){return[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]}function mergeOffsets(e,t){for(var r=0;r<4;r++)e[r]=Math.min(e[r],t[r])}function formatOffsets(e){for(var t=getInitialOffsets(),r=0;r<4;r++)e[r]===t[r]&&(e[r]=0)}function getImageOffsets(e){var t=e.width,r=e.height,a=canvas_1.createCanvas(t,r).getContext("2d");a.imageSmoothingEnabled=!1,a.drawImage(e,0,0);for(var n=getInitialOffsets(),i=0;i<r;i++)for(var o=0;o<t;o++){a.getImageData(o,i,1,1).data[3]>0&&mergeOffsets(n,[i,t-o-1,r-i-1,o])}return formatOffsets(n),n}function cutImage(e){return __awaiter(this,void 0,void 0,function(){var t,r,a,n,i,o,s,f,u,g,c;return __generator(this,function(l){switch(l.label){case 0:return t=getImageOffsets(e),r=t[0],a=t[1],n=t[2],i=t[3],o=e.width,s=e.height,f=o-i-a,u=s-r-n,g=canvas_1.createCanvas(f,u),(c=g.getContext("2d")).imageSmoothingEnabled=!1,c.drawImage(e,i,r,f,u,0,0,f,u),[4,canvas_1.loadImage(g.toDataURL("image/png"))];case 1:return[2,{image:l.sent(),offsets:t}]}})})}function resizeImage(e,t,r){return void 0===r&&(r=!1),__awaiter(this,void 0,void 0,function(){var a,n,i,o,s,f,u,g,c,l;return __generator(this,function(m){switch(m.label){case 0:return a=t.amount,n=t.type,i=shared_1.applyResize({amount:a,type:n,height:e.height,width:e.width}),o=i.width,s=i.height,f=canvas_1.createCanvas(o,s),(u=f.getContext("2d")).imageSmoothingEnabled=!1,u.drawImage(e,0,0,o,s),[4,canvas_1.loadImage(f.toDataURL("image/png"))];case 1:return g=m.sent(),r&&(c=getResolution(e)*(o/e.width),l=getResolution(g),c!==l&&console.warn("Image resolution was lost while resizing image")),[2,g]}})})}function autoResizeImage(e){return __awaiter(this,void 0,void 0,function(){var t;return __generator(this,function(r){return[2,1===(t=getResolution(e))?e:resizeImage(e,{type:"divide",amount:t})]})})}function getDivisors(e){for(var t=[],r=e;r>0;r--)e%r==0&&t.push(r);return t}function getResolution(e){var t=e.width,r=e.height,a=canvas_1.createCanvas(t,r).getContext("2d");a.imageSmoothingEnabled=!1,a.drawImage(e,0,0,t,r);var n=getDivisors(t),i=getDivisors(r),o=n.filter(function(e){return i.includes(e)&&1!==e});if(0===o.length)return 1;for(var s=0,f=o;s<f.length;s++){for(var u=f[s],g=!1,c=0;c<r;c+=u){for(var l=function(e){var t=a.getImageData(e,c,u,u).data,r=[t[0],t[1],t[2],t[3]];if(g=t.some(function(e,t){return r[t%4]!==e}))return"break"},m=0;m<t;m+=u){if("break"===l(m))break}if(g)break}if(!g)return u}return 1}exports.getInitialOffsets=getInitialOffsets,exports.mergeOffsets=mergeOffsets,exports.formatOffsets=formatOffsets,exports.getImageOffsets=getImageOffsets,exports.cutImage=cutImage,exports.resizeImage=resizeImage,exports.autoResizeImage=autoResizeImage,exports.getResolution=getResolution;
"use strict";var __awaiter=this&&this.__awaiter||function(e,t,a,r){return new(a||(a=Promise))(function(n,o){function i(e){try{f(r.next(e))}catch(e){o(e)}}function s(e){try{f(r.throw(e))}catch(e){o(e)}}function f(e){var t;e.done?n(e.value):(t=e.value,t instanceof a?t:new a(function(e){e(t)})).then(i,s)}f((r=r.apply(e,t||[])).next())})},__generator=this&&this.__generator||function(e,t){var a,r,n,o,i={label:0,sent:function(){if(1&n[0])throw n[1];return n[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(a)throw new TypeError("Generator is already executing.");for(;i;)try{if(a=1,r&&(n=2&o[0]?r.return:o[0]?r.throw||((n=r.return)&&n.call(r),0):r.next)&&!(n=n.call(r,o[1])).done)return n;switch(r=0,n&&(o=[2&o[0],n.value]),o[0]){case 0:case 1:n=o;break;case 4:return i.label++,{value:o[1],done:!1};case 5:i.label++,r=o[1],o=[0];continue;case 7:o=i.ops.pop(),i.trys.pop();continue;default:if(!(n=(n=i.trys).length>0&&n[n.length-1])&&(6===o[0]||2===o[0])){i=0;continue}if(3===o[0]&&(!n||o[1]>n[0]&&o[1]<n[3])){i.label=o[1];break}if(6===o[0]&&i.label<n[1]){i.label=n[1],n=o;break}if(n&&i.label<n[2]){i.label=n[2],i.ops.push(o);break}n[2]&&i.ops.pop(),i.trys.pop();continue}o=t.call(e,i)}catch(e){o=[6,e],r=0}finally{a=n=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,s])}}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.getResolution=exports.autoResizeImage=exports.pixelImage=exports.resizeImage=exports.cutImage=exports.getImageOffsets=exports.formatOffsets=exports.mergeOffsets=exports.getInitialOffsets=void 0;var canvas_1=require("canvas"),shared_1=require("../../shared"),canvas_2=require("./canvas");function getInitialOffsets(){return[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]}function mergeOffsets(e,t){t.forEach(function(t,a){return e[a]=Math.min(e[a],t)})}function formatOffsets(e){getInitialOffsets().forEach(function(t,a){e[a]===t&&(e[a]=0)})}function getImageOffsets(e){for(var t=getInitialOffsets(),a=canvas_2.createCanvasFromImage(e),r=a.getContext("2d"),n=a.height,o=a.width,i=0;i<n;i++)for(var s=0;s<o;s++){r.getImageData(s,i,1,1).data[3]>0&&mergeOffsets(t,[i,o-s-1,n-i-1,s])}return formatOffsets(t),t}function cutImage(e){return __awaiter(this,void 0,void 0,function(){var t,a,r,n,o,i,s,f,u,g,c;return __generator(this,function(l){switch(l.label){case 0:return t=getImageOffsets(e),a=t[0],r=t[1],n=t[2],o=t[3],i=e.width,s=e.height,f=i-o-r,u=s-a-n,g=canvas_1.createCanvas(f,u),(c=g.getContext("2d")).imageSmoothingEnabled=!1,c.drawImage(e,o,a,f,u,0,0,f,u),[4,canvas_1.loadImage(g.toDataURL("image/png"))];case 1:return[2,{image:l.sent(),offsets:t}]}})})}function resizeImage(e,t){return __awaiter(this,void 0,void 0,function(){var a,r,n,o,i,s,f,u;return __generator(this,function(g){return"auto"in t?[2,autoResizeImage(e)]:(a=t.config,r=a.amount,n=a.type,o=shared_1.applyResize({amount:r,type:n,image:e}),i=o.width,s=o.height,f=canvas_1.createCanvas(i,s),(u=f.getContext("2d")).imageSmoothingEnabled=!1,u.drawImage(e,0,0,i,s),[2,canvas_2.createImageFromCanvas(f)])})})}function pixelImage(e,t){return __awaiter(this,void 0,void 0,function(){var a,r,n,o,i,s,f,u,g,c;return __generator(this,function(l){if(a=e.width,r=e.height,n=canvas_1.createCanvas(a,r),(o=n.getContext("2d")).imageSmoothingEnabled=!1,o.drawImage(e,0,0),a%t!=0)throw new Error("Unable to pixel image due to its width is not dividable by resolution");if(r%t!=0)throw new Error("Unable to pixel image due to its height is not dividable by resolution");for(i=Math.floor(a/t),s=Math.floor(r/t),f=0;f<s;f++)for(u=f*t,g=function(e){var a=e*t,r=o.getImageData(a,u,t,t),n=[0,0,0,0];r.data.forEach(function(e,t){n[t%4]+=e}),n.forEach(function(e,t){n[t]=Math.floor(n[t]/r.data.length)}),r.data.forEach(function(e,t){r.data[t]=n[t%4]}),o.putImageData(r,a,u)},c=0;c<i;c++)g(c);return[2,canvas_2.createImageFromCanvas(n)]})})}function autoResizeImage(e){return __awaiter(this,void 0,void 0,function(){var t;return __generator(this,function(a){return[2,1===(t=getResolution(e))?e:resizeImage(e,{config:{type:"divide",amount:t}})]})})}function getDivisors(e){for(var t=[],a=e;a>0;a--)e%a==0&&t.push(a);return t}function getResolution(e){var t=e.width,a=e.height,r=canvas_1.createCanvas(t,a).getContext("2d");r.imageSmoothingEnabled=!1,r.drawImage(e,0,0,t,a);var n=getDivisors(t),o=getDivisors(a),i=n.filter(function(e){return o.includes(e)&&1!==e});if(0===i.length)return 1;for(var s=0,f=i;s<f.length;s++){for(var u=f[s],g=!1,c=0;c<a;c+=u){for(var l=function(e){var t=r.getImageData(e,c,u,u).data,a=[t[0],t[1],t[2],t[3]];if(g=t.some(function(e,t){return a[t%4]!==e}))return"break"},m=0;m<t;m+=u){if("break"===l(m))break}if(g)break}if(!g)return u}return 1}exports.getInitialOffsets=getInitialOffsets,exports.mergeOffsets=mergeOffsets,exports.formatOffsets=formatOffsets,exports.getImageOffsets=getImageOffsets,exports.cutImage=cutImage,exports.resizeImage=resizeImage,exports.pixelImage=pixelImage,exports.autoResizeImage=autoResizeImage,exports.getResolution=getResolution;
export * from './canvas';
export * from './image';
export * from './log';
export * from './validators';

@@ -1,1 +0,1 @@

"use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(e,t,r,i){void 0===i&&(i=r),Object.defineProperty(e,i,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,i){void 0===i&&(i=r),e[i]=t[r]}),__exportStar=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||__createBinding(t,e,r)};Object.defineProperty(exports,"__esModule",{value:!0}),__exportStar(require("./canvas"),exports),__exportStar(require("./image"),exports),__exportStar(require("./validators"),exports);
"use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(e,r,t,i){void 0===i&&(i=t),Object.defineProperty(e,i,{enumerable:!0,get:function(){return r[t]}})}:function(e,r,t,i){void 0===i&&(i=t),e[i]=r[t]}),__exportStar=this&&this.__exportStar||function(e,r){for(var t in e)"default"===t||Object.prototype.hasOwnProperty.call(r,t)||__createBinding(r,e,t)};Object.defineProperty(exports,"__esModule",{value:!0}),__exportStar(require("./canvas"),exports),__exportStar(require("./image"),exports),__exportStar(require("./log"),exports),__exportStar(require("./validators"),exports);

@@ -1,17 +0,22 @@

import { TResizeType } from '../types';
interface IApplyResizeOptions {
amount: number;
type: TResizeType;
import { IResizeConfig } from '../types';
import { Image } from 'canvas';
interface IApplyResizeByMetaOptions extends IResizeConfig {
resolution: number;
width: number;
height: number;
}
interface IApplyResizeBeImageOptions extends IResizeConfig {
image: Image;
}
declare type TApplyResizeOptions = IApplyResizeByMetaOptions | IApplyResizeBeImageOptions;
interface IApplyResizeResult {
width: number;
height: number;
resolution: number;
}
/**
* Applies resize option to width and height.
* Applies resize option checking if it can be applied to image.
* @param options
*/
export declare function applyResize(options: IApplyResizeOptions): IApplyResizeResult;
export declare function applyResize(options: TApplyResizeOptions): IApplyResizeResult;
export {};

@@ -1,1 +0,1 @@

"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.applyResize=void 0;var validators_1=require("./validators");function applyResize(e){var i,t,a=e.amount,s=e.type,o=e.height,r=e.width;return"multiply"===s?(i=r*a,t=o*a):(i=r/a,t=o/a),validators_1.validatePositiveInt(i,"Width should be positive integer"),validators_1.validatePositiveInt(t,"Height should be positive integer"),{width:i,height:t}}exports.applyResize=applyResize;
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.applyResize=void 0;var validators_1=require("./validators"),node_1=require("../../node");function applyResize(e){var i,t,o,s,a,r,d=e.amount,l=e.type;if("image"in e){var p=e.image;o=node_1.getResolution(p),t=p.width,i=p.height}else i=e.height,t=e.width,o=e.resolution;return"multiply"===l?(s=t*d,a=i*d,r=o*d):(s=t/d,a=i/d,r=o/d),validators_1.validatePositiveInt(s,"Computed width should be positive integer"),validators_1.validatePositiveInt(a,"Computed height should be positive integer"),validators_1.validatePositiveInt(r,"Computed resolution should be positive integer"),{width:s,height:a,resolution:r}}exports.applyResize=applyResize;

@@ -0,1 +1,5 @@

/**
* States that value is Record.
* @param value
*/
export declare function isRecord(value: any): value is Record<string, any>;

@@ -2,0 +6,0 @@ /**

{
"name": "pxn-core",
"version": "1.1.0",
"version": "1.1.1",
"main": "dist/index.js",

@@ -79,2 +79,3 @@ "types": "dist/index.d.ts",

"canvas": "^2.7.0",
"chalk": "^4.1.0",
"commander": "^7.2.0",

@@ -81,0 +82,0 @@ "fs-extra": "^9.1.0"

SocketSocket SOC 2 Logo

Product

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

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc