holder_rails 2.5.0 → 2.5.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/holder_rails/version.rb +1 -1
- data/vendor/assets/javascripts/holder.js +25 -13
- data/vendor/assets/javascripts/holder.min.js +3 -3
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: fc4ac8bc0d47875411ad35a7d876139a5a5e9a61
|
4
|
+
data.tar.gz: d795d0d4ef3ebbcd6eecf78f489405e155953208
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5d09dd56c7047b5407112f5076995b7a567dbd28336fcf165e8ffcbc14c7e6ad77c9b06643eba3f651fe679d2d329e7ec4b34dd84c9a46fda4b635f879059f36
|
7
|
+
data.tar.gz: ace91629ebd8c6e57b591d896b3cca880af59881e86c5a34d62e1682b535098dbfe0015b2da5b8cec29037abfb2971755b14fb15c3181afe98fbf420e9bf9027
|
data/lib/holder_rails/version.rb
CHANGED
@@ -1,10 +1,10 @@
|
|
1
1
|
/*!
|
2
2
|
|
3
3
|
Holder - client side image placeholders
|
4
|
-
Version 2.5.
|
4
|
+
Version 2.5.2+2mg3u
|
5
5
|
© 2015 Ivan Malopinsky - http://imsky.co
|
6
6
|
|
7
|
-
Site: http://
|
7
|
+
Site: http://holderjs.com
|
8
8
|
Issues: https://github.com/imsky/holder/issues
|
9
9
|
License: http://opensource.org/licenses/MIT
|
10
10
|
|
@@ -317,10 +317,10 @@ if (!window.requestAnimationFrame) {
|
|
317
317
|
// window.requestAnimationFrame
|
318
318
|
global.requestAnimationFrame = function (callback) {
|
319
319
|
return webkitRequestAnimationFrame(function () {
|
320
|
-
callback(performance.now());
|
320
|
+
callback(global.performance.now());
|
321
321
|
});
|
322
322
|
};
|
323
|
-
|
323
|
+
|
324
324
|
// window.cancelAnimationFrame
|
325
325
|
global.cancelAnimationFrame = webkitCancelAnimationFrame;
|
326
326
|
}(this));
|
@@ -330,13 +330,21 @@ if (!window.requestAnimationFrame) {
|
|
330
330
|
// window.requestAnimationFrame
|
331
331
|
global.requestAnimationFrame = function (callback) {
|
332
332
|
return mozRequestAnimationFrame(function () {
|
333
|
-
callback(performance.now());
|
333
|
+
callback(global.performance.now());
|
334
334
|
});
|
335
335
|
};
|
336
336
|
|
337
337
|
// window.cancelAnimationFrame
|
338
338
|
global.cancelAnimationFrame = mozCancelAnimationFrame;
|
339
339
|
}(this));
|
340
|
+
} else {
|
341
|
+
(function (global) {
|
342
|
+
global.requestAnimationFrame = function (callback) {
|
343
|
+
return global.setTimeout(callback, 1000 / 60);
|
344
|
+
}
|
345
|
+
|
346
|
+
global.cancelAnimationFrame = global.clearTimeout;
|
347
|
+
})(this);
|
340
348
|
}
|
341
349
|
}
|
342
350
|
(function (global, factory) {
|
@@ -380,7 +388,7 @@ Holder.js - client side image placeholders
|
|
380
388
|
var SVG_NS = 'http://www.w3.org/2000/svg';
|
381
389
|
var NODE_TYPE_COMMENT = 8;
|
382
390
|
var document = global.document;
|
383
|
-
var version = '2.5.
|
391
|
+
var version = '2.5.2';
|
384
392
|
var generatorComment = '\n' +
|
385
393
|
'Created with Holder.js ' + version + '.\n' +
|
386
394
|
'Learn more at http://holderjs.com\n' +
|
@@ -1124,7 +1132,8 @@ Holder.js - client side image placeholders
|
|
1124
1132
|
}
|
1125
1133
|
|
1126
1134
|
holderTextGroup.moveTo(
|
1127
|
-
(scene.width - holderTextGroup.width) / 2,
|
1135
|
+
(scene.width - holderTextGroup.width) / 2,
|
1136
|
+
(scene.height - holderTextGroup.height) / 2,
|
1128
1137
|
null);
|
1129
1138
|
|
1130
1139
|
//If the text exceeds vertical space, move it down so the first line is visible
|
@@ -1138,7 +1147,8 @@ Holder.js - client side image placeholders
|
|
1138
1147
|
holderTextGroup.add(line);
|
1139
1148
|
|
1140
1149
|
holderTextGroup.moveTo(
|
1141
|
-
(scene.width - tpdata.boundingBox.width) / 2,
|
1150
|
+
(scene.width - tpdata.boundingBox.width) / 2,
|
1151
|
+
(scene.height - tpdata.boundingBox.height) / 2,
|
1142
1152
|
null);
|
1143
1153
|
}
|
1144
1154
|
|
@@ -1376,8 +1386,7 @@ Holder.js - client side image placeholders
|
|
1376
1386
|
'style': cssProps({
|
1377
1387
|
'font-weight': htgProps.font.weight,
|
1378
1388
|
'font-size': htgProps.font.size + htgProps.font.units,
|
1379
|
-
'font-family': htgProps.font.family
|
1380
|
-
'dominant-baseline': 'middle'
|
1389
|
+
'font-family': htgProps.font.family
|
1381
1390
|
})
|
1382
1391
|
});
|
1383
1392
|
|
@@ -1477,6 +1486,7 @@ Holder.js - client side image placeholders
|
|
1477
1486
|
|
1478
1487
|
return function(sceneGraph, renderSettings) {
|
1479
1488
|
var root = sceneGraph.root;
|
1489
|
+
|
1480
1490
|
var holderURL = renderSettings.holderSettings.flags.holderURL;
|
1481
1491
|
var commentNode = document.createComment('\n' + 'Source URL: ' + holderURL + generatorComment);
|
1482
1492
|
|
@@ -1498,14 +1508,17 @@ Holder.js - client side image placeholders
|
|
1498
1508
|
var textGroup = root.children.holderTextGroup;
|
1499
1509
|
var tgProps = textGroup.properties;
|
1500
1510
|
var textGroupEl = newEl('g', SVG_NS);
|
1511
|
+
var tpdata = textGroup.textPositionData;
|
1501
1512
|
svg.appendChild(textGroupEl);
|
1502
1513
|
|
1514
|
+
textGroup.y += tpdata.boundingBox.height * 0.8;
|
1515
|
+
|
1503
1516
|
for (var lineKey in textGroup.children) {
|
1504
1517
|
var line = textGroup.children[lineKey];
|
1505
1518
|
for (var wordKey in line.children) {
|
1506
1519
|
var word = line.children[wordKey];
|
1507
1520
|
var x = textGroup.x + line.x + word.x;
|
1508
|
-
var y = textGroup.y + line.y + word.y
|
1521
|
+
var y = textGroup.y + line.y + word.y;
|
1509
1522
|
|
1510
1523
|
var textEl = newEl('text', SVG_NS);
|
1511
1524
|
var textNode = document.createTextNode(null);
|
@@ -1517,8 +1530,7 @@ Holder.js - client side image placeholders
|
|
1517
1530
|
'fill': tgProps.fill,
|
1518
1531
|
'font-weight': tgProps.font.weight,
|
1519
1532
|
'font-family': tgProps.font.family + ', monospace',
|
1520
|
-
'font-size': tgProps.font.size + tgProps.font.units
|
1521
|
-
'dominant-baseline': 'central'
|
1533
|
+
'font-size': tgProps.font.size + tgProps.font.units
|
1522
1534
|
})
|
1523
1535
|
});
|
1524
1536
|
|
@@ -1,12 +1,12 @@
|
|
1
1
|
/*!
|
2
2
|
|
3
3
|
Holder - client side image placeholders
|
4
|
-
Version 2.5.
|
4
|
+
Version 2.5.2+2mg3u
|
5
5
|
© 2015 Ivan Malopinsky - http://imsky.co
|
6
6
|
|
7
|
-
Site: http://
|
7
|
+
Site: http://holderjs.com
|
8
8
|
Issues: https://github.com/imsky/holder/issues
|
9
9
|
License: http://opensource.org/licenses/MIT
|
10
10
|
|
11
11
|
*/
|
12
|
-
!function(a,b,c){b[a]=c}("onDomReady",this,function(a){"use strict";function b(a){if(!v){if(!g.body)return e(b);for(v=!0;a=w.shift();)e(a)}}function c(a){(t||a.type===i||g[m]===l)&&(d(),b())}function d(){t?(g[s](q,c,j),a[s](i,c,j)):(g[o](r,c),a[o](k,c))}function e(a,b){setTimeout(a,+b>=0?b:1)}function f(a){v?e(a):w.push(a)}null==document.readyState&&document.addEventListener&&(document.addEventListener("DOMContentLoaded",function y(){document.removeEventListener("DOMContentLoaded",y,!1),document.readyState="complete"},!1),document.readyState="loading");var g=a.document,h=g.documentElement,i="load",j=!1,k="on"+i,l="complete",m="readyState",n="attachEvent",o="detachEvent",p="addEventListener",q="DOMContentLoaded",r="onreadystatechange",s="removeEventListener",t=p in g,u=j,v=j,w=[];if(g[m]===l)e(b);else if(t)g[p](q,c,j),a[p](i,c,j);else{g[n](r,c),a[n](k,c);try{u=null==a.frameElement&&h}catch(x){}u&&u.doScroll&&!function z(){if(!v){try{u.doScroll("left")}catch(a){return e(z,50)}d(),b()}}()}return f.version="1.4.0",f.isReady=function(){return v},f}(this)),document.querySelectorAll||(document.querySelectorAll=function(a){var b,c=document.createElement("style"),d=[];for(document.documentElement.firstChild.appendChild(c),document._qsa=[],c.styleSheet.cssText=a+"{x-qsa:expression(document._qsa && document._qsa.push(this))}",window.scrollBy(0,0),c.parentNode.removeChild(c);document._qsa.length;)b=document._qsa.shift(),b.style.removeAttribute("x-qsa"),d.push(b);return document._qsa=null,d}),document.querySelector||(document.querySelector=function(a){var b=document.querySelectorAll(a);return b.length?b[0]:null}),document.getElementsByClassName||(document.getElementsByClassName=function(a){return a=String(a).replace(/^|\s+/g,"."),document.querySelectorAll(a)}),Object.keys||(Object.keys=function(a){if(a!==Object(a))throw TypeError("Object.keys called on non-object");var b,c=[];for(b in a)Object.prototype.hasOwnProperty.call(a,b)&&c.push(b);return c}),function(a){var b="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";a.atob=a.atob||function(a){a=String(a);var c,d=0,e=[],f=0,g=0;if(a=a.replace(/\s/g,""),a.length%4===0&&(a=a.replace(/=+$/,"")),a.length%4===1)throw Error("InvalidCharacterError");if(/[^+/0-9A-Za-z]/.test(a))throw Error("InvalidCharacterError");for(;d<a.length;)c=b.indexOf(a.charAt(d)),f=f<<6|c,g+=6,24===g&&(e.push(String.fromCharCode(f>>16&255)),e.push(String.fromCharCode(f>>8&255)),e.push(String.fromCharCode(255&f)),g=0,f=0),d+=1;return 12===g?(f>>=4,e.push(String.fromCharCode(255&f))):18===g&&(f>>=2,e.push(String.fromCharCode(f>>8&255)),e.push(String.fromCharCode(255&f))),e.join("")},a.btoa=a.btoa||function(a){a=String(a);var c,d,e,f,g,h,i,j=0,k=[];if(/[^\x00-\xFF]/.test(a))throw Error("InvalidCharacterError");for(;j<a.length;)c=a.charCodeAt(j++),d=a.charCodeAt(j++),e=a.charCodeAt(j++),f=c>>2,g=(3&c)<<4|d>>4,h=(15&d)<<2|e>>6,i=63&e,j===a.length+2?(h=64,i=64):j===a.length+1&&(i=64),k.push(b.charAt(f),b.charAt(g),b.charAt(h),b.charAt(i));return k.join("")}}(this),Object.prototype.hasOwnProperty||(Object.prototype.hasOwnProperty=function(a){var b=this.__proto__||this.constructor.prototype;return a in this&&(!(a in b)||b[a]!==this[a])}),window.requestAnimationFrame||(window.webkitRequestAnimationFrame?!function(a){a.requestAnimationFrame=function(a){return webkitRequestAnimationFrame(function(){a(performance.now())})},a.cancelAnimationFrame=webkitCancelAnimationFrame}(this):window.mozRequestAnimationFrame&&!function(a){a.requestAnimationFrame=function(a){return mozRequestAnimationFrame(function(){a(performance.now())})},a.cancelAnimationFrame=mozCancelAnimationFrame}(this)),function(a,b){a.augment=b()}(this,function(){var a=function(){},b=Array.prototype.slice,c=function(c,d){var e=a.prototype="function"==typeof c?c.prototype:c,f=new a,g=d.apply(f,b.call(arguments,2).concat(e));if("object"==typeof g)for(var h in g)f[h]=g[h];if(!f.hasOwnProperty("constructor"))return f;var i=f.constructor;return i.prototype=f,i};return c.defclass=function(a){var b=a.constructor;return b.prototype=a,b},c.extend=function(a,b){return c(a,function(a){return this.uber=a,b})},c}),function(a,b){function c(a,b,c,f){var g=d(c.substr(c.lastIndexOf(a.domain)),a);g&&e({mode:null,el:f,flags:g,engineSettings:b})}function d(a,b){for(var c={theme:s(G.settings.themes.gray,null),stylesheets:b.stylesheets,holderURL:[]},d=!1,e=String.fromCharCode(11),f=a.replace(/([^\\])\//g,"$1"+e).split(e),g=/%[0-9a-f]{2}/gi,h=f.length,i=0;h>i;i++){var j=f[i];if(j.match(g))try{j=decodeURIComponent(j)}catch(k){j=f[i]}var l=!1;if(G.flags.dimensions.match(j))d=!0,c.dimensions=G.flags.dimensions.output(j),l=!0;else if(G.flags.fluid.match(j))d=!0,c.dimensions=G.flags.fluid.output(j),c.fluid=!0,l=!0;else if(G.flags.textmode.match(j))c.textmode=G.flags.textmode.output(j),l=!0;else if(G.flags.colors.match(j)){var m=G.flags.colors.output(j);c.theme=s(c.theme,m),l=!0}else if(b.themes[j])b.themes.hasOwnProperty(j)&&(c.theme=s(b.themes[j],null)),l=!0;else if(G.flags.font.match(j))c.font=G.flags.font.output(j),l=!0;else if(G.flags.auto.match(j))c.auto=!0,l=!0;else if(G.flags.text.match(j))c.text=G.flags.text.output(j),l=!0;else if(G.flags.size.match(j))c.size=G.flags.size.output(j),l=!0;else if(G.flags.random.match(j)){null==G.vars.cache.themeKeys&&(G.vars.cache.themeKeys=Object.keys(b.themes));var n=G.vars.cache.themeKeys[0|Math.random()*G.vars.cache.themeKeys.length];c.theme=s(b.themes[n],null),l=!0}l&&c.holderURL.push(j)}return c.holderURL.unshift(b.domain),c.holderURL=c.holderURL.join("/"),d?c:!1}function e(a){var b=a.mode,c=a.el,d=a.flags,e=a.engineSettings,g=d.dimensions,h=d.theme,k=g.width+"x"+g.height;if(b=null==b?d.fluid?"fluid":"image":b,null!=d.text&&(h.text=d.text,"object"===c.nodeName.toLowerCase())){for(var l=h.text.split("\\n"),m=0;m<l.length;m++)l[m]=y(l[m]);h.text=l.join("\\n")}var n=d.holderURL,o=s(e,null);d.font&&(h.font=d.font,!o.noFontFallback&&"img"===c.nodeName.toLowerCase()&&G.setup.supportsCanvas&&"svg"===o.renderer&&(o=s(o,{renderer:"canvas"}))),d.font&&"canvas"==o.renderer&&(o.reRender=!0),"background"==b?null==c.getAttribute("data-background-src")&&p(c,{"data-background-src":n}):p(c,{"data-src":n}),d.theme=h,c.holderData={flags:d,engineSettings:o},("image"==b||"fluid"==b)&&p(c,{alt:h.text?h.text+" ["+k+"]":k});var q={mode:b,el:c,holderSettings:{dimensions:g,theme:h,flags:d},engineSettings:o};"image"==b?("html"!=o.renderer&&d.auto||(c.style.width=g.width+"px",c.style.height=g.height+"px"),"html"==o.renderer?c.style.backgroundColor=h.background:(f(q),"exact"==d.textmode&&(c.holderData.resizeUpdate=!0,G.vars.resizableImages.push(c),i(c)))):"background"==b&&"html"!=o.renderer?f(q):"fluid"==b&&(c.holderData.resizeUpdate=!0,"%"==g.height.slice(-1)?c.style.height=g.height:null!=d.auto&&d.auto||(c.style.height=g.height+"px"),"%"==g.width.slice(-1)?c.style.width=g.width:null!=d.auto&&d.auto||(c.style.width=g.width+"px"),("inline"==c.style.display||""===c.style.display||"none"==c.style.display)&&(c.style.display="block"),j(c),"html"==o.renderer?c.style.backgroundColor=h.background:(G.vars.resizableImages.push(c),i(c)))}function f(a){function c(){var b=null;switch(i.renderer){case"canvas":b=I(k,a);break;case"svg":b=J(k,a);break;default:throw"Holder: invalid renderer: "+i.renderer}return b}var d=null,e=a.mode,f=a.holderSettings,h=a.el,i=a.engineSettings;switch(i.renderer){case"svg":if(!G.setup.supportsSVG)return;break;case"canvas":if(!G.setup.supportsCanvas)return;break;default:return}var j={width:f.dimensions.width,height:f.dimensions.height,theme:f.theme,flags:f.flags},k=g(j);if(d=c(),null==d)throw"Holder: couldn't render placeholder";"background"==e?(h.style.backgroundImage="url("+d+")",h.style.backgroundSize=j.width+"px "+j.height+"px"):("img"===h.nodeName.toLowerCase()?p(h,{src:d}):"object"===h.nodeName.toLowerCase()&&(p(h,{data:d}),p(h,{type:"image/svg+xml"})),i.reRender&&b.setTimeout(function(){var a=c();if(null==a)throw"Holder: couldn't render placeholder";"img"===h.nodeName.toLowerCase()?p(h,{src:a}):"object"===h.nodeName.toLowerCase()&&(p(h,{data:a}),p(h,{type:"image/svg+xml"}))},100)),p(h,{"data-holder-rendered":!0})}function g(a){function b(a,b,c,d){b.width=c,b.height=d,a.width=Math.max(a.width,b.width),a.height+=b.height,a.add(b)}var c=G.defaults.size;switch(parseFloat(a.theme.size)?c=a.theme.size:parseFloat(a.flags.size)&&(c=a.flags.size),a.font={family:a.theme.font?a.theme.font:"Arial, Helvetica, Open Sans, sans-serif",size:h(a.width,a.height,c),units:a.theme.units?a.theme.units:G.defaults.units,weight:a.theme.fontweight?a.theme.fontweight:"bold"},a.text=a.theme.text?a.theme.text:Math.floor(a.width)+"x"+Math.floor(a.height),a.flags.textmode){case"literal":a.text=a.flags.dimensions.width+"x"+a.flags.dimensions.height;break;case"exact":if(!a.flags.exactDimensions)break;a.text=Math.floor(a.flags.exactDimensions.width)+"x"+Math.floor(a.flags.exactDimensions.height)}var d=new K({width:a.width,height:a.height}),e=d.Shape,f=new e.Rect("holderBg",{fill:a.theme.background});f.resize(a.width,a.height),d.root.add(f);var g=new e.Group("holderTextGroup",{text:a.text,align:"center",font:a.font,fill:a.theme.foreground});g.moveTo(null,null,1),d.root.add(g);var i=g.textPositionData=H(d);if(!i)throw"Holder: staging fallback not supported yet.";g.properties.leading=i.boundingBox.height;var j=null,k=null;if(i.lineCount>1){var l=0,m=0,n=a.width*G.setup.lineWrapRatio,o=0;k=new e.Group("line"+o);for(var p=0;p<i.words.length;p++){var q=i.words[p];j=new e.Text(q.text);var r="\\n"==q.text;(l+q.width>=n||r===!0)&&(b(g,k,l,g.properties.leading),l=0,m+=g.properties.leading,o+=1,k=new e.Group("line"+o),k.y=m),r!==!0&&(j.moveTo(l,0),l+=i.spaceWidth+q.width,k.add(j))}b(g,k,l,g.properties.leading);for(var s in g.children)k=g.children[s],k.moveTo((g.width-k.width)/2,null,null);g.moveTo((a.width-g.width)/2,(a.height-g.height)/2,null),(a.height-g.height)/2<0&&g.moveTo(null,0,null)}else j=new e.Text(a.text),k=new e.Group("line0"),k.add(j),g.add(k),g.moveTo((a.width-i.boundingBox.width)/2,(a.height-i.boundingBox.height)/2,null);return d}function h(a,b,c){var d=parseInt(a,10),e=parseInt(b,10),f=Math.max(d,e),g=Math.min(d,e),h=.8*Math.min(g,f*G.defaults.scale);return Math.round(Math.max(c,h))}function i(a){var b;b=null==a||null==a.nodeType?G.vars.resizableImages:[a];for(var c=0,d=b.length;d>c;c++){var e=b[c];if(e.holderData){var g=e.holderData.flags,h=k(e);if(h){if(!e.holderData.resizeUpdate)continue;if(g.fluid&&g.auto){var i=e.holderData.fluidConfig;switch(i.mode){case"width":h.height=h.width/i.ratio;break;case"height":h.width=h.height*i.ratio}}var j={mode:"image",holderSettings:{dimensions:h,theme:g.theme,flags:g},el:e,engineSettings:e.holderData.engineSettings};"exact"==g.textmode&&(g.exactDimensions=h,j.holderSettings.dimensions=g.dimensions),f(j)}else n(e)}}}function j(a){if(a.holderData){var b=k(a);if(b){var c=a.holderData.flags,d={fluidHeight:"%"==c.dimensions.height.slice(-1),fluidWidth:"%"==c.dimensions.width.slice(-1),mode:null,initialDimensions:b};d.fluidWidth&&!d.fluidHeight?(d.mode="width",d.ratio=d.initialDimensions.width/parseFloat(c.dimensions.height)):!d.fluidWidth&&d.fluidHeight&&(d.mode="height",d.ratio=parseFloat(c.dimensions.width)/d.initialDimensions.height),a.holderData.fluidConfig=d}else n(a)}}function k(a){var b={height:a.clientHeight,width:a.clientWidth};return b.height&&b.width?b:!1}function l(){for(var a,c=[],d=Object.keys(G.vars.invisibleImages),e=0,f=d.length;f>e;e++)a=G.vars.invisibleImages[d[e]],k(a)&&"img"==a.nodeName.toLowerCase()&&(c.push(a),delete G.vars.invisibleImages[d[e]]);c.length&&F.run({images:c}),b.requestAnimationFrame(l)}function m(){G.vars.visibilityCheckStarted||(b.requestAnimationFrame(l),G.vars.visibilityCheckStarted=!0)}function n(a){a.holderData.invisibleId||(G.vars.invisibleId+=1,G.vars.invisibleImages["i"+G.vars.invisibleId]=a,a.holderData.invisibleId=G.vars.invisibleId)}function o(a,b){return null==b?C.createElement(a):C.createElementNS(b,a)}function p(a,b){for(var c in b)a.setAttribute(c,b[c])}function q(a,b,c){if(null==a){a=o("svg",A);var d=o("defs",A);a.appendChild(d)}a.webkitMatchesSelector&&a.setAttribute("xmlns",A);for(var e=0;e<a.childNodes.length;e++)a.childNodes[e].nodeType===B&&a.removeChild(a.childNodes[e]);return p(a,{width:b,height:c,viewBox:"0 0 "+b+" "+c,preserveAspectRatio:"none"}),a}function r(a,c){if(b.XMLSerializer){{var d=new XMLSerializer,e="",f=c.stylesheets;a.querySelector("defs")}if(c.svgXMLStylesheet){for(var g=(new DOMParser).parseFromString("<xml />","application/xml"),h=f.length-1;h>=0;h--){var i=g.createProcessingInstruction("xml-stylesheet",'href="'+f[h]+'" rel="stylesheet"');g.insertBefore(i,g.firstChild)}var j=g.createProcessingInstruction("xml",'version="1.0" encoding="UTF-8" standalone="yes"');g.insertBefore(j,g.firstChild),g.removeChild(g.documentElement),e=d.serializeToString(g)}var k=d.serializeToString(a);return k=k.replace(/\&(\#[0-9]{2,}\;)/g,"&$1"),e+k}}function s(a,b){var c={};for(var d in a)a.hasOwnProperty(d)&&(c[d]=a[d]);if(null!=b)for(var e in b)b.hasOwnProperty(e)&&(c[e]=b[e]);return c}function t(a){var b=[];for(var c in a)a.hasOwnProperty(c)&&b.push(c+":"+a[c]);return b.join(";")}function u(a){G.vars.debounceTimer||a.call(this),G.vars.debounceTimer&&b.clearTimeout(G.vars.debounceTimer),G.vars.debounceTimer=b.setTimeout(function(){G.vars.debounceTimer=null,a.call(this)},G.setup.debounce)}function v(){u(function(){i(null)})}function w(a){var c=null;return"string"==typeof a?c=C.querySelectorAll(a):b.NodeList&&a instanceof b.NodeList?c=a:b.Node&&a instanceof b.Node?c=[a]:b.HTMLCollection&&a instanceof b.HTMLCollection?c=a:a instanceof Array?c=a:null===a&&(c=[]),c}function x(a,b){var c=new Image;c.onerror=function(){b.call(this,!1)},c.onload=function(){b.call(this,!0)},c.src=a}function y(a){for(var b=[],c=0,d=a.length-1;d>=0;d--)c=a.charCodeAt(d),b.unshift(c>128?["&#",c,";"].join(""):a[d]);return b.join("")}function z(a){return a.replace(/&#(\d+);/g,function(a,b){return String.fromCharCode(b)})}var A="http://www.w3.org/2000/svg",B=8,C=b.document,D="2.5.0",E="\nCreated with Holder.js "+D+".\nLearn more at http://holderjs.com\n(c) 2012-2015 Ivan Malopinsky - http://imsky.co\n",F={version:D,addTheme:function(a,b){return null!=a&&null!=b&&(G.settings.themes[a]=b),delete G.vars.cache.themeKeys,this},addImage:function(a,b){var c=C.querySelectorAll(b);if(c.length)for(var d=0,e=c.length;e>d;d++){var f=o("img");p(f,{"data-src":a}),c[d].appendChild(f)}return this},setResizeUpdate:function(a,b){a.holderData&&(a.holderData.resizeUpdate=!!b,a.holderData.resizeUpdate&&i(a))},run:function(a){a=a||{};var f={};G.vars.preempted=!0;var g=s(G.settings,a);f.renderer=g.renderer?g.renderer:G.setup.renderer,-1===G.setup.renderers.join(",").indexOf(f.renderer)&&(f.renderer=G.setup.supportsSVG?"svg":G.setup.supportsCanvas?"canvas":"html");var h=w(g.images),i=w(g.bgnodes),j=w(g.stylenodes),k=w(g.objects);f.stylesheets=[],f.svgXMLStylesheet=!0,f.noFontFallback=g.noFontFallback?g.noFontFallback:!1;for(var l=0;l<j.length;l++){var m=j[l];if(m.attributes.rel&&m.attributes.href&&"stylesheet"==m.attributes.rel.value){var n=m.attributes.href.value,p=o("a");p.href=n;var q=p.protocol+"//"+p.host+p.pathname+p.search;f.stylesheets.push(q)}}for(l=0;l<i.length;l++)if(b.getComputedStyle){var r=b.getComputedStyle(i[l],null).getPropertyValue("background-image"),t=i[l].getAttribute("data-background-src"),u=null;u=null==t?r:t;var v=null,y="?"+g.domain+"/";if(0===u.indexOf(y))v=u.slice(1);else if(-1!=u.indexOf(y)){var z=u.substr(u.indexOf(y)).slice(1),A=z.match(/([^\"]*)"?\)/);null!=A&&(v=A[1])}if(null!=v){var B=d(v,g);B&&e({mode:"background",el:i[l],flags:B,engineSettings:f})}}for(l=0;l<k.length;l++){var C=k[l],D={};try{D.data=C.getAttribute("data"),D.dataSrc=C.getAttribute("data-src")}catch(E){}var F=null!=D.data&&0===D.data.indexOf(g.domain),H=null!=D.dataSrc&&0===D.dataSrc.indexOf(g.domain);F?c(g,f,D.data,C):H&&c(g,f,D.dataSrc,C)}for(l=0;l<h.length;l++){var I=h[l],J={};try{J.src=I.getAttribute("src"),J.dataSrc=I.getAttribute("data-src"),J.rendered=I.getAttribute("data-holder-rendered")}catch(E){}var K=null!=J.src,L=null!=J.dataSrc&&0===J.dataSrc.indexOf(g.domain),M=null!=J.rendered&&"true"==J.rendered;K?0===J.src.indexOf(g.domain)?c(g,f,J.src,I):L&&(M?c(g,f,J.dataSrc,I):!function(a,b,d,e,f){x(a,function(a){a||c(b,d,e,f)})}(J.src,g,f,J.dataSrc,I)):L&&c(g,f,J.dataSrc,I)}return this}},G={settings:{domain:"holder.js",images:"img",objects:"object",bgnodes:"body .holderjs",stylenodes:"head link.holderjs",stylesheets:[],themes:{gray:{background:"#EEEEEE",foreground:"#AAAAAA"},social:{background:"#3a5a97",foreground:"#FFFFFF"},industrial:{background:"#434A52",foreground:"#C2F200"},sky:{background:"#0D8FDB",foreground:"#FFFFFF"},vine:{background:"#39DBAC",foreground:"#1E292C"},lava:{background:"#F8591A",foreground:"#1C2846"}}},defaults:{size:10,units:"pt",scale:1/16},flags:{dimensions:{regex:/^(\d+)x(\d+)$/,output:function(a){var b=this.regex.exec(a);return{width:+b[1],height:+b[2]}}},fluid:{regex:/^([0-9]+%?)x([0-9]+%?)$/,output:function(a){var b=this.regex.exec(a);return{width:b[1],height:b[2]}}},colors:{regex:/(?:#|\^)([0-9a-f]{3,})\:(?:#|\^)([0-9a-f]{3,})/i,output:function(a){var b=this.regex.exec(a);return{foreground:"#"+b[2],background:"#"+b[1]}}},text:{regex:/text\:(.*)/,output:function(a){return this.regex.exec(a)[1].replace("\\/","/")}},font:{regex:/font\:(.*)/,output:function(a){return this.regex.exec(a)[1]}},auto:{regex:/^auto$/},textmode:{regex:/textmode\:(.*)/,output:function(a){return this.regex.exec(a)[1]}},random:{regex:/^random$/},size:{regex:/size\:(\d+)/,output:function(a){return this.regex.exec(a)[1]}}}},H=function(){var a=null,b=null,c=null;return function(d){var e=d.root;if(G.setup.supportsSVG){var f=!1,g=function(a){return C.createTextNode(a)};(null==a||a.parentNode!==C.body)&&(f=!0),a=q(a,e.properties.width,e.properties.height),a.style.display="block",f&&(b=o("text",A),c=g(null),p(b,{x:0}),b.appendChild(c),a.appendChild(b),C.body.appendChild(a),a.style.visibility="hidden",a.style.position="absolute",a.style.top="-100%",a.style.left="-100%");var h=e.children.holderTextGroup,i=h.properties;p(b,{y:i.font.size,style:t({"font-weight":i.font.weight,"font-size":i.font.size+i.font.units,"font-family":i.font.family,"dominant-baseline":"middle"})}),c.nodeValue=i.text;var j=b.getBBox(),k=Math.ceil(j.width/(e.properties.width*G.setup.lineWrapRatio)),l=i.text.split(" "),m=i.text.match(/\\n/g);k+=null==m?0:m.length,c.nodeValue=i.text.replace(/[ ]+/g,"");var n=b.getComputedTextLength(),r=j.width-n,s=Math.round(r/Math.max(1,l.length-1)),u=[];if(k>1){c.nodeValue="";for(var v=0;v<l.length;v++)if(0!==l[v].length){c.nodeValue=z(l[v]);var w=b.getBBox();u.push({text:l[v],width:w.width})}}return a.style.display="none",{spaceWidth:s,lineCount:k,boundingBox:j,words:u}}return!1}}(),I=function(){var a=o("canvas"),b=null;return function(c){null==b&&(b=a.getContext("2d"));var d=c.root;a.width=G.dpr(d.properties.width),a.height=G.dpr(d.properties.height),b.textBaseline="middle",b.fillStyle=d.children.holderBg.properties.fill,b.fillRect(0,0,G.dpr(d.children.holderBg.width),G.dpr(d.children.holderBg.height));{var e=d.children.holderTextGroup;e.properties}b.font=e.properties.font.weight+" "+G.dpr(e.properties.font.size)+e.properties.font.units+" "+e.properties.font.family+", monospace",b.fillStyle=e.properties.fill;for(var f in e.children){var g=e.children[f];for(var h in g.children){var i=g.children[h],j=G.dpr(e.x+g.x+i.x),k=G.dpr(e.y+g.y+i.y+e.properties.leading/2);b.fillText(i.properties.text,j,k)}}return a.toDataURL("image/png")}}(),J=function(){if(b.XMLSerializer){var a=q(null,0,0),c=o("rect",A);return a.appendChild(c),function(b,d){var e=b.root,f=d.holderSettings.flags.holderURL,g=C.createComment("\nSource URL: "+f+E);q(a,e.properties.width,e.properties.height),a.insertBefore(g,a.firstChild);for(var h=a.querySelectorAll("g"),i=0;i<h.length;i++)h[i].parentNode.removeChild(h[i]);p(c,{width:e.children.holderBg.width,height:e.children.holderBg.height,fill:e.children.holderBg.properties.fill});var j=e.children.holderTextGroup,k=j.properties,l=o("g",A);a.appendChild(l);for(var m in j.children){var n=j.children[m];for(var s in n.children){var u=n.children[s],v=j.x+n.x+u.x,w=j.y+n.y+u.y+j.properties.leading/2,x=o("text",A),y=C.createTextNode(null);p(x,{x:v,y:w,style:t({fill:k.fill,"font-weight":k.font.weight,"font-family":k.font.family+", monospace","font-size":k.font.size+k.font.units,"dominant-baseline":"central"})}),y.nodeValue=u.properties.text,x.appendChild(y),l.appendChild(x)}}var z="data:image/svg+xml;base64,"+btoa(unescape(encodeURIComponent(r(a,d.engineSettings))));return z}}}(),K=function(a){function b(a,b){for(var c in b)a[c]=b[c];return a}var c=1,d=augment.defclass({constructor:function(a){c++,this.parent=null,this.children={},this.id=c,this.name="n"+c,null!=a&&(this.name=a),this.x=0,this.y=0,this.z=0,this.width=0,this.height=0},resize:function(a,b){null!=a&&(this.width=a),null!=b&&(this.height=b)},moveTo:function(a,b,c){this.x=null!=a?a:this.x,this.y=null!=b?b:this.y,this.z=null!=c?c:this.z},add:function(a){var b=a.name;if(null!=this.children[b])throw"SceneGraph: child with that name already exists: "+b;this.children[b]=a,a.parent=this}}),e=augment(d,function(b){this.constructor=function(){b.constructor.call(this,"root"),this.properties=a}}),f=augment(d,function(a){function c(c,d){if(a.constructor.call(this,c),this.properties={fill:"#000"},null!=d)b(this.properties,d);else if(null!=c&&"string"!=typeof c)throw"SceneGraph: invalid node name"}this.Group=augment.extend(this,{constructor:c,type:"group"}),this.Rect=augment.extend(this,{constructor:c,type:"rect"}),this.Text=augment.extend(this,{constructor:function(a){c.call(this),this.properties.text=a},type:"text"})}),g=new e;return this.Shape=f,this.root=g,this};for(var L in G.flags)G.flags.hasOwnProperty(L)&&(G.flags[L].match=function(a){return a.match(this.regex)});G.setup={renderer:"html",debounce:100,ratio:1,supportsCanvas:!1,supportsSVG:!1,lineWrapRatio:.9,renderers:["html","canvas","svg"]},G.dpr=function(a){return a*G.setup.ratio},G.vars={preempted:!1,resizableImages:[],invisibleImages:{},invisibleId:0,visibilityCheckStarted:!1,debounceTimer:null,cache:{}},function(){var a=1,c=1,d=o("canvas"),e=null;d.getContext&&-1!=d.toDataURL("image/png").indexOf("data:image/png")&&(G.setup.renderer="canvas",e=d.getContext("2d"),G.setup.supportsCanvas=!0),G.setup.supportsCanvas&&(a=b.devicePixelRatio||1,c=e.webkitBackingStorePixelRatio||e.mozBackingStorePixelRatio||e.msBackingStorePixelRatio||e.oBackingStorePixelRatio||e.backingStorePixelRatio||1),G.setup.ratio=a/c,C.createElementNS&&C.createElementNS(A,"svg").createSVGRect&&(G.setup.renderer="svg",G.setup.supportsSVG=!0)}(),m(),a(F,"Holder",b),b.onDomReady&&b.onDomReady(function(){G.vars.preempted||F.run(),b.addEventListener?(b.addEventListener("resize",v,!1),b.addEventListener("orientationchange",v,!1)):b.attachEvent("onresize",v),"object"==typeof b.Turbolinks&&b.document.addEventListener("page:change",function(){F.run()})})}(function(a,b,c){{var d="function"==typeof define&&define.amd;"object"==typeof exports}d?define(a):c[b]=a},this);
|
12
|
+
!function(a,b,c){b[a]=c}("onDomReady",this,function(a){"use strict";function b(a){if(!v){if(!g.body)return e(b);for(v=!0;a=w.shift();)e(a)}}function c(a){(t||a.type===i||g[m]===l)&&(d(),b())}function d(){t?(g[s](q,c,j),a[s](i,c,j)):(g[o](r,c),a[o](k,c))}function e(a,b){setTimeout(a,+b>=0?b:1)}function f(a){v?e(a):w.push(a)}null==document.readyState&&document.addEventListener&&(document.addEventListener("DOMContentLoaded",function y(){document.removeEventListener("DOMContentLoaded",y,!1),document.readyState="complete"},!1),document.readyState="loading");var g=a.document,h=g.documentElement,i="load",j=!1,k="on"+i,l="complete",m="readyState",n="attachEvent",o="detachEvent",p="addEventListener",q="DOMContentLoaded",r="onreadystatechange",s="removeEventListener",t=p in g,u=j,v=j,w=[];if(g[m]===l)e(b);else if(t)g[p](q,c,j),a[p](i,c,j);else{g[n](r,c),a[n](k,c);try{u=null==a.frameElement&&h}catch(x){}u&&u.doScroll&&!function z(){if(!v){try{u.doScroll("left")}catch(a){return e(z,50)}d(),b()}}()}return f.version="1.4.0",f.isReady=function(){return v},f}(this)),document.querySelectorAll||(document.querySelectorAll=function(a){var b,c=document.createElement("style"),d=[];for(document.documentElement.firstChild.appendChild(c),document._qsa=[],c.styleSheet.cssText=a+"{x-qsa:expression(document._qsa && document._qsa.push(this))}",window.scrollBy(0,0),c.parentNode.removeChild(c);document._qsa.length;)b=document._qsa.shift(),b.style.removeAttribute("x-qsa"),d.push(b);return document._qsa=null,d}),document.querySelector||(document.querySelector=function(a){var b=document.querySelectorAll(a);return b.length?b[0]:null}),document.getElementsByClassName||(document.getElementsByClassName=function(a){return a=String(a).replace(/^|\s+/g,"."),document.querySelectorAll(a)}),Object.keys||(Object.keys=function(a){if(a!==Object(a))throw TypeError("Object.keys called on non-object");var b,c=[];for(b in a)Object.prototype.hasOwnProperty.call(a,b)&&c.push(b);return c}),function(a){var b="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";a.atob=a.atob||function(a){a=String(a);var c,d=0,e=[],f=0,g=0;if(a=a.replace(/\s/g,""),a.length%4===0&&(a=a.replace(/=+$/,"")),a.length%4===1)throw Error("InvalidCharacterError");if(/[^+/0-9A-Za-z]/.test(a))throw Error("InvalidCharacterError");for(;d<a.length;)c=b.indexOf(a.charAt(d)),f=f<<6|c,g+=6,24===g&&(e.push(String.fromCharCode(f>>16&255)),e.push(String.fromCharCode(f>>8&255)),e.push(String.fromCharCode(255&f)),g=0,f=0),d+=1;return 12===g?(f>>=4,e.push(String.fromCharCode(255&f))):18===g&&(f>>=2,e.push(String.fromCharCode(f>>8&255)),e.push(String.fromCharCode(255&f))),e.join("")},a.btoa=a.btoa||function(a){a=String(a);var c,d,e,f,g,h,i,j=0,k=[];if(/[^\x00-\xFF]/.test(a))throw Error("InvalidCharacterError");for(;j<a.length;)c=a.charCodeAt(j++),d=a.charCodeAt(j++),e=a.charCodeAt(j++),f=c>>2,g=(3&c)<<4|d>>4,h=(15&d)<<2|e>>6,i=63&e,j===a.length+2?(h=64,i=64):j===a.length+1&&(i=64),k.push(b.charAt(f),b.charAt(g),b.charAt(h),b.charAt(i));return k.join("")}}(this),Object.prototype.hasOwnProperty||(Object.prototype.hasOwnProperty=function(a){var b=this.__proto__||this.constructor.prototype;return a in this&&(!(a in b)||b[a]!==this[a])}),window.requestAnimationFrame||(window.webkitRequestAnimationFrame?!function(a){a.requestAnimationFrame=function(b){return webkitRequestAnimationFrame(function(){b(a.performance.now())})},a.cancelAnimationFrame=webkitCancelAnimationFrame}(this):window.mozRequestAnimationFrame?!function(a){a.requestAnimationFrame=function(b){return mozRequestAnimationFrame(function(){b(a.performance.now())})},a.cancelAnimationFrame=mozCancelAnimationFrame}(this):!function(a){a.requestAnimationFrame=function(b){return a.setTimeout(b,1e3/60)},a.cancelAnimationFrame=a.clearTimeout}(this)),function(a,b){a.augment=b()}(this,function(){var a=function(){},b=Array.prototype.slice,c=function(c,d){var e=a.prototype="function"==typeof c?c.prototype:c,f=new a,g=d.apply(f,b.call(arguments,2).concat(e));if("object"==typeof g)for(var h in g)f[h]=g[h];if(!f.hasOwnProperty("constructor"))return f;var i=f.constructor;return i.prototype=f,i};return c.defclass=function(a){var b=a.constructor;return b.prototype=a,b},c.extend=function(a,b){return c(a,function(a){return this.uber=a,b})},c}),function(a,b){function c(a,b,c,f){var g=d(c.substr(c.lastIndexOf(a.domain)),a);g&&e({mode:null,el:f,flags:g,engineSettings:b})}function d(a,b){for(var c={theme:s(G.settings.themes.gray,null),stylesheets:b.stylesheets,holderURL:[]},d=!1,e=String.fromCharCode(11),f=a.replace(/([^\\])\//g,"$1"+e).split(e),g=/%[0-9a-f]{2}/gi,h=f.length,i=0;h>i;i++){var j=f[i];if(j.match(g))try{j=decodeURIComponent(j)}catch(k){j=f[i]}var l=!1;if(G.flags.dimensions.match(j))d=!0,c.dimensions=G.flags.dimensions.output(j),l=!0;else if(G.flags.fluid.match(j))d=!0,c.dimensions=G.flags.fluid.output(j),c.fluid=!0,l=!0;else if(G.flags.textmode.match(j))c.textmode=G.flags.textmode.output(j),l=!0;else if(G.flags.colors.match(j)){var m=G.flags.colors.output(j);c.theme=s(c.theme,m),l=!0}else if(b.themes[j])b.themes.hasOwnProperty(j)&&(c.theme=s(b.themes[j],null)),l=!0;else if(G.flags.font.match(j))c.font=G.flags.font.output(j),l=!0;else if(G.flags.auto.match(j))c.auto=!0,l=!0;else if(G.flags.text.match(j))c.text=G.flags.text.output(j),l=!0;else if(G.flags.size.match(j))c.size=G.flags.size.output(j),l=!0;else if(G.flags.random.match(j)){null==G.vars.cache.themeKeys&&(G.vars.cache.themeKeys=Object.keys(b.themes));var n=G.vars.cache.themeKeys[0|Math.random()*G.vars.cache.themeKeys.length];c.theme=s(b.themes[n],null),l=!0}l&&c.holderURL.push(j)}return c.holderURL.unshift(b.domain),c.holderURL=c.holderURL.join("/"),d?c:!1}function e(a){var b=a.mode,c=a.el,d=a.flags,e=a.engineSettings,g=d.dimensions,h=d.theme,k=g.width+"x"+g.height;if(b=null==b?d.fluid?"fluid":"image":b,null!=d.text&&(h.text=d.text,"object"===c.nodeName.toLowerCase())){for(var l=h.text.split("\\n"),m=0;m<l.length;m++)l[m]=y(l[m]);h.text=l.join("\\n")}var n=d.holderURL,o=s(e,null);d.font&&(h.font=d.font,!o.noFontFallback&&"img"===c.nodeName.toLowerCase()&&G.setup.supportsCanvas&&"svg"===o.renderer&&(o=s(o,{renderer:"canvas"}))),d.font&&"canvas"==o.renderer&&(o.reRender=!0),"background"==b?null==c.getAttribute("data-background-src")&&p(c,{"data-background-src":n}):p(c,{"data-src":n}),d.theme=h,c.holderData={flags:d,engineSettings:o},("image"==b||"fluid"==b)&&p(c,{alt:h.text?h.text+" ["+k+"]":k});var q={mode:b,el:c,holderSettings:{dimensions:g,theme:h,flags:d},engineSettings:o};"image"==b?("html"!=o.renderer&&d.auto||(c.style.width=g.width+"px",c.style.height=g.height+"px"),"html"==o.renderer?c.style.backgroundColor=h.background:(f(q),"exact"==d.textmode&&(c.holderData.resizeUpdate=!0,G.vars.resizableImages.push(c),i(c)))):"background"==b&&"html"!=o.renderer?f(q):"fluid"==b&&(c.holderData.resizeUpdate=!0,"%"==g.height.slice(-1)?c.style.height=g.height:null!=d.auto&&d.auto||(c.style.height=g.height+"px"),"%"==g.width.slice(-1)?c.style.width=g.width:null!=d.auto&&d.auto||(c.style.width=g.width+"px"),("inline"==c.style.display||""===c.style.display||"none"==c.style.display)&&(c.style.display="block"),j(c),"html"==o.renderer?c.style.backgroundColor=h.background:(G.vars.resizableImages.push(c),i(c)))}function f(a){function c(){var b=null;switch(i.renderer){case"canvas":b=I(k,a);break;case"svg":b=J(k,a);break;default:throw"Holder: invalid renderer: "+i.renderer}return b}var d=null,e=a.mode,f=a.holderSettings,h=a.el,i=a.engineSettings;switch(i.renderer){case"svg":if(!G.setup.supportsSVG)return;break;case"canvas":if(!G.setup.supportsCanvas)return;break;default:return}var j={width:f.dimensions.width,height:f.dimensions.height,theme:f.theme,flags:f.flags},k=g(j);if(d=c(),null==d)throw"Holder: couldn't render placeholder";"background"==e?(h.style.backgroundImage="url("+d+")",h.style.backgroundSize=j.width+"px "+j.height+"px"):("img"===h.nodeName.toLowerCase()?p(h,{src:d}):"object"===h.nodeName.toLowerCase()&&(p(h,{data:d}),p(h,{type:"image/svg+xml"})),i.reRender&&b.setTimeout(function(){var a=c();if(null==a)throw"Holder: couldn't render placeholder";"img"===h.nodeName.toLowerCase()?p(h,{src:a}):"object"===h.nodeName.toLowerCase()&&(p(h,{data:a}),p(h,{type:"image/svg+xml"}))},100)),p(h,{"data-holder-rendered":!0})}function g(a){function b(a,b,c,d){b.width=c,b.height=d,a.width=Math.max(a.width,b.width),a.height+=b.height,a.add(b)}var c=G.defaults.size;switch(parseFloat(a.theme.size)?c=a.theme.size:parseFloat(a.flags.size)&&(c=a.flags.size),a.font={family:a.theme.font?a.theme.font:"Arial, Helvetica, Open Sans, sans-serif",size:h(a.width,a.height,c),units:a.theme.units?a.theme.units:G.defaults.units,weight:a.theme.fontweight?a.theme.fontweight:"bold"},a.text=a.theme.text?a.theme.text:Math.floor(a.width)+"x"+Math.floor(a.height),a.flags.textmode){case"literal":a.text=a.flags.dimensions.width+"x"+a.flags.dimensions.height;break;case"exact":if(!a.flags.exactDimensions)break;a.text=Math.floor(a.flags.exactDimensions.width)+"x"+Math.floor(a.flags.exactDimensions.height)}var d=new K({width:a.width,height:a.height}),e=d.Shape,f=new e.Rect("holderBg",{fill:a.theme.background});f.resize(a.width,a.height),d.root.add(f);var g=new e.Group("holderTextGroup",{text:a.text,align:"center",font:a.font,fill:a.theme.foreground});g.moveTo(null,null,1),d.root.add(g);var i=g.textPositionData=H(d);if(!i)throw"Holder: staging fallback not supported yet.";g.properties.leading=i.boundingBox.height;var j=null,k=null;if(i.lineCount>1){var l=0,m=0,n=a.width*G.setup.lineWrapRatio,o=0;k=new e.Group("line"+o);for(var p=0;p<i.words.length;p++){var q=i.words[p];j=new e.Text(q.text);var r="\\n"==q.text;(l+q.width>=n||r===!0)&&(b(g,k,l,g.properties.leading),l=0,m+=g.properties.leading,o+=1,k=new e.Group("line"+o),k.y=m),r!==!0&&(j.moveTo(l,0),l+=i.spaceWidth+q.width,k.add(j))}b(g,k,l,g.properties.leading);for(var s in g.children)k=g.children[s],k.moveTo((g.width-k.width)/2,null,null);g.moveTo((a.width-g.width)/2,(a.height-g.height)/2,null),(a.height-g.height)/2<0&&g.moveTo(null,0,null)}else j=new e.Text(a.text),k=new e.Group("line0"),k.add(j),g.add(k),g.moveTo((a.width-i.boundingBox.width)/2,(a.height-i.boundingBox.height)/2,null);return d}function h(a,b,c){var d=parseInt(a,10),e=parseInt(b,10),f=Math.max(d,e),g=Math.min(d,e),h=.8*Math.min(g,f*G.defaults.scale);return Math.round(Math.max(c,h))}function i(a){var b;b=null==a||null==a.nodeType?G.vars.resizableImages:[a];for(var c=0,d=b.length;d>c;c++){var e=b[c];if(e.holderData){var g=e.holderData.flags,h=k(e);if(h){if(!e.holderData.resizeUpdate)continue;if(g.fluid&&g.auto){var i=e.holderData.fluidConfig;switch(i.mode){case"width":h.height=h.width/i.ratio;break;case"height":h.width=h.height*i.ratio}}var j={mode:"image",holderSettings:{dimensions:h,theme:g.theme,flags:g},el:e,engineSettings:e.holderData.engineSettings};"exact"==g.textmode&&(g.exactDimensions=h,j.holderSettings.dimensions=g.dimensions),f(j)}else n(e)}}}function j(a){if(a.holderData){var b=k(a);if(b){var c=a.holderData.flags,d={fluidHeight:"%"==c.dimensions.height.slice(-1),fluidWidth:"%"==c.dimensions.width.slice(-1),mode:null,initialDimensions:b};d.fluidWidth&&!d.fluidHeight?(d.mode="width",d.ratio=d.initialDimensions.width/parseFloat(c.dimensions.height)):!d.fluidWidth&&d.fluidHeight&&(d.mode="height",d.ratio=parseFloat(c.dimensions.width)/d.initialDimensions.height),a.holderData.fluidConfig=d}else n(a)}}function k(a){var b={height:a.clientHeight,width:a.clientWidth};return b.height&&b.width?b:!1}function l(){for(var a,c=[],d=Object.keys(G.vars.invisibleImages),e=0,f=d.length;f>e;e++)a=G.vars.invisibleImages[d[e]],k(a)&&"img"==a.nodeName.toLowerCase()&&(c.push(a),delete G.vars.invisibleImages[d[e]]);c.length&&F.run({images:c}),b.requestAnimationFrame(l)}function m(){G.vars.visibilityCheckStarted||(b.requestAnimationFrame(l),G.vars.visibilityCheckStarted=!0)}function n(a){a.holderData.invisibleId||(G.vars.invisibleId+=1,G.vars.invisibleImages["i"+G.vars.invisibleId]=a,a.holderData.invisibleId=G.vars.invisibleId)}function o(a,b){return null==b?C.createElement(a):C.createElementNS(b,a)}function p(a,b){for(var c in b)a.setAttribute(c,b[c])}function q(a,b,c){if(null==a){a=o("svg",A);var d=o("defs",A);a.appendChild(d)}a.webkitMatchesSelector&&a.setAttribute("xmlns",A);for(var e=0;e<a.childNodes.length;e++)a.childNodes[e].nodeType===B&&a.removeChild(a.childNodes[e]);return p(a,{width:b,height:c,viewBox:"0 0 "+b+" "+c,preserveAspectRatio:"none"}),a}function r(a,c){if(b.XMLSerializer){{var d=new XMLSerializer,e="",f=c.stylesheets;a.querySelector("defs")}if(c.svgXMLStylesheet){for(var g=(new DOMParser).parseFromString("<xml />","application/xml"),h=f.length-1;h>=0;h--){var i=g.createProcessingInstruction("xml-stylesheet",'href="'+f[h]+'" rel="stylesheet"');g.insertBefore(i,g.firstChild)}var j=g.createProcessingInstruction("xml",'version="1.0" encoding="UTF-8" standalone="yes"');g.insertBefore(j,g.firstChild),g.removeChild(g.documentElement),e=d.serializeToString(g)}var k=d.serializeToString(a);return k=k.replace(/\&(\#[0-9]{2,}\;)/g,"&$1"),e+k}}function s(a,b){var c={};for(var d in a)a.hasOwnProperty(d)&&(c[d]=a[d]);if(null!=b)for(var e in b)b.hasOwnProperty(e)&&(c[e]=b[e]);return c}function t(a){var b=[];for(var c in a)a.hasOwnProperty(c)&&b.push(c+":"+a[c]);return b.join(";")}function u(a){G.vars.debounceTimer||a.call(this),G.vars.debounceTimer&&b.clearTimeout(G.vars.debounceTimer),G.vars.debounceTimer=b.setTimeout(function(){G.vars.debounceTimer=null,a.call(this)},G.setup.debounce)}function v(){u(function(){i(null)})}function w(a){var c=null;return"string"==typeof a?c=C.querySelectorAll(a):b.NodeList&&a instanceof b.NodeList?c=a:b.Node&&a instanceof b.Node?c=[a]:b.HTMLCollection&&a instanceof b.HTMLCollection?c=a:a instanceof Array?c=a:null===a&&(c=[]),c}function x(a,b){var c=new Image;c.onerror=function(){b.call(this,!1)},c.onload=function(){b.call(this,!0)},c.src=a}function y(a){for(var b=[],c=0,d=a.length-1;d>=0;d--)c=a.charCodeAt(d),b.unshift(c>128?["&#",c,";"].join(""):a[d]);return b.join("")}function z(a){return a.replace(/&#(\d+);/g,function(a,b){return String.fromCharCode(b)})}var A="http://www.w3.org/2000/svg",B=8,C=b.document,D="2.5.2",E="\nCreated with Holder.js "+D+".\nLearn more at http://holderjs.com\n(c) 2012-2015 Ivan Malopinsky - http://imsky.co\n",F={version:D,addTheme:function(a,b){return null!=a&&null!=b&&(G.settings.themes[a]=b),delete G.vars.cache.themeKeys,this},addImage:function(a,b){var c=C.querySelectorAll(b);if(c.length)for(var d=0,e=c.length;e>d;d++){var f=o("img");p(f,{"data-src":a}),c[d].appendChild(f)}return this},setResizeUpdate:function(a,b){a.holderData&&(a.holderData.resizeUpdate=!!b,a.holderData.resizeUpdate&&i(a))},run:function(a){a=a||{};var f={};G.vars.preempted=!0;var g=s(G.settings,a);f.renderer=g.renderer?g.renderer:G.setup.renderer,-1===G.setup.renderers.join(",").indexOf(f.renderer)&&(f.renderer=G.setup.supportsSVG?"svg":G.setup.supportsCanvas?"canvas":"html");var h=w(g.images),i=w(g.bgnodes),j=w(g.stylenodes),k=w(g.objects);f.stylesheets=[],f.svgXMLStylesheet=!0,f.noFontFallback=g.noFontFallback?g.noFontFallback:!1;for(var l=0;l<j.length;l++){var m=j[l];if(m.attributes.rel&&m.attributes.href&&"stylesheet"==m.attributes.rel.value){var n=m.attributes.href.value,p=o("a");p.href=n;var q=p.protocol+"//"+p.host+p.pathname+p.search;f.stylesheets.push(q)}}for(l=0;l<i.length;l++)if(b.getComputedStyle){var r=b.getComputedStyle(i[l],null).getPropertyValue("background-image"),t=i[l].getAttribute("data-background-src"),u=null;u=null==t?r:t;var v=null,y="?"+g.domain+"/";if(0===u.indexOf(y))v=u.slice(1);else if(-1!=u.indexOf(y)){var z=u.substr(u.indexOf(y)).slice(1),A=z.match(/([^\"]*)"?\)/);null!=A&&(v=A[1])}if(null!=v){var B=d(v,g);B&&e({mode:"background",el:i[l],flags:B,engineSettings:f})}}for(l=0;l<k.length;l++){var C=k[l],D={};try{D.data=C.getAttribute("data"),D.dataSrc=C.getAttribute("data-src")}catch(E){}var F=null!=D.data&&0===D.data.indexOf(g.domain),H=null!=D.dataSrc&&0===D.dataSrc.indexOf(g.domain);F?c(g,f,D.data,C):H&&c(g,f,D.dataSrc,C)}for(l=0;l<h.length;l++){var I=h[l],J={};try{J.src=I.getAttribute("src"),J.dataSrc=I.getAttribute("data-src"),J.rendered=I.getAttribute("data-holder-rendered")}catch(E){}var K=null!=J.src,L=null!=J.dataSrc&&0===J.dataSrc.indexOf(g.domain),M=null!=J.rendered&&"true"==J.rendered;K?0===J.src.indexOf(g.domain)?c(g,f,J.src,I):L&&(M?c(g,f,J.dataSrc,I):!function(a,b,d,e,f){x(a,function(a){a||c(b,d,e,f)})}(J.src,g,f,J.dataSrc,I)):L&&c(g,f,J.dataSrc,I)}return this}},G={settings:{domain:"holder.js",images:"img",objects:"object",bgnodes:"body .holderjs",stylenodes:"head link.holderjs",stylesheets:[],themes:{gray:{background:"#EEEEEE",foreground:"#AAAAAA"},social:{background:"#3a5a97",foreground:"#FFFFFF"},industrial:{background:"#434A52",foreground:"#C2F200"},sky:{background:"#0D8FDB",foreground:"#FFFFFF"},vine:{background:"#39DBAC",foreground:"#1E292C"},lava:{background:"#F8591A",foreground:"#1C2846"}}},defaults:{size:10,units:"pt",scale:1/16},flags:{dimensions:{regex:/^(\d+)x(\d+)$/,output:function(a){var b=this.regex.exec(a);return{width:+b[1],height:+b[2]}}},fluid:{regex:/^([0-9]+%?)x([0-9]+%?)$/,output:function(a){var b=this.regex.exec(a);return{width:b[1],height:b[2]}}},colors:{regex:/(?:#|\^)([0-9a-f]{3,})\:(?:#|\^)([0-9a-f]{3,})/i,output:function(a){var b=this.regex.exec(a);return{foreground:"#"+b[2],background:"#"+b[1]}}},text:{regex:/text\:(.*)/,output:function(a){return this.regex.exec(a)[1].replace("\\/","/")}},font:{regex:/font\:(.*)/,output:function(a){return this.regex.exec(a)[1]}},auto:{regex:/^auto$/},textmode:{regex:/textmode\:(.*)/,output:function(a){return this.regex.exec(a)[1]}},random:{regex:/^random$/},size:{regex:/size\:(\d+)/,output:function(a){return this.regex.exec(a)[1]}}}},H=function(){var a=null,b=null,c=null;return function(d){var e=d.root;if(G.setup.supportsSVG){var f=!1,g=function(a){return C.createTextNode(a)};(null==a||a.parentNode!==C.body)&&(f=!0),a=q(a,e.properties.width,e.properties.height),a.style.display="block",f&&(b=o("text",A),c=g(null),p(b,{x:0}),b.appendChild(c),a.appendChild(b),C.body.appendChild(a),a.style.visibility="hidden",a.style.position="absolute",a.style.top="-100%",a.style.left="-100%");var h=e.children.holderTextGroup,i=h.properties;p(b,{y:i.font.size,style:t({"font-weight":i.font.weight,"font-size":i.font.size+i.font.units,"font-family":i.font.family})}),c.nodeValue=i.text;var j=b.getBBox(),k=Math.ceil(j.width/(e.properties.width*G.setup.lineWrapRatio)),l=i.text.split(" "),m=i.text.match(/\\n/g);k+=null==m?0:m.length,c.nodeValue=i.text.replace(/[ ]+/g,"");var n=b.getComputedTextLength(),r=j.width-n,s=Math.round(r/Math.max(1,l.length-1)),u=[];if(k>1){c.nodeValue="";for(var v=0;v<l.length;v++)if(0!==l[v].length){c.nodeValue=z(l[v]);var w=b.getBBox();u.push({text:l[v],width:w.width})}}return a.style.display="none",{spaceWidth:s,lineCount:k,boundingBox:j,words:u}}return!1}}(),I=function(){var a=o("canvas"),b=null;return function(c){null==b&&(b=a.getContext("2d"));var d=c.root;a.width=G.dpr(d.properties.width),a.height=G.dpr(d.properties.height),b.textBaseline="middle",b.fillStyle=d.children.holderBg.properties.fill,b.fillRect(0,0,G.dpr(d.children.holderBg.width),G.dpr(d.children.holderBg.height));{var e=d.children.holderTextGroup;e.properties}b.font=e.properties.font.weight+" "+G.dpr(e.properties.font.size)+e.properties.font.units+" "+e.properties.font.family+", monospace",b.fillStyle=e.properties.fill;for(var f in e.children){var g=e.children[f];for(var h in g.children){var i=g.children[h],j=G.dpr(e.x+g.x+i.x),k=G.dpr(e.y+g.y+i.y+e.properties.leading/2);b.fillText(i.properties.text,j,k)}}return a.toDataURL("image/png")}}(),J=function(){if(b.XMLSerializer){var a=q(null,0,0),c=o("rect",A);return a.appendChild(c),function(b,d){var e=b.root,f=d.holderSettings.flags.holderURL,g=C.createComment("\nSource URL: "+f+E);q(a,e.properties.width,e.properties.height),a.insertBefore(g,a.firstChild);for(var h=a.querySelectorAll("g"),i=0;i<h.length;i++)h[i].parentNode.removeChild(h[i]);p(c,{width:e.children.holderBg.width,height:e.children.holderBg.height,fill:e.children.holderBg.properties.fill});var j=e.children.holderTextGroup,k=j.properties,l=o("g",A),m=j.textPositionData;a.appendChild(l),j.y+=.8*m.boundingBox.height;for(var n in j.children){var s=j.children[n];for(var u in s.children){var v=s.children[u],w=j.x+s.x+v.x,x=j.y+s.y+v.y,y=o("text",A),z=C.createTextNode(null);p(y,{x:w,y:x,style:t({fill:k.fill,"font-weight":k.font.weight,"font-family":k.font.family+", monospace","font-size":k.font.size+k.font.units})}),z.nodeValue=v.properties.text,y.appendChild(z),l.appendChild(y)}}var B="data:image/svg+xml;base64,"+btoa(unescape(encodeURIComponent(r(a,d.engineSettings))));return B}}}(),K=function(a){function b(a,b){for(var c in b)a[c]=b[c];return a}var c=1,d=augment.defclass({constructor:function(a){c++,this.parent=null,this.children={},this.id=c,this.name="n"+c,null!=a&&(this.name=a),this.x=0,this.y=0,this.z=0,this.width=0,this.height=0},resize:function(a,b){null!=a&&(this.width=a),null!=b&&(this.height=b)},moveTo:function(a,b,c){this.x=null!=a?a:this.x,this.y=null!=b?b:this.y,this.z=null!=c?c:this.z},add:function(a){var b=a.name;if(null!=this.children[b])throw"SceneGraph: child with that name already exists: "+b;this.children[b]=a,a.parent=this}}),e=augment(d,function(b){this.constructor=function(){b.constructor.call(this,"root"),this.properties=a}}),f=augment(d,function(a){function c(c,d){if(a.constructor.call(this,c),this.properties={fill:"#000"},null!=d)b(this.properties,d);else if(null!=c&&"string"!=typeof c)throw"SceneGraph: invalid node name"}this.Group=augment.extend(this,{constructor:c,type:"group"}),this.Rect=augment.extend(this,{constructor:c,type:"rect"}),this.Text=augment.extend(this,{constructor:function(a){c.call(this),this.properties.text=a},type:"text"})}),g=new e;return this.Shape=f,this.root=g,this};for(var L in G.flags)G.flags.hasOwnProperty(L)&&(G.flags[L].match=function(a){return a.match(this.regex)});G.setup={renderer:"html",debounce:100,ratio:1,supportsCanvas:!1,supportsSVG:!1,lineWrapRatio:.9,renderers:["html","canvas","svg"]},G.dpr=function(a){return a*G.setup.ratio},G.vars={preempted:!1,resizableImages:[],invisibleImages:{},invisibleId:0,visibilityCheckStarted:!1,debounceTimer:null,cache:{}},function(){var a=1,c=1,d=o("canvas"),e=null;d.getContext&&-1!=d.toDataURL("image/png").indexOf("data:image/png")&&(G.setup.renderer="canvas",e=d.getContext("2d"),G.setup.supportsCanvas=!0),G.setup.supportsCanvas&&(a=b.devicePixelRatio||1,c=e.webkitBackingStorePixelRatio||e.mozBackingStorePixelRatio||e.msBackingStorePixelRatio||e.oBackingStorePixelRatio||e.backingStorePixelRatio||1),G.setup.ratio=a/c,C.createElementNS&&C.createElementNS(A,"svg").createSVGRect&&(G.setup.renderer="svg",G.setup.supportsSVG=!0)}(),m(),a(F,"Holder",b),b.onDomReady&&b.onDomReady(function(){G.vars.preempted||F.run(),b.addEventListener?(b.addEventListener("resize",v,!1),b.addEventListener("orientationchange",v,!1)):b.attachEvent("onresize",v),"object"==typeof b.Turbolinks&&b.document.addEventListener("page:change",function(){F.run()})})}(function(a,b,c){{var d="function"==typeof define&&define.amd;"object"==typeof exports}d?define(a):c[b]=a},this);
|