Ver Fonte

Merge from branch 1.0.4

@soyjavi há 14 anos atrás
pai
commit
2fbc7840f5
100 ficheiros alterados com 214 adições e 16653 exclusões
  1. 0 12
      examples/tablet/app/app.js
  2. BIN
      examples/tablet/assets/images/default.png
  3. BIN
      examples/tablet/assets/images/icon-72.png
  4. BIN
      examples/tablet/assets/images/icon.png
  5. BIN
      examples/tablet/assets/images/icon@2x.png
  6. 0 0
      examples/tablet/assets/stylesheets/app.css
  7. 0 142
      examples/tablet/index.html
  8. 0 12
      examples/test_src/app/app.js
  9. 0 17
      examples/test_src/app/data.js
  10. 0 51
      examples/test_src/app/events.js
  11. 0 35
      examples/test_src/app/services.js
  12. 0 28
      examples/test_src/app/view.js
  13. BIN
      examples/test_src/assets/images/default.png
  14. BIN
      examples/test_src/assets/images/icon-72.png
  15. BIN
      examples/test_src/assets/images/icon.png
  16. BIN
      examples/test_src/assets/images/icon@2x.png
  17. BIN
      examples/test_src/assets/images/ikalbeniz.jpg
  18. BIN
      examples/test_src/assets/images/pasku.jpg
  19. BIN
      examples/test_src/assets/images/soyjavi.jpg
  20. 0 44
      examples/test_src/assets/stylesheets/app.css
  21. 0 376
      examples/test_src/index.html
  22. 0 2078
      release/lungo-1.0.3.js
  23. 0 255
      release/lungo-1.0.3.min.css
  24. 0 24
      release/lungo-1.0.3.min.js
  25. 0 121
      release/lungo-1.0.3.packed.js
  26. 0 22
      src/attributes/Lungo.Attributes.Section.js
  27. 0 1044
      src/lib/iscroll.js
  28. 86 106
      src/stylesheets/css/Lungo.theme.default.css
  29. 128 157
      src/stylesheets/less/Lungo.theme.default.less
  30. 0 57
      src/stylesheets/less/Lungo.widgets.beta.less
  31. 0 20
      vendor/jasmine-1.1.0/MIT.LICENSE
  32. 0 190
      vendor/jasmine-1.1.0/jasmine-html.js
  33. 0 166
      vendor/jasmine-1.1.0/jasmine.css
  34. 0 2476
      vendor/jasmine-1.1.0/jasmine.js
  35. BIN
      vendor/jasmine-1.1.0/jasmine_favicon.png
  36. 0 131
      vendor/node-jasmine-dom/README.md
  37. 0 186
      vendor/node-jasmine-dom/bin/jasmine-dom
  38. 0 7
      vendor/node-jasmine-dom/examples/config.yaml
  39. 0 36
      vendor/node-jasmine-dom/examples/runner.html
  40. 0 28
      vendor/node-jasmine-dom/examples/runner2.html
  41. 0 7
      vendor/node-jasmine-dom/examples/src/example-dom.js
  42. 0 5
      vendor/node-jasmine-dom/examples/src/example-functions-2.js
  43. 0 5
      vendor/node-jasmine-dom/examples/src/example-functions.js
  44. 0 18
      vendor/node-jasmine-dom/examples/tests/helper/jquery.js
  45. 0 183
      vendor/node-jasmine-dom/examples/tests/lib/jasmine-html.js
  46. 0 167
      vendor/node-jasmine-dom/examples/tests/lib/jasmine.css
  47. 0 2421
      vendor/node-jasmine-dom/examples/tests/lib/jasmine.js
  48. 0 9
      vendor/node-jasmine-dom/examples/tests/spec/example-dom_spec.js
  49. 0 12
      vendor/node-jasmine-dom/examples/tests/spec/example-functions-2_spec.js
  50. 0 12
      vendor/node-jasmine-dom/examples/tests/spec/example-functions_spec.js
  51. 0 174
      vendor/node-jasmine-dom/lib/jasmine-dom/index.js
  52. 0 110
      vendor/node-jasmine-dom/lib/jasmine-dom/reporter-agregator.js
  53. 0 45
      vendor/node-jasmine-dom/lib/jasmine-dom/reporter-html.js
  54. 0 72
      vendor/node-jasmine-dom/lib/jasmine-dom/reporter-junit.js
  55. 0 91
      vendor/node-jasmine-dom/lib/jasmine-dom/reporter-simple.js
  56. 0 183
      vendor/node-jasmine-dom/lib/jasmine-dom/resources/jasmine-html.js
  57. 0 167
      vendor/node-jasmine-dom/lib/jasmine-dom/resources/jasmine.css
  58. 0 2421
      vendor/node-jasmine-dom/lib/jasmine-dom/resources/jasmine.js
  59. 0 18
      vendor/node-jasmine-dom/lib/jasmine-dom/resources/jquery.js
  60. 0 102
      vendor/node-jasmine-dom/lib/jasmine-dom/resources/simple.html
  61. 0 12
      vendor/node-jasmine-dom/lib/jasmine-dom/resources/skeleton.html
  62. 0 99
      vendor/node-jasmine-dom/lib/jasmine-dom/runner-from-html.js
  63. 0 73
      vendor/node-jasmine-dom/lib/jasmine-dom/server.js
  64. 0 9
      vendor/node-jasmine-dom/node_modules/cssom/.idea/CSSOM.iml
  65. 0 3
      vendor/node-jasmine-dom/node_modules/cssom/.idea/dictionaries/nv.xml
  66. 0 5
      vendor/node-jasmine-dom/node_modules/cssom/.idea/encodings.xml
  67. 0 17
      vendor/node-jasmine-dom/node_modules/cssom/.idea/misc.xml
  68. 0 9
      vendor/node-jasmine-dom/node_modules/cssom/.idea/modules.xml
  69. 0 82
      vendor/node-jasmine-dom/node_modules/cssom/.idea/projectCodeStyle.xml
  70. 0 8
      vendor/node-jasmine-dom/node_modules/cssom/.idea/vcs.xml
  71. 0 467
      vendor/node-jasmine-dom/node_modules/cssom/.idea/workspace.xml
  72. 0 19
      vendor/node-jasmine-dom/node_modules/cssom/.livereload
  73. 0 37
      vendor/node-jasmine-dom/node_modules/cssom/Jakefile
  74. 0 33
      vendor/node-jasmine-dom/node_modules/cssom/README.mdown
  75. 0 23
      vendor/node-jasmine-dom/node_modules/cssom/Rakefile
  76. 0 19
      vendor/node-jasmine-dom/node_modules/cssom/docs/.livereload
  77. 0 3
      vendor/node-jasmine-dom/node_modules/cssom/docs/bar.css
  78. 0 0
      vendor/node-jasmine-dom/node_modules/cssom/docs/demo.css
  79. 0 4
      vendor/node-jasmine-dom/node_modules/cssom/docs/foo.css
  80. 0 170
      vendor/node-jasmine-dom/node_modules/cssom/docs/parse.html
  81. 0 431
      vendor/node-jasmine-dom/node_modules/cssom/docs/parse2.html
  82. 0 100
      vendor/node-jasmine-dom/node_modules/cssom/index.html
  83. 0 34
      vendor/node-jasmine-dom/node_modules/cssom/lib/CSSImportRule.js
  84. 0 38
      vendor/node-jasmine-dom/node_modules/cssom/lib/CSSMediaRule.js
  85. 0 3
      vendor/node-jasmine-dom/node_modules/cssom/lib/CSSOM.js
  86. 0 38
      vendor/node-jasmine-dom/node_modules/cssom/lib/CSSRule.js
  87. 0 130
      vendor/node-jasmine-dom/node_modules/cssom/lib/CSSStyleDeclaration.js
  88. 0 187
      vendor/node-jasmine-dom/node_modules/cssom/lib/CSSStyleRule.js
  89. 0 85
      vendor/node-jasmine-dom/node_modules/cssom/lib/CSSStyleSheet.js
  90. 0 61
      vendor/node-jasmine-dom/node_modules/cssom/lib/MediaList.js
  91. 0 15
      vendor/node-jasmine-dom/node_modules/cssom/lib/StyleSheet.js
  92. 0 69
      vendor/node-jasmine-dom/node_modules/cssom/lib/clone.js
  93. 0 10
      vendor/node-jasmine-dom/node_modules/cssom/lib/index.js
  94. 0 195
      vendor/node-jasmine-dom/node_modules/cssom/lib/parse.js
  95. 0 17
      vendor/node-jasmine-dom/node_modules/cssom/media.html
  96. 0 30
      vendor/node-jasmine-dom/node_modules/cssom/package.json
  97. 0 32
      vendor/node-jasmine-dom/node_modules/cssom/plugins/toHTML.js
  98. 0 22
      vendor/node-jasmine-dom/node_modules/cssom/server/index.html
  99. 0 21
      vendor/node-jasmine-dom/node_modules/cssom/server/index.js
  100. 0 0
      vendor/node-jasmine-dom/node_modules/cssom/shorthands.html

+ 0 - 12
examples/tablet/app/app.js

@@ -1,12 +0,0 @@
-var App = (function(lng, undefined) {
-
-    lng.App.init({
-        name: 'LungoJS Test Source',
-        version: '1.0.0'
-    });
-
-    return {
-
-    };
-
-})(LUNGO);

BIN
examples/tablet/assets/images/default.png


BIN
examples/tablet/assets/images/icon-72.png


BIN
examples/tablet/assets/images/icon.png


BIN
examples/tablet/assets/images/icon@2x.png


+ 0 - 0
examples/tablet/assets/stylesheets/app.css


+ 0 - 142
examples/tablet/index.html

@@ -1,142 +0,0 @@
-<!doctype html>
-<html>
-<head>
-    <meta charset="utf-8">
-    <title>LungoJS - Aside Demo</title>
-    <meta name="description" content="">
-    <meta name="author" content="Javier Jiménez Villar (@soyjavi)">
-    <!-- Mobile viewport optimization http://goo.gl/b9SaQ -->
-    <meta name="HandheldFriendly" content="True">
-    <meta name="MobileOptimized" content="320">
-    <meta http-equiv="cleartype" content="on">
-    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0;">
-    <meta name="apple-mobile-web-app-capable" content="yes">
-    <meta name="apple-mobile-web-app-status-bar-style" content="black">
-    <!-- For iPhone 4 with high-resolution Retina display: -->
-    <link rel="apple-touch-icon-precomposed" sizes="114x114" href="assets/images/icon@2x.png">
-    <link rel="apple-touch-icon-precomposed" sizes="72x72" href="assets/images/icon-72.png">
-    <link rel="apple-touch-icon-precomposed" href="assets/images/icon.png">
-    <link rel="apple-touch-startup-image" href="assets/images/default.png">
-    <!-- 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.list.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.colour.css">
-    <link rel="stylesheet" href="../../src/stylesheets/css/Lungo.widgets.icon.css">
-    <link rel="stylesheet" href="../../src/stylesheets/css/Lungo.theme.default.css">
-    <!-- App Stylesheet -->
-    <link rel="stylesheet" href="assets/stylesheets/app.css?v=1">
-</head>
-
-<body class="app">
-    <section id="demo" class="_static">
-        <header data-title="Tablet Demo">
-            <a href="#" class="button onleft aside" data-target="aside" data-icon="note"></a>
-            <a href="#settings" data-target="section" class="button onright" data-icon="config"></a>
-        </header>
-
-        <aside>
-            <scroll id="aside_scroll">
-                <div>
-            <a href="#main" data-target="article" data-icon="note" data-title="Facebook">Facebook</a>
-            <a href="#second" data-target="article" data-icon="twitter" data-title="Twitter">Twitter</a>
-            <a href="#" data-icon="picture">Flickr</a>
-            <a href="#" data-icon="cloudup">Upload by ...</a>
-            <a href="#" data-icon="user">Connect with facebook</a>
-            <a href="#" data-icon="music">Download music</a>
-            <a href="#" data-icon="key">Logout</a>
-                </div>
-            </scroll>
-        </aside>
-
-		<article id="main" class="list">
-            <scroll id="main_scroll">
-                <ul>
-    				<li><a href="#demo_header_footer" data-target="section" class="arrow" data-icon="wifi">
-    					<strong>Header + Footer + Articles</strong><small>paodapod</small></a></li>
-    				<li><a href="#demo_toolbar" data-target="section" class="arrow" data-icon="download">
-    					<strong>Toolbar</strong><small>Toolbar</small></a></li>
-    				<li><a href="#demo_list" data-target="section" class="arrow" id="load_list" data-icon="note">
-                        <div class="bubble highlight">3 types</div>
-    					<strong>Lists</strong>
-    					<small>paodapod</small></a></li>
-    				<li><a href="#demo_events" data-target="section" class="arrow" data-icon="user">
-    						<strong>Events handler</strong><small>paodapod</small></a></li>
-    				<li><a href="#demo_scroll" data-target="section" class="arrow" id="load_scroll_mocks" data-icon="points">
-    						<strong>Scroll</strong><small>paodapod</strong></small></a></li>
-    				<li><a href="#demo_buttons" data-target="section" class="arrow" data-icon="plus">
-    						<strong>Buttons</strong><small>paodapod</small></a></li>
-    				<li><a href="#demo_forms" data-target="section" class="arrow" data-icon="write">
-                        <strong>Forms</strong><small>paodapod</small></a></li>
-    				<li class="anchor" data-icon="key">Tapquo Sugars</li>
-    				<li><a href="#demo_sugars" data-target="section" data-icon="box">
-    					<strong>Sugars</strong><small>paodapod</small></a></li>
-    			</ul>
-			</scroll>
-        </article>
-
-        <article id="second"></article>
-    </section>
-
-    <section id="settings">
-        <header data-back="home" data-title="Settings">
-            <nav class="onright">
-                <a href="#settings_main" data-target="article" class="current" data-title="Settings" data-icon="user"></a>
-                <a href="#settings_second" data-target="article" data-title="Chat" data-icon="chat"></a>
-                <a href="#settings_third" data-target="article" data-title="Share Methods" data-icon="earth"></a>
-            </nav>
-        </header>
-
-        <article id="settings_main">s</article>
-        <article id="settings_second">s</article>
-        <article id="settings_third">s</article>
-
-        <footer class="toolbar">
-            <nav>
-                <a href="#" class="current" data-icon="substract"></a>
-                <a href="#" class="current" data-icon="add"></a>
-            </nav>
-        </footer>
-    </section>
-
-
-    <!-- Third parties dependencies -->
-    <script src="../../src/lib/zepto.js"></script>
-    <script src="../../src/lib/iscroll.js"></script>
-    <!-- LungoJS Libraries (Development mode)-->
-    <script src="../../src/Lungo.js"></script>
-    <script src="../../src/Lungo.App.js" ></script>
-    <script src="../../src/Lungo.Environment.js" ></script>
-    <script src="../../src/Lungo.Core.js"></script>
-    <script src="../../src/Lungo.Events.js"></script>
-    <script src="../../src/Lungo.Service.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.Resize.js"></script>
-    <script src="../../src/view/Lungo.View.Article.js" ></script>
-    <script src="../../src/view/Lungo.View.Aside.js" ></script>
-    <script src="../../src/view/Lungo.View.Scroll.js"></script>
-    <script src="../../src/view/Lungo.View.Template.js"></script>
-    <script src="../../src/view/Lungo.View.Template.Binding.js"></script>
-    <script src="../../src/view/Lungo.View.Template.List.js"></script>
-    <script src="../../src/dom/Lungo.Dom.js"></script>
-    <script src="../../src/dom/Lungo.Dom.Event.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/attributes/Lungo.Attributes.Section.js"></script>
-    <script src="../../src/boot/Lungo.Boot.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>
-    <script src="../../src/boot/Lungo.Boot.Section.js"></script>
-    <script src="../../src/boot/Lungo.Boot.Article.js"></script>
-    <!-- LungoJS - Sandbox App -->
-    <script src="app/app.js"></script>
-</body>
-</html>

+ 0 - 12
examples/test_src/app/app.js

@@ -1,12 +0,0 @@
-var App = (function(lng, undefined) {
-
-    lng.App.init({
-        name: 'LungoJS Test Source',
-        version: '1.0.0'
-    });
-
-    return {
-
-    };
-
-})(LUNGO);

+ 0 - 17
examples/test_src/app/data.js

@@ -1,17 +0,0 @@
-App.Data = (function(lng, App, undefined) {
-
-    lng.Data.Sql.init({
-        name: 'lungo.js',
-        version: '1.0',
-        schema: [
-            { name: 'demo', drop: true, fields: {  
-                id: 'INTEGER PRIMARY KEY',
-                name: 'TEXT',
-                done: 'INTEGER DEFAULT 0',
-                created_at: 'DATETIME' 
-                }
-            }
-        ]
-    });
-               
-})(LUNGO, App);

+ 0 - 51
examples/test_src/app/events.js

@@ -1,51 +0,0 @@
-App.Events = (function(lng, undefined) {
-
-    lng.Dom.Event.live('#event_touchstart', 'TOUCH_START', function(event) {
-        alert("TOUCH_START!");
-    });
-    
-    lng.Dom.Event.live('#event_touchend', 'TOUCH_END', function(event) {
-        alert("TOUCH_END!");
-    });
-    
-    lng.Dom.Event.live('#event_touchmove', 'TOUCH_MOVE', function(event) {
-        alert("TOUCH_MOVE!");
-    });
-    
-    lng.Dom.Event.live('#event_tap', 'TAP', function(event) {
-        alert("TAP!");
-    });
-    
-    lng.Dom.Event.live('#event_doubletap', 'DOUBLE_TAP', function(event) {
-        alert("DOUBLE_TAP!");
-    });
-    
-    lng.Dom.Event.live('#swipe', 'SWIPE', function(event) {
-        alert("SWIPE!");
-    });
-    
-    lng.Dom.Event.live('#swipe_left', 'SWIPE_LEFT', function(event) {
-        alert("SWIPE_LEFT!");
-    });
-    
-    lng.Dom.Event.live('#swipe_right', 'SWIPE_RIGHT', function(event) {
-        alert("SWIPE_RIGHT!");
-    });
-    
-    lng.Dom.Event.live('#swipe_up', 'SWIPE_UP', function(event) {
-        alert("SWIPE_UP!");
-    });
-    
-    lng.Dom.Event.live('#swipe_down', 'SWIPE_DOWN', function(event) {
-        alert("SWIPE_DOWN!");
-    });
-
-    lng.Dom.Event.delegate('body', '#load_list', 'TAP', function(event) {
-        App.Services.getMockList();
-    });
-
-    lng.Dom.Event.live('#load_scroll_mocks', 'TAP', function(event) {
-        App.View.scroll_mockup();
-    });
-
-})(LUNGO);

+ 0 - 35
examples/test_src/app/services.js

@@ -1,35 +0,0 @@
-App.Services = (function(lng, App, undefined) {
-    
-    
-    var getMockList = function(){
-        var mock = new Array(); 
-        for (var i=1; i <= 6; i++) {
-            mock.push({id:i, name:'name nº'+i, description:'description nº'+i, avatar:'resources/images/avatar.jpg'});
-        }
-        for (var i=7; i <= 12; i++) {
-            mock.push({id:i, name:'surname nº'+i, description:'description nº'+i});
-        }
-        for (var i=13; i <= 32; i++) {
-            mock.push({id:i, name:'name nº'+i, description:'description nº'+i});
-        }
-
-        lng.View.Template.List.create({
-            container_id: 'list_sample',
-            template_id: 'list-tmp',
-            data: mock
-        });
-
-        lng.View.Template.List.create({
-            container_id: 'list_grouped_sample',
-            template_id: 'list-tmp',
-            data: mock,
-            order_field: 'name',
-            order_type: 'desc'
-        });
-    }
-
-    return {
-        getMockList: getMockList
-    }
-
-})(LUNGO, App);

+ 0 - 28
examples/test_src/app/view.js

@@ -1,28 +0,0 @@
-App.View = (function(lng, App, undefined) {
-
-    lng.View.Template.create(
-        'list-tmp', 
-        '<li class="{{anchor}}">\
-            <a href="#">\
-                <div class="bubble articblue onright">{{id}} €</div>\
-                <strong>{{name}}{{anchor_name}}</strong>\
-                <small>{{description}}</small>\
-            </a>\
-        </li>'
-    );
-
-    var scroll_mockup = function(){
-        var _markup = '';
-        for (var i=0; i < 32; i++) {
-            _markup += '<li>'+i+'</li>';
-        }
-
-        lng.View.Scroll.update('scroll_vertical', _markup);
-        lng.View.Scroll.update('scroll_horizontal', _markup);
-    }
-
-    return{
-        scroll_mockup: scroll_mockup
-    }
-
-})(LUNGO, App);

BIN
examples/test_src/assets/images/default.png


BIN
examples/test_src/assets/images/icon-72.png


BIN
examples/test_src/assets/images/icon.png


BIN
examples/test_src/assets/images/icon@2x.png


BIN
examples/test_src/assets/images/ikalbeniz.jpg


BIN
examples/test_src/assets/images/pasku.jpg


BIN
examples/test_src/assets/images/soyjavi.jpg


+ 0 - 44
examples/test_src/assets/stylesheets/app.css

@@ -1,44 +0,0 @@
-/* @group <section> #demo_events */
-section#demo_events div.container{
-	width: 100%;
-	height: 128px;
-	background: #f00;
-	font-size: 2.0em;
-	text-align: center;
-	line-height: 128px;
-	color: #fff;
-	text-shadow: rgba(0,0,0,0.5) 0 2px 1px;
-}
-
-section#demo_events div.output{
-	width: 100%;
-	padding: 4px;
-	min-height: 14px;
-	background: #ccc;
-	color: rgba(0,0,0,0.75);
-}
-/* @end */
-
-/* @group <section> #demo_scroll */
-#scroll_vertical, #scroll_horizontal{margin-left: 3px;}
-#scroll_vertical{
-	height: 256px;
-}
-
-#scroll_horizontal {
-	height: 80px;
-}
-
-section#demo_scroll li{
-	height: 76px;
-	width: 76px;
-	background: #ccc;
-	font-size: 24px;
-	line-height: 76px;
-	list-style: none;
-	text-align: center;
-	float:left;
-	margin-right: 3px;
-	margin-bottom: 3px;
-}
-/* @end */

+ 0 - 376
examples/test_src/index.html

@@ -1,376 +0,0 @@
-<!doctype html>
-<html>
-<head>
-    <meta charset="utf-8">
-    <title>LungoJS - Test Source 1.0.3</title>
-    <meta name="description" content="">
-    <meta name="author" content="Javier Jiménez Villar (@soyjavi)">
-    <!-- Mobile viewport optimization http://goo.gl/b9SaQ -->
-    <meta name="HandheldFriendly" content="True">
-    <meta name="MobileOptimized" content="320">
-    <meta http-equiv="cleartype" content="on">
-    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0;">
-    <meta name="apple-mobile-web-app-capable" content="yes">
-    <meta name="apple-mobile-web-app-status-bar-style" content="black">
-    <!-- For iPhone 4 with high-resolution Retina display: -->
-    <link rel="apple-touch-icon-precomposed" sizes="114x114" href="assets/images/icon@2x.png">
-    <link rel="apple-touch-icon-precomposed" sizes="72x72" href="assets/images/icon-72.png">
-    <link rel="apple-touch-icon-precomposed" href="assets/images/icon.png">
-    <link rel="apple-touch-startup-image" href="assets/images/default.png">
-    <!-- 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.list.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.colour.css">
-    <link rel="stylesheet" href="../../src/stylesheets/css/Lungo.widgets.icon.css">
-    <link rel="stylesheet" href="../../src/stylesheets/css/Lungo.theme.default.css">
-    <!-- App Stylesheet -->
-    <link rel="stylesheet" href="assets/stylesheets/app.css?v=1">
-</head>
-
-<body class="app">
-    <section id="login" class="splash">
-		<article>
-			<h1>Lungo<span class="semi-opacity">js</span></h1>
-			<div class="form">
-				<input type="text" placeholder="Type your user"/>
-				<input type="password" placeholder="Type your password"/>
-				<a href="#demo" data-target="section" class="button big blue" data-icon="play">Go to demo!</a>
-			</div>
-			<div class="copyright">Copyright TapQuo Inc, 2011</div>
-		</article>
-	</section>
-
-	<section id="demo" class="_static">
-		<header data-title="LungoJS Framework">
-			<nav class="onright">
-				<a href="#main" data-target="article" class="current" data-title="LungoJS Framework" data-icon="config"></a>
-				<a href="#author" data-target="article" data-title="Authors" data-icon="user"></a>
-			</nav>
-		</header>
-		<article id="main" class="list">
-            <scroll id="main_scroll">
-                <ul>
-                    <li class="info contrast">
-                        <img src="assets/images/icon.png" class="rounded">
-                        <strong>LungoJS Framework</strong>
-                        <small class="margin-top-4">version 1.0.0</small>
-                        <small>by TapQuo Inc.</small>
-                    </li>
-    				<li><a href="#demo_header_footer" data-target="section" class="arrow" data-icon="wifi">
-    					<strong>Header + Footer + Articles</strong><small>paodapod</small></a></li>
-    				<li><a href="#demo_toolbar" data-target="section" class="arrow" data-icon="download">
-    					<strong>Toolbar</strong><small>Toolbar</small></a></li>
-    				<li><a href="#demo_list" data-target="section" class="arrow" id="load_list" data-icon="note">
-                        <div class="bubble highlight">3 types</div>
-    					<strong>Lists</strong>
-    					<small>paodapod</small></a></li>
-    				<li><a href="#demo_events" data-target="section" class="arrow" data-icon="user">
-    						<strong>Events handler</strong><small>paodapod</small></a></li>
-    				<li><a href="#demo_scroll" data-target="section" class="arrow" id="load_scroll_mocks" data-icon="points">
-    						<strong>Scroll</strong><small>paodapod</strong></small></a></li>
-    				<li><a href="#demo_buttons" data-target="section" class="arrow" data-icon="plus">
-    						<strong>Buttons</strong><small>paodapod</small></a></li>
-    				<li><a href="#demo_forms" data-target="section" class="arrow" data-icon="write">
-                        <strong>Forms</strong><small>paodapod</small></a></li>
-    				<li class="anchor" data-icon="key">Tapquo Sugars</li>
-    				<li><a href="#demo_sugars" data-target="section" data-icon="box">
-    					<strong>Sugars</strong><small>paodapod</small></a></li>
-    			</ul>
-			</scroll>
-        </article>
-
-		<article id="author" class="list" >
-            <scroll id="people_scroll">
-    	        <ul>
-                    <li class="anchor" data-icon="key">Author</li>
-    	            <li>
-    	                <img src="assets/images/soyjavi.jpg" class="size48 ">
-    	                <strong>Javi Jiménez Villar</strong>
-    	                <small>@soyjavi</small>
-    	                </li>
-                    <li class="anchor" data-icon="key">CoreTeam</li>
-                    <li>
-    	                <img src="assets/images/pasku.jpg" class="size48 ">
-    	                <strong>Guillermo Pascual</strong>
-    	                <small>@pasku1</small></li>
-                    <li>
-                        <img src="assets/images/ikalbeniz.jpg" class="size48">
-                        <strong>Iker Perez Albeniz</strong>
-                        <small>@ikalneniz</small></li>
-                    <li class="anchor" data-icon="key">Contributors</li>
-                    <li>
-                        <img src="https://secure.gravatar.com/avatar/b374f3bd05b1db4a974585ba57661815?s=140&d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png" class="size48 ">
-                        <strong>Jorge Casar</strong>
-                        <small>jorgecasar</small></li>
-                    <li>
-                        <img src="https://secure.gravatar.com/avatar/3d4bf44cff9779242dd82d20a0b7d0c8?s=140&d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png" class="size48 ">
-                        <strong>Dave Winders</strong>
-                        <small>daithiw44</small></li>
-                    <li>
-                        <img src="https://secure.gravatar.com/avatar/884b5d1e91b826afc8c6b4fc3429dbd0?s=140&d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png" class="size48 ">
-                        <strong>GermanDZ</strong>
-                        <small>GermanDZ</small></li>
-                    <li>
-                        <img src="https://secure.gravatar.com/avatar/b41d652ca9b88e636516d907599dcc87?s=140&d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png" class="size48 ">
-                        <strong>Juan Gallego Galisteo</strong>
-                        <small>nickel</small></li>
-                    <li>
-                        <img src="https://secure.gravatar.com/avatar/a3257b495a2bc4ae15405c7880300848?s=140&d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png" class="size48 ">
-                        <strong>John McLear</strong>
-                        <small>johnyma22</small></li>
-    	        </ul>
-            <scroll>
-		</article>
-    </section>
-
-	<section id="demo_header_footer">
-		<header data-title="Summary" data-back="home">
-            <nav class="onright">
-                <a href="#summary" data-target="article" class="current" data-title="Summary" data-icon="user"></a>
-                <a href="#messages" data-target="article" data-title="Message" data-icon="chat"><abbr>Messages</abbr></a>
-            </nav>
-        </header>
-
-		<article id="summary">
-		    Summary
-		    <a href="mailto:javi@tapquo.com">Prueba</a>
-		</article>
-
-		<article id="messages">
-		    Messages
-		</article>
-
-		<footer>
-		    <a href="#" class="button articblue onright" data-icon="key">Sign In</a>
-            <nav class="onleft">
-                <a href="#summary" data-target="article"><span class="icon user"></span></a>
-                <a href="#messages" data-target="article"><span class="icon chat"></span></a>
-            </nav>
-        </footer>
-	</section>
-
-	<section id="demo_events">
-	    <header data-title="Events demo" data-back="home"></header>
-	    <article class="list">
-	        <li class="info contrast" data-icon="user">
-                <strong>Test events</strong>
-                <small class="margin-top-4">... in each row.</small>
-            </li>
-	        <li id="event_touchstart">Touchstart me!</li>
-	        <li id="event_touchend">Touchstend me!</li>
-	        <li id="event_tap">Tap me!</li>
-	        <li id="event_doubletap">Double-Tap me!</li>
-	        <li class="anchor" data-icon="shuffle">Special Mobile Events</li>
-            <li id="swipe">Swipe me!</li>
-            <li id="swipe_left">Swipe-Left me!</li>
-            <li id="swipe_right">Swipe-Right me!</li>
-            <li id="swipe_up">Swipe-Up me!</li>
-            <li id="swipe_down">Swipe-Down me!</li>
-	    </article>
-	</section>
-
-	<section id="demo_scroll">
-		<header data-title="Scroll Demo" data-back="home"></header>
-		<article>
-			<h1>Scroll: vertical</h1>
-			<scroll id="scroll_vertical" class="vertical"></scroll>
-
-			<h1>Scroll: horizontal</h1>
-			<scroll id="scroll_horizontal" class="horizontal"></scroll>
-		</article>
-    </section>
-
-	<section id="demo_list">
-		<header data-back="home articblue" data-title="LISTS">
-			<nav class="onright">
-				<a href="#list_sample" data-target="article" class="current" data-icon="note"><abbr>Simple List</abbr></a>
-				<a href="#list_grouped_sample" data-target="article" data-icon="folder"><abbr>Grouped List</abbr></a>
-				<a href="#list_info_sample" data-target="article" data-icon="cloudup"><abbr>Special .class</abbr></a>
-			</nav>
-		</header>
-		<article id="list_sample" class="list"></article>
-		<article id="list_grouped_sample" class="list"></article>
-		<article id="list_info_sample" class="list">
-		    <ul>
-		         <li class="info">
-                     <img src="assets/images/icon.png" class="framed">
-                     <strong>LungoJS Framework</strong>
-                     <small class="margin-top-4">version 0.2</small>
-                     <small>by @soyjavi & @pasku1</small>
-                 </li>
-
-                 <li class="info contrast">
-                     <img src="assets/images/icon.png" class="framed">
-                     <strong>LungoJS Framework</strong>
-                     <small class="margin-top-4">version 0.2</small>
-                     <small>by @soyjavi & @pasku1</small>
-                 </li>
-
-                <li class="toolbar contrast">
-                    <nav>
-                        <a href="#list_sample" data-target="article" class="current" data-icon="note"></a>
-        				<a href="#list_grouped_sample" data-target="article" data-icon="folder"></a>
-        				<a href="#list_info_sample" data-target="article" data-icon="cloudup"></a>
-                    </nav>
-                </li>
-                <li class="info contrast highlight">
-                    <img src="assets/images/icon.png" class="framed">
-                    <strong>LungoJS Framework</strong>
-                    <small class="margin-top-4">version 0.2</small>
-                    <small>by @soyjavi & @pasku1</small>
-                </li>
-                <li class="toolbar highlight">
-                    <nav>
-                        <a href="#list_sample" data-target="article" class="current" data-icon="note"></a>
-        				<a href="#list_grouped_sample" data-target="article" data-icon="folder"></a>
-        				<a href="#list_info_sample" data-target="article" data-icon="cloudup"></a>
-                    </nav>
-                </li>
-		    </ul>
-		</article>
-		<footer data-title="COUNT:*"></footer>
-	</section>
-
-	<section id="demo_toolbar">
-		<header data-title="Toolbar Demo" data-back="articblue home"></header>
-		<article id="toolbar_1"></article>
-		<article id="toolbar_2"></article>
-		<article id="toolbar_3"></article>
-		<article id="toolbar_4"></article>
-		<footer class="toolbar">
-            <nav>
-                <a href="#back" data-target="section" alt="Test Article Nº1" data-icon="left"></a>
-                <a href="#toolbar_1" data-target="article" class="current" data-icon="chat"></a>
-				<a href="#toolbar_2" data-target="article" data-icon="user"></a>
-                <a href="#toolbar_3" data-target="article" data-icon="chat"></a>
-				<a href="#toolbar_4" data-target="article" data-icon="user"></a>
-            </nav>
-        </footer>
-	</section>
-
-	<section id="demo_buttons">
-		<header data-back="home" data-title="Buttons">
-		</header>
-		<article>
-			<scroll id="scroll_buttons">
-				<form class="buttons" id="scroll_buttons_scroll" style="height:730px;">
-					<a href="#" class="button big">default</a>
-					<a href="#" class="button big disabled">disabled</a>
-
-					<a href="#" class="button big red">red</a>
-					<a href="#" class="button big lightgreen">lightgreen</a>
-					<a href="#" class="button big green">green</a>
-					<a href="#" class="button big blue">blue</a>
-					<a href="#" class="button big articblue">articblue</a>
-					<a href="#" class="button big orange">orange</a>
-					<a href="#" class="button big magenta">magenta</a>
-					<a href="#" class="button big pink">pink</a>
-					<a href="#" class="button big yellow">yellow</a>
-					<a href="#" class="button big twitter" data-icon="twitter">twitter</a>
-					<a href="#" class="button big facebook" data-icon="facebook">facebook</a>
-				</form>
-			</scroll>
-		</article>
-		<footer>
-		    <a href="#back" data-target="section" class="back onleft button articblue" data-icon="home">Home</a>
-			<a href="#" class="button red onleft" data-icon="picture">Picture</a>
-			<a href="#" class="button articblue onleft" data-icon="wifi"></a>
-			<a href="#" class="button yellow onleft" data-icon="home">Home</a>
-		</footer>
-	</section>
-
-	<section id="demo_forms">
-		<header data-back="home"></header>
-		<article>
-		    <scroll id="scroll_forms">
-			<form>
-				<input type="text" placeholder="Input text"/>
-				<input type="password" placeholder="Input password"/>
-				<input type="checkbox">Save credentials</input>
-				<textarea placeholder="Textarea sample"></textarea>
-				<label class="select">
-					<select class="custom">
-						<option value="1">One</option>
-						<option value="2">Two</option>
-						<option value="3">Three</option>
-					</select>
-				</label>
-				<label data-icon="twitter"></label>
-				<label class="checkbox"><input type="checkbox" id="checkbox-0"/></label>
-
-				<label data-icon="facebook"></label>
-				<label class="checkbox"><input type="checkbox" id="checkbox-1" checked="checked"/></label>
-
-				<label data-icon="picture"></label>
-				<label class="checkbox"><input type="checkbox" id="checkbox-2"/></label>
-
-	            <br/>
-				<label>Radio:</label>
-				<label class="radio"><input type="radio" name="group-0" id="radio-0" checked="checked"/></label>
-				<label class="radio"><input type="radio" name="group-0" id="radio-1"/></label>
-				<label class="radio"><input type="radio" name="group-0" id="radio-2"/></label>
-            </ul>
-
-				<br/>
-				<a href="#" class="button big green" data-icon="check">Accept</a>
-				<a href="#" class="button big red" data-icon="cancel">Cancel</a>
-			</form>
-			</scroll>
-		</article>
-	</section>
-
-	<section id="demo_sugars">
-		<header data-back="home articblue"></header>
-		<article>
-		</article>
-	</section>
-
-	<section id="demo_next">
-		<header data-back="home articblue"></header>
-		<article><h1>Section demo_next - Article id=messages</h1></article>
-	</section>
-
-    <!-- Third parties dependencies -->
-    <script src="../../src/lib/zepto.js"></script>
-    <script src="../../src/lib/iscroll.js"></script>
-    <!-- LungoJS Libraries (Development mode)-->
-    <script src="../../src/Lungo.js"></script>
-    <script src="../../src/Lungo.App.js" ></script>
-    <script src="../../src/Lungo.Environment.js" ></script>
-    <script src="../../src/Lungo.Core.js"></script>
-    <script src="../../src/Lungo.Events.js"></script>
-    <script src="../../src/Lungo.Service.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.Resize.js"></script>
-    <script src="../../src/view/Lungo.View.Article.js" ></script>
-    <script src="../../src/view/Lungo.View.Scroll.js"></script>
-    <script src="../../src/view/Lungo.View.Template.js"></script>
-    <script src="../../src/view/Lungo.View.Template.Binding.js"></script>
-    <script src="../../src/view/Lungo.View.Template.List.js"></script>
-    <script src="../../src/dom/Lungo.Dom.js"></script>
-    <script src="../../src/dom/Lungo.Dom.Event.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/attributes/Lungo.Attributes.Section.js"></script>
-    <script src="../../src/boot/Lungo.Boot.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>
-    <script src="../../src/boot/Lungo.Boot.Section.js"></script>
-    <script src="../../src/boot/Lungo.Boot.Article.js"></script>
-    <!-- LungoJS - Sandbox App -->
-    <script src="app/app.js"></script>
-    <script src="app/data.js"></script>
-    <script src="app/events.js"></script>
-    <script src="app/services.js"></script>
-    <script src="app/view.js"></script>
-</body>
-</html>

Diff do ficheiro suprimidas por serem muito extensas
+ 0 - 2078
release/lungo-1.0.3.js


Diff do ficheiro suprimidas por serem muito extensas
+ 0 - 255
release/lungo-1.0.3.min.css


Diff do ficheiro suprimidas por serem muito extensas
+ 0 - 24
release/lungo-1.0.3.min.js


Diff do ficheiro suprimidas por serem muito extensas
+ 0 - 121
release/lungo-1.0.3.packed.js


+ 0 - 22
src/attributes/Lungo.Attributes.Section.js

@@ -1,22 +0,0 @@
-    /**
- * Make an analysis of <elements> in a <section>.
- *
- * @namespace LUNGO.Attributes
- * @class Section
- *
- * @author Javier Jimenez Villar <javi@tapquo.com> || @soyjavi
- * @author Guillermo Pascual <pasku@tapquo.com> || @pasku1
- */
-
-LUNGO.Attributes.Section = {
-     header: {
-         name: 'header',
-         reference: 'height',
-         bind: 'top'
-     },
-     footer: {
-         name: 'footer',
-         reference: 'height',
-         bind: 'bottom'
-     }
-};

Diff do ficheiro suprimidas por serem muito extensas
+ 0 - 1044
src/lib/iscroll.js


+ 86 - 106
src/stylesheets/css/Lungo.theme.default.css

@@ -1,185 +1,165 @@
-/**
+/** 
  * Stylesheet
- *
+ * 
  * @namespace LUNGO.Theme
  * @class Default
  *
  * @author Javier Jimenez Villar <javi@tapquo.com> || @soyjavi
  */
-/* Mixin */
-/* @group layout */
 .app {
-  font-size: 13px;
-  background: #000;
-}
-article {
-  background: #fff;
+  background: #000000;
 }
-/* @group <header> & <footer> */
+/* @group <header> & <footer> & <article> */
 header {
-  background: #019d5e -webkit-gradient(linear, left top, left bottom, color-stop(0.1, #019d5e), color-stop(1, #016a37));
-  -webkit-border-radius: 6px 6px 0 0;
-  -moz-border-radius: 6px 6px 0 0;
-  border-radius: 6px 6px 0 0;
-  -webkit-background-clip: padding-box;
-  -moz-background-clip: padding;
-  background-clip: padding-box;
-  -webkit-box-shadow: inset 0px 1px 0px rgba(255, 255, 255, 0.4), inset 0px -1px rgba(0, 0, 0, 0.5);
+  background: #019d5e -webkit-gradient(linear, left top, left bottom, color-stop(0.1, #019d5e), color-stop(1, #006b41));
+  border-top: 1px solid #6dc0a1;
+  border-bottom: 1px solid #063322;
 }
 footer {
   background: #2c2c2d -webkit-gradient(linear, left top, left bottom, color-stop(0.25, #2c2c2d), color-stop(1, #1c1d1d));
-  -webkit-box-shadow: inset 0px 1px rgba(0, 0, 0, 0.5), 0px -1px 2px rgba(0, 0, 0, 0.4);
+  border-top: 1px inset #1c1c1c;
 }
 .title {
   color: #fff;
-  text-shadow: rgba(0, 0, 0, 0.5) 0 -1px 0px;
+  text-shadow: 0px -1px 0px rgba(0, 0, 0, 0.5);
+}
+article {
+  background-color: #e2e2e2;
+}
+article .title {
+  color: #797979;
+  text-shadow: 0px 1px 0px #fff;
 }
 /* @end */
 /* @group <nav> */
 nav a {
   color: rgba(0, 0, 0, 0.5);
-  text-shadow: rgba(255, 255, 255, 0.35) 0 1px 1px;
-}
-header:not(.toolbar) nav a, footer:not(.toolbar) nav a {
-  line-height: 38px;
 }
 nav a.current {
   color: #fff;
-  text-shadow: 0px 1px 0px #000 !important;
 }
 .toolbar a.current {
-  background: rgba(255, 255, 255, 0.15);
+  background: #1c1c1c;
+  box-shadow: inset 0px 0px 8px #101010;
+  text-shadow: 0px 1px 4px #000;
 }
 /* @end */
 /* @group <aside> */
 aside {
   background: #252525;
-  -webkit-box-shadow: inset -1px 0px 0px #000000, inset -4px 0px 8px rgba(0, 0, 0, 0.5);
 }
 aside a {
-  color: #fff !important;
-  text-shadow: 0px 1px 0px #000 !important;
-  border-bottom: 1px inset rgba(0, 0, 0, 0.3);
-  border-top: 1px inset rgba(255, 255, 255, 0.1);
+  color: #fff;
+  text-shadow: 0px 1px 0px #000;
+  border-bottom: 1px inset #101010;
+  border-top: 1px inset #868686;
 }
 aside a.current {
-  background: rgba(255, 255, 255, 0.1);
+  background: #1c1c1c;
+  box-shadow: inset 0px 0px 8px #101010;
+  border-top: 1px inset #1c1c1c;
 }
 aside a .icon {
-  opacity: 0.5;
+  text-shadow: none;
+  color: #7a7a7a;
+}
+aside .anchor {
+  background: #101010;
+  color: #7a7a7a;
+}
+aside ~ article {
+  box-shadow: -1px 0px 4px #000000;
 }
 /* @end */
 /* @group .list */
-.list {
-  background: #c5c5c5;
+.list, .list li:not(.toolbar) a {
+  color: #333;
 }
-.list li:not(.info) {
+.list li {
   background: #fff;
-  border-bottom: 1px inset #c3c4c6;
-  color: #333;
+  border-bottom: 1px inset #e6e6e6;
 }
-.list li.toolbar {
-  border-bottom-color: rgba(0, 0, 0, 0.2);
+.list li:last-child {
+  border-bottom: none;
 }
-.list li:not(.toolbar) a {
-  color: #333;
-  text-shadow: #fff 0px 1px 1px;
-  -webkit-tap-highlight-color: #242525;
+.indented ul {
+  border: 1px solid #c5c5c5;
 }
-.list strong {
-  color: #2343be;
+.list .darker {
+  background-color: #2c2c2d;
+  color: #fff;
+  text-shadow: 0px 1px 0px #000;
 }
-.list small {
-  opacity: 0.75;
+.list li.darker a {
+  color: #fff !important;
 }
-.list .bubble {
-  border: 1px solid rgba(0, 0, 0, 0.15);
-  -webkit-border-radius: 2px;
-  -moz-border-radius: 2px;
-  border-radius: 2px;
-  -webkit-background-clip: padding-box;
-  -moz-background-clip: padding;
-  background-clip: padding-box;
-  color: #fff;
-  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.3);
+.list .dark {
+  background-color: #f4f4f4;
+  box-shadow: inset 0px 1px 0px #fff;
+  text-shadow: 0px 1px 0px #fff;
 }
-.list .button {
-  color: #fff;
-  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.3);
+.list small, .list .onright:not(.bubble) {
+  color: #999;
 }
-.list .arrow:before {
-  color: #a9a9a9;
+.list .tip {
+  color: #7a7a7a;
 }
-/* @group .anchor */
 .list li.anchor {
   background: #f4f4f4;
   color: #222;
 }
-/* @end */
-/* @group .anchor */
-.list li.search {
-  border: none;
-  -webkit-box-shadow: inset 0px 1px 0px rgba(255, 255, 255, 0.1), inset 0px -1px 0px rgba(0, 0, 0, 0.25);
+.list .toolbar {
+  border-bottom-color: rgba(0, 0, 0, 0.2);
 }
-/* @end */
-/* @group .info */
-.list li.info {
-  border: none;
-  -webkit-box-shadow: inset 0px 1px 0px rgba(255, 255, 255, 0.1), inset 0px -1px 0px rgba(0, 0, 0, 0.25);
-  background: #cbcbcb;
+.list .arrow:before {
+  color: #a9a9a9;
 }
-.list .info strong {
-  color: #333;
+.list .toolbar a {
+  box-shadow: 1px 0px 0px #d9d9d9;
 }
-.list .info.contrast strong {
-  color: #fff;
+.list .toolbar a:last-child {
+  box-shadow: none;
 }
-/* @end */
-/* @end */
-.list .contrast {
-  background: #2c2c2d -webkit-gradient(linear, left top, left bottom, color-stop(0.25, #2c2c2d), color-stop(1, #1c1d1d)) !important;
-  text-shadow: 0px 1px 1px rgba(0, 0, 0, 0.25);
-  color: #fff;
-}
-.list .highlight {
-  background: #499dc4 -webkit-gradient(linear, left top, left bottom, color-stop(0, #499dc4), color-stop(1, #0e8eb6)) !important;
+.list .toolbar a.current {
+  background: transparent;
+  color: #333;
+  text-shadow: none !important;
 }
 /* @end */
 /* @group widgets */
-/* @group <section>.splash */
-.splash article {
-  background: #2c2c2d -webkit-gradient(linear, left top, left bottom, color-stop(0.25, #2c2c2d), color-stop(1, #1c1d1d)) !important;
+.splash {
+  background: #019d5e -webkit-gradient(linear, left top, left bottom, color-stop(0.1, #019d5e), color-stop(1, #006b41));
   color: #fff;
-  text-shadow: rgba(0, 0, 0, 0.5) 0 1px 1px;
+  text-shadow: 0px 1px 1px #000;
 }
-/* @end */
 /* @group <inputs> */
 input, textarea, select {
-  border: 1px solid #ccc;
+  border: 1px solid #c5c5c5;
+  background: #ffffff -webkit-gradient(linear, left top, left bottom, color-stop(0, #eeeeee), color-stop(0.25, #ffffff));
+}
+.rounded input, textarea, select {
   -webkit-border-radius: 2px;
-  -moz-border-radius: 2px;
   border-radius: 2px;
   -webkit-background-clip: padding-box;
-  -moz-background-clip: padding;
   background-clip: padding-box;
-  background: #ffffff -webkit-gradient(linear, left top, left bottom, color-stop(0, #dddddd), color-stop(0.15, #ffffff));
 }
 input:focus, textarea:focus, select:focus {
   border: 1px solid #058cf5;
-  -webkit-box-shadow: 0 0 4px 1px #058cf5;
-  -moz-box-shadow: 0 0 4px 1px #058cf5;
-  box-shadow: 0 0 4px 1px #058cf5;
+  -webkit-box-shadow: 0px 0px 4px 0px #058cf5;
+  box-shadow: 0px 0px 4px 0px #058cf5;
   background: #e8fefe;
 }
 .select:after {
   background: #ccc;
   color: white;
-  -webkit-border-radius: 0 2px 2px 0;
-  -moz-border-radius: 0 2px 2px 0;
-  border-radius: 0 2px 2px 0;
-  -webkit-background-clip: padding-box;
-  -moz-background-clip: padding;
-  background-clip: padding-box;
 }
 /* @end */
+.bubble {
+  color: #fff;
+  text-shadow: none;
+  box-shadow: inset 0px 0px 2px rgba(0, 0, 0, 0.7);
+}
+.bubble.count {
+  background: #e33100;
+}
 /* @end */

+ 128 - 157
src/stylesheets/less/Lungo.theme.default.less

@@ -1,6 +1,6 @@
-/**
+/** 
  * Stylesheet
- *
+ * 
  * @namespace LUNGO.Theme
  * @class Default
  *
@@ -8,208 +8,179 @@
  */
 
 @import "mixins.less";
-/* Mixin */
-@base: #019d5e;
-@lighter: lighten(spin(@base, 10), 20%);
-@light: lighten(spin(@base, 5), 10%);
-@dark: darken(spin(@base, -5), 10%);
-@darker: darken(spin(@base, -10), 20%);
-
-/* @group layout */
-.app {
-	font-size:13px;
-    background: #000;
-}
 
-article {
-	background: #fff;
+.app {
+    background: @black;
 }
-
-/* @group <header> & <footer> */
+	
+/* @group <header> & <footer> & <article> */
 header {
-	background: #019d5e -webkit-gradient(linear, left top, left bottom, color-stop(0.1, @base), color-stop(1, @dark));
-
-	.border-radius(6px, 6px, 0, 0);
-	-webkit-box-shadow:
-		inset 0px 1px 0px rgba(255,255,255,0.4),
-		inset 0px -1px rgba(0,0,0,0.5)
+	background: #019d5e -webkit-gradient(linear, left top, left bottom, color-stop(0.1, #019d5e), color-stop(1, #006b41));
+	
+	border-top: 1px solid #6dc0a1;	
+	border-bottom: 1px solid #063322;
 }
-
+	
 footer {
 	background: #2c2c2d -webkit-gradient(linear, left top, left bottom, color-stop(0.25, #2c2c2d), color-stop(1, #1c1d1d));
-
-	-webkit-box-shadow:
-		inset 0px 1px rgba(0,0,0,0.5),
-		0px -1px 2px rgba(0,0,0,0.4);
+	border-top: 1px inset #1c1c1c;
 }
 
 .title {
 	color: #fff;
-	text-shadow: rgba(0,0,0,0.5) 0 -1px 0px;
+	text-shadow: 0px -1px 0px rgba(0,0,0,0.5) ; 
 }
+
+article { background-color: #e2e2e2; }
+	
+	article .title {
+    	color: #797979;
+    	text-shadow: 0px 1px 0px #fff;
+	}
 /* @end */
 
 /* @group <nav> */
-nav a {
-	color: rgba(0,0,0,0.5);
-	text-shadow: rgba(255,255,255,0.35) 0 1px 1px;
-}
+nav a { color: rgba(0,0,0,0.5); }
 
-header:not(.toolbar) nav a, footer:not(.toolbar) nav a {
-	line-height: 38px;
-}
-
-nav a.current {
-	color: #fff;
-	text-shadow: 0px 1px 0px #000 !important;
-}
+nav a.current { color: #fff; }
 
 .toolbar a.current{
-	background: rgba(255,255,255,0.15);
-}
-
+	background: #1c1c1c;
+	box-shadow: inset 0px 0px 8px #101010;
+	text-shadow: 0px 1px 4px #000;
+}	
 /* @end */
 
 /* @group <aside> */
+
 aside {
     background: #252525;
-	-webkit-box-shadow: inset -1px 0px 0px #000, inset -4px 0px 8px rgba(0,0,0, 0.5);
-}
-
-aside a{
-	color: #fff !important;
-    text-shadow: 0px 1px 0px #000 !important;
-    border-bottom: 1px inset rgba(0,0,0,0.3);
-    border-top: 1px inset rgba(255,255,255,0.1);
-}
-
-aside a.current {
-	background: rgba(255,255,255,0.1);
-}
-
-aside a .icon {
-	opacity: 0.5;
 }
+	aside a {
+		color: #fff;
+	    text-shadow: 0px 1px 0px #000;    
+	    border-bottom: 1px inset #101010;
+		border-top: 1px inset #868686;
+	}
+	
+	aside a.current { 
+		background: #1c1c1c;
+		box-shadow: inset 0px 0px 8px #101010;
+		border-top: 1px inset #1c1c1c;
+	}
+	
+	aside a .icon { 
+		text-shadow: none; 
+		color: #7a7a7a;
+	}
+	
+	aside .anchor {
+	    background: #101010;
+		color:  #7a7a7a;
+	}
+	
+	aside ~ article {
+		box-shadow: -1px 0px 4px #000;
+	}
 
 /* @end */
 
 /* @group .list */
-.list {
-	background: #c5c5c5;
-}
-
-.list li:not(.info) {
-	background: #fff;
-	border-bottom: 1px inset #c3c4c6;
+.list, .list li:not(.toolbar) a {
 	color: #333;
 }
-
-.list li.toolbar {
-	border-bottom-color: rgba(0,0,0,0.2);
-}
-
-.list li:not(.toolbar) a {
-	color: #333;
-	text-shadow: #fff 0px 1px 1px;
-	-webkit-tap-highlight-color: #242525;
-}
-
-.list strong {
-	color: #2343be;
-}
-
-.list small {
-	opacity: 0.75;
-}
-
-.list .bubble {
-	border: 1px solid rgba(0,0,0,0.15);
-	.border-radius(2px);
-	color: #fff;
-	text-shadow: 0 -1px 0 rgba(0,0,0,.3);
-}
-
-.list .button {
-	color: #fff;
-	text-shadow: 0 -1px 0 rgba(0,0,0,.3);
-}
-
-.list .arrow:before {
-	color: #a9a9a9;
-}
-
-/* @group .anchor */
-.list li.anchor {
-	background: #f4f4f4;
-	color: #222;
-}
-/* @end */
-
-/* @group .anchor */
-.list li.search {
-	border: none;
-	-webkit-box-shadow:
-		inset 0px 1px 0px rgba(255,255,255,0.1),
-		inset 0px -1px 0px rgba(0,0,0,0.25);
+	.list li {
+		background: #fff;
+		border-bottom: 1px inset #e6e6e6;
+	}
+	
+	.list li:last-child { border-bottom: none; }
+	
+	.indented ul {
+    	border: 1px solid #c5c5c5;
+	}
+	
+	.list .darker {
+		background-color: #2c2c2d;	
+		color: #fff;
+		text-shadow: 0px 1px 0px #000;
+	}
+		.list li.darker a{ color: #fff !important; }
+	
+	.list .dark {
+	    background-color: #f4f4f4;
+		box-shadow: inset 0px 1px 0px #fff;			
+		text-shadow: 0px 1px 0px #fff;
 	}
-/* @end */
-
-/* @group .info */
-.list li.info {
-	border: none;
-	-webkit-box-shadow:
-		inset 0px 1px 0px rgba(255,255,255,0.1),
-		inset 0px -1px 0px rgba(0,0,0,0.25);
-	background: #cbcbcb;
-}
-
-.list .info strong{
-	color: #333;
-}
-
-.list .info.contrast strong {
-	color: #fff;
-}
-/* @end */
-/* @end */
-.list .contrast {
-	background: #2c2c2d -webkit-gradient(linear, left top, left bottom, color-stop(0.25, #2c2c2d), color-stop(1, #1c1d1d)) !important;
-	text-shadow: 0px 1px 1px rgba(0,0,0,0.25);
-	color: #fff;
-}
 
-.list .highlight {
-	background: #499dc4 -webkit-gradient(linear, left top, left bottom, color-stop(0, #499dc4), color-stop(1, #0e8eb6)) !important;
-}
+	.list small, .list .onright:not(.bubble) {
+		color: #999;
+	}
+	
+	.list .tip {
+		color: #7a7a7a;
+	}
+	
+	.list li.anchor {
+		background: #f4f4f4;
+		color: #222;
+	}
+	
+	.list .toolbar {
+		border-bottom-color: rgba(0,0,0,0.2);
+	}	
+	
+	.list .arrow:before {
+		color: #a9a9a9;
+	}
+	
+	.list .toolbar a { box-shadow: 1px 0px 0px #d9d9d9; }
+		
+		.list .toolbar a:last-child { box-shadow: none; }
+		
+		.list .toolbar a.current {
+			background: transparent;
+			color: #333;
+			text-shadow: none !important;
+		}
 /* @end */
 
 /* @group widgets */
 
-/* @group <section>.splash */
-.splash article {
-	background: #2c2c2d -webkit-gradient(linear, left top, left bottom, color-stop(0.25, #2c2c2d), color-stop(1, #1c1d1d)) !important;
-	color: #fff;
-	text-shadow: rgba(0,0,0,0.5) 0 1px 1px;
+.splash { 
+	background: #019d5e -webkit-gradient(linear, left top, left bottom, color-stop(0.1, #019d5e), color-stop(1, #006b41));
+	color: #fff; 
+	text-shadow: 0px 1px 1px #000;
 }
-/* @end */
 
 /* @group <inputs> */
 input, textarea, select {
-	border: 1px solid #ccc;
-	.border-radius(2px);
-	background: #fff -webkit-gradient(linear, left top, left bottom, color-stop(0, #ddd), color-stop(0.15, #fff));
+	border: 1px solid #c5c5c5;
+	
+	background: #fff -webkit-gradient(linear, left top, left bottom, color-stop(0, #eee), color-stop(0.25, #fff));
+
 }
 
-input:focus, textarea:focus, select:focus {
+.rounded input, textarea, select {
+    .border-radius(2px);
+}
+	
+input:focus, textarea:focus, select:focus { 
 	border: 1px solid #058cf5;
-	.box-shadow(0 0 4px 1px #058cf5);
+	.box-shadow(0px 0px 4px 0px #058cf5);
 	background: #e8fefe;
 }
-
+	
 .select:after {
 	background: #ccc;
 	color: white;
-	.border-radius(0 2px 2px 0);
 }
 /* @end */
+
+.bubble {
+	color: #fff;
+	text-shadow: none;
+	box-shadow: inset 0px 0px 2px rgba(0,0,0,0.7);
+}
+	.bubble.count { background: #e33100; }
 /* @end */

+ 0 - 57
src/stylesheets/less/Lungo.widgets.beta.less

@@ -1,57 +0,0 @@
-/** 
- * Stylesheet
- * 
- * @namespace LUNGO.Widgets
- * @class Beta
- *
- * @author Javier Jimenez Villar <javi@tapquo.com> || @soyjavi
- */
-
-/* @group .counter (BETA) */
-.counter{
-	padding: 1px 5px 0;
-	border: 1px solid rgba(0,0,0,0.15);
-	
-	text-shadow: rgba(0,0,0,0.25) 0 -1px 0;
-	font-size: 0.6em;
-	font-weight: bold;
-	margin: 0 auto;
-}
-/* @end */
-
-
-/* @group <article>.info */
-article.info details{
-	margin: 16px;
-	height: 80%;
-	border: 4px dotted #ccc;
-	color: #a9a9a9;
-	display: block;
-	text-align: center;
-	font-size: 1.25em;
-	padding: 16px;
-}
-
-article.info details > *{
-	display: block;
-	color: #a8a8a8;
-	font-weight: normal;
-	font-style: normal;
-}
-
-article.info details em{
-	opacity: 0.75;
-	font-size: 0.85em;
-}
-
-article.info details span {
-	font-size: 192px;
-	//-webkit-animation: article-info 1.5s; 
-	-webkit-animation-iteration-count: infinite;}
-	
-@-webkit-keyframes article-info { 
-	0% {opacity: 1; -webkit-transform:rotate(0deg);} 
-	50% {opacity: 0.1; -webkit-transform:rotate(360deg);} 
-	100% {opacity: 1; -webkit-transform:rotate(720deg);} 
-}       
-/* @end */

+ 0 - 20
vendor/jasmine-1.1.0/MIT.LICENSE

@@ -1,20 +0,0 @@
-Copyright (c) 2008-2011 Pivotal Labs
-
-Permission is hereby granted, free of charge, to any person obtaining
-a copy of this software and associated documentation files (the
-"Software"), to deal in the Software without restriction, including
-without limitation the rights to use, copy, modify, merge, publish,
-distribute, sublicense, and/or sell copies of the Software, and to
-permit persons to whom the Software is furnished to do so, subject to
-the following conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

+ 0 - 190
vendor/jasmine-1.1.0/jasmine-html.js

@@ -1,190 +0,0 @@
-jasmine.TrivialReporter = function(doc) {
-  this.document = doc || document;
-  this.suiteDivs = {};
-  this.logRunningSpecs = false;
-};
-
-jasmine.TrivialReporter.prototype.createDom = function(type, attrs, childrenVarArgs) {
-  var el = document.createElement(type);
-
-  for (var i = 2; i < arguments.length; i++) {
-    var child = arguments[i];
-
-    if (typeof child === 'string') {
-      el.appendChild(document.createTextNode(child));
-    } else {
-      if (child) { el.appendChild(child); }
-    }
-  }
-
-  for (var attr in attrs) {
-    if (attr == "className") {
-      el[attr] = attrs[attr];
-    } else {
-      el.setAttribute(attr, attrs[attr]);
-    }
-  }
-
-  return el;
-};
-
-jasmine.TrivialReporter.prototype.reportRunnerStarting = function(runner) {
-  var showPassed, showSkipped;
-
-  this.outerDiv = this.createDom('div', { className: 'jasmine_reporter' },
-      this.createDom('div', { className: 'banner' },
-        this.createDom('div', { className: 'logo' },
-            this.createDom('span', { className: 'title' }, "Jasmine"),
-            this.createDom('span', { className: 'version' }, runner.env.versionString())),
-        this.createDom('div', { className: 'options' },
-            "Show ",
-            showPassed = this.createDom('input', { id: "__jasmine_TrivialReporter_showPassed__", type: 'checkbox' }),
-            this.createDom('label', { "for": "__jasmine_TrivialReporter_showPassed__" }, " passed "),
-            showSkipped = this.createDom('input', { id: "__jasmine_TrivialReporter_showSkipped__", type: 'checkbox' }),
-            this.createDom('label', { "for": "__jasmine_TrivialReporter_showSkipped__" }, " skipped")
-            )
-          ),
-
-      this.runnerDiv = this.createDom('div', { className: 'runner running' },
-          this.createDom('a', { className: 'run_spec', href: '?' }, "run all"),
-          this.runnerMessageSpan = this.createDom('span', {}, "Running..."),
-          this.finishedAtSpan = this.createDom('span', { className: 'finished-at' }, ""))
-      );
-
-  this.document.body.appendChild(this.outerDiv);
-
-  var suites = runner.suites();
-  for (var i = 0; i < suites.length; i++) {
-    var suite = suites[i];
-    var suiteDiv = this.createDom('div', { className: 'suite' },
-        this.createDom('a', { className: 'run_spec', href: '?spec=' + encodeURIComponent(suite.getFullName()) }, "run"),
-        this.createDom('a', { className: 'description', href: '?spec=' + encodeURIComponent(suite.getFullName()) }, suite.description));
-    this.suiteDivs[suite.id] = suiteDiv;
-    var parentDiv = this.outerDiv;
-    if (suite.parentSuite) {
-      parentDiv = this.suiteDivs[suite.parentSuite.id];
-    }
-    parentDiv.appendChild(suiteDiv);
-  }
-
-  this.startedAt = new Date();
-
-  var self = this;
-  showPassed.onclick = function(evt) {
-    if (showPassed.checked) {
-      self.outerDiv.className += ' show-passed';
-    } else {
-      self.outerDiv.className = self.outerDiv.className.replace(/ show-passed/, '');
-    }
-  };
-
-  showSkipped.onclick = function(evt) {
-    if (showSkipped.checked) {
-      self.outerDiv.className += ' show-skipped';
-    } else {
-      self.outerDiv.className = self.outerDiv.className.replace(/ show-skipped/, '');
-    }
-  };
-};
-
-jasmine.TrivialReporter.prototype.reportRunnerResults = function(runner) {
-  var results = runner.results();
-  var className = (results.failedCount > 0) ? "runner failed" : "runner passed";
-  this.runnerDiv.setAttribute("class", className);
-  //do it twice for IE
-  this.runnerDiv.setAttribute("className", className);
-  var specs = runner.specs();
-  var specCount = 0;
-  for (var i = 0; i < specs.length; i++) {
-    if (this.specFilter(specs[i])) {
-      specCount++;
-    }
-  }
-  var message = "" + specCount + " spec" + (specCount == 1 ? "" : "s" ) + ", " + results.failedCount + " failure" + ((results.failedCount == 1) ? "" : "s");
-  message += " in " + ((new Date().getTime() - this.startedAt.getTime()) / 1000) + "s";
-  this.runnerMessageSpan.replaceChild(this.createDom('a', { className: 'description', href: '?'}, message), this.runnerMessageSpan.firstChild);
-
-  this.finishedAtSpan.appendChild(document.createTextNode("Finished at " + new Date().toString()));
-};
-
-jasmine.TrivialReporter.prototype.reportSuiteResults = function(suite) {
-  var results = suite.results();
-  var status = results.passed() ? 'passed' : 'failed';
-  if (results.totalCount === 0) { // todo: change this to check results.skipped
-    status = 'skipped';
-  }
-  this.suiteDivs[suite.id].className += " " + status;
-};
-
-jasmine.TrivialReporter.prototype.reportSpecStarting = function(spec) {
-  if (this.logRunningSpecs) {
-    this.log('>> Jasmine Running ' + spec.suite.description + ' ' + spec.description + '...');
-  }
-};
-
-jasmine.TrivialReporter.prototype.reportSpecResults = function(spec) {
-  var results = spec.results();
-  var status = results.passed() ? 'passed' : 'failed';
-  if (results.skipped) {
-    status = 'skipped';
-  }
-  var specDiv = this.createDom('div', { className: 'spec '  + status },
-      this.createDom('a', { className: 'run_spec', href: '?spec=' + encodeURIComponent(spec.getFullName()) }, "run"),
-      this.createDom('a', {
-        className: 'description',
-        href: '?spec=' + encodeURIComponent(spec.getFullName()),
-        title: spec.getFullName()
-      }, spec.description));
-
-
-  var resultItems = results.getItems();
-  var messagesDiv = this.createDom('div', { className: 'messages' });
-  for (var i = 0; i < resultItems.length; i++) {
-    var result = resultItems[i];
-
-    if (result.type == 'log') {
-      messagesDiv.appendChild(this.createDom('div', {className: 'resultMessage log'}, result.toString()));
-    } else if (result.type == 'expect' && result.passed && !result.passed()) {
-      messagesDiv.appendChild(this.createDom('div', {className: 'resultMessage fail'}, result.message));
-
-      if (result.trace.stack) {
-        messagesDiv.appendChild(this.createDom('div', {className: 'stackTrace'}, result.trace.stack));
-      }
-    }
-  }
-
-  if (messagesDiv.childNodes.length > 0) {
-    specDiv.appendChild(messagesDiv);
-  }
-
-  this.suiteDivs[spec.suite.id].appendChild(specDiv);
-};
-
-jasmine.TrivialReporter.prototype.log = function() {
-  var console = jasmine.getGlobal().console;
-  if (console && console.log) {
-    if (console.log.apply) {
-      console.log.apply(console, arguments);
-    } else {
-      console.log(arguments); // ie fix: console.log.apply doesn't exist on ie
-    }
-  }
-};
-
-jasmine.TrivialReporter.prototype.getLocation = function() {
-  return this.document.location;
-};
-
-jasmine.TrivialReporter.prototype.specFilter = function(spec) {
-  var paramMap = {};
-  var params = this.getLocation().search.substring(1).split('&');
-  for (var i = 0; i < params.length; i++) {
-    var p = params[i].split('=');
-    paramMap[decodeURIComponent(p[0])] = decodeURIComponent(p[1]);
-  }
-
-  if (!paramMap.spec) {
-    return true;
-  }
-  return spec.getFullName().indexOf(paramMap.spec) === 0;
-};

+ 0 - 166
vendor/jasmine-1.1.0/jasmine.css

@@ -1,166 +0,0 @@
-body {
-  font-family: "Helvetica Neue Light", "Lucida Grande", "Calibri", "Arial", sans-serif;
-}
-
-
-.jasmine_reporter a:visited, .jasmine_reporter a {
-  color: #303; 
-}
-
-.jasmine_reporter a:hover, .jasmine_reporter a:active {
-  color: blue; 
-}
-
-.run_spec {
-  float:right;
-  padding-right: 5px;
-  font-size: .8em;
-  text-decoration: none;
-}
-
-.jasmine_reporter {
-  margin: 0 5px;
-}
-
-.banner {
-  color: #303;
-  background-color: #fef;
-  padding: 5px;
-}
-
-.logo {
-  float: left;
-  font-size: 1.1em;
-  padding-left: 5px;
-}
-
-.logo .version {
-  font-size: .6em;
-  padding-left: 1em;
-}
-
-.runner.running {
-  background-color: yellow;
-}
-
-
-.options {
-  text-align: right;
-  font-size: .8em;
-}
-
-
-
-
-.suite {
-  border: 1px outset gray;
-  margin: 5px 0;
-  padding-left: 1em;
-}
-
-.suite .suite {
-  margin: 5px; 
-}
-
-.suite.passed {
-  background-color: #dfd;
-}
-
-.suite.failed {
-  background-color: #fdd;
-}
-
-.spec {
-  margin: 5px;
-  padding-left: 1em;
-  clear: both;
-}
-
-.spec.failed, .spec.passed, .spec.skipped {
-  padding-bottom: 5px;
-  border: 1px solid gray;
-}
-
-.spec.failed {
-  background-color: #fbb;
-  border-color: red;
-}
-
-.spec.passed {
-  background-color: #bfb;
-  border-color: green;
-}
-
-.spec.skipped {
-  background-color: #bbb;
-}
-
-.messages {
-  border-left: 1px dashed gray;
-  padding-left: 1em;
-  padding-right: 1em;
-}
-
-.passed {
-  background-color: #cfc;
-  display: none;
-}
-
-.failed {
-  background-color: #fbb;
-}
-
-.skipped {
-  color: #777;
-  background-color: #eee;
-  display: none;
-}
-
-
-/*.resultMessage {*/
-  /*white-space: pre;*/
-/*}*/
-
-.resultMessage span.result {
-  display: block;
-  line-height: 2em;
-  color: black;
-}
-
-.resultMessage .mismatch {
-  color: black;
-}
-
-.stackTrace {
-  white-space: pre;
-  font-size: .8em;
-  margin-left: 10px;
-  max-height: 5em;
-  overflow: auto;
-  border: 1px inset red;
-  padding: 1em;
-  background: #eef;
-}
-
-.finished-at {
-  padding-left: 1em;
-  font-size: .6em;
-}
-
-.show-passed .passed,
-.show-skipped .skipped {
-  display: block;
-}
-
-
-#jasmine_content {
-  position:fixed;
-  right: 100%;
-}
-
-.runner {
-  border: 1px solid gray;
-  display: block;
-  margin: 5px 0;
-  padding: 2px 0 2px 10px;
-}

Diff do ficheiro suprimidas por serem muito extensas
+ 0 - 2476
vendor/jasmine-1.1.0/jasmine.js


BIN
vendor/jasmine-1.1.0/jasmine_favicon.png


+ 0 - 131
vendor/node-jasmine-dom/README.md

@@ -1,131 +0,0 @@
-node-jasmine-dom
-================
-
-Run your browser-based [jasmine][1] specs headless with [node.js][2]. Then 
-output in one of many formats such as JSON or JUnit XML (perfect
-for integration with CI servers like [Jenkins][3]).
-
-installation
-------------
-1. you've got [npm][4], right?
-2. Groovy. <code>npm install jasmine-dom</code>, and you're away laughing.
-
-usage
------
-Construct your SpecRunner.html as shown in the jasmine examples,
-then run:
-
-    jasmine-dom --runner path/to/SpecRunner.html
-
-or
-
-    jasmine-dom --config path/to/config.yaml
-
-You can optionally provide the following arguments:
-
- * <code>--help</code>, provides usage information
- * <code>--format simple|nice|json|html|junit</code>, displays the result in the specified format
- * <code>--output path</code>, writes the output to the specified file
- * <code>--server [port]</code>, serves a simple (but effective) page showing the current state
-                                 of the tests. You can also specify an optional <code>--refresh
-                                 intervalInMS</code> argument to specify the wait between running
-                                 the tests (because the server is constantly running 'em).
-
-server
-------
-
-    jasmine-dom --runner examples/runner.html --server 8090 --refresh 3000
-
-will run a server on http://localhost:8090/. Here a simple green or red page will reflect the current state
-of your tests. The tests will run every 3000ms, and the page ajaximatically updates with the result.
-
-If you'd like to see the default jasmine html, visit http://localhost:8090/jasmine. Note, the result is still
-obtained via the nodejs runner (i.e. it wasn't run in your browser).
-
-specifying runners
-------------------
-A single runner file can be provided via the <code>--runner <path_to_runner></code> command. To specify more than one
-runner, use the <code>--config <path_to_config></code> argument and a yaml config file in the format:
-
-```yaml
----
-  test_one:
-    name: This is the name of the first set of tests
-    runner: path/to/runner_1.html
-  test_two:
-    name: This is the name of the second set of tests
-    runner: path/to/another/runner.html
-```
-
-The config file allows you to provide names for your runners. These names will be used when identifying failing tests.
-
-example 1
----------
-    jasmine-dom --runner examples/runner.html
-
-will output:
-
-    Failed.
-
-example 2
----------
-
-    jasmine-dom --runner examples/runner.html --format junit --output javascript_results.xml
-
-will write to javascript_results.xml:
-
-    <testsuite>
-        <testcase classname="/Users/andrew/development/node-jasmine-dom/examples/runner.html.Example_functions_that_update_the_DOM.Should_add_two_numbers" name="expect toEqual 7" time="undefined"/>
-        <testcase classname="/Users/andrew/development/node-jasmine-dom/examples/runner.html.Example_functions.Should_multiply_two_numbers" name="expect toEqual 40" time="undefined"/>
-        <testcase classname="/Users/andrew/development/node-jasmine-dom/examples/runner.html.Example_functions.Should_fail!!" name="expect toEqual 8">
-            <failure>
-                <![CDATA[
-                    FAILURE in spec "Should fail!!": Expected 3 to equal 8.
-                    Error: Expected 3 to equal 8.
-                        at new <anonymous> (/Users/andrew/development/node-jasmine-dom/examples/tests/lib/jasmine.js:94:50)
-                        at [object Object].toEqual (/Users/andrew/development/node-jasmine-dom/examples/tests/lib/jasmine.js:1138:29)
-                        at [object Object].<anonymous> (/Users/andrew/development/node-jasmine-dom/examples/tests/spec/example-functions_spec.js:10:13)
-                        at [object Object].execute (/Users/andrew/development/node-jasmine-dom/examples/tests/lib/jasmine.js:968:15)
-                        at [object Object].next_ (/Users/andrew/development/node-jasmine-dom/examples/tests/lib/jasmine.js:1739:31)
-                        at [object Object].start (/Users/andrew/development/node-jasmine-dom/examples/tests/lib/jasmine.js:1692:8)
-                        at [object Object].execute (/Users/andrew/development/node-jasmine-dom/examples/tests/lib/jasmine.js:2018:14)
-                        at [object Object].next_ (/Users/andrew/development/node-jasmine-dom/examples/tests/lib/jasmine.js:1739:31)
-                        at [object Object].start (/Users/andrew/development/node-jasmine-dom/examples/tests/lib/jasmine.js:1692:8)
-                        at [object Object].execute (/Users/andrew/development/node-jasmine-dom/examples/tests/lib/jasmine.js:2163:14)
-                ]]>
-            </failure>
-        </testcase>
-    </testsuite>
-
-example 3
----------
-
-    jasmine-dom --config ./examples/config.yaml --format nice
-
-with ./examples/config.yaml:
-
-    ---
-      test_one:
-        name: Example test one
-        runner: ./runner.html
-      test_two:
-        name: Example test two
-        runner: ./runner2.html
-
-will output:
-
-    Failed: 
-     - In Example test two >> Example functions (some more) >> Should fail!! :: Expected false to be truthy.
-     - In Example test one >> Example functions >> Should fail!! :: Expected 3 to equal 8.
-
-have you seen **[jasmine-node][5]**?
-------------------------------------
-It's provided a lot of inspiration for this project, and may be just what
-you're looking for. If you're not reliant on a DOM, then it's worth checking
-out.
-
-[1]: http://pivotal.github.com/jasmine/
-[2]: http://nodejs.org/
-[3]: http://jenkins-ci.org/
-[4]: http://npmjs.org/
-[5]: https://github.com/mhevery/jasmine-node

+ 0 - 186
vendor/node-jasmine-dom/bin/jasmine-dom

@@ -1,186 +0,0 @@
-#!/usr/bin/env node
-
-function getArguments(args){
-	var unprocessed = args,
-		processed = {}, 
-		key = "", 
-		value = "";
-
-	for(var i = 0; i < unprocessed.length; i++){
-		var arg = unprocessed[i];
-		if(arg.substr(0,2) == "--"){
-			if(key){
-				processed[key] = value;
-				key = "";
-				value = "";
-			}
-			key = arg.substr(2);
-		} else {
-			if(key) value += (value?" ":"") + arg;
-		}
-	};
-
-	if(key){
-		processed[key] = value;
-		key = "";
-		value = "";
-	};
-
-	return processed;
-};
-
-var arguments = getArguments(process.argv);
-var options = {
-	format: arguments.format || "default",
-	output: arguments.output || null,
-	debug: "debug" in arguments,
-	runner: arguments.runner,
-	server: "server" in arguments,
-	port: arguments.server,
-	help: "help" in arguments,
-	refreshInterval: arguments.refresh,
-	config: arguments.config
-};
-
-function _getAbsolutePath(file, base){
-	var path;
-	var base = base || process.cwd();
-	if (file.substring(0,1) == "/"){
-		path = file;
-	} else {
-		path = base + '/' + file;
-	}
-	return require('path').normalize(path);
-};
-
-function _getUsage(){
-	return "Usage: node run.js --runner <path> | --config <path> [--format simple|nice|json|html|junit] [--output <path>] [--server [port] [--refresh <ms interval>]] [--help]\n\n" +
-	       "For more information, visit https://github.com/andrewpmckenzie/node-jasmine-dom";
-};
-
-function _formatNice(obj){
-	if(obj.failed == 0){
-		return "Passed";
-	} else {
-		var message = "Failed: \n";
-		for( var k in obj.failureDetails ){
-			var details = obj.failureDetails[k];
-			message += " - In " + details.group + " >> " + details.suite + " >> " + details.spec + " :: " + details.message + "\n";
-		}
-		return message;
-	}
-};
-
-function _format(report){
-	var result = '';
-
-	switch(options.format){
-		case 'simple':
-		case 'default':
-			result = report.simple.status;
-			break;
-		case 'json':
-			result = JSON.stringify(report.simple);
-			break;
-		case 'nice':
-			result = _formatNice(report.simple);
-			break;
-		case 'html':
-			result = report.html;
-			break;
-		case 'junit':
-			result = report.junit;
-			break;
-		default:
-			console.error("Unknown format:" + options.format);
-			process.exit(0);
-			break;
-	};
-
-	return result;
-};
-
-function _output(text){
-	if(options.output){
-		var file = _getAbsolutePath(options.output);
-		require('fs').writeFile(file,text,function(err){
-			if(err) console.log("Something went wrong writing the report to disk: ",err);
-		});
-	} else if(options.server) {
-	    return;
-	} else {
-		console.log(text);
-	}
-};
-
-function _processReport(report){
-	var text = _format(report);
-	_output(text);
-};
-
-function _parseConfig(config){
-	var fs = require('fs'),
-		path = require('path');
-
-	var configPath = _getAbsolutePath(config);
-	var configBase = path.normalize(path.dirname(configPath));
-
-	var file = fs.readFileSync(config,'utf8');
-
-	var runnerConfig = [];
-	try {
-		var yaml = require('yaml').eval(file);
-
-		for(var k in yaml){
-			var runner = yaml[k];
-			if("runner" in runner){
-				runnerConfig.push({
-					name: runner.name,
-					runner: _getAbsolutePath(runner.runner, configBase)
-				});
-			}
-		};
-
-		if(runnerConfig.length == 0) throw "No runners specified in config. See examples/config.yaml for format.";
-
-	} catch (e) {
-		console.log("Invalid config file.\n\n");
-		console.error(e);
-		process.exit(1);
-	}
-
-	return runnerConfig;
-};
-
-function validate(options){
-	if (options.help){
-		console.log(_getUsage());
-		process.exit(0);
-	}
-	if (! options.runner && ! options.config) {
-		console.error("You need to specify a html --runner file.\n");
-		console.log(_getUsage());
-		process.exit(0);
-	}
-};
-
-function getRunners(runner, config){
-	if(config){
-		return _parseConfig(config);
-	} else {
-		return [ _getAbsolutePath(runner) ];
-	}
-};
-
-validate(options);
-
-require('../lib/jasmine-dom').run({
-	runners: getRunners(options.runner, options.config),
-	serve: options.server,
-	port: options.port,
-	refreshInterval: options.refreshInterval,
-	debug: options.debug,
-	onDone: function(report){
-		_processReport(report);
-	}
-});

+ 0 - 7
vendor/node-jasmine-dom/examples/config.yaml

@@ -1,7 +0,0 @@
----
-  test_one:
-    name: Example test one
-    runner: ./runner.html
-  test_two:
-    name: Example test two
-    runner: ./runner2.html

+ 0 - 36
vendor/node-jasmine-dom/examples/runner.html

@@ -1,36 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-  "http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-	<title>Jasmine Test Runner</title>
-	<link rel="stylesheet" type="text/css" href="tests/lib/jasmine.css">
-	<script src="tests/lib/jasmine.js"></script>
-	<script src="tests/lib/jasmine-html.js"></script>
-
-	<!-- include helper files here... -->
-	<script src="tests/helper/jquery.js"></script>
-
-	<!-- include source files here... -->
-	<script src="src/example-dom.js"></script>
-	<script src="src/example-functions.js"></script>
-
-	<!-- include spec files here... -->
-	<script src="tests/spec/example-dom_spec.js"></script>
-	<script src="tests/spec/example-functions_spec.js"></script>
-
-</head>
-<body>
-
-	<div id="add_test_one">
-		<span id="add_test_one_x">5</span>
-		<span id="add_test_one_y">2</span>
-		<span id="add_test_one_result">X</span>
-	</div>
-
-<script type="text/javascript">
-  jasmine.getEnv().addReporter(new jasmine.TrivialReporter());
-  jasmine.getEnv().execute();
-</script>
-
-</body>
-</html>

+ 0 - 28
vendor/node-jasmine-dom/examples/runner2.html

@@ -1,28 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-  "http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-	<title>Jasmine Test Runner</title>
-	<link rel="stylesheet" type="text/css" href="tests/lib/jasmine.css">
-	<script src="tests/lib/jasmine.js"></script>
-	<script src="tests/lib/jasmine-html.js"></script>
-
-	<!-- include helper files here... -->
-	<script src="tests/helper/jquery.js"></script>
-
-	<!-- include source files here... -->
-	<script src="src/example-functions-2.js"></script>
-
-	<!-- include spec files here... -->
-	<script src="tests/spec/example-functions-2_spec.js"></script>
-
-</head>
-<body>
-
-<script type="text/javascript">
-  jasmine.getEnv().addReporter(new jasmine.TrivialReporter());
-  jasmine.getEnv().execute();
-</script>
-
-</body>
-</html>

+ 0 - 7
vendor/node-jasmine-dom/examples/src/example-dom.js

@@ -1,7 +0,0 @@
-if(! window.EXAMPLES) window.EXAMPLES = {};
-
-EXAMPLES.domAdd = function(xId,yId,resultId){
-	var x = document.getElementById('add_test_one_x').innerHTML;
-	var y = document.getElementById('add_test_one_y').innerHTML;
-	document.getElementById('add_test_one_result').innerHTML = (+x) + (+y);
-};

+ 0 - 5
vendor/node-jasmine-dom/examples/src/example-functions-2.js

@@ -1,5 +0,0 @@
-if(! window.EXAMPLES) window.EXAMPLES = {};
-
-EXAMPLES.divide = function(x,y){
-	return x/y;
-}

+ 0 - 5
vendor/node-jasmine-dom/examples/src/example-functions.js

@@ -1,5 +0,0 @@
-if(! window.EXAMPLES) window.EXAMPLES = {};
-
-EXAMPLES.multiply = function(x,y){
-	return x*y;
-}

Diff do ficheiro suprimidas por serem muito extensas
+ 0 - 18
vendor/node-jasmine-dom/examples/tests/helper/jquery.js


+ 0 - 183
vendor/node-jasmine-dom/examples/tests/lib/jasmine-html.js

@@ -1,183 +0,0 @@
-// NOTE: contains modifications for jasmine-dom
-
-jasmine.TrivialReporter = function(doc) {
-  this.document = doc || document;
-  this.suiteDivs = {};
-  this.logRunningSpecs = false;
-};
-
-jasmine.TrivialReporter.prototype.createDom = function(type, attrs, childrenVarArgs) {
-  var el = document.createElement(type);
-
-  for (var i = 2; i < arguments.length; i++) {
-    var child = arguments[i];
-
-    if (typeof child === 'string') {
-      el.appendChild(document.createTextNode(child));
-    } else {
-      if (child) { el.appendChild(child); }
-    }
-  }
-
-  for (var attr in attrs) {
-    if (attr == "className") {
-      el[attr] = attrs[attr];
-    } else {
-      el.setAttribute(attr, attrs[attr]);
-    }
-  }
-
-  return el;
-};
-
-jasmine.TrivialReporter.prototype.reportRunnerStarting = function(runner) {
-  var showPassed, showSkipped;
-
-  this.outerDiv = this.createDom('div', { className: 'jasmine_reporter' },
-      this.createDom('div', { className: 'banner' },
-        this.createDom('div', { className: 'logo' },
-            this.createDom('a', { href: 'http://pivotal.github.com/jasmine/', target: "_blank" }, "Jasmine"),
-            this.createDom('span', { className: 'version' }, runner.env.versionString())),
-        this.createDom('div', { className: 'options' },
-            "Show ",
-            showPassed = this.createDom('input', { id: "__jasmine_TrivialReporter_showPassed__", type: 'checkbox' }),
-            this.createDom('label', { "for": "__jasmine_TrivialReporter_showPassed__" }, " passed "),
-            showSkipped = this.createDom('input', { id: "__jasmine_TrivialReporter_showSkipped__", type: 'checkbox' }),
-            this.createDom('label', { "for": "__jasmine_TrivialReporter_showSkipped__" }, " skipped")
-            )
-          ),
-
-      this.runnerDiv = this.createDom('div', { className: 'runner running' },
-          this.createDom('span', { className: 'run_spec', href: '?' }, "run all"),
-          this.runnerMessageSpan = this.createDom('span', {}, "Running..."),
-          this.finishedAtSpan = this.createDom('span', { className: 'finished-at' }, ""))
-      );
-
-  this.document.body.appendChild(this.outerDiv);
-
-  var suites = runner.suites();
-  for (var i = 0; i < suites.length; i++) {
-    var suite = suites[i];
-    var suiteDiv = this.createDom('div', { className: 'suite' },
-        this.createDom('span', { className: 'run_spec', href: '?spec=' + encodeURIComponent(suite.getFullName()) }, "run"),
-        this.createDom('span', { className: 'description', href: '?spec=' + encodeURIComponent(suite.getFullName()) }, suite.description));
-    this.suiteDivs[suite.id] = suiteDiv;
-    var parentDiv = this.outerDiv;
-    if (suite.parentSuite) {
-      parentDiv = this.suiteDivs[suite.parentSuite.id];
-    }
-    parentDiv.appendChild(suiteDiv);
-  }
-
-  this.startedAt = new Date();
-
-  var self = this;
-  showPassed.onclick = function(evt) {
-    if (showPassed.checked) {
-      self.outerDiv.className += ' show-passed';
-    } else {
-      self.outerDiv.className = self.outerDiv.className.replace(/ show-passed/, '');
-    }
-  };
-
-  showSkipped.onclick = function(evt) {
-    if (showSkipped.checked) {
-      self.outerDiv.className += ' show-skipped';
-    } else {
-      self.outerDiv.className = self.outerDiv.className.replace(/ show-skipped/, '');
-    }
-  };
-};
-
-jasmine.TrivialReporter.prototype.reportRunnerResults = function(runner) {
-  var results = runner.results();
-  var className = (results.failedCount > 0) ? "runner failed" : "runner passed";
-  this.runnerDiv.setAttribute("class", className);
-  //do it twice for IE
-  this.runnerDiv.setAttribute("className", className);
-  var specs = runner.specs();
-  var specCount = 0;
-  for (var i = 0; i < specs.length; i++) {
-    if (this.specFilter(specs[i])) {
-      specCount++;
-    }
-  }
-  var message = "" + specCount + " spec" + (specCount == 1 ? "" : "s" ) + ", " + results.failedCount + " failure" + ((results.failedCount == 1) ? "" : "s");
-  message += " in " + ((new Date().getTime() - this.startedAt.getTime()) / 1000) + "s";
-  this.runnerMessageSpan.replaceChild(this.createDom('span', { className: 'description', href: '?'}, message), this.runnerMessageSpan.firstChild);
-
-  this.finishedAtSpan.appendChild(document.createTextNode("Finished at " + new Date().toString()));
-};
-
-jasmine.TrivialReporter.prototype.reportSuiteResults = function(suite) {
-  var results = suite.results();
-  var status = results.passed() ? 'passed' : 'failed';
-  if (results.totalCount == 0) { // todo: change this to check results.skipped
-    status = 'skipped';
-  }
-  this.suiteDivs[suite.id].className += " " + status;
-};
-
-jasmine.TrivialReporter.prototype.reportSpecStarting = function(spec) {
-  if (this.logRunningSpecs) {
-    this.log('>> Jasmine Running ' + spec.suite.description + ' ' + spec.description + '...');
-  }
-};
-
-jasmine.TrivialReporter.prototype.reportSpecResults = function(spec) {
-  var results = spec.results();
-  var status = results.passed() ? 'passed' : 'failed';
-  if (results.skipped) {
-    status = 'skipped';
-  }
-  var specDiv = this.createDom('div', { className: 'spec '  + status },
-      this.createDom('span', { className: 'run_spec', href: '?spec=' + encodeURIComponent(spec.getFullName()) }, "run"),
-      this.createDom('span', {
-        className: 'description',
-        href: '?spec=' + encodeURIComponent(spec.getFullName()),
-        title: spec.getFullName()
-      }, spec.description));
-
-
-  var resultItems = results.getItems();
-  var messagesDiv = this.createDom('div', { className: 'messages' });
-  for (var i = 0; i < resultItems.length; i++) {
-    var result = resultItems[i];
-
-    if (result.type == 'log') {
-      messagesDiv.appendChild(this.createDom('div', {className: 'resultMessage log'}, result.toString()));
-    } else if (result.type == 'expect' && result.passed && !result.passed()) {
-      messagesDiv.appendChild(this.createDom('div', {className: 'resultMessage fail'}, result.message));
-
-      if (result.trace.stack) {
-        messagesDiv.appendChild(this.createDom('div', {className: 'stackTrace'}, result.trace.stack));
-      }
-    }
-  }
-
-  if (messagesDiv.childNodes.length > 0) {
-    specDiv.appendChild(messagesDiv);
-  }
-
-  this.suiteDivs[spec.suite.id].appendChild(specDiv);
-};
-
-jasmine.TrivialReporter.prototype.log = function() {
-  var console = jasmine.getGlobal().console;
-  if (console && console.log) {
-    if (console.log.apply) {
-      console.log.apply(console, arguments);
-    } else {
-      console.log(arguments); // ie fix: console.log.apply doesn't exist on ie
-    }
-  }
-};
-
-jasmine.TrivialReporter.prototype.getLocation = function() {
-  return this.document.location;
-};
-
-jasmine.TrivialReporter.prototype.specFilter = function(spec) {
-
-  return true;
-};

+ 0 - 167
vendor/node-jasmine-dom/examples/tests/lib/jasmine.css

@@ -1,167 +0,0 @@
-body {
-  font-family: "Helvetica Neue Light", "Lucida Grande", "Calibri", "Arial", sans-serif;
-}
-
-
-.jasmine_reporter a:visited, .jasmine_reporter a {
-  color: #303; 
-}
-
-.jasmine_reporter a:hover, .jasmine_reporter a:active {
-  color: blue; 
-}
-
-.run_spec {
-  float:right;
-  padding-right: 5px;
-  font-size: .8em;
-  text-decoration: none;
-}
-
-.jasmine_reporter {
-  margin: 0 5px;
-}
-
-.banner {
-  color: #303;
-  background-color: #fef;
-  padding: 5px;
-}
-
-.logo {
-  float: left;
-  font-size: 1.1em;
-  padding-left: 5px;
-}
-
-.logo .version {
-  font-size: .6em;
-  padding-left: 1em;
-}
-
-.runner.running {
-  background-color: yellow;
-}
-
-
-.options {
-  visibility:hidden;
-  text-align: right;
-  font-size: .8em;
-}
-
-
-
-
-.suite {
-  border: 1px outset gray;
-  margin: 5px 0;
-  padding-left: 1em;
-}
-
-.suite .suite {
-  margin: 5px; 
-}
-
-.suite.passed {
-  background-color: #dfd;
-}
-
-.suite.failed {
-  background-color: #fdd;
-}
-
-.spec {
-  margin: 5px;
-  padding-left: 1em;
-  clear: both;
-}
-
-.spec.failed, .spec.passed, .spec.skipped {
-  padding-bottom: 5px;
-  border: 1px solid gray;
-}
-
-.spec.failed {
-  background-color: #fbb;
-  border-color: red;
-}
-
-.spec.passed {
-  background-color: #bfb;
-  border-color: green;
-}
-
-.spec.skipped {
-  background-color: #bbb;
-}
-
-.messages {
-  border-left: 1px dashed gray;
-  padding-left: 1em;
-  padding-right: 1em;
-}
-
-.passed {
-  background-color: #cfc;
-  display: none;
-}
-
-.failed {
-  background-color: #fbb;
-}
-
-.skipped {
-  color: #777;
-  background-color: #eee;
-  display: none;
-}
-
-
-/*.resultMessage {*/
-  /*white-space: pre;*/
-/*}*/
-
-.resultMessage span.result {
-  display: block;
-  line-height: 2em;
-  color: black;
-}
-
-.resultMessage .mismatch {
-  color: black;
-}
-
-.stackTrace {
-  white-space: pre;
-  font-size: .8em;
-  margin-left: 10px;
-  max-height: 5em;
-  overflow: auto;
-  border: 1px inset red;
-  padding: 1em;
-  background: #eef;
-}
-
-.finished-at {
-  padding-left: 1em;
-  font-size: .6em;
-}
-
-.show-passed .passed,
-.show-skipped .skipped {
-  display: block;
-}
-
-
-#jasmine_content {
-  position:fixed;
-  right: 100%;
-}
-
-.runner {
-  border: 1px solid gray;
-  display: block;
-  margin: 5px 0;
-  padding: 2px 0 2px 10px;
-}

Diff do ficheiro suprimidas por serem muito extensas
+ 0 - 2421
vendor/node-jasmine-dom/examples/tests/lib/jasmine.js


+ 0 - 9
vendor/node-jasmine-dom/examples/tests/spec/example-dom_spec.js

@@ -1,9 +0,0 @@
-describe("Example functions that update the DOM", function(){
-	it("Should add two numbers", function(){
-
-		EXAMPLES.domAdd('add_test_one_x', 'add_test_one_y', 'add_test_one_result');
-		var result = jQuery('#add_test_one_result').html();
-
-		expect(result).toEqual('7');
-	});
-});

+ 0 - 12
vendor/node-jasmine-dom/examples/tests/spec/example-functions-2_spec.js

@@ -1,12 +0,0 @@
-describe("Example functions (some more)", function(){
-	it("Should divide two numbers", function(){
-		var result = EXAMPLES.divide(8,2);
-
-		expect(result).toEqual(4);
-
-	});
-
-	it("Should fail!!", function(){
-		expect(false).toBeTruthy();
-	});
-});

+ 0 - 12
vendor/node-jasmine-dom/examples/tests/spec/example-functions_spec.js

@@ -1,12 +0,0 @@
-describe("Example functions", function(){
-	it("Should multiply two numbers", function(){
-		var result = EXAMPLES.multiply(5,8);
-
-		expect(result).toEqual(40);
-
-	});
-
-	it("Should fail!!", function(){
-		expect(3).toEqual(8);
-	});
-});

+ 0 - 174
vendor/node-jasmine-dom/lib/jasmine-dom/index.js

@@ -1,174 +0,0 @@
-var fs = require('fs'), 
-	path = require('path');
-
-function JasmineRunner(options, callback){
-
-	var doServer = options.serve,
-		port = options.port || 8081,
-		refreshInterval = options.refreshInterval || 2000,
-		runners = options.runners || null,
-		that = this;
-
-	this.isRunningTests = false;
-	this.isTestRunQueued = false;
-
-	this.reporter = this._setupReporter(function(){
-
-		callback();
-
-	}); // async
-
-	if(doServer){
-		this.server = that._setupServer({
-						port: port, 
-						reporter: this.reporter,
-						refreshInterval: refreshInterval
-					});
-
-	};
-
-	if(runners){
-		this.tests = this._setupRunners({
-						runners: runners, 
-						jasmineReporter: this.reporter.getJasmineReporter(),
-					});
-	} else {
-		console.error("I don't have any tests to run!");
-		process.exit(1);
-	}
-};
-
-JasmineRunner.prototype._setupReporter = function(callback){
-	console.debug("Setting up reporter");
-
-	var reporter = require('./reporter-agregator.js').create({
-			onDone: function(){ 
-					console.debug("Reporter created.");
-					callback();
-			}
-	});
-
-	return reporter;
-
-};
-
-JasmineRunner.prototype._setupServer = function(options){
-	console.debug("Setting up server");
-	var that = this,
-		server = require('./server.js');
-
-	server.start(options.port, function(){
-		callback(server);
-	});
-
-	options.reporter.onUpdate(function(report){
-		server.updateHtml(report.html);
-		server.updateJson(report.simple);
-
-		console.debug("Tests will run again in " + (options.refreshInterval/1000) + " seconds.");
-		setTimeout(function(){
-			that.runTests();
-		}, options.refreshInterval);
-	});
-
-	return server;
-};
-
-JasmineRunner.prototype._setupRunners = function(options,callback){
-	console.debug("Setting up tests.");
-
-	var tests = [];
-	var runners = options.runners || [],
-		jasmineReporter = options.jasmineReporter;
-
-	for(var k in runners){
-		var runner = runners[k];
-		console.debug('Creating test based on ' + runner);
-
-		var test = require('./runner-from-html.js').create({
-			runner: runner,
-			jasmineReporter: jasmineReporter
-		});
-		tests.push(test);
-	}
-
-	console.debug("Finished creating tests ( based on " +tests.length + " runner/s).");
-
-	return tests;
-};
-
-JasmineRunner.prototype.runTests = function(callback){
-
-	var that = this;
-
-	// We have to maintain synchronisity, otherwise things
-	// get hectic.
-	if(this.isRunningTests) {
-		// DANGER: if more than one call to runTests is made when
-		// tests are running, only the last callback will ever be
-		// triggered.
-		this.isTestRunQueued = true;
-		this.queuedCallback = callback;
-		console.debug("Cannot run tests concurrently. Queued another run.");
-		return;
-	};
-	var whenAllTestsHaveRun = function(){
-		console.debug("Finished running tests.");
-
-		if(callback) callback(that.reporter.getReport());
-		that.reporter.reset();
-
-		that.isRunningTests = false;
-		if(that.isTestRunQueued){
-			that.isTestRunQueued = false;
-			that.runTests(that.queuedCallback);
-			that.queuedCallback = false;
-		}
-	};
-
-	console.debug("Running tests.");
-	this.isRunningTests = true;
-
-	var queue = [],
-		tests = this.tests;
-	for(var i = 0; i < tests.length; i++) queue.push(tests[i]);
-
-	// !! Is recursive
-	var runNextTest = function(){
-		if(queue.length == 0){
-			whenAllTestsHaveRun();
-			return;
-		} 
-
-		var test = queue.pop();
-		console.debug("Running " + test.name);
-		test.run(function(){
-			console.debug("Finished running " + test.name);
-			runNextTest();
-		});
-	};
-
-	runNextTest();
-};
-
-exports.run = function(options, callback){
-	var onDone = options.onDone || function(){},
-		debug = options.debug;
-
-	console.debug = debug ? function(msg){ console.log(msg); } : function(msg){};
-
-	process.on('uncaughtException', function(err){
-		if(debug){
-			console.debug("An uncaught error occured!");
-			console.error(err.message + "\n",err.stack);
-		} else {
-			console.error("An error occurred while running the tests. Use the --debug switch to find out more.")
-			exit(1);
-		}
-	});
-
-	var runner = new JasmineRunner(options, function(){
-		runner.runTests(onDone);
-		callback( runner );
-	});
-};

+ 0 - 110
vendor/node-jasmine-dom/lib/jasmine-dom/reporter-agregator.js

@@ -1,110 +0,0 @@
-var path = require('path');
-var cp = function(o){ if(typeof o != 'object') return o; var n = {}; for(var k in o) n[k] = o[k]; return n; };
-
-function Reporter(options){
-
-	var onDone = options.onDone || function(){};
-
-	/**
-	 * A reporter should implement the jasmine reporter interface
-	 * as well as the following properties:
-	 * - {string} format         e.g. 'html'
-	 * - {function} getReport()
-	 * - {function} updateReport()
-	 * - {function} reset()
-	 */
-	this._updateListeners = [];
-
-	this.report = {};
-	this._jasmineReporters = {};
-	this._jasmineReporters['simpleReporter'] = require('./reporter-simple').create();
-	this._jasmineReporters['junitReporter'] = require('./reporter-junit').create();
-	this._jasmineReporters['htmlReporter'] = require('./reporter-html').create({
-		jasminePath: path.normalize(__dirname+'/resources/jasmine.js'),
-		jasmineHtmlPath: path.normalize(__dirname+'/resources/jasmine-html.js'),
-		skeletonPath: path.normalize(__dirname+'/resources/skeleton.html')
-	}, onDone);
-}
-
-Reporter.prototype._updateReport = function(){
-	// tell reporters to update themselves
-	for(var k in this._jasmineReporters){
-		var reporter = this._jasmineReporters[k];
-		reporter.updateReport();
-		this.report[reporter.format] = reporter.getReport();
-	}
-
-	for(var i = 0; i < this._updateListeners.length; i++){
-		this._updateListeners[i]( cp(this.report) );
-	}
-};
-
-Reporter.prototype.getJasmineReporter = function(){
-	var that = this;
-	return {
-		log : function(str){
-			for(var k in that._jasmineReporters){
-				var reporter = that._jasmineReporters[k];
-				if(reporter.log) reporter.log(str);
-			}
-		},
-		reportSpecStarting : function(runner) {
-			for(var k in that._jasmineReporters){
-				var reporter = that._jasmineReporters[k];
-				if(reporter.reportSpecStarting) reporter.reportSpecStarting(runner);
-			}
-		},
-		reportRunnerStarting : function(runner) { 
-			for(var k in that._jasmineReporters){
-				var reporter = that._jasmineReporters[k];
-				if(reporter.reportRunnerStarting) reporter.reportRunnerStarting(runner);
-			}
-		},
-		reportSuiteResults : function(suite) { 
-			for(var k in that._jasmineReporters){
-				var reporter = that._jasmineReporters[k];
-				if(reporter.reportSuiteResults) reporter.reportSuiteResults(suite);
-			}
-		},
-		reportSpecResults : function(spec) { 
-			for(var k in that._jasmineReporters){
-				var reporter = that._jasmineReporters[k];
-				if(reporter.reportSpecResults) reporter.reportSpecResults(spec);
-			}
-		},
-		reportRunnerResults : function(runner) {
-			for(var k in that._jasmineReporters){
-				var reporter = that._jasmineReporters[k];
-				if(reporter.reportRunnerResults) reporter.reportRunnerResults(runner);
-			}
-			that._updateReport();
-		},
-		reportStartingGroup : function(name){
-			for(var k in that._jasmineReporters){
-				var reporter = that._jasmineReporters[k];
-				if(reporter.reportStartingGroup) reporter.reportStartingGroup(name);
-			}
-		}
-	};
-};
-
-Reporter.prototype.onUpdate = function(callback){
-	this._updateListeners.push(callback);
-};
-
-Reporter.prototype.getReport = function(){
-	return this.report;
-};
-
-Reporter.prototype.reset = function(){
-	
-	for(var k in this._jasmineReporters){
-		var reporter = this._jasmineReporters[k];
-		reporter.reset();
-	}
-}
-
-exports.create = function(options){ 
-	var reporter = new Reporter(options);
-	return reporter;
-};

+ 0 - 45
vendor/node-jasmine-dom/lib/jasmine-dom/reporter-html.js

@@ -1,45 +0,0 @@
-function HtmlReporter(options, callback){
-	console.debug('Creating HtmlReporter');
-
-	this.format = 'html';
-	this._report = '';
-	this._window = {};
-
-	var jasmine = options.jasminePath,
-		jasmineHtml = options.jasmineHtmlPath,
-		skeleton = options.skeletonPath,
-		that = this;
-
-	console.debug('Constructing HtmlReporter DOM');
-	require('jsdom').env({
-		html: skeleton,
-		scripts: [ jasmine, jasmineHtml ],
-		done: function(errors,window){
-			if(errors) console.error('Error construction DOM for html reporter: ',errors);
-
-			console.debug('Creating TrivialReporter instance.');
-			var trivialReporter = new window.jasmine.TrivialReporter();
-
-			console.debug('Transferring TrivialReporter methods to HtmlReporter object');
-			for(var k in trivialReporter) that[k] = trivialReporter[k];
-
-			that._window = window;
-
-			console.debug('Done creating HtmlReporter');
-			callback(that);
-		}
-	});
-};
-HtmlReporter.prototype.updateReport = function(){
-	this._report = this._window.document.outerHTML;
-};
-HtmlReporter.prototype.getReport = function(){
-	return this._report;
-};
-HtmlReporter.prototype.reset = function(){
-	this._window.document.body.innerHTML = ''; // clear for next report
-};
-
-exports.create = function(options,callback){
-	return new HtmlReporter(options,callback);
-};

+ 0 - 72
vendor/node-jasmine-dom/lib/jasmine-dom/reporter-junit.js

@@ -1,72 +0,0 @@
-function JunitXmlReporter(opt){
-	console.debug('Creating JunitXmlReporter');
-
-	var that = this;
-
-	this.format = 'junit';
-	this.report = '';
-
-	this.xml = '';
-	this.currentSetData = '';
-	this.currentGroupName = '';
-
-};
-
-JunitXmlReporter.prototype.getReport = function(){
-	return this.report;
-};
-
-JunitXmlReporter.prototype.reportSpecResults = function(spec){
-	var s = function(s){
-		return s.replace(/\s/gi, '_');
-	};
-	var e = function(s){
-	    return s.replace(/\</gi, '&lt;').replace(/\>/gi, '&gt;').replace(/"/gi, "'");
-	}
-	
-	var specName = s(this.currentGroupName) + "." + s(spec.suite.description) + "." + s(spec.description);
-	
-	var results = spec.results().getItems();
-	for(var k in results){
-		var result = results[k];
-		var name = result.type + " " + result.matcherName + " " + (result.expected ? result.expected : "");
-		name = e(name);
-		specName = e(specName);
-		if(result.passed()){
-			this.xml += '<testcase classname="'+specName+'" name="'+name+'" time="'+result.time+'"/>';
-		} else {
-			this.xml += '<testcase classname="'+specName+'" name="'+name+'">';
-			this.xml += 	'<failure><![CDATA[';
-			this.xml += 		'FAILURE in spec "' + spec.description + '": ';
-			this.xml += 		result.message + "\n\n\n\n" + result.trace.stack;
-			this.xml += 	']]></failure>';
-			this.xml += '</testcase>';
-		}
-	}
-};
-
-JunitXmlReporter.prototype.reportSuiteResults = function(suite){
-	
-};
-
-JunitXmlReporter.prototype.reportRunnerResults = function(runner){
-	
-};
-
-JunitXmlReporter.prototype.reportStartingGroup = function(name){
-	this.currentGroupName = name;
-};
-
-JunitXmlReporter.prototype.updateReport = function(){
-	this.report = "<testsuite>"+this.xml+"</testsuite>";
-};
-
-JunitXmlReporter.prototype.reset = function(){
-	this.results = [];
-};
-
-
-
-exports.create = function(opt){
-	return new JunitXmlReporter(opt);
-}

+ 0 - 91
vendor/node-jasmine-dom/lib/jasmine-dom/reporter-simple.js

@@ -1,91 +0,0 @@
-var cp = function(o){ if(typeof o != 'object') return o; var n = {}; for(var k in o) n[k] = o[k]; return n; };
-
-function SimpleReporter(opt){
-	console.debug('Creating SimpleReporter');
-
-	var that = this;
-
-	this.format = 'simple';
-	this._report = {};
-
-	this.results = [];
-	this.currentSet = 0;
-
-};
-
-SimpleReporter.prototype.getReport = function(){
-	return cp(this._report);
-};
-
-SimpleReporter.prototype.reportStartingGroup = function(name){
-	this.results[this.currentSet] = this.results[this.currentSet] || {};
-	this.results[this.currentSet].name = name;
-}
-
-SimpleReporter.prototype.reportSpecResults = function(spec){
-
-	var items = spec.results().getItems();
-	for (var i = 0; i < items.length; i++){
-		if( ! items[i].passed_){
-			this.results[this.currentSet] = this.results[this.currentSet] || {};
-			this.results[this.currentSet].failures = this.results[this.currentSet].failures || [];
-
-			var failureReport = items[i];
-			failureReport.suite = spec.suite.description;
-			failureReport.spec = spec.description;
-			failureReport.group = this.results[this.currentSet].name;
-			this.results[this.currentSet].failures.push(failureReport);
-		}
-	}
-}
-
-SimpleReporter.prototype.reportRunnerResults = function(runner){
-	var results = runner.results();
-
-	this.results[this.currentSet] = this.results[this.currentSet] || {};
-	this.results[this.currentSet].passed = results.passedCount;
-	this.results[this.currentSet].failed = results.failedCount;
-	this.results[this.currentSet].total = results.totalCount;
-	this.currentSet++;
-}
-
-SimpleReporter.prototype.updateReport = function(){
-	var totalPassed = 0,
-		totalFailed = 0,
-		totalTests = 0,
-		totalSuites = 0,
-		failureDetails = [];
-
-	for(var k in this.results){
-		var result = this.results[k];
-		totalPassed += result.passed;
-		totalFailed += result.failed;
-		totalTests += result.total;
-		totalSuites++;
-		if(result.failures){
-			for(var j = 0; j < result.failures.length; j++){
-				failureDetails.push(result.failures[j]);
-			}
-		}
-	}
-
-	this._report = {
-		details: cp(this.results),
-		passed: totalPassed,
-		failed: totalFailed,
-		total: totalTests,
-		suites: totalSuites,
-		failureDetails: cp(failureDetails),
-		status: (totalFailed == 0) ? "Passed" : "Failed"
-	};
-};
-
-SimpleReporter.prototype.reset = function(){
-	this.results = [];
-};
-
-
-
-exports.create = function(opt){
-	return new SimpleReporter(opt);
-}

+ 0 - 183
vendor/node-jasmine-dom/lib/jasmine-dom/resources/jasmine-html.js

@@ -1,183 +0,0 @@
-// NOTE: contains modifications for jasmine-dom
-
-jasmine.TrivialReporter = function(doc) {
-  this.document = doc || document;
-  this.suiteDivs = {};
-  this.logRunningSpecs = false;
-};
-
-jasmine.TrivialReporter.prototype.createDom = function(type, attrs, childrenVarArgs) {
-  var el = document.createElement(type);
-
-  for (var i = 2; i < arguments.length; i++) {
-    var child = arguments[i];
-
-    if (typeof child === 'string') {
-      el.appendChild(document.createTextNode(child));
-    } else {
-      if (child) { el.appendChild(child); }
-    }
-  }
-
-  for (var attr in attrs) {
-    if (attr == "className") {
-      el[attr] = attrs[attr];
-    } else {
-      el.setAttribute(attr, attrs[attr]);
-    }
-  }
-
-  return el;
-};
-
-jasmine.TrivialReporter.prototype.reportRunnerStarting = function(runner) {
-  var showPassed, showSkipped;
-
-  this.outerDiv = this.createDom('div', { className: 'jasmine_reporter' },
-      this.createDom('div', { className: 'banner' },
-        this.createDom('div', { className: 'logo' },
-            this.createDom('a', { href: 'http://pivotal.github.com/jasmine/', target: "_blank" }, "Jasmine"),
-            this.createDom('span', { className: 'version' }, runner.env.versionString())),
-        this.createDom('div', { className: 'options' },
-            "Show ",
-            showPassed = this.createDom('input', { id: "__jasmine_TrivialReporter_showPassed__", type: 'checkbox' }),
-            this.createDom('label', { "for": "__jasmine_TrivialReporter_showPassed__" }, " passed "),
-            showSkipped = this.createDom('input', { id: "__jasmine_TrivialReporter_showSkipped__", type: 'checkbox' }),
-            this.createDom('label', { "for": "__jasmine_TrivialReporter_showSkipped__" }, " skipped")
-            )
-          ),
-
-      this.runnerDiv = this.createDom('div', { className: 'runner running' },
-          this.createDom('span', { className: 'run_spec', href: '?' }, "run all"),
-          this.runnerMessageSpan = this.createDom('span', {}, "Running..."),
-          this.finishedAtSpan = this.createDom('span', { className: 'finished-at' }, ""))
-      );
-
-  this.document.body.appendChild(this.outerDiv);
-
-  var suites = runner.suites();
-  for (var i = 0; i < suites.length; i++) {
-    var suite = suites[i];
-    var suiteDiv = this.createDom('div', { className: 'suite' },
-        this.createDom('span', { className: 'run_spec', href: '?spec=' + encodeURIComponent(suite.getFullName()) }, "run"),
-        this.createDom('span', { className: 'description', href: '?spec=' + encodeURIComponent(suite.getFullName()) }, suite.description));
-    this.suiteDivs[suite.id] = suiteDiv;
-    var parentDiv = this.outerDiv;
-    if (suite.parentSuite) {
-      parentDiv = this.suiteDivs[suite.parentSuite.id];
-    }
-    parentDiv.appendChild(suiteDiv);
-  }
-
-  this.startedAt = new Date();
-
-  var self = this;
-  showPassed.onclick = function(evt) {
-    if (showPassed.checked) {
-      self.outerDiv.className += ' show-passed';
-    } else {
-      self.outerDiv.className = self.outerDiv.className.replace(/ show-passed/, '');
-    }
-  };
-
-  showSkipped.onclick = function(evt) {
-    if (showSkipped.checked) {
-      self.outerDiv.className += ' show-skipped';
-    } else {
-      self.outerDiv.className = self.outerDiv.className.replace(/ show-skipped/, '');
-    }
-  };
-};
-
-jasmine.TrivialReporter.prototype.reportRunnerResults = function(runner) {
-  var results = runner.results();
-  var className = (results.failedCount > 0) ? "runner failed" : "runner passed";
-  this.runnerDiv.setAttribute("class", className);
-  //do it twice for IE
-  this.runnerDiv.setAttribute("className", className);
-  var specs = runner.specs();
-  var specCount = 0;
-  for (var i = 0; i < specs.length; i++) {
-    if (this.specFilter(specs[i])) {
-      specCount++;
-    }
-  }
-  var message = "" + specCount + " spec" + (specCount == 1 ? "" : "s" ) + ", " + results.failedCount + " failure" + ((results.failedCount == 1) ? "" : "s");
-  message += " in " + ((new Date().getTime() - this.startedAt.getTime()) / 1000) + "s";
-  this.runnerMessageSpan.replaceChild(this.createDom('span', { className: 'description', href: '?'}, message), this.runnerMessageSpan.firstChild);
-
-  this.finishedAtSpan.appendChild(document.createTextNode("Finished at " + new Date().toString()));
-};
-
-jasmine.TrivialReporter.prototype.reportSuiteResults = function(suite) {
-  var results = suite.results();
-  var status = results.passed() ? 'passed' : 'failed';
-  if (results.totalCount == 0) { // todo: change this to check results.skipped
-    status = 'skipped';
-  }
-  this.suiteDivs[suite.id].className += " " + status;
-};
-
-jasmine.TrivialReporter.prototype.reportSpecStarting = function(spec) {
-  if (this.logRunningSpecs) {
-    this.log('>> Jasmine Running ' + spec.suite.description + ' ' + spec.description + '...');
-  }
-};
-
-jasmine.TrivialReporter.prototype.reportSpecResults = function(spec) {
-  var results = spec.results();
-  var status = results.passed() ? 'passed' : 'failed';
-  if (results.skipped) {
-    status = 'skipped';
-  }
-  var specDiv = this.createDom('div', { className: 'spec '  + status },
-      this.createDom('span', { className: 'run_spec', href: '?spec=' + encodeURIComponent(spec.getFullName()) }, "run"),
-      this.createDom('span', {
-        className: 'description',
-        href: '?spec=' + encodeURIComponent(spec.getFullName()),
-        title: spec.getFullName()
-      }, spec.description));
-
-
-  var resultItems = results.getItems();
-  var messagesDiv = this.createDom('div', { className: 'messages' });
-  for (var i = 0; i < resultItems.length; i++) {
-    var result = resultItems[i];
-
-    if (result.type == 'log') {
-      messagesDiv.appendChild(this.createDom('div', {className: 'resultMessage log'}, result.toString()));
-    } else if (result.type == 'expect' && result.passed && !result.passed()) {
-      messagesDiv.appendChild(this.createDom('div', {className: 'resultMessage fail'}, result.message));
-
-      if (result.trace.stack) {
-        messagesDiv.appendChild(this.createDom('div', {className: 'stackTrace'}, result.trace.stack));
-      }
-    }
-  }
-
-  if (messagesDiv.childNodes.length > 0) {
-    specDiv.appendChild(messagesDiv);
-  }
-
-  this.suiteDivs[spec.suite.id].appendChild(specDiv);
-};
-
-jasmine.TrivialReporter.prototype.log = function() {
-  var console = jasmine.getGlobal().console;
-  if (console && console.log) {
-    if (console.log.apply) {
-      console.log.apply(console, arguments);
-    } else {
-      console.log(arguments); // ie fix: console.log.apply doesn't exist on ie
-    }
-  }
-};
-
-jasmine.TrivialReporter.prototype.getLocation = function() {
-  return this.document.location;
-};
-
-jasmine.TrivialReporter.prototype.specFilter = function(spec) {
-
-  return true;
-};

+ 0 - 167
vendor/node-jasmine-dom/lib/jasmine-dom/resources/jasmine.css

@@ -1,167 +0,0 @@
-body {
-  font-family: "Helvetica Neue Light", "Lucida Grande", "Calibri", "Arial", sans-serif;
-}
-
-
-.jasmine_reporter a:visited, .jasmine_reporter a {
-  color: #303; 
-}
-
-.jasmine_reporter a:hover, .jasmine_reporter a:active {
-  color: blue; 
-}
-
-.run_spec {
-  float:right;
-  padding-right: 5px;
-  font-size: .8em;
-  text-decoration: none;
-}
-
-.jasmine_reporter {
-  margin: 0 5px;
-}
-
-.banner {
-  color: #303;
-  background-color: #fef;
-  padding: 5px;
-}
-
-.logo {
-  float: left;
-  font-size: 1.1em;
-  padding-left: 5px;
-}
-
-.logo .version {
-  font-size: .6em;
-  padding-left: 1em;
-}
-
-.runner.running {
-  background-color: yellow;
-}
-
-
-.options {
-  visibility:hidden;
-  text-align: right;
-  font-size: .8em;
-}
-
-
-
-
-.suite {
-  border: 1px outset gray;
-  margin: 5px 0;
-  padding-left: 1em;
-}
-
-.suite .suite {
-  margin: 5px; 
-}
-
-.suite.passed {
-  background-color: #dfd;
-}
-
-.suite.failed {
-  background-color: #fdd;
-}
-
-.spec {
-  margin: 5px;
-  padding-left: 1em;
-  clear: both;
-}
-
-.spec.failed, .spec.passed, .spec.skipped {
-  padding-bottom: 5px;
-  border: 1px solid gray;
-}
-
-.spec.failed {
-  background-color: #fbb;
-  border-color: red;
-}
-
-.spec.passed {
-  background-color: #bfb;
-  border-color: green;
-}
-
-.spec.skipped {
-  background-color: #bbb;
-}
-
-.messages {
-  border-left: 1px dashed gray;
-  padding-left: 1em;
-  padding-right: 1em;
-}
-
-.passed {
-  background-color: #cfc;
-  display: none;
-}
-
-.failed {
-  background-color: #fbb;
-}
-
-.skipped {
-  color: #777;
-  background-color: #eee;
-  display: none;
-}
-
-
-/*.resultMessage {*/
-  /*white-space: pre;*/
-/*}*/
-
-.resultMessage span.result {
-  display: block;
-  line-height: 2em;
-  color: black;
-}
-
-.resultMessage .mismatch {
-  color: black;
-}
-
-.stackTrace {
-  white-space: pre;
-  font-size: .8em;
-  margin-left: 10px;
-  max-height: 5em;
-  overflow: auto;
-  border: 1px inset red;
-  padding: 1em;
-  background: #eef;
-}
-
-.finished-at {
-  padding-left: 1em;
-  font-size: .6em;
-}
-
-.show-passed .passed,
-.show-skipped .skipped {
-  display: block;
-}
-
-
-#jasmine_content {
-  position:fixed;
-  right: 100%;
-}
-
-.runner {
-  border: 1px solid gray;
-  display: block;
-  margin: 5px 0;
-  padding: 2px 0 2px 10px;
-}

Diff do ficheiro suprimidas por serem muito extensas
+ 0 - 2421
vendor/node-jasmine-dom/lib/jasmine-dom/resources/jasmine.js


Diff do ficheiro suprimidas por serem muito extensas
+ 0 - 18
vendor/node-jasmine-dom/lib/jasmine-dom/resources/jquery.js


+ 0 - 102
vendor/node-jasmine-dom/lib/jasmine-dom/resources/simple.html

@@ -1,102 +0,0 @@
-<!DOCTYPE HTML>
-<html>
-<head>
-	<script src="jquery.js"></script>
-	<title>Loading...</title>
-	<style>
-		body {
-			position:absolute;
-			height:100%;
-			width:100%;
-		}
-		.pass {
-			background-color:green;
-		}
-		.fail {
-			background-color:red;
-		}
-		.connection-error {
-			background-color:gray;
-		}
-		.pass #scaffold {
-			height:100%;
-			width:1px;
-			display:inline-block;
-			vertical-align:middle;
-		}
-		.pass #message {
-			font-size: 100px;
-			width:95%;
-			text-align: center;
-			display:inline-block;
-			vertical-align:middle;
-		}
-		#message {
-			opacity: 0.3;
-		}
-		#message:hover {
-		    opacity: 0.7;
-		}
-		.error-report {
-			margin-bottom:100px;
-		}
-		.error-location {
-			font-size:20px;
-		}
-		.error-detail {
-			font-size:30px;
-			margin-top:20px;
-			margin-bottom:30px;
-		}
-		code {
-			font-size:10px;
-		}
-	</style>
-</head>
-<body>
-	<div id="scaffold"></div>
-	<div id="message">
-		
-	</div>
-	
-	<script>
-		var $ = jQuery;
-
-		var poll = function(period){
-			window.setTimeout(function(){
-				$.ajax({
-					url: "/json",
-					dataType: "json",
-					success: function(json){
-						var result = json.failed == 0 ? "pass" : "fail";
-						$('body').attr("class", result);
-						$('title').html(result.toUpperCase());
-						
-						
-						var message = $("#message");
-						message.html("");
-						if(json.failed == 0){
-							message.html(":-)");
-						}else{
-							for(var k in json.failureDetails){
-								var detail = json.failureDetails[k];
-								message.append("<div class='error-report'><span class='error-location'><b>" + detail.group + "</b> <i>" + detail.suite + "</i> " + detail.spec + "</span> <div class='error-detail'>"+detail.trace.message+"</div> <code>"+detail.trace.stack+"</code></div>");
-							}
-						}
-						poll(100);
-					},
-					error: function(){
-						$('body').attr("class","connection-error");
-						$("#message").html("Connection error");
-						$('title').html("CONNECTION ERROR");
-						poll(5000);
-					}
-				});
-			},period);
-		};
-
-		poll(100);
-
-	</script>
-</body>
-</html>

+ 0 - 12
vendor/node-jasmine-dom/lib/jasmine-dom/resources/skeleton.html

@@ -1,12 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-  "http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-  <title>Jasmine Test Runner</title>
-  <link rel="stylesheet" type="text/css" href="jasmine.css"/>
-  <meta http-equiv="refresh" content="5"/>
-</head>
-<body>
-
-</body>
-</html>

+ 0 - 99
vendor/node-jasmine-dom/lib/jasmine-dom/runner-from-html.js

@@ -1,99 +0,0 @@
-function Runner( options ){
-	console.debug("Constructing runner for "+options.runner+".");
-
-	var name, path,
-		runner = options.runner;
-	if(typeof runner == 'object'){
-		name = runner.name;
-		path = runner.runner;
-	} else {
-		name = runner;
-		path = runner;
-	}
-
-	this._options = {
-		reporter: options.jasmineReporter || {},
-		path: require('path').normalize(path),
-		name: name
-	};
-};
-
-Runner.prototype._getScriptPaths = function(pathToHtml, callback){
-	var path = require('path');
-	require('jsdom').env({
-		html: pathToHtml,
-		scripts: [],
-		done: function(errors,window){
-			if(errors){
-				console.error('Error when constructing DOM to get script paths for runner.');
-				console.debug(errors);
-				exit(1);
-			}
-
-			var basePath = path.dirname(pathToHtml);
-			var scripts = window.document.getElementsByTagName('script');
-			var scriptPaths = []
-
-			for(var i = 0; i < scripts.length; i++){
-				var script = scripts[i];
-				var src = script.getAttribute('src');
-				if(src) {
-					var scriptPath = path.normalize(basePath + "/" + src);
-					scriptPaths.push(scriptPath);
-				}
-			}
-			callback(scriptPaths);
-		}
-	});
-};
-
-Runner.prototype._executeRunner = function(pathToHtml, scripts, reporter, callback){
-	console.debug("Constructing runner with following scripts: ");
-	for(var i = 0; i < scripts.length; i++) console.debug(" - " + scripts[i]);
-
-	require('jsdom').env({
-		html: pathToHtml,
-		scripts: scripts,
-		done: function(errors,window){
-			if(errors){
-				console.error('Error when constructing DOM for runner.');
-				console.debug(errors);
-				exit(1);
-			}
-
-			// Executed when the DOM has finished construction
-			if(errors) console.error('Error construction DOM for tests: ',errors);
-			window.jasmine.getEnv().addReporter(reporter);
-			window.jasmine.getEnv().addReporter({
-				reportRunnerResults : function(){
-					if(callback) callback();
-				}
-			});
-
-			console.debug("Running runner in Jasmine.");
-			window.jasmine.getEnv().execute();
-
-		}
-	});
-};
-
-Runner.prototype.run = function(callback){
-	var path = this._options.path,
-		name = this._options.name,
-		reporter = this._options.reporter,
-		that=this;
-
-	console.debug("Running runner " + name);
-	if(reporter.reportStartingGroup) reporter.reportStartingGroup(name);
-
-	this._getScriptPaths(path, function(scripts){
-		that._executeRunner(path,scripts,reporter,function(){
-			callback();
-		});
-	});
-
-};
-
-exports.create = function(options){
-	return new Runner(options);
-}

+ 0 - 73
vendor/node-jasmine-dom/lib/jasmine-dom/server.js

@@ -1,73 +0,0 @@
-var http = require('http');
-var staticServe = require('node-static');
-var fs = require('fs');
-
-function Server(port){
-	this._html = '<html><body>Nothing has happened yet. But stay tuned!</body></html>';
-	this._simpleHtml = fs.readFileSync(__dirname+'/resources/simple.html');
-	this._json = {};
-	this.port = port;
-
-	var staticServer = new staticServe.Server(__dirname+'/resources');
-
-	var that = this;
-	this._httpServer = http.createServer(function (request, response) {
-		that.processRequest(request.url,request.headers['content-type'],response);
-
-		// static file fallback
-		request.addListener('end', function(){
-			staticServer.serve(request,response);
-		});
-	});
-};
-
-Server.prototype.updateJson = function(json){
-	this._json = json;
-}
-
-Server.prototype.updateHtml = function(html){
-	this._jasmineHtml = html;
-}
-
-Server.prototype.processRequest = function(url,mime,response){
-
-	switch(url){
-		case '/':
-			response.writeHead(200, {'Content-Type': 'text/html'});
-			response.end(this._simpleHtml);
-			break;
-		case '/jasmine':
-			response.writeHead(200, {'Content-Type': 'text/html'});
-			response.end(this._jasmineHtml);
-			break;
-		case '/json':
-			response.writeHead(200, {'Content-Type': 'application/json'});
-			response.end( JSON.stringify(this._json) );
-			break;
-		default:
-			break;
-	}
-};
-
-Server.prototype.start = function(){
-	this._httpServer.listen(this.port, "127.0.0.1");
-
-	console.log("Started http server on port ", this.port);
-};
-
-var server;
-exports.start = function(port, callback){
-	server = new Server(port);
-	server.start(function(){
-		callback();
-	});
-};
-exports.stop = function(callback){
-	if(server) server.stop();
-};
-exports.updateJson = function(json){
-	if(server) server.updateJson(json);
-};
-exports.updateHtml = function(html){
-	if(server) server.updateHtml(html);
-};

+ 0 - 9
vendor/node-jasmine-dom/node_modules/cssom/.idea/CSSOM.iml

@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<module type="RUBY_MODULE" version="4">
-  <component name="NewModuleRootManager">
-    <content url="file://$MODULE_DIR$" />
-    <orderEntry type="inheritedJdk" />
-    <orderEntry type="sourceFolder" forTests="false" />
-  </component>
-</module>
-

+ 0 - 3
vendor/node-jasmine-dom/node_modules/cssom/.idea/dictionaries/nv.xml

@@ -1,3 +0,0 @@
-<component name="ProjectDictionaryState">
-  <dictionary name="nv" />
-</component>

+ 0 - 5
vendor/node-jasmine-dom/node_modules/cssom/.idea/encodings.xml

@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project version="4">
-  <component name="Encoding" useUTFGuessing="true" native2AsciiForPropertiesFiles="false" defaultCharsetForPropertiesFiles="UTF-8" />
-</project>
-

+ 0 - 17
vendor/node-jasmine-dom/node_modules/cssom/.idea/misc.xml

@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project version="4">
-  <component name="DependencyValidationManager">
-    <option name="SKIP_IMPORT_STATEMENTS" value="false" />
-  </component>
-  <component name="ProjectDetails">
-    <option name="projectName" value="CSSOM" />
-  </component>
-  <component name="ProjectResources">
-    <default-html-doctype>http://www.w3.org/1999/xhtml</default-html-doctype>
-  </component>
-  <component name="ProjectRootManager" version="2" project-jdk-name="Ruby SDK 1.8.7 (/usr/bin/ruby)" project-jdk-type="RUBY_SDK" />
-  <component name="SvnBranchConfigurationManager">
-    <option name="mySupportsUserInfoFilter" value="true" />
-  </component>
-</project>
-

+ 0 - 9
vendor/node-jasmine-dom/node_modules/cssom/.idea/modules.xml

@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project version="4">
-  <component name="ProjectModuleManager">
-    <modules>
-      <module fileurl="file://$PROJECT_DIR$/.idea/CSSOM.iml" filepath="$PROJECT_DIR$/.idea/CSSOM.iml" />
-    </modules>
-  </component>
-</project>
-

+ 0 - 82
vendor/node-jasmine-dom/node_modules/cssom/.idea/projectCodeStyle.xml

@@ -1,82 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project version="4">
-  <component name="CodeStyleSettingsManager">
-    <option name="PER_PROJECT_SETTINGS">
-      <value>
-        <option name="USE_SAME_INDENTS" value="true" />
-        <option name="OTHER_INDENT_OPTIONS">
-          <value>
-            <option name="INDENT_SIZE" value="4" />
-            <option name="CONTINUATION_INDENT_SIZE" value="0" />
-            <option name="TAB_SIZE" value="4" />
-            <option name="USE_TAB_CHARACTER" value="true" />
-            <option name="SMART_TABS" value="false" />
-            <option name="LABEL_INDENT_SIZE" value="0" />
-            <option name="LABEL_INDENT_ABSOLUTE" value="false" />
-            <option name="USE_RELATIVE_INDENTS" value="false" />
-          </value>
-        </option>
-        <option name="LINE_SEPARATOR" value="&#10;" />
-        <option name="XML_ATTRIBUTE_WRAP" value="0" />
-        <option name="XML_TEXT_WRAP" value="0" />
-        <option name="XML_ALIGN_ATTRIBUTES" value="false" />
-        <option name="HTML_ATTRIBUTE_WRAP" value="0" />
-        <option name="HTML_TEXT_WRAP" value="0" />
-        <option name="HTML_ALIGN_ATTRIBUTES" value="false" />
-        <option name="HTML_DO_NOT_INDENT_CHILDREN_OF" value="html,body,thead,tbody,tfoot,style,script" />
-        <ADDITIONAL_INDENT_OPTIONS fileType="js">
-          <option name="INDENT_SIZE" value="4" />
-          <option name="CONTINUATION_INDENT_SIZE" value="8" />
-          <option name="TAB_SIZE" value="4" />
-          <option name="USE_TAB_CHARACTER" value="false" />
-          <option name="SMART_TABS" value="false" />
-          <option name="LABEL_INDENT_SIZE" value="0" />
-          <option name="LABEL_INDENT_ABSOLUTE" value="false" />
-          <option name="USE_RELATIVE_INDENTS" value="false" />
-        </ADDITIONAL_INDENT_OPTIONS>
-        <ADDITIONAL_INDENT_OPTIONS fileType="jsp">
-          <option name="INDENT_SIZE" value="4" />
-          <option name="CONTINUATION_INDENT_SIZE" value="8" />
-          <option name="TAB_SIZE" value="4" />
-          <option name="USE_TAB_CHARACTER" value="false" />
-          <option name="SMART_TABS" value="false" />
-          <option name="LABEL_INDENT_SIZE" value="0" />
-          <option name="LABEL_INDENT_ABSOLUTE" value="false" />
-          <option name="USE_RELATIVE_INDENTS" value="false" />
-        </ADDITIONAL_INDENT_OPTIONS>
-        <ADDITIONAL_INDENT_OPTIONS fileType="sass">
-          <option name="INDENT_SIZE" value="2" />
-          <option name="CONTINUATION_INDENT_SIZE" value="8" />
-          <option name="TAB_SIZE" value="4" />
-          <option name="USE_TAB_CHARACTER" value="false" />
-          <option name="SMART_TABS" value="false" />
-          <option name="LABEL_INDENT_SIZE" value="0" />
-          <option name="LABEL_INDENT_ABSOLUTE" value="false" />
-          <option name="USE_RELATIVE_INDENTS" value="false" />
-        </ADDITIONAL_INDENT_OPTIONS>
-        <ADDITIONAL_INDENT_OPTIONS fileType="xml">
-          <option name="INDENT_SIZE" value="4" />
-          <option name="CONTINUATION_INDENT_SIZE" value="8" />
-          <option name="TAB_SIZE" value="4" />
-          <option name="USE_TAB_CHARACTER" value="false" />
-          <option name="SMART_TABS" value="false" />
-          <option name="LABEL_INDENT_SIZE" value="0" />
-          <option name="LABEL_INDENT_ABSOLUTE" value="false" />
-          <option name="USE_RELATIVE_INDENTS" value="false" />
-        </ADDITIONAL_INDENT_OPTIONS>
-        <ADDITIONAL_INDENT_OPTIONS fileType="yml">
-          <option name="INDENT_SIZE" value="2" />
-          <option name="CONTINUATION_INDENT_SIZE" value="8" />
-          <option name="TAB_SIZE" value="4" />
-          <option name="USE_TAB_CHARACTER" value="false" />
-          <option name="SMART_TABS" value="false" />
-          <option name="LABEL_INDENT_SIZE" value="0" />
-          <option name="LABEL_INDENT_ABSOLUTE" value="false" />
-          <option name="USE_RELATIVE_INDENTS" value="false" />
-        </ADDITIONAL_INDENT_OPTIONS>
-      </value>
-    </option>
-    <option name="USE_PER_PROJECT_SETTINGS" value="true" />
-  </component>
-</project>
-

+ 0 - 8
vendor/node-jasmine-dom/node_modules/cssom/.idea/vcs.xml

@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project version="4">
-  <component name="VcsDirectoryMappings">
-    <mapping directory="" vcs="" />
-    <mapping directory="$PROJECT_DIR$" vcs="Git" />
-  </component>
-</project>
-

+ 0 - 467
vendor/node-jasmine-dom/node_modules/cssom/.idea/workspace.xml

@@ -1,467 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project version="4">
-  <component name="ChangeListManager">
-    <list default="true" id="30285013-672e-4686-875b-58c4268c29f5" name="Default" comment="">
-      <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/docs/build.html" />
-      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/lib/CSSImportRule.js" afterPath="$PROJECT_DIR$/lib/CSSImportRule.js" />
-    </list>
-    <ignored path=".idea/workspace.xml" />
-    <ignored path="CSSOM.iws" />
-    <option name="TRACKING_ENABLED" value="true" />
-    <option name="SHOW_DIALOG" value="false" />
-    <option name="HIGHLIGHT_CONFLICTS" value="true" />
-    <option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
-    <option name="LAST_RESOLUTION" value="IGNORE" />
-  </component>
-  <component name="ChangesViewManager" flattened_view="true" show_ignored="false" />
-  <component name="CreatePatchCommitExecutor">
-    <option name="PATCH_PATH" value="" />
-    <option name="REVERSE_PATCH" value="false" />
-  </component>
-  <component name="DaemonCodeAnalyzer">
-    <disable_hints />
-  </component>
-  <component name="FavoritesManager">
-    <favorites_list name="CSSOM" />
-  </component>
-  <component name="FileEditorManager">
-    <leaf>
-      <file leaf-file-name="parse.html" pinned="false" current="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/docs/parse.html">
-          <provider selected="true" editor-type-id="text-editor">
-            <state line="26" column="16" selection-start="713" selection-end="713" vertical-scroll-proportion="-16.0">
-              <folding>
-                <marker date="1292697557000" expanded="true" signature="681:774" placeholder="{...}" />
-              </folding>
-            </state>
-          </provider>
-        </entry>
-      </file>
-      <file leaf-file-name="parse2.html" pinned="false" current="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/docs/parse2.html">
-          <provider selected="true" editor-type-id="text-editor">
-            <state line="197" column="25" selection-start="3686" selection-end="3686" vertical-scroll-proportion="-0.6666667">
-              <folding />
-            </state>
-          </provider>
-        </entry>
-      </file>
-      <file leaf-file-name="build.html" pinned="false" current="true" current-in-tab="true">
-        <entry file="file://$PROJECT_DIR$/docs/build.html">
-          <provider selected="true" editor-type-id="text-editor">
-            <state line="50" column="28" selection-start="1126" selection-end="1126" vertical-scroll-proportion="0.6090535">
-              <folding />
-            </state>
-          </provider>
-        </entry>
-      </file>
-      <file leaf-file-name="parse.js" pinned="false" current="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/lib/parse.js">
-          <provider selected="true" editor-type-id="text-editor">
-            <state line="44" column="11" selection-start="880" selection-end="880" vertical-scroll-proportion="0.0">
-              <folding />
-            </state>
-          </provider>
-        </entry>
-      </file>
-      <file leaf-file-name="CSSOM.js" pinned="false" current="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/build/CSSOM.js">
-          <provider selected="true" editor-type-id="text-editor">
-            <state line="11" column="11" selection-start="226" selection-end="226" vertical-scroll-proportion="0.0">
-              <folding />
-            </state>
-          </provider>
-        </entry>
-      </file>
-      <file leaf-file-name="helper.js" pinned="false" current="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/test/helper.js">
-          <provider selected="true" editor-type-id="text-editor">
-            <state line="32" column="0" selection-start="771" selection-end="771" vertical-scroll-proportion="0.0">
-              <folding />
-            </state>
-          </provider>
-        </entry>
-      </file>
-      <file leaf-file-name="qunit.js" pinned="false" current="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/test/vendor/qunit.js">
-          <provider selected="true" editor-type-id="text-editor">
-            <state line="42" column="59" selection-start="1027" selection-end="1027" vertical-scroll-proportion="0.0">
-              <folding />
-            </state>
-          </provider>
-        </entry>
-      </file>
-      <file leaf-file-name="CSSStyleDeclaration.test.js" pinned="false" current="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/test/CSSStyleDeclaration.test.js">
-          <provider selected="true" editor-type-id="text-editor">
-            <state line="12" column="19" selection-start="279" selection-end="279" vertical-scroll-proportion="0.0">
-              <folding />
-            </state>
-          </provider>
-        </entry>
-      </file>
-      <file leaf-file-name="CSSStyleDeclaration.js" pinned="false" current="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/lib/CSSStyleDeclaration.js">
-          <provider selected="true" editor-type-id="text-editor">
-            <state line="105" column="22" selection-start="2425" selection-end="2443" vertical-scroll-proportion="0.0">
-              <folding />
-            </state>
-          </provider>
-        </entry>
-      </file>
-      <file leaf-file-name="clone.test.js" pinned="false" current="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/test/clone.test.js">
-          <provider selected="true" editor-type-id="text-editor">
-            <state line="36" column="14" selection-start="805" selection-end="805" vertical-scroll-proportion="0.0">
-              <folding />
-            </state>
-          </provider>
-        </entry>
-      </file>
-    </leaf>
-  </component>
-  <component name="FindManager">
-    <FindUsagesManager>
-      <setting name="OPEN_NEW_TAB" value="false" />
-    </FindUsagesManager>
-  </component>
-  <component name="Git.Branch.Configurations">
-    <option name="CURRENT" value="parser" />
-    <option name="CONFIGURATIONS">
-      <array>
-        <BranchConfiguration>
-          <option name="IS_AUTO_DETECTED" value="true" />
-          <option name="NAME" value="master" />
-          <option name="BRANCHES">
-            <array>
-              <BranchInfo>
-                <option name="ROOT" value="$PROJECT_DIR$" />
-                <option name="REFERENCE" value="master" />
-              </BranchInfo>
-            </array>
-          </option>
-        </BranchConfiguration>
-        <BranchConfiguration>
-          <option name="IS_AUTO_DETECTED" value="true" />
-          <option name="NAME" value="parser" />
-          <option name="BRANCHES">
-            <array>
-              <BranchInfo>
-                <option name="ROOT" value="$PROJECT_DIR$" />
-                <option name="REFERENCE" value="parser" />
-              </BranchInfo>
-            </array>
-          </option>
-        </BranchConfiguration>
-      </array>
-    </option>
-  </component>
-  <component name="Git.Settings">
-    <option name="CHECKOUT_INCLUDE_TAGS" value="false" />
-    <option name="UPDATE_CHANGES_POLICY" value="STASH" />
-  </component>
-  <component name="IdeDocumentHistory">
-    <option name="changedFiles">
-      <list>
-        <option value="$PROJECT_DIR$/test/parse.test.js" />
-        <option value="$PROJECT_DIR$/lib/CSSImportRule.js" />
-        <option value="$PROJECT_DIR$/server/index.html" />
-        <option value="$PROJECT_DIR$/server/index.js" />
-        <option value="$PROJECT_DIR$/lib/parse.js" />
-        <option value="$PROJECT_DIR$/lib/index.js" />
-        <option value="$PROJECT_DIR$/test/index.html" />
-        <option value="$PROJECT_DIR$/test/clone.test.js" />
-        <option value="$PROJECT_DIR$/lib/clone.js" />
-        <option value="$PROJECT_DIR$/test/helper.js" />
-        <option value="$PROJECT_DIR$/test/vendor/qunit.js" />
-        <option value="$PROJECT_DIR$/lib/CSSStyleDeclaration.js" />
-        <option value="$PROJECT_DIR$/test/CSSStyleDeclaration.test.js" />
-        <option value="$PROJECT_DIR$/docs/parse2.html" />
-        <option value="$PROJECT_DIR$/docs/parse.html" />
-        <option value="$PROJECT_DIR$/docs/build.html" />
-      </list>
-    </option>
-  </component>
-  <component name="PerforceDirect.Settings">
-    <option name="ENABLED" value="false" />
-  </component>
-  <component name="ProjectLevelVcsManager">
-    <OptionsSetting value="true" id="Add" />
-    <OptionsSetting value="true" id="Remove" />
-    <OptionsSetting value="true" id="Checkout" />
-    <OptionsSetting value="true" id="Update" />
-    <OptionsSetting value="true" id="Status" />
-    <OptionsSetting value="true" id="Edit" />
-    <ConfirmationsSetting value="2" id="Add" />
-    <ConfirmationsSetting value="0" id="Remove" />
-  </component>
-  <component name="ProjectReloadState">
-    <option name="STATE" value="0" />
-  </component>
-  <component name="ProjectView">
-    <navigator currentView="ProjectPane" proportions="" version="1" splitterProportion="0.5">
-      <flattenPackages />
-      <showMembers />
-      <showModules />
-      <showLibraryContents ProjectPane="false" />
-      <hideEmptyPackages />
-      <abbreviatePackageNames />
-      <autoscrollToSource />
-      <autoscrollFromSource />
-      <sortByType />
-    </navigator>
-    <panes>
-      <pane id="Favorites" />
-      <pane id="Scope" />
-      <pane id="ProjectPane">
-        <subPane>
-          <PATH>
-            <PATH_ELEMENT>
-              <option name="myItemId" value="CSSOM" />
-              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
-            </PATH_ELEMENT>
-            <PATH_ELEMENT>
-              <option name="myItemId" value="CSSOM" />
-              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
-            </PATH_ELEMENT>
-          </PATH>
-        </subPane>
-      </pane>
-    </panes>
-  </component>
-  <component name="PropertiesComponent">
-    <property name="options.splitter.main.proportions" value="0.3" />
-    <property name="WebServerToolWindowFactoryState" value="true" />
-    <property name="WebServerToolWindowPanel.toolwindow.show.permissions" value="false" />
-    <property name="WebServerToolWindowPanel.toolwindow.show.date" value="false" />
-    <property name="options.lastSelected" value="preferences.sourceCode.HTML" />
-    <property name="WebServerToolWindowPanel.toolwindow.show.size" value="false" />
-    <property name="WebServerToolWindowPanel.toolwindow.highlight.symlinks" value="true" />
-    <property name="DefaultHtmlFileTemplate" value="Html5" />
-    <property name="WebServerToolWindowPanel.toolwindow.highlight.mappings" value="true" />
-    <property name="options.searchVisible" value="true" />
-    <property name="options.splitter.details.proportions" value="0.2" />
-    <property name="GoToClass.includeJavaFiles" value="false" />
-  </component>
-  <component name="PublishConfig" exclude=".svn;.cvs;.idea;.DS_Store;.git;.hg" autoUpload="true">
-    <servers>
-      <server id="03e3dd9a-a049-4a09-8d26-9d8ee4abc8ea">
-        <serverdata>
-          <mappings>
-            <mapping local="$PROJECT_DIR$" />
-          </mappings>
-        </serverdata>
-      </server>
-    </servers>
-  </component>
-  <component name="RunManager">
-    <configuration default="true" type="JavascriptDebugSession" factoryName="Remote">
-      <JSRemoteDebuggerConfigurationSettings>
-        <option name="engineId" value="embedded" />
-        <option name="fileUrl" />
-      </JSRemoteDebuggerConfigurationSettings>
-      <method />
-    </configuration>
-    <list size="0" />
-  </component>
-  <component name="ShelveChangesManager" show_recycled="false" />
-  <component name="SvnConfiguration" maxAnnotateRevisions="500">
-    <option name="USER" value="" />
-    <option name="PASSWORD" value="" />
-    <option name="LAST_MERGED_REVISION" />
-    <option name="UPDATE_RUN_STATUS" value="false" />
-    <option name="MERGE_DRY_RUN" value="false" />
-    <option name="MERGE_DIFF_USE_ANCESTRY" value="true" />
-    <option name="UPDATE_LOCK_ON_DEMAND" value="false" />
-    <option name="IGNORE_SPACES_IN_MERGE" value="false" />
-    <option name="DETECT_NESTED_COPIES" value="false" />
-    <option name="CHECK_NESTED_FOR_QUICK_MERGE" value="false" />
-    <option name="IGNORE_SPACES_IN_ANNOTATE" value="true" />
-    <option name="SHOW_MERGE_SOURCES_IN_ANNOTATE" value="true" />
-    <configuration useDefault="true">$USER_HOME$/.subversion_IDEA</configuration>
-    <myIsUseDefaultProxy>false</myIsUseDefaultProxy>
-    <supportedVersion>125</supportedVersion>
-  </component>
-  <component name="TaskManager">
-    <task active="true" id="Default" summary="Default task">
-      <changelist id="30285013-672e-4686-875b-58c4268c29f5" name="Default" comment="" />
-      <created>1285386214790</created>
-      <updated>1285386214790</updated>
-    </task>
-    <servers />
-  </component>
-  <component name="TodoView" selected-index="0">
-    <todo-panel id="selected-file">
-      <are-packages-shown value="false" />
-      <are-modules-shown value="false" />
-      <flatten-packages value="false" />
-      <is-autoscroll-to-source value="false" />
-    </todo-panel>
-    <todo-panel id="all">
-      <are-packages-shown value="false" />
-      <are-modules-shown value="false" />
-      <flatten-packages value="false" />
-      <is-autoscroll-to-source value="false" />
-    </todo-panel>
-    <todo-panel id="default-changelist">
-      <are-packages-shown value="false" />
-      <are-modules-shown value="false" />
-      <flatten-packages value="false" />
-      <is-autoscroll-to-source value="false" />
-    </todo-panel>
-  </component>
-  <component name="ToolWindowManager">
-    <frame x="851" y="22" width="907" height="1087" extended-state="0" />
-    <editor active="true" />
-    <layout>
-      <window_info id="Changes" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="3" side_tool="true" content_ui="tabs" />
-      <window_info id="TODO" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.2691867" sideWeight="0.3254902" order="1" side_tool="true" content_ui="tabs" />
-      <window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.24948454" sideWeight="0.5" order="2" side_tool="true" content_ui="tabs" />
-      <window_info id="Remote Host" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.3866775" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
-      <window_info id="Dependency Viewer" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
-      <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.3565976" sideWeight="0.9709977" order="0" side_tool="false" content_ui="tabs" />
-      <window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
-      <window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
-      <window_info id="Version Control" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="4" side_tool="true" content_ui="tabs" />
-      <window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
-      <window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
-      <window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
-      <window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.327451" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
-      <window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
-      <window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
-      <window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
-    </layout>
-  </component>
-  <component name="VcsManagerConfiguration">
-    <option name="OFFER_MOVE_TO_ANOTHER_CHANGELIST_ON_PARTIAL_COMMIT" value="true" />
-    <option name="CHECK_CODE_SMELLS_BEFORE_PROJECT_COMMIT" value="true" />
-    <option name="PERFORM_UPDATE_IN_BACKGROUND" value="true" />
-    <option name="PERFORM_COMMIT_IN_BACKGROUND" value="true" />
-    <option name="PERFORM_EDIT_IN_BACKGROUND" value="true" />
-    <option name="PERFORM_CHECKOUT_IN_BACKGROUND" value="true" />
-    <option name="PERFORM_ADD_REMOVE_IN_BACKGROUND" value="true" />
-    <option name="PERFORM_ROLLBACK_IN_BACKGROUND" value="false" />
-    <option name="CHECK_LOCALLY_CHANGED_CONFLICTS_IN_BACKGROUND" value="true" />
-    <option name="ENABLE_BACKGROUND_PROCESSES" value="true" />
-    <option name="CHANGED_ON_SERVER_INTERVAL" value="5" />
-    <option name="SHOW_ONLY_CHANGED_IN_SELECTION_DIFF" value="true" />
-    <option name="FORCE_NON_EMPTY_COMMENT" value="false" />
-    <option name="LAST_COMMIT_MESSAGE" />
-    <option name="MAKE_NEW_CHANGELIST_ACTIVE" value="true" />
-    <option name="OPTIMIZE_IMPORTS_BEFORE_PROJECT_COMMIT" value="false" />
-    <option name="CHECK_FILES_UP_TO_DATE_BEFORE_COMMIT" value="false" />
-    <option name="REFORMAT_BEFORE_PROJECT_COMMIT" value="false" />
-    <option name="REFORMAT_BEFORE_FILE_COMMIT" value="false" />
-    <option name="FILE_HISTORY_DIALOG_COMMENTS_SPLITTER_PROPORTION" value="0.8" />
-    <option name="FILE_HISTORY_DIALOG_SPLITTER_PROPORTION" value="0.5" />
-    <option name="ACTIVE_VCS_NAME" />
-    <option name="UPDATE_GROUP_BY_PACKAGES" value="false" />
-    <option name="UPDATE_GROUP_BY_CHANGELIST" value="false" />
-    <option name="SHOW_FILE_HISTORY_AS_TREE" value="false" />
-    <option name="FILE_HISTORY_SPLITTER_PROPORTION" value="0.6" />
-  </component>
-  <component name="XDebuggerManager">
-    <breakpoint-manager />
-  </component>
-  <component name="XSLT-Support.FileAssociations.UIState">
-    <PATH>
-      <PATH_ELEMENT>
-        <option name="myItemId" value="CSSOM" />
-        <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
-      </PATH_ELEMENT>
-    </PATH>
-  </component>
-  <component name="editorHistoryManager">
-    <entry file="file://$PROJECT_DIR$/server/index.html">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="11" column="39" selection-start="306" selection-end="306" vertical-scroll-proportion="0.30877194" />
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/server/index.js">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="15" column="40" selection-start="432" selection-end="432" vertical-scroll-proportion="0.4040404" />
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/test/index.html">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="15" column="34" selection-start="423" selection-end="423" vertical-scroll-proportion="-10.0" />
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/lib/CSSStyleRule.js">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="4" column="2" selection-start="143" selection-end="143" vertical-scroll-proportion="0.0" />
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/lib/CSSStyleSheet.js">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="12" column="6" selection-start="250" selection-end="250" vertical-scroll-proportion="0.0" />
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/lib/clone.js">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="55" column="9" selection-start="1506" selection-end="1506" vertical-scroll-proportion="0.0" />
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/lib/parse.js">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="44" column="11" selection-start="880" selection-end="880" vertical-scroll-proportion="0.0" />
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/build/CSSOM.js">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="11" column="11" selection-start="226" selection-end="226" vertical-scroll-proportion="0.0" />
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/test/helper.js">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="32" column="0" selection-start="771" selection-end="771" vertical-scroll-proportion="0.0" />
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/test/vendor/qunit.js">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="42" column="59" selection-start="1027" selection-end="1027" vertical-scroll-proportion="0.0" />
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/test/CSSStyleDeclaration.test.js">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="12" column="19" selection-start="279" selection-end="279" vertical-scroll-proportion="0.0" />
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/lib/CSSStyleDeclaration.js">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="105" column="22" selection-start="2425" selection-end="2443" vertical-scroll-proportion="0.0">
-          <folding />
-        </state>
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/test/clone.test.js">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="36" column="14" selection-start="805" selection-end="805" vertical-scroll-proportion="0.0" />
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/docs/parse.html">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="26" column="16" selection-start="713" selection-end="713" vertical-scroll-proportion="-16.0">
-          <folding>
-            <marker date="1292697557000" expanded="true" signature="681:774" placeholder="{...}" />
-          </folding>
-        </state>
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/docs/parse2.html">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="197" column="25" selection-start="3686" selection-end="3686" vertical-scroll-proportion="-0.6666667">
-          <folding />
-        </state>
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/docs/build.html">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="50" column="28" selection-start="1126" selection-end="1126" vertical-scroll-proportion="0.6090535">
-          <folding />
-        </state>
-      </provider>
-    </entry>
-  </component>
-</project>
-

+ 0 - 19
vendor/node-jasmine-dom/node_modules/cssom/.livereload

@@ -1,19 +0,0 @@
-# Lines starting with pound sign (#) are ignored.
-
-# additional extensions to monitor
-#config.exts << 'haml'
-
-# exclude files with NAMES matching this mask
-#config.exclusions << '~*'
-# exclude files with PATHS matching this mask (if the mask contains a slash)
-#config.exclusions << '/excluded_dir/*'
-# exclude files with PATHS matching this REGEXP
-#config.exclusions << /somedir.*(ab){2,4}.(css|js)$/
-
-# reload the whole page when .js changes
-#config.apply_js_live = false
-# reload the whole page when .css changes
-#config.apply_css_live = false
-
-# wait 100ms for more changes before reloading a page
-#config.grace_period = 0.1

+ 0 - 37
vendor/node-jasmine-dom/node_modules/cssom/Jakefile

@@ -1,37 +0,0 @@
-var PATH = require("path");
-var FS = require("fs");
-
-function readFile(path) {
-	var abs_path = PATH.join(__dirname, "lib", path);
-	return FS.readFileSync(abs_path, "utf8");
-}
-
-function stripCommonJS(text) {
-	return text.replace(/\/\/\.CommonJS(?:.|\n)*?\/\/\/CommonJS/g, "");
-}
-
-desc("Packages lib files into the one huge");
-task("default", [], function(){
-	var files = [readFile("CSSOM.js")];
-	var index_file = readFile("index.js");
-
-	(function(){
-		var exports = {};
-		function require(path) {
-			var text = readFile(path + ".js");
-			files.push(stripCommonJS(text).trimLeft());
-			return {};
-		}
-		eval(index_file);
-	})();
-
-	var build_dir = PATH.join(__dirname, "build");
-	try {
-		FS.statSync(build_dir);
-	} catch(e) {
-		FS.mkdirSync(build_dir, 0755);
-	}
-	var build_path = PATH.join(build_dir, "CSSOM.js");
-	FS.writeFileSync(build_path, files.join(""));
-	process.stdout.write("build/CSSOM.js is done\n");
-});

+ 0 - 33
vendor/node-jasmine-dom/node_modules/cssom/README.mdown

@@ -1,33 +0,0 @@
-# CSSOM
-
-CSSOM.js is a CSS parser written in pure JavaScript. It also a partial implementation of [CSS Object Model](http://dev.w3.org/csswg/cssom/). 
-
-    CSSOM.parse("body {color: black}")
-    -> {
-      cssRules: [
-        {
-          selectorText: "body",
-          style: {
-            0: "color",
-            color: "black",
-            length: 1
-          }
-        }
-      ]
-    }
-
-
-## [Parser demo](http://nv.github.com/CSSOM/docs/parse.html)
-
-
-## [Tests](http://nv.github.com/CSSOM/test/)
-
-Works well in Google Chrome 6+, Safari 5+, Firefox 3.6+, Opera 10.63+.
-Doesn't work in IE < 9 because of unsupported getters/setters.
-
-## Build
-
-Build one-file version of CSSOM.js with [Jake](http://github.com/mde/node-jake):
-
-    ➤ jake
-    build/CSSOM.js is done

+ 0 - 23
vendor/node-jasmine-dom/node_modules/cssom/Rakefile

@@ -1,23 +0,0 @@
-def version
-  git_describe_tags = `git describe --tags`
-  tag = git_describe_tags.split('-').first || git_describe_tags
-  tag.strip!
-  commit = `git rev-list --full-history #{tag}.. -- src/ | wc -l`.strip
-  tag.slice! 0
-  "#{tag}.#{commit}"
-end
-
-task :upload do
-  require 'net/github-upload'
-  gh = Net::GitHub::Upload.new(
-    :login => `git config github.user`.chomp,
-    :token => `git config github.token`.chomp
-  )
-  puts gh.upload(
-    :repos => 'CSSOM',
-    :file  => 'build/CSSOM.js',
-    :name => "CSSOM.v#{version}.js",
-    :content_type => 'text/javascript',
-    :description => "CSS Object Model implemented in pure JavaScript"
-  )
-end

+ 0 - 19
vendor/node-jasmine-dom/node_modules/cssom/docs/.livereload

@@ -1,19 +0,0 @@
-# Lines starting with pound sign (#) are ignored.
-
-# additional extensions to monitor
-#config.exts << 'haml'
-
-# exclude files with NAMES matching this mask
-#config.exclusions << '~*'
-# exclude files with PATHS matching this mask (if the mask contains a slash)
-#config.exclusions << '/excluded_dir/*'
-# exclude files with PATHS matching this REGEXP
-#config.exclusions << /somedir.*(ab){2,4}.(css|js)$/
-
-# reload the whole page when .js changes
-#config.apply_js_live = false
-# reload the whole page when .css changes
-#config.apply_css_live = false
-
-# wait 100ms for more changes before reloading a page
-#config.grace_period = 0.1

+ 0 - 3
vendor/node-jasmine-dom/node_modules/cssom/docs/bar.css

@@ -1,3 +0,0 @@
-body * {
-	color: red !important;
-}

+ 0 - 0
vendor/node-jasmine-dom/node_modules/cssom/docs/demo.css


+ 0 - 4
vendor/node-jasmine-dom/node_modules/cssom/docs/foo.css

@@ -1,4 +0,0 @@
-@import "bar.css" screen;
-body {
-	background: black !important;
-}

+ 0 - 170
vendor/node-jasmine-dom/node_modules/cssom/docs/parse.html

@@ -1,170 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-	<meta charset="utf-8">
-	<title>CSSOM.js parse method</title>
-	<script>
-	var exports = {};
-	function require(){
-		return exports;
-	}
-	</script>
-	<script src="../lib/CSSStyleDeclaration.js"></script>
-	<script src="../lib/CSSRule.js"></script>
-	<script src="../lib/CSSStyleRule.js"></script>
-	<script src="../lib/CSSImportRule.js"></script>
-	<script src="../lib/MediaList.js"></script>
-	<script src="../lib/CSSMediaRule.js"></script>
-	<script src="../lib/StyleSheet.js"></script>
-	<script src="../lib/CSSStyleSheet.js"></script>
-	<script src="../lib/parse.js"></script>
-	<script>
-	window.CSSOM = exports;
-	</script>
-	<style type="text/css">
-	html, body {
-		background: #333;
-		color: #EEE;
-		font: 12px sans-serif;
-		margin: 0;
-		height: 100%;
-	}
-	body {
-		padding-bottom: 1.7em;
-		-webkit-box-sizing: border-box;
-		-moz-box-sizing: border-box;
-		box-sizing: border-box;
-	}
-	table {
-		width: 100%;
-		table-layout: fixed;
-		margin: 0 auto;
-	}
-	td {
-		vertical-align: top;
-	}
-	h1 {
-		font: normal 1em sans-serif;
-		display: inline;
-	}
-	#labels {
-		color: #FFE992;
-		width: 66%;
-	}
-	#labels td {
-		width: 50%;
-		text-align: center;
-	}
-	#labels td::before {
-		content: '↱ ';
-		color: #998e62;
-		position: relative;
-		top: .4em;
-	}
-	#labels td::after {
-		content: ' ↴';
-		color: #998e62;
-		position: relative;
-		top: .4em;
-	}
-	#content {
-		width: 100%;
-		height: 100%;
-	}
-	#content td {
-		width: 33%;
-	}
-	#content td + td {
-		padding-left: 1%;
-	}
-	.style-cell textarea {
-		width: 99%;
-		height: 100%;
-		font: 12px monospace;
-		white-space: pre-wrap;
-	}
-	.serialized-cell {
-		border-left: 1px solid #363636;
-	}
-	#message {
-		visibility: hidden;
-	}
-	.error #message {
-		visibility: visible;
-		position: absolute;
-		top: 0;
-		left: 34%;
-		padding: 1em;
-		background: black;
-		color: #e34343;
-		font-size: 24px;
-	}
-	</style>
-</head>
-<body>
-<table id="labels">
-	<tr><td><h1>CSSOM.parse</h1></td><td>.toString</td></tr>
-</table>
-<table id="content">
-	<tr>
-		<td class="style-cell">
-<textarea id="style" spellcheck="false" rows="40">img {
-  border: none
-}</textarea></td>
-		<td class="output-cell"><pre id="output"></pre></td>
-		<td class="serialized-cell"><pre id="serialized"></pre></td>
-	</tr>
-</table>
-<div id="message"></div>
-<script defer>
-var errors = [];
-if (!("__defineGetter__" in {})) {
-	errors.push("Object.prototype.__defineGetter__ isn’t supported");
-}
-if (errors.length) {
-	document.getElementById("message").innerHTML = errors.join("<br>");
-	document.body.className = "error";
-	throw errors.join("\n\n");
-}
-
-var style = document.getElementById("style");
-var output = document.getElementById("output");
-var serialized = document.getElementById("serialized");
-
-function outputUpdated(){
-	var value = style.value;
-	if (value != style.prevValue) {
-		var css = CSSOM.parse(value);
-		output.innerHTML = JSON.stringify(css, null, 2);
-		serialized.innerHTML = css.toString();
-		style.prevValue = value;
-	}
-}
-
-function hashChanged(){
-	var hash = location.hash;
-	var splitted = hash.split("=");
-	if (splitted.length < 2) {
-		return;
-	}
-	var name = splitted[0];
-	var value = splitted[1];
-	if (name == "#css") {
-		style.value = decodeURIComponent(value);
-		outputUpdated();
-	}
-}
-
-hashChanged();
-outputUpdated();
-
-window.onhashchange = hashChanged;
-style.onkeyup = style.onpaste = function changed(){
-	outputUpdated();
-};
-style.onchange = function updateLocation(){
-	location.hash = "css=" + encodeURIComponent(style.value);
-};
-</script>
-</body>
-</html>

+ 0 - 431
vendor/node-jasmine-dom/node_modules/cssom/docs/parse2.html

@@ -1,431 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-	<meta charset="utf-8">
-	<title>CSSOM.js parse method</title>
-	<script>
-	var exports = {};
-	function require(){
-		return exports;
-	}
-	</script>
-	<script src="../lib/CSSStyleDeclaration.js"></script>
-	<script src="../lib/CSSRule.js"></script>
-	<script src="../lib/CSSStyleRule.js"></script>
-	<script src="../lib/CSSImportRule.js"></script>
-	<script src="../lib/MediaList.js"></script>
-	<script src="../lib/CSSMediaRule.js"></script>
-	<script src="../lib/StyleSheet.js"></script>
-	<script src="../lib/CSSStyleSheet.js"></script>
-	<script src="../lib/parse.js"></script>
-	<script>
-	window.CSSOM = exports;
-	</script>
-	<style>
-	html {
-		padding: 0;
-	}
-	</style>
-	<style type="text/css">
-	html, body {
-		background: #333;
-		color: #EEE;
-		font: 12px sans-serif;
-		margin: 0;
-		height: 100%;
-	}
-	body {
-		padding-bottom: 1.7em;
-		-webkit-box-sizing: border-box;
-		-moz-box-sizing: border-box;
-		box-sizing: border-box;
-	}
-	table {
-		width: 100%;
-		table-layout: fixed;
-		margin: 0 auto;
-	}
-	td {
-		vertical-align: top;
-	}
-	h1 {
-		font: normal 1em sans-serif;
-		display: inline;
-	}
-	#labels {
-		color: #FFE992;
-		width: 66%;
-	}
-	#labels td {
-		width: 50%;
-		text-align: center;
-	}
-	#labels td::before {
-		content: '↱ ';
-		color: #998e62;
-		position: relative;
-		top: .4em;
-	}
-	#labels td::after {
-		content: ' ↴';
-		color: #998e62;
-		position: relative;
-		top: .4em;
-	}
-	#content {
-		width: 100%;
-		height: 100%;
-	}
-	#content td {
-		width: 33%;
-	}
-	#content td + td {
-		padding-left: 1%;
-	}
-	.style-cell textarea {
-		width: 99%;
-		height: 100%;
-		font: 12px monospace;
-		white-space: pre-wrap;
-	}
-	.serialized-cell {
-		border-left: 1px solid #363636;
-	}
-	#message {
-		visibility: hidden;
-	}
-	.error #message {
-		visibility: visible;
-		position: absolute;
-		top: 0;
-		left: 34%;
-		padding: 1em;
-		background: black;
-		color: #e34343;
-		font-size: 24px;
-	}
-	</style>
-</head>
-<body>
-<table id="labels">
-	<tr><td><h1>CSSOM.parse</h1></td><td>.toString</td></tr>
-</table>
-<table id="content">
-	<tr>
-		<td class="style-cell">
-<textarea id="style" spellcheck="false" rows="40">img {
-  border: none
-}</textarea></td>
-		<td class="output-cell"><pre id="output"></pre></td>
-		<td class="serialized-cell"><pre id="serialized"></pre></td>
-	</tr>
-</table>
-<div id="message"></div>
-<script defer>
-console.dir(document.styleSheets[0].cssRules[0].style);
-//console.log(document.styleSheets[0].cssRules[0].style["table-layout"]);
-var CSS = {
-	background: [
-		"background-image",
-		"background-repeat",
-		"background-attachment",
-		"background-position",
-		"background-origin",
-		"background-clip",
-		"background-color"
-	],
-	"background-repeat": [
-		"background-repeat-x",
-		"background-repeat-y"
-	],
-	"background-position": [
-		"background-position-x",
-		"background-position-y"
-	],
-	border: [
-		"border-top",
-		"border-right",
-		"border-bottom",
-		"border-left",
-		"border-width",
-		"border-style",
-		"border-color"
-	],
-	"border-top": [
-		"border-top-width",
-		"border-top-style",
-		"border-top-color"
-	],
-	"border-right": [
-		"border-right-width",
-		"border-right-style",
-		"border-right-color"
-	],
-	"border-bottom": [
-		"border-bottom-width",
-		"border-bottom-style",
-		"border-bottom-color"
-	],
-	"border-left": [
-		"border-left-width",
-		"border-left-style",
-		"border-left-color"
-	],
-	font: [
-		"font-style",
-		"font-variant",
-		"font-weight",
-		"font-size",
-		"font-size-adjust",
-		"font-stretch",
-		"line-height",
-		"font-family"
-	],
-	"list-style": [
-		"list-style-type",
-		"list-style-position",
-		"list-style-image"
-	],
-	margin: [
-		"margin-top",
-		"margin-right",
-		"margin-bottom",
-		"margin-left"
-	],
-	padding: [
-		"padding-top",
-		"padding-right",
-		"padding-bottom",
-		"padding-left"
-	]
-};
-
-function camelize(string) {
-	return string.replace(/-+(.)?/g, function(match, chr) {
-		return chr ? chr.toUpperCase() : '';
-	});
-}
-
-CSS["background-repeat"].shorthand = function(style) {
-	if (style["background-repeat-x"] == style["background-repeat-y"]) {
-		return style["background-repeat-x"];
-	} else {
-		return style["background-repeat-x"] + " " + style["background-repeat-y"];
-	}
-};
-
-CSS["background-position"].shorthand = function(style) {
-	if (style["background-position-x"] == style["background-position-y"]) {
-		return style["background-position-x"];
-	} else {
-		return style["background-position-x"] + " " + style["background-position-y"];
-	}
-};
-
-CSS.background.shorthand = function(style) {
-	var values = [];
-
-	//FIXME
-	// Support CSS3 background shorthand
-	// http://www.w3.org/TR/css3-background/#the-background
-
-	var backgroundColor = style["background-color"];
-	if (backgroundColor != "initial" && backgroundColor != "transparent") {
-		values.push(backgroundColor);
-	}
-
-	var backgroundImage = style["background-image"];
-	if (backgroundImage != "initial" && backgroundImage != "none") {
-		values.push(backgroundImage);
-	}
-
-	var backgroundRepeat = style["background-repeat"];
-	if (backgroundRepeat != "initial" && backgroundRepeat != "repeat") {
-		values.push(backgroundRepeat);
-	}
-
-	var backgroundAttachment = style["background-attachment"];
-	if (backgroundAttachment != "initial" && backgroundAttachment != "scroll") {
-		values.push(backgroundAttachment);
-	}
-
-	var backgroundPosition = style["background-position"];
-	if (backgroundPosition != "initial" && parseInt(backgroundPosition) !== 0) {
-		values.push(backgroundPosition);
-	}
-
-	return values.join(" ") || "";
-};
-
-
-(function(){
-	for (var key in CSS) {
-		var longhand = CSS[key];
-		if (!longhand.length) {
-			continue;
-		}
-		for (var i=0, ii=longhand.length; i<ii; i++) {
-			var siblings = longhand.slice(0);
-			siblings.splice(i, 1);
-			if (CSS[longhand[i]]) {
-				//console.log("array", CSS[longhand[i]]);
-			} else {
-				CSS[longhand[i]] = {}
-			}
-			CSS[longhand[i]].parent = key;
-			CSS[longhand[i]].siblings = siblings;
-		}
-	}
-})();
-
-
-function cloneMinimized(stylesheet) {
-	var cloned = new CSSOM.CSSStyleSheet;
-
-	var rules = stylesheet.cssRules;
-	if (!rules) {
-		return cloned;
-	}
-
-	var RULE_TYPES = {
-		1: CSSOM.CSSStyleRule,
-		4: CSSOM.CSSMediaRule
-		//FIXME
-		//3: CSSOM.CSSImportRule,
-		//5: CSSOM.CSSFontFaceRule,
-		//6: CSSOM.CSSPageRule,
-	};
-
-	for (var i=0, rulesLength=rules.length; i < rulesLength; i++) {
-		var rule = rules[i];
-		var ruleClone = cloned.cssRules[i] = new RULE_TYPES[rule.type];
-
-		var style = rule.style;
-		if (style) {
-			var styleClone = ruleClone.style = minimizeStyle(style);
-		}
-
-		if ("selectorText" in rule) {
-			ruleClone.selectorText = rule.selectorText;
-		}
-
-		if ("mediaText" in rule) {
-			ruleClone.mediaText = rule.mediaText;
-		}
-
-		if ("cssRules" in rule) {
-			rule.cssRules = clone(rule).cssRules;
-		}
-	}
-
-	return cloned;
-
-};
-
-function minimizeStyle(style) {
-	var result = new CSSOM.CSSStyleDeclaration;
-	for (var i=0; i<style.length; i++) {
-		var name = closestShorthand(style, style[i]);
-		if (!(name in result)) {
-			result[name] = style[camelize(name)];
-			result[result.length++] = name;
-		}
-	}
-	return result;
-}
-
-function closestShorthand(style, name) {
-	if (!(name in CSS)) {
-		return name;
-	}
-	var siblings = CSS[name].siblings;
-	if (!siblings || !siblings.length) {
-		return name;
-	}
-	var properties = {};
-	var allPresent = true;
-	for (var j=0; j<siblings.length; j++) {
-		var sibling = siblings[j];
-		var aSibling = camelize(sibling);
-		if (style[aSibling] === "") {
-			console.warn(sibling);
-			if (CSS[sibling].length) {
-				for (var i=0; i<CSS[sibling].length; i++) {
-					if (style[camelize(CSS[sibling][i])] === "") {
-						allPresent = false;
-						break;
-					}
-				}
-			} else {
-				allPresent = false;
-				break;
-			}
-		}
-	}
-	if (allPresent) {
-		return closestShorthand(style, CSS[name].parent);
-	} else {
-		return name;
-	}
-
-}
-
-console.log(cloneMinimized(document.styleSheets[0]).toString());
-//console.log(CSSOM.CSSStyleSheet.prototype.toString.call(minimize(document.styleSheets[0].cssRules[0].style)));
-//console.log(document.styleSheets[0].cssRules[0].style["background-image"]);
-
-//console.log(CSS);
-
-
-
-var errors = [];
-//if (!Object.defineProperty) {
-//	errors.push("Object.defineProperty isn’t supported");
-//}
-if (errors.length) {
-	document.getElementById("message").innerHTML = errors.join("<br>");
-	document.body.className = "error";
-	throw errors.join("\n\n");
-}
-
-var style = document.getElementById("style");
-var output = document.getElementById("output");
-var serialized = document.getElementById("serialized");
-
-function outputUpdated(){
-	var value = style.value;
-	if (value != style.prevValue) {
-		var css = CSSOM.parse(value);
-		output.innerHTML = JSON.stringify(css, null, 2);
-		serialized.innerHTML = css.toString();
-		style.prevValue = value;
-	}
-}
-
-function hashChanged(){
-	var hash = location.hash;
-	var splitted = hash.split("=");
-	if (splitted.length < 2) {
-		return;
-	}
-	var name = splitted[0];
-	var value = splitted[1];
-	if (name == "#css") {
-		style.value = decodeURIComponent(value);
-		outputUpdated();
-	}
-}
-
-hashChanged();
-outputUpdated();
-
-window.onhashchange = hashChanged;
-style.onkeyup = style.onpaste = function changed(){
-	outputUpdated();
-};
-style.onchange = function updateLocation(){
-	location.hash = "css=" + encodeURIComponent(style.value);
-};
-</script>
-</body>
-</html>

+ 0 - 100
vendor/node-jasmine-dom/node_modules/cssom/index.html

@@ -1,100 +0,0 @@
-<!DOCTYPE html>
-<style type="text/css">
-html, body {
-	background: #CCC;
-	font-size: 14px;
-	margin: 0;
-	height: 100%;
-}
-table {
-	width: 100%;
-	border-collapse: collapse;
-}
-td {
-	width: 50%;
-	padding: 0;
-	vertical-align: top;
-}
-#output, #style {
-	width: 49%;
-	min-height: 99%;
-	display: inline-block;
-	vertical-align: top;
-}
-#style {
-	position: absolute;
-	top: 0;
-	height: 100%;
-	left: 4px;
-	width: 49%;
-	background: #FFF;
-	border: 1px solid #999;
-	font: 14px monospace;
-	white-space: pre-wrap;
-}
-#output {
-	position: absolute;
-	top: 0;
-	min-height: 100%;
-	right: 0;
-	width: 50%;
-	margin: 0;
-	padding: 4px;
-	box-sizing: border-box;
-	-webkit-box-sizing: border-box;
-	background: #333;
-}
-
-.rule {
-	color: #8CB7D1;
-}
-.name {
-	color: #D7AA69;
-}
-.value {
-	color: #D7AA69;
-}
-.brace-open, .brace-close, .colon, .semicolon {
-	color: #625035;
-}
-/*@import url("test/fixtures/dummy.css") screen, handheld;*/
-@media screen, all {
-	body {
-		color: black;
-	}
-}
-</style>
-
-<textarea id="style">.rule {
-  display: block;
-}
-.properties {
-  display: block;
-}</textarea>
-<pre id="output"></pre>
-
-
-<script type="text/javascript" src="lib/StyleSheet.js"></script>
-<script type="text/javascript" src="lib/CSSStyleSheet.js"></script>
-<script type="text/javascript" src="lib/MediaList.js"></script>
-<script type="text/javascript" src="lib/CSSRule.js"></script>
-<script type="text/javascript" src="lib/CSSStyleRule.js"></script>
-<script type="text/javascript" src="lib/CSSMediaRule.js"></script>
-<script type="text/javascript" src="lib/CSSStyleDeclaration.js"></script>
-<script type="text/javascript" src="lib/parse.js"></script>
-<script type="text/javascript" src="lib/parse.js"></script>
-<script type="text/javascript" src="plugins/toHTML.js"></script>
-<script type="text/javascript">
-CSSStyleSheet.prototype.toHTML = toHTML;
-window.onload = function(){
-	var style = document.getElementById("style");
-	var output = document.getElementById("output")
-
-	function outputUpdated(){
-		output.innerHTML = parse(style.value).toHTML();
-	}
-
-	style.onkeyup = outputUpdated;
-	outputUpdated();
-}
-</script>

+ 0 - 34
vendor/node-jasmine-dom/node_modules/cssom/lib/CSSImportRule.js

@@ -1,34 +0,0 @@
-//.CommonJS
-var CSSOM = {
-	CSSRule: require("./CSSRule").CSSRule,
-	CSSStyleSheet: require("./CSSStyleSheet").CSSStyleSheet,
-	MediaList: require("./MediaList").MediaList
-};
-///CommonJS
-
-
-/**
- * @constructor
- * @see http://dev.w3.org/csswg/cssom/#cssimportrule
- * @see http://www.w3.org/TR/DOM-Level-2-Style/css.html#CSS-CSSImportRule
- */
-CSSOM.CSSImportRule = function CSSImportRule() {
-	this.href = "";
-	this.media = new CSSOM.MediaList;
-	this.styleSheet = new CSSOM.CSSStyleSheet;
-};
-
-CSSOM.CSSImportRule.prototype = new CSSOM.CSSRule;
-CSSOM.CSSImportRule.prototype.constructor = CSSOM.CSSImportRule;
-CSSOM.CSSImportRule.prototype.type = 3;
-CSSOM.CSSImportRule.prototype.__defineGetter__("cssText", function() {
-	return "@import url("+ this.href +") "+ this.media.mediaText +";"
-});
-CSSOM.CSSImportRule.prototype.__defineSetter__("cssText", function() {
-	return "@import url("+ this.href +") "+ this.media.mediaText +";"
-});
-
-
-//.CommonJS
-exports.CSSImportRule = CSSOM.CSSImportRule;
-///CommonJS

+ 0 - 38
vendor/node-jasmine-dom/node_modules/cssom/lib/CSSMediaRule.js

@@ -1,38 +0,0 @@
-//.CommonJS
-var CSSOM = {
-	CSSRule: require("./CSSRule").CSSRule,
-	MediaList: require("./MediaList").MediaList
-};
-///CommonJS
-
-
-/**
- * @constructor
- * @see http://dev.w3.org/csswg/cssom/#cssmediarule
- * @see http://www.w3.org/TR/DOM-Level-2-Style/css.html#CSS-CSSMediaRule
- */
-CSSOM.CSSMediaRule = function CSSMediaRule() {
-	this.media = new CSSOM.MediaList;
-	this.cssRules = [];
-};
-
-CSSOM.CSSMediaRule.prototype = new CSSOM.CSSRule;
-CSSOM.CSSMediaRule.prototype.constructor = CSSOM.CSSMediaRule;
-CSSOM.CSSMediaRule.prototype.type = 4;
-//FIXME
-//CSSOM.CSSMediaRule.prototype.insertRule = CSSStyleSheet.prototype.insertRule;
-//CSSOM.CSSMediaRule.prototype.deleteRule = CSSStyleSheet.prototype.deleteRule;
-
-// http://opensource.apple.com/source/WebCore/WebCore-658.28/css/CSSMediaRule.cpp
-CSSOM.CSSMediaRule.prototype.__defineGetter__("cssText", function() {
-	var cssTexts = [];
-	for (var i=0, length=this.cssRules.length; i < length; i++) {
-		cssTexts.push(this.cssRules[i].cssText);
-	}
-	return "@media " + this.media.mediaText + " {" + cssTexts.join("") + "}"
-});
-
-
-//.CommonJS
-exports.CSSMediaRule = CSSOM.CSSMediaRule;
-///CommonJS

+ 0 - 3
vendor/node-jasmine-dom/node_modules/cssom/lib/CSSOM.js

@@ -1,3 +0,0 @@
-var CSSOM = {};
-
-

+ 0 - 38
vendor/node-jasmine-dom/node_modules/cssom/lib/CSSRule.js

@@ -1,38 +0,0 @@
-//.CommonJS
-var CSSOM = {};
-///CommonJS
-
-
-/**
- * @constructor
- * @see http://dev.w3.org/csswg/cssom/#the-cssrule-interface
- * @see http://www.w3.org/TR/DOM-Level-2-Style/css.html#CSS-CSSRule
- */
-CSSOM.CSSRule = function CSSRule() {
-	this.parentRule = null;
-};
-
-CSSOM.CSSRule.STYLE_RULE = 1;
-CSSOM.CSSRule.IMPORT_RULE = 3;
-CSSOM.CSSRule.MEDIA_RULE = 4;
-CSSOM.CSSRule.FONT_FACE_RULE = 5;
-CSSOM.CSSRule.PAGE_RULE = 6;
-CSSOM.CSSRule.WEBKIT_KEYFRAMES_RULE = 8;
-CSSOM.CSSRule.WEBKIT_KEYFRAME_RULE = 9;
-
-// Obsolete in CSSOM http://dev.w3.org/csswg/cssom/
-//CSSOM.CSSRule.UNKNOWN_RULE = 0;
-//CSSOM.CSSRule.CHARSET_RULE = 2;
-
-// Never implemented
-//CSSOM.CSSRule.VARIABLES_RULE = 7;
-
-CSSOM.CSSRule.prototype = {
-	constructor: CSSOM.CSSRule
-	//FIXME
-};
-
-
-//.CommonJS
-exports.CSSRule = CSSOM.CSSRule;
-///CommonJS

+ 0 - 130
vendor/node-jasmine-dom/node_modules/cssom/lib/CSSStyleDeclaration.js

@@ -1,130 +0,0 @@
-//.CommonJS
-var CSSOM = {};
-///CommonJS
-
-
-/**
- * @constructor
- * @see http://www.w3.org/TR/DOM-Level-2-Style/css.html#CSS-CSSStyleDeclaration
- */
-CSSOM.CSSStyleDeclaration = function CSSStyleDeclaration(){
-	this.length = 0;
-
-	// NON-STANDARD
-	this._importants = {};
-};
-
-
-CSSOM.CSSStyleDeclaration.prototype = {
-
-	constructor: CSSOM.CSSStyleDeclaration,
-
-	/**
-	 *
-	 * @param {string} name
-	 * @see http://www.w3.org/TR/DOM-Level-2-Style/css.html#CSS-CSSStyleDeclaration-getPropertyValue
-	 * @return {string} the value of the property if it has been explicitly set for this declaration block. 
-	 * Returns the empty string if the property has not been set.
-	 */
-	getPropertyValue: function(name) {
-		return this[name] || ""
-	},
-
-	/**
-	 *
-	 * @param {string} name
-	 * @param {string} value
-	 * @param {string} [priority=null] "important" or null
-	 * @see http://www.w3.org/TR/DOM-Level-2-Style/css.html#CSS-CSSStyleDeclaration-setProperty
-	 */
-	setProperty: function(name, value, priority) {
-		if (this[name]) {
-			// Property already exist. Overwrite it.
-			var index = Array.prototype.indexOf.call(this, name);
-			if (index < 0) {
-				this[this.length] = name;
-				this.length++;
-			}
-		} else {
-			// New property.
-			this[this.length] = name;
-			this.length++;
-		}
-		this[name] = value;
-		this._importants[name] = priority;
-	},
-
-	/**
-	 *
-	 * @param {string} name
-	 * @see http://www.w3.org/TR/DOM-Level-2-Style/css.html#CSS-CSSStyleDeclaration-removeProperty
-	 * @return {string} the value of the property if it has been explicitly set for this declaration block.
-	 * Returns the empty string if the property has not been set or the property name does not correspond to a known CSS property.
-	 */
-	removeProperty: function(name) {
-		if (!(name in this)) {
-			return ""
-		}
-		var index = Array.prototype.indexOf.call(this, name);
-		if (index < 0) {
-			return ""
-		}
-		var prevValue = this[name];
-		this[name] = "";
-
-		// That's what WebKit and Opera do
-		Array.prototype.splice.call(this, index, 1);
-
-		// That's what Firefox does
-		//this[index] = ""
-
-		return prevValue
-	},
-
-	getPropertyCSSValue: function() {
-		//FIXME
-	},
-
-	/**
-	 *
-	 * @param {String} name
-	 */
-	getPropertyPriority: function(name) {
-		return this._importants[name] || "";
-	},
-
-
-	/**
-	 *   element.style.overflow = "auto"
-	 *   element.style.getPropertyShorthand("overflow-x")
-	 *   -> "overflow"
-	 */
-	getPropertyShorthand: function() {
-		//FIXME
-	},
-
-	isPropertyImplicit: function() {
-		//FIXME
-	},
-
-	// Doesn't work in IE < 9
-	get cssText(){
-		var properties = [];
-		for (var i=0, length=this.length; i < length; ++i) {
-			var name = this[i];
-			var value = this.getPropertyValue(name);
-			var priority = this.getPropertyPriority(name);
-			if (priority) {
-				priority = " !" + priority;
-			}
-			properties[i] = name + ": " + value + priority + ";";
-		}
-		return properties.join(" ")
-	}
-
-};
-
-
-//.CommonJS
-exports.CSSStyleDeclaration = CSSOM.CSSStyleDeclaration;
-///CommonJS

+ 0 - 187
vendor/node-jasmine-dom/node_modules/cssom/lib/CSSStyleRule.js

@@ -1,187 +0,0 @@
-//.CommonJS
-var CSSOM = {
-	CSSStyleDeclaration: require("./CSSStyleDeclaration").CSSStyleDeclaration,
-	CSSRule: require("./CSSRule").CSSRule
-};
-///CommonJS
-
-
-/**
- * @constructor
- * @see http://dev.w3.org/csswg/cssom/#cssstylerule
- * @see http://www.w3.org/TR/DOM-Level-2-Style/css.html#CSS-CSSStyleRule
- */
-CSSOM.CSSStyleRule = function CSSStyleRule() {
-	this.selectorText = "";
-	this.style = new CSSOM.CSSStyleDeclaration;
-};
-
-CSSOM.CSSStyleRule.prototype = new CSSOM.CSSRule;
-CSSOM.CSSStyleRule.prototype.constructor = CSSOM.CSSStyleRule;
-CSSOM.CSSStyleRule.prototype.type = 1;
-
-CSSOM.CSSStyleRule.prototype.__defineGetter__("cssText", function() {
-	var text;
-	if (this.selectorText) {
-		text = this.selectorText + " {" + this.style.cssText + "}";
-	} else {
-		text = "";
-	}
-	return text;
-});
-
-CSSOM.CSSStyleRule.prototype.__defineSetter__("cssText", function(cssText) {
-	var rule = CSSOM.CSSStyleRule.parse(cssText);
-	this.style = rule.style;
-	this.selectorText = rule.selectorText;
-});
-
-
-/**
- * NON-STANDARD
- * lightweight version of parse.js.
- * @param {string} ruleText
- * @return CSSStyleRule
- */
-CSSOM.CSSStyleRule.parse = function(ruleText) {
-	var i = 0;
-	var state = "selector";
-	var index;
-	var j = i;
-	var buffer = "";
-
-	var SIGNIFICANT_WHITESPACE = {
-		"selector": true,
-		"value": true
-	};
-
-	var styleRule = new CSSOM.CSSStyleRule;
-	var selector, name, value, priority="";
-
-	for (var character; character = ruleText.charAt(i); i++) {
-
-		switch (character) {
-
-		case " ":
-		case "\t":
-		case "\r":
-		case "\n":
-		case "\f":
-			if (SIGNIFICANT_WHITESPACE[state]) {
-				// Squash 2 or more white-spaces in the row into 1
-				switch (ruleText.charAt(i - 1)) {
-					case " ":
-					case "\t":
-					case "\r":
-					case "\n":
-					case "\f":
-						break;
-					default:
-						buffer += " ";
-						break;
-				}
-			}
-			break;
-
-		// String
-		case '"':
-			j = i + 1;
-			index = ruleText.indexOf('"', j) + 1;
-			if (!index) {
-				throw '" is missing';
-			}
-			buffer += ruleText.slice(i, index);
-			i = index - 1;
-			break;
-
-		case "'":
-			j = i + 1;
-			index = ruleText.indexOf("'", j) + 1;
-			if (!index) {
-				throw "' is missing";
-			}
-			buffer += ruleText.slice(i, index);
-			i = index - 1;
-			break;
-
-		// Comment
-		case "/":
-			if (ruleText.charAt(i + 1) == "*") {
-				i += 2;
-				index = ruleText.indexOf("*/", i);
-				if (index == -1) {
-					throw SyntaxError("Missing */");
-				} else {
-					i = index + 1;
-				}
-			} else {
-				buffer += character;
-			}
-			break;
-
-		case "{":
-			if (state == "selector") {
-				styleRule.selectorText = buffer.trim();
-				buffer = "";
-				state = "name";
-			}
-			break;
-
-		case ":":
-			if (state == "name") {
-				name = buffer.trim();
-				buffer = "";
-				state = "value";
-			} else {
-				buffer += character;
-			}
-			break;
-
-		case "!":
-			if (state == "value" && ruleText.indexOf("!important", i) === i) {
-				priority = "important";
-				i += "important".length;
-			} else {
-				buffer += character;
-			}
-			break;
-
-		case ";":
-			if (state == "value") {
-				styleRule.style.setProperty(name, buffer.trim(), priority);
-				priority = "";
-				buffer = "";
-				state = "name";
-			} else {
-				buffer += character;
-			}
-			break;
-
-		case "}":
-			if (state == "value") {
-				styleRule.style.setProperty(name, buffer.trim(), priority);
-				priority = "";
-				buffer = "";
-			} else if (state == "name") {
-				break;
-			} else {
-				buffer += character;
-			}
-			state = "selector";
-			break;
-
-		default:
-			buffer += character;
-			break;
-
-		}
-	}
-
-	return styleRule;
-
-};
-
-
-//.CommonJS
-exports.CSSStyleRule = CSSOM.CSSStyleRule;
-///CommonJS

+ 0 - 85
vendor/node-jasmine-dom/node_modules/cssom/lib/CSSStyleSheet.js

@@ -1,85 +0,0 @@
-//.CommonJS
-var CSSOM = {
-	StyleSheet: require("./StyleSheet").StyleSheet,
-	CSSStyleRule: require("./CSSStyleRule").CSSStyleRule
-};
-///CommonJS
-
-
-/**
- * @constructor
- * @see http://www.w3.org/TR/DOM-Level-2-Style/css.html#CSS-CSSStyleSheet
- */
-CSSOM.CSSStyleSheet = function CSSStyleSheet() {
-	this.cssRules = [];
-};
-
-
-CSSOM.CSSStyleSheet.prototype = new CSSOM.StyleSheet;
-CSSOM.CSSStyleSheet.prototype.constructor = CSSOM.CSSStyleSheet;
-
-
-/**
- * Used to insert a new rule into the style sheet. The new rule now becomes part of the cascade.
- *
- *   sheet = new Sheet("body {margin: 0}")
- *   sheet.toString()
- *   -> "body{margin:0;}"
- *   sheet.insertRule("img {border: none}", 0)
- *   -> 0
- *   sheet.toString()
- *   -> "img{border:none;}body{margin:0;}"
- *
- * @param {string} rule
- * @param {number} index
- * @see http://www.w3.org/TR/DOM-Level-2-Style/css.html#CSS-CSSStyleSheet-insertRule
- * @return {number} The index within the style sheet's rule collection of the newly inserted rule.
- */
-CSSOM.CSSStyleSheet.prototype.insertRule = function(rule, index) {
-	if (index < 0 || index > this.cssRules.length) {
-		throw new RangeError("INDEX_SIZE_ERR")
-	}
-	this.cssRules.splice(index, 0, CSSOM.CSSStyleRule.parse(rule));
-	return index
-};
-
-
-/**
- * Used to delete a rule from the style sheet.
- *
- *   sheet = new Sheet("img{border:none} body{margin:0}")
- *   sheet.toString()
- *   -> "img{border:none;}body{margin:0;}"
- *   sheet.deleteRule(0)
- *   sheet.toString()
- *   -> "body{margin:0;}"
- *
- * @param {number} index
- * @see http://www.w3.org/TR/DOM-Level-2-Style/css.html#CSS-CSSStyleSheet-deleteRule
- * @return {number} The index within the style sheet's rule list of the rule to remove.
- */
-CSSOM.CSSStyleSheet.prototype.deleteRule = function(index) {
-	if (index < 0 || index >= this.cssRules.length) {
-		throw new RangeError("INDEX_SIZE_ERR");
-	}
-	this.cssRules.splice(index, 1);
-};
-
-
-/**
- * NON-STANDARD
- * @return {string} serialize stylesheet
- */
-CSSOM.CSSStyleSheet.prototype.toString = function() {
-	var result = "";
-	var rules = this.cssRules;
-	for (var i=0; i<rules.length; i++) {
-		result += rules[i].cssText + "\n";
-	}
-	return result;
-};
-
-
-//.CommonJS
-exports.CSSStyleSheet = CSSOM.CSSStyleSheet;
-///CommonJS

+ 0 - 61
vendor/node-jasmine-dom/node_modules/cssom/lib/MediaList.js

@@ -1,61 +0,0 @@
-//.CommonJS
-var CSSOM = {};
-///CommonJS
-
-
-/**
- * @constructor
- * @see http://dev.w3.org/csswg/cssom/#the-medialist-interface
- */
-CSSOM.MediaList = function MediaList(){
-	this.length = 0;
-};
-
-CSSOM.MediaList.prototype = {
-
-	constructor: CSSOM.MediaList,
-
-	/**
-	 * @return {string}
-	 */
-	get mediaText() {
-		return Array.prototype.join.call(this, ", ");
-	},
-
-	/**
-	 * @param {string} value
-	 */
-	set mediaText(value) {
-		var values = value.split(",");
-		var length = this.length = values.length;
-		for (var i=0; i<length; i++) {
-			this[i] = values[i].trim();
-		}
-	},
-
-	/**
-	 * @param {string} medium
-	 */
-	appendMedium: function(medium) {
-		if (Array.prototype.indexOf.call(this, medium) == -1) {
-			this[this.length] = medium;
-			this.length++;
-		}
-	},
-
-	/**
-	 * @param {string} medium
-	 */
-	deleteMedium: function(medium) {
-		var index = Array.prototype.indexOf.call(this, medium);
-		if (index != -1) {
-			Array.prototype.splice.call(this, index, 1);
-		}
-	}
-	
-};
-
-
-//.CommonJS
-exports.MediaList = CSSOM.MediaList;
-///CommonJS

+ 0 - 15
vendor/node-jasmine-dom/node_modules/cssom/lib/StyleSheet.js

@@ -1,15 +0,0 @@
-//.CommonJS
-var CSSOM = {};
-///CommonJS
-
-
-/**
- * @constructor
- * @see http://dev.w3.org/csswg/cssom/#the-stylesheet-interface
- */
-CSSOM.StyleSheet = function StyleSheet(){};
-
-
-//.CommonJS
-exports.StyleSheet = CSSOM.StyleSheet;
-///CommonJS

+ 0 - 69
vendor/node-jasmine-dom/node_modules/cssom/lib/clone.js

@@ -1,69 +0,0 @@
-//.CommonJS
-var CSSOM = {
-	CSSStyleSheet: require("./CSSStyleSheet").CSSStyleSheet,
-	CSSStyleRule: require("./CSSStyleRule").CSSStyleRule,
-	CSSMediaRule: require("./CSSMediaRule").CSSMediaRule,
-	CSSStyleDeclaration: require("./CSSStyleDeclaration").CSSStyleDeclaration
-};
-///CommonJS
-
-
-/**
- * Produces a deep copy of stylesheet — the instance variables of stylesheet are copied recursively.
- * @param {CSSStyleSheet|CSSOM.CSSStyleSheet} stylesheet
- * @nosideeffects
- * @return {CSSOM.CSSStyleSheet}
- */
-CSSOM.clone = function clone(stylesheet) {
-
-	var cloned = new CSSOM.CSSStyleSheet;
-
-	var rules = stylesheet.cssRules;
-	if (!rules) {
-		return cloned;
-	}
-
-	var RULE_TYPES = {
-		1: CSSOM.CSSStyleRule,
-		4: CSSOM.CSSMediaRule
-		//FIXME
-		//3: CSSOM.CSSImportRule,
-		//5: CSSOM.CSSFontFaceRule,
-		//6: CSSOM.CSSPageRule,
-	};
-
-	for (var i=0, rulesLength=rules.length; i < rulesLength; i++) {
-		var rule = rules[i];
-		var ruleClone = cloned.cssRules[i] = new RULE_TYPES[rule.type];
-
-		var style = rule.style;
-		if (style) {
-			var styleClone = ruleClone.style = new CSSOM.CSSStyleDeclaration;
-			for (var j=0, styleLength=style.length; j < styleLength; j++) {
-				var name = styleClone[j] = style[j];
-				styleClone[name] = style[name];
-				styleClone._importants[name] = style.getPropertyPriority(name);
-			}
-			styleClone.length = style.length;
-		}
-
-		if ("selectorText" in rule) {
-			ruleClone.selectorText = rule.selectorText;
-		}
-
-		if ("mediaText" in rule) {
-			ruleClone.mediaText = rule.mediaText;
-		}
-
-		if ("cssRules" in rule) {
-			rule.cssRules = clone(rule).cssRules;
-		}
-	}
-
-	return cloned;
-
-};
-
-//.CommonJS
-exports.clone = CSSOM.clone;
-///CommonJS

+ 0 - 10
vendor/node-jasmine-dom/node_modules/cssom/lib/index.js

@@ -1,10 +0,0 @@
-exports.CSSStyleDeclaration = require("./CSSStyleDeclaration").CSSStyleDeclaration;
-exports.CSSRule = require("./CSSRule").CSSRule;
-exports.CSSStyleRule = require("./CSSStyleRule").CSSStyleRule;
-exports.CSSImportRule = require("./CSSImportRule").CSSImportRule;
-exports.MediaList = require("./MediaList").MediaList;
-exports.CSSMediaRule = require("./CSSMediaRule").CSSMediaRule;
-exports.StyleSheet = require("./StyleSheet").StyleSheet;
-exports.CSSStyleSheet = require("./CSSStyleSheet").CSSStyleSheet;
-exports.parse = require("./parse").parse;
-exports.clone = require("./clone").clone;

+ 0 - 195
vendor/node-jasmine-dom/node_modules/cssom/lib/parse.js

@@ -1,195 +0,0 @@
-//.CommonJS
-var CSSOM = {
-	CSSStyleSheet: require("./CSSStyleSheet").CSSStyleSheet,
-	CSSStyleRule: require("./CSSStyleRule").CSSStyleRule,
-	CSSMediaRule: require("./CSSMediaRule").CSSMediaRule
-};
-///CommonJS
-
-
-/**
- * @param {string} token
- * @param {Object} [options]
- */
-CSSOM.parse = function parse(token, options) {
-
-	options = options || {};
-	var i = options.startIndex || 0;
-	var state = options.state || "selector";
-
-	var index;
-	var j = i;
-	var buffer = "";
-
-	var SIGNIFICANT_WHITESPACE = {
-		"selector": true,
-		"value": true,
-		"atRule": true,
-		"atBlock": true
-	};
-
-	var styleSheet = new CSSOM.CSSStyleSheet;
-
-	// @type CSSStyleSheet|CSSMediaRule
-	var currentScope = styleSheet;
-	
-	var selector, name, value, priority="", styleRule, mediaRule;
-
-	for (var character; character = token.charAt(i); i++) {
-
-		switch (character) {
-
-		case " ":
-		case "\t":
-		case "\r":
-		case "\n":
-		case "\f":
-			if (SIGNIFICANT_WHITESPACE[state]) {
-				// Squash 2 or more white-spaces in the row into 1
-				switch (token.charAt(i - 1)) {
-					case " ":
-					case "\t":
-					case "\r":
-					case "\n":
-					case "\f":
-						break;
-					default:
-						buffer += " ";
-						break;
-				}
-			}
-			break;
-
-		// String
-		case '"':
-			j = i + 1;
-			index = token.indexOf('"', j) + 1;
-			if (!index) {
-				throw '" is missing';
-			}
-			buffer += token.slice(i, index);
-			i = index - 1;
-			break;
-
-		case "'":
-			j = i + 1;
-			index = token.indexOf("'", j) + 1;
-			if (!index) {
-				throw "' is missing";
-			}
-			buffer += token.slice(i, index);
-			i = index - 1;
-			break;
-
-		// Comment
-		case "/":
-			if (token.charAt(i + 1) == "*") {
-				i += 2;
-				index = token.indexOf("*/", i);
-				if (index == -1) {
-					throw SyntaxError("Missing */");
-				} else {
-					i = index + 1;
-				}
-			} else {
-				buffer += character;
-			}
-			break;
-
-		// At-rule
-		case "@":
-			if (token.indexOf("@media", i) == i) {
-				state = "atBlock";
-				i += "media".length;
-				buffer = "";
-				break;
-			} else if (state == "selector") {
-				state = "atRule";
-			}
-			buffer += character;
-			break;
-
-		case "{":
-			if (state == "selector" || state == "atRule") {
-				styleRule = new CSSOM.CSSStyleRule;
-				styleRule.selectorText = buffer.trim();
-				buffer = "";
-				state = "name";
-			} else if (state == "atBlock") {
-				mediaRule = new CSSOM.CSSMediaRule;
-				mediaRule.media.mediaText = buffer.trim();
-				currentScope = mediaRule;
-				buffer = "";
-				state = "selector";
-			}
-			break;
-
-		case ":":
-			if (state == "name") {
-				name = buffer.trim();
-				buffer = "";
-				state = "value";
-			} else {
-				buffer += character;
-			}
-			break;
-
-		case "!":
-			if (state == "value" && token.indexOf("!important", i) === i) {
-				priority = "important";
-				i += "important".length;
-			} else {
-				buffer += character;
-			}
-			break;
-
-		case ";":
-			if (state == "value") {
-				styleRule.style.setProperty(name, buffer.trim(), priority);
-				priority = "";
-				buffer = "";
-				state = "name";
-			} else if (state == "atRule") {
-				buffer = "";
-				state = "selector";
-			} else {
-				buffer += character;
-			}
-			break;
-
-		case "}":
-			if (state == "value") {
-				styleRule.style.setProperty(name, buffer.trim(), priority);
-				priority = "";
-				buffer = "";
-				currentScope.cssRules.push(styleRule);
-			} else if (state == "name") {
-				currentScope.cssRules.push(styleRule);
-				buffer = "";
-			} else if (state == "selector") {
-				// End of media rule.
-				// Nesting of media rules isn't supported
-				if (!mediaRule) {
-					throw "unexpected }";
-				}
-				styleSheet.cssRules.push(mediaRule);
-				currentScope = styleSheet;
-				buffer = "";
-			}
-			state = "selector";
-			break;
-
-		default:
-			buffer += character;
-			break;
-
-		}
-	}
-
-	return styleSheet;
-};
-
-
-//.CommonJS
-exports.parse = CSSOM.parse;
-///CommonJS

+ 0 - 17
vendor/node-jasmine-dom/node_modules/cssom/media.html

@@ -1,17 +0,0 @@
-<style>
-@media handheld, only screen and (max-device-width: 480px){
-	html {
-		color: black;
-	}
-}
-</style>
-
-<script>
-window.onload = function(){
-	if (document.styleSheets[0].cssRules[0].cssRules[0].parentRule === document.styleSheets[0].cssRules[0]) {
-		document.body.innerHTML = "PASS parentRule";
-	} else {
-		document.body.innerHTML = "FAIL parentRule";
-	}
-}
-</script>

+ 0 - 30
vendor/node-jasmine-dom/node_modules/cssom/package.json

@@ -1,30 +0,0 @@
-{
-	"name": "cssom",
-	"description": "CSS Object Model implementation and CSS parser",
-	"keywords": ["CSS", "CSSOM", "parser", "styleSheet"],
-	"version": "0.2.0",
-	"homepage": "https://github.com/NV/CSSOM",
-	"author": "Nikita Vasilyev <me@elv1s.ru>",
-	"repository": {
-		"type": "git",
-		"url": "git://github.com/NV/CSSOM.git"
-	},
-	"bugs": {
-		"web": "https://github.com/NV/CSSOM/issues"
-	},
-	"directories": {
-		"doc": "./doc",
-		"lib": "./lib",
-		"test": "./test"
-	},
-	"main": "./lib/index.js",
-	"engines": {
-		"node": ">=0.2.0"
-	},
-	"licenses": [
-		{
-			"type": "MIT",
-			"url": "http://creativecommons.org/licenses/MIT/"
-		}
-	]
-}

+ 0 - 32
vendor/node-jasmine-dom/node_modules/cssom/plugins/toHTML.js

@@ -1,32 +0,0 @@
-/**
- * return {string}
- */
-function toHTML(){
-	var result = "";
-	var rules = this.cssRules;
-	var length = rules.length;
-	for (var i = 0; i < length; i++) {
-		var rule = rules[i];
-		if (rule) {
-			result += "<span class='rule'><b class='selector'>" + rule.selectorText + "</b> <span class='brace-open'>{</span>";
-			var style = rule.style;
-			if (!style) continue;
-			var jj = style.length;
-			if (jj) {
-				for (var j = 0; j < jj; j++) {
-					var name = style[j];
-					result += "\n<span class='name'>  " + name + "</span><span class='colon'>: </span><span class='value'>"
-								 + style[name] + "</span><span class='semicolon'>;</span>";
-				}
-			}
-			result += "<span class='brace-close'>\n}\n</span></span>";
-		}
-	}
-	return result;
-}
-
-
-
-if (typeof exports != "undefined") {
-	exports.toHTML = toHTML;
-}

+ 0 - 22
vendor/node-jasmine-dom/node_modules/cssom/server/index.html

@@ -1,22 +0,0 @@
-<!DOCTYPE HTML>
-<html>
-<head>
-	<title></title>
-	<script>
-		var xhr = new XMLHttpRequest();
-		xhr.open("POST", "http://localhost:8124/css_save", true);
-		xhr.setRequestHeader("x-path", "/tmp/test.txt");
-		xhr.onreadystatechange = function (aEvt) {
-			console.log(aEvt)
-		};
-		xhr.send("asdfsdf sdfkjs dkf");
-	</script>
-</head>
-<body>
-<form action="http://localhost:8124/css_save" method="POST">
-	<input name="path" value="file:///Users/nv/Code/CSSOM/server/index.html">
-	<textarea name="content">Fuu</textarea>
-	<button>Submit</button>
-</form>
-</body>
-</html>

+ 0 - 21
vendor/node-jasmine-dom/node_modules/cssom/server/index.js

@@ -1,21 +0,0 @@
-var http = require('http');
-var fs = require('fs');
-
-http.createServer(function(request, response) {
-//	console.dir(request);
-//	request.setEncoding("utf8");
-
-//	console.dir(request.headers);
-	var start = Date.now();
-	var path = request.headers["x-path"];
-
-
-	request.on("data", function(data){
-		console.log(fs.writeFileSync(path, data));
-		response.writeHead(200, {'Content-Type': 'text/plain'});
-		response.end(path + ' saved!\n');
-		var end = Date.now();
-		console.log(end - start + "ms");
-	});
-
-}).listen(8124);

+ 0 - 0
vendor/node-jasmine-dom/node_modules/cssom/shorthands.html


Alguns ficheiros não foram mostrados porque muitos ficheiros mudaram neste diff