Provided by: libjavascript-packer-perl_2.11+dfsg-2_all bug

NAME

       JavaScript::Packer - Perl version of Dean Edwards' Packer.js

VERSION

       Version 2.10

DESCRIPTION

       A JavaScript Compressor

       This module is an adaptation of Dean Edwards' Packer.js.

       Additional information: http://dean.edwards.name/packer/

SYNOPSIS

           use JavaScript::Packer;

           my $packer = JavaScript::Packer->init();

           $packer->minify( $javascript, $opts );

       To return a scalar without changing the input simply use (e.g. example 2):

           my $ret = $packer->minify( $javascript, $opts );

       For backward compatibility it is still possible to call 'minify' as a function:

           JavaScript::Packer::minify( $javascript, $opts );

       The first argument must be a scalarref of javascript-code.

       Second argument must be a hashref of options. Possible options are:

       compress
           Defines  compression  level.  Possible values are 'clean', 'shrink', 'obfuscate' and 'best'.  Default
           value is 'clean'.  'best' uses 'shrink' or 'obfuscate' depending on which result is shorter. This  is
           recommended  because  especially  when  compressing short scripts the result will exceed the input if
           compression level is 'obfuscate'.

       copyright
           You can add a copyright notice at the top of the script.

       remove_copyright
           If there is a copyright notice in a comment it will only be removed if this option is set to  a  true
           value. Otherwise the first comment that contains the word "copyright" will be added at the top of the
           packed  script.  A  copyright  comment  will  be  overwritten  by a copyright notice defined with the
           copyright option.

       no_compress_comment
           If not set to a true value it is allowed to set a JavaScript comment that prevents  the  input  being
           packed or defines a compression level.

               /* JavaScript::Packer _no_compress_ */
               /* JavaScript::Packer shrink */

EXAMPLES

       Example 1
           Common usage.

               #!/usr/bin/perl

               use strict;
               use warnings;

               use JavaScript::Packer;

               my $packer = JavaScript::Packer->init();

               open( UNCOMPRESSED, 'uncompressed.js' );
               open( COMPRESSED, '>compressed.js' );

               my $js = join( '', <UNCOMPRESSED> );

               $packer->minify( \$js, { compress => 'best' } );

               print COMPRESSED $js;
               close(UNCOMPRESSED);
               close(COMPRESSED);

       Example 2
           A scalar is requested by the context. The input will remain unchanged.

               #!/usr/bin/perl

               use strict;
               use warnings;

               use JavaScript::Packer;

               my $packer = JavaScript::Packer->init();

               open( UNCOMPRESSED, 'uncompressed.js' );
               open( COMPRESSED, '>compressed.js' );

               my $uncompressed = join( '', <UNCOMPRESSED> );

               my $compressed = $packer->minify( \$uncompressed, { compress => 'best' } );

               print COMPRESSED $compressed;
               close(UNCOMPRESSED);
               close(COMPRESSED);

AUTHOR

       Merten Falk, "<nevesenin at cpan.org>". Now maintained by Lee Johnson (LEEJO)

BUGS AND CAVEATS

       This       module       will       break       code       that       relies       on       ASI,       see
       <https://github.com/leejo/javascript-packer-perl/issues/5> for more information.

       This module uses regular expressions to parse the  JavaScript  so  is  prone  to  bugs  and  edge  cases,
       especially when the JavaScript standard is updated

       Please     report    any    bugs    or    feature    requests    through    the    web    interface    at
       <http://github.com/leejo/javascript-packer-perl/issues>.

SUPPORT

       You can find documentation for this module with the perldoc command.

       perldoc JavaScript::Packer

COPYRIGHT & LICENSE

       Copyright 2008 - 2012 Merten Falk, all rights reserved.

       This program is free software; you can redistribute it and/or modify it under  the  same  terms  as  Perl
       itself.

perl v5.38.2                                       2024-03-05                            JavaScript::Packer(3pm)