railsstrap 3.2.0.3 → 3.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/railsstrap/constants.rb +1 -1
- data/vendor/assets/bower_components/bootstrap/Gruntfile.js +98 -76
- data/vendor/assets/bower_components/bootstrap/README.md +25 -23
- data/vendor/assets/bower_components/bootstrap/bower.json +3 -3
- data/vendor/assets/bower_components/bootstrap/dist/css/bootstrap-theme.css +26 -11
- data/vendor/assets/bower_components/bootstrap/dist/css/bootstrap-theme.css.map +1 -1
- data/vendor/assets/bower_components/bootstrap/dist/css/bootstrap-theme.min.css +2 -2
- data/vendor/assets/bower_components/bootstrap/dist/css/bootstrap.css +286 -131
- data/vendor/assets/bower_components/bootstrap/dist/css/bootstrap.css.map +1 -1
- data/vendor/assets/bower_components/bootstrap/dist/css/bootstrap.min.css +2 -2
- data/vendor/assets/bower_components/bootstrap/dist/fonts/glyphicons-halflings-regular.svg +1 -1
- data/vendor/assets/bower_components/bootstrap/dist/js/bootstrap.js +340 -178
- data/vendor/assets/bower_components/bootstrap/dist/js/bootstrap.min.js +3 -2
- data/vendor/assets/bower_components/bootstrap/dist/js/npm.js +13 -0
- data/vendor/assets/bower_components/bootstrap/fonts/glyphicons-halflings-regular.svg +1 -1
- data/vendor/assets/bower_components/bootstrap/grunt/bs-commonjs-generator.js +23 -0
- data/vendor/assets/bower_components/bootstrap/grunt/bs-lessdoc-parser.js +7 -5
- data/vendor/assets/bower_components/bootstrap/grunt/sauce_browsers.yml +1 -1
- data/vendor/assets/bower_components/bootstrap/js/affix.js +43 -23
- data/vendor/assets/bower_components/bootstrap/js/alert.js +6 -4
- data/vendor/assets/bower_components/bootstrap/js/button.js +16 -10
- data/vendor/assets/bower_components/bootstrap/js/carousel.js +26 -10
- data/vendor/assets/bower_components/bootstrap/js/collapse.js +69 -28
- data/vendor/assets/bower_components/bootstrap/js/dropdown.js +20 -10
- data/vendor/assets/bower_components/bootstrap/js/modal.js +22 -21
- data/vendor/assets/bower_components/bootstrap/js/popover.js +13 -7
- data/vendor/assets/bower_components/bootstrap/js/scrollspy.js +12 -7
- data/vendor/assets/bower_components/bootstrap/js/tab.js +41 -16
- data/vendor/assets/bower_components/bootstrap/js/tooltip.js +60 -39
- data/vendor/assets/bower_components/bootstrap/js/transition.js +1 -1
- data/vendor/assets/bower_components/bootstrap/less/button-groups.less +16 -9
- data/vendor/assets/bower_components/bootstrap/less/buttons.less +7 -4
- data/vendor/assets/bower_components/bootstrap/less/carousel.less +24 -0
- data/vendor/assets/bower_components/bootstrap/less/code.less +1 -0
- data/vendor/assets/bower_components/bootstrap/less/component-animations.less +5 -2
- data/vendor/assets/bower_components/bootstrap/less/dropdowns.less +3 -5
- data/vendor/assets/bower_components/bootstrap/less/forms.less +44 -25
- data/vendor/assets/bower_components/bootstrap/less/glyphicons.less +2 -1
- data/vendor/assets/bower_components/bootstrap/less/jumbotron.less +4 -4
- data/vendor/assets/bower_components/bootstrap/less/list-group.less +1 -0
- data/vendor/assets/bower_components/bootstrap/less/media.less +27 -36
- data/vendor/assets/bower_components/bootstrap/less/mixins/buttons.less +2 -0
- data/vendor/assets/bower_components/bootstrap/less/mixins/forms.less +5 -1
- data/vendor/assets/bower_components/bootstrap/less/mixins/image.less +0 -1
- data/vendor/assets/bower_components/bootstrap/less/mixins/labels.less +1 -1
- data/vendor/assets/bower_components/bootstrap/less/mixins/vendor-prefixes.less +6 -3
- data/vendor/assets/bower_components/bootstrap/less/modals.less +2 -3
- data/vendor/assets/bower_components/bootstrap/less/navbar.less +29 -25
- data/vendor/assets/bower_components/bootstrap/less/navs.less +3 -1
- data/vendor/assets/bower_components/bootstrap/less/normalize.less +5 -3
- data/vendor/assets/bower_components/bootstrap/less/pager.less +1 -2
- data/vendor/assets/bower_components/bootstrap/less/pagination.less +1 -1
- data/vendor/assets/bower_components/bootstrap/less/panels.less +21 -3
- data/vendor/assets/bower_components/bootstrap/less/popovers.less +5 -4
- data/vendor/assets/bower_components/bootstrap/less/print.less +102 -96
- data/vendor/assets/bower_components/bootstrap/less/progress-bars.less +1 -19
- data/vendor/assets/bower_components/bootstrap/less/responsive-embed.less +2 -1
- data/vendor/assets/bower_components/bootstrap/less/scaffolding.less +1 -1
- data/vendor/assets/bower_components/bootstrap/less/tables.less +11 -10
- data/vendor/assets/bower_components/bootstrap/less/theme.less +12 -10
- data/vendor/assets/bower_components/bootstrap/less/thumbnails.less +1 -1
- data/vendor/assets/bower_components/bootstrap/less/type.less +0 -11
- data/vendor/assets/bower_components/bootstrap/less/utilities.less +0 -1
- data/vendor/assets/bower_components/bootstrap/less/variables.less +29 -19
- data/vendor/assets/bower_components/bootstrap/package.json +20 -19
- metadata +4 -3
- data/vendor/assets/bower_components/bootstrap/grunt/bs-glyphicons-data-generator.js +0 -41
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 576cfff798a3f38bbdcf0268a8177f0d014af88c
|
|
4
|
+
data.tar.gz: 9d433b38d88e8a48020fa97f0c24d8c04c69134d
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 2b31ade8e0cd02f676c593b7deaf183ae816017a1f28018cf2f5f0615b75d2251fe3e03640d6ad50d4025fd6bd6a90dc1555379674943e4061e36d582b36c208
|
|
7
|
+
data.tar.gz: 4b9109e82154b84ade8438933212932bcb8bcac474d041331f06e498a071196e04845f46a6dc3a2ca0a3ce73a18125e4082a217acc5d2901c3a6091b99dc473c
|
data/lib/railsstrap/constants.rb
CHANGED
|
@@ -18,9 +18,15 @@ module.exports = function (grunt) {
|
|
|
18
18
|
var fs = require('fs');
|
|
19
19
|
var path = require('path');
|
|
20
20
|
var npmShrinkwrap = require('npm-shrinkwrap');
|
|
21
|
-
var generateGlyphiconsData = require('./grunt/bs-glyphicons-data-generator.js');
|
|
22
21
|
var BsLessdocParser = require('./grunt/bs-lessdoc-parser.js');
|
|
22
|
+
var getLessVarsData = function () {
|
|
23
|
+
var filePath = path.join(__dirname, 'less/variables.less');
|
|
24
|
+
var fileContent = fs.readFileSync(filePath, { encoding: 'utf8' });
|
|
25
|
+
var parser = new BsLessdocParser(fileContent);
|
|
26
|
+
return { sections: parser.parseFile() };
|
|
27
|
+
};
|
|
23
28
|
var generateRawFiles = require('./grunt/bs-raw-files-generator.js');
|
|
29
|
+
var generateCommonJSModule = require('./grunt/bs-commonjs-generator.js');
|
|
24
30
|
|
|
25
31
|
// Project configuration.
|
|
26
32
|
grunt.initConfig({
|
|
@@ -32,12 +38,26 @@ module.exports = function (grunt) {
|
|
|
32
38
|
' * Copyright 2011-<%= grunt.template.today("yyyy") %> <%= pkg.author %>\n' +
|
|
33
39
|
' * Licensed under <%= pkg.license.type %> (<%= pkg.license.url %>)\n' +
|
|
34
40
|
' */\n',
|
|
35
|
-
// NOTE: This jqueryCheck code is duplicated in customizer.js;
|
|
36
|
-
|
|
41
|
+
// NOTE: This jqueryCheck/jqueryVersionCheck code is duplicated in customizer.js;
|
|
42
|
+
// if making changes here, be sure to update the other copy too.
|
|
43
|
+
jqueryCheck: [
|
|
44
|
+
'if (typeof jQuery === \'undefined\') {',
|
|
45
|
+
' throw new Error(\'Bootstrap\\\'s JavaScript requires jQuery\')',
|
|
46
|
+
'}\n'
|
|
47
|
+
].join('\n'),
|
|
48
|
+
jqueryVersionCheck: [
|
|
49
|
+
'+function ($) {',
|
|
50
|
+
' var version = $.fn.jquery.split(\' \')[0].split(\'.\')',
|
|
51
|
+
' if ((version[0] < 2 && version[1] < 9) || (version[0] == 1 && version[1] == 9 && version[2] < 1)) {',
|
|
52
|
+
' throw new Error(\'Bootstrap\\\'s JavaScript requires jQuery version 1.9.1 or higher\')',
|
|
53
|
+
' }',
|
|
54
|
+
'}(jQuery);\n\n'
|
|
55
|
+
].join('\n'),
|
|
37
56
|
|
|
38
57
|
// Task configuration.
|
|
39
58
|
clean: {
|
|
40
|
-
dist:
|
|
59
|
+
dist: 'dist',
|
|
60
|
+
docs: 'docs/dist'
|
|
41
61
|
},
|
|
42
62
|
|
|
43
63
|
jshint: {
|
|
@@ -50,7 +70,7 @@ module.exports = function (grunt) {
|
|
|
50
70
|
},
|
|
51
71
|
src: ['Gruntfile.js', 'grunt/*.js']
|
|
52
72
|
},
|
|
53
|
-
|
|
73
|
+
core: {
|
|
54
74
|
src: 'js/*.js'
|
|
55
75
|
},
|
|
56
76
|
test: {
|
|
@@ -60,7 +80,7 @@ module.exports = function (grunt) {
|
|
|
60
80
|
src: 'js/tests/unit/*.js'
|
|
61
81
|
},
|
|
62
82
|
assets: {
|
|
63
|
-
src: ['docs/assets/js/
|
|
83
|
+
src: ['docs/assets/js/src/*.js', 'docs/assets/js/*.js', '!docs/assets/js/*.min.js']
|
|
64
84
|
}
|
|
65
85
|
},
|
|
66
86
|
|
|
@@ -71,8 +91,8 @@ module.exports = function (grunt) {
|
|
|
71
91
|
grunt: {
|
|
72
92
|
src: '<%= jshint.grunt.src %>'
|
|
73
93
|
},
|
|
74
|
-
|
|
75
|
-
src: '<%= jshint.
|
|
94
|
+
core: {
|
|
95
|
+
src: '<%= jshint.core.src %>'
|
|
76
96
|
},
|
|
77
97
|
test: {
|
|
78
98
|
src: '<%= jshint.test.src %>'
|
|
@@ -87,7 +107,7 @@ module.exports = function (grunt) {
|
|
|
87
107
|
|
|
88
108
|
concat: {
|
|
89
109
|
options: {
|
|
90
|
-
banner: '<%= banner %>\n<%= jqueryCheck %>',
|
|
110
|
+
banner: '<%= banner %>\n<%= jqueryCheck %>\n<%= jqueryVersionCheck %>',
|
|
91
111
|
stripBanners: false
|
|
92
112
|
},
|
|
93
113
|
bootstrap: {
|
|
@@ -113,27 +133,29 @@ module.exports = function (grunt) {
|
|
|
113
133
|
options: {
|
|
114
134
|
preserveComments: 'some'
|
|
115
135
|
},
|
|
116
|
-
|
|
136
|
+
core: {
|
|
117
137
|
src: '<%= concat.bootstrap.dest %>',
|
|
118
138
|
dest: 'dist/js/<%= pkg.name %>.min.js'
|
|
119
139
|
},
|
|
120
140
|
customize: {
|
|
141
|
+
// NOTE: This src list is duplicated in footer.html; if making changes here, be sure to update the other copy too.
|
|
121
142
|
src: [
|
|
122
|
-
'docs/assets/js/
|
|
123
|
-
'docs/assets/js/
|
|
124
|
-
'docs/assets/js/
|
|
125
|
-
'docs/assets/js/
|
|
126
|
-
'docs/assets/js/
|
|
143
|
+
'docs/assets/js/vendor/less.min.js',
|
|
144
|
+
'docs/assets/js/vendor/jszip.min.js',
|
|
145
|
+
'docs/assets/js/vendor/uglify.min.js',
|
|
146
|
+
'docs/assets/js/vendor/Blob.js',
|
|
147
|
+
'docs/assets/js/vendor/FileSaver.js',
|
|
127
148
|
'docs/assets/js/raw-files.min.js',
|
|
128
|
-
'docs/assets/js/
|
|
149
|
+
'docs/assets/js/src/customizer.js'
|
|
129
150
|
],
|
|
130
151
|
dest: 'docs/assets/js/customize.min.js'
|
|
131
152
|
},
|
|
132
153
|
docsJs: {
|
|
154
|
+
// NOTE: This src list is duplicated in footer.html; if making changes here, be sure to update the other copy too.
|
|
133
155
|
src: [
|
|
134
|
-
'docs/assets/js/
|
|
135
|
-
'docs/assets/js/
|
|
136
|
-
'docs/assets/js/
|
|
156
|
+
'docs/assets/js/vendor/holder.js',
|
|
157
|
+
'docs/assets/js/vendor/ZeroClipboard.min.js',
|
|
158
|
+
'docs/assets/js/src/application.js'
|
|
137
159
|
],
|
|
138
160
|
dest: 'docs/assets/js/docs.min.js'
|
|
139
161
|
}
|
|
@@ -155,9 +177,8 @@ module.exports = function (grunt) {
|
|
|
155
177
|
sourceMapURL: '<%= pkg.name %>.css.map',
|
|
156
178
|
sourceMapFilename: 'dist/css/<%= pkg.name %>.css.map'
|
|
157
179
|
},
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
}
|
|
180
|
+
src: 'less/bootstrap.less',
|
|
181
|
+
dest: 'dist/css/<%= pkg.name %>.css'
|
|
161
182
|
},
|
|
162
183
|
compileTheme: {
|
|
163
184
|
options: {
|
|
@@ -167,9 +188,8 @@ module.exports = function (grunt) {
|
|
|
167
188
|
sourceMapURL: '<%= pkg.name %>-theme.css.map',
|
|
168
189
|
sourceMapFilename: 'dist/css/<%= pkg.name %>-theme.css.map'
|
|
169
190
|
},
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
}
|
|
191
|
+
src: 'less/theme.less',
|
|
192
|
+
dest: 'dist/css/<%= pkg.name %>-theme.css'
|
|
173
193
|
}
|
|
174
194
|
},
|
|
175
195
|
|
|
@@ -199,7 +219,7 @@ module.exports = function (grunt) {
|
|
|
199
219
|
src: 'dist/css/<%= pkg.name %>-theme.css'
|
|
200
220
|
},
|
|
201
221
|
docs: {
|
|
202
|
-
src: 'docs/assets/css/
|
|
222
|
+
src: 'docs/assets/css/src/docs.css'
|
|
203
223
|
},
|
|
204
224
|
examples: {
|
|
205
225
|
expand: true,
|
|
@@ -213,7 +233,7 @@ module.exports = function (grunt) {
|
|
|
213
233
|
options: {
|
|
214
234
|
csslintrc: 'less/.csslintrc'
|
|
215
235
|
},
|
|
216
|
-
|
|
236
|
+
dist: [
|
|
217
237
|
'dist/css/bootstrap.css',
|
|
218
238
|
'dist/css/bootstrap-theme.css'
|
|
219
239
|
],
|
|
@@ -225,7 +245,7 @@ module.exports = function (grunt) {
|
|
|
225
245
|
ids: false,
|
|
226
246
|
'overqualified-elements': false
|
|
227
247
|
},
|
|
228
|
-
src: 'docs/assets/css/
|
|
248
|
+
src: 'docs/assets/css/src/docs.css'
|
|
229
249
|
}
|
|
230
250
|
},
|
|
231
251
|
|
|
@@ -235,16 +255,18 @@ module.exports = function (grunt) {
|
|
|
235
255
|
keepSpecialComments: '*',
|
|
236
256
|
noAdvanced: true
|
|
237
257
|
},
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
258
|
+
minifyCore: {
|
|
259
|
+
src: 'dist/css/<%= pkg.name %>.css',
|
|
260
|
+
dest: 'dist/css/<%= pkg.name %>.min.css'
|
|
261
|
+
},
|
|
262
|
+
minifyTheme: {
|
|
263
|
+
src: 'dist/css/<%= pkg.name %>-theme.css',
|
|
264
|
+
dest: 'dist/css/<%= pkg.name %>-theme.min.css'
|
|
243
265
|
},
|
|
244
266
|
docs: {
|
|
245
267
|
src: [
|
|
246
|
-
'docs/assets/css/
|
|
247
|
-
'docs/assets/css/
|
|
268
|
+
'docs/assets/css/src/docs.css',
|
|
269
|
+
'docs/assets/css/src/pygments-manni.css'
|
|
248
270
|
],
|
|
249
271
|
dest: 'docs/assets/css/docs.min.css'
|
|
250
272
|
}
|
|
@@ -277,27 +299,19 @@ module.exports = function (grunt) {
|
|
|
277
299
|
dest: 'docs/examples/'
|
|
278
300
|
},
|
|
279
301
|
docs: {
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
}
|
|
302
|
+
src: 'docs/assets/css/src/docs.css',
|
|
303
|
+
dest: 'docs/assets/css/src/docs.css'
|
|
283
304
|
}
|
|
284
305
|
},
|
|
285
306
|
|
|
286
307
|
copy: {
|
|
287
308
|
fonts: {
|
|
288
|
-
expand: true,
|
|
289
309
|
src: 'fonts/*',
|
|
290
310
|
dest: 'dist/'
|
|
291
311
|
},
|
|
292
312
|
docs: {
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
src: [
|
|
296
|
-
'{css,js}/*.min.*',
|
|
297
|
-
'css/*.map',
|
|
298
|
-
'fonts/*'
|
|
299
|
-
],
|
|
300
|
-
dest: 'docs/dist'
|
|
313
|
+
src: 'dist/*/*',
|
|
314
|
+
dest: 'docs/'
|
|
301
315
|
}
|
|
302
316
|
},
|
|
303
317
|
|
|
@@ -315,20 +329,17 @@ module.exports = function (grunt) {
|
|
|
315
329
|
},
|
|
316
330
|
|
|
317
331
|
jade: {
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
'docs/_includes/customizer-variables.html': 'docs/_jade/customizer-variables.jade',
|
|
330
|
-
'docs/_includes/nav/customize.html': 'docs/_jade/customizer-nav.jade'
|
|
331
|
-
}
|
|
332
|
+
options: {
|
|
333
|
+
pretty: true,
|
|
334
|
+
data: getLessVarsData
|
|
335
|
+
},
|
|
336
|
+
customizerVars: {
|
|
337
|
+
src: 'docs/_jade/customizer-variables.jade',
|
|
338
|
+
dest: 'docs/_includes/customizer-variables.html'
|
|
339
|
+
},
|
|
340
|
+
customizerNav: {
|
|
341
|
+
src: 'docs/_jade/customizer-nav.jade',
|
|
342
|
+
dest: 'docs/_includes/nav/customize.html'
|
|
332
343
|
}
|
|
333
344
|
},
|
|
334
345
|
|
|
@@ -340,7 +351,9 @@ module.exports = function (grunt) {
|
|
|
340
351
|
reset: true,
|
|
341
352
|
relaxerror: [
|
|
342
353
|
'Bad value X-UA-Compatible for attribute http-equiv on element meta.',
|
|
343
|
-
'Element img is missing required attribute src.'
|
|
354
|
+
'Element img is missing required attribute src.',
|
|
355
|
+
'Attribute autocomplete not allowed on element input at this point.',
|
|
356
|
+
'Attribute autocomplete not allowed on element button at this point.'
|
|
344
357
|
]
|
|
345
358
|
},
|
|
346
359
|
files: {
|
|
@@ -350,15 +363,15 @@ module.exports = function (grunt) {
|
|
|
350
363
|
|
|
351
364
|
watch: {
|
|
352
365
|
src: {
|
|
353
|
-
files: '<%= jshint.
|
|
354
|
-
tasks: ['jshint:src', 'qunit']
|
|
366
|
+
files: '<%= jshint.core.src %>',
|
|
367
|
+
tasks: ['jshint:src', 'qunit', 'concat']
|
|
355
368
|
},
|
|
356
369
|
test: {
|
|
357
370
|
files: '<%= jshint.test.src %>',
|
|
358
371
|
tasks: ['jshint:test', 'qunit']
|
|
359
372
|
},
|
|
360
373
|
less: {
|
|
361
|
-
files: 'less
|
|
374
|
+
files: 'less/**/*.less',
|
|
362
375
|
tasks: 'less'
|
|
363
376
|
}
|
|
364
377
|
},
|
|
@@ -412,7 +425,7 @@ module.exports = function (grunt) {
|
|
|
412
425
|
var testSubtasks = [];
|
|
413
426
|
// Skip core tests if running a different subset of the test suite
|
|
414
427
|
if (runSubset('core')) {
|
|
415
|
-
testSubtasks = testSubtasks.concat(['dist-css', '
|
|
428
|
+
testSubtasks = testSubtasks.concat(['dist-css', 'dist-js', 'csslint:dist', 'test-js', 'docs']);
|
|
416
429
|
}
|
|
417
430
|
// Skip HTML validation if running a different subset of the test suite
|
|
418
431
|
if (runSubset('validate-html') &&
|
|
@@ -430,30 +443,26 @@ module.exports = function (grunt) {
|
|
|
430
443
|
testSubtasks.push('saucelabs-qunit');
|
|
431
444
|
}
|
|
432
445
|
grunt.registerTask('test', testSubtasks);
|
|
446
|
+
grunt.registerTask('test-js', ['jshint:core', 'jshint:test', 'jshint:grunt', 'jscs:core', 'jscs:test', 'jscs:grunt', 'qunit']);
|
|
433
447
|
|
|
434
448
|
// JS distribution task.
|
|
435
|
-
grunt.registerTask('dist-js', ['concat', 'uglify']);
|
|
449
|
+
grunt.registerTask('dist-js', ['concat', 'uglify:core', 'commonjs']);
|
|
436
450
|
|
|
437
451
|
// CSS distribution task.
|
|
438
452
|
grunt.registerTask('less-compile', ['less:compileCore', 'less:compileTheme']);
|
|
439
|
-
grunt.registerTask('dist-css', ['less-compile', 'autoprefixer', 'usebanner', 'csscomb', 'cssmin']);
|
|
440
|
-
|
|
441
|
-
// Docs distribution task.
|
|
442
|
-
grunt.registerTask('dist-docs', 'copy:docs');
|
|
453
|
+
grunt.registerTask('dist-css', ['less-compile', 'autoprefixer:core', 'autoprefixer:theme', 'usebanner', 'csscomb:dist', 'cssmin:minifyCore', 'cssmin:minifyTheme']);
|
|
443
454
|
|
|
444
455
|
// Full distribution task.
|
|
445
|
-
grunt.registerTask('dist', ['clean', 'dist-css', 'copy:fonts', 'dist-js'
|
|
456
|
+
grunt.registerTask('dist', ['clean:dist', 'dist-css', 'copy:fonts', 'dist-js']);
|
|
446
457
|
|
|
447
458
|
// Default task.
|
|
448
|
-
grunt.registerTask('default', ['
|
|
459
|
+
grunt.registerTask('default', ['clean:dist', 'copy:fonts', 'test']);
|
|
449
460
|
|
|
450
461
|
// Version numbering task.
|
|
451
462
|
// grunt change-version-number --oldver=A.B.C --newver=X.Y.Z
|
|
452
463
|
// This can be overzealous, so its changes should always be manually reviewed!
|
|
453
464
|
grunt.registerTask('change-version-number', 'sed');
|
|
454
465
|
|
|
455
|
-
grunt.registerTask('build-glyphicons-data', function () { generateGlyphiconsData.call(this, grunt); });
|
|
456
|
-
|
|
457
466
|
// task for building customizer
|
|
458
467
|
grunt.registerTask('build-customizer', ['build-customizer-html', 'build-raw-files']);
|
|
459
468
|
grunt.registerTask('build-customizer-html', 'jade');
|
|
@@ -462,6 +471,19 @@ module.exports = function (grunt) {
|
|
|
462
471
|
generateRawFiles(grunt, banner);
|
|
463
472
|
});
|
|
464
473
|
|
|
474
|
+
grunt.registerTask('commonjs', 'Generate CommonJS entrypoint module in dist dir.', function () {
|
|
475
|
+
var srcFiles = grunt.config.get('concat.bootstrap.src');
|
|
476
|
+
var destFilepath = 'dist/js/npm.js';
|
|
477
|
+
generateCommonJSModule(grunt, srcFiles, destFilepath);
|
|
478
|
+
});
|
|
479
|
+
|
|
480
|
+
// Docs task.
|
|
481
|
+
grunt.registerTask('docs-css', ['autoprefixer:docs', 'autoprefixer:examples', 'csscomb:docs', 'csscomb:examples', 'cssmin:docs']);
|
|
482
|
+
grunt.registerTask('lint-docs-css', ['csslint:docs', 'csslint:examples']);
|
|
483
|
+
grunt.registerTask('docs-js', ['uglify:docsJs', 'uglify:customize']);
|
|
484
|
+
grunt.registerTask('lint-docs-js', ['jshint:assets', 'jscs:assets']);
|
|
485
|
+
grunt.registerTask('docs', ['docs-css', 'lint-docs-css', 'docs-js', 'lint-docs-js', 'clean:docs', 'copy:docs', 'build-customizer']);
|
|
486
|
+
|
|
465
487
|
// Task for updating the cached npm packages used by the Travis build (which are controlled by test-infra/npm-shrinkwrap.json).
|
|
466
488
|
// This task should be run and the updated file should be committed whenever Bootstrap's dependencies change.
|
|
467
489
|
grunt.registerTask('update-shrinkwrap', ['exec:npmUpdate', '_update-shrinkwrap']);
|
|
@@ -469,7 +491,7 @@ module.exports = function (grunt) {
|
|
|
469
491
|
var done = this.async();
|
|
470
492
|
npmShrinkwrap({ dev: true, dirname: __dirname }, function (err) {
|
|
471
493
|
if (err) {
|
|
472
|
-
grunt.fail.warn(err)
|
|
494
|
+
grunt.fail.warn(err);
|
|
473
495
|
}
|
|
474
496
|
var dest = 'test-infra/npm-shrinkwrap.json';
|
|
475
497
|
fs.renameSync('npm-shrinkwrap.json', dest);
|
|
@@ -1,32 +1,33 @@
|
|
|
1
1
|
# [Bootstrap](http://getbootstrap.com)
|
|
2
2
|
[](http://badge.fury.io/bo/bootstrap)
|
|
3
3
|
[](http://badge.fury.io/js/bootstrap)
|
|
4
|
-
[](
|
|
4
|
+
[](https://travis-ci.org/twbs/bootstrap)
|
|
5
5
|
[](https://david-dm.org/twbs/bootstrap#info=devDependencies)
|
|
6
6
|
[](https://saucelabs.com/u/bootstrap)
|
|
7
7
|
|
|
8
|
-
Bootstrap is a sleek, intuitive, and powerful front-end framework for faster and easier web development, created by [Mark Otto](
|
|
8
|
+
Bootstrap is a sleek, intuitive, and powerful front-end framework for faster and easier web development, created by [Mark Otto](https://twitter.com/mdo) and [Jacob Thornton](https://twitter.com/fat), and maintained by the [core team](https://github.com/twbs?tab=members) with the massive support and involvement of the community.
|
|
9
9
|
|
|
10
10
|
To get started, check out <http://getbootstrap.com>!
|
|
11
11
|
|
|
12
12
|
## Table of contents
|
|
13
13
|
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
14
|
+
- [Quick start](#quick-start)
|
|
15
|
+
- [Bugs and feature requests](#bugs-and-feature-requests)
|
|
16
|
+
- [Documentation](#documentation)
|
|
17
|
+
- [Contributing](#contributing)
|
|
18
|
+
- [Community](#community)
|
|
19
|
+
- [Versioning](#versioning)
|
|
20
|
+
- [Creators](#creators)
|
|
21
|
+
- [Copyright and license](#copyright-and-license)
|
|
22
22
|
|
|
23
23
|
## Quick start
|
|
24
24
|
|
|
25
|
-
|
|
25
|
+
Four quick start options are available:
|
|
26
26
|
|
|
27
|
-
- [Download the latest release](https://github.com/twbs/bootstrap/archive/v3.
|
|
27
|
+
- [Download the latest release](https://github.com/twbs/bootstrap/archive/v3.3.0.zip).
|
|
28
28
|
- Clone the repo: `git clone https://github.com/twbs/bootstrap.git`.
|
|
29
29
|
- Install with [Bower](http://bower.io): `bower install bootstrap`.
|
|
30
|
+
- Install with [npm](https://www.npmjs.org): `npm install bootstrap`.
|
|
30
31
|
|
|
31
32
|
Read the [Getting started page](http://getbootstrap.com/getting-started/) for information on the framework contents, templates and examples, and more.
|
|
32
33
|
|
|
@@ -66,10 +67,11 @@ Bootstrap's documentation, included in this repo in the root directory, is built
|
|
|
66
67
|
|
|
67
68
|
### Running documentation locally
|
|
68
69
|
|
|
69
|
-
1. If necessary, [install Jekyll](http://jekyllrb.com/docs/installation) (requires v2.
|
|
70
|
-
- **Windows users:** Read [this unofficial guide](
|
|
71
|
-
2.
|
|
72
|
-
3.
|
|
70
|
+
1. If necessary, [install Jekyll](http://jekyllrb.com/docs/installation) (requires v2.3.x).
|
|
71
|
+
- **Windows users:** Read [this unofficial guide](http://jekyll-windows.juthilo.com/) to get Jekyll up and running without problems.
|
|
72
|
+
2. Install the Ruby-based syntax highlighter, [Rouge](https://github.com/jneen/rouge), with `gem install rouge`.
|
|
73
|
+
3. From the root `/bootstrap` directory, run `jekyll serve` in the command line.
|
|
74
|
+
4. Open <http://localhost:9001> in your browser, and voilà.
|
|
73
75
|
|
|
74
76
|
Learn more about using Jekyll by reading its [documentation](http://jekyllrb.com/docs/home/).
|
|
75
77
|
|
|
@@ -85,7 +87,7 @@ Documentation for v2.3.2 has been made available for the time being at <http://g
|
|
|
85
87
|
|
|
86
88
|
Please read through our [contributing guidelines](https://github.com/twbs/bootstrap/blob/master/CONTRIBUTING.md). Included are directions for opening issues, coding standards, and notes on development.
|
|
87
89
|
|
|
88
|
-
Moreover, if your pull request contains JavaScript patches or features, you must include relevant unit tests. All HTML and CSS should conform to the [Code Guide](
|
|
90
|
+
Moreover, if your pull request contains JavaScript patches or features, you must include relevant unit tests. All HTML and CSS should conform to the [Code Guide](https://github.com/mdo/code-guide), maintained by [Mark Otto](https://github.com/mdo).
|
|
89
91
|
|
|
90
92
|
Editor preferences are available in the [editor config](https://github.com/twbs/bootstrap/blob/master/.editorconfig) for easy use in common text editors. Read more and download plugins at <http://editorconfig.org>.
|
|
91
93
|
|
|
@@ -95,9 +97,9 @@ Editor preferences are available in the [editor config](https://github.com/twbs/
|
|
|
95
97
|
|
|
96
98
|
Keep track of development and community news.
|
|
97
99
|
|
|
98
|
-
- Follow [@twbootstrap on Twitter](
|
|
100
|
+
- Follow [@twbootstrap on Twitter](https://twitter.com/twbootstrap).
|
|
99
101
|
- Read and subscribe to [The Official Bootstrap Blog](http://blog.getbootstrap.com).
|
|
100
|
-
- Chat with fellow Bootstrappers in IRC. On the `irc.freenode.net` server, in the `##
|
|
102
|
+
- Chat with fellow Bootstrappers in IRC. On the `irc.freenode.net` server, in the `##bootstrap` channel.
|
|
101
103
|
- Implementation help may be found at Stack Overflow (tagged [`twitter-bootstrap-3`](http://stackoverflow.com/questions/tagged/twitter-bootstrap-3)).
|
|
102
104
|
|
|
103
105
|
|
|
@@ -112,13 +114,13 @@ For transparency into our release cycle and in striving to maintain backward com
|
|
|
112
114
|
|
|
113
115
|
**Mark Otto**
|
|
114
116
|
|
|
115
|
-
- <
|
|
116
|
-
- <
|
|
117
|
+
- <https://twitter.com/mdo>
|
|
118
|
+
- <https://github.com/mdo>
|
|
117
119
|
|
|
118
120
|
**Jacob Thornton**
|
|
119
121
|
|
|
120
|
-
- <
|
|
121
|
-
- <
|
|
122
|
+
- <https://twitter.com/fat>
|
|
123
|
+
- <https://github.com/fat>
|
|
122
124
|
|
|
123
125
|
|
|
124
126
|
|