Exciting release!Introducing "safe npm". Learn more
Socket
Log inDemoInstall

is-minified-performant

Package Overview
Dependencies
0
Maintainers
1
Versions
3
Issues
File Explorer

Advanced tools

is-minified-performant

Checks if JS code is minified or uglified performantly.

    1.0.2latest
    GitHub

Version published
Maintainers
1
Weekly downloads
365
decreased by-25.05%

Weekly downloads

Readme

Source

is-minified-performant 🚀

Checks if JS code is minified or uglified performantly.

Usage

import { isMinified } from 'is-minified-performant'; const source2 = `!function(e){function t(r){if(n[r])return n[r].exports;for(var i=[],o=0;o<256;++o)i[o]=(o+256).toString(16).substr(1);e.exports=r}};`; isMinified(source) // true const source1 = ` function main(foo = '') { } const bar = 1; `; isMinified(source) // false

How It Works

Use "Duck Typing" to detect whether source code is minified.

Duck typing in computer programming is an application of the duck test—"If it walks like a duck and it quacks like a duck, then it must be a duck"—In duck typing, an object's suitability is determined by the presence of certain methods and properties, rather than the type of the object itself.

From wiki/Duck_typing

  • no space before return
  • no space before and after if or else
  • no space before and after =
  • no space before and after var

Why the Package

I tried is-uglified which uses acorn parse, is-minified using RegExp, and is-minified-code using RegExp and sort, and finally found "Duck Typing" is the most performant 🚀 and efficient detect method and the correctness not lower than the above ones.

Benchmark Results

1 Check react.development.js not be minified. npm run benchmark-not-minified:

is-minified-performant#isMinified x 35,459 ops/sec ±0.97% (87 runs sampled) is-uglified#isCodeUglified x 163 ops/sec ±3.73% (77 runs sampled) is-minified#isMinifiedUsingRegexp x 25,229 ops/sec ±3.10% (84 runs sampled) is-minified-code#isMinifiedUsingRegexpAndMedian x 881 ops/sec ±2.40% (81 runs sampled) Check react.development.js not minified: the fastest is is-minified-performant#isMinified

This package's checking un-minified source code speed 1.4 times the second.

2 Check react.production.min.js is be minified. npm run benchmark-minified:

is-minified-performant#isMinified x 4,270,443 ops/sec ±1.58% (89 runs sampled) is-uglified#isCodeUglified x 412 ops/sec ±5.71% (76 runs sampled) is-minified#isMinifiedUsingRegexp x 240,459 ops/sec ±1.90% (88 runs sampled) is-minified-code#isMinifiedUsingRegexpAndMedian x 81,651 ops/sec ±2.14% (87 runs sampled) Check react.production.min.js minified: the fastest is is-minified-performant#isMinified

This package's checking minified source code speed 17 times the second.

Keywords

FAQs

Last updated on 11 Nov 2021

Did you know?

Socket installs a Github app to automatically flag issues on every pull request and report the health of your dependencies. Find out what is inside your node modules and prevent malicious activity before you update the dependencies.

Install Socket
Socket
support@socket.devSocket SOC 2 Logo

Product

  • Package Issues
  • 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