1/*jshint browser:true */ 2/*! 3* FitVids 1.1 4* 5* Copyright 2013, Chris Coyier - http://css-tricks.com + Dave Rupert - http://daverupert.com 6* Credit to Thierry Koblentz - http://www.alistapart.com/articles/creating-intrinsic-ratios-for-video/ 7* Released under the WTFPL license - http://sam.zoy.org/wtfpl/ 8* 9*/ 10 11;(function( $ ){ 12 13 'use strict'; 14 15 $.fn.fitVids = function( options ) { 16 var settings = { 17 customSelector: null, 18 ignore: null 19 }; 20 21 if(!document.getElementById('fit-vids-style')) { 22 // appendStyles: https://github.com/toddmotto/fluidvids/blob/master/dist/fluidvids.js 23 var head = document.head || document.getElementsByTagName('head')[0]; 24 var css = '.fluid-width-video-wrapper{width:100%;position:relative;padding:0;}.fluid-width-video-wrapper iframe,.fluid-width-video-wrapper object,.fluid-width-video-wrapper embed {position:absolute;top:0;left:0;width:100%;height:100%;}'; 25 var div = document.createElement("div"); 26 div.innerHTML = '<p>x</p><style id="fit-vids-style">' + css + '</style>'; 27 head.appendChild(div.childNodes[1]); 28 } 29 30 if ( options ) { 31 $.extend( settings, options ); 32 } 33 34 return this.each(function(){ 35 var selectors = [ 36 'iframe[src*="player.vimeo.com"]', 37 'iframe[src*="youtube.com"]', 38 'iframe[src*="youtube-nocookie.com"]', 39 'iframe[src*="kickstarter.com"][src*="video.html"]', 40 'object', 41 'embed' 42 ]; 43 44 if (settings.customSelector) { 45 selectors.push(settings.customSelector); 46 } 47 48 var ignoreList = '.fitvidsignore'; 49 50 if(settings.ignore) { 51 ignoreList = ignoreList + ', ' + settings.ignore; 52 } 53 54 var $allVideos = $(this).find(selectors.join(',')); 55 $allVideos = $allVideos.not('object object'); // SwfObj conflict patch 56 $allVideos = $allVideos.not(ignoreList); // Disable FitVids on this video. 57 58 $allVideos.each(function(){ 59 var $this = $(this); 60 if($this.parents(ignoreList).length > 0) { 61 return; // Disable FitVids on this video. 62 } 63 if (this.tagName.toLowerCase() === 'embed' && $this.parent('object').length || $this.parent('.fluid-width-video-wrapper').length) { return; } 64 if ((!$this.css('height') && !$this.css('width')) && (isNaN($this.attr('height')) || isNaN($this.attr('width')))) 65 { 66 $this.attr('height', 9); 67 $this.attr('width', 16); 68 } 69 var height = ( this.tagName.toLowerCase() === 'object' || ($this.attr('height') && !isNaN(parseInt($this.attr('height'), 10))) ) ? parseInt($this.attr('height'), 10) : $this.height(), 70 width = !isNaN(parseInt($this.attr('width'), 10)) ? parseInt($this.attr('width'), 10) : $this.width(), 71 aspectRatio = height / width; 72 if(!$this.attr('name')){ 73 var videoName = 'fitvid' + $.fn.fitVids._count; 74 $this.attr('name', videoName); 75 $.fn.fitVids._count++; 76 } 77 $this.wrap('<div class="fluid-width-video-wrapper"></div>').parent('.fluid-width-video-wrapper').css('padding-top', (aspectRatio * 100)+'%'); 78 $this.removeAttr('height').removeAttr('width'); 79 }); 80 }); 81 }; 82 83 // Internal counter for unique video names. 84 $.fn.fitVids._count = 0; 85 86// Works with either jQuery or Zepto 87})( window.jQuery || window.Zepto );; 88/*! 89* jQuery Mobile 1.5.0-alpha.1 90* (c) 2010, 2017 jQuery Foundation, Inc. 91* jquery.org/license 92* 93* Modified to adapt the latest jQuery version (v3 above) included on WordPress 5.6: 94* - (2020-12-11) - Try to access `.concat` of undefined `$.event.props` - removed. 95* - (2021-02-04) - jQuery bind method is deprecated. 96* - (2021-02-04) - jQuery unbind method is deprecated. 97* - (2024-10-13) - Upgrade to 1.5.0-alpha.1 98* - (2024-10-20) - Remove code unrelated to swipe feature 99*/ 100 101(function(e, t, n) { 102 typeof define == "function" && define.amd 103 ? define(["jquery"], function(r) { 104 return n(r, e, t), r.mobile; 105 }) 106 : n(e.jQuery, e, t); 107})(this, document, function(e, t, n, r) { 108 (function(e, t, n, r) { 109 function T(e) { 110 while (e && typeof e.originalEvent != "undefined") e = e.originalEvent; 111 return e; 112 } 113 114 function N(t, n) { 115 var i = t.type, 116 s, 117 o, 118 a, 119 l, 120 c, 121 h, 122 p, 123 d, 124 v; 125 t = e.Event(t); 126 t.type = n; 127 s = t.originalEvent; 128 o = []; 129 i.search(/^(mouse|click)/) > -1 && (o = f); 130 if (s) for (p = o.length, l; p; ) (l = o[--p]), (t[l] = s[l]); 131 i.search(/mouse(down|up)|click/) > -1 && !t.which && (t.which = 1); 132 if (i.search(/^touch/) !== -1) { 133 a = T(s); 134 i = a.touches; 135 c = a.changedTouches; 136 h = i && i.length ? i[0] : c && c.length ? c[0] : r; 137 if (h) for (d = 0, v = u.length; d < v; d++) (l = u[d]), (t[l] = h[l]); 138 } 139 return t; 140 } 141 142 function P(t, n, r) { 143 var i; 144 if ((r && r[t]) || (!r && k(n.target, t))) 145 (i = N(n, t)), e(n.target).trigger(i); 146 return i; 147 } 148 149 function B(t) { 150 var n = T(t).touches, 151 r, 152 i, 153 o; 154 n && n.length === 1 && 155 ((r = t.target), 156 (i = C(r)), 157 i.hasVirtualBinding && 158 ((E = w++), 159 e.data(r, s, E), 160 D(), 161 M(), 162 (d = !1), 163 (o = T(t).touches[0]), 164 (h = o.pageX), 165 (p = o.pageY), 166 P("vmouseover", t, i), 167 P("vmousedown", t, i))); 168 } 169 170 function j(e) { 171 if (g) return; 172 d || P("vmousecancel", e, C(e.target)); 173 d = !0; 174 _(); 175 } 176 177 function F(t) { 178 if (g) return; 179 var n = T(t).touches[0], 180 r = d, 181 i = e.vmouse.moveDistanceThreshold, 182 s = C(t.target); 183 d =
184 d || Math.abs(n.pageX - h) > i || Math.abs(n.pageY - p) > i; 185 d && !r && P("vmousecancel", t, s); 186 P("vmousemove", t, s); 187 _(); 188 } 189 190 function I(e) { 191 if (g) return; 192 A(); 193 var t = C(e.target), 194 n, 195 r; 196 P("vmouseup", e, t); 197 d || 198 ((n = P("vclick", e, t)), 199 n && 200 n.isDefaultPrevented() && 201 ((r = T(e).changedTouches[0]), 202 v.push({ touchID: E, x: r.clientX, y: r.clientY }), 203 (m = !0))); 204 P("vmouseout", e, t); 205 d = !1; 206 _(); 207 } 208 209 function U(t) { 210 var n = t.substr(1); 211 return { 212 setup: function() { 213 q(this) || e.data(this, i, {}); 214 var r = e.data(this, i); 215 r[t] = !0; 216 l[t] = (l[t] || 0) + 1; 217 l[t] === 1 && b.on(n, H); 218 e(this).on(n, R); 219 y && 220 ((l.touchstart = (l.touchstart || 0) + 1), 221 l.touchstart === 1 && 222 b 223 .on("touchstart", B) 224 .on("touchend", I) 225 .on("touchmove", F) 226 .on("scroll", j)); 227 }, 228 teardown: function() { 229 --l[t]; 230 l[t] || b.off(n, H); 231 y && 232 (--l.touchstart, 233 l.touchstart || 234 b 235 .off("touchstart", B) 236 .off("touchmove", F) 237 .off("touchend", I) 238 .off("scroll", j)); 239 var r = e(this), 240 s = e.data(this, i); 241 s && (s[t] = !1); 242 r.off(n, R); 243 q(this) || r.removeData(i); 244 } 245 }; 246 } 247 248 var i = "virtualMouseBindings", 249 s = "virtualTouchID", 250 o = "vmouseover vmousedown vmousemove vmouseup vclick vmouseout vmousecancel".split( 251 " " 252 ), 253 u = "clientX clientY pageX pageY screenX screenY".split(" "), 254 a = e.event.mouseHooks ? e.event.mouseHooks.props : [], 255 f = [], 256 l = {}, 257 c = 0, 258 h = 0, 259 p = 0, 260 d = !1, 261 v = [], 262 m = !1, 263 g = !1, 264 y = "addEventListener" in n, 265 b = e(n), 266 w = 1, 267 E = 0, 268 S, 269 x; 270 e.vmouse = { 271 moveDistanceThreshold: 10, 272 clickDistanceThreshold: 10, 273 resetTimerDuration: 1500 274 }; 275 for (x = 0; x < o.length; x++) e.event.special[o[x]] = U(o[x]); 276 y && 277 n.addEventListener( 278 "click", 279 function(t) { 280 var n = v.length, 281 r = t.target, 282 i, 283 o, 284 u, 285 a, 286 f, 287 l; 288 if (n) { 289 i = t.clientX; 290 o = t.clientY; 291 S = e.vmouse.clickDistanceThreshold; 292 u = r; 293 while (u) { 294 for (a = 0; a < n; a++) { 295 f = v[a]; 296 l = 0; 297 if ( 298 (u === r && 299 Math.abs(f.x - i) < S && 300 Math.abs(f.y - o) < S) || 301 e.data(u, s) === f.touchID 302 ) { 303 t.preventDefault(); 304 t.stopPropagation(); 305 return; 306 } 307 } 308 u = u.parentNode; 309 } 310 } 311 }, 312 !0 313 ); 314 })(e, t, n), 315 function(e) { 316 e.mobile = {}; 317 }(e), 318 function(e, t) { 319 var r = { touch: "ontouchend" in n }; 320 e.mobile.support = e.mobile.support || {}; 321 e.extend(e.support, r); 322 e.extend(e.mobile.support, r); 323 }(e), 324 function(e, t, r) { 325 function l(t, n, i, s) { 326 var o = i.type; 327 i.type = n; 328 s ? e.event.trigger(i, r, t) : e.event.dispatch.call(t, i); 329 i.type = o; 330 } 331 var i = e(n), 332 s = e.mobile.support.touch, 333 o = "touchmove scroll", 334 u = s ? "touchstart" : "mousedown", 335 a = s ? "touchend" : "mouseup", 336 f = s ? "touchmove" : "mousemove"; 337 e.each( 338 "touchstart touchmove touchend tap taphold swipe swipeleft swiperight scrollstart scrollstop".split( 339 " " 340 ), 341 function(t, n) { 342 e.fn[n] = function(e) { 343 return e ? this.on(n, e) : this.trigger(n); 344 }; 345 e.attrFn && (e.attrFn[n] = !0); 346 } 347 ); 348 e.event.special.swipe = { 349 scrollSupressionThreshold: 30, 350 durationThreshold: 1e3, 351 horizontalDistanceThreshold: 30, 352 verticalDistanceThreshold: 30, 353 getLocation: function(e) { 354 var n = t.pageXOffset, 355 r = t.pageYOffset, 356 i = e.clientX, 357 s = e.clientY; 358 if ( 359 (e.pageY === 0 && Math.floor(s) > Math.floor(e.pageY)) || 360 (e.pageX === 0 && Math.floor(i) > Math.floor(e.pageX)) 361 ) 362 (i -= n), (s -= r); 363 else if (s < e.pageY - r || i < e.pageX - n) 364 (i = e.pageX - n), (s = e.pageY - r); 365 return { x: i, y: s }; 366 }, 367 start: function(t) { 368 var n = t.originalEvent.touches ? t.originalEvent.touches[0] : t, 369 r = e.event.special.swipe.getLocation(n); 370 return { 371 time: new Date().getTime(), 372 coords: [r.x, r.y], 373 origin: e(t.target) 374 }; 375 }, 376 stop: function(t) { 377 var n = t.originalEvent.touches ? t.originalEvent.touches[0] : t, 378 r = e.event.special.swipe.getLocation(n); 379 return { time: new Date().getTime(), coords: [r.x, r.y] }; 380 }, 381 handleSwipe: function(t, n, r, i) { 382 if ( 383 n.time - t.time < e.event.special.swipe.durationThreshold && 384 Math.abs(t.coords[0] - n.coords[0]) > 385 e.event.special.swipe.horizontalDistanceThreshold && 386 Math.abs(t.coords[1] - n.coords[1]) < 387 e.event.special.swipe.verticalDistanceThreshold 388 ) { 389 var s = t.coords[0] > n.coords[0] ? "swipeleft" : "swiperight"; 390 return ( 391 l(r, "swipe", e.Event("swipe", { target: i, swipestart: t, swipestop: n }), !0), 392 l(r, s, e.Event(s, { target: i, swipestart: t, swipestop: n }), !0), 393 !0 394 ); 395 } 396 return !1; 397 }, 398 eventInProgress: !1, 399 setup: function() { 400 var t, 401 n = this, 402 r = e(n), 403 s = {}; 404 (t = e.data(this, "mobile-events")), 405 t || ((t = { length: 0 }), e.data(this, "mobile-events", t)), 406 t.length++, 407 (t.swipe = s), 408 (s.start = function(t) { 409 if (e.event.special.swipe.eventInProgress) return; 410 e.event.special.swipe.eventInProgress = !0; 411 var r, 412 o = e.event.special.swipe.start(t), 413 u = t.target, 414 l = !1; 415 (s.move = function(t) { 416 if (!o || t.isDefaultPrevented()) return; 417 (r = e.event.special.swipe.stop(t)), 418 l || 419 (l = e.event.special.swipe.handleSwipe(o, r, n, u)), 420 l && (e.event.special.swipe.eventInProgress = !1),
421 Math.abs(o.coords[0] - r.coords[0]) > 422 e.event.special.swipe.scrollSupressionThreshold && 423 t.preventDefault(); 424 }), 425 (s.stop = function() { 426 l = !0; 427 e.event.special.swipe.eventInProgress = !1; 428 i.off(f, s.move); 429 s.move = null; 430 }); 431 i.on(f, s.move).one(a, s.stop); 432 }), 433 r.on(u, s.start); 434 }, 435 teardown: function() { 436 var t, n; 437 (t = e.data(this, "mobile-events")), 438 t && ((n = t.swipe), delete t.swipe, t.length--, t.length === 0 && e.removeData(this, "mobile-events")), 439 n && 440 (n.start && e(this).off(u, n.start), 441 n.move && i.off(f, n.move), 442 n.stop && i.off(a, n.stop)); 443 } 444 }; 445 e.each( 446 { swipeleft: "swipe.left", swiperight: "swipe.right" }, 447 function(t, n) { 448 e.event.special[t] = { 449 setup: function() { 450 e(this).on(n, e.noop); 451 }, 452 teardown: function() { 453 e(this).off(n); 454 } 455 }; 456 } 457 ); 458 }(e, this); 459});;
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.