#!/bin/bash # Copyright 2014 The Chromium Authors. All rights reserved. # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. set -e if [ "$#" -ne 2 ] then echo "Usage: $0 <src_dir> <dst_dir>" echo echo "Copies <src_dir> to <dst_dir> and extracts all inline scripts from" \ "Polymer HTML files found in the destination directory to separate JS" \ "files. A JS file extracted from the file with name 'foo.html' will" \ "have a name 'foo-extracted.js'. Inclusion of the script file will be" \ "added to 'foo.html': '<script src=\"foo-extracted.js\"></script>'." exit 1 fi src="$1" dst="$2" if [ -e "$dst" ] then echo "ERROR: '$dst' already exists. Please remove it before running the" \ "script." 1>&2 exit 1 fi cp -r "$src" "$dst" find "$dst" -name "*.html" \ -not -path "*/demos/*" \ -not -name "demo*.html" \ -not -name "index.html" \ -not -name "metadata.html" | \ xargs grep -l "<script>" | \ while read original_html_name do dir=$(dirname "$original_html_name") name=$(basename "$original_html_name" .html) html_without_js="$dir/$name-extracted.html" extracted_js="$dir/$name-extracted.js" vulcanize -o "$html_without_js" --csp --config vulcanize_config.json \ "$original_html_name" 1>&2 mv "$html_without_js" "$original_html_name" done