Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(320)

Side by Side Diff: pkg/shadow_dom/tool/gruntfile.js

Issue 158083002: introduce web_components pkg for consolidated polyfills (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 6 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
(Empty)
1 /*
2 * Copyright 2013 The Polymer Authors. All rights reserved.
3 * Use of this source code is governed by a BSD-style
4 * license that can be found in the LICENSE file.
5 */
6 module.exports = function(grunt) {
7 // Recursive module builder:
8 var path = require('path');
9 function readManifest(filename, modules) {
10 modules = modules || [];
11 var lines = grunt.file.readJSON(filename);
12 var dir = path.dirname(filename);
13 lines.forEach(function(line) {
14 var fullpath = path.join(dir, line);
15 if (line.slice(-5) == '.json') {
16 // recurse
17 readManifest(fullpath, modules);
18 } else {
19 modules.push(fullpath);
20 }
21 });
22 return modules;
23 }
24
25 // Karma setup:
26 var browsers;
27 (function() {
28 try {
29 var config = grunt.file.readJSON('local.json');
30 if (config.browsers) {
31 browsers = config.browsers;
32 }
33 } catch (e) {
34 var os = require('os');
35 browsers = ['Chrome', 'Firefox'];
36 if (os.type() === 'Darwin') {
37 browsers.push('ChromeCanary');
38 }
39 if (os.type() === 'Windows_NT') {
40 browsers.push('IE');
41 }
42 }
43 })();
44 grunt.initConfig({
45 karma: {
46 options: {
47 configFile: 'conf/karma.conf.js',
48 keepalive: true,
49 browsers: browsers
50 },
51 buildbot: {
52 browsers: browsers,
53 reporters: ['crbot'],
54 logLevel: 'OFF'
55 },
56 ShadowDOM: {
57 browsers: browsers
58 }
59 },
60 concat: {
61 ShadowDOM: {
62 src: readManifest('build.json'),
63 dest: '../lib/shadow_dom.debug.js',
64 nonull: true
65 }
66 },
67 uglify: {
68 ShadowDOM: {
69 options: {
70 compress: {
71 // TODO(sjmiles): should be false by default (?)
72 // https://github.com/mishoo/UglifyJS2/issues/165
73 unsafe: false
74 }
75 //compress: true, Xmangle: true, beautify: true, unsafe: false
76 },
77 files: {
78 '../lib/shadow_dom.min.js': ['../lib/shadow_dom.debug.js']
79 }
80 }
81 },
82
83 yuidoc: {
84 compile: {
85 name: '<%= pkg.name %>',
86 description: '<%= pkg.description %>',
87 version: '<%= pkg.version %>',
88 url: '<%= pkg.homepage %>',
89 options: {
90 exclude: 'third_party',
91 paths: '.',
92 outdir: 'docs',
93 linkNatives: 'true',
94 tabtospace: 2,
95 themedir: '../docs/doc_themes/simple'
96 }
97 }
98 },
99 pkg: grunt.file.readJSON('package.json')
100 });
101
102 // plugins
103 grunt.loadNpmTasks('grunt-contrib-concat');
104 grunt.loadNpmTasks('grunt-contrib-uglify');
105 grunt.loadNpmTasks('grunt-contrib-yuidoc');
106 grunt.loadNpmTasks('grunt-karma-0.9.1');
107
108 // tasks
109 grunt.registerTask('default', ['concat', 'uglify']);
110 grunt.registerTask('minify', ['concat', 'uglify']);
111 grunt.registerTask('docs', ['yuidoc']);
112 grunt.registerTask('test', ['karma:ShadowDOM']);
113 grunt.registerTask('test-buildbot', ['karma:buildbot']);
114 };
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698