vendor: 9,399 bytes, lines 1-325
1/* ======================================================================== 2 * Bootstrap: tab.js v3.0.0 3 * http://twbs.github.com/bootstrap/javascript.html#tabs 4 * ======================================================================== 5 * Copyright 2012 Twitter, Inc. 6 * 7 * Licensed under the Apache License, Version 2.0 (the "License"); 8 * you may not use this file except in compliance with the License. 9 * You may obtain a copy of the License at 10 * 11 * http://www.apache.org/licenses/LICENSE-2.0 12 * 13 * Unless required by applicable law or agreed to in writing, software 14 * distributed under the License is distributed on an "AS IS" BASIS, 15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 * See the License for the specific language governing permissions and 17 * limitations under the License. 18 * ======================================================================== */ 19 20 21+function ($) { "use strict"; 22 23 // TAB CLASS DEFINITION 24 // ==================== 25 26 var Tab = function (element) { 27 this.element = $(element) 28 } 29 30 Tab.prototype.show = function () { 31 var $this = this.element 32 var $ul = $this.closest('ul:not(.dropdown-menu)') 33 var selector = $this.attr('data-target') 34 35 if (!selector) { 36 selector = $this.attr('href') 37 selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') //strip for ie7 38 } 39 40 if ($this.parent('li').hasClass('active')) return 41 42 var previous = $ul.find('.active:last a')[0] 43 var e = $.Event('show.bs.tab', { 44 relatedTarget: previous 45 }) 46 47 $this.trigger(e) 48 49 if (e.isDefaultPrevented()) return 50 51 var $target = $(selector) 52 53 this.activate($this.parent('li'), $ul) 54 this.activate($target, $target.parent(), function () { 55 $this.trigger({ 56 type: 'shown.bs.tab' 57 , relatedTarget: previous 58 }) 59 }) 60 } 61 62 Tab.prototype.activate = function (element, container, callback) { 63 var $active = container.find('> .active') 64 var transition = callback 65 && $.support.transition 66 && $active.hasClass('fade') 67 68 function next() { 69 $active 70 .removeClass('active') 71 .find('> .dropdown-menu > .active') 72 .removeClass('active') 73 74 element.addClass('active') 75 76 if (transition) { 77 element[0].offsetWidth // reflow for transition 78 element.addClass('in') 79 } else { 80 element.removeClass('fade') 81 } 82 83 if (element.parent('.dropdown-menu')) { 84 element.closest('li.dropdown').addClass('active') 85 } 86 87 callback && callback() 88 } 89 90 transition ? 91 $active 92 .one($.support.transition.end, next) 93 .emulateTransitionEnd(150) : 94 next() 95 96 $active.removeClass('in') 97 } 98 99 100 // TAB PLUGIN DEFINITION 101 // ===================== 102 103 var old = $.fn.tab 104 105 $.fn.tab = function ( option ) { 106 return this.each(function () { 107 var $this = $(this) 108 var data = $this.data('bs.tab') 109 110 if (!data) $this.data('bs.tab', (data = new Tab(this))) 111 if (typeof option == 'string') data[option]() 112 }) 113 } 114 115 $.fn.tab.Constructor = Tab 116 117 118 // TAB NO CONFLICT 119 // =============== 120 121 $.fn.tab.noConflict = function () { 122 $.fn.tab = old 123 return this 124 } 125 126 127 // TAB DATA-API 128 // ============ 129 130 $(document).on('click.bs.tab.data-api', '[data-toggle="tab"], [data-toggle="pill"]', function (e) { 131 e.preventDefault() 132 $(this).tab('show') 133 }) 134 135}(window.jQuery); 136 137/* ======================================================================== 138 * Bootstrap: collapse.js v3.0.0 139 * http://twbs.github.com/bootstrap/javascript.html#collapse 140 * ======================================================================== 141 * Copyright 2012 Twitter, Inc. 142 * 143 * Licensed under the Apache License, Version 2.0 (the "License"); 144 * you may not use this file except in compliance with the License. 145 * You may obtain a copy of the License at 146 * 147 * http://www.apache.org/licenses/LICENSE-2.0 148 * 149 * Unless required by applicable law or agreed to in writing, software 150 * distributed under the License is distributed on an "AS IS" BASIS, 151 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 152 * See the License for the specific language governing permissions and 153 * limitations under the License. 154 * ======================================================================== */ 155 156 157+function ($) { "use strict"; 158 159 // COLLAPSE PUBLIC CLASS DEFINITION 160 // ================================ 161 162 var Collapse = function (element, options) { 163 this.$element = $(element) 164 this.options = $.extend({}, Collapse.DEFAULTS, options) 165 this.transitioning = null 166 167 if (this.options.parent) this.$parent = $(this.options.parent) 168 if (this.options.toggle) this.toggle() 169 } 170 171 Collapse.DEFAULTS = { 172 toggle: true 173 } 174 175 Collapse.prototype.dimension = function () { 176 var hasWidth = this.$element.hasClass('width') 177 return hasWidth ? 'width' : 'height' 178 } 179 180 Collapse.prototype.show = function () { 181 if (this.transitioning || this.$element.hasClass('in')) return 182 183 var startEvent = $.Event('show.bs.collapse') 184 this.$element.trigger(startEvent) 185 if (startEvent.isDefaultPrevented()) return 186 187 var actives = this.$parent && this.$parent.find('> .panel > .in') 188 189 if (actives && actives.length) { 190 var hasData = actives.data('bs.collapse') 191 if (hasData && hasData.transitioning) return 192 actives.collapse('hide') 193 hasData || actives.data('bs.collapse', null) 194 } 195 196 var dimension = this.dimension() 197 198 this.$element 199 .removeClass('collapse') 200 .addClass('collapsing') 201 [dimension](0) 202 203 this.transitioning = 1 204 205 var complete = function () { 206 this.$element 207 .removeClass('collapsing') 208 .addClass('in') 209 [dimension]('auto') 210 this.transitioning = 0 211 this.$element.trigger('shown.bs.collapse') 212 } 213 214 if (!$.support.transition) return complete.call(this) 215 216 var scrollSize = $.camelCase(['scroll', dimension].join('-')) 217 218 this.$element 219 .one($.support.transition.end, $.proxy(complete, this)) 220 .emulateTransitionEnd(350) 221 [dimension](this.$element[0][scrollSize]) 222 } 223 224 Collapse.prototype.hide = function () { 225 if (this.transitioning || !this.$element.hasClass('in')) return 226 227 var startEvent = $.Event('hide.bs.collapse') 228 this.$element.trigger(startEvent) 229 if (startEvent.isDefaultPrevented()) return 230 231 var dimension = this.dimension() 232 233 this.$element 234 [dimension](this.$element[dimension]()) 235 [0].offsetHeight 236 237 this.$element 238 .addClass('collapsing') 239 .removeClass('collapse') 240 .removeClass('in') 241 242 this.transitioning = 1 243 244 var complete = function () { 245 this.transitioning = 0 246 this.$element 247 .trigger('hidden.bs.collapse') 248 .removeClass('collapsing') 249 .addClass('collapse') 250 } 251 252 if (!$.support.transition) return complete.call(this) 253 254 this.$element 255 [dimension](0) 256 .one($.support.transition.end, $.proxy(complete, this)) 257 .emulateTransitionEnd(350) 258 } 259 260 Collapse.prototype.toggle = function () { 261 this[this.$element.hasClass('in') ? 'hide' : 'show']() 262 } 263 264 265 // COLLAPSE PLUGIN DEFINITION 266 // ========================== 267 268 var old = $.fn.collapse 269 270 $.fn.collapse = function (option) { 271 return this.each(function () { 272 var $this = $(this) 273 var data = $this.data('bs.collapse') 274 var options = $.extend({}, Collapse.DEFAULTS, $this.data(), typeof option == 'object' && option) 275 276 if (!data) $this.data('bs.collapse', (data = new Collapse(this, options))) 277 if (typeof option == 'string') data[option]() 278 }) 279 } 280 281 $.fn.collapse.Constructor = Collapse 282 283 284 // COLLAPSE NO CONFLICT 285 // ==================== 286 287 $.fn.collapse.noConflict = function () { 288 $.fn.collapse = old 289 return this 290 } 291 292 293 // COLLAPSE DATA-API 294 // ================= 295 296 $(document).on('click.bs.collapse.data-api', '[data-toggle=collapse]', function (e) { 297 var $this = $(this), href 298 var target = $this.attr('data-target') 299 || e.preventDefault() 300 || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '') //strip for ie7 301 var $target = $(target) 302 var data = $target.data('bs.collapse') 303 var option = data ? 'toggle' : $this.data() 304 var parent = $this.attr('data-parent') 305 var $parent = parent && $(parent) 306 307 if (!data || !data.transitioning) { 308 if ($parent) $parent.find('[data-toggle=collapse][data-parent="' + parent + '"]').not($this).addClass('collapsed') 309 $this[$target.hasClass('in') ? 'addClass' : 'removeClass']('collapsed') 310 } 311 312 $this.toggleClass("active"); 313 314 $target.collapse(option) 315 }) 316 317}(window.jQuery); 318 319/* ======================================================================== 320 * Bootstrap: transition.js v3.0.0 321 * http://twbs.github.com/bootstrap/javascript.html#transitions 322 * ======================================================================== 323 * Copyright 2013 Twitter, Inc. 324 * 325 * Licensed under the Apache License, Version 2.0 (the "License");
326 * you may not use this file except in compliance with the License. 327 * You may obtain a copy of the License at 328 * 329 * http://www.apache.org/licenses/LICENSE-2.0 330 * 331 * Unless required by applicable law or agreed to in writing, software 332 * distributed under the License is distributed on an "AS IS" BASIS, 333 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 334 * See the License for the specific language governing permissions and 335 * limitations under the License. 336 * ======================================================================== */ 337 338 339+function ($) { "use strict"; 340 341 // CSS TRANSITION SUPPORT (Shoutout: http://www.modernizr.com/) 342 // ============================================================ 343 344 function transitionEnd() { 345 var el = document.createElement('bootstrap') 346 347 var transEndEventNames = { 348 'WebkitTransition' : 'webkitTransitionEnd' 349 , 'MozTransition' : 'transitionend' 350 , 'OTransition' : 'oTransitionEnd otransitionend' 351 , 'transition' : 'transitionend' 352 } 353 354 for (var name in transEndEventNames) { 355 if (el.style[name] !== undefined) { 356 return { end: transEndEventNames[name] } 357 } 358 } 359 } 360 361 // http://blog.alexmaccaw.com/css-transitions 362 $.fn.emulateTransitionEnd = function (duration) { 363 var called = false, $el = this 364 $(this).one($.support.transition.end, function () { called = true }) 365 var callback = function () { if (!called) $($el).trigger($.support.transition.end) } 366 setTimeout(callback, duration) 367 return this 368 } 369 370 $(function () { 371 $.support.transition = transitionEnd() 372 }) 373 374}(window.jQuery);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.