Commit 1c6559d78fd6abb1714dbf5d18c7bc2900099e44
1 parent
dbad0eba
Update components documentation
Showing
546 changed files
with
0 additions
and
164156 deletions
Too many changes.
To preserve performance only 100 of 546 files are displayed.
node_modules/grunt-bosonic/.npmignore deleted
node_modules/grunt-bosonic/AUTHORS deleted
node_modules/grunt-bosonic/Gruntfile.js deleted
1 | -/* | |
2 | - * grunt-bosonic | |
3 | - * https://github.com/bosonic/grunt-bosonic | |
4 | - * | |
5 | - * Copyright (c) 2013 Raphaรซl Rougeron | |
6 | - * Licensed under the MIT license. | |
7 | - */ | |
8 | - | |
9 | -'use strict'; | |
10 | - | |
11 | -module.exports = function(grunt) { | |
12 | - | |
13 | - grunt.initConfig({ | |
14 | - | |
15 | - clean: { | |
16 | - tests: ['tmp'], | |
17 | - }, | |
18 | - | |
19 | - bosonic: { | |
20 | - sample: { | |
21 | - src: ['samples/spec_sample.html'], | |
22 | - css: 'tmp/spec_sample.css', | |
23 | - js: 'tmp/spec_sample.js' | |
24 | - } | |
25 | - } | |
26 | - | |
27 | - }); | |
28 | - | |
29 | - grunt.loadTasks('tasks'); | |
30 | - | |
31 | - grunt.loadNpmTasks('grunt-contrib-clean'); | |
32 | - | |
33 | - grunt.registerTask('test', ['clean', 'bosonic']); | |
34 | - | |
35 | - grunt.registerTask('default', ['test']); | |
36 | - | |
37 | -}; | |
38 | 0 | \ No newline at end of file |
node_modules/grunt-bosonic/LICENSE deleted
1 | -The MIT License (MIT) | |
2 | - | |
3 | -Copyright (c) 2014 The Bosonic Authors | |
4 | - | |
5 | -Permission is hereby granted, free of charge, to any person obtaining a copy of | |
6 | -this software and associated documentation files (the "Software"), to deal in | |
7 | -the Software without restriction, including without limitation the rights to | |
8 | -use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of | |
9 | -the Software, and to permit persons to whom the Software is furnished to do so, | |
10 | -subject to the following conditions: | |
11 | - | |
12 | -The above copyright notice and this permission notice shall be included in all | |
13 | -copies or substantial portions of the Software. | |
14 | - | |
15 | -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | |
16 | -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS | |
17 | -FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR | |
18 | -COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER | |
19 | -IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN | |
20 | -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. |
node_modules/grunt-bosonic/README.md deleted
1 | -# grunt-bosonic | |
2 | - | |
3 | -> A Grunt task that transpiles to-the-spec Web Components into polyfilled JavaScript | |
4 | - | |
5 | -## Getting Started | |
6 | -This plugin requires Grunt `~0.4.2` | |
7 | - | |
8 | -If you haven't used [Grunt](http://gruntjs.com/) before, be sure to check out the [Getting Started](http://gruntjs.com/getting-started) guide, as it explains how to create a [Gruntfile](http://gruntjs.com/sample-gruntfile) as well as install and use Grunt plugins. Once you're familiar with that process, you may install this plugin with this command: | |
9 | - | |
10 | -```shell | |
11 | -npm install grunt-bosonic --save-dev | |
12 | -``` | |
13 | - | |
14 | -Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript: | |
15 | - | |
16 | -```js | |
17 | -grunt.loadNpmTasks('grunt-bosonic'); | |
18 | -``` | |
19 | - | |
20 | -## The "bosonic" task | |
21 | - | |
22 | -### Usage | |
23 | -In your project's Gruntfile, add a section named `bosonic` to the data object passed into `grunt.initConfig()`. | |
24 | - | |
25 | -```js | |
26 | -grunt.initConfig({ | |
27 | - bosonic: { | |
28 | - my_components: { | |
29 | - src: ['src/**/*.html'], | |
30 | - css: 'dist/components.css', | |
31 | - js: 'dist/components.js' | |
32 | - } | |
33 | -}); | |
34 | -``` | |
35 | - | |
36 | -## Contributing | |
37 | -In lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Lint and test your code using [Grunt](http://gruntjs.com/). | |
38 | - | |
39 | -## Release History | |
40 | -_(Nothing yet)_ | |
41 | 0 | \ No newline at end of file |
node_modules/grunt-bosonic/node_modules/bosonic-transpiler/.npmignore deleted
1 | -node_modules/* |
node_modules/grunt-bosonic/node_modules/bosonic-transpiler/AUTHORS deleted
node_modules/grunt-bosonic/node_modules/bosonic-transpiler/LICENSE deleted
1 | -The MIT License (MIT) | |
2 | - | |
3 | -Copyright (c) 2014 The Bosonic Authors | |
4 | - | |
5 | -Permission is hereby granted, free of charge, to any person obtaining a copy of | |
6 | -this software and associated documentation files (the "Software"), to deal in | |
7 | -the Software without restriction, including without limitation the rights to | |
8 | -use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of | |
9 | -the Software, and to permit persons to whom the Software is furnished to do so, | |
10 | -subject to the following conditions: | |
11 | - | |
12 | -The above copyright notice and this permission notice shall be included in all | |
13 | -copies or substantial portions of the Software. | |
14 | - | |
15 | -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | |
16 | -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS | |
17 | -FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR | |
18 | -COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER | |
19 | -IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN | |
20 | -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. |
node_modules/grunt-bosonic/node_modules/bosonic-transpiler/README.md deleted
1 | -# Bosonic transpiler | |
2 | - | |
3 | -> A node.js library that transpiles to-the-spec Web Components into polyfilled JavaScript | |
4 | - | |
5 | -## Getting started | |
6 | - | |
7 | -If you use Grunt, you may want to use [grunt-bosonic](https://github.com/bosonic/grunt-bosonic) instead. | |
8 | - | |
9 | -## Development | |
10 | - | |
11 | -### Contributing | |
12 | -In lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. | |
13 | - | |
14 | -### Running tests | |
15 | - | |
16 | -```shell | |
17 | -nodeunit test/transpiler.js | |
18 | -``` | |
19 | - | |
20 | -### Release History | |
21 | -_(Nothing yet)_ | |
22 | - | |
23 | - |
node_modules/grunt-bosonic/node_modules/bosonic-transpiler/index.js deleted
1 | -module.exports = require('./lib/transpiler'); |
node_modules/grunt-bosonic/node_modules/bosonic-transpiler/lib/macros/element.sjs deleted
1 | -macro def__property { | |
2 | - rule { | |
3 | - get $key:ident ($args1 (,) ...) { $body1 ... } , def__property set $key:ident ($args2 (,) ...) { $body2 ... } | |
4 | - } => { | |
5 | - $key : { | |
6 | - enumerable: true, | |
7 | - get : function() { | |
8 | - $body1 ... | |
9 | - }, | |
10 | - set : function($args2 (,) ...) { | |
11 | - $body2 ... | |
12 | - } | |
13 | - } | |
14 | - } | |
15 | - rule { | |
16 | - set $key:ident ($args2 (,) ...) { $body2 ... }, def__property get $key:ident ($args1 (,) ...) { $body1 ... } | |
17 | - } => { | |
18 | - $key : { | |
19 | - enumerable: true, | |
20 | - get : function() { | |
21 | - $body1 ... | |
22 | - }, | |
23 | - set : function($args2 (,) ...) { | |
24 | - $body2 ... | |
25 | - } | |
26 | - } | |
27 | - } | |
28 | - rule { get $key:ident ($args (,) ...) { $body ... } } => { | |
29 | - $key : { | |
30 | - enumerable: true, | |
31 | - get : function() { | |
32 | - $body ... | |
33 | - } | |
34 | - } | |
35 | - } | |
36 | - rule { set $key:ident ($args (,) ...) { $body ... } } => { | |
37 | - $key : { | |
38 | - enumerable: true, | |
39 | - set : function($args (,) ...) { | |
40 | - $body ... | |
41 | - } | |
42 | - } | |
43 | - } | |
44 | - rule { $key:ident : protected function($args (,) ...) { $body ... } } => { | |
45 | - $key : { | |
46 | - value : function($args (,) ...) { | |
47 | - $body ... | |
48 | - } | |
49 | - } | |
50 | - } | |
51 | - rule { $key:ident : function($args (,) ...) { $body ... } } => { | |
52 | - $key : { | |
53 | - enumerable: true, | |
54 | - value : function($args (,) ...) { | |
55 | - $body ... | |
56 | - } | |
57 | - } | |
58 | - } | |
59 | - rule { $key:ident : $value:expr } => { | |
60 | - $key : { value : $value } | |
61 | - } | |
62 | - rule { $key:ident : $value:lit } => { | |
63 | - $key : { value : $value } | |
64 | - } | |
65 | - rule { $key } => { | |
66 | - $key : { value : null } | |
67 | - } | |
68 | -} | |
69 | - | |
70 | -macro def__element { | |
71 | - case { _ $name:lit extends $extendee:ident { $properties:def__property (,) ... } } => { | |
72 | - var stx1 = #{$name}, | |
73 | - stx2 = #{$extendee}, | |
74 | - name = stx1[0].token.value, | |
75 | - extendee = stx2[0].token.value, | |
76 | - extendeeTag = extendee.decamelize(), | |
77 | - tagName = makeValue(name, #{$name}), | |
78 | - elementName = makeIdent(name.camelize(), #{$name}), | |
79 | - protoName = makeIdent(name.camelize() + 'Prototype', #{$name}); | |
80 | - | |
81 | - letstx $tagName = [tagName]; | |
82 | - letstx $elementName = [elementName]; | |
83 | - letstx $protoName = [protoName]; | |
84 | - | |
85 | - if (extendee === 'HTMLElement') { | |
86 | - return #{ | |
87 | - var $protoName = Object.create($extendee.prototype, { $properties (,) ... }); | |
88 | - window.$elementName = document.registerElement($tagName, { | |
89 | - prototype: $protoName | |
90 | - }); | |
91 | - } | |
92 | - } else if (extendeeTag.indexOf('-') === -1) { // We extend a native element | |
93 | - var htmlextendee = makeIdent('HTML'+extendee+'Element', #{$extendee}), | |
94 | - htmlextendeeTag = makeValue(extendeeTag, #{$extendee}); | |
95 | - letstx $htmlextendeeTag = [htmlextendeeTag]; | |
96 | - letstx $htmlextendee = [htmlextendee]; | |
97 | - return #{ | |
98 | - var $protoName = Object.create($htmlextendee.prototype, { $properties (,) ... }); | |
99 | - window.$elementName = document.registerElement($tagName, { | |
100 | - prototype: $protoName, | |
101 | - extends: $htmlextendeeTag | |
102 | - }); | |
103 | - Object.defineProperty($elementName.prototype, '_super', { | |
104 | - enumerable: false, | |
105 | - writable: false, | |
106 | - configurable: false, | |
107 | - value: $htmlextendee.prototype | |
108 | - }); | |
109 | - } | |
110 | - } else { | |
111 | - return #{ | |
112 | - var $protoName = Object.create($extendee.prototype, { $properties (,) ... }); | |
113 | - window.$elementName = document.registerElement($tagName, { | |
114 | - prototype: $protoName | |
115 | - }); | |
116 | - Object.defineProperty($elementName.prototype, '_super', { | |
117 | - enumerable: false, | |
118 | - writable: false, | |
119 | - configurable: false, | |
120 | - value: $extendee.prototype | |
121 | - }); | |
122 | - } | |
123 | - } | |
124 | - } | |
125 | - | |
126 | - case { $macro $name:lit extends $extendee:lit } => { | |
127 | - var stx = #{$extendee}, | |
128 | - extendee = stx[0].token.value, | |
129 | - extendeeName = makeIdent(extendee.camelize(), #{$extendee}); | |
130 | - | |
131 | - letstx $extendeeName = [extendeeName]; | |
132 | - | |
133 | - return #{ | |
134 | - $macro $name extends $extendeeName | |
135 | - } | |
136 | - } | |
137 | - | |
138 | - case { $macro $name:lit } => { | |
139 | - return #{ | |
140 | - $macro $name extends HTMLElement | |
141 | - } | |
142 | - } | |
143 | -} |
node_modules/grunt-bosonic/node_modules/bosonic-transpiler/lib/macros/template.sjs deleted
1 | -macro def__template { | |
2 | - case { _ $name:lit $html:lit } => { | |
3 | - var stx = #{$name}, | |
4 | - tagName = stx[0].token.value, | |
5 | - protoName = makeIdent(tagName.camelize() + 'Prototype', #{$name}); | |
6 | - | |
7 | - letstx $protoName = [protoName]; | |
8 | - | |
9 | - return #{ | |
10 | - Object.defineProperty($protoName, 'template', { | |
11 | - get: function() { | |
12 | - var fragment = document.createDocumentFragment(); | |
13 | - var div = fragment.appendChild(document.createElement('div')); | |
14 | - div.innerHTML = $html; | |
15 | - while (child = div.firstChild) { | |
16 | - fragment.insertBefore(child, div); | |
17 | - } | |
18 | - fragment.removeChild(div); | |
19 | - return { content: fragment } | |
20 | - } | |
21 | - }); | |
22 | - } | |
23 | - } | |
24 | -} |
node_modules/grunt-bosonic/node_modules/bosonic-transpiler/lib/transpiler.js deleted
1 | -/* | |
2 | - * Bosonic transpiler | |
3 | - * https://github.com/bosonic/transpiler | |
4 | - * | |
5 | - * Copyright (c) 2013 Raphaรซl Rougeron | |
6 | - * Licensed under the MIT license. | |
7 | - */ | |
8 | - | |
9 | -'use strict'; | |
10 | - | |
11 | -var _ = require('underscore'), | |
12 | - fs = require('fs'), | |
13 | - cheerio = require('cheerio'), | |
14 | - esprima = require('esprima'), | |
15 | - escodegen = require('escodegen'), | |
16 | - estraverse = require('estraverse'), | |
17 | - sweet = require('sweet.js'); | |
18 | - | |
19 | -function camelize(str) { | |
20 | - var camelized = str.replace(/(\-|_|\.|\s)+(.)?/g, function(match, separator, chr) { | |
21 | - return chr ? chr.toUpperCase() : ''; | |
22 | - }).replace(/^([A-Z])/, function(match, separator, chr) { | |
23 | - return match.toLowerCase(); | |
24 | - }); | |
25 | - return camelized.charAt(0).toUpperCase() + camelized.slice(1); | |
26 | -} | |
27 | -String.prototype.camelize = function() { | |
28 | - return camelize(this); | |
29 | -}; | |
30 | - | |
31 | -function decamelize(str) { | |
32 | - str = str.charAt(0).toLowerCase() + str.slice(1); | |
33 | - return str.replace(/([a-z\d])([A-Z])/g, '$1-$2').toLowerCase(); | |
34 | -} | |
35 | -String.prototype.decamelize = function() { | |
36 | - return decamelize(this); | |
37 | -}; | |
38 | - | |
39 | -function shimSelector(selector, elementName) { | |
40 | - var shimed = false, | |
41 | - selectorRegexes = [ | |
42 | - [/^:host\(([^:]+)\)$/, elementName+'$1'], | |
43 | - [/^:host(:hover|:active|:focus)$/, elementName+'$1'], | |
44 | - [/^:host(\[[^:]+\])$/, elementName+'$1'], | |
45 | - [/^:host$/, elementName], | |
46 | - [/^:ancestor\(([^:]+)\)$/, '$1 '+elementName], // deprecated; replaced by :host-context | |
47 | - [/^:host-context\(([^:]+)\)$/, '$1 '+elementName], | |
48 | - [/^::content/, elementName], | |
49 | - ]; | |
50 | - | |
51 | - for (var i = 0; i < selectorRegexes.length; i++) { | |
52 | - var re = selectorRegexes[i]; | |
53 | - if (selector.match(re[0])) { | |
54 | - shimed = true; | |
55 | - selector = selector.replace(re[0], re[1]); | |
56 | - break; | |
57 | - } | |
58 | - } | |
59 | - if (!shimed && !selector.match(new RegExp(elementName))) { | |
60 | - selector = elementName + ' ' + selector; | |
61 | - } | |
62 | - return selector; | |
63 | -} | |
64 | - | |
65 | -function shimStyles(styles, elementName) { | |
66 | - var css = require('css'), | |
67 | - parseTree = css.parse(styles); | |
68 | - | |
69 | - parseTree.stylesheet.rules.forEach(function(rule) { | |
70 | - rule.selectors.forEach(function(selector, i, selectorsRef) { | |
71 | - selectorsRef[i] = shimSelector(selector, elementName); | |
72 | - }); | |
73 | - }); | |
74 | - | |
75 | - return css.stringify(parseTree); | |
76 | -} | |
77 | - | |
78 | -function preCompile(elementName, script, template, extendee) { | |
79 | - var sourceAst = esprima.parse(script, { loc: true }), | |
80 | - fullElementName = extendee ? "'" + elementName + "' extends '" + extendee + "'" : "'" + elementName + "'"; | |
81 | - | |
82 | - // According to the spec, the last value of the <script> must be an object whose properties will define | |
83 | - // the new element's API. This object must therefore be wrapped in an ExpressionStatement | |
84 | - var exprStmt = sourceAst.body[sourceAst.body.length - 1]; | |
85 | - if (exprStmt.type !== 'ExpressionStatement') { | |
86 | - throw new Error('The last value of the <script> must be an ExpressionStatement'); | |
87 | - } | |
88 | - if (exprStmt.expression.type !== 'ObjectExpression') { | |
89 | - throw new Error('The last value of the <script> must be an ExpressionStatement whose expression must be an object literal'); | |
90 | - } | |
91 | - | |
92 | - // We grab all the code prior to the ExpressionStatement and prepend it to the code to output | |
93 | - var outerCode = []; | |
94 | - for (var i = 0; i <= sourceAst.body.length - 2; i++) { | |
95 | - outerCode.push(escodegen.generate(sourceAst.body[i])); | |
96 | - } | |
97 | - | |
98 | - var precompiledCode = outerCode.join("\n"); | |
99 | - precompiledCode+= '\ndef__element ' + fullElementName + ' ' + escodegen.generate(exprStmt.expression) + '\n'; | |
100 | - if (template) { | |
101 | - template = "'"+template.replace(/\r?\n/g, '')+"'"; | |
102 | - precompiledCode+= '\ndef__template "' + elementName + '" ' + template + '\n'; | |
103 | - } | |
104 | - | |
105 | - return precompiledCode; | |
106 | -} | |
107 | - | |
108 | -function compile(precompiledCode) { | |
109 | - var macros = fs.readFileSync(__dirname + '/macros/element.sjs', 'utf8') | |
110 | - + '\n' + fs.readFileSync(__dirname + '/macros/template.sjs', 'utf8'); | |
111 | - return sweet.compile(macros + '\n' + precompiledCode, { readableNames: true }).code; | |
112 | -} | |
113 | - | |
114 | -function transpile(htmlString) { | |
115 | - var mainScript, | |
116 | - sourceAst, | |
117 | - scriptDeps = [], | |
118 | - cssDeps = [], | |
119 | - $ = cheerio.load(htmlString), | |
120 | - element = $('element'), | |
121 | - template = $('template').html(), | |
122 | - style = $('style').html(), | |
123 | - scripts = $('script'), | |
124 | - stylesheets = $('link[rel=stylesheet]'), | |
125 | - elementName = element.attr('name'), | |
126 | - extendee = element.attr('extends'); | |
127 | - | |
128 | - scripts.each(function(i, script) { | |
129 | - if ($(this).attr('src')) { | |
130 | - scriptDeps.push($(this).attr('src')); | |
131 | - } else { | |
132 | - if (mainScript !== undefined) { | |
133 | - throw new Error('Only one <script> is permitted in a Web Component declaration'); | |
134 | - } | |
135 | - mainScript = $(this).html(); | |
136 | - } | |
137 | - }); | |
138 | - | |
139 | - stylesheets.each(function(i, link) { | |
140 | - cssDeps.push($(this).attr('href')); | |
141 | - }); | |
142 | - | |
143 | - if (style !== null) { | |
144 | - style = shimStyles(style, elementName); | |
145 | - } | |
146 | - | |
147 | - // We can't normalize whitespace during the first parse because it will normalize WS in the JS too | |
148 | - if (template !== null) { | |
149 | - $ = cheerio.load(htmlString, { | |
150 | - normalizeWhitespace: true | |
151 | - }); | |
152 | - template = $('template').html(); | |
153 | - } | |
154 | - | |
155 | - if (mainScript === undefined) { | |
156 | - throw new Error('A <script> is mandatory in a Web Component declaration'); | |
157 | - } | |
158 | - | |
159 | - var precompiledCode = preCompile(elementName, mainScript, template, extendee); | |
160 | - | |
161 | - var output = '(function () {\n' + compile(precompiledCode) + '\n}());\n'; | |
162 | - | |
163 | - // We do another pass with Esprima in order to indent JS code correctly | |
164 | - var outputAst = esprima.parse(output); | |
165 | - output = escodegen.generate(outputAst); | |
166 | - | |
167 | - return { | |
168 | - js: output, | |
169 | - css: style, | |
170 | - template: template, | |
171 | - scripts: scriptDeps, | |
172 | - stylesheets: cssDeps | |
173 | - }; | |
174 | -} | |
175 | - | |
176 | -exports = module.exports = { | |
177 | - transpile: transpile, | |
178 | - preCompile: preCompile, | |
179 | - compile: compile, | |
180 | - shimStyles: shimStyles, | |
181 | - shimSelector: shimSelector | |
182 | -} | |
183 | - |
node_modules/grunt-bosonic/node_modules/bosonic-transpiler/package.json deleted
1 | -{ | |
2 | - "name": "bosonic-transpiler", | |
3 | - "version": "0.4.6", | |
4 | - "description": "A node.js library that transpiles to-the-spec Web Components into polyfilled JavaScript", | |
5 | - "main": "index.js", | |
6 | - "scripts": { | |
7 | - "test": "echo \"Error: no test specified\" && exit 1" | |
8 | - }, | |
9 | - "repository": { | |
10 | - "type": "git", | |
11 | - "url": "git://github.com/bosonic/transpiler.git" | |
12 | - }, | |
13 | - "author": { | |
14 | - "name": "Raphaรซl Rougeron", | |
15 | - "email": "goldoraf@gmail.com" | |
16 | - }, | |
17 | - "license": "MIT", | |
18 | - "bugs": { | |
19 | - "url": "https://github.com/bosonic/transpiler/issues" | |
20 | - }, | |
21 | - "dependencies": { | |
22 | - "underscore": "~1.6.0", | |
23 | - "cheerio": "~0.13.1", | |
24 | - "esprima": "~1.0.4", | |
25 | - "escodegen": "~1.2.0", | |
26 | - "estraverse": "~1.5.0", | |
27 | - "css": "^1.6.0", | |
28 | - "sweet.js": "^0.5.0" | |
29 | - }, | |
30 | - "devDependencies": { | |
31 | - "nodeunit": "~0.8.5" | |
32 | - }, | |
33 | - "contributors": [ | |
34 | - { | |
35 | - "name": "Raphaรซl Rougeron", | |
36 | - "email": "goldoraf@gmail.com" | |
37 | - } | |
38 | - ], | |
39 | - "readme": "# Bosonic transpiler\n\n> A node.js library that transpiles to-the-spec Web Components into polyfilled JavaScript\n\n## Getting started\n\nIf you use Grunt, you may want to use [grunt-bosonic](https://github.com/bosonic/grunt-bosonic) instead.\n\n## Development\n\n### Contributing\nIn lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality.\n\n### Running tests\n\n```shell\nnodeunit test/transpiler.js\n```\n\n### Release History\n_(Nothing yet)_\n\n\n", | |
40 | - "readmeFilename": "README.md", | |
41 | - "_id": "bosonic-transpiler@0.4.6", | |
42 | - "_from": "bosonic-transpiler@0.4.*" | |
43 | -} |
node_modules/grunt-bosonic/node_modules/bosonic-transpiler/test/expected/compiled_spec_sample_script.js deleted
1 | -function start() { | |
2 | - this.tick(); | |
3 | - this._interval = window.setInterval(this.tick.bind(this), 1000); | |
4 | -} | |
5 | -function stop() { | |
6 | - window.clearInterval(this._interval); | |
7 | -} | |
8 | -function fmt(n) { | |
9 | - return (n < 10 ? '0' : '') + n; | |
10 | -} | |
11 | -var BTestPrototype = Object.create(HTMLElement.prototype, { | |
12 | - readyCallback: { | |
13 | - enumerable: true, | |
14 | - value: function () { | |
15 | - this._root = this.createShadowRoot(); | |
16 | - this._root.appendChild(this.template.content.cloneNode()); | |
17 | - if (this.parentElement) { | |
18 | - start.call(this); | |
19 | - } | |
20 | - } | |
21 | - }, | |
22 | - insertedCallback: { value: start }, | |
23 | - removedCallback: { value: stop }, | |
24 | - tick: { | |
25 | - enumerable: true, | |
26 | - value: function () { | |
27 | - var now = new Date(); | |
28 | - this._root.querySelector('hh').textContent = fmt(now.getHours()); | |
29 | - this._root.querySelector('sep').style.visibility = now.getSeconds() % 2 ? 'visible' : 'hidden'; | |
30 | - this._root.querySelector('mm').textContent = fmt(now.getMinutes()); | |
31 | - } | |
32 | - } | |
33 | - }); | |
34 | -window.BTest = document.registerElement('b-test', { prototype: BTestPrototype }); | |
35 | -Object.defineProperty(BTestPrototype, 'template', { | |
36 | - get: function () { | |
37 | - var fragment = document.createDocumentFragment(); | |
38 | - var div = fragment.appendChild(document.createElement('div')); | |
39 | - div.innerHTML = '<div><content></content></div>'; | |
40 | - while (child = div.firstChild) { | |
41 | - fragment.insertBefore(child, div); | |
42 | - } | |
43 | - fragment.removeChild(div); | |
44 | - return { content: fragment }; | |
45 | - } | |
46 | -}); | |
47 | 0 | \ No newline at end of file |
node_modules/grunt-bosonic/node_modules/bosonic-transpiler/test/expected/extended_bosonic_element.js deleted
1 | -(function () { | |
2 | - var BModalPrototype = Object.create(BDialog.prototype, { | |
3 | - dummy: { | |
4 | - enumerable: true, | |
5 | - value: function () { | |
6 | - console.log('bar'); | |
7 | - } | |
8 | - } | |
9 | - }); | |
10 | - window.BModal = document.registerElement('b-modal', { prototype: BModalPrototype }); | |
11 | - Object.defineProperty(BModal.prototype, '_super', { | |
12 | - enumerable: false, | |
13 | - writable: false, | |
14 | - configurable: false, | |
15 | - value: BDialog.prototype | |
16 | - }); | |
17 | -}()); | |
18 | 0 | \ No newline at end of file |
node_modules/grunt-bosonic/node_modules/bosonic-transpiler/test/expected/extended_native_element.js deleted
1 | -(function () { | |
2 | - var SuperButtonPrototype = Object.create(HTMLButtonElement.prototype, { | |
3 | - dummy: { | |
4 | - enumerable: true, | |
5 | - value: function () { | |
6 | - console.log('bar'); | |
7 | - } | |
8 | - } | |
9 | - }); | |
10 | - window.SuperButton = document.registerElement('super-button', { | |
11 | - prototype: SuperButtonPrototype, | |
12 | - extends: 'button' | |
13 | - }); | |
14 | - Object.defineProperty(SuperButton.prototype, '_super', { | |
15 | - enumerable: false, | |
16 | - writable: false, | |
17 | - configurable: false, | |
18 | - value: HTMLButtonElement.prototype | |
19 | - }); | |
20 | -}()); | |
21 | 0 | \ No newline at end of file |
node_modules/grunt-bosonic/node_modules/bosonic-transpiler/test/expected/extended_spec_sample.js deleted
1 | -(function () { | |
2 | - var SuperTickTockClockPrototype = Object.create(TickTockClock.prototype, { | |
3 | - tick: { | |
4 | - enumerable: true, | |
5 | - value: function () { | |
6 | - this._super.tick.call(this); | |
7 | - console.log('tick'); | |
8 | - } | |
9 | - } | |
10 | - }); | |
11 | - window.SuperTickTockClock = document.registerElement('super-tick-tock-clock', { prototype: SuperTickTockClockPrototype }); | |
12 | - Object.defineProperty(SuperTickTockClock.prototype, '_super', { | |
13 | - enumerable: false, | |
14 | - writable: false, | |
15 | - configurable: false, | |
16 | - value: TickTockClock.prototype | |
17 | - }); | |
18 | -}()); | |
19 | 0 | \ No newline at end of file |
node_modules/grunt-bosonic/node_modules/bosonic-transpiler/test/expected/getter_setter_bug.js deleted
1 | -var BTestPrototype = Object.create(HTMLElement.prototype, { | |
2 | - width: { | |
3 | - enumerable: true, | |
4 | - get: function () { | |
5 | - return 100; | |
6 | - } | |
7 | - }, | |
8 | - height: { | |
9 | - enumerable: true, | |
10 | - get: function () { | |
11 | - return 50; | |
12 | - } | |
13 | - }, | |
14 | - margin: { | |
15 | - enumerable: true, | |
16 | - set: function (val) { | |
17 | - this.val = val; | |
18 | - } | |
19 | - } | |
20 | - }); | |
21 | -window.BTest = document.registerElement('b-test', { prototype: BTestPrototype }); | |
22 | 0 | \ No newline at end of file |
node_modules/grunt-bosonic/node_modules/bosonic-transpiler/test/expected/precompiled_spec_sample_script.js deleted
1 | -function start() { | |
2 | - this.tick(); | |
3 | - this._interval = window.setInterval(this.tick.bind(this), 1000); | |
4 | -} | |
5 | -function stop() { | |
6 | - window.clearInterval(this._interval); | |
7 | -} | |
8 | -function fmt(n) { | |
9 | - return (n < 10 ? '0' : '') + n; | |
10 | -} | |
11 | -def__element 'b-test' { | |
12 | - readyCallback: function () { | |
13 | - this._root = this.createShadowRoot(); | |
14 | - this._root.appendChild(this.template.content.cloneNode()); | |
15 | - if (this.parentElement) { | |
16 | - start.call(this); | |
17 | - } | |
18 | - }, | |
19 | - insertedCallback: start, | |
20 | - removedCallback: stop, | |
21 | - tick: function () { | |
22 | - var now = new Date(); | |
23 | - this._root.querySelector('hh').textContent = fmt(now.getHours()); | |
24 | - this._root.querySelector('sep').style.visibility = now.getSeconds() % 2 ? 'visible' : 'hidden'; | |
25 | - this._root.querySelector('mm').textContent = fmt(now.getMinutes()); | |
26 | - } | |
27 | -} | |
28 | - | |
29 | -def__template "b-test" '<div><content></content></div>' |
node_modules/grunt-bosonic/node_modules/bosonic-transpiler/test/expected/shimed_shadowCSS_sample.css deleted
node_modules/grunt-bosonic/node_modules/bosonic-transpiler/test/expected/spec_sample.css deleted
node_modules/grunt-bosonic/node_modules/bosonic-transpiler/test/expected/spec_sample.js deleted
1 | -(function () { | |
2 | - function start() { | |
3 | - this.tick(); | |
4 | - this._interval = window.setInterval(this.tick.bind(this), 1000); | |
5 | - } | |
6 | - function stop() { | |
7 | - window.clearInterval(this._interval); | |
8 | - } | |
9 | - function fmt(n) { | |
10 | - return (n < 10 ? '0' : '') + n; | |
11 | - } | |
12 | - var TickTockClockPrototype = Object.create(HTMLElement.prototype, { | |
13 | - readyCallback: { | |
14 | - enumerable: true, | |
15 | - value: function () { | |
16 | - this._root = this.createShadowRoot(); | |
17 | - this._root.appendChild(this.template.content.cloneNode()); | |
18 | - if (this.parentElement) { | |
19 | - start.call(this); | |
20 | - } | |
21 | - } | |
22 | - }, | |
23 | - insertedCallback: { value: start }, | |
24 | - removedCallback: { value: stop }, | |
25 | - tick: { | |
26 | - enumerable: true, | |
27 | - value: function () { | |
28 | - var now = new Date(); | |
29 | - this._root.querySelector('hh').textContent = fmt(now.getHours()); | |
30 | - this._root.querySelector('sep').style.visibility = now.getSeconds() % 2 ? 'visible' : 'hidden'; | |
31 | - this._root.querySelector('mm').textContent = fmt(now.getMinutes()); | |
32 | - } | |
33 | - } | |
34 | - }); | |
35 | - window.TickTockClock = document.registerElement('tick-tock-clock', { prototype: TickTockClockPrototype }); | |
36 | - Object.defineProperty(TickTockClockPrototype, 'template', { | |
37 | - get: function () { | |
38 | - var fragment = document.createDocumentFragment(); | |
39 | - var div = fragment.appendChild(document.createElement('div')); | |
40 | - div.innerHTML = ' <span id="hh"></span> <span id="sep">:</span> <span id="mm"></span> '; | |
41 | - while (child = div.firstChild) { | |
42 | - fragment.insertBefore(child, div); | |
43 | - } | |
44 | - fragment.removeChild(div); | |
45 | - return { content: fragment }; | |
46 | - } | |
47 | - }); | |
48 | -}()); | |
49 | 0 | \ No newline at end of file |
node_modules/grunt-bosonic/node_modules/bosonic-transpiler/test/fixtures/extended_bosonic_element.html deleted
node_modules/grunt-bosonic/node_modules/bosonic-transpiler/test/fixtures/extended_native_element.html deleted
node_modules/grunt-bosonic/node_modules/bosonic-transpiler/test/fixtures/extended_spec_sample.html deleted
node_modules/grunt-bosonic/node_modules/bosonic-transpiler/test/fixtures/getter_setter_bug.js deleted
node_modules/grunt-bosonic/node_modules/bosonic-transpiler/test/fixtures/protected_function.html deleted
node_modules/grunt-bosonic/node_modules/bosonic-transpiler/test/fixtures/sample_with_deps.html deleted
1 | -<element name="sample-with-deps"> | |
2 | - <template> | |
3 | - <div></div> | |
4 | - </template> | |
5 | - <link href="../node_modules/pikaday/css/pikaday.css" rel="stylesheet"> | |
6 | - <script src="../node_modules/moment/moment.js"></script> | |
7 | - <script> | |
8 | - ({ | |
9 | - readyCallback: function () { | |
10 | - | |
11 | - } | |
12 | - }); | |
13 | - </script> | |
14 | - <script src="../node_modules/pikaday/pikaday.js"></script> | |
15 | -</element> | |
16 | 0 | \ No newline at end of file |
node_modules/grunt-bosonic/node_modules/bosonic-transpiler/test/fixtures/shadowCSS_sample.css deleted
node_modules/grunt-bosonic/node_modules/bosonic-transpiler/test/fixtures/spec_sample.html deleted
1 | -<element name="tick-tock-clock"> | |
2 | - <template> | |
3 | - <span id="hh"></span> | |
4 | - <span id="sep">:</span> | |
5 | - <span id="mm"></span> | |
6 | - </template> | |
7 | - <style> | |
8 | - :host { | |
9 | - border: 1px solid #ccc; | |
10 | - } | |
11 | - </style> | |
12 | - <script> | |
13 | - function start() { | |
14 | - this.tick(); | |
15 | - this._interval = window.setInterval(this.tick.bind(this), 1000); | |
16 | - } | |
17 | - function stop() { | |
18 | - window.clearInterval(this._interval); | |
19 | - } | |
20 | - function fmt(n) { | |
21 | - return (n < 10 ? '0' : '') + n; | |
22 | - } | |
23 | - | |
24 | - ({ | |
25 | - readyCallback: function () { | |
26 | - this._root = this.createShadowRoot(); | |
27 | - this._root.appendChild(this.template.content.cloneNode()); | |
28 | - if (this.parentElement) { | |
29 | - start.call(this); | |
30 | - } | |
31 | - }, | |
32 | - insertedCallback: start, | |
33 | - removedCallback: stop, | |
34 | - tick: function () { | |
35 | - var now = new Date(); | |
36 | - this._root.querySelector('hh').textContent = fmt(now.getHours()); | |
37 | - this._root.querySelector('sep').style.visibility = | |
38 | - now.getSeconds() % 2 ? 'visible' : 'hidden'; | |
39 | - this._root.querySelector('mm').textContent = fmt(now.getMinutes()); | |
40 | - } | |
41 | - }); | |
42 | - </script> | |
43 | -</element> | |
44 | 0 | \ No newline at end of file |
node_modules/grunt-bosonic/node_modules/bosonic-transpiler/test/fixtures/spec_sample_script.js deleted
1 | -function start() { | |
2 | - this.tick(); | |
3 | - this._interval = window.setInterval(this.tick.bind(this), 1000); | |
4 | -} | |
5 | -function stop() { | |
6 | - window.clearInterval(this._interval); | |
7 | -} | |
8 | -function fmt(n) { | |
9 | - return (n < 10 ? '0' : '') + n; | |
10 | -} | |
11 | - | |
12 | -({ | |
13 | - readyCallback: function () { | |
14 | - this._root = this.createShadowRoot(); | |
15 | - this._root.appendChild(this.template.content.cloneNode()); | |
16 | - if (this.parentElement) { | |
17 | - start.call(this); | |
18 | - } | |
19 | - }, | |
20 | - insertedCallback: start, | |
21 | - removedCallback: stop, | |
22 | - tick: function () { | |
23 | - var now = new Date(); | |
24 | - this._root.querySelector('hh').textContent = fmt(now.getHours()); | |
25 | - this._root.querySelector('sep').style.visibility = | |
26 | - now.getSeconds() % 2 ? 'visible' : 'hidden'; | |
27 | - this._root.querySelector('mm').textContent = fmt(now.getMinutes()); | |
28 | - } | |
29 | -}); | |
30 | 0 | \ No newline at end of file |
node_modules/grunt-bosonic/node_modules/bosonic-transpiler/test/transpiler.js deleted
1 | -var fs = require('fs'), | |
2 | - transpiler = require('../'), | |
3 | - sweet = require('sweet.js'); | |
4 | - | |
5 | -exports.testSimpleTranspilation = function(test) { | |
6 | - test.expect(4); | |
7 | - var transpiled = transpiler.transpile(fs.readFileSync(__dirname + '/fixtures/spec_sample.html', 'utf8')), | |
8 | - expected = { | |
9 | - js: fs.readFileSync(__dirname + '/expected/spec_sample.js', 'utf8'), | |
10 | - css: fs.readFileSync(__dirname + '/expected/spec_sample.css', 'utf8') | |
11 | - }; | |
12 | - test.equal(transpiled.js, expected.js, "the JS should be transpiled"); | |
13 | - test.equal(transpiled.css, expected.css, "the CSS should be shimmed"); | |
14 | - test.equal(transpiled.scripts.length, 0); | |
15 | - test.equal(transpiled.stylesheets.length, 0); | |
16 | - test.done(); | |
17 | -} | |
18 | - | |
19 | -exports.testExtendsTranspilation = function(test) { | |
20 | - test.expect(1); | |
21 | - var transpiled = transpiler.transpile(fs.readFileSync(__dirname + '/fixtures/extended_spec_sample.html', 'utf8')), | |
22 | - expected = fs.readFileSync(__dirname + '/expected/extended_spec_sample.js', 'utf8'); | |
23 | - test.equal(transpiled.js, expected, "the JS should be transpiled"); | |
24 | - test.done(); | |
25 | -} | |
26 | - | |
27 | -exports.testExtendsNativeElementTranspilation = function(test) { | |
28 | - test.expect(1); | |
29 | - var transpiled = transpiler.transpile(fs.readFileSync(__dirname + '/fixtures/extended_native_element.html', 'utf8')), | |
30 | - expected = fs.readFileSync(__dirname + '/expected/extended_native_element.js', 'utf8'); | |
31 | - test.equal(transpiled.js, expected, "the JS should be transpiled"); | |
32 | - test.done(); | |
33 | -} | |
34 | - | |
35 | -exports.testExtendsBosonicElementTranspilation = function(test) { | |
36 | - test.expect(1); | |
37 | - var transpiled = transpiler.transpile(fs.readFileSync(__dirname + '/fixtures/extended_bosonic_element.html', 'utf8')), | |
38 | - expected = fs.readFileSync(__dirname + '/expected/extended_bosonic_element.js', 'utf8'); | |
39 | - test.equal(transpiled.js, expected, "the JS should be transpiled"); | |
40 | - test.done(); | |
41 | -} | |
42 | - | |
43 | -exports.testScriptDependency = function(test) { | |
44 | - test.expect(1); | |
45 | - var transpiled = transpiler.transpile(fs.readFileSync(__dirname + '/fixtures/sample_with_deps.html', 'utf8')), | |
46 | - expected = { | |
47 | - scripts: ["../node_modules/moment/moment.js", "../node_modules/pikaday/pikaday.js"] | |
48 | - }; | |
49 | - test.deepEqual(transpiled.scripts, expected.scripts, "the script dependencies should be found"); | |
50 | - test.done(); | |
51 | -} | |
52 | - | |
53 | -exports.testStylesheetDependency = function(test) { | |
54 | - test.expect(1); | |
55 | - var transpiled = transpiler.transpile(fs.readFileSync(__dirname + '/fixtures/sample_with_deps.html', 'utf8')), | |
56 | - expected = { | |
57 | - stylesheets: ["../node_modules/pikaday/css/pikaday.css"] | |
58 | - }; | |
59 | - test.deepEqual(transpiled.stylesheets, expected.stylesheets, "the stylesheets dependencies should be found"); | |
60 | - test.done(); | |
61 | -} | |
62 | - | |
63 | -exports.testStylesShiming = function(test) { | |
64 | - var tests = [ | |
65 | - [':host', 'b-dummy'], | |
66 | - [':host:hover', 'b-dummy:hover'], | |
67 | - [':host[visible]', 'b-dummy[visible]'], | |
68 | - [':host(.cssClass)', 'b-dummy.cssClass'], | |
69 | - [':ancestor(.cssClass)', '.cssClass b-dummy'], | |
70 | - [':host-context(.cssClass)', '.cssClass b-dummy'], | |
71 | - ['p', 'b-dummy p'], | |
72 | - ['b-dummy', 'b-dummy'], | |
73 | - ['b-dummy p', 'b-dummy p'], | |
74 | - ['::content p', 'b-dummy p'] | |
75 | - ]; | |
76 | - test.expect(tests.length); | |
77 | - tests.forEach(function(rule) { | |
78 | - test.equal(transpiler.shimSelector(rule[0], 'b-dummy'), rule[1]); | |
79 | - }); | |
80 | - test.done(); | |
81 | -} | |
82 | - | |
83 | -exports.testStylesheetShiming = function(test) { | |
84 | - var stylesheet = fs.readFileSync(__dirname + '/fixtures/shadowCSS_sample.css', 'utf8'), | |
85 | - shimmed = fs.readFileSync(__dirname + '/expected/shimed_shadowCSS_sample.css', 'utf8'); | |
86 | - | |
87 | - test.expect(1); | |
88 | - test.equal(transpiler.shimStyles(stylesheet, 'b-dummy'), shimmed); | |
89 | - test.done(); | |
90 | -} | |
91 | - | |
92 | -exports.testPreCompile = function(test) { | |
93 | - test.expect(1); | |
94 | - var script = fs.readFileSync(__dirname + '/fixtures/spec_sample_script.js', 'utf8'), | |
95 | - code = transpiler.preCompile('b-test', script, '<div><content></content></div>'), | |
96 | - expected = fs.readFileSync(__dirname + '/expected/precompiled_spec_sample_script.js', 'utf8'); | |
97 | - test.equal(code, expected); | |
98 | - test.done(); | |
99 | -} | |
100 | - | |
101 | -exports.testCompile = function(test) { | |
102 | - test.expect(1); | |
103 | - var code = transpiler.compile(fs.readFileSync(__dirname + '/expected/precompiled_spec_sample_script.js', 'utf8')), | |
104 | - expected = fs.readFileSync(__dirname + '/expected/compiled_spec_sample_script.js', 'utf8'); | |
105 | - test.equal(code, expected); | |
106 | - test.done(); | |
107 | -} | |
108 | - | |
109 | -exports.testGetterSetterBug = function(test) { | |
110 | - test.expect(1); | |
111 | - var code = transpiler.compile(fs.readFileSync(__dirname + '/fixtures/getter_setter_bug.js', 'utf8')), | |
112 | - expected = fs.readFileSync(__dirname + '/expected/getter_setter_bug.js', 'utf8'); | |
113 | - test.equal(code, expected); | |
114 | - test.done(); | |
115 | -} |
node_modules/grunt-bosonic/package.json deleted
1 | -{ | |
2 | - "name": "grunt-bosonic", | |
3 | - "version": "0.4.0", | |
4 | - "description": "> A Grunt task that transpiles to-the-spec Web Components into polyfilled JavaScript", | |
5 | - "main": "Gruntfile.js", | |
6 | - "scripts": { | |
7 | - "test": "grunt test" | |
8 | - }, | |
9 | - "repository": { | |
10 | - "type": "git", | |
11 | - "url": "git://github.com/bosonic/grunt-bosonic.git" | |
12 | - }, | |
13 | - "author": { | |
14 | - "name": "Raphaรซl Rougeron", | |
15 | - "email": "goldoraf@gmail.com" | |
16 | - }, | |
17 | - "license": "MIT", | |
18 | - "bugs": { | |
19 | - "url": "https://github.com/bosonic/grunt-bosonic/issues" | |
20 | - }, | |
21 | - "dependencies": { | |
22 | - "bosonic-transpiler": "0.4.*" | |
23 | - }, | |
24 | - "devDependencies": { | |
25 | - "grunt": "~0.4.2", | |
26 | - "grunt-contrib-clean": "~0.5.0" | |
27 | - }, | |
28 | - "peerDependencies": { | |
29 | - "grunt": "0.4.x" | |
30 | - }, | |
31 | - "contributors": [ | |
32 | - { | |
33 | - "name": "Raphaรซl Rougeron", | |
34 | - "email": "goldoraf@gmail.com" | |
35 | - } | |
36 | - ], | |
37 | - "readme": "# grunt-bosonic\n\n> A Grunt task that transpiles to-the-spec Web Components into polyfilled JavaScript\n\n## Getting Started\nThis plugin requires Grunt `~0.4.2`\n\nIf you haven't used [Grunt](http://gruntjs.com/) before, be sure to check out the [Getting Started](http://gruntjs.com/getting-started) guide, as it explains how to create a [Gruntfile](http://gruntjs.com/sample-gruntfile) as well as install and use Grunt plugins. Once you're familiar with that process, you may install this plugin with this command:\n\n```shell\nnpm install grunt-bosonic --save-dev\n```\n\nOnce the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:\n\n```js\ngrunt.loadNpmTasks('grunt-bosonic');\n```\n\n## The \"bosonic\" task\n\n### Usage\nIn your project's Gruntfile, add a section named `bosonic` to the data object passed into `grunt.initConfig()`.\n\n```js\ngrunt.initConfig({\n bosonic: {\n my_components: {\n src: ['src/**/*.html'],\n css: 'dist/components.css',\n js: 'dist/components.js'\n }\n});\n```\n\n## Contributing\nIn lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Lint and test your code using [Grunt](http://gruntjs.com/).\n\n## Release History\n_(Nothing yet)_", | |
38 | - "readmeFilename": "README.md", | |
39 | - "_id": "grunt-bosonic@0.4.0", | |
40 | - "_from": "grunt-bosonic@" | |
41 | -} |
node_modules/grunt-bosonic/samples/spec_sample.html deleted
1 | -<element name="tick-tock-clock"> | |
2 | - <template> | |
3 | - <span id="hh"></span> | |
4 | - <span id="sep">:</span> | |
5 | - <span id="mm"></span> | |
6 | - </template> | |
7 | - <script> | |
8 | - function start() { | |
9 | - this.tick(); | |
10 | - this._interval = window.setInterval(this.tick.bind(this), 1000); | |
11 | - } | |
12 | - function stop() { | |
13 | - window.clearInterval(this._interval); | |
14 | - } | |
15 | - function fmt(n) { | |
16 | - return (n < 10 ? '0' : '') + n; | |
17 | - } | |
18 | - | |
19 | - ({ | |
20 | - readyCallback: function () { | |
21 | - this._root = this.createShadowRoot(); | |
22 | - this._root.appendChild(this.template.content.cloneNode()); | |
23 | - if (this.parentElement) { | |
24 | - start.call(this); | |
25 | - } | |
26 | - }, | |
27 | - insertedCallback: start, | |
28 | - removedCallback: stop, | |
29 | - tick: function () { | |
30 | - var now = new Date(); | |
31 | - this._root.querySelector('hh').textContent = fmt(now.getHours()); | |
32 | - this._root.querySelector('sep').style.visibility = | |
33 | - now.getSeconds() % 2 ? 'visible' : 'hidden'; | |
34 | - this._root.querySelector('mm').textContent = fmt(now.getMinutes()); | |
35 | - } | |
36 | - }); | |
37 | - </script> | |
38 | -</element> | |
39 | 0 | \ No newline at end of file |
node_modules/grunt-bosonic/tasks/bosonic.js deleted
1 | -/* | |
2 | - * grunt-bosonic | |
3 | - * https://github.com/bosonic/grunt-bosonic | |
4 | - * | |
5 | - * Copyright (c) 2013 Raphaรซl Rougeron | |
6 | - * Licensed under the MIT license. | |
7 | - */ | |
8 | - | |
9 | -'use strict'; | |
10 | - | |
11 | -var path = require('path'), | |
12 | - transpiler = require('bosonic-transpiler'); | |
13 | - | |
14 | -module.exports = function(grunt) { | |
15 | - | |
16 | - grunt.registerMultiTask('bosonic', 'A Grunt task that transpiles to-the-spec Web Components into polyfilled JavaScript', function() { | |
17 | - var css = [], js = []; | |
18 | - | |
19 | - this.filesSrc.forEach(function(filepath) { | |
20 | - var fileDir = path.dirname(filepath), | |
21 | - transpiled = transpiler.transpile(grunt.file.read(filepath)); | |
22 | - transpiled.stylesheets.forEach(function(href) { | |
23 | - css.push(grunt.file.read(fileDir + '/' + href)); | |
24 | - }); | |
25 | - css.push(transpiled.css); | |
26 | - transpiled.scripts.forEach(function(src) { | |
27 | - js.push(grunt.file.read(fileDir + '/' + src)); | |
28 | - }); | |
29 | - js.push(transpiled.js); | |
30 | - }); | |
31 | - | |
32 | - var jsFile = this.data.js, | |
33 | - cssFile = this.data.css; | |
34 | - | |
35 | - grunt.file.write(jsFile, js.join("\n")); | |
36 | - grunt.file.write(cssFile, css.join("\n")); | |
37 | - }); | |
38 | - | |
39 | -} | |
40 | - |
node_modules/grunt/.npmignore deleted
node_modules/grunt/CONTRIBUTING.md deleted
1 | -Please see the [Contributing to grunt](http://gruntjs.com/contributing) guide for information on contributing to this project. |
node_modules/grunt/LICENSE-MIT deleted
1 | -Copyright (c) 2014 "Cowboy" Ben Alman | |
2 | - | |
3 | -Permission is hereby granted, free of charge, to any person | |
4 | -obtaining a copy of this software and associated documentation | |
5 | -files (the "Software"), to deal in the Software without | |
6 | -restriction, including without limitation the rights to use, | |
7 | -copy, modify, merge, publish, distribute, sublicense, and/or sell | |
8 | -copies of the Software, and to permit persons to whom the | |
9 | -Software is furnished to do so, subject to the following | |
10 | -conditions: | |
11 | - | |
12 | -The above copyright notice and this permission notice shall be | |
13 | -included in all copies or substantial portions of the Software. | |
14 | - | |
15 | -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | |
16 | -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES | |
17 | -OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND | |
18 | -NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT | |
19 | -HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, | |
20 | -WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING | |
21 | -FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR | |
22 | -OTHER DEALINGS IN THE SOFTWARE. |
node_modules/grunt/README.md deleted
1 | -# Grunt: The JavaScript Task Runner | |
2 | - | |
3 | -[](http://travis-ci.org/gruntjs/grunt) | |
4 | -<a href="https://ci.appveyor.com/project/gruntjs/grunt"><img src="https://ci.appveyor.com/api/projects/status/32r7s2skrgm9ubva/branch/master" alt="Build Status: Windows" height="18" /></a> | |
5 | -[](http://gruntjs.com/) | |
6 | - | |
7 | -<img align="right" height="260" src="http://gruntjs.com/img/grunt-logo-no-wordmark.svg"> | |
8 | - | |
9 | - | |
10 | -### Documentation | |
11 | - | |
12 | -Visit the [gruntjs.com](http://gruntjs.com/) website for all the things. | |
13 | - | |
14 | -### Support / Contributing | |
15 | -Before you make an issue, please read our [Contributing](http://gruntjs.com/contributing) guide. | |
16 | - | |
17 | -You can find the grunt team in [#grunt on irc.freenode.net](http://webchat.freenode.net/?channels=grunt). | |
18 | - | |
19 | -### Release History | |
20 | -See the [CHANGELOG](CHANGELOG). |
node_modules/grunt/appveyor.yml deleted
1 | -# http://www.appveyor.com/docs/appveyor-yml | |
2 | - | |
3 | -# Fix line endings in Windows. (runs before repo cloning) | |
4 | -init: | |
5 | - - git config --global core.autocrlf input | |
6 | - | |
7 | -# Test against these versions of Node.js. | |
8 | -environment: | |
9 | - matrix: | |
10 | - - nodejs_version: "0.10" | |
11 | - - nodejs_version: "0.8" | |
12 | - - nodejs_version: "0.11" | |
13 | - | |
14 | -# Allow failing jobs for bleeding-edge Node.js versions. | |
15 | -matrix: | |
16 | - allow_failures: | |
17 | - - nodejs_version: "0.11" | |
18 | - | |
19 | -# Install scripts. (runs after repo cloning) | |
20 | -install: | |
21 | - # Get the latest stable version of Node 0.STABLE.latest | |
22 | - - ps: Update-NodeJsInstallation (Get-NodeJsLatestBuild $env:nodejs_version) | |
23 | - # Typical npm stuff. | |
24 | - - npm install | |
25 | - # Grunt-specific stuff. | |
26 | - - npm install -g grunt-cli | |
27 | - - npm uninstall grunt # https://github.com/npm/npm/issues/3958 | |
28 | - | |
29 | -# Post-install test scripts. | |
30 | -test_script: | |
31 | - # Output useful info for debugging. | |
32 | - - node --version | |
33 | - - npm --version | |
34 | - # We test multiple Windows shells because of prior stdout buffering issues | |
35 | - # filed against Grunt. https://github.com/joyent/node/issues/3584 | |
36 | - - ps: "npm test # PowerShell" # Pass comment to PS for easier debugging | |
37 | - - cmd: npm test | |
38 | - | |
39 | -# Don't actually build. | |
40 | -build: off | |
41 | - | |
42 | -# Set build version format here instead of in the admin panel. | |
43 | -version: "{build}" |
node_modules/grunt/internal-tasks/bump.js deleted
1 | -/* | |
2 | - * grunt-contrib-bump | |
3 | - * http://gruntjs.com/ | |
4 | - * | |
5 | - * Copyright (c) 2014 "Cowboy" Ben Alman, contributors | |
6 | - * Licensed under the MIT license. | |
7 | - */ | |
8 | - | |
9 | -'use strict'; | |
10 | - | |
11 | -var semver = require('semver'); | |
12 | -var shell = require('shelljs'); | |
13 | - | |
14 | -module.exports = function(grunt) { | |
15 | - | |
16 | - grunt.registerTask('bump', 'Bump the version property of a JSON file.', function() { | |
17 | - // Validate specified semver increment modes. | |
18 | - var valids = ['major', 'minor', 'patch', 'prerelease']; | |
19 | - var modes = []; | |
20 | - this.args.forEach(function(mode) { | |
21 | - var matches = []; | |
22 | - valids.forEach(function(valid) { | |
23 | - if (valid.indexOf(mode) === 0) { matches.push(valid); } | |
24 | - }); | |
25 | - if (matches.length === 0) { | |
26 | - grunt.log.error('Error: mode "' + mode + '" does not match any known modes.'); | |
27 | - } else if (matches.length > 1) { | |
28 | - grunt.log.error('Error: mode "' + mode + '" is ambiguous (possibly: ' + matches.join(', ') + ').'); | |
29 | - } else { | |
30 | - modes.push(matches[0]); | |
31 | - } | |
32 | - }); | |
33 | - if (this.errorCount === 0 && modes.length === 0) { | |
34 | - grunt.log.error('Error: no modes specified.'); | |
35 | - } | |
36 | - if (this.errorCount > 0) { | |
37 | - grunt.log.error('Valid modes are: ' + valids.join(', ') + '.'); | |
38 | - throw new Error('Use valid modes (or unambiguous mode abbreviations).'); | |
39 | - } | |
40 | - // Options. | |
41 | - var options = this.options({ | |
42 | - filepaths: ['package.json'], | |
43 | - syncVersions: false, | |
44 | - commit: true, | |
45 | - commitMessage: 'Bumping version to {%= version %}.', | |
46 | - tag: true, | |
47 | - tagName: 'v{%= version %}', | |
48 | - tagMessage: 'Version {%= version %}', | |
49 | - tagPrerelease: false, | |
50 | - }); | |
51 | - // Normalize filepaths to array. | |
52 | - var filepaths = Array.isArray(options.filepaths) ? options.filepaths : [options.filepaths]; | |
53 | - // Process JSON files, in-order. | |
54 | - var versions = {}; | |
55 | - filepaths.forEach(function(filepath) { | |
56 | - var o = grunt.file.readJSON(filepath); | |
57 | - var origVersion = o.version; | |
58 | - // If syncVersions is enabled, only grab version from the first file, | |
59 | - // guaranteeing new versions will always be in sync. | |
60 | - var firstVersion = Object.keys(versions)[0]; | |
61 | - if (options.syncVersions && firstVersion) { | |
62 | - o.version = firstVersion; | |
63 | - } | |
64 | - modes.forEach(function(mode) { | |
65 | - var orig = o.version; | |
66 | - var s = semver.parse(o.version); | |
67 | - s.inc(mode); | |
68 | - o.version = String(s); | |
69 | - // Workaround for https://github.com/isaacs/node-semver/issues/50 | |
70 | - if (/-/.test(orig) && mode === 'patch') { | |
71 | - o.version = o.version.replace(/\d+$/, function(n) { return n - 1; }); | |
72 | - } | |
73 | - // If prerelease on an un-prerelease version, bump patch version first | |
74 | - if (!/-/.test(orig) && mode === 'prerelease') { | |
75 | - s.inc('patch'); | |
76 | - s.inc('prerelease'); | |
77 | - o.version = String(s); | |
78 | - } | |
79 | - }); | |
80 | - if (versions[origVersion]) { | |
81 | - versions[origVersion].filepaths.push(filepath); | |
82 | - } else { | |
83 | - versions[origVersion] = {version: o.version, filepaths: [filepath]}; | |
84 | - } | |
85 | - // Actually *do* something. | |
86 | - grunt.log.write('Bumping version in ' + filepath + ' from ' + origVersion + ' to ' + o.version + '...'); | |
87 | - grunt.file.write(filepath, JSON.stringify(o, null, 2)); | |
88 | - grunt.log.ok(); | |
89 | - }); | |
90 | - // Commit changed files? | |
91 | - if (options.commit) { | |
92 | - Object.keys(versions).forEach(function(origVersion) { | |
93 | - var o = versions[origVersion]; | |
94 | - commit(o.filepaths, processTemplate(options.commitMessage, { | |
95 | - version: o.version, | |
96 | - origVersion: origVersion | |
97 | - })); | |
98 | - }); | |
99 | - } | |
100 | - // We're only going to create one tag. And it's going to be the new | |
101 | - // version of the first bumped file. Because, sanity. | |
102 | - var newVersion = versions[Object.keys(versions)[0]].version; | |
103 | - if (options.tag) { | |
104 | - if (options.tagPrerelease || modes.indexOf('prerelease') === -1) { | |
105 | - tag( | |
106 | - processTemplate(options.tagName, {version: newVersion}), | |
107 | - processTemplate(options.tagMessage, {version: newVersion}) | |
108 | - ); | |
109 | - } else { | |
110 | - grunt.log.writeln('Not tagging (prerelease version).'); | |
111 | - } | |
112 | - } | |
113 | - if (this.errorCount > 0) { | |
114 | - grunt.warn('There were errors.'); | |
115 | - } | |
116 | - }); | |
117 | - | |
118 | - // Using custom delimiters keeps templates from being auto-processed. | |
119 | - grunt.template.addDelimiters('bump', '{%', '%}'); | |
120 | - | |
121 | - function processTemplate(message, data) { | |
122 | - return grunt.template.process(message, { | |
123 | - delimiters: 'bump', | |
124 | - data: data, | |
125 | - }); | |
126 | - } | |
127 | - | |
128 | - // Kinda borrowed from https://github.com/geddski/grunt-release | |
129 | - function commit(filepaths, message) { | |
130 | - grunt.log.writeln('Committing ' + filepaths.join(', ') + ' with message: ' + message); | |
131 | - run("git commit -m '" + message + "' '" + filepaths.join("' '") + "'"); | |
132 | - } | |
133 | - | |
134 | - function tag(name, message) { | |
135 | - grunt.log.writeln('Tagging ' + name + ' with message: ' + message); | |
136 | - run("git tag '" + name + "' -m '" + message + "'"); | |
137 | - } | |
138 | - | |
139 | - function run(cmd) { | |
140 | - if (grunt.option('no-write')) { | |
141 | - grunt.verbose.writeln('Not actually running: ' + cmd); | |
142 | - } else { | |
143 | - grunt.verbose.writeln('Running: ' + cmd); | |
144 | - var result = shell.exec(cmd, {silent:true}); | |
145 | - if (result.code !== 0) { | |
146 | - grunt.log.error('Error (' + result.code + ') ' + result.output); | |
147 | - } | |
148 | - } | |
149 | - } | |
150 | - | |
151 | -}; | |
152 | 0 | \ No newline at end of file |
node_modules/grunt/internal-tasks/subgrunt.js deleted
1 | -/* | |
2 | - * grunt | |
3 | - * http://gruntjs.com/ | |
4 | - * | |
5 | - * Copyright (c) 2014 "Cowboy" Ben Alman | |
6 | - * Licensed under the MIT license. | |
7 | - * https://github.com/gruntjs/grunt/blob/master/LICENSE-MIT | |
8 | - */ | |
9 | - | |
10 | -'use strict'; | |
11 | - | |
12 | -module.exports = function(grunt) { | |
13 | - | |
14 | - // Run sub-grunt files, because right now, testing tasks is a pain. | |
15 | - grunt.registerMultiTask('subgrunt', 'Run a sub-gruntfile.', function() { | |
16 | - var path = require('path'); | |
17 | - grunt.util.async.forEachSeries(this.filesSrc, function(gruntfile, next) { | |
18 | - grunt.log.write('Loading ' + gruntfile + '...'); | |
19 | - grunt.util.spawn({ | |
20 | - grunt: true, | |
21 | - args: ['--gruntfile', path.resolve(gruntfile)], | |
22 | - }, function(error, result) { | |
23 | - if (error) { | |
24 | - grunt.log.error().error(result.stdout).writeln(); | |
25 | - next(new Error('Error running sub-gruntfile "' + gruntfile + '".')); | |
26 | - } else { | |
27 | - grunt.log.ok().verbose.ok(result.stdout); | |
28 | - next(); | |
29 | - } | |
30 | - }); | |
31 | - }, this.async()); | |
32 | - }); | |
33 | - | |
34 | -}; |
node_modules/grunt/lib/grunt.js deleted
1 | -/* | |
2 | - * grunt | |
3 | - * http://gruntjs.com/ | |
4 | - * | |
5 | - * Copyright (c) 2014 "Cowboy" Ben Alman | |
6 | - * Licensed under the MIT license. | |
7 | - * https://github.com/gruntjs/grunt/blob/master/LICENSE-MIT | |
8 | - */ | |
9 | - | |
10 | -'use strict'; | |
11 | - | |
12 | -// Nodejs libs. | |
13 | -var path = require('path'); | |
14 | - | |
15 | -// This allows grunt to require() .coffee files. | |
16 | -require('coffee-script'); | |
17 | - | |
18 | -// The module to be exported. | |
19 | -var grunt = module.exports = {}; | |
20 | - | |
21 | -// Expose internal grunt libs. | |
22 | -function gRequire(name) { | |
23 | - return grunt[name] = require('./grunt/' + name); | |
24 | -} | |
25 | - | |
26 | -var util = require('grunt-legacy-util'); | |
27 | -grunt.util = util; | |
28 | -grunt.util.task = require('./util/task'); | |
29 | - | |
30 | -var Log = require('grunt-legacy-log').Log; | |
31 | -var log = new Log({grunt: grunt}); | |
32 | -grunt.log = log; | |
33 | - | |
34 | -gRequire('template'); | |
35 | -gRequire('event'); | |
36 | -var fail = gRequire('fail'); | |
37 | -gRequire('file'); | |
38 | -var option = gRequire('option'); | |
39 | -var config = gRequire('config'); | |
40 | -var task = gRequire('task'); | |
41 | -var help = gRequire('help'); | |
42 | -gRequire('cli'); | |
43 | -var verbose = grunt.verbose = log.verbose; | |
44 | - | |
45 | -// Expose some grunt metadata. | |
46 | -grunt.package = require('../package.json'); | |
47 | -grunt.version = grunt.package.version; | |
48 | - | |
49 | -// Expose specific grunt lib methods on grunt. | |
50 | -function gExpose(obj, methodName, newMethodName) { | |
51 | - grunt[newMethodName || methodName] = obj[methodName].bind(obj); | |
52 | -} | |
53 | -gExpose(task, 'registerTask'); | |
54 | -gExpose(task, 'registerMultiTask'); | |
55 | -gExpose(task, 'registerInitTask'); | |
56 | -gExpose(task, 'renameTask'); | |
57 | -gExpose(task, 'loadTasks'); | |
58 | -gExpose(task, 'loadNpmTasks'); | |
59 | -gExpose(config, 'init', 'initConfig'); | |
60 | -gExpose(fail, 'warn'); | |
61 | -gExpose(fail, 'fatal'); | |
62 | - | |
63 | -// Expose the task interface. I've never called this manually, and have no idea | |
64 | -// how it will work. But it might. | |
65 | -grunt.tasks = function(tasks, options, done) { | |
66 | - // Update options with passed-in options. | |
67 | - option.init(options); | |
68 | - | |
69 | - // Display the grunt version and quit if the user did --version. | |
70 | - var _tasks, _options; | |
71 | - if (option('version')) { | |
72 | - // Not --verbose. | |
73 | - log.writeln('grunt v' + grunt.version); | |
74 | - | |
75 | - if (option('verbose')) { | |
76 | - // --verbose | |
77 | - verbose.writeln('Install path: ' + path.resolve(__dirname, '..')); | |
78 | - // Yes, this is a total hack, but we don't want to log all that verbose | |
79 | - // task initialization stuff here. | |
80 | - grunt.log.muted = true; | |
81 | - // Initialize task system so that available tasks can be listed. | |
82 | - grunt.task.init([], {help: true}); | |
83 | - // Re-enable logging. | |
84 | - grunt.log.muted = false; | |
85 | - | |
86 | - // Display available tasks (for shell completion, etc). | |
87 | - _tasks = Object.keys(grunt.task._tasks).sort(); | |
88 | - verbose.writeln('Available tasks: ' + _tasks.join(' ')); | |
89 | - | |
90 | - // Display available options (for shell completion, etc). | |
91 | - _options = []; | |
92 | - Object.keys(grunt.cli.optlist).forEach(function(long) { | |
93 | - var o = grunt.cli.optlist[long]; | |
94 | - _options.push('--' + (o.negate ? 'no-' : '') + long); | |
95 | - if (o.short) { _options.push('-' + o.short); } | |
96 | - }); | |
97 | - verbose.writeln('Available options: ' + _options.join(' ')); | |
98 | - } | |
99 | - | |
100 | - return; | |
101 | - } | |
102 | - | |
103 | - // Init colors. | |
104 | - log.initColors(); | |
105 | - | |
106 | - // Display help and quit if the user did --help. | |
107 | - if (option('help')) { | |
108 | - help.display(); | |
109 | - return; | |
110 |