You are here

public function JsMinifier::minifyJspacker in Advanced CSS/JS Aggregation 8.3

Same name and namespace in other branches
  1. 8.4 advagg_js_minify/src/Asset/JsMinifier.php \Drupal\advagg_js_minify\Asset\JsMinifier::minifyJspacker()

Minify a JS string using packer.

Parameters

string $contents: Javascript string.

File

advagg_js_minify/src/Asset/JsMinifier.php, line 219

Class

JsMinifier
Optimizes a JavaScript asset.

Namespace

Drupal\advagg_js_minify\Asset

Code

public function minifyJspacker(&$contents) {

  // Use Packer on the contents of the aggregated file.
  if (!class_exists('\\JavaScriptPacker')) {
    include drupal_get_path('module', 'advagg_js_minify') . '/jspacker.inc';
  }

  // Add semicolons to the end of lines if missing.
  $contents = str_replace("}\n", "};\n", $contents);
  $contents = str_replace("\nfunction", ";\nfunction", $contents);
  $packer = new \JavaScriptPacker($contents, 62, TRUE, FALSE);
  $contents = $packer
    ->pack();
}