瀏覽代碼

GruntJS for Javascripts & Stylesheets

soyjavi 13 年之前
父節點
當前提交
29ae20b20a

+ 4 - 55
example/index.html

@@ -45,23 +45,8 @@
              and (-webkit-device-pixel-ratio: 2)" rel="apple-touch-startup-image">
 
     <!-- Main Stylesheet -->
-    <link rel="stylesheet" href="../src/stylesheets/css/Lungo.base.css">
-    <link rel="stylesheet" href="../src/stylesheets/css/Lungo.layout.css">
-    <link rel="stylesheet" href="../src/stylesheets/css/Lungo.layout.nav.css">
-    <link rel="stylesheet" href="../src/stylesheets/css/Lungo.layout.aside.css">
-    <link rel="stylesheet" href="../src/stylesheets/css/Lungo.layout.article.css">
-    <link rel="stylesheet" href="../src/stylesheets/css/Lungo.layout.list.css">
-    <link rel="stylesheet" href="../src/stylesheets/css/Lungo.layout.grid.css">
-    <link rel="stylesheet" href="../src/stylesheets/css/Lungo.widgets.css">
-    <link rel="stylesheet" href="../src/stylesheets/css/Lungo.widgets.splash.css">
-    <link rel="stylesheet" href="../src/stylesheets/css/Lungo.widgets.button.css">
-    <link rel="stylesheet" href="../src/stylesheets/css/Lungo.widgets.form.css">
-    <link rel="stylesheet" href="../src/stylesheets/css/Lungo.widgets.icon.css">
-    <link rel="stylesheet" href="../src/stylesheets/css/Lungo.widgets.icon.brand.css">
-    <link rel="stylesheet" href="../src/stylesheets/css/Lungo.widgets.loading.css">
-    <link rel="stylesheet" href="../src/stylesheets/css/Lungo.widgets.notification.css">
-    <link rel="stylesheet" href="../src/stylesheets/css/Lungo.widgets.pull.css">
-    <link rel="stylesheet" href="../src/stylesheets/css/Lungo.theme.default.css">
+    <link rel="stylesheet" href="../packages/lungo/lungo.css">
+    <link rel="stylesheet" href="../packages/lungo/theme.lungo.css">
 
     <!-- App Stylesheet -->
     <link rel="stylesheet" href="stylesheets/app.css">
@@ -176,47 +161,11 @@
 
     <!-- Lungo dependencies -->
     <script src="../components/QuoJS/quo.js"></script>
-    <!--
-    <script src="../package/lungo.js"></script>
-    -->
-    <script src="../src/Lungo.js"></script>
-    <script src="../src/Lungo.Init.js"></script>
-    <script src="../src/Lungo.Core.js"></script>
-    <script src="../src/Lungo.Dom.js"></script>
-    <script src="../src/Lungo.Service.js"></script>
-    <script src="../src/Lungo.Constants.js"></script>
-    <script src="../src/Lungo.Events.js"></script>
-    <script src="../src/Lungo.Notification.js"></script>
-    <script src="../src/Lungo.Fallback.js"></script>
-    <script src="../src/Lungo.Resource.js"></script>
-
-    <script src="../src/router/Lungo.Router.js"></script>
-    <script src="../src/router/Lungo.Router.History.js" ></script>
-
-    <script src="../src/view/Lungo.View.Article.js" ></script>
-    <script src="../src/view/Lungo.View.Aside.js" ></script>
-
-    <script src="../src/element/Lungo.Element.Cache.js"></script>
-    <script src="../src/element/Lungo.Element.Carousel.js"></script>
-    <script src="../src/element/Lungo.Element.Count.js"></script>
-    <script src="../src/element/Lungo.Element.Loading.js"></script>
-    <script src="../src/element/Lungo.Element.Progress.js"></script>
-    <script src="../src/element/Lungo.Element.Pull.js"></script>
-
-    <script src="../src/data/Lungo.Data.Cache.js"></script>
-    <script src="../src/data/Lungo.Data.Sql.js"></script>
-    <script src="../src/data/Lungo.Data.Storage.js"></script>
-
-    <script src="../src/attributes/Lungo.Attributes.Data.js"></script>
-
-    <script src="../src/boot/Lungo.Boot.Layout.js"></script>
-    <script src="../src/boot/Lungo.Boot.Events.js"></script>
-    <script src="../src/boot/Lungo.Boot.Data.js"></script> cdd
-
-    <script src="../src/Lungo.Scroll.js"></script>
+    <script src="../packages/lungo/lungo.js"></script>
 
     <!-- LungoJS - Sandbox App -->
     <script>
+        console.error(Lungo);
         Lungo.init({
             name: 'Kitchen Sink',
             version: '2.1',

+ 24 - 9
grunt.js

@@ -6,13 +6,24 @@ module.exports = function(grunt) {
 
     meta: {
         file: "lungo",
-        banner: '/* <%= pkg.name %> v<%= pkg.version %> - <%= grunt.template.today("m/d/yyyy") %>\n' +
+        banner: '/* <%= pkg.name %> v<%= pkg.version %> - <%= grunt.template.today("yyyy/m/d") %>\n' +
                 '   <%= pkg.homepage %>\n' +
                 '   Copyright (c) <%= grunt.template.today("yyyy") %> <%= pkg.author.name %>' +
                 ' - Licensed <%= _.pluck(pkg.license, "type").join(", ") %> */'
     },
 
     resources: {
+        core: ['src/Lungo.js'],
+        modules: [
+          'src/modules/*.js',
+          'src/boot/*.js',
+          'src/data/*.js',
+          'src/element/*.js',
+          'src/router/Lungo.Router.js', 'src/router/Lungo.Router.History.js',
+          'src/view/*.js'],
+        device: ['src/device/*.js'],
+
+        javascripts: ['src/**/*.js'],
         stylesheets: ['src/**/*.styl']
     },
 
@@ -20,7 +31,7 @@ module.exports = function(grunt) {
       compile: {
         options: { compress: true, paths: ['src/stylesheets/import'] },
         files: {
-          'packages/lungo/<%=meta.file%>.css': ['src/**/Lungo.*.styl']
+          'packages/<%=meta.file%>/<%=meta.file%>.css': ['src/**/Lungo.*.styl']
         }
       },
       flatten: {
@@ -33,27 +44,31 @@ module.exports = function(grunt) {
 
     concat: {
       js: {
-        src: ['<config:resources.js>'],
-        dest: 'package/<%=meta.file%>.js'
+        src: ['<banner>', '<config:resources.core>', '<config:resources.modules>'],
+        dest: 'build/<%=meta.file%>.js'
+      },
+      device: {
+        src: ['<banner>', '<config:resources.device>'],
+        dest: 'build/<%=meta.file%>.device.js'
       }
     },
 
     min: {
       js: {
-        src: ['<banner>', 'package/<%=meta.file%>.js'],
-        dest: 'package/<%=meta.file%>.min.js'
+        src: ['<banner>', 'build/<%=meta.file%>.js'],
+        dest: 'packages/<%=meta.file%>/<%=meta.file%>.js'
       }
     },
 
     watch: {
-      files: ['<config:resources.stylesheets>'],
-      tasks: 'stylus'
+      files: ['<config:resources.javascripts>', '<config:resources.stylesheets>'],
+      tasks: 'concat min stylus'
     }
   });
 
   grunt.loadNpmTasks('grunt-contrib-stylus');
 
   // Default task.
-  grunt.registerTask('default', 'stylus');
+  grunt.registerTask('default', 'concat min stylus');
 
 };

File diff suppressed because it is too large
+ 4 - 0
packages/lungo/lungo.js


+ 0 - 23
src/Lungo.js

@@ -1,30 +1,7 @@
-/**
- *
- *    /$$
- *   | $$
- *   | $$       /$$   /$$ /$$$$$$$   /$$$$$$   /$$$$$$
- *   | $$      | $$  | $$| $$__  $$ /$$__  $$ /$$__  $$
- *   | $$      | $$  | $$| $$  \ $$| $$  \ $$| $$  \ $$
- *   | $$      | $$  | $$| $$  | $$| $$  | $$| $$  | $$
- *   | $$$$$$$$|  $$$$$$/| $$  | $$|  $$$$$$$|  $$$$$$/
- *   |________/ \______/ |__/  |__/ \____  $$ \______/
- *                                  /$$  \ $$
- *                                 |  $$$$$$/
- *                                  \______/
- *
- * @copyright 2011-2012 TapQuo Inc (c)
- * @license   http://www.github.com/tapquo/lungo/blob/master/LICENSE.txt
- * @version   2.0
- * @link      https://github.com/TapQuo/Lungo.js
- *
- * @author   Javier Jimenez Villar <javi@tapquo.com> || @soyjavi
- */
-
 var Lungo = Lungo || {};
 
 Lungo.VERSION = '2.0';
 
-Lungo.Attributes || (Lungo.Attributes = {});
 Lungo.Element || (Lungo.Element = {});
 Lungo.Data || (Lungo.Data = {});
 Lungo.Sugar || (Lungo.Sugar = {});

+ 3 - 3
src/boot/Lungo.Boot.Data.js

@@ -26,15 +26,15 @@ Lungo.Boot.Data = (function(lng, undefined) {
     };
 
     var _findDataAttributesIn = function(element) {
-        for (var key in lng.Attributes.Data) {
-            if (lng.Core.isOwnProperty(lng.Attributes.Data, key)) {
+        for (var key in lng.Attributes) {
+            if (lng.Core.isOwnProperty(lng.Attributes, key)) {
                 _findElements(element, key);
             }
         }
     };
 
     var _findElements = function(element, key) {
-        attribute = lng.Attributes.Data[key];
+        attribute = lng.Attributes[key];
         var selector = attribute.selector + "[data-" + key + "]";
         element.find(selector).each(function(index, children) {
             var el = lng.dom(children);

+ 1 - 1
src/element/Lungo.Element.Count.js

@@ -16,7 +16,7 @@ Lungo.Element.count = function(selector, count) {
 
     if (element && count) {
         var binding = Lungo.Constants.BINDING.SELECTOR;
-        html = Lungo.Attributes.Data.count.html.replace(binding, count);
+        html = Lungo.Attributes.count.html.replace(binding, count);
         element.append(html);
     }
 };

+ 1 - 1
src/element/Lungo.Element.Loading.js

@@ -18,7 +18,7 @@ Lungo.Element.loading = function(selector, stylesheet) {
 
         if (stylesheet) {
             var binding = Lungo.Constants.BINDING.SELECTOR;
-            html = Lungo.Attributes.Data.loading.html.replace(binding, stylesheet);
+            html = Lungo.Attributes.loading.html.replace(binding, stylesheet);
         }
         element.html(html);
     }

+ 3 - 3
src/attributes/Lungo.Attributes.Data.js

@@ -1,14 +1,14 @@
 /**
  * Object with data-attributes (HTML5) with a special <markup>
  *
- * @namespace Lungo.Attributes
- * @class Data
+ * @namespace Lungo
+ * @class Attributes
  *
  * @author Javier Jimenez Villar <javi@tapquo.com> || @soyjavi
  * @author Guillermo Pascual <pasku@tapquo.com> || @pasku1
  */
 
-Lungo.Attributes.Data = {
+Lungo.Attributes = {
     count: {
         selector: '*',
         html: '<span class="tag theme count">{{value}}</span>'

src/Lungo.Constants.js → src/modules/Lungo.Constants.js


src/Lungo.Core.js → src/modules/Lungo.Core.js


src/Lungo.Dom.js → src/modules/Lungo.Dom.js


src/Lungo.Events.js → src/modules/Lungo.Events.js


src/Lungo.Fallback.js → src/modules/Lungo.Fallback.js


src/Lungo.Init.js → src/modules/Lungo.Init.js


+ 1 - 1
src/Lungo.Notification.js

@@ -46,7 +46,7 @@ Lungo.Notification = (function(lng, undefined) {
         if (title !== undefined) {
             markup = _markup(title, null, icon);
         } else {
-            var data_loading = lng.Attributes.Data.loading.html;
+            var data_loading = lng.Attributes.loading.html;
             markup = data_loading.replace(BINDING.START + BINDING.KEY + BINDING.END, 'icon white');
         }
 

src/Lungo.Resource.js → src/modules/Lungo.Resource.js


src/Lungo.Scroll.js → src/modules/Lungo.Scroll.js


src/Lungo.Service.js → src/modules/Lungo.Service.js


+ 0 - 93
vendor/build.sh

@@ -1,93 +0,0 @@
-#!/bin/sh
-#define paths
-COMPILER=google-compiler/compiler.jar
-COMPRESSOR=yuicompressor/yuicompressor-2.4.2.jar
-LUNGO_SOURCES=../src/
-LUNGO_NAMESPACE=Lungo.
-PACKAGE=../packages/package/
-PACKAGE_THEME=../packages/package.theme/
-MINIFIED="min"
-
-# colors
-alias decho='printf "\033[33m%s\033[0m\n"'
-alias becho='printf "\033[32m%s\033[0m\n"'
-
-mkdir -p ${PACKAGE} ${PACKAGE_THEME}
-clear
-decho "============================ LUNGO COMPILER ============================"
-
-    ## Files to compile
-    FILES_TO_COMPILE=""
-    FILES_TO_JOIN=""
-
-    #Main
-    DIR=$LUNGO_SOURCES$LUNGO_NAMESPACE
-    decho "  [DIR]: $LUNGO_SOURCES"
-    FILES="js Init.js Core.js Dom.js Service.js Constants.js Events.js Notification.js Fallback.js Resource.js Scroll.js"
-    for file in ${FILES} ; do
-        FILES_TO_COMPILE=$FILES_TO_COMPILE" --js "$DIR$file
-        FILES_TO_JOIN=$FILES_TO_JOIN" "$DIR$file
-    done
-
-    #Router
-    DIR=$LUNGO_SOURCES"router/"$LUNGO_NAMESPACE"Router."
-    decho "  [DIR]: ${LUNGO_SOURCES}router/"
-    FILES="js History.js"
-    for file in ${FILES} ; do
-        FILES_TO_COMPILE=$FILES_TO_COMPILE" --js "$DIR$file
-        FILES_TO_JOIN=$FILES_TO_JOIN" "$DIR$file
-    done
-
-    #View
-    DIR=$LUNGO_SOURCES"view/"$LUNGO_NAMESPACE"View."
-    decho "  [DIR]: ${LUNGO_SOURCES}view/"
-    FILES="Article.js Aside.js"
-    for file in ${FILES} ; do
-        FILES_TO_COMPILE=$FILES_TO_COMPILE" --js "$DIR$file
-        FILES_TO_JOIN=$FILES_TO_JOIN" "$DIR$file
-    done
-
-    #View
-    DIR=$LUNGO_SOURCES"element/"$LUNGO_NAMESPACE"Element."
-    decho "  [DIR]: ${LUNGO_SOURCES}element/"
-    FILES="Cache.js Carousel.js Count.js Loading.js Progress.js Pull.js"
-    for file in ${FILES} ; do
-        FILES_TO_COMPILE=$FILES_TO_COMPILE" --js "$DIR$file
-        FILES_TO_JOIN=$FILES_TO_JOIN" "$DIR$file
-    done
-
-    #Data
-    DIR=$LUNGO_SOURCES"data/"$LUNGO_NAMESPACE"Data."
-    decho "  [DIR]: ${LUNGO_SOURCES}data/"
-
-    FILES="Cache.js Sql.js Storage.js"
-    for file in ${FILES} ; do
-        FILES_TO_COMPILE=$FILES_TO_COMPILE" --js "$DIR$file
-        FILES_TO_JOIN=$FILES_TO_JOIN" "$DIR$file
-    done
-
-    #Attributes
-    DIR=$LUNGO_SOURCES"attributes/"$LUNGO_NAMESPACE"Attributes."
-    decho "  [DIR]: "$LUNGO_SOURCES"attributes/"
-    FILES="Data.js"
-    for file in ${FILES} ; do
-        FILES_TO_COMPILE=$FILES_TO_COMPILE" --js "$DIR$file
-        FILES_TO_JOIN=$FILES_TO_JOIN" "$DIR$file
-    done
-
-    #Boot
-    DIR=$LUNGO_SOURCES"boot/"$LUNGO_NAMESPACE"Boot."
-    decho "  [DIR]: ${LUNGO_SOURCES}boot/"
-    FILES="Events.js Data.js Layout.js"
-    for file in ${FILES} ; do
-        FILES_TO_COMPILE=$FILES_TO_COMPILE" --js "$DIR$file
-        FILES_TO_JOIN=$FILES_TO_JOIN" "$DIR$file
-    done
-
-    #COMPILED Version
-    #FILES_TO_COMPILE=" --js "$LUNGO_SOURCES"lib/quo.debug.js "$FILES_TO_COMPILE
-    java -jar $COMPILER $FILES_TO_COMPILE --js_output_file $PACKAGE/lungo.js
-    cat $FILES_TO_JOIN > $PACKAGE/lungo.debug.js
-    # cat $LUNGO_SOURCES"lib/quo.debug.js" $PACKAGE/lungo-$VERSION.standalone.js > $PACKAGE/lungo-$VERSION.js
-    becho "  [BUILD]: lungo.js"
-decho "============================ /LUNGO COMPILER ============================"

+ 0 - 202
vendor/google-compiler/COPYING

@@ -1,202 +0,0 @@
-
-                                 Apache License
-                           Version 2.0, January 2004
-                        http://www.apache.org/licenses/
-
-   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
-   1. Definitions.
-
-      "License" shall mean the terms and conditions for use, reproduction,
-      and distribution as defined by Sections 1 through 9 of this document.
-
-      "Licensor" shall mean the copyright owner or entity authorized by
-      the copyright owner that is granting the License.
-
-      "Legal Entity" shall mean the union of the acting entity and all
-      other entities that control, are controlled by, or are under common
-      control with that entity. For the purposes of this definition,
-      "control" means (i) the power, direct or indirect, to cause the
-      direction or management of such entity, whether by contract or
-      otherwise, or (ii) ownership of fifty percent (50%) or more of the
-      outstanding shares, or (iii) beneficial ownership of such entity.
-
-      "You" (or "Your") shall mean an individual or Legal Entity
-      exercising permissions granted by this License.
-
-      "Source" form shall mean the preferred form for making modifications,
-      including but not limited to software source code, documentation
-      source, and configuration files.
-
-      "Object" form shall mean any form resulting from mechanical
-      transformation or translation of a Source form, including but
-      not limited to compiled object code, generated documentation,
-      and conversions to other media types.
-
-      "Work" shall mean the work of authorship, whether in Source or
-      Object form, made available under the License, as indicated by a
-      copyright notice that is included in or attached to the work
-      (an example is provided in the Appendix below).
-
-      "Derivative Works" shall mean any work, whether in Source or Object
-      form, that is based on (or derived from) the Work and for which the
-      editorial revisions, annotations, elaborations, or other modifications
-      represent, as a whole, an original work of authorship. For the purposes
-      of this License, Derivative Works shall not include works that remain
-      separable from, or merely link (or bind by name) to the interfaces of,
-      the Work and Derivative Works thereof.
-
-      "Contribution" shall mean any work of authorship, including
-      the original version of the Work and any modifications or additions
-      to that Work or Derivative Works thereof, that is intentionally
-      submitted to Licensor for inclusion in the Work by the copyright owner
-      or by an individual or Legal Entity authorized to submit on behalf of
-      the copyright owner. For the purposes of this definition, "submitted"
-      means any form of electronic, verbal, or written communication sent
-      to the Licensor or its representatives, including but not limited to
-      communication on electronic mailing lists, source code control systems,
-      and issue tracking systems that are managed by, or on behalf of, the
-      Licensor for the purpose of discussing and improving the Work, but
-      excluding communication that is conspicuously marked or otherwise
-      designated in writing by the copyright owner as "Not a Contribution."
-
-      "Contributor" shall mean Licensor and any individual or Legal Entity
-      on behalf of whom a Contribution has been received by Licensor and
-      subsequently incorporated within the Work.
-
-   2. Grant of Copyright License. Subject to the terms and conditions of
-      this License, each Contributor hereby grants to You a perpetual,
-      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
-      copyright license to reproduce, prepare Derivative Works of,
-      publicly display, publicly perform, sublicense, and distribute the
-      Work and such Derivative Works in Source or Object form.
-
-   3. Grant of Patent License. Subject to the terms and conditions of
-      this License, each Contributor hereby grants to You a perpetual,
-      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
-      (except as stated in this section) patent license to make, have made,
-      use, offer to sell, sell, import, and otherwise transfer the Work,
-      where such license applies only to those patent claims licensable
-      by such Contributor that are necessarily infringed by their
-      Contribution(s) alone or by combination of their Contribution(s)
-      with the Work to which such Contribution(s) was submitted. If You
-      institute patent litigation against any entity (including a
-      cross-claim or counterclaim in a lawsuit) alleging that the Work
-      or a Contribution incorporated within the Work constitutes direct
-      or contributory patent infringement, then any patent licenses
-      granted to You under this License for that Work shall terminate
-      as of the date such litigation is filed.
-
-   4. Redistribution. You may reproduce and distribute copies of the
-      Work or Derivative Works thereof in any medium, with or without
-      modifications, and in Source or Object form, provided that You
-      meet the following conditions:
-
-      (a) You must give any other recipients of the Work or
-          Derivative Works a copy of this License; and
-
-      (b) You must cause any modified files to carry prominent notices
-          stating that You changed the files; and
-
-      (c) You must retain, in the Source form of any Derivative Works
-          that You distribute, all copyright, patent, trademark, and
-          attribution notices from the Source form of the Work,
-          excluding those notices that do not pertain to any part of
-          the Derivative Works; and
-
-      (d) If the Work includes a "NOTICE" text file as part of its
-          distribution, then any Derivative Works that You distribute must
-          include a readable copy of the attribution notices contained
-          within such NOTICE file, excluding those notices that do not
-          pertain to any part of the Derivative Works, in at least one
-          of the following places: within a NOTICE text file distributed
-          as part of the Derivative Works; within the Source form or
-          documentation, if provided along with the Derivative Works; or,
-          within a display generated by the Derivative Works, if and
-          wherever such third-party notices normally appear. The contents
-          of the NOTICE file are for informational purposes only and
-          do not modify the License. You may add Your own attribution
-          notices within Derivative Works that You distribute, alongside
-          or as an addendum to the NOTICE text from the Work, provided
-          that such additional attribution notices cannot be construed
-          as modifying the License.
-
-      You may add Your own copyright statement to Your modifications and
-      may provide additional or different license terms and conditions
-      for use, reproduction, or distribution of Your modifications, or
-      for any such Derivative Works as a whole, provided Your use,
-      reproduction, and distribution of the Work otherwise complies with
-      the conditions stated in this License.
-
-   5. Submission of Contributions. Unless You explicitly state otherwise,
-      any Contribution intentionally submitted for inclusion in the Work
-      by You to the Licensor shall be under the terms and conditions of
-      this License, without any additional terms or conditions.
-      Notwithstanding the above, nothing herein shall supersede or modify
-      the terms of any separate license agreement you may have executed
-      with Licensor regarding such Contributions.
-
-   6. Trademarks. This License does not grant permission to use the trade
-      names, trademarks, service marks, or product names of the Licensor,
-      except as required for reasonable and customary use in describing the
-      origin of the Work and reproducing the content of the NOTICE file.
-
-   7. Disclaimer of Warranty. Unless required by applicable law or
-      agreed to in writing, Licensor provides the Work (and each
-      Contributor provides its Contributions) on an "AS IS" BASIS,
-      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
-      implied, including, without limitation, any warranties or conditions
-      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
-      PARTICULAR PURPOSE. You are solely responsible for determining the
-      appropriateness of using or redistributing the Work and assume any
-      risks associated with Your exercise of permissions under this License.
-
-   8. Limitation of Liability. In no event and under no legal theory,
-      whether in tort (including negligence), contract, or otherwise,
-      unless required by applicable law (such as deliberate and grossly
-      negligent acts) or agreed to in writing, shall any Contributor be
-      liable to You for damages, including any direct, indirect, special,
-      incidental, or consequential damages of any character arising as a
-      result of this License or out of the use or inability to use the
-      Work (including but not limited to damages for loss of goodwill,
-      work stoppage, computer failure or malfunction, or any and all
-      other commercial damages or losses), even if such Contributor
-      has been advised of the possibility of such damages.
-
-   9. Accepting Warranty or Additional Liability. While redistributing
-      the Work or Derivative Works thereof, You may choose to offer,
-      and charge a fee for, acceptance of support, warranty, indemnity,
-      or other liability obligations and/or rights consistent with this
-      License. However, in accepting such obligations, You may act only
-      on Your own behalf and on Your sole responsibility, not on behalf
-      of any other Contributor, and only if You agree to indemnify,
-      defend, and hold each Contributor harmless for any liability
-      incurred by, or claims asserted against, such Contributor by reason
-      of your accepting any such warranty or additional liability.
-
-   END OF TERMS AND CONDITIONS
-
-   APPENDIX: How to apply the Apache License to your work.
-
-      To apply the Apache License to your work, attach the following
-      boilerplate notice, with the fields enclosed by brackets "[]"
-      replaced with your own identifying information. (Don't include
-      the brackets!)  The text should be enclosed in the appropriate
-      comment syntax for the file format. We also recommend that a
-      file or class name and description of purpose be included on the
-      same "printed page" as the copyright notice for easier
-      identification within third-party archives.
-
-   Copyright [yyyy] [name of copyright owner]
-
-   Licensed under the Apache License, Version 2.0 (the "License");
-   you may not use this file except in compliance with the License.
-   You may obtain a copy of the License at
-
-       http://www.apache.org/licenses/LICENSE-2.0
-
-   Unless required by applicable law or agreed to in writing, software
-   distributed under the License is distributed on an "AS IS" BASIS,
-   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-   See the License for the specific language governing permissions and
-   limitations under the License.

+ 0 - 289
vendor/google-compiler/README

@@ -1,289 +0,0 @@
-/*
- * Copyright 2009 Google Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-//
-// Contents
-//
-
-The Closure Compiler performs checking, instrumentation, and
-optimizations on JavaScript code. The purpose of this README is to
-explain how to build and run the Closure Compiler.
-
-The Closure Compiler requires Java 6 or higher.
-http://www.java.com/
-
-
-//
-// Building The Closure Compiler
-//
-
-There are three ways to get a Closure Compiler executable.
-
-1) Use one we built for you.
-
-Pre-built Closure binaries can be found at
-http://code.google.com/p/closure-compiler/downloads/list
-
-
-2) Check out the source and build it with Apache Ant.
-
-First, check out the full source tree of the Closure Compiler. There
-are instructions on how to do this at the project site.
-http://code.google.com/p/closure-compiler/source/checkout
-
-Apache Ant is a cross-platform build tool.
-http://ant.apache.org/
-
-At the root of the source tree, there is an Ant file named
-build.xml. To use it, navigate to the same directory and type the
-command
-
-ant jar
-
-This will produce a jar file called "build/compiler.jar".
-
-
-3) Check out the source and build it with Eclipse.
-
-Eclipse is a cross-platform IDE.
-http://www.eclipse.org/
-
-Under Eclipse's File menu, click "New > Project ..." and create a
-"Java Project."  You will see an options screen. Give the project a
-name, select "Create project from existing source," and choose the
-root of the checked-out source tree as the existing directory. Verify
-that you are using JRE version 6 or higher.
-
-Eclipse can use the build.xml file to discover rules. When you
-navigate to the build.xml file, you will see all the build rules in
-the "Outline" pane. Run the "jar" rule to build the compiler in
-build/compiler.jar.
-
-
-//
-// Running The Closure Compiler
-//
-
-Once you have the jar binary, running the Closure Compiler is straightforward.
-
-On the command line, type
-
-java -jar compiler.jar
-
-This starts the compiler in interactive mode. Type
-
-var x = 17 + 25;
-
-then hit "Enter", then hit "Ctrl-Z" (on Windows) or "Ctrl-D" (on Mac or Linux)
-and "Enter" again. The Compiler will respond:
-
-var x=42;
-
-The Closure Compiler has many options for reading input from a file,
-writing output to a file, checking your code, and running
-optimizations. To learn more, type
-
-java -jar compiler.jar --help
-
-You can read more detailed documentation about the many flags at
-http://code.google.com/closure/compiler/docs/gettingstarted_app.html
-
-
-//
-// Compiling Multiple Scripts
-//
-
-If you have multiple scripts, you should compile them all together with
-one compile command.
-
-java -jar compiler.jar --js=in1.js --js=in2.js ... --js_output_file=out.js
-
-The Closure Compiler will concatenate the files in the order they're
-passed at the command line.
-
-If you need to compile many, many scripts together, you may start to
-run into problems with managing dependencies between scripts. You
-should check out the Closure Library. It contains functions for
-enforcing dependencies between scripts, and a tool called calcdeps.py
-that knows how to give scripts to the Closure Compiler in the right
-order.
-
-http://code.google.com/p/closure-library/
-
-//
-// Licensing
-//
-
-Unless otherwise stated, all source files are licensed under
-the Apache License, Version 2.0.
-
-
------
-Code under:
-src/com/google/javascript/rhino
-test/com/google/javascript/rhino
-
-URL: http://www.mozilla.org/rhino
-Version:  1.5R3, with heavy modifications
-License:  Netscape Public License and MPL / GPL dual license
-
-Description: A partial copy of Mozilla Rhino. Mozilla Rhino is an
-implementation of JavaScript for the JVM.  The JavaScript parser and
-the parse tree data structures were extracted and modified
-significantly for use by Google's JavaScript compiler.
-
-Local Modifications: The packages have been renamespaced. All code not
-relavant to parsing has been removed. A JSDoc parser and static typing
-system have been added.
-
-
------
-Code in:
-lib/libtrunk_rhino_parser_jarjared.jar
-
-Rhino
-URL: http://www.mozilla.org/rhino
-Version:  Trunk
-License:  Netscape Public License and MPL / GPL dual license
-
-Description: Mozilla Rhino is an implementation of JavaScript for the JVM.
-
-Local Modifications: None. We've used JarJar to renamespace the code
-post-compilation. See:
-http://code.google.com/p/jarjar/
-
-
------
-Code in:
-lib/args4j_deploy.jar
-
-Args4j
-URL: https://args4j.dev.java.net/
-Version: 2.0.9
-License: MIT
-
-Description:
-args4j is a small Java class library that makes it easy to parse command line
-options/arguments in your CUI application.
-
-Local Modifications: None.
-
-
------
-Code in:
-lib/guava-r06.jar
-
-Guava Libraries
-URL: http://code.google.com/p/guava-libraries/
-Version:  R6
-License: Apache License 2.0
-
-Description: Google's core Java libraries.
-
-Local Modifications: None.
-
-
------
-Code in:
-lib/hamcrest-core-1.1.jar
-
-Hamcrest
-URL: http://code.google.com/p/hamcrest
-License: BSD
-License File: LICENSE
-
-Description:
-Provides a library of matcher objects (also known as constraints or
-predicates) allowing 'match' rules to be defined declaratively, to be used in
-other frameworks. Typical scenarios include testing frameworks, mocking
-libraries and UI validation rules.
-
-Local modifications:
-The original jars contained both source code and compiled classes.
-
-hamcrest-core-1.1.jar just contains the compiled classes.
-
-
-
------
-Code in:
-lib/jsr305.jar
-
-Annotations for software defect detection
-URL: http://code.google.com/p/jsr-305/
-Version: svn revision 47
-License: BSD License
-
-Description: Annotations for software defect detection.
-
-Local Modifications: None.
-
-
-----
-Code in:
-lib/junit.jar
-
-JUnit
-URL:  http://sourceforge.net/projects/junit/
-Version:  4.5
-License:  Common Public License 1.0
-
-Description: A framework for writing and running automated tests in Java.
-
-Local Modifications: None.
-
-
----
-Code in:
-lib/protobuf-java-2.3.0.jar
-
-Protocol Buffers
-URL: http://code.google.com/p/protobuf/
-Version: 2.3.0
-License: New BSD License
-
-Description: Supporting libraries for protocol buffers,
-an encoding of structured data.
-
-Local Modifications: None
-
-
----
-Code in:
-lib/ant_deploy.jar
-
-URL: http://ant.apache.org/bindownload.cgi
-Version: 1.6.5
-License: Apache License 2.0
-Description:
-  Ant is a Java based build tool. In theory it is kind of like "make"
-  without make's wrinkles and with the full portability of pure java code.
-
-Local Modifications:
-  Modified apache-ant-1.6.5/bin/ant to look in the ant.runfiles directory
-
-
----
-Code in:
-lib/json.jar
-URL: http://json.org/java/index.html
-Version: JSON version 2
-License: MIT license
-Description:
-JSON is a set of java files for use in transmitting data in JSON format.
-
-Local Modifications: None
-

二進制
vendor/google-compiler/compiler.jar