").append(b.parseHTML(e)).find(i):e)}).complete(r&&function(e,t){s.each(r,o||[e.responseText,t,e])}),this},b.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){b.fn[t]=function(e){return this.on(t,e)}}),b.each(["get","post"],function(e,n){b[n]=function(e,r,i,o){return b.isFunction(r)&&(o=o||i,i=r,r=t),b.ajax({url:e,type:n,dataType:o,data:r,success:i})}}),b.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:yn,type:"GET",isLocal:Nn.test(mn[1]),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Dn,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":e.String,"text html":!0,"text json":b.parseJSON,"text xml":b.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?Mn(Mn(e,b.ajaxSettings),t):Mn(b.ajaxSettings,e)},ajaxPrefilter:Hn(An),ajaxTransport:Hn(jn),ajax:function(e,n){"object"==typeof e&&(n=e,e=t),n=n||{};var r,i,o,a,s,u,l,c,p=b.ajaxSetup({},n),f=p.context||p,d=p.context&&(f.nodeType||f.jquery)?b(f):b.event,h=b.Deferred(),g=b.Callbacks("once memory"),m=p.statusCode||{},y={},v={},x=0,T="canceled",N={readyState:0,getResponseHeader:function(e){var t;if(2===x){if(!c){c={};while(t=Tn.exec(a))c[t[1].toLowerCase()]=t[2]}t=c[e.toLowerCase()]}return null==t?null:t},getAllResponseHeaders:function(){return 2===x?a:null},setRequestHeader:function(e,t){var n=e.toLowerCase();return x||(e=v[n]=v[n]||e,y[e]=t),this},overrideMimeType:function(e){return x||(p.mimeType=e),this},statusCode:function(e){var t;if(e)if(2>x)for(t in e)m[t]=[m[t],e[t]];else N.always(e[N.status]);return this},abort:function(e){var t=e||T;return l&&l.abort(t),k(0,t),this}};if(h.promise(N).complete=g.add,N.success=N.done,N.error=N.fail,p.url=((e||p.url||yn)+"").replace(xn,"").replace(kn,mn[1]+"//"),p.type=n.method||n.type||p.method||p.type,p.dataTypes=b.trim(p.dataType||"*").toLowerCase().match(w)||[""],null==p.crossDomain&&(r=En.exec(p.url.toLowerCase()),p.crossDomain=!(!r||r[1]===mn[1]&&r[2]===mn[2]&&(r[3]||("http:"===r[1]?80:443))==(mn[3]||("http:"===mn[1]?80:443)))),p.data&&p.processData&&"string"!=typeof p.data&&(p.data=b.param(p.data,p.traditional)),qn(An,p,n,N),2===x)return N;u=p.global,u&&0===b.active++&&b.event.trigger("ajaxStart"),p.type=p.type.toUpperCase(),p.hasContent=!Cn.test(p.type),o=p.url,p.hasContent||(p.data&&(o=p.url+=(bn.test(o)?"&":"?")+p.data,delete p.data),p.cache===!1&&(p.url=wn.test(o)?o.replace(wn,"$1_="+vn++):o+(bn.test(o)?"&":"?")+"_="+vn++)),p.ifModified&&(b.lastModified[o]&&N.setRequestHeader("If-Modified-Since",b.lastModified[o]),b.etag[o]&&N.setRequestHeader("If-None-Match",b.etag[o])),(p.data&&p.hasContent&&p.contentType!==!1||n.contentType)&&N.setRequestHeader("Content-Type",p.contentType),N.setRequestHeader("Accept",p.dataTypes[0]&&p.accepts[p.dataTypes[0]]?p.accepts[p.dataTypes[0]]+("*"!==p.dataTypes[0]?", "+Dn+"; q=0.01":""):p.accepts["*"]);for(i in p.headers)N.setRequestHeader(i,p.headers[i]);if(p.beforeSend&&(p.beforeSend.call(f,N,p)===!1||2===x))return N.abort();T="abort";for(i in{success:1,error:1,complete:1})N[i](p[i]);if(l=qn(jn,p,n,N)){N.readyState=1,u&&d.trigger("ajaxSend",[N,p]),p.async&&p.timeout>0&&(s=setTimeout(function(){N.abort("timeout")},p.timeout));try{x=1,l.send(y,k)}catch(C){if(!(2>x))throw C;k(-1,C)}}else k(-1,"No Transport");function k(e,n,r,i){var c,y,v,w,T,C=n;2!==x&&(x=2,s&&clearTimeout(s),l=t,a=i||"",N.readyState=e>0?4:0,r&&(w=_n(p,N,r)),e>=200&&300>e||304===e?(p.ifModified&&(T=N.getResponseHeader("Last-Modified"),T&&(b.lastModified[o]=T),T=N.getResponseHeader("etag"),T&&(b.etag[o]=T)),204===e?(c=!0,C="nocontent"):304===e?(c=!0,C="notmodified"):(c=Fn(p,w),C=c.state,y=c.data,v=c.error,c=!v)):(v=C,(e||!C)&&(C="error",0>e&&(e=0))),N.status=e,N.statusText=(n||C)+"",c?h.resolveWith(f,[y,C,N]):h.rejectWith(f,[N,C,v]),N.statusCode(m),m=t,u&&d.trigger(c?"ajaxSuccess":"ajaxError",[N,p,c?y:v]),g.fireWith(f,[N,C]),u&&(d.trigger("ajaxComplete",[N,p]),--b.active||b.event.trigger("ajaxStop")))}return N},getScript:function(e,n){return b.get(e,t,n,"script")},getJSON:function(e,t,n){return b.get(e,t,n,"json")}});function _n(e,n,r){var i,o,a,s,u=e.contents,l=e.dataTypes,c=e.responseFields;for(s in c)s in r&&(n[c[s]]=r[s]);while("*"===l[0])l.shift(),o===t&&(o=e.mimeType||n.getResponseHeader("Content-Type"));if(o)for(s in u)if(u[s]&&u[s].test(o)){l.unshift(s);break}if(l[0]in r)a=l[0];else{for(s in r){if(!l[0]||e.converters[s+" "+l[0]]){a=s;break}i||(i=s)}a=a||i}return a?(a!==l[0]&&l.unshift(a),r[a]):t}function Fn(e,t){var n,r,i,o,a={},s=0,u=e.dataTypes.slice(),l=u[0];if(e.dataFilter&&(t=e.dataFilter(t,e.dataType)),u[1])for(i in e.converters)a[i.toLowerCase()]=e.converters[i];for(;r=u[++s];)if("*"!==r){if("*"!==l&&l!==r){if(i=a[l+" "+r]||a["* "+r],!i)for(n in a)if(o=n.split(" "),o[1]===r&&(i=a[l+" "+o[0]]||a["* "+o[0]])){i===!0?i=a[n]:a[n]!==!0&&(r=o[0],u.splice(s--,0,r));break}if(i!==!0)if(i&&e["throws"])t=i(t);else try{t=i(t)}catch(c){return{state:"parsererror",error:i?c:"No conversion from "+l+" to "+r}}}l=r}return{state:"success",data:t}}b.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/(?:java|ecma)script/},converters:{"text script":function(e){return b.globalEval(e),e}}}),b.ajaxPrefilter("script",function(e){e.cache===t&&(e.cache=!1),e.crossDomain&&(e.type="GET",e.global=!1)}),b.ajaxTransport("script",function(e){if(e.crossDomain){var n,r=o.head||b("head")[0]||o.documentElement;return{send:function(t,i){n=o.createElement("script"),n.async=!0,e.scriptCharset&&(n.charset=e.scriptCharset),n.src=e.url,n.onload=n.onreadystatechange=function(e,t){(t||!n.readyState||/loaded|complete/.test(n.readyState))&&(n.onload=n.onreadystatechange=null,n.parentNode&&n.parentNode.removeChild(n),n=null,t||i(200,"success"))},r.insertBefore(n,r.firstChild)},abort:function(){n&&n.onload(t,!0)}}}});var On=[],Bn=/(=)\?(?=&|$)|\?\?/;b.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=On.pop()||b.expando+"_"+vn++;return this[e]=!0,e}}),b.ajaxPrefilter("json jsonp",function(n,r,i){var o,a,s,u=n.jsonp!==!1&&(Bn.test(n.url)?"url":"string"==typeof n.data&&!(n.contentType||"").indexOf("application/x-www-form-urlencoded")&&Bn.test(n.data)&&"data");return u||"jsonp"===n.dataTypes[0]?(o=n.jsonpCallback=b.isFunction(n.jsonpCallback)?n.jsonpCallback():n.jsonpCallback,u?n[u]=n[u].replace(Bn,"$1"+o):n.jsonp!==!1&&(n.url+=(bn.test(n.url)?"&":"?")+n.jsonp+"="+o),n.converters["script json"]=function(){return s||b.error(o+" was not called"),s[0]},n.dataTypes[0]="json",a=e[o],e[o]=function(){s=arguments},i.always(function(){e[o]=a,n[o]&&(n.jsonpCallback=r.jsonpCallback,On.push(o)),s&&b.isFunction(a)&&a(s[0]),s=a=t}),"script"):t});var Pn,Rn,Wn=0,$n=e.ActiveXObject&&function(){var e;for(e in Pn)Pn[e](t,!0)};function In(){try{return new e.XMLHttpRequest}catch(t){}}function zn(){try{return new e.ActiveXObject("Microsoft.XMLHTTP")}catch(t){}}b.ajaxSettings.xhr=e.ActiveXObject?function(){return!this.isLocal&&In()||zn()}:In,Rn=b.ajaxSettings.xhr(),b.support.cors=!!Rn&&"withCredentials"in Rn,Rn=b.support.ajax=!!Rn,Rn&&b.ajaxTransport(function(n){if(!n.crossDomain||b.support.cors){var r;return{send:function(i,o){var a,s,u=n.xhr();if(n.username?u.open(n.type,n.url,n.async,n.username,n.password):u.open(n.type,n.url,n.async),n.xhrFields)for(s in n.xhrFields)u[s]=n.xhrFields[s];n.mimeType&&u.overrideMimeType&&u.overrideMimeType(n.mimeType),n.crossDomain||i["X-Requested-With"]||(i["X-Requested-With"]="XMLHttpRequest");try{for(s in i)u.setRequestHeader(s,i[s])}catch(l){}u.send(n.hasContent&&n.data||null),r=function(e,i){var s,l,c,p;try{if(r&&(i||4===u.readyState))if(r=t,a&&(u.onreadystatechange=b.noop,$n&&delete Pn[a]),i)4!==u.readyState&&u.abort();else{p={},s=u.status,l=u.getAllResponseHeaders(),"string"==typeof u.responseText&&(p.text=u.responseText);try{c=u.statusText}catch(f){c=""}s||!n.isLocal||n.crossDomain?1223===s&&(s=204):s=p.text?200:404}}catch(d){i||o(-1,d)}p&&o(s,c,p,l)},n.async?4===u.readyState?setTimeout(r):(a=++Wn,$n&&(Pn||(Pn={},b(e).unload($n)),Pn[a]=r),u.onreadystatechange=r):r()},abort:function(){r&&r(t,!0)}}}});var Xn,Un,Vn=/^(?:toggle|show|hide)$/,Yn=RegExp("^(?:([+-])=|)("+x+")([a-z%]*)$","i"),Jn=/queueHooks$/,Gn=[nr],Qn={"*":[function(e,t){var n,r,i=this.createTween(e,t),o=Yn.exec(t),a=i.cur(),s=+a||0,u=1,l=20;if(o){if(n=+o[2],r=o[3]||(b.cssNumber[e]?"":"px"),"px"!==r&&s){s=b.css(i.elem,e,!0)||n||1;do u=u||".5",s/=u,b.style(i.elem,e,s+r);while(u!==(u=i.cur()/a)&&1!==u&&--l)}i.unit=r,i.start=s,i.end=o[1]?s+(o[1]+1)*n:n}return i}]};function Kn(){return setTimeout(function(){Xn=t}),Xn=b.now()}function Zn(e,t){b.each(t,function(t,n){var r=(Qn[t]||[]).concat(Qn["*"]),i=0,o=r.length;for(;o>i;i++)if(r[i].call(e,t,n))return})}function er(e,t,n){var r,i,o=0,a=Gn.length,s=b.Deferred().always(function(){delete u.elem}),u=function(){if(i)return!1;var t=Xn||Kn(),n=Math.max(0,l.startTime+l.duration-t),r=n/l.duration||0,o=1-r,a=0,u=l.tweens.length;for(;u>a;a++)l.tweens[a].run(o);return s.notifyWith(e,[l,o,n]),1>o&&u?n:(s.resolveWith(e,[l]),!1)},l=s.promise({elem:e,props:b.extend({},t),opts:b.extend(!0,{specialEasing:{}},n),originalProperties:t,originalOptions:n,startTime:Xn||Kn(),duration:n.duration,tweens:[],createTween:function(t,n){var r=b.Tween(e,l.opts,t,n,l.opts.specialEasing[t]||l.opts.easing);return l.tweens.push(r),r},stop:function(t){var n=0,r=t?l.tweens.length:0;if(i)return this;for(i=!0;r>n;n++)l.tweens[n].run(1);return t?s.resolveWith(e,[l,t]):s.rejectWith(e,[l,t]),this}}),c=l.props;for(tr(c,l.opts.specialEasing);a>o;o++)if(r=Gn[o].call(l,e,c,l.opts))return r;return Zn(l,c),b.isFunction(l.opts.start)&&l.opts.start.call(e,l),b.fx.timer(b.extend(u,{elem:e,anim:l,queue:l.opts.queue})),l.progress(l.opts.progress).done(l.opts.done,l.opts.complete).fail(l.opts.fail).always(l.opts.always)}function tr(e,t){var n,r,i,o,a;for(i in e)if(r=b.camelCase(i),o=t[r],n=e[i],b.isArray(n)&&(o=n[1],n=e[i]=n[0]),i!==r&&(e[r]=n,delete e[i]),a=b.cssHooks[r],a&&"expand"in a){n=a.expand(n),delete e[r];for(i in n)i in e||(e[i]=n[i],t[i]=o)}else t[r]=o}b.Animation=b.extend(er,{tweener:function(e,t){b.isFunction(e)?(t=e,e=["*"]):e=e.split(" ");var n,r=0,i=e.length;for(;i>r;r++)n=e[r],Qn[n]=Qn[n]||[],Qn[n].unshift(t)},prefilter:function(e,t){t?Gn.unshift(e):Gn.push(e)}});function nr(e,t,n){var r,i,o,a,s,u,l,c,p,f=this,d=e.style,h={},g=[],m=e.nodeType&&nn(e);n.queue||(c=b._queueHooks(e,"fx"),null==c.unqueued&&(c.unqueued=0,p=c.empty.fire,c.empty.fire=function(){c.unqueued||p()}),c.unqueued++,f.always(function(){f.always(function(){c.unqueued--,b.queue(e,"fx").length||c.empty.fire()})})),1===e.nodeType&&("height"in t||"width"in t)&&(n.overflow=[d.overflow,d.overflowX,d.overflowY],"inline"===b.css(e,"display")&&"none"===b.css(e,"float")&&(b.support.inlineBlockNeedsLayout&&"inline"!==un(e.nodeName)?d.zoom=1:d.display="inline-block")),n.overflow&&(d.overflow="hidden",b.support.shrinkWrapBlocks||f.always(function(){d.overflow=n.overflow[0],d.overflowX=n.overflow[1],d.overflowY=n.overflow[2]}));for(i in t)if(a=t[i],Vn.exec(a)){if(delete t[i],u=u||"toggle"===a,a===(m?"hide":"show"))continue;g.push(i)}if(o=g.length){s=b._data(e,"fxshow")||b._data(e,"fxshow",{}),"hidden"in s&&(m=s.hidden),u&&(s.hidden=!m),m?b(e).show():f.done(function(){b(e).hide()}),f.done(function(){var t;b._removeData(e,"fxshow");for(t in h)b.style(e,t,h[t])});for(i=0;o>i;i++)r=g[i],l=f.createTween(r,m?s[r]:0),h[r]=s[r]||b.style(e,r),r in s||(s[r]=l.start,m&&(l.end=l.start,l.start="width"===r||"height"===r?1:0))}}function rr(e,t,n,r,i){return new rr.prototype.init(e,t,n,r,i)}b.Tween=rr,rr.prototype={constructor:rr,init:function(e,t,n,r,i,o){this.elem=e,this.prop=n,this.easing=i||"swing",this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=o||(b.cssNumber[n]?"":"px")},cur:function(){var e=rr.propHooks[this.prop];return e&&e.get?e.get(this):rr.propHooks._default.get(this)},run:function(e){var t,n=rr.propHooks[this.prop];return this.pos=t=this.options.duration?b.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):rr.propHooks._default.set(this),this}},rr.prototype.init.prototype=rr.prototype,rr.propHooks={_default:{get:function(e){var t;return null==e.elem[e.prop]||e.elem.style&&null!=e.elem.style[e.prop]?(t=b.css(e.elem,e.prop,""),t&&"auto"!==t?t:0):e.elem[e.prop]},set:function(e){b.fx.step[e.prop]?b.fx.step[e.prop](e):e.elem.style&&(null!=e.elem.style[b.cssProps[e.prop]]||b.cssHooks[e.prop])?b.style(e.elem,e.prop,e.now+e.unit):e.elem[e.prop]=e.now}}},rr.propHooks.scrollTop=rr.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},b.each(["toggle","show","hide"],function(e,t){var n=b.fn[t];b.fn[t]=function(e,r,i){return null==e||"boolean"==typeof e?n.apply(this,arguments):this.animate(ir(t,!0),e,r,i)}}),b.fn.extend({fadeTo:function(e,t,n,r){return this.filter(nn).css("opacity",0).show().end().animate({opacity:t},e,n,r)},animate:function(e,t,n,r){var i=b.isEmptyObject(e),o=b.speed(t,n,r),a=function(){var t=er(this,b.extend({},e),o);a.finish=function(){t.stop(!0)},(i||b._data(this,"finish"))&&t.stop(!0)};return a.finish=a,i||o.queue===!1?this.each(a):this.queue(o.queue,a)},stop:function(e,n,r){var i=function(e){var t=e.stop;delete e.stop,t(r)};return"string"!=typeof e&&(r=n,n=e,e=t),n&&e!==!1&&this.queue(e||"fx",[]),this.each(function(){var t=!0,n=null!=e&&e+"queueHooks",o=b.timers,a=b._data(this);if(n)a[n]&&a[n].stop&&i(a[n]);else for(n in a)a[n]&&a[n].stop&&Jn.test(n)&&i(a[n]);for(n=o.length;n--;)o[n].elem!==this||null!=e&&o[n].queue!==e||(o[n].anim.stop(r),t=!1,o.splice(n,1));(t||!r)&&b.dequeue(this,e)})},finish:function(e){return e!==!1&&(e=e||"fx"),this.each(function(){var t,n=b._data(this),r=n[e+"queue"],i=n[e+"queueHooks"],o=b.timers,a=r?r.length:0;for(n.finish=!0,b.queue(this,e,[]),i&&i.cur&&i.cur.finish&&i.cur.finish.call(this),t=o.length;t--;)o[t].elem===this&&o[t].queue===e&&(o[t].anim.stop(!0),o.splice(t,1));for(t=0;a>t;t++)r[t]&&r[t].finish&&r[t].finish.call(this);delete n.finish})}});function ir(e,t){var n,r={height:e},i=0;for(t=t?1:0;4>i;i+=2-t)n=Zt[i],r["margin"+n]=r["padding"+n]=e;return t&&(r.opacity=r.width=e),r}b.each({slideDown:ir("show"),slideUp:ir("hide"),slideToggle:ir("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,t){b.fn[e]=function(e,n,r){return this.animate(t,e,n,r)}}),b.speed=function(e,t,n){var r=e&&"object"==typeof e?b.extend({},e):{complete:n||!n&&t||b.isFunction(e)&&e,duration:e,easing:n&&t||t&&!b.isFunction(t)&&t};return r.duration=b.fx.off?0:"number"==typeof r.duration?r.duration:r.duration in b.fx.speeds?b.fx.speeds[r.duration]:b.fx.speeds._default,(null==r.queue||r.queue===!0)&&(r.queue="fx"),r.old=r.complete,r.complete=function(){b.isFunction(r.old)&&r.old.call(this),r.queue&&b.dequeue(this,r.queue)},r},b.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2}},b.timers=[],b.fx=rr.prototype.init,b.fx.tick=function(){var e,n=b.timers,r=0;for(Xn=b.now();n.length>r;r++)e=n[r],e()||n[r]!==e||n.splice(r--,1);n.length||b.fx.stop(),Xn=t},b.fx.timer=function(e){e()&&b.timers.push(e)&&b.fx.start()},b.fx.interval=13,b.fx.start=function(){Un||(Un=setInterval(b.fx.tick,b.fx.interval))},b.fx.stop=function(){clearInterval(Un),Un=null},b.fx.speeds={slow:600,fast:200,_default:400},b.fx.step={},b.expr&&b.expr.filters&&(b.expr.filters.animated=function(e){return b.grep(b.timers,function(t){return e===t.elem}).length}),b.fn.offset=function(e){if(arguments.length)return e===t?this:this.each(function(t){b.offset.setOffset(this,e,t)});var n,r,o={top:0,left:0},a=this[0],s=a&&a.ownerDocument;if(s)return n=s.documentElement,b.contains(n,a)?(typeof a.getBoundingClientRect!==i&&(o=a.getBoundingClientRect()),r=or(s),{top:o.top+(r.pageYOffset||n.scrollTop)-(n.clientTop||0),left:o.left+(r.pageXOffset||n.scrollLeft)-(n.clientLeft||0)}):o},b.offset={setOffset:function(e,t,n){var r=b.css(e,"position");"static"===r&&(e.style.position="relative");var i=b(e),o=i.offset(),a=b.css(e,"top"),s=b.css(e,"left"),u=("absolute"===r||"fixed"===r)&&b.inArray("auto",[a,s])>-1,l={},c={},p,f;u?(c=i.position(),p=c.top,f=c.left):(p=parseFloat(a)||0,f=parseFloat(s)||0),b.isFunction(t)&&(t=t.call(e,n,o)),null!=t.top&&(l.top=t.top-o.top+p),null!=t.left&&(l.left=t.left-o.left+f),"using"in t?t.using.call(e,l):i.css(l)}},b.fn.extend({position:function(){if(this[0]){var e,t,n={top:0,left:0},r=this[0];return"fixed"===b.css(r,"position")?t=r.getBoundingClientRect():(e=this.offsetParent(),t=this.offset(),b.nodeName(e[0],"html")||(n=e.offset()),n.top+=b.css(e[0],"borderTopWidth",!0),n.left+=b.css(e[0],"borderLeftWidth",!0)),{top:t.top-n.top-b.css(r,"marginTop",!0),left:t.left-n.left-b.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent||o.documentElement;while(e&&!b.nodeName(e,"html")&&"static"===b.css(e,"position"))e=e.offsetParent;return e||o.documentElement})}}),b.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(e,n){var r=/Y/.test(n);b.fn[e]=function(i){return b.access(this,function(e,i,o){var a=or(e);return o===t?a?n in a?a[n]:a.document.documentElement[i]:e[i]:(a?a.scrollTo(r?b(a).scrollLeft():o,r?o:b(a).scrollTop()):e[i]=o,t)},e,i,arguments.length,null)}});function or(e){return b.isWindow(e)?e:9===e.nodeType?e.defaultView||e.parentWindow:!1}b.each({Height:"height",Width:"width"},function(e,n){b.each({padding:"inner"+e,content:n,"":"outer"+e},function(r,i){b.fn[i]=function(i,o){var a=arguments.length&&(r||"boolean"!=typeof i),s=r||(i===!0||o===!0?"margin":"border");return b.access(this,function(n,r,i){var o;return b.isWindow(n)?n.document.documentElement["client"+e]:9===n.nodeType?(o=n.documentElement,Math.max(n.body["scroll"+e],o["scroll"+e],n.body["offset"+e],o["offset"+e],o["client"+e])):i===t?b.css(n,r,s):b.style(n,r,i,s)},n,a?i:t,a,null)}})}),e.jQuery=e.$=b,"function"==typeof define&&define.amd&&define.amd.jQuery&&define("jquery",[],function(){return b})})(window);
\ No newline at end of file
diff --git a/_styleguide-template/public/kss.js b/_styleguide-template/public/kss.js
new file mode 100755
index 000000000..e88d547c4
--- /dev/null
+++ b/_styleguide-template/public/kss.js
@@ -0,0 +1,47 @@
+(function() {
+ var KssStateGenerator;
+
+ KssStateGenerator = (function() {
+
+ function KssStateGenerator() {
+ var idx, idxs, pseudos, replaceRule, rule, stylesheet, _i, _len, _len2, _ref, _ref2;
+ pseudos = /(\:hover|\:disabled|\:active|\:visited|\:focus)/g;
+ // try {
+ _ref = document.styleSheets;
+ for (_i = 0, _len = _ref.length; _i < _len; _i++) {
+ stylesheet = _ref[_i];
+ idxs = [];
+ _ref2 = stylesheet.cssRules || [];
+ for (idx = 0, _len2 = _ref2.length; idx < _len2; idx++) {
+ rule = _ref2[idx];
+ if ((rule.type === CSSRule.STYLE_RULE) && pseudos.test(rule.selectorText)) {
+ replaceRule = function(matched, stuff) {
+ return ".pseudo-class-" + matched.replace(':', '');
+ };
+ this.insertRule(rule.cssText.replace(pseudos, replaceRule));
+ }
+ }
+ }
+ // } catch (_error) {console.log(_error.message);}
+ }
+
+ KssStateGenerator.prototype.insertRule = function(rule) {
+ var headEl, styleEl;
+ headEl = document.getElementsByTagName('head')[0];
+ styleEl = document.createElement('style');
+ styleEl.type = 'text/css';
+ if (styleEl.styleSheet) {
+ styleEl.styleSheet.cssText = rule;
+ } else {
+ styleEl.appendChild(document.createTextNode(rule));
+ }
+ return headEl.appendChild(styleEl);
+ };
+
+ return KssStateGenerator;
+
+ })();
+
+ new KssStateGenerator;
+
+}).call(this);
diff --git a/_styleguide-template/public/kss.less b/_styleguide-template/public/kss.less
new file mode 100755
index 000000000..5c9447fb0
--- /dev/null
+++ b/_styleguide-template/public/kss.less
@@ -0,0 +1,419 @@
+// Documentation styles
+// --------------------
+
+body {
+ margin: 0;
+}
+
+// Import rainbow.js highlighter.
+@import "rainbow-github";
+
+#kss-node {
+
+ border-top: 4px solid @key-color;
+ background: #fff;
+
+ // Variables
+ @text-color: #222;
+ @key-color: #999;
+ @border-color: #e3e3e3;
+ @wrapper-width: 960px;
+ @sidebar-width: 220px;
+
+ // Mixins
+ .base-styles() {
+ line-height: 1.3;
+ font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
+ color: @text-color;
+ }
+ .doc-styles() {
+ .base-styles();
+ line-height: 1.5; // Override
+ word-wrap: break-word;
+ font-size: 14px;
+ h1,
+ h2,
+ h3,
+ h4,
+ h5,
+ h6 {
+ display: block;
+ line-height: 1.3;
+ font-weight: bold;
+ }
+ h1 {
+ margin: 60px 0 20px;
+ border-bottom: 2px solid @border-color;
+ font-size: 36px;
+ }
+ h2 {
+ margin: 30px 0 15px;
+ font-size: 28px;
+ }
+ h3 {
+ margin: 20px 0 15px;
+ font-size: 20px;
+ }
+ h4,
+ h5,
+ h6 {
+ margin: 15px 0;
+ font-size: 16px;
+ }
+ p,
+ ul,
+ ol,
+ blockquote,
+ pre {
+ display: block;
+ margin: 15px 0;
+ }
+ ul {
+ list-style-type: square;
+ list-style-position: outside;
+ padding-left: 25px;
+ }
+ ol {
+ list-style-type: decimal;
+ list-style-position: outside;
+ padding-left: 25px;
+ }
+ blockquote {
+ margin-left: 2px;
+ padding: 0 0 0 16px;
+ border-left: 2px solid @border-color;
+ }
+ pre {
+ .pre-styles();
+ overflow: auto;
+ padding: 8px 12px;
+ border: 1px solid @border-color;
+ }
+ a,
+ img,
+ strong,
+ em,
+ code {
+ display: inline;
+ }
+ a {
+ color: #08a;
+ text-decoration: none;
+ &:hover {
+ text-decoration: underline;
+ color: #068;
+ }
+ }
+ img {
+ vertical-align: bottom;
+ }
+ a img {
+ border: none;
+ }
+ strong {
+ font-weight: bold;
+ font-style: normal;
+ }
+ em {
+ font-weight: normal;
+ font-style: italic;
+ }
+ code {
+ .code-styles();
+ padding: 1px 2px;
+ border: 1px solid @border-color;
+ vertical-align: 1px;
+ }
+ pre > code {
+ padding: 0;
+ border: none;
+ }
+ }
+ .pre-styles() {
+ white-space: pre;
+ word-wrap: normal;
+ }
+ .code-styles() {
+ line-height: 1.5;
+ font-size: 13px;
+ font-family: Consolas, Menlo,'Liberation Mono', Courier, monospace;
+ color: @text-color
+ }
+ .clearfix() {
+ &:before,
+ &:after {
+ content: " ";
+ display: table;
+ }
+ &:after {
+ clear: both;
+ }
+ }
+ .ellipsis() {
+ display: block;
+ overflow: hidden;
+ white-space: nowrap;
+ text-overflow: ellipsis;
+ }
+
+ // Layout
+ .kss-wrapper {
+ .clearfix();
+ width: @wrapper-width - 20px;
+ margin: 0 auto;
+ padding: 0 10px;
+ }
+
+ // Sidebar
+ // -------
+
+ // Sidebar column
+ .kss-sidebar {
+ float: left;
+ width: @sidebar-width;
+ overflow: hidden;
+ &.kss-fixed {
+ position: fixed;
+ top: 0;
+ .kss-sidebar-inner {
+ padding-top: 40px + 4px; // Keep border height
+ }
+ }
+ }
+ .kss-sidebar-inner {
+ padding: 40px 0 10px;
+ }
+ // Header
+ .kss-header {
+ background: #fff;
+ }
+ // Document title
+ .kss-doc-title {
+ .base-styles();
+ margin: 0 0 30px;
+ text-align: right;
+ font-size: 20px;
+ font-weight: normal;
+ color: @key-color;
+ a {
+ text-decoration: none;
+ color: inherit;
+ }
+ }
+
+ // Menu
+ .kss-nav {
+ margin: 30px 0;
+ }
+
+ .kss-menu {
+ margin: 0;
+ padding: 0;
+ list-style-type: none;
+ > .kss-menu-item {
+ .base-styles();
+ font-size: 14px;
+ display: block;
+ > a {
+ .clearfix();
+ display: block;
+ padding: 7px 0 7px 5px;
+ border-bottom: 1px solid @border-color;
+ text-decoration: none;
+ font-weight: bold;
+ color: #888;
+ &:hover {
+ color: @key-color;
+ }
+ > .kss-ref {
+ float: left;
+ margin-right: 10px;
+ color: @key-color;
+ }
+ > .kss-name {
+ .ellipsis();
+ text-align: right;
+ }
+ }
+ &.kss-active > a {
+ border-bottom-color: @key-color;
+ color: @text-color;
+ }
+ }
+ }
+
+ .kss-menu-child {
+ display: none;
+ margin: 0;
+ padding: 5px 0;
+ list-style-type: none;
+ border-bottom: 1px solid @border-color;
+ > .kss-menu-item {
+ .base-styles();
+ font-size: 12px;
+ > a {
+ display: block;
+ padding: 5px 0 6px 5px;
+ text-decoration: none;
+ color: #888;
+ &:hover {
+ color: @key-color;
+ }
+ > .kss-ref {
+ float: left;
+ margin-right: 10px;
+ color: @key-color;
+ }
+ > .kss-name {
+ .ellipsis();
+ text-align: right;
+ }
+ }
+ &.kss-active > a {
+ color: @text-color;
+ }
+ }
+ }
+
+ // Documentation content
+ // ---------------------
+
+ // Content column
+ .kss-content {
+ overflow: hidden;
+ margin-left: @sidebar-width + 30px;
+ padding: 40px 0 10px;
+ }
+
+ // Section
+ .kss-section {
+ margin: -40px 0 60px; // Adjust the target offset.
+ padding-top: 40px;
+ }
+
+ // Overview content
+ .kss-overview {
+ .doc-styles();
+ }
+
+ // Title
+ .kss-title {
+ .base-styles();
+ margin: 0 0 10px;
+ font-weight: bold;
+ .kss-ref {
+ margin-right: .2em;
+ color: @key-color;
+ }
+ }
+
+ // Description
+ .kss-description {
+ .doc-styles();
+ margin: 10px 0 20px;
+ }
+
+ // Modifier box
+ .kss-modifier-block {
+ margin: 20px 0;
+ }
+
+ // Modifiers
+ .kss-modifier {
+ border-top: 1px solid @border-color;
+ }
+
+ .kss-modifier-head {
+ .doc-styles();
+ padding: 8px 0 0;
+ font-size: 12px;
+ p,
+ ul,
+ ol,
+ blockquote,
+ pre {
+ margin: 0;
+ }
+ code {
+ font-size: 11px;
+ color: inherit;
+ }
+ .kss-modifier-name {
+ float: left;
+ margin-right: 15px;
+ font-weight: bold;
+ }
+ .kss-modifier-description {
+ overflow: hidden;
+ color: #888;
+ }
+ }
+
+ .kss-modifier-example {
+ .clearfix();
+ padding: 25px 20px 35px;
+ }
+ .kss-modifier-original {
+ .kss-modifier-example {
+ padding-top: 35px;
+ }
+ }
+
+ // Markup
+ .kss-markup {
+ pre {
+ .pre-styles();
+ overflow: auto;
+ margin: 0;
+ padding: 12px 15px;
+ border-top: 1px solid @border-color;
+ border-left: 2px solid @key-color;
+ border-right: 1px solid @border-color;
+ border-bottom: 1px solid @border-color;
+ }
+ code {
+ .code-styles();
+ }
+ }
+
+ // Top level section
+ .kss-depth-1 .kss-title,
+ .kss-overview > h1:first-child {
+ margin: -0.15em 0 20px;
+ border-bottom: 2px solid @key-color;
+ font-size: 42px;
+ }
+
+ // Other sections
+ .kss-depth-2,
+ .kss-depth-3,
+ .kss-depth-4,
+ .kss-depth-5,
+ .kss-depth-6 {
+ .kss-title {
+ font-size: 28px;
+ }
+ }
+
+ // Copyright
+ .kss-footer {
+ .doc-styles();
+ margin: 80px 0 20px;
+ padding: 8px 0 0;
+ border-top: 2px solid @border-color;
+ font-size: 12px;
+ }
+
+}
+
+// Responsive styles
+// -----------------
+
+// Large desctop
+@media (min-width: 1260px) {
+ #kss-node {
+ .kss-wrapper {
+ width: 1260px - 20px;
+ }
+ }
+}
diff --git a/_styleguide-template/public/main.js b/_styleguide-template/public/main.js
new file mode 100755
index 000000000..fdec557e8
--- /dev/null
+++ b/_styleguide-template/public/main.js
@@ -0,0 +1,92 @@
+(function ($) {
+ $(function () {
+
+ var $window = $(window),
+ $document = $(document),
+ $content = $('.kss-content'),
+ $sidebar = $('.kss-sidebar'),
+ $sidebarInner = $('.kss-sidebar-inner'),
+ $menu = $('.kss-menu'),
+ $childMenu = $('.kss-menu-child'),
+ $menuItem = $menu.find('.kss-menu-item'),
+ $childMenuItem = $childMenu.find('.kss-menu-item'),
+ ref = $menu.data('kss-ref'),
+ prevScrollTop;
+
+ // Dynamic menu activation
+ function scrollSpy() {
+ var scrollTop = $window.scrollTop(),
+ $anchors = $childMenu.find('a'),
+ activeIndex;
+ $anchors.each(function (index) {
+ var $target = $($(this).attr('href').replace(/\./g, '\\.')),
+ offsetTop = $target.offset().top,
+ offsetBottom = offsetTop + $target.outerHeight(true);
+ if (offsetTop <= scrollTop && scrollTop < offsetBottom) {
+ activeIndex = index;
+ return false;
+ }
+ });
+ $childMenuItem.removeClass('kss-active');
+ if (typeof activeIndex !== 'undefined') {
+ $childMenuItem.eq(activeIndex).addClass('kss-active');
+ }
+ }
+
+ // Fix sidebar position
+ function fixSidebar() {
+ if ($sidebarInner.outerHeight() < $content.outerHeight()) {
+ $sidebar.addClass('kss-fixed');
+ if ($sidebarInner.outerHeight() > $window.height()) {
+ $sidebar.height($window.height());
+ $window.on('scroll', scrollSidebar).trigger('scroll');
+ }
+ else {
+ $sidebar.height('auto');
+ $window.off('scroll', scrollSidebar);
+ }
+ }
+ else {
+ $sidebar.removeClass('kss-fixed');
+ $sidebar.height('auto');
+ $window.off('scroll', scrollSidebar);
+ }
+ }
+
+ // Synchronize sidebar scroll
+ function scrollSidebar(event) {
+ if (event.handled !== true) {
+ var scrollTop = $window.scrollTop(),
+ maxScrollTop = $document.height() - $window.height();
+ if (scrollTop >= 0 && prevScrollTop >= 0 && scrollTop <= maxScrollTop && prevScrollTop <= maxScrollTop) { // for Mac scrolling
+ $sidebar.scrollTop($sidebar.scrollTop() + (scrollTop - prevScrollTop));
+ }
+ prevScrollTop = scrollTop;
+ event.handled = true;
+ }
+ else {
+ return false;
+ }
+ }
+
+ // Activate current page item
+ $menuItem.eq(ref).addClass('kss-active');
+
+ // Append child menu and attach scrollSpy
+ if ($childMenu.length) {
+ $childMenu.show().appendTo($menuItem.eq(ref));
+ $window.on('scroll', scrollSpy).trigger('scroll');
+ }
+
+ // Fixed sidebar
+ if (!/Android|webOS|iPhone|iPad|iPod|BlackBerry/i.test(navigator.userAgent)) {
+ $window.on('resize', fixSidebar).trigger('resize');
+ }
+
+ // Syntax hightlignting with Rainbow.js
+ $('code.html').attr('data-language', 'html');
+ $('code.css').attr('data-language', 'css');
+ $('code.less, code.scss').attr('data-language', 'generic');
+
+ });
+}(jQuery));
\ No newline at end of file
diff --git a/_styleguide-template/public/rainbow-github.less b/_styleguide-template/public/rainbow-github.less
new file mode 100755
index 000000000..e99ebfc7f
--- /dev/null
+++ b/_styleguide-template/public/rainbow-github.less
@@ -0,0 +1,52 @@
+/**
+ * GitHub theme
+ *
+ * @author Craig Campbell
+ * @version 1.0.4
+ */
+
+pre .comment {
+ color: #998;
+}
+
+pre .support {
+ color: #0086B3;
+}
+
+pre .tag, pre .tag-name {
+ color: navy;
+}
+
+pre .keyword, pre .css-property, pre .vendor-prefix, pre .sass, pre .class, pre .id, pre .css-value, pre .entity.function, pre .storage.function {
+ font-weight: bold;
+}
+
+pre .css-property, pre .css-value, pre .vendor-prefix, pre .support.namespace {
+ color: #333;
+}
+
+pre .constant.numeric, pre .keyword.unit, pre .hex-color {
+ font-weight: normal;
+ color: #099;
+}
+
+pre .entity.class {
+ color: #458;
+}
+
+pre .entity.id, pre .entity.function {
+ color: #900;
+}
+
+pre .attribute, pre .variable {
+ color: teal;
+}
+
+pre .string, pre .support.value {
+ font-weight: normal;
+ color: #d14;
+}
+
+pre .regexp {
+ color: #009926;
+}
diff --git a/_styleguide-template/public/rainbow.min.js b/_styleguide-template/public/rainbow.min.js
new file mode 100755
index 000000000..e0acaaf71
--- /dev/null
+++ b/_styleguide-template/public/rainbow.min.js
@@ -0,0 +1,12 @@
+/* Rainbow v1.2 rainbowco.de | included languages: generic, html, css */
+window.Rainbow=function(){function q(a){var b,c=a.getAttribute&&a.getAttribute("data-language")||0;if(!c){a=a.attributes;for(b=0;b
=f[d][c])delete f[d][c],delete j[d][c];if(a>=c&&ac&&b'+b+""}function s(a,b,c,i){var e=a.exec(c);if(e){++t;!b.name&&"string"==typeof b.matches[0]&&(b.name=b.matches[0],delete b.matches[0]);var k=e[0],g=e.index,u=e[0].length+g,h=function(){function e(){s(a,b,c,i)}t%100>0?e():setTimeout(e,0)};if(C(g,u))h();else{var m=v(b.matches),l=function(a,c,i){if(a>=c.length)i(k);else{var d=e[c[a]];if(d){var g=b.matches[c[a]],f=g.language,h=g.name&&g.matches?
+g.matches:g,j=function(b,d,g){var f;f=0;var h;for(h=1;h/g,">").replace(/&(?![\w\#]+;)/g,
+"&"),b,c)}function o(a,b,c){if(b *:first-child {
+ margin-top: 0 !important; }
+ #wiki-content .markdown-body > *:last-child {
+ margin-bottom: 0 !important; }
+ #wiki-content .markdown-body a.absent {
+ color: #c00; }
+ #wiki-content .markdown-body a.anchor {
+ display: block;
+ padding-left: 30px;
+ margin-left: -30px;
+ cursor: pointer;
+ position: absolute;
+ top: 0;
+ left: 0;
+ bottom: 0; }
+ #wiki-content .markdown-body h1,
+ #wiki-content .markdown-body h2,
+ #wiki-content .markdown-body h3,
+ #wiki-content .markdown-body h4,
+ #wiki-content .markdown-body h5,
+ #wiki-content .markdown-body h6 {
+ margin: 20px 0 10px;
+ padding: 0;
+ font-weight: bold;
+ -webkit-font-smoothing: antialiased;
+ cursor: text;
+ position: relative; }
+ #wiki-content .markdown-body h1:hover a.anchor,
+ #wiki-content .markdown-body h2:hover a.anchor,
+ #wiki-content .markdown-body h3:hover a.anchor,
+ #wiki-content .markdown-body h4:hover a.anchor,
+ #wiki-content .markdown-body h5:hover a.anchor,
+ #wiki-content .markdown-body h6:hover a.anchor {
+ text-decoration: none; }
+ #wiki-content .markdown-body h1 tt,
+ #wiki-content .markdown-body h1 code,
+ #wiki-content .markdown-body h2 tt,
+ #wiki-content .markdown-body h2 code,
+ #wiki-content .markdown-body h3 tt,
+ #wiki-content .markdown-body h3 code,
+ #wiki-content .markdown-body h4 tt,
+ #wiki-content .markdown-body h4 code,
+ #wiki-content .markdown-body h5 tt,
+ #wiki-content .markdown-body h5 code,
+ #wiki-content .markdown-body h6 tt,
+ #wiki-content .markdown-body h6 code {
+ font-size: inherit; }
+ #wiki-content .markdown-body h1 {
+ font-size: 28px;
+ color: #689377;
+ margin-top: 20px;
+ margin-bottom: 10px;
+ border-bottom: 1px solid #ccc; }
+ #wiki-content .markdown-body h2 {
+ text-transform: uppercase;
+ font-size: 24px;
+ color: #689377; }
+ #wiki-content .markdown-body h3 {
+ font-size: 18px;
+ color: #689377; }
+ #wiki-content .markdown-body h4 {
+ font-size: 16px;
+ color: #689377; }
+ #wiki-content .markdown-body h5 {
+ font-size: 15px;
+ color: #689377; }
+ #wiki-content .markdown-body h6 {
+ color: #777;
+ font-size: 15px; }
+ #wiki-content .markdown-body p,
+ #wiki-content .markdown-body blockquote,
+ #wiki-content .markdown-body ul,
+ #wiki-content .markdown-body ol,
+ #wiki-content .markdown-body dl,
+ #wiki-content .markdown-body table,
+ #wiki-content .markdown-body pre,
+ #wiki-content .markdown-body hr {
+ margin: 0px 0;
+ margin-bottom: 15px; }
+ #wiki-content .markdown-body li {
+ margin: 15px 0px; }
+ #wiki-content .markdown-body hr {
+ border: 0 none;
+ color: #ccc;
+ height: 4px;
+ padding: 0; }
+ #wiki-content .markdown-body h1 + h2 + h3 {
+ margin-top: 30px; }
+ #wiki-content .markdown-body a:first-child h1,
+ #wiki-content .markdown-body a:first-child h2,
+ #wiki-content .markdown-body a:first-child h3,
+ #wiki-content .markdown-body a:first-child h4,
+ #wiki-content .markdown-body a:first-child h5,
+ #wiki-content .markdown-body a:first-child h6 {
+ margin-top: 0;
+ padding-top: 0; }
+ #wiki-content .markdown-body h1 + p,
+ #wiki-content .markdown-body h2 + p,
+ #wiki-content .markdown-body h3 + p,
+ #wiki-content .markdown-body h4 + p,
+ #wiki-content .markdown-body h5 + p,
+ #wiki-content .markdown-body h6 + p {
+ margin-top: 0; }
+ #wiki-content .markdown-body li p.first {
+ display: inline-block; }
+ #wiki-content .markdown-body ul,
+ #wiki-content .markdown-body ol {
+ padding-left: 30px; }
+ #wiki-content .markdown-body ul li > :first-child,
+ #wiki-content .markdown-body ol li > :first-child {
+ margin-top: 0; }
+ #wiki-content .markdown-body ul li > :last-child,
+ #wiki-content .markdown-body ol li > :last-child {
+ margin-bottom: 0; }
+ #wiki-content .markdown-body dl {
+ padding: 0; }
+ #wiki-content .markdown-body dl dt {
+ font-size: 15px;
+ font-weight: bold;
+ font-style: italic;
+ padding: 0;
+ margin: 15px 0 5px; }
+ #wiki-content .markdown-body dl dt:first-child {
+ padding: 0; }
+ #wiki-content .markdown-body dl dt > :first-child {
+ margin-top: 0; }
+ #wiki-content .markdown-body dl dt > :last-child {
+ margin-bottom: 0; }
+ #wiki-content .markdown-body dl dd {
+ margin: 0 0 15px;
+ padding: 0 15px; }
+ #wiki-content .markdown-body dl dd > :first-child {
+ margin-top: 0; }
+ #wiki-content .markdown-body dl dd > :last-child {
+ margin-bottom: 0; }
+ #wiki-content .markdown-body blockquote {
+ border-left: 4px solid #DDD;
+ padding: 0 15px;
+ color: #777; }
+ #wiki-content .markdown-body blockquote > :first-child {
+ margin-top: 0; }
+ #wiki-content .markdown-body blockquote > :last-child {
+ margin-bottom: 0; }
+ #wiki-content .markdown-body table {
+ padding: 0;
+ border-collapse: collapse;
+ border-spacing: 0; }
+ #wiki-content .markdown-body table tr {
+ border-top: 1px solid #ccc;
+ background-color: #fff;
+ margin: 0;
+ padding: 0; }
+ #wiki-content .markdown-body table tr:nth-child(2n) {
+ background-color: #f8f8f8; }
+ #wiki-content .markdown-body table tr th {
+ font-weight: bold; }
+ #wiki-content .markdown-body table tr th,
+ #wiki-content .markdown-body table tr td {
+ border: 1px solid #ccc;
+ text-align: left;
+ margin: 0;
+ padding: 6px 13px; }
+ #wiki-content .markdown-body table tr th > :first-child,
+ #wiki-content .markdown-body table tr td > :first-child {
+ margin-top: 0; }
+ #wiki-content .markdown-body table tr th > :last-child,
+ #wiki-content .markdown-body table tr td > :last-child {
+ margin-bottom: 0; }
+ #wiki-content .markdown-body img {
+ max-width: 100%; }
+ #wiki-content .markdown-body span.frame {
+ display: block;
+ overflow: hidden; }
+ #wiki-content .markdown-body span.frame > span {
+ border: 1px solid #ddd;
+ display: block;
+ float: left;
+ overflow: hidden;
+ margin: 13px 0 0;
+ padding: 7px;
+ width: auto; }
+ #wiki-content .markdown-body span.frame span img {
+ display: block;
+ float: left; }
+ #wiki-content .markdown-body span.frame span span {
+ clear: both;
+ color: #333;
+ display: block;
+ padding: 5px 0 0; }
+ #wiki-content .markdown-body span.align-center {
+ display: block;
+ overflow: hidden;
+ clear: both; }
+ #wiki-content .markdown-body span.align-center > span {
+ display: block;
+ overflow: hidden;
+ margin: 13px auto 0;
+ text-align: center; }
+ #wiki-content .markdown-body span.align-center span img {
+ margin: 0 auto;
+ text-align: center; }
+ #wiki-content .markdown-body span.align-right {
+ display: block;
+ overflow: hidden;
+ clear: both; }
+ #wiki-content .markdown-body span.align-right > span {
+ display: block;
+ overflow: hidden;
+ margin: 13px 0 0;
+ text-align: right; }
+ #wiki-content .markdown-body span.align-right span img {
+ margin: 0;
+ text-align: right; }
+ #wiki-content .markdown-body span.float-left {
+ display: block;
+ margin-right: 13px;
+ overflow: hidden;
+ float: left; }
+ #wiki-content .markdown-body span.float-left span {
+ margin: 13px 0 0; }
+ #wiki-content .markdown-body span.float-right {
+ display: block;
+ margin-left: 13px;
+ overflow: hidden;
+ float: right; }
+ #wiki-content .markdown-body span.float-right > span {
+ display: block;
+ overflow: hidden;
+ margin: 13px auto 0;
+ text-align: right; }
+ #wiki-content .markdown-body code,
+ #wiki-content .markdown-body tt {
+ padding: 2px 6px;
+ font-size: 14px;
+ background-color: #f8f8f8;
+ border-radius: 3px; }
+ #wiki-content .markdown-body pre > tt,
+ #wiki-content .markdown-body pre > code {
+ margin: 0;
+ padding: 0;
+ white-space: pre;
+ border: none;
+ background: transparent; }
+ #wiki-content .markdown-body pre {
+ background-color: #f8f8f8;
+ border: 1px solid #ccc;
+ font-size: 12px;
+ line-height: 19px;
+ overflow: auto;
+ padding: 6px 10px;
+ border-radius: 3px; }
+ #wiki-content .markdown-body pre pre,
+ #wiki-content .markdown-body pre code,
+ #wiki-content .markdown-body pre tt {
+ background-color: transparent;
+ border: none; }
+ #wiki-content .markdown-body pre pre {
+ margin: 0;
+ padding: 0; }
+ #wiki-content .toc {
+ background-color: #F7F7F7;
+ border: 1px solid #ddd;
+ padding: 5px 10px;
+ margin: 0;
+ border-radius: 3px; }
+ #wiki-content .toc-title {
+ color: #888;
+ font-size: 15px;
+ line-height: 1.6;
+ padding: 2px;
+ border-bottom: 1px solid #ddd;
+ margin-bottom: 3px; }
+ #wiki-content .toc ul {
+ padding-left: 10px;
+ margin: 0; }
+ #wiki-content .toc > ul {
+ margin-left: 10px;
+ font-size: 17px; }
+ #wiki-content .toc ul ul {
+ font-size: 15px; }
+ #wiki-content .toc ul ul ul {
+ font-size: 15px; }
+ #wiki-content .toc ul li {
+ margin: 0; }
+ #wiki-content #header-content .toc,
+ #wiki-content #footer-content .toc,
+ #wiki-content #sidebar-content .toc {
+ border: none; }
+ #wiki-content .highlight {
+ background: #fff; }
+ #wiki-content .highlight .c {
+ color: #998;
+ font-style: italic; }
+ #wiki-content .highlight .err {
+ color: #a61717;
+ background-color: #e3d2d2; }
+ #wiki-content .highlight .k {
+ font-weight: bold; }
+ #wiki-content .highlight .o {
+ font-weight: bold; }
+ #wiki-content .highlight .cm {
+ color: #998;
+ font-style: italic; }
+ #wiki-content .highlight .cp {
+ color: #999;
+ font-weight: bold; }
+ #wiki-content .highlight .c1 {
+ color: #998;
+ font-style: italic; }
+ #wiki-content .highlight .cs {
+ color: #999;
+ font-weight: bold;
+ font-style: italic; }
+ #wiki-content .highlight .gd {
+ color: #000;
+ background-color: #fdd; }
+ #wiki-content .highlight .gd .x {
+ color: #000;
+ background-color: #faa; }
+ #wiki-content .highlight .ge {
+ font-style: italic; }
+ #wiki-content .highlight .gr {
+ color: #a00; }
+ #wiki-content .highlight .gh {
+ color: #999; }
+ #wiki-content .highlight .gi {
+ color: #000;
+ background-color: #dfd; }
+ #wiki-content .highlight .gi .x {
+ color: #000;
+ background-color: #afa; }
+ #wiki-content .highlight .go {
+ color: #888; }
+ #wiki-content .highlight .gp {
+ color: #555; }
+ #wiki-content .highlight .gs {
+ font-weight: bold; }
+ #wiki-content .highlight .gu {
+ color: #800080;
+ font-weight: bold; }
+ #wiki-content .highlight .gt {
+ color: #a00; }
+ #wiki-content .highlight .kc {
+ font-weight: bold; }
+ #wiki-content .highlight .kd {
+ font-weight: bold; }
+ #wiki-content .highlight .kn {
+ font-weight: bold; }
+ #wiki-content .highlight .kp {
+ font-weight: bold; }
+ #wiki-content .highlight .kr {
+ font-weight: bold; }
+ #wiki-content .highlight .kt {
+ color: #458;
+ font-weight: bold; }
+ #wiki-content .highlight .m {
+ color: #099; }
+ #wiki-content .highlight .s {
+ color: #d14; }
+ #wiki-content .highlight .na {
+ color: #008080; }
+ #wiki-content .highlight .nb {
+ color: #0086B3; }
+ #wiki-content .highlight .nc {
+ color: #458;
+ font-weight: bold; }
+ #wiki-content .highlight .no {
+ color: #008080; }
+ #wiki-content .highlight .ni {
+ color: #800080; }
+ #wiki-content .highlight .ne {
+ color: #900;
+ font-weight: bold; }
+ #wiki-content .highlight .nf {
+ color: #900;
+ font-weight: bold; }
+ #wiki-content .highlight .nn {
+ color: #555; }
+ #wiki-content .highlight .nt {
+ color: #000080; }
+ #wiki-content .highlight .nv {
+ color: #008080; }
+ #wiki-content .highlight .ow {
+ font-weight: bold; }
+ #wiki-content .highlight .w {
+ color: #bbb; }
+ #wiki-content .highlight .mf {
+ color: #099; }
+ #wiki-content .highlight .mh {
+ color: #099; }
+ #wiki-content .highlight .mi {
+ color: #099; }
+ #wiki-content .highlight .mo {
+ color: #099; }
+ #wiki-content .highlight .sb {
+ color: #d14; }
+ #wiki-content .highlight .sc {
+ color: #d14; }
+ #wiki-content .highlight .sd {
+ color: #d14; }
+ #wiki-content .highlight .s2 {
+ color: #d14; }
+ #wiki-content .highlight .se {
+ color: #d14; }
+ #wiki-content .highlight .sh {
+ color: #d14; }
+ #wiki-content .highlight .si {
+ color: #d14; }
+ #wiki-content .highlight .sx {
+ color: #d14; }
+ #wiki-content .highlight .sr {
+ color: #009926; }
+ #wiki-content .highlight .s1 {
+ color: #d14; }
+ #wiki-content .highlight .ss {
+ color: #990073; }
+ #wiki-content .highlight .bp {
+ color: #999; }
+ #wiki-content .highlight .vc {
+ color: #008080; }
+ #wiki-content .highlight .vg {
+ color: #008080; }
+ #wiki-content .highlight .vi {
+ color: #008080; }
+ #wiki-content .highlight .il {
+ color: #099; }
+ #wiki-content .highlight .gc {
+ color: #999;
+ background-color: #EAF2F5; }
+ #wiki-content .type-csharp .highlight .k {
+ color: #00F; }
+ #wiki-content .type-csharp .highlight .kt {
+ color: #00F; }
+ #wiki-content .type-csharp .highlight .nf {
+ color: #000;
+ font-weight: normal; }
+ #wiki-content .type-csharp .highlight .nc {
+ color: #2B91AF; }
+ #wiki-content .type-csharp .highlight .nn {
+ color: #000; }
+ #wiki-content .type-csharp .highlight .s {
+ color: #A31515; }
+ #wiki-content .type-csharp .highlight .sc {
+ color: #A31515; }
+
+/*# sourceMappingURL=markdown.css.map */
diff --git a/markdown.css.map b/markdown.css.map
new file mode 100644
index 000000000..faecd0cd9
--- /dev/null
+++ b/markdown.css.map
@@ -0,0 +1,7 @@
+{
+"version": 3,
+"mappings": "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",
+"sources": ["markdown.scss"],
+"names": [],
+"file": "markdown.css"
+}
diff --git a/markdown.msg b/markdown.msg
new file mode 100644
index 000000000..0b6a7c43c
--- /dev/null
+++ b/markdown.msg
@@ -0,0 +1,7 @@
+/* markdown.'.css' generated 2014-10-08 05:27:25 PM via:
+ *
+ * sass -C --sourcemap markdown.scss:.markdown.css
+ * sass output:
+DEPRECATION WARNING: Passing --sourcemap without a value is deprecated.
+Sourcemaps are now generated by default, so this flag has no effect.
+ */
diff --git a/menus.js b/menus.js
new file mode 100644
index 000000000..23ce23040
--- /dev/null
+++ b/menus.js
@@ -0,0 +1 @@
+var menus = [{"menu":"documentation","items":[{"wiki":"00-About","name":"About","file":"About","subpages":[{"wiki":"10-Faq","name":"Faq","file":"Faq"}]},{"wiki":"01-Getting_Started","name":"Getting Started","file":"Getting_Started","subpages":[{"wiki":"10-Windows_host_setup","name":"Windows host setup","file":"Windows_host_setup"},{"wiki":"11-Linux_host_setup","name":"Linux host setup","file":"Linux_host_setup"},{"wiki":"12-Android_target_setup","name":"Android target setup","file":"Android_target_setup"},{"wiki":"15-Tizen_target_setup","name":"Tizen target setup","file":"Tizen_target_setup"},{"wiki":"20-Build_an_application","name":"Build an application","file":"Build_an_application"},{"wiki":"30-Run_on_Android","name":"Run on Android","file":"Run_on_Android"},{"wiki":"40-Run_on_Tizen","name":"Run on Tizen","file":"Run_on_Tizen"},{"wiki":"45-Remote_debugging","name":"Remote debugging","file":"Remote_debugging"},{"wiki":"50-Deploy_to_Android_store","name":"Deploy to Android store","file":"Deploy_to_Android_store"}]},{"wiki":"05-Manifest","name":"Manifest","file":"Manifest","subpages":[{"wiki":"00-Using_the_manifest","name":"Using the manifest","file":"Using_the_manifest"},{"wiki":"01-Entry_points","name":"Entry points","file":"Entry_points"},{"wiki":"02-Content_security_policy","name":"Content security policy","file":"Content_security_policy"},{"wiki":"03-Display","name":"Display","file":"Display"},{"wiki":"05-Icons","name":"Icons","file":"Icons"},{"wiki":"10-Launch_screen","name":"Launch screen","file":"Launch_screen"},{"wiki":"15-Orientation","name":"Orientation","file":"Orientation"},{"wiki":"20-Permissions","name":"Permissions","file":"Permissions"},{"wiki":"30-xwalk_hosts","name":"xwalk hosts","file":"xwalk_hosts"}]},{"wiki":"07-Android_extensions","name":"Android extensions","file":"Android_extensions","subpages":[{"wiki":"01-Host_and_target_setup","name":"Host and target setup","file":"Host_and_target_setup"},{"wiki":"11-Write_an_extension","name":"Write an extension","file":"Write_an_extension"},{"wiki":"21-Write_a_web_application","name":"Write a web application","file":"Write_a_web_application"},{"wiki":"31-Run_on_Android","name":"Run on Android","file":"Run_on_Android"}]},{"wiki":"10-Tizen_IVI_extensions","name":"Tizen IVI extensions","file":"Tizen_IVI_extensions","subpages":[{"wiki":"10-Host_and_target_setup","name":"Host and target setup","file":"Host_and_target_setup"},{"wiki":"15-Write_an_extension_in_C","name":"Write an extension in C","file":"Write_an_extension_in_C"},{"wiki":"17-Write_an_extension_in_C++","name":"Write an extension in C++","file":"Write_an_extension_in_C%252B%252B"},{"wiki":"18-JSON_based_C++_extension","name":"JSON based C++ extension","file":"JSON_based_C%252B%252B_extension"},{"wiki":"20-Write_a_web_application","name":"Write a web application","file":"Write_a_web_application"},{"wiki":"30-Run_on_Tizen_VM","name":"Run on Tizen VM","file":"Run_on_Tizen_VM"}]},{"wiki":"15-Cordova","name":"Cordova","file":"Cordova","subpages":[{"wiki":"10-Develop_an_application","name":"Develop an application","file":"Develop_an_application"},{"wiki":"20-Add_plugins","name":"Add plugins","file":"Add_plugins"},{"wiki":"30-Migrate_an_application","name":"Migrate an application","file":"Migrate_an_application"}]},{"wiki":"16-Embedding_Crosswalk","name":"Embedding Crosswalk","file":"Embedding_Crosswalk","subpages":[{"wiki":"01-Extensions","name":"Extensions","file":"Extensions"}]},{"wiki":"17-WebRTC","name":"WebRTC","file":"WebRTC"},{"wiki":"18-Screens","name":"Screens","file":"Screens","subpages":[{"wiki":"Screen_measurements","name":"Screen measurements","file":"Screen_measurements"}]},{"wiki":"20-Downloads","name":"Downloads","file":"Downloads"},{"wiki":"70-Samples","name":"Samples","file":"Samples","subpages":[{"wiki":"Hello-world","name":"Hello world","file":"Hello-world"},{"wiki":"SIMD","name":"SIMD","file":"SIMD"},{"wiki":"Tizen","name":"Tizen","file":"Tizen"},{"wiki":"WebGL","name":"WebGL","file":"WebGL"}]},{"wiki":"80-APIs","name":"APIs","file":"APIs","subpages":[{"wiki":"10-Web_APIs","name":"Web APIs","file":"Web_APIs"},{"wiki":"20-Embedding_API","name":"Embedding API","file":"Embedding_API"}]},{"wiki":"90-Community","name":"Community","file":"Community"},{"wiki":"95-Report_bugs","name":"Report bugs","file":"Report_bugs"}]},{"menu":"contribute","items":[{"wiki":"00-Overview","name":"Overview","file":"Overview"},{"wiki":"01-Channels_Viewer","name":"Channels Viewer","file":"Channels_Viewer"},{"wiki":"05-Building_Crosswalk","name":"Building Crosswalk","file":"Building_Crosswalk"},{"wiki":"10-Contributing-Code","name":"Contributing Code","file":"Contributing-Code"},{"wiki":"11-Coding_style","name":"Coding style","file":"Coding_style"},{"wiki":"15-Downstream-Chromium","name":"Downstream Chromium","file":"Downstream-Chromium"},{"wiki":"20-Reviewer_Policy","name":"Reviewer Policy","file":"Reviewer_Policy"},{"wiki":"99-Report_bugs","name":"Report bugs","file":"Report_bugs"}]},{"menu":"wiki","items":[{"name":"Home","file":"Home"},{"name":"Pages","file":"Pages"},{"name":"History","file":"History"}]}];
\ No newline at end of file
diff --git a/package.json b/package.json
new file mode 100644
index 000000000..aa4706593
--- /dev/null
+++ b/package.json
@@ -0,0 +1,15 @@
+{
+ "name": "crosswalk-website",
+ "homepage": "https://crosswalk-project.org",
+ "private": true,
+ "version": "2.0.0",
+ "scripts": {
+ "styleguide": "kss-node ./public ./public/styleguide --template ./_styleguide-template --sass ./public/css/styleguide.scss",
+ "compile": "npm run styleguide && harp compile",
+ "dropbox": "harp compile && cp -R www/* ~/Dropbox/harp.io/apps/intel-crosswalk.harp.io/public",
+ "deploy": "npm run styleguide && npm run dropbox"
+ },
+ "devDependencies": {
+ "kss": "~0.4.0"
+ }
+}
diff --git a/public/.htaccess b/public/.htaccess
new file mode 100755
index 000000000..205d3ebdc
--- /dev/null
+++ b/public/.htaccess
@@ -0,0 +1,158 @@
+# Protect files and directories from prying eyes.
+
+ Order allow,deny
+
+
+# Don't show directory listings for URLs which map to a directory.
+Options -Indexes
+
+# Follow symbolic links in this directory.
+Options +FollowSymLinks
+
+DirectoryIndex index.html
+
+# Override PHP settings that cannot be changed at runtime. See
+# sites/default/default.settings.php and drupal_environment_initialize() in
+# includes/bootstrap.inc for settings that can be changed at runtime.
+
+# PHP 5, Apache 1 and 2.
+
+ php_flag magic_quotes_gpc off
+ php_flag magic_quotes_sybase off
+ php_flag register_globals off
+ php_flag session.auto_start off
+ php_value mbstring.http_input pass
+ php_value mbstring.http_output pass
+ php_flag mbstring.encoding_translation off
+
+
+# Requires mod_expires to be enabled.
+
+ # Enable expirations.
+ ExpiresActive On
+
+ # Cache all files for 2 weeks after access (A).
+# ExpiresDefault A1209600
+ # Cache all files for 0.5 days after access (A).
+ ExpiresDefault A43200
+
+
+ # Do not allow PHP scripts to be cached unless they explicitly send cache
+ # headers themselves. Otherwise all scripts would have to overwrite the
+ # headers set by mod_expires if they want another caching behavior. This may
+ # fail if an error occurs early in the bootstrap process, and it may cause
+ # problems if a non-Drupal PHP file is installed in a subdirectory.
+ ExpiresActive Off
+
+
+
+# Various rewrite rules.
+
+ RewriteEngine on
+
+ # If a requested file has a php version, serve the php version
+ # instead which will update and serve a cached version as necessary.
+ RewriteCond %{REQUEST_FILENAME}.php -f
+ RewriteRule ^[^/]*(.*)$ %{REQUEST_URI}$1.php [L]
+
+ # Set "protossl" to "s" if we were accessed via https://. This is used later
+ # if you enable "www." stripping or enforcement, in order to ensure that
+ # you don't bounce between http and https.
+ RewriteRule ^ - [E=protossl]
+ RewriteCond %{HTTPS} on
+ RewriteRule ^ - [E=protossl:s]
+
+ # Block access to "hidden" directories whose names begin with a period. This
+ # includes directories used by version control systems such as Subversion or
+ # Git to store control files. Files whose names begin with a period, as well
+ # as the control files used by CVS, are protected by the FilesMatch directive
+ # above.
+ #
+ # NOTE: This only works when mod_rewrite is loaded. Without mod_rewrite, it is
+ # not possible to block access to entire directories from .htaccess, because
+ # is not allowed here.
+ #
+ # If you do not have mod_rewrite installed, you should remove these
+ # directories from your webroot or otherwise protect them from being
+ # downloaded.
+ RewriteRule "(^|/)\." - [F]
+
+ # If your site can be accessed both with and without the 'www.' prefix, you
+ # can use one of the following settings to redirect users to your preferred
+ # URL, either WITH or WITHOUT the 'www.' prefix. Choose ONLY one option:
+ #
+ # To redirect all users to access the site WITH the 'www.' prefix,
+ # (http://example.com/... will be redirected to http://www.example.com/...)
+ # uncomment the following:
+ # RewriteCond %{HTTP_HOST} .
+ # RewriteCond %{HTTP_HOST} !^www\. [NC]
+ # RewriteRule ^ http%{ENV:protossl}://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
+ #
+ # To redirect all users to access the site WITHOUT the 'www.' prefix,
+ # (http://www.example.com/... will be redirected to http://example.com/...)
+ # uncomment the following:
+ # RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
+ # RewriteRule ^ http%{ENV:protossl}://%1%{REQUEST_URI} [L,R=301]
+
+ # Modify the RewriteBase if you are using Drupal in a subdirectory or in a
+ # VirtualDocumentRoot and the rewrite rules are not working properly.
+ # For example if your site is at http://example.com/drupal uncomment and
+ # modify the following line:
+ # RewriteBase /drupal
+ #
+ # If your site is running in a VirtualDocumentRoot at http://example.com/,
+ # uncomment the following line:
+ # RewriteBase /
+
+ # Pass all requests not referring directly to files in the filesystem to
+ # index.php. Clean URLs are handled in drupal_environment_initialize().
+# RewriteCond %{REQUEST_FILENAME} !-f
+# RewriteCond %{REQUEST_FILENAME} !-d
+# RewriteCond %{REQUEST_URI} !=/favicon.ico
+# RewriteRule ^ index.php [L]
+
+# Automatically map foo => foo.*.html
+MultiViewsMatch Any
+
+# The rewrites below take into account possible
+# mod_userdir expantion by rewriting the URL to be
+# based on the absolute path %{REQUEST_URI}
+#
+# The ../ request is because REQUEST_URI will
+# include the full filepath, including filename; the
+# .. strips that
+#
+
+RewriteCond %{REQUEST_FILENAME} !-f
+RewriteCond %{REQUEST_FILENAME} !-d
+RewriteCond %{ENV:REDIRECT_STATUS} !200
+RewriteRule ^(.*)$ %{REQUEST_URI}/../gfm.php?f=$1 [L,NS]
+
+RewriteCond %{REQUEST_FILENAME} !-f
+RewriteRule ^(.*)gfm.php gfm.php [L,QSA]
+
+ # Rules to correctly serve gzip compressed CSS and JS files.
+ # Requires both mod_rewrite and mod_headers to be enabled.
+
+ # Serve gzip compressed CSS files if they exist and the client accepts gzip.
+ RewriteCond %{HTTP:Accept-encoding} gzip
+ RewriteCond %{REQUEST_FILENAME}\.gz -s
+ RewriteRule ^(.*)\.css $1\.css\.gz [QSA]
+
+ # Serve gzip compressed JS files if they exist and the client accepts gzip.
+ RewriteCond %{HTTP:Accept-encoding} gzip
+ RewriteCond %{REQUEST_FILENAME}\.gz -s
+ RewriteRule ^(.*)\.js $1\.js\.gz [QSA]
+
+ # Serve correct content types, and prevent mod_deflate double gzip.
+ RewriteRule \.css\.gz$ - [T=text/css,E=no-gzip:1]
+ RewriteRule \.js\.gz$ - [T=text/javascript,E=no-gzip:1]
+
+
+ # Serve correct encoding type.
+ Header set Content-Encoding gzip
+ # Force proxies to cache gzipped & non-gzipped css/js files separately.
+ Header append Vary Accept-Encoding
+
+
+
diff --git a/public/404.md b/public/404.md
new file mode 100644
index 000000000..f0535442b
--- /dev/null
+++ b/public/404.md
@@ -0,0 +1,3 @@
+# 404 – Page Not Found
+
+Unfortunately the page requested is not here.
diff --git a/public/_data.json b/public/_data.json
new file mode 100644
index 000000000..a9fccf601
--- /dev/null
+++ b/public/_data.json
@@ -0,0 +1,5 @@
+{
+ "sitemap": {
+ "layout": false
+ }
+}
diff --git a/public/_includes/blog-promo-1.ejs b/public/_includes/blog-promo-1.ejs
new file mode 100644
index 000000000..9a15bac07
--- /dev/null
+++ b/public/_includes/blog-promo-1.ejs
@@ -0,0 +1,4 @@
+
+ Get more hybrid app secrets
+ Build powerful hybrid apps for Android or Cordova / PhoneGap more reliably with tips from the Intel Crosswalk team .
+
diff --git a/public/_includes/documentation-nav.ejs b/public/_includes/documentation-nav.ejs
new file mode 100644
index 000000000..2e8436b96
--- /dev/null
+++ b/public/_includes/documentation-nav.ejs
@@ -0,0 +1,27 @@
+
+ Table of Contents
+ Table of Contents
+
+ <% /* For each article in documentation/_data.json */ %>
+ <% for(var slug in public.documentation._data) { %>
+ <% var article = public.documentation._data[slug] %>
+ <% /* If it’s a documentation index page, then add the .nav-item--active class */ %>
+
+ <%= article.title %>
+ <% /* If there are sub articles of documentation… */ %>
+ <% if(current.path[current.path.length - 2] === slug.toLowerCase() && typeof public.documentation[slug] !== 'undefined' && typeof public.documentation[slug]._data !== 'undefined') { %>
+
+ <% /* For each sub article */ %>
+ <% for(var subSlug in public.documentation[slug]._data) { %>
+ <% var subArticle = public.documentation[slug]._data[subSlug] %>
+ <% /* If it’s the current page, then add the .nav-item--active class */ %>
+
+ <%= subArticle.title %>
+
+ <% } %>
+
+ <% } %>
+
+ <% } %>
+
+
diff --git a/public/_includes/documentation-next.ejs b/public/_includes/documentation-next.ejs
new file mode 100644
index 000000000..c253b3939
--- /dev/null
+++ b/public/_includes/documentation-next.ejs
@@ -0,0 +1,16 @@
+<% var subpages = public.documentation[current.path[1]] %>
+<% if(typeof subpages === 'object') { %>
+ <% var next = false %>
+ <% for(var slug in subpages._data) { %>
+ <% var item = subpages._data[slug] %>
+ <% if(slug === current.source) { %>
+ <% var next = true %>
+ <% } else if(next === true) { %>
+ <% next = false %>
+
+ What’s next?
+ <%= item.title %>
+
+ <% } %>
+ <% } %>
+<% } %>
diff --git a/public/_includes/landing-promo-1.ejs b/public/_includes/landing-promo-1.ejs
new file mode 100644
index 000000000..74fbcce85
--- /dev/null
+++ b/public/_includes/landing-promo-1.ejs
@@ -0,0 +1,72 @@
+
+
+
+
+ Which WebView
are you choosing?
+
+
+
+
+
Use Crosswalk and build great interfaces
+
+
Use new features confidently. Crosswalk provides consistent support for often unpredictable properties and APIs, in both CSS and JavaScript.
+
+
+
Use Device APIs, with or without Cordova
+
+
Whether you are using Cordova or not, Crosswalk supports the Geolocation API, File API, Vibration API and many more.
+
+
+
Use Flexbox today, even on old versions of Android
+
+
Reliably build responsive user interfaces with Flexbox. Your app will render correctly on any Android 4.0+ device when you use Crosswalk.
+
+
+
+
+ HTML5 feature
+ Without Crosswalk
+ With Crosswalk
+
+
+
+
+ WebRTC
+ <%- partial("assets/icons/crosswalk-landing-question.xml.ejs") %>
+ <%- partial("assets/icons/crosswalk-landing-check.xml.ejs") %>
+
+
+ WebGL
+ <%- partial("assets/icons/crosswalk-landing-question.xml.ejs") %>
+ <%- partial("assets/icons/crosswalk-landing-check.xml.ejs") %>
+
+
+ Vibration API
+ <%- partial("assets/icons/crosswalk-landing-question.xml.ejs") %>
+ <%- partial("assets/icons/crosswalk-landing-check.xml.ejs") %>
+
+
+ Presentation API
+ <%- partial("assets/icons/crosswalk-landing-question.xml.ejs") %>
+ <%- partial("assets/icons/crosswalk-landing-check.xml.ejs") %>
+
+
+ WebView
updates
+ <%- partial("assets/icons/crosswalk-landing-question.xml.ejs") %>
+ <%- partial("assets/icons/crosswalk-landing-check.xml.ejs") %>
+
+
+
+
Get started
+
+
+
+
diff --git a/public/_includes/landing-promo-2.ejs b/public/_includes/landing-promo-2.ejs
new file mode 100644
index 000000000..725cfb1ed
--- /dev/null
+++ b/public/_includes/landing-promo-2.ejs
@@ -0,0 +1,62 @@
+
+
+
+
+
+ Move your WebView
to the next level
+
+
+
+
True support for the Audio API
+
+
Crosswalk supports exactly what you’d expect from a WebView based on Google Chromium and Blink. Make your in-app browsing experience as good as it can be.
+
+
+
+
Build boundary-pushing HTML5 games
+
+
Crosswalk pushes you closer to native performance while still providing a familiar API making it development fast and familiar.
+
+
Which WebView
will power-up your game?
+
+
+
+ HTML5 feature
+ Without Crosswalk
+ With Crosswalk
+
+
+
+
+ WebRTC
+ <%- partial("assets/icons/crosswalk-landing-question.xml.ejs") %>
+ <%- partial("assets/icons/crosswalk-landing-check.xml.ejs") %>
+
+
+ WebGL
+ <%- partial("assets/icons/crosswalk-landing-question.xml.ejs") %>
+ <%- partial("assets/icons/crosswalk-landing-check.xml.ejs") %>
+
+
+ Vibration API
+ <%- partial("assets/icons/crosswalk-landing-question.xml.ejs") %>
+ <%- partial("assets/icons/crosswalk-landing-check.xml.ejs") %>
+
+
+ Presentation API
+ <%- partial("assets/icons/crosswalk-landing-question.xml.ejs") %>
+ <%- partial("assets/icons/crosswalk-landing-check.xml.ejs") %>
+
+
+ WebView
updates
+ <%- partial("assets/icons/crosswalk-landing-question.xml.ejs") %>
+ <%- partial("assets/icons/crosswalk-landing-check.xml.ejs") %>
+
+
+
+
Get started
+
+
+
diff --git a/public/_includes/landing-promo-3.ejs b/public/_includes/landing-promo-3.ejs
new file mode 100644
index 000000000..60fddf907
--- /dev/null
+++ b/public/_includes/landing-promo-3.ejs
@@ -0,0 +1,66 @@
+
+
+
+
+ Give your users the latest version of the web
+
+
+
+
Provide a Google Chrome-like in-app browser
+
+
In-app browsers are used more than the default Android browser. Give your users the latest version of the web by using Crosswalk as your app’s embedded browser.
+
+
+
Icon fonts, SVG , Flexbox, and more
+
+
Crosswalk supports exactly what you’d expect from a WebView based on Google Chromium and Blink. Easily make your users’ browser and experience great.
+
+
+
New monitoring API s
+
+
As more browsers support performance monitoring API s, the more accurate your performance measurements become. Crosswalk helps increase your sample size.
+
+
Which WebView
are you using?
+
+
+
+ HTML5 feature
+ Without Crosswalk
+ With Crosswalk
+
+
+
+
+ Predictable layout
+ <%- partial("assets/icons/crosswalk-landing-question.xml.ejs") %>
+ <%- partial("assets/icons/crosswalk-landing-check.xml.ejs") %>
+
+
+ CSS feature queries
+ <%- partial("assets/icons/crosswalk-landing-question.xml.ejs") %>
+ <%- partial("assets/icons/crosswalk-landing-check.xml.ejs") %>
+
+
+ Current Flexbox
+ <%- partial("assets/icons/crosswalk-landing-question.xml.ejs") %>
+ <%- partial("assets/icons/crosswalk-landing-check.xml.ejs") %>
+
+
+ WOFF web fonts
+ <%- partial("assets/icons/crosswalk-landing-question.xml.ejs") %>
+ <%- partial("assets/icons/crosswalk-landing-check.xml.ejs") %>
+
+
+ Controlled WebView
updates
+ <%- partial("assets/icons/crosswalk-landing-question.xml.ejs") %>
+ <%- partial("assets/icons/crosswalk-landing-check.xml.ejs") %>
+
+
+
+
Get started
+
+
+
+
diff --git a/public/_includes/nav.ejs b/public/_includes/nav.ejs
new file mode 100644
index 000000000..668ff0042
--- /dev/null
+++ b/public/_includes/nav.ejs
@@ -0,0 +1,26 @@
+
+
+ <% if(current.path.length === 1 && current.source === 'index') { %>
+
+ <% } else { %>
+
+ <% } %>
+
+
+
diff --git a/public/_includes/redirect-hash.ejs b/public/_includes/redirect-hash.ejs
new file mode 100644
index 000000000..ad06131cf
--- /dev/null
+++ b/public/_includes/redirect-hash.ejs
@@ -0,0 +1,11 @@
+<%
+// Redirect old hash URLs
+// Ex. crosswalk-project.org/#documentation/getting_started/linux_host_setup
+// Should really check all Ids, but then would have to load after DOM
+%>
+
diff --git a/public/_includes/redirect-static.ejs b/public/_includes/redirect-static.ejs
new file mode 100644
index 000000000..73c111598
--- /dev/null
+++ b/public/_includes/redirect-static.ejs
@@ -0,0 +1,14 @@
+
+
+
+
+
+
+
+
+
+ If you are not redirected automatically, click here .
+
+
diff --git a/public/_includes/sitemap.jade b/public/_includes/sitemap.jade
new file mode 100644
index 000000000..35ff10633
--- /dev/null
+++ b/public/_includes/sitemap.jade
@@ -0,0 +1,23 @@
+- var filter = /(\.html$)/;
+- var replace = /(\.html$)|(^index\.html$)/;
+
+mixin tree(head, tail)
+ for val, key in head
+ if key !== '.git' && key !== '_data'
+ if key == '_contents'
+ each file in val
+ if filter.test(file) && !/^404\.html/.test(file) && !/^200_wip\.html/.test(file) && !/^google199b767a306f5a69.html/.test(file)
+ - file = file.replace(replace, "");
+ - depth = tail.split("/").length
+ if (file == "" && depth == 2)
+ url
+ loc http://harpjs.com#{ tail + file }
+ changefreq weekly
+ priority 100
+ else
+ url
+ loc http://harpjs.com#{ tail + file }
+ changefreq weekly
+ priority= (100 - ((depth - 1) * 7))
+ else
+ mixin tree(val, tail + key + "/")
diff --git a/public/_layout.ejs b/public/_layout.ejs
new file mode 100644
index 000000000..e4ea8190b
--- /dev/null
+++ b/public/_layout.ejs
@@ -0,0 +1,181 @@
+
+
+
+
+ Intel Crosswalk
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <% if(current.source !== 'index' || current.path.length > 2) { %>
+
+
+ <% include _includes/nav.ejs %>
+
+
+ <% if(current.path.length === 1) { %>
+ <%- yield %>
+ <% } else { %>
+ <%- partial(current.path.reverse()[current.path.length - 1] + "/_nest") %>
+ <% } %>
+
+
+ <% } else { %>
+ <%- yield %>
+ <% } %>
+
+ <% if(service.analytics) { %>
+
+ <% } %>
+ <% if(service.tagManager) { %>
+
+
+
+
+ <% } %>
+
+
+
+
+
diff --git a/public/apis/embeddingapidocs/assets/customizations.css b/public/apis/embeddingapidocs/assets/customizations.css
new file mode 100644
index 000000000..efe077056
--- /dev/null
+++ b/public/apis/embeddingapidocs/assets/customizations.css
@@ -0,0 +1,7 @@
+#header {
+ border-bottom: 3px solid #0767a4;
+}
+
+#search_filtered .jd-selected {
+ background-color: #0767a4;
+}
\ No newline at end of file
diff --git a/public/apis/embeddingapidocs/assets/customizations.js b/public/apis/embeddingapidocs/assets/customizations.js
new file mode 100644
index 000000000..e69de29bb
diff --git a/public/apis/embeddingapidocs/assets/doclava-developer-core.css b/public/apis/embeddingapidocs/assets/doclava-developer-core.css
new file mode 100644
index 000000000..e68dde48f
--- /dev/null
+++ b/public/apis/embeddingapidocs/assets/doclava-developer-core.css
@@ -0,0 +1,693 @@
+/* file: doclava-developer-core.css
+ info: core developer styles
+*/
+
+/* RESET STYLES */
+
+html,body,div,h1,h2,h3,h4,h5,h6,p,img,
+dl,dt,dd,ol,ul,li,table,caption,tbody,
+tfoot,thead,tr,th,td,form,fieldset,
+embed,object,applet {
+ margin: 0;
+ padding: 0;
+ border: 0;
+}
+
+/* BASICS */
+
+html, body {
+ overflow:hidden; /* keeps scrollbar off IE */
+ background-color:#fff;
+}
+
+body {
+ font-family:arial,sans-serif;
+ color:#000;
+ font-size:13px;
+ color:#333;
+ background-image:url(images/bg_fade.jpg);
+ background-repeat:repeat-x;
+}
+
+a, a code {
+ color:#006699;
+}
+
+a:active,
+a:active code {
+ color:#f00;
+}
+
+a:visited,
+a:visited code {
+ color:#006699;
+}
+
+input, select,
+textarea, option, label {
+ font-family:inherit;
+ font-size:inherit;
+ padding:0;
+ margin:0;
+ vertical-align:middle;
+}
+
+option {
+ padding:0 4px;
+}
+
+p {
+ padding:0;
+ margin:0 0 1em;
+}
+
+code, pre {
+ color:#007000;
+ font-family:monospace;
+ line-height:1em;
+}
+
+var {
+ color:#007000;
+ font-style:italic;
+}
+
+pre {
+ border:1px solid #ccc;
+ background-color:#fafafa;
+ padding:10px;
+ margin:0 0 1em 1em;
+ overflow:auto;
+ line-height:inherit; /* fixes vertical scrolling in webkit */
+}
+
+h1,h2,h3,h4,h5 {
+ margin:1em 0;
+ padding:0;
+}
+
+p,ul,ol,dl,dd,dt,li {
+ line-height:1.3em;
+}
+
+ul,ol {
+ margin:0 0 .8em;
+ padding:0 0 0 2em;
+}
+
+li {
+ padding:0 0 .5em;
+}
+
+dl {
+ margin:0 0 1em 0;
+ padding:0;
+}
+
+dt {
+ margin:0;
+ padding:0;
+}
+
+dd {
+ margin:0 0 1em;
+ padding:0 0 0 2em;
+}
+
+li p {
+ margin:.5em 0 0;
+}
+
+dd p {
+ margin:1em 0 0;
+}
+
+li pre, li table, li img {
+ margin:.5em 0 0 1em;
+}
+
+dd pre,
+#jd-content dd table,
+#jd-content dd img {
+ margin:1em 0 0 1em;
+}
+
+li ul,
+li ol,
+dd ul,
+dd ol {
+ margin:0;
+ padding: 0 0 0 2em;
+}
+
+li li,
+dd li {
+ margin:0;
+ padding:.5em 0 0;
+}
+
+dl dl,
+ol dl,
+ul dl {
+ margin:0 0 1em;
+ padding:0;
+}
+
+table {
+ font-size:1em;
+ margin:0 0 1em;
+ padding:0;
+ border-collapse:collapse;
+ border-width:0;
+ empty-cells:show;
+}
+
+td,th {
+ border:1px solid #ccc;
+ padding:6px 12px;
+ text-align:left;
+ vertical-align:top;
+ background-color:inherit;
+}
+
+th {
+ background-color:#dee8f1;
+}
+
+td > p:last-child {
+ margin:0;
+}
+
+hr.blue {
+ background-color:#DDF0F2;
+ border:none;
+ height:5px;
+ margin:20px 0 10px;
+}
+
+blockquote {
+ margin: 0 0 1em 1em;
+ padding: 0 4em 0 1em;
+ border-left:2px solid #eee;
+}
+/* LAYOUT */
+
+#body-content {
+ /* "Preliminary" watermark for draft documentation.
+ background:transparent url(images/preliminary.png) repeat scroll 0 0; */
+ margin:0;
+ position:relative;
+ width:100%;
+}
+
+#header {
+ height: 44px;
+ position:relative;
+ z-index:100;
+ min-width:675px; /* min width for the tabs, before they wrap */
+ padding:0 10px;
+ border-bottom:3px solid #94b922;
+}
+
+#headerLeft{
+ position:absolute;
+ padding: 10px 0 0;
+ left:8px;
+ bottom:3px;
+}
+
+#headerRight {
+ position:absolute;
+ right:0;
+ bottom:3px;
+ padding:0;
+ text-align:right;
+}
+
+#masthead-title {
+ font-size:28px;
+ color: #2f74ae;
+}
+
+/* Tabs in the header */
+
+#header ul {
+ list-style: none;
+ margin: 7px 0 0;
+ padding: 0;
+ height: 29px;
+}
+
+#header li {
+ float: left;
+ margin: 0px 2px 0px 0px;
+ padding:0;
+}
+
+#header li a {
+ text-decoration: none;
+ display: block;
+ background-image: url(images/bg_images_sprite.png);
+ background-position: 0 -58px;
+ background-repeat: no-repeat;
+ color: #666;
+ font-size: 13px;
+ font-weight: bold;
+ width: 94px;
+ height: 29px;
+ text-align: center;
+ margin: 0px;
+}
+
+#header li a:hover {
+ background-image: url(images/bg_images_sprite.png);
+ background-position: 0 -29px;
+ background-repeat: no-repeat;
+}
+
+#header li a span {
+ position:relative;
+ top:7px;
+}
+
+#header li a span+span {
+ display:none;
+}
+
+/* tab highlighting */
+
+.home #home-link a,
+.guide #guide-link a,
+.reference #reference-link a,
+.sdk #sdk-link a,
+.resources #resources-link a,
+.videos #videos-link a {
+ background-image: url(images/bg_images_sprite.png);
+ background-position: 0 0;
+ background-repeat: no-repeat;
+ color: #fff;
+ font-weight: bold;
+ cursor:default;
+}
+
+.home #home-link a:hover,
+.guide #guide-link a:hover,
+.reference #reference-link a:hover,
+.sdk #sdk-link a:hover,
+.resources #resources-link a:hover,
+.videos #videos-link a:hover {
+ background-image: url(images/bg_images_sprite.png);
+ background-position: 0 0;
+}
+
+#headerLinks {
+ margin:10px 10px 0 0;
+ height:13px;
+ font-size: 11px;
+ vertical-align: top;
+}
+
+#headerLinks a {
+ color: #7FA9B5;
+}
+
+#headerLinks img {
+ vertical-align:middle;
+}
+
+#language {
+ margin:0 10px 0 4px;
+}
+
+#search {
+ margin:8px 10px 0 0;
+}
+
+/* MAIN BODY */
+
+#mainBodyFluid {
+ margin: 20px 10px;
+ color:#333;
+}
+
+#mainBodyFixed {
+ margin: 20px 10px;
+ color: #333;
+ width:930px;
+ position:relative;
+}
+
+#mainBodyFixed h3,
+#mainBodyFluid h3 {
+ color:#336666;
+ font-size:1.25em;
+ margin: 0em 0em 0em 0em;
+ padding-bottom:.5em;
+}
+
+#mainBodyFixed h2,
+#mainBodyFluid h2 {
+ color:#336666;
+ font-size:1.25em;
+ margin: 0;
+ padding-bottom:.5em;
+}
+
+#mainBodyFixed h1,
+#mainBodyFluid h1 {
+ color:#435A6E;
+ font-size:1.7em;
+ margin: 1em 0;
+}
+
+#mainBodyFixed .green,
+#mainBodyFluid .green,
+#jd-content .green {
+ color:#7BB026;
+ background-color:none;
+}
+
+#mainBodyLeft {
+ float: left;
+ width: 600px;
+ margin-right: 20px;
+ color: #333;
+ position:relative;
+}
+
+div.indent {
+ margin-left: 40px;
+ margin-right: 70px;
+}
+
+#mainBodyLeft p {
+ color: #333;
+ font-size: 13px;
+}
+
+#mainBodyLeft p.blue {
+ color: #669999;
+}
+
+#mainBodyLeft #communityDiv {
+ float: left;
+ background-image:url(images/bg_community_leftDiv.jpg);
+ background-repeat: no-repeat;
+ width: 581px;
+ height: 347px;
+ padding: 20px 0px 0px 20px;
+}
+
+#mainBodyRight {
+ float: left;
+ width: 300px;
+ color: #333;
+}
+
+#mainBodyRight p {
+ padding-right: 50px;
+ color: #333;
+}
+
+#mainBodyRight table {
+ width: 100%;
+}
+
+#mainBodyRight td {
+ border:0px solid #666;
+ padding:0px 5px;
+ text-align:left;
+}
+
+#mainBodyRight td p {
+ margin:0 0 1em 0;
+}
+
+#mainBodyRight .blueBorderBox {
+ border:5px solid #ddf0f2;
+ padding:18px 18px 18px 18px;
+ text-align:left;
+}
+
+#mainBodyFixed .seperator {
+ background-image:url(images/hr_gray_side.jpg);
+ background-repeat:no-repeat;
+ width: 100%;
+ float: left;
+ clear: both;
+}
+
+#mainBodyBottom {
+ float: left;
+ width: 100%;
+ clear:both;
+ color: #333;
+}
+
+#mainBodyBottom .seperator {
+ background-image:url(images/hr_gray_main.jpg);
+ background-repeat:no-repeat;
+ width: 100%;
+ float: left;
+ clear: both;
+}
+
+/* FOOTER */
+
+#footer {
+ float: left;
+ width:90%;
+ margin: 20px;
+ color: #aaa;
+ font-size: 11px;
+}
+
+#footer a {
+ color: #aaa;
+ font-size: 11px;
+}
+
+#footer a:hover {
+ text-decoration: underline;
+ color:#aaa;
+}
+
+#footerlinks {
+ margin-top:2px;
+}
+
+#footerlinks a,
+#footerlinks a:visited {
+ color:#006699;
+}
+
+/* SEARCH FILTER */
+
+#search_autocomplete {
+ color:#aaa;
+}
+
+#search-button {
+ display:inline;
+}
+
+#search_filtered_div {
+ position:absolute;
+ margin-top:-1px;
+ z-index:101;
+ border:1px solid #BCCDF0;
+ background-color:#fff;
+}
+
+#search_filtered {
+ min-width:100%;
+}
+#search_filtered td{
+ background-color:#fff;
+ border-bottom: 1px solid #669999;
+ line-height:1.5em;
+}
+
+#search_filtered .jd-selected {
+ background-color: #94b922;
+ cursor:pointer;
+}
+#search_filtered .jd-selected,
+#search_filtered .jd-selected a {
+ color:#fff;
+}
+
+.no-display {
+ display: none;
+}
+
+.jd-autocomplete {
+ font-family: Arial, sans-serif;
+ padding-left: 6px;
+ padding-right: 6px;
+ padding-top: 1px;
+ padding-bottom: 1px;
+ font-size: 0.81em;
+ border: none;
+ margin: 0;
+ line-height: 1.05em;
+}
+
+.show-row {
+ display: table-row;
+}
+.hide-row {
+ display: hidden;
+}
+
+/* SEARCH */
+
+/* restrict global search form width */
+#searchForm {
+ width:350px;
+}
+
+#searchTxt {
+ width:200px;
+}
+
+/* disable twiddle and size selectors for left column */
+#leftSearchControl div {
+ width: 100%;
+}
+
+#leftSearchControl .gsc-twiddle {
+ background-image : none;
+}
+
+#leftSearchControl td, #searchForm td {
+ border: 0px solid #000;
+}
+
+#leftSearchControl .gsc-resultsHeader .gsc-title {
+ padding-left : 0px;
+ font-weight : bold;
+ font-size : 13px;
+ color:#006699;
+ display : none;
+}
+
+#leftSearchControl .gsc-resultsHeader div.gsc-results-selector {
+ display : none;
+}
+
+#leftSearchControl .gsc-resultsRoot {
+ padding-top : 6px;
+}
+
+#leftSearchControl div.gs-visibleUrl-long {
+ display : block;
+ color:#006699;
+}
+
+.gsc-webResult div.gs-visibleUrl-short,
+table.gsc-branding,
+.gsc-clear-button {
+ display : none;
+}
+
+.gsc-cursor-box .gsc-cursor div.gsc-cursor-page,
+.gsc-cursor-box .gsc-trailing-more-results a.gsc-trailing-more-results,
+#leftSearchControl a,
+#leftSearchControl a b {
+ color:#006699;
+}
+
+.gsc-resultsHeader {
+ display: none;
+}
+
+/* Disable built in search forms */
+.gsc-control form.gsc-search-box {
+ display : none;
+}
+table.gsc-search-box {
+ margin:6px 0 0 0;
+ border-collapse:collapse;
+}
+
+td.gsc-input {
+ padding:0 2px;
+ width:100%;
+ vertical-align:middle;
+}
+
+input.gsc-input {
+ border:1px solid #BCCDF0;
+ width:99%;
+ padding-left:2px;
+ font-size:.95em;
+}
+
+td.gsc-search-button {
+ text-align: right;
+ padding:0;
+ vertical-align:top;
+}
+
+#search-button {
+ margin:0 0 0 2px;
+ font-size:11px;
+}
+
+/* search result tabs */
+
+#doc-content .gsc-control {
+ position:relative;
+}
+
+#doc-content .gsc-tabsArea {
+ position:relative;
+ white-space:nowrap;
+}
+
+#doc-content .gsc-tabHeader {
+ padding: 3px 6px;
+ position:relative;
+}
+
+#doc-content .gsc-tabHeader.gsc-tabhActive {
+ border-top: 2px solid #94B922;
+}
+
+#doc-content h2#searchTitle {
+ padding:0;
+}
+
+#doc-content .gsc-resultsbox-visible {
+ padding:1em 0 0 6px;
+}
+
+/* Pretty printing styles. Used with prettify.js. */
+
+.str { color: #080; }
+.kwd { color: #008; }
+.com { color: #800; }
+.typ { color: #606; }
+.lit { color: #066; }
+.pun { color: #660; }
+.pln { color: #000; }
+dl.tag-list dt code,
+.tag { color: #008; }
+dl.atn-list dt code,
+.atn { color: #828; }
+.atv { color: #080; }
+.dec { color: #606; }
+
+@media print {
+ .str { color: #060; }
+ .kwd { color: #006; font-weight: bold; }
+ .com { color: #600; font-style: italic; }
+ .typ { color: #404; font-weight: bold; }
+ .lit { color: #044; }
+ .pun { color: #440; }
+ .pln { color: #000; }
+ .tag { color: #006; font-weight: bold; }
+ .atn { color: #404; }
+ .atv { color: #060; }
+}
\ No newline at end of file
diff --git a/public/apis/embeddingapidocs/assets/doclava-developer-docs.css b/public/apis/embeddingapidocs/assets/doclava-developer-docs.css
new file mode 100644
index 000000000..c451e92b9
--- /dev/null
+++ b/public/apis/embeddingapidocs/assets/doclava-developer-docs.css
@@ -0,0 +1,1154 @@
+/* file: doclava-developer-docs.css
+ info: developer doc styles
+*/
+
+@import url("doclava-developer-core.css");
+
+#title {
+ border-bottom: 4px solid #ccc;
+ display:none;
+}
+
+#title h1 {
+ color:#336666;
+ margin:0;
+ padding: 5px 10px;
+ font-size: 1em;
+ line-height: 15px;
+}
+
+#title h1 .small{
+ color:#000;
+ margin:0;
+ font-size: 13px;
+ padding:0 0 0 15px;
+}
+
+/* SIDE NAVIGATION */
+
+#side-nav {
+ padding:0 6px 0 0;
+ background-color: #fff;
+ font-size:12px;
+}
+
+#side-nav.not-resizable {
+ background:url('images/sidenav-rule.png') no-repeat 243px 0;
+}
+
+#resize-packages-nav {
+/* keeps the resize handle below the h-scroll handle */
+ height:270px;
+ overflow:hidden;
+ max-height:100%;
+}
+
+#packages-nav {
+ height:270px;
+ max-height:inherit;
+ position:relative;
+ overflow:auto;
+}
+
+#classes-nav,
+#devdoc-nav {
+ overflow:auto;
+ position:relative;
+}
+
+#side-nav ul {
+ list-style: none;
+ margin: 0;
+ padding:5px 0;
+}
+
+#side-nav ul ul {
+ margin: .35em 0 0 0;
+ padding: 0;
+}
+
+#side-nav li {
+ padding:0;
+ line-height:16px;
+ white-space:nowrap;
+ zoom:1;
+}
+
+#side-nav li h2 {
+ font-size:12px;
+ font-weight: bold;
+ margin:.5em 0 0 0;
+ padding: 3px 0 1px 9px;
+}
+
+#side-nav li a {
+ text-decoration:none;
+ padding: 0 0 0 18px;
+ zoom:1;
+}
+
+#side-nav li a span+span {
+ display:none;
+}
+
+#side-nav li a:hover {
+ text-decoration:underline;
+}
+
+#side-nav li a+a {
+ padding: 0;
+}
+/*second level (nested) list*/
+#side-nav li li li a {
+ padding: 0 0 0 28px;
+}
+/*third level (nested) list*/
+#side-nav li li li li a {
+ padding: 0 0 0 38px;
+}
+
+#side-nav .selected {
+ background-color: #435a6e;
+ color: #fff;
+ font-weight:bold;
+}
+
+#side-nav .selected a {
+ color: #fff;
+ text-decoration:none;
+}
+
+#side-nav strong {
+ display:block;
+}
+
+#side-nav .toggle-list .toggle-img {
+ margin:0;
+ padding:0;
+ position:absolute;
+ top:0;
+ left:0;
+ height:16px;
+ width:15px;
+ outline-style:none;
+}
+/* second-level toggle */
+#side-nav .toggle-list .toggle-list .toggle-img {
+ left:10px;
+}
+
+#side-nav .closed .toggle-img,
+#side-nav .open .closed .toggle-img {
+ background:url('images/triangle-closed-small.png') 7px 4px no-repeat;
+}
+#side-nav .open .toggle-img {
+ background:url('images/triangle-opened-small.png') 7px 4px no-repeat;
+}
+
+#side-nav .toggle-list {
+ position:relative;
+}
+
+#side-nav .toggle-list ul {
+ margin:0;
+ display:none;
+}
+
+#side-nav .toggle-list div {
+ display:block;
+}
+
+#index-links .selected {
+ background-color: #fff;
+ color: #000;
+ font-weight:normal;
+ text-decoration:none;
+}
+
+#index-links {
+ padding:7px 0 4px 10px;
+}
+
+/* nav tree */
+
+#nav-tree ul {
+ padding:5px 0 1.5em;
+}
+
+#side-nav #nav-tree ul li a,
+#side-nav #nav-tree ul li span.no-children {
+ padding: 0 0 0 0;
+ margin: 0;
+}
+
+#nav-tree .plus {
+ margin: 0 3px 0 0;
+}
+
+#nav-tree ul ul {
+ list-style: none;
+ margin: 0;
+ padding: 0 0 0 0;
+}
+
+#nav-tree ul li {
+ margin: 0;
+ padding: 0 0 0 0;
+ white-space: nowrap;
+}
+
+#nav-tree .children_ul {
+ margin:0;
+}
+
+#nav-tree a.nolink {
+ color: black;
+ text-decoration: none;
+}
+
+#nav-tree span.label {
+ width: 100%;
+}
+
+#nav-tree {
+ overflow-x: auto;
+ overflow-y: scroll;
+}
+
+#nav-swap {
+ font-size:10px;
+ line-height:10px;
+ margin-left:1em;
+ text-decoration:none;
+ display:block;
+ position:absolute;
+ bottom:2px;
+ left:0px;
+}
+
+#tree-link {
+
+}
+
+/* DOCUMENT BODY */
+
+#doc-content {
+ overflow:auto;
+}
+
+#jd-header {
+ background-color: #E2E2E2;
+ padding: 7px 15px;
+}
+
+#jd-header h1 {
+ margin: 0 0 10px;
+ font-size:1.7em;
+}
+
+#jd-header .crumb {
+ font-size:.9em;
+ line-height:1em;
+ color:#777;
+}
+
+#jd-header .crumb a,
+#jd-header .crumb a:visited {
+ text-decoration:none;
+ color:#777;
+}
+
+#jd-header .crumb a:hover {
+ text-decoration:underline;
+}
+
+#jd-header table {
+ margin:0;
+ padding:0;
+}
+
+#jd-header td {
+ border:none;
+ padding:0;
+ vertical-align:top;
+}
+
+#jd-header.guide-header {
+ background-color:#fff;
+ color:#435a6e;
+ height:50px;
+}
+
+#jd-descr {
+ position:relative;
+}
+
+/* summary tables for reference pages */
+.jd-sumtable {
+ margin: .5em 1em 1em 1em;
+ width:95%; /* consistent table widths; within IE's quirks */
+ font-size:.9em;
+}
+
+.jd-sumtable a {
+ text-decoration:none;
+}
+
+.jd-sumtable a:hover {
+ text-decoration:underline;
+}
+
+/* the link inside a sumtable for "Show All/Hide All" */
+.toggle-all {
+ display:block;
+ float:right;
+ font-weight:normal;
+ font-size:0.9em;
+}
+
+/* adjustments for in/direct subclasses tables */
+.jd-sumtable-subclasses {
+ margin: 1em 0 0 0;
+ max-width:968px;
+}
+
+/* extra space between end of method name and open-paren */
+.sympad {
+ margin-right: 2px;
+}
+
+/* right alignment for the return type in sumtable */
+.jd-sumtable .jd-typecol {
+ text-align:right;
+ white-space: nowrap;
+}
+
+/* adjustments for the expando table-in-table */
+.jd-sumtable-expando {
+ margin:.5em 0;
+ padding:0;
+}
+
+/* a div that holds a short description */
+.jd-descrdiv {
+ padding:3px 1em 0 1em;
+ margin:0;
+ border:0;
+}
+
+/* page-top-right container for reference pages (holds
+links to summary tables) */
+#api-info-block {
+ font-size:.8em;
+ padding:6px 10px;
+ font-weight:normal;
+ float:right;
+ text-align:right;
+ color:#999;
+ max-width:70%;
+}
+
+#api-level-toggle {
+ padding:0 0px;
+ font-size:11px;
+ margin:3px 10px 0 0;
+}
+
+#api-level-toggle label.disabled {
+ color:#999;
+}
+
+div.api-level {
+ font-size:.8em;
+ font-weight:normal;
+ color:#999;
+ float:right;
+ padding:0 7px 0;
+ margin-top:-25px;
+}
+
+#api-info-block div.api-level {
+ font-size:1.3em;
+ font-weight:bold;
+ float:none;
+ color:#444;
+ padding:0;
+ margin:0;
+}
+
+/* Force link colors for IE6 */
+div.api-level a {
+ color:#999;
+}
+#api-info-block div.api-level a:link {
+ color:#444;
+}
+#api-level-toggle a {
+ color:#999;
+}
+
+div#naMessage {
+ display:none;
+ width:555px;
+ height:0;
+ margin:0 auto;
+}
+
+div#naMessage div {
+ width:450px;
+ position:fixed;
+ margin:50px 0;
+ padding:4em 4em 3em;
+ background:#FFF;
+ background:rgba(255,255,255,0.7);
+ border:1px solid #dddd00;
+}
+/* IE6 can't position fixed */
+* html div#naMessage div { position:absolute; }
+
+div#naMessage strong {
+ font-size:1.1em;
+}
+
+.absent,
+.absent a:link,
+.absent a:visited,
+.absent a:hover,
+.absent * {
+ color:#bbb !important;
+ cursor:default !important;
+ text-decoration:none !important;
+}
+
+#api-level-toggle a,
+.api-level a {
+ color:inherit;
+ text-decoration:none;
+}
+
+#api-level-toggle a:hover,
+.api-level a:hover {
+ color:inherit;
+ text-decoration:underline !important;
+ cursor:pointer !important;
+}
+
+#side-nav li.absent.selected,
+#side-nav li.absent.selected *,
+#side-nav div.label.absent.selected,
+#side-nav div.label.absent.selected * {
+ background-color:#eaeaea !important;
+}
+/* IE6 quirk (won't chain classes, so just keep background blue) */
+* html #side-nav li.selected,
+* html #side-nav li.selected *,
+* html #side-nav div.label.selected,
+* html #side-nav div.label.selected * {
+ background-color: #435a6e !important;
+}
+
+
+.absent h4.jd-details-title,
+.absent h4.jd-details-title * {
+ background-color:#f6f6f6 !important;
+}
+
+.absent img {
+ opacity: .3;
+ filter: alpha(opacity=30);
+ -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";
+}
+
+
+/* applies to a div containing links to summary tables */
+.sum-details-links {
+ padding:0;
+ font-weight:normal;
+}
+
+.sum-details-links a {
+ text-decoration:none;
+}
+
+.sum-details-links a:hover {
+ text-decoration:underline;
+}
+
+
+/* inheritance table */
+.jd-inheritance-table {
+ border-spacing:0;
+ margin:0;
+ padding:0;
+ font-size:.9em;
+}
+.jd-inheritance-table td {
+ border: none;
+ margin: 0;
+ padding: 0;
+}
+.jd-inheritance-table .jd-inheritance-space {
+ font-weight:bold;
+ width:1em;
+}
+.jd-inheritance-table .jd-inheritance-interface-cell {
+ padding-left: 17px;
+}
+
+#jd-content {
+ padding: 18px 15px;
+}
+
+hr {
+ background-color:#ccc;
+ border-color:#fff;
+ margin:2em 0 1em;
+}
+
+/* DOC CLASSES */
+
+#jd-content h1 {
+/*sdk page*/
+ font-size:1.6em;
+ color:#336666;
+ margin:0 0 .5em;
+}
+
+#jd-content h2 {
+ font-size:1.45em;
+ color:#111;
+ border-top:2px solid #ccc;
+ padding: .5em 0 0;
+ margin: 2em 0 1em 0;
+}
+
+#jd-content h3 {
+ font-size:1.2em;
+ color:#222;
+ padding: .75em 0 .65em 0;
+ margin:0;
+}
+
+#jd-content h4 {
+ font-size:1.1em;
+ margin-bottom:.5em;
+ color:#222;
+}
+
+#jd-content .small-header {
+ font-size:1em;
+ color:#000;
+ font-weight:bold;
+ border:none;
+ padding:0;
+ margin:1em 0 .5em;
+ position:inherit;
+}
+
+#jd-content table {
+ margin: 0 0 1em 1em;
+}
+
+#jd-content img {
+ margin: 0 0 1em 1em;
+}
+
+#jd-content li img,
+#jd-content dd img {
+ margin:.5em 0 0 1em;
+}
+
+.nolist {
+ list-style:none;
+ padding:0;
+ margin:0 0 1em 1em;
+}
+
+.nolist li {
+ padding:0 0 2px;
+ margin:0;
+}
+
+h4 .normal {
+ font-size:.9em;
+ font-weight:normal;
+}
+
+.caps {
+ font-variant:small-caps;
+ font-size:1.2em;
+}
+
+dl.tag-list dl.atn-list {
+ padding:0 0 0 2em;
+}
+
+.jd-details {
+/* border:1px solid #669999;
+ padding:4px; */
+ margin:0 0 1em;
+}
+
+/* API reference: a container for the
+.tagdata blocks that make up the detailed
+description */
+.jd-details-descr {
+ padding:0;
+ margin:.5em .25em;
+}
+
+/* API reference: a block containing
+a detailed description, a params table,
+seealso list, etc */
+.jd-tagdata {
+ margin:.5em 1em;
+}
+
+.jd-tagdata p {
+ margin:0 0 1em 1em;
+}
+
+/* API reference: adjustments to
+the detailed description block */
+.jd-tagdescr {
+ margin:.25em 0 .75em 0;
+ line-height:1em;
+}
+
+.jd-tagdescr p {
+ margin:.5em 0;
+ padding:0;
+
+}
+
+.jd-tagdescr ol,
+.jd-tagdescr ul {
+ margin:0 2.5em;
+ padding:0;
+}
+
+.jd-tagdescr table,
+.jd-tagdescr img {
+ margin:.25em 1em;
+}
+
+.jd-tagdescr li {
+margin:0 0 .25em 0;
+padding:0;
+}
+
+/* API reference: heading marking
+the details section for constants,
+attrs, methods, etc. */
+h4.jd-details-title {
+ font-size:1.15em;
+ background-color: #E2E2E2;
+ margin:1.5em 0 .6em;
+ padding:3px 95px 3px 3px; /* room for api-level */
+}
+
+h4.jd-tagtitle {
+ margin:0;
+}
+
+/* API reference: heading for "Parameters", "See Also", etc.,
+in details sections */
+h5.jd-tagtitle {
+ margin:0 0 .25em 0;
+ font-size:1em;
+}
+
+.jd-tagtable {
+ margin:0;
+}
+
+.jd-tagtable td,
+.jd-tagtable th {
+ border:none;
+ background-color:#fff;
+ vertical-align:top;
+ font-weight:normal;
+ padding:2px 10px;
+}
+
+.jd-tagtable th {
+ font-style:italic;
+}
+
+#jd-content table h2 {
+ background-color: #d6d6d6;
+ font-size: 1.1em;
+ margin:0 0 10px;
+ padding:5px;
+ left:0;
+ width:auto;
+}
+
+div.special {
+ padding: .5em 1em 1em 1em;
+ margin: 0 0 1em;
+ background-color: #DAF3FC;
+ border:1px solid #d3ecf5;
+ border-radius:5px;
+ -moz-border-radius:5px;
+ -webkit-border-radius:5px;
+}
+
+.toggle-content-toggleme {
+ display:none;
+}
+
+.toggle-content-button {
+ font-size:.9em;
+ line-height:.9em;
+ text-decoration:none;
+ position:relative;
+ top:5px;
+}
+
+.toggle-content-button:hover {
+ text-decoration:underline;
+}
+
+div.special p {
+ margin: .5em 0 0 0;
+}
+
+div.special ol {
+ margin: 0;
+}
+
+div.special ol li {
+ margin: 0;
+ padding: 0;
+}
+
+#jd-content div.special h2,
+#jd-content div.special h3 {
+ color:#669999;
+ font-size:1.2em;
+ border:none;
+ margin:0 0 .5em;
+ padding:0;
+}
+
+p.note, p.caution, p.warning {
+ margin: 1em;
+ padding: 0 0 0 .5em;
+ border-left: 4px solid;
+}
+
+p.special-note {
+ background-color:#EBF3DB;
+ padding:10px 20px;
+ margin:0 0 1em;
+}
+
+p.note {
+ border-color: #99aacc;
+}
+
+p.warning {
+ border-color: #aa0033;
+}
+
+p.caution {
+ border-color: #ffcf00;
+}
+
+p.warning b, p.warning strong {
+ font-weight: bold;
+}
+
+li p.note, li p.warning {
+ margin: .5em 0 0 0;
+ padding: .2em .5em .2em .9em;
+}
+
+dl.xml dt {
+ font-variant:small-caps;
+ font-size:1.2em;
+}
+
+dl.xml dl {
+ padding:0;
+}
+
+dl.xml dl dt {
+ font-variant:normal;
+ font-size:1em;
+}
+
+.listhead li {
+ font-weight: bold;
+}
+
+.listhead li *, /*ie*/.listhead li li {
+ font-weight: normal;
+}
+
+ol.no-style,
+ul.no-style {
+ list-style:none;
+ padding-left:1em;
+}
+
+.new {
+ font-size: .78em;
+ font-weight: bold;
+ color: #ff3d3d;
+ text-decoration: none;
+ vertical-align:top;
+ line-height:.9em;
+}
+
+pre.classic {
+ background-color:transparent;
+ border:none;
+ padding:0;
+}
+
+p.img-caption {
+ margin: -0.5em 0 1em 1em; /* matches default img left-margin */
+}
+
+div.figure {
+ float:right;
+ clear:right;
+ margin:1em 0 0 3em;
+ padding:0;
+ background-color:#fff;
+ /* width must be defined w/ an inline style matching the image width */
+}
+
+#jd-content
+div.figure img {
+ margin: 0 0 1em;
+}
+
+div.figure p.img-caption {
+ margin: -0.5em 0 1em 0;
+}
+
+p.table-caption {
+ margin: 0 0 0.5em 1em; /* matches default table left-margin */
+}
+
+/* Begin sidebox sidebar element styles */
+
+.sidebox-wrapper {
+ float:right;
+ clear:right;
+ width:310px; /* +35px padding */
+ background-color:#fff;
+ margin:0;
+ padding:0 0 20px 35px;
+}
+
+.sidebox {
+ border-left:1px solid #dee8f1;
+ background-color:#ffffee;
+ margin:0;
+ padding:8px 12px;
+ font-size:0.9em;
+ width:285px; /* +24px padding; +1px border */
+}
+
+.sidebox p {
+ margin-bottom: .25em;
+}
+
+.sidebox ul {
+ padding: 0 0 0 1.5em;
+}
+
+.sidebox li ul {
+ margin-top:0;
+ margin-bottom:.1em;
+}
+
+.sidebox li {
+padding:0 0 0 0em;
+}
+
+#jd-content .sidebox h2,
+#jd-content .sidebox h3,
+#jd-content .sidebox h4,
+#jd-content .sidebox h5 {
+ border:none;
+ font-size:1em;
+ margin:0;
+ padding:0 0 8px;
+ left:0;
+ z-index:0;
+}
+
+.sidebox hr {
+ background-color:#ccc;
+ border:none;
+}
+
+/* End sidebox sidebar element styles */
+
+/* table of contents */
+
+ol.toc {
+ margin: 0 0 1em 0;
+ padding: 0;
+ list-style: none;
+ font-size:95%;
+}
+
+ol.toc li {
+ font-weight: bold;
+ margin: 0 0 .5em 1em;
+ padding: 0;
+}
+
+ol.toc li p {
+ font-weight: normal;
+}
+
+ol.toc li ol {
+ margin: 0;
+ padding: 0;
+}
+
+ol.toc li li {
+ padding: 0;
+ margin: 0 0 0 1em;
+ font-weight: normal;
+ list-style: none;
+}
+
+table ol.toc {
+ margin-left: 0;
+}
+
+.columns td {
+ padding:0 5px;
+ border:none;
+}
+
+/* link table */
+.jd-linktable {
+ margin: 0 0 1em;
+ border-bottom: 1px solid #888;
+}
+.jd-linktable th,
+.jd-linktable td {
+ padding: 3px 5px;
+ vertical-align: top;
+ text-align: left;
+ border:none;
+}
+.jd-linktable tr {
+ background-color: #fff;
+}
+.jd-linktable td {
+ border-top: 1px solid #888;
+ background-color: inherit;
+}
+.jd-linktable td p {
+ padding: 0 0 5px;
+}
+.jd-linktable .jd-linkcol {
+}
+.jd-linktable .jd-descrcol {
+}
+.jd-linktable .jd-typecol {
+ text-align:right;
+ white-space: nowrap;
+}
+.jd-linktable .jd-valcol {
+}
+.jd-linktable .jd-commentrow {
+ border-top:none;
+ padding-left:25px;
+}
+.jd-deprecated-warning {
+ margin-top: 0;
+ margin-bottom: 10px;
+}
+
+tr.alt-color {
+ background-color: #f6f6f6;
+}
+
+/* expando trigger */
+#jd-content .jd-expando-trigger-img {
+ margin:0;
+}
+
+/* jd-expando */
+.jd-inheritedlinks {
+ padding:0 0 0 13px
+}
+
+/* SDK PAGE */
+table.download tr {
+ background-color:#d9d9d9;
+}
+
+table.download tr.alt-color {
+ background-color:#ededed;
+}
+
+table.download td,
+table.download th {
+ border:2px solid #fff;
+ padding:10px 5px;
+}
+
+table.download th {
+ background-color:#6d8293;
+ color:#fff;
+}
+
+/* INLAY 180 COPY and 240PX EXTENSION */
+/* modified to 43px so that all browsers eliminate the package panel h-scroll */
+.g-tpl-240 .g-unit,
+.g-unit .g-tpl-240 .g-unit,
+.g-unit .g-unit .g-tpl-240 .g-unit {
+ display: block;
+ margin: 0 0 0 243px;
+ width: auto;
+ float: none;
+}
+.g-unit .g-unit .g-tpl-240 .g-first,
+.g-unit .g-tpl-240 .g-first,
+.g-tpl-240 .g-first {
+ display: block;
+ margin: 0;
+ width: 243px;
+ float: left;
+}
+/* 240px alt */
+.g-tpl-240-alt .g-unit,
+.g-unit .g-tpl-240-alt .g-unit,
+.g-unit .g-unit .g-tpl-240-alt .g-unit {
+ display: block;
+ margin: 0 243px 0 0;
+ width: auto;
+ float: none;
+}
+.g-unit .g-unit .g-tpl-240-alt .g-first,
+.g-unit .g-tpl-240-alt .g-first,
+.g-tpl-240-alt .g-first {
+ display: block;
+ margin: 0;
+ width: 243px;
+ float: right;
+}
+
+/* 180px */
+.g-tpl-180 .g-unit,
+.g-unit .g-tpl-180 .g-unit,
+.g-unit .g-unit .g-tpl-180 .g-unit {
+ display: block;
+ margin: 0 0 0 180px;
+ width: auto;
+ float: none;
+}
+.g-unit .g-unit .g-tpl-180 .g-first,
+.g-unit .g-tpl-180 .g-first,
+.g-tpl-180 .g-first {
+ display: block;
+ margin: 0;
+ width: 180px;
+ float: left;
+}
+/* 180px alt */
+.g-tpl-180-alt .g-unit,
+.g-unit .g-tpl-180-alt .g-unit,
+.g-unit .g-unit .g-tpl-180-alt .g-unit {
+ display: block;
+ margin: 0 180px 0 0;
+ width: auto;
+ float: none;
+}
+.g-unit .g-unit .g-tpl-180-alt .g-first,
+.g-unit .g-tpl-180-alt .g-first,
+.g-tpl-180-alt .g-first {
+ display: block;
+ margin: 0;
+ width: 180px;
+ float: right;
+}
+
+
+/* JQUERY RESIZABLE STYLES */
+.ui-resizable { position: relative; }
+.ui-resizable-handle { position: absolute; display: none; font-size: 0.1px; z-index:1; }
+.ui-resizable .ui-resizable-handle { display: block; }
+body .ui-resizable-disabled .ui-resizable-handle { display: none; }
+body .ui-resizable-autohide .ui-resizable-handle { display: none; }
+.ui-resizable-s { cursor: s-resize; height: 6px; width: 100%; bottom: 0px; left: 0px;
+ background: transparent url("images/resizable-s2.gif") repeat scroll center top; }
+.ui-resizable-e { cursor: e-resize; width: 6px; right: 0px; top: 0px; height: 100%;
+ background: transparent url("images/resizable-e2.gif") repeat scroll right center; }
+
+@media print {
+
+ body {
+ overflow:visible;
+ }
+
+ #header {
+ height:50px;
+ }
+
+ #header-tabs,
+ #headerRight,
+ #side-nav,
+ #api-info-block {
+ display:none;
+ }
+
+ #body-content {
+ position:inherit;
+ }
+
+ #doc-content {
+ margin-left:0 !important;
+ height:auto !important;
+ width:auto !important;
+ overflow:inherit;
+ display:inline;
+ }
+
+ #jd-header {
+ padding:10px 0;
+ }
+
+ #jd-content {
+ padding:15px 0 0;
+ }
+
+ #footer {
+ float:none;
+ margin:2em 0 0;
+ }
+
+ h4.jd-details-title {
+ border-bottom:1px solid #666;
+ }
+
+ pre {
+ /* these allow lines to break (if there's a white space) */
+ overflow: visible;
+ text-wrap: unrestricted;
+ white-space: -moz-pre-wrap; /* Moz */
+ white-space: -pre-wrap; /* Opera 4-6 */
+ white-space: -o-pre-wrap; /* Opera 7 */
+ white-space: pre-wrap; /* CSS3 */
+ word-wrap: break-word; /* IE 5.5+ */
+ }
+
+ h1, h2, h3, h4, h5, h6 {
+ page-break-after: avoid;
+ }
+
+ table, img {
+ page-break-inside: avoid;
+ }
diff --git a/public/apis/embeddingapidocs/assets/doclava-developer-docs.js b/public/apis/embeddingapidocs/assets/doclava-developer-docs.js
new file mode 100644
index 000000000..9429f90f8
--- /dev/null
+++ b/public/apis/embeddingapidocs/assets/doclava-developer-docs.js
@@ -0,0 +1,523 @@
+var resizePackagesNav;
+var classesNav;
+var devdocNav;
+var sidenav;
+var content;
+var HEADER_HEIGHT = -1;
+var cookie_namespace = 'doclava_developer';
+var NAV_PREF_TREE = "tree";
+var NAV_PREF_PANELS = "panels";
+var nav_pref;
+var toRoot;
+var toAssets;
+var isMobile = false; // true if mobile, so we can adjust some layout
+var isIE6 = false; // true if IE6
+
+// TODO: use $(document).ready instead
+function addLoadEvent(newfun) {
+ var current = window.onload;
+ if (typeof window.onload != 'function') {
+ window.onload = newfun;
+ } else {
+ window.onload = function() {
+ current();
+ newfun();
+ }
+ }
+}
+
+var agent = navigator['userAgent'].toLowerCase();
+// If a mobile phone, set flag and do mobile setup
+if ((agent.indexOf("mobile") != -1) || // android, iphone, ipod
+ (agent.indexOf("blackberry") != -1) ||
+ (agent.indexOf("webos") != -1) ||
+ (agent.indexOf("mini") != -1)) { // opera mini browsers
+ isMobile = true;
+ addLoadEvent(mobileSetup);
+// If not a mobile browser, set the onresize event for IE6, and others
+} else if (agent.indexOf("msie 6") != -1) {
+ isIE6 = true;
+ addLoadEvent(function() {
+ window.onresize = resizeAll;
+ });
+} else {
+ addLoadEvent(function() {
+ window.onresize = resizeHeight;
+ });
+}
+
+function mobileSetup() {
+ $("body").css({'overflow':'auto'});
+ $("html").css({'overflow':'auto'});
+ $("#body-content").css({'position':'relative', 'top':'0'});
+ $("#doc-content").css({'overflow':'visible', 'border-left':'3px solid #DDD'});
+ $("#side-nav").css({'padding':'0'});
+ $("#nav-tree").css({'overflow-y': 'auto'});
+}
+
+/* loads the lists.js file to the page.
+Loading this in the head was slowing page load time */
+addLoadEvent( function() {
+ var lists = document.createElement("script");
+ lists.setAttribute("type","text/javascript");
+ lists.setAttribute("src", toRoot+"lists.js");
+ document.getElementsByTagName("head")[0].appendChild(lists);
+} );
+
+addLoadEvent( function() {
+ $("pre:not(.no-pretty-print)").addClass("prettyprint");
+ prettyPrint();
+} );
+
+function setToRoot(root, assets) {
+ toRoot = root;
+ toAssets = assets;
+ // note: toRoot also used by carousel.js
+}
+
+function restoreWidth(navWidth) {
+ var windowWidth = $(window).width() + "px";
+ content.css({marginLeft:parseInt(navWidth) + 6 + "px"}); //account for 6px-wide handle-bar
+
+ if (isIE6) {
+ content.css({width:parseInt(windowWidth) - parseInt(navWidth) - 6 + "px"}); // necessary in order for scrollbars to be visible
+ }
+
+ sidenav.css({width:navWidth});
+ resizePackagesNav.css({width:navWidth});
+ classesNav.css({width:navWidth});
+ $("#packages-nav").css({width:navWidth});
+}
+
+function restoreHeight(packageHeight) {
+ var windowHeight = ($(window).height() - HEADER_HEIGHT);
+ var swapperHeight = windowHeight - 13;
+ $("#swapper").css({height:swapperHeight + "px"});
+ sidenav.css({height:windowHeight + "px"});
+ content.css({height:windowHeight + "px"});
+ resizePackagesNav.css({maxHeight:swapperHeight + "px", height:packageHeight});
+ classesNav.css({height:swapperHeight - parseInt(packageHeight) + "px"});
+ $("#packages-nav").css({height:parseInt(packageHeight) - 6 + "px"}); //move 6px to give space for the resize handle
+ devdocNav.css({height:sidenav.css("height")});
+ $("#nav-tree").css({height:swapperHeight + "px"});
+}
+
+function readCookie(cookie) {
+ var myCookie = cookie_namespace+"_"+cookie+"=";
+ if (document.cookie) {
+ var index = document.cookie.indexOf(myCookie);
+ if (index != -1) {
+ var valStart = index + myCookie.length;
+ var valEnd = document.cookie.indexOf(";", valStart);
+ if (valEnd == -1) {
+ valEnd = document.cookie.length;
+ }
+ var val = document.cookie.substring(valStart, valEnd);
+ return val;
+ }
+ }
+ return 0;
+}
+
+function writeCookie(cookie, val, section, expiration) {
+ if (val==undefined) return;
+ section = section == null ? "_" : "_"+section+"_";
+ if (expiration == null) {
+ var date = new Date();
+ date.setTime(date.getTime()+(10*365*24*60*60*1000)); // default expiration is one week
+ expiration = date.toGMTString();
+ }
+ document.cookie = cookie_namespace + section + cookie + "=" + val + "; expires=" + expiration+"; path=/";
+}
+
+function getSection() {
+ if (location.href.indexOf("/reference/") != -1) {
+ return "reference";
+ } else if (location.href.indexOf("/guide/") != -1) {
+ return "guide";
+ } else if (location.href.indexOf("/resources/") != -1) {
+ return "resources";
+ }
+ var basePath = getBaseUri(location.pathname);
+ return basePath.substring(1,basePath.indexOf("/",1));
+}
+
+function init() {
+ HEADER_HEIGHT = $("#header").height()+3;
+ $("#side-nav").css({position:"absolute",left:0});
+ content = $("#doc-content");
+ resizePackagesNav = $("#resize-packages-nav");
+ classesNav = $("#classes-nav");
+ sidenav = $("#side-nav");
+ devdocNav = $("#devdoc-nav");
+
+ var cookiePath = getSection() + "_";
+
+ if (!isMobile) {
+ $("#resize-packages-nav").resizable({handles: "s", resize: function(e, ui) { resizePackagesHeight(); } });
+ $(".side-nav-resizable").resizable({handles: "e", resize: function(e, ui) { resizeWidth(); } });
+ var cookieWidth = readCookie(cookiePath+'width');
+ var cookieHeight = readCookie(cookiePath+'height');
+ if (cookieWidth) {
+ restoreWidth(cookieWidth);
+ } else if ($(".side-nav-resizable").length) {
+ resizeWidth();
+ }
+ if (cookieHeight) {
+ restoreHeight(cookieHeight);
+ } else {
+ resizeHeight();
+ }
+ }
+
+ if (devdocNav.length) { // only dev guide, resources, and sdk
+ tryPopulateResourcesNav();
+ highlightNav(location.href);
+ }
+}
+
+function highlightNav(fullPageName) {
+ var lastSlashPos = fullPageName.lastIndexOf("/");
+ var firstSlashPos;
+ if (fullPageName.indexOf("/guide/") != -1) {
+ firstSlashPos = fullPageName.indexOf("/guide/");
+ } else if (fullPageName.indexOf("/sdk/") != -1) {
+ firstSlashPos = fullPageName.indexOf("/sdk/");
+ } else {
+ firstSlashPos = fullPageName.indexOf("/resources/");
+ }
+ if (lastSlashPos == (fullPageName.length - 1)) { // if the url ends in slash (add 'index.html')
+ fullPageName = fullPageName + "index.html";
+ }
+ // First check if the exact URL, with query string and all, is in the navigation menu
+ var pathPageName = fullPageName.substr(firstSlashPos);
+ var link = $("#devdoc-nav a[href$='"+ pathPageName+"']");
+ if (link.length == 0) {
+ var htmlPos = fullPageName.lastIndexOf(".html", fullPageName.length);
+ pathPageName = fullPageName.slice(firstSlashPos, htmlPos + 5); // +5 advances past ".html"
+ link = $("#devdoc-nav a[href$='"+ pathPageName+"']");
+ if ((link.length == 0) && ((fullPageName.indexOf("/guide/") != -1) || (fullPageName.indexOf("/resources/") != -1))) {
+ // if there's no match, then let's backstep through the directory until we find an index.html page
+ // that matches our ancestor directories (only for dev guide and resources)
+ lastBackstep = pathPageName.lastIndexOf("/");
+ while (link.length == 0) {
+ backstepDirectory = pathPageName.lastIndexOf("/", lastBackstep);
+ link = $("#devdoc-nav a[href$='"+ pathPageName.slice(0, backstepDirectory + 1)+"index.html']");
+ lastBackstep = pathPageName.lastIndexOf("/", lastBackstep - 1);
+ if (lastBackstep == 0) break;
+ }
+ }
+ }
+
+ // add 'selected' to the or that wraps this
+ link.parent().addClass('selected');
+
+ // if we're in a toggleable root link ()
+ if (link.parent().parent().hasClass('toggle-list')) {
+ toggle(link.parent().parent(), false); // open our own list
+ // then also check if we're in a third-level nested list that's toggleable
+ if (link.parent().parent().parent().is(':hidden')) {
+ toggle(link.parent().parent().parent().parent(), false); // open the super parent list
+ }
+ }
+ // if we're in a normal nav link () and the parent is hidden
+ else if (link.parent().parent().is(':hidden')) {
+ toggle(link.parent().parent().parent(), false); // open the parent list
+ // then also check if the parent list is also nested in a hidden list
+ if (link.parent().parent().parent().parent().is(':hidden')) {
+ toggle(link.parent().parent().parent().parent().parent(), false); // open the super parent list
+ }
+ }
+}
+
+/* Resize the height of the nav panels in the reference,
+ * and save the new size to a cookie */
+function resizePackagesHeight() {
+ var windowHeight = ($(window).height() - HEADER_HEIGHT);
+ var swapperHeight = windowHeight - 13; // move 13px for swapper link at the bottom
+ resizePackagesNav.css({maxHeight:swapperHeight + "px"});
+ classesNav.css({height:swapperHeight - parseInt(resizePackagesNav.css("height")) + "px"});
+
+ $("#swapper").css({height:swapperHeight + "px"});
+ $("#packages-nav").css({height:parseInt(resizePackagesNav.css("height")) - 6 + "px"}); //move 6px for handle
+
+ var section = getSection();
+ writeCookie("height", resizePackagesNav.css("height"), section, null);
+}
+
+/* Resize the height of the side-nav and doc-content divs,
+ * which creates the frame effect */
+function resizeHeight() {
+ var docContent = $("#doc-content");
+
+ // Get the window height and always resize the doc-content and side-nav divs
+ var windowHeight = ($(window).height() - HEADER_HEIGHT);
+ docContent.css({height:windowHeight + "px"});
+ $("#side-nav").css({height:windowHeight + "px"});
+
+ var href = location.href;
+ // If in the reference docs, also resize the "swapper", "classes-nav", and "nav-tree" divs
+ if (href.indexOf("/reference/") != -1) {
+ var swapperHeight = windowHeight - 13;
+ $("#swapper").css({height:swapperHeight + "px"});
+ $("#classes-nav").css({height:swapperHeight - parseInt(resizePackagesNav.css("height")) + "px"});
+ $("#nav-tree").css({height:swapperHeight + "px"});
+
+ // If in the dev guide docs, also resize the "devdoc-nav" div
+ } else if (href.indexOf("/guide/") != -1) {
+ $("#devdoc-nav").css({height:sidenav.css("height")});
+ } else if (href.indexOf("/resources/") != -1) {
+ $("#devdoc-nav").css({height:sidenav.css("height")});
+ }
+
+ // Hide the "Go to top" link if there's no vertical scroll
+ if ( parseInt($("#jd-content").css("height")) <= parseInt(docContent.css("height")) ) {
+ $("a[href='#top']").css({'display':'none'});
+ } else {
+ $("a[href='#top']").css({'display':'inline'});
+ }
+}
+
+/* Resize the width of the "side-nav" and the left margin of the "doc-content" div,
+ * which creates the resizable side bar */
+function resizeWidth() {
+ var windowWidth = $(window).width() + "px";
+ if (sidenav.length) {
+ var sidenavWidth = sidenav.css("width");
+ } else {
+ var sidenavWidth = 0;
+ }
+ content.css({marginLeft:parseInt(sidenavWidth) + 6 + "px"}); //account for 6px-wide handle-bar
+
+ if (isIE6) {
+ content.css({width:parseInt(windowWidth) - parseInt(sidenavWidth) - 6 + "px"}); // necessary in order to for scrollbars to be visible
+ }
+
+ resizePackagesNav.css({width:sidenavWidth});
+ classesNav.css({width:sidenavWidth});
+ $("#packages-nav").css({width:sidenavWidth});
+
+ if ($(".side-nav-resizable").length) { // Must check if the nav is resizable because IE6 calls resizeWidth() from resizeAll() for all pages
+ var section = getSection();
+ writeCookie("width", sidenavWidth, section, null);
+ }
+}
+
+/* For IE6 only,
+ * because it can't properly perform auto width for "doc-content" div,
+ * avoiding this for all browsers provides better performance */
+function resizeAll() {
+ resizeHeight();
+ resizeWidth();
+}
+
+function getBaseUri(uri) {
+ var intlUrl = (uri.substring(0,6) == "/intl/");
+ if (intlUrl) {
+ base = uri.substring(uri.indexOf('intl/')+5,uri.length);
+ base = base.substring(base.indexOf('/')+1, base.length);
+ //alert("intl, returning base url: /" + base);
+ return ("/" + base);
+ } else {
+ //alert("not intl, returning uri as found.");
+ return uri;
+ }
+}
+
+function requestAppendHL(uri) {
+//append "?hl= to an outgoing request (such as to blog)
+ var lang = getLangPref();
+ if (lang) {
+ var q = 'hl=' + lang;
+ uri += '?' + q;
+ window.location = uri;
+ return false;
+ } else {
+ return true;
+ }
+}
+
+function loadLast(cookiePath) {
+ var location = window.location.href;
+ if (location.indexOf("/"+cookiePath+"/") != -1) {
+ return true;
+ }
+ var lastPage = readCookie(cookiePath + "_lastpage");
+ if (lastPage) {
+ window.location = lastPage;
+ return false;
+ }
+ return true;
+}
+
+$(window).unload(function(){
+ var path = getBaseUri(location.pathname);
+ if (path.indexOf("/reference/") != -1) {
+ writeCookie("lastpage", path, "reference", null);
+ } else if (path.indexOf("/guide/") != -1) {
+ writeCookie("lastpage", path, "guide", null);
+ } else if (path.indexOf("/resources/") != -1) {
+ writeCookie("lastpage", path, "resources", null);
+ }
+});
+
+function toggle(obj, slide) {
+ var ul = $("ul:first", obj);
+ var li = ul.parent();
+ if (li.hasClass("closed")) {
+ if (slide) {
+ ul.slideDown("fast");
+ } else {
+ ul.show();
+ }
+ li.removeClass("closed");
+ li.addClass("open");
+ $(".toggle-img", li).attr("title", "hide pages");
+ } else {
+ ul.slideUp("fast");
+ li.removeClass("open");
+ li.addClass("closed");
+ $(".toggle-img", li).attr("title", "show pages");
+ }
+}
+
+function buildToggleLists() {
+ $(".toggle-list").each(
+ function(i) {
+ $("div:first", this).append(" ");
+ $(this).addClass("closed");
+ });
+}
+
+function getNavPref() {
+ var v = readCookie('reference_nav');
+ if (v != NAV_PREF_TREE) {
+ v = NAV_PREF_PANELS;
+ }
+ return v;
+}
+
+function chooseDefaultNav() {
+ nav_pref = getNavPref();
+ if (nav_pref == NAV_PREF_TREE) {
+ $("#nav-panels").toggle();
+ $("#panel-link").toggle();
+ $("#nav-tree").toggle();
+ $("#tree-link").toggle();
+ }
+}
+
+function swapNav() {
+ if (nav_pref == NAV_PREF_TREE) {
+ nav_pref = NAV_PREF_PANELS;
+ } else {
+ nav_pref = NAV_PREF_TREE;
+ init_default_navtree(toRoot);
+ }
+ var date = new Date();
+ date.setTime(date.getTime()+(10*365*24*60*60*1000)); // keep this for 10 years
+ writeCookie("nav", nav_pref, "reference", date.toGMTString());
+
+ $("#nav-panels").toggle();
+ $("#panel-link").toggle();
+ $("#nav-tree").toggle();
+ $("#tree-link").toggle();
+
+ if ($("#nav-tree").is(':visible')) scrollIntoView("nav-tree");
+ else {
+ scrollIntoView("packages-nav");
+ scrollIntoView("classes-nav");
+ }
+}
+
+function scrollIntoView(nav) {
+ var navObj = $("#"+nav);
+ if (navObj.is(':visible')) {
+ var selected = $(".selected", navObj);
+ if (selected.length == 0) return;
+ if (selected.is("div")) selected = selected.parent();
+
+ var scrolling = document.getElementById(nav);
+ var navHeight = navObj.height();
+ var offsetTop = selected.position().top;
+ if (selected.parent().parent().is(".toggle-list")) offsetTop += selected.parent().parent().position().top;
+ if(offsetTop > navHeight - 92) {
+ scrolling.scrollTop = offsetTop - navHeight + 92;
+ }
+ }
+}
+
+function changeTabLang(lang) {
+ var nodes = $("#header-tabs").find("."+lang);
+ for (i=0; i < nodes.length; i++) { // for each node in this language
+ var node = $(nodes[i]);
+ node.siblings().css("display","none"); // hide all siblings
+ if (node.not(":empty").length != 0) { //if this languages node has a translation, show it
+ node.css("display","inline");
+ } else { //otherwise, show English instead
+ node.css("display","none");
+ node.siblings().filter(".en").css("display","inline");
+ }
+ }
+}
+
+function changeNavLang(lang) {
+ var nodes = $("#side-nav").find("."+lang);
+ for (i=0; i < nodes.length; i++) { // for each node in this language
+ var node = $(nodes[i]);
+ node.siblings().css("display","none"); // hide all siblings
+ if (node.not(":empty").length != 0) { // if this languages node has a translation, show it
+ node.css("display","inline");
+ } else { // otherwise, show English instead
+ node.css("display","none");
+ node.siblings().filter(".en").css("display","inline");
+ }
+ }
+}
+
+function changeDocLang(lang) {
+ changeTabLang(lang);
+ changeNavLang(lang);
+}
+
+function changeLangPref(lang, refresh) {
+ var date = new Date();
+ expires = date.toGMTString(date.setTime(date.getTime()+(10*365*24*60*60*1000))); // keep this for 50 years
+ //alert("expires: " + expires)
+ writeCookie("pref_lang", lang, null, expires);
+ //changeDocLang(lang);
+ if (refresh) {
+ l = getBaseUri(location.pathname);
+ window.location = l;
+ }
+}
+
+function loadLangPref() {
+ var lang = readCookie("pref_lang");
+ if (lang != 0) {
+ $("#language").find("option[value='"+lang+"']").attr("selected",true);
+ }
+}
+
+function getLangPref() {
+ var lang = $("#language").find(":selected").attr("value");
+ if (!lang) {
+ lang = readCookie("pref_lang");
+ }
+ return (lang != 0) ? lang : 'en';
+}
+
+
+function toggleContent(obj) {
+ var button = $(obj);
+ var div = $(obj.parentNode);
+ var toggleMe = $(".toggle-content-toggleme",div);
+ if (button.hasClass("show")) {
+ toggleMe.slideDown();
+ button.removeClass("show").addClass("hide");
+ } else {
+ toggleMe.slideUp();
+ button.removeClass("hide").addClass("show");
+ }
+ $("span", button).toggle();
+}
\ No newline at end of file
diff --git a/public/apis/embeddingapidocs/assets/doclava-developer-reference.js b/public/apis/embeddingapidocs/assets/doclava-developer-reference.js
new file mode 100644
index 000000000..c854f01b7
--- /dev/null
+++ b/public/apis/embeddingapidocs/assets/doclava-developer-reference.js
@@ -0,0 +1,402 @@
+var API_LEVEL_ENABLED_COOKIE = "api_level_enabled";
+var API_LEVEL_INDEX_COOKIE = "api_level_index";
+var minLevelIndex = 0;
+
+function toggleApiLevelSelector(checkbox) {
+ var date = new Date();
+ date.setTime(date.getTime()+(10*365*24*60*60*1000)); // keep this for 10 years
+ var expiration = date.toGMTString();
+ if (checkbox.checked) {
+ $("#apiLevelSelector").removeAttr("disabled");
+ $("#api-level-toggle label").removeClass("disabled");
+ writeCookie(API_LEVEL_ENABLED_COOKIE, 1, null, expiration);
+ } else {
+ $("#apiLevelSelector").attr("disabled","disabled");
+ $("#api-level-toggle label").addClass("disabled");
+ writeCookie(API_LEVEL_ENABLED_COOKIE, 0, null, expiration);
+ }
+ changeApiLevel();
+}
+
+function buildApiLevelSelector() {
+ var userApiLevelEnabled = readCookie(API_LEVEL_ENABLED_COOKIE);
+ var userApiLevelIndex = readCookie(API_LEVEL_INDEX_COOKIE); // No cookie (zero) is the same as maxLevel.
+
+ if (userApiLevelEnabled == 0) {
+ $("#apiLevelSelector").attr("disabled","disabled");
+ } else {
+ $("#apiLevelCheckbox").attr("checked","checked");
+ $("#api-level-toggle label").removeClass("disabled");
+ }
+
+ minLevelValue = $("body").attr("class");
+ minLevelIndex = apiKeyToIndex(minLevelValue);
+ var select = $("#apiLevelSelector").html("").change(changeApiLevel);
+ for (var i = SINCE_DATA.length-1; i >= 0; i--) {
+ var option = $(" ").attr("value",""+SINCE_DATA[i]).append(""+SINCE_LABELS[i]);
+ select.append(option);
+ }
+
+ // get the DOM element and use setAttribute cuz IE6 fails when using jquery .attr('selected',true)
+ var selectedLevelItem = $("#apiLevelSelector option").get(SINCE_DATA.length - userApiLevelIndex - 1);
+ selectedLevelItem.setAttribute('selected',true);
+}
+
+function changeApiLevel() {
+ var userApiLevelEnabled = readCookie(API_LEVEL_ENABLED_COOKIE);
+ var selectedLevelIndex = SINCE_DATA.length - 1;
+
+ if (userApiLevelEnabled == 0) {
+ toggleVisisbleApis(selectedLevelIndex, "body");
+ } else {
+ selectedLevelIndex = getSelectedLevelIndex();
+ toggleVisisbleApis(selectedLevelIndex, "body");
+
+ var date = new Date();
+ date.setTime(date.getTime()+(10*365*24*60*60*1000)); // keep this for 10 years
+ var expiration = date.toGMTString();
+ writeCookie(API_LEVEL_INDEX_COOKIE, selectedLevelIndex, null, expiration);
+ }
+
+ var thing = ($("#jd-header").html().indexOf("package") != -1) ? "package" : "class";
+ showApiWarning(thing, selectedLevelIndex, minLevelIndex);
+}
+
+function showApiWarning(thing, selectedLevelIndex, minLevelIndex) {
+ if (selectedLevelIndex < minLevelIndex) {
+ $("#naMessage").show().html("This " + thing
+ + " is not available with API version "
+ + SINCE_LABELS[selectedLevelIndex] + ".
"
+ + "
To reveal this "
+ + "document, change the value in the API filter above.
");
+ } else {
+ $("#naMessage").hide();
+ }
+}
+
+function toggleVisisbleApis(selectedLevelIndex, context) {
+ var apis = $(".api",context);
+ apis.each(function(i) {
+ var obj = $(this);
+ var className = obj.attr("class");
+ var apiLevelPos = className.lastIndexOf("-")+1;
+ var apiLevelEndPos = className.indexOf(" ", apiLevelPos);
+ apiLevelEndPos = apiLevelEndPos != -1 ? apiLevelEndPos : className.length;
+ var apiLevelName = className.substring(apiLevelPos, apiLevelEndPos);
+ var apiLevelIndex = apiKeyToIndex(apiLevelName);
+ if (apiLevelIndex > selectedLevelIndex) {
+ obj.addClass("absent").attr("title","Requires API Level "+SINCE_LABELS[apiLevelIndex]+" or higher");
+ } else {
+ obj.removeClass("absent").removeAttr("title");
+ }
+ });
+}
+
+function apiKeyToIndex(key) {
+ for (i = 0; i < SINCE_DATA.length; i++) {
+ if (SINCE_DATA[i] == key) {
+ return i;
+ }
+ }
+ return -1;
+}
+
+function getSelectedLevelIndex() {
+ return SINCE_DATA.length - $("#apiLevelSelector").attr("selectedIndex") - 1;
+}
+
+/* NAVTREE */
+
+function new_node(me, mom, text, link, children_data, api_level)
+{
+ var node = new Object();
+ node.children = Array();
+ node.children_data = children_data;
+ node.depth = mom.depth + 1;
+
+ node.li = document.createElement("li");
+ mom.get_children_ul().appendChild(node.li);
+
+ node.label_div = document.createElement("div");
+ node.label_div.className = "label";
+ if (api_level != null) {
+ $(node.label_div).addClass("api");
+ $(node.label_div).addClass("api-level-"+api_level);
+ }
+ node.li.appendChild(node.label_div);
+ node.label_div.style.paddingLeft = 10*node.depth + "px";
+
+ if (children_data == null) {
+ // 12 is the width of the triangle and padding extra space
+ node.label_div.style.paddingLeft = ((10*node.depth)+12) + "px";
+ } else {
+ node.label_div.style.paddingLeft = 10*node.depth + "px";
+ node.expand_toggle = document.createElement("a");
+ node.expand_toggle.href = "javascript:void(0)";
+ node.expand_toggle.onclick = function() {
+ if (node.expanded) {
+ $(node.get_children_ul()).slideUp("fast");
+ node.plus_img.src = toAssets + "images/triangle-closed-small.png";
+ node.expanded = false;
+ } else {
+ expand_node(me, node);
+ }
+ };
+ node.label_div.appendChild(node.expand_toggle);
+
+ node.plus_img = document.createElement("img");
+ node.plus_img.src = toAssets + "images/triangle-closed-small.png";
+ node.plus_img.className = "plus";
+ node.plus_img.border = "0";
+ node.expand_toggle.appendChild(node.plus_img);
+
+ node.expanded = false;
+ }
+
+ var a = document.createElement("a");
+ node.label_div.appendChild(a);
+ node.label = document.createTextNode(text);
+ a.appendChild(node.label);
+ if (link) {
+ a.href = me.toroot + link;
+ } else {
+ if (children_data != null) {
+ a.className = "nolink";
+ a.href = "javascript:void(0)";
+ a.onclick = node.expand_toggle.onclick;
+ // This next line shouldn't be necessary.
+ node.expanded = false;
+ }
+ }
+
+
+ node.children_ul = null;
+ node.get_children_ul = function() {
+ if (!node.children_ul) {
+ node.children_ul = document.createElement("ul");
+ node.children_ul.className = "children_ul";
+ node.children_ul.style.display = "none";
+ node.li.appendChild(node.children_ul);
+ }
+ return node.children_ul;
+ };
+
+ return node;
+}
+
+function expand_node(me, node)
+{
+ if (node.children_data && !node.expanded) {
+ if (node.children_visited) {
+ $(node.get_children_ul()).slideDown("fast");
+ } else {
+ get_node(me, node);
+ if ($(node.label_div).hasClass("absent")) $(node.get_children_ul()).addClass("absent");
+ $(node.get_children_ul()).slideDown("fast");
+ }
+ node.plus_img.src = toAssets + "images/triangle-opened-small.png";
+ node.expanded = true;
+
+ // perform api level toggling because new nodes are new to the DOM
+ var selectedLevel = $("#apiLevelSelector").attr("selectedIndex");
+ toggleVisisbleApis(selectedLevel, "#side-nav");
+ }
+}
+
+function get_node(me, mom)
+{
+ mom.children_visited = true;
+ for (var i in mom.children_data) {
+ var node_data = mom.children_data[i];
+ mom.children[i] = new_node(me, mom, node_data[0], node_data[1],
+ node_data[2], node_data[3]);
+ }
+}
+
+function this_page_relative(toroot)
+{
+ var full = document.location.pathname;
+ var file = "";
+ if (toroot.substr(0, 1) == "/") {
+ if (full.substr(0, toroot.length) == toroot) {
+ return full.substr(toroot.length);
+ } else {
+ // the file isn't under toroot. Fail.
+ return null;
+ }
+ } else {
+ if (toroot != "./") {
+ toroot = "./" + toroot;
+ }
+ do {
+ if (toroot.substr(toroot.length-3, 3) == "../" || toroot == "./") {
+ var pos = full.lastIndexOf("/");
+ file = full.substr(pos) + file;
+ full = full.substr(0, pos);
+ toroot = toroot.substr(0, toroot.length-3);
+ }
+ } while (toroot != "" && toroot != "/");
+ return file.substr(1);
+ }
+}
+
+function find_page(url, data)
+{
+ var nodes = data;
+ var result = null;
+ for (var i in nodes) {
+ var d = nodes[i];
+ if (d[1] == url) {
+ return new Array(i);
+ }
+ else if (d[2] != null) {
+ result = find_page(url, d[2]);
+ if (result != null) {
+ return (new Array(i).concat(result));
+ }
+ }
+ }
+ return null;
+}
+
+function load_navtree_data() {
+ var navtreeData = document.createElement("script");
+ navtreeData.setAttribute("type","text/javascript");
+ navtreeData.setAttribute("src", toAssets + "navtree_data.js");
+ $("head").append($(navtreeData));
+}
+
+function init_default_navtree(toroot) {
+ init_navtree("nav-tree", toroot, NAVTREE_DATA);
+
+ // perform api level toggling because because the whole tree is new to the DOM
+ var selectedLevel = $("#apiLevelSelector").attr("selectedIndex");
+ toggleVisisbleApis(selectedLevel, "#side-nav");
+}
+
+function init_navtree(navtree_id, toroot, root_nodes)
+{
+ var me = new Object();
+ me.toroot = toroot;
+ me.node = new Object();
+
+ me.node.li = document.getElementById(navtree_id);
+ me.node.children_data = root_nodes;
+ me.node.children = new Array();
+ me.node.children_ul = document.createElement("ul");
+ me.node.get_children_ul = function() { return me.node.children_ul; };
+ //me.node.children_ul.className = "children_ul";
+ me.node.li.appendChild(me.node.children_ul);
+ me.node.depth = 0;
+
+ get_node(me, me.node);
+
+ me.this_page = this_page_relative(toroot);
+ me.breadcrumbs = find_page(me.this_page, root_nodes);
+ if (me.breadcrumbs != null && me.breadcrumbs.length != 0) {
+ var mom = me.node;
+ for (var i in me.breadcrumbs) {
+ var j = me.breadcrumbs[i];
+ mom = mom.children[j];
+ expand_node(me, mom);
+ }
+ mom.label_div.className = mom.label_div.className + " selected";
+ addLoadEvent(function() {
+ scrollIntoView("nav-tree");
+ });
+ }
+}
+
+/* TOGGLE INHERITED MEMBERS */
+
+/* Toggle an inherited class (arrow toggle)
+ * @param linkObj The link that was clicked.
+ * @param expand 'true' to ensure it's expanded. 'false' to ensure it's closed.
+ * 'null' to simply toggle.
+ */
+function toggleInherited(linkObj, expand) {
+ var base = linkObj.getAttribute("id");
+ var list = document.getElementById(base + "-list");
+ var summary = document.getElementById(base + "-summary");
+ var trigger = document.getElementById(base + "-trigger");
+ var a = $(linkObj);
+ if ( (expand == null && a.hasClass("closed")) || expand ) {
+ list.style.display = "none";
+ summary.style.display = "block";
+ trigger.src = toAssets + "images/triangle-opened.png";
+ a.removeClass("closed");
+ a.addClass("opened");
+ } else if ( (expand == null && a.hasClass("opened")) || (expand == false) ) {
+ list.style.display = "block";
+ summary.style.display = "none";
+ trigger.src = toAssets + "images/triangle-closed.png";
+ a.removeClass("opened");
+ a.addClass("closed");
+ }
+ return false;
+}
+
+/* Toggle all inherited classes in a single table (e.g. all inherited methods)
+ * @param linkObj The link that was clicked.
+ * @param expand 'true' to ensure it's expanded. 'false' to ensure it's closed.
+ * 'null' to simply toggle.
+ */
+function toggleAllInherited(linkObj, expand) {
+ var a = $(linkObj);
+ var table = $(a.parent().parent().parent()); // ugly way to get table/tbody
+ var expandos = $(".jd-expando-trigger", table);
+ if ( (expand == null && a.text() == "[Expand]") || expand ) {
+ expandos.each(function(i) {
+ toggleInherited(this, true);
+ });
+ a.text("[Collapse]");
+ } else if ( (expand == null && a.text() == "[Collapse]") || (expand == false) ) {
+ expandos.each(function(i) {
+ toggleInherited(this, false);
+ });
+ a.text("[Expand]");
+ }
+ return false;
+}
+
+/* Toggle all inherited members in the class (link in the class title)
+ */
+function toggleAllClassInherited() {
+ var a = $("#toggleAllClassInherited"); // get toggle link from class title
+ var toggles = $(".toggle-all", $("#doc-content"));
+ if (a.text() == "[Expand All]") {
+ toggles.each(function(i) {
+ toggleAllInherited(this, true);
+ });
+ a.text("[Collapse All]");
+ } else {
+ toggles.each(function(i) {
+ toggleAllInherited(this, false);
+ });
+ a.text("[Expand All]");
+ }
+ return false;
+}
+
+/* Expand all inherited members in the class. Used when initiating page search */
+function ensureAllInheritedExpanded() {
+ var toggles = $(".toggle-all", $("#doc-content"));
+ toggles.each(function(i) {
+ toggleAllInherited(this, true);
+ });
+ $("#toggleAllClassInherited").text("[Collapse All]");
+}
+
+
+/* HANDLE KEY EVENTS
+ * - Listen for Ctrl+F (Cmd on Mac) and expand all inherited members (to aid page search)
+ */
+var agent = navigator['userAgent'].toLowerCase();
+var mac = agent.indexOf("macintosh") != -1;
+
+$(document).keydown( function(e) {
+var control = mac ? e.metaKey && !e.ctrlKey : e.ctrlKey; // get ctrl key
+ if (control && e.which == 70) { // 70 is "F"
+ ensureAllInheritedExpanded();
+ }
+});
\ No newline at end of file
diff --git a/public/apis/embeddingapidocs/assets/images/bg_fade.jpg b/public/apis/embeddingapidocs/assets/images/bg_fade.jpg
new file mode 100644
index 000000000..c6c70b6f1
Binary files /dev/null and b/public/apis/embeddingapidocs/assets/images/bg_fade.jpg differ
diff --git a/public/apis/embeddingapidocs/assets/images/bg_logo.png b/public/apis/embeddingapidocs/assets/images/bg_logo.png
new file mode 100644
index 000000000..8c57fc48f
Binary files /dev/null and b/public/apis/embeddingapidocs/assets/images/bg_logo.png differ
diff --git a/public/apis/embeddingapidocs/assets/images/body-gradient-tab.png b/public/apis/embeddingapidocs/assets/images/body-gradient-tab.png
new file mode 100644
index 000000000..5223ac3a2
Binary files /dev/null and b/public/apis/embeddingapidocs/assets/images/body-gradient-tab.png differ
diff --git a/public/apis/embeddingapidocs/assets/images/body-gradient.png b/public/apis/embeddingapidocs/assets/images/body-gradient.png
new file mode 100644
index 000000000..9d5985552
Binary files /dev/null and b/public/apis/embeddingapidocs/assets/images/body-gradient.png differ
diff --git a/public/apis/embeddingapidocs/assets/images/grad-rule-qv.png b/public/apis/embeddingapidocs/assets/images/grad-rule-qv.png
new file mode 100644
index 000000000..bae2d18c2
Binary files /dev/null and b/public/apis/embeddingapidocs/assets/images/grad-rule-qv.png differ
diff --git a/public/apis/embeddingapidocs/assets/images/hr_gray_main.jpg b/public/apis/embeddingapidocs/assets/images/hr_gray_main.jpg
new file mode 100644
index 000000000..f7a0a2f92
Binary files /dev/null and b/public/apis/embeddingapidocs/assets/images/hr_gray_main.jpg differ
diff --git a/public/apis/embeddingapidocs/assets/images/hr_gray_side.jpg b/public/apis/embeddingapidocs/assets/images/hr_gray_side.jpg
new file mode 100644
index 000000000..666747669
Binary files /dev/null and b/public/apis/embeddingapidocs/assets/images/hr_gray_side.jpg differ
diff --git a/public/apis/embeddingapidocs/assets/images/left_off.jpg b/public/apis/embeddingapidocs/assets/images/left_off.jpg
new file mode 100644
index 000000000..fd32a64f1
Binary files /dev/null and b/public/apis/embeddingapidocs/assets/images/left_off.jpg differ
diff --git a/public/apis/embeddingapidocs/assets/images/left_on.jpg b/public/apis/embeddingapidocs/assets/images/left_on.jpg
new file mode 100644
index 000000000..143184b8c
Binary files /dev/null and b/public/apis/embeddingapidocs/assets/images/left_on.jpg differ
diff --git a/public/apis/embeddingapidocs/assets/images/preliminary.png b/public/apis/embeddingapidocs/assets/images/preliminary.png
new file mode 100644
index 000000000..fe0da3d20
Binary files /dev/null and b/public/apis/embeddingapidocs/assets/images/preliminary.png differ
diff --git a/public/apis/embeddingapidocs/assets/images/resizable-e.gif b/public/apis/embeddingapidocs/assets/images/resizable-e.gif
new file mode 100644
index 000000000..f748097f4
Binary files /dev/null and b/public/apis/embeddingapidocs/assets/images/resizable-e.gif differ
diff --git a/public/apis/embeddingapidocs/assets/images/resizable-e2.gif b/public/apis/embeddingapidocs/assets/images/resizable-e2.gif
new file mode 100644
index 000000000..e45d0c5be
Binary files /dev/null and b/public/apis/embeddingapidocs/assets/images/resizable-e2.gif differ
diff --git a/public/apis/embeddingapidocs/assets/images/resizable-eg.gif b/public/apis/embeddingapidocs/assets/images/resizable-eg.gif
new file mode 100644
index 000000000..619661626
Binary files /dev/null and b/public/apis/embeddingapidocs/assets/images/resizable-eg.gif differ
diff --git a/public/apis/embeddingapidocs/assets/images/resizable-s.gif b/public/apis/embeddingapidocs/assets/images/resizable-s.gif
new file mode 100644
index 000000000..7f6a4eb0e
Binary files /dev/null and b/public/apis/embeddingapidocs/assets/images/resizable-s.gif differ
diff --git a/public/apis/embeddingapidocs/assets/images/resizable-s2.gif b/public/apis/embeddingapidocs/assets/images/resizable-s2.gif
new file mode 100644
index 000000000..99e869c8a
Binary files /dev/null and b/public/apis/embeddingapidocs/assets/images/resizable-s2.gif differ
diff --git a/public/apis/embeddingapidocs/assets/images/resizable-sg.gif b/public/apis/embeddingapidocs/assets/images/resizable-sg.gif
new file mode 100644
index 000000000..b4bea1014
Binary files /dev/null and b/public/apis/embeddingapidocs/assets/images/resizable-sg.gif differ
diff --git a/public/apis/embeddingapidocs/assets/images/right_off.jpg b/public/apis/embeddingapidocs/assets/images/right_off.jpg
new file mode 100644
index 000000000..17d2efee2
Binary files /dev/null and b/public/apis/embeddingapidocs/assets/images/right_off.jpg differ
diff --git a/public/apis/embeddingapidocs/assets/images/right_on.jpg b/public/apis/embeddingapidocs/assets/images/right_on.jpg
new file mode 100644
index 000000000..baa2af12c
Binary files /dev/null and b/public/apis/embeddingapidocs/assets/images/right_on.jpg differ
diff --git a/public/apis/embeddingapidocs/assets/images/sidenav-rule.png b/public/apis/embeddingapidocs/assets/images/sidenav-rule.png
new file mode 100644
index 000000000..eab992063
Binary files /dev/null and b/public/apis/embeddingapidocs/assets/images/sidenav-rule.png differ
diff --git a/public/apis/embeddingapidocs/assets/images/spacer.gif b/public/apis/embeddingapidocs/assets/images/spacer.gif
new file mode 100644
index 000000000..f96b355f4
Binary files /dev/null and b/public/apis/embeddingapidocs/assets/images/spacer.gif differ
diff --git a/public/apis/embeddingapidocs/assets/images/triangle-closed-small.png b/public/apis/embeddingapidocs/assets/images/triangle-closed-small.png
new file mode 100644
index 000000000..002364a6a
Binary files /dev/null and b/public/apis/embeddingapidocs/assets/images/triangle-closed-small.png differ
diff --git a/public/apis/embeddingapidocs/assets/images/triangle-closed.png b/public/apis/embeddingapidocs/assets/images/triangle-closed.png
new file mode 100644
index 000000000..a34a05580
Binary files /dev/null and b/public/apis/embeddingapidocs/assets/images/triangle-closed.png differ
diff --git a/public/apis/embeddingapidocs/assets/images/triangle-opened-small.png b/public/apis/embeddingapidocs/assets/images/triangle-opened-small.png
new file mode 100644
index 000000000..e1eb784ff
Binary files /dev/null and b/public/apis/embeddingapidocs/assets/images/triangle-opened-small.png differ
diff --git a/public/apis/embeddingapidocs/assets/images/triangle-opened.png b/public/apis/embeddingapidocs/assets/images/triangle-opened.png
new file mode 100644
index 000000000..a70960485
Binary files /dev/null and b/public/apis/embeddingapidocs/assets/images/triangle-opened.png differ
diff --git a/public/apis/embeddingapidocs/assets/jquery-history.js b/public/apis/embeddingapidocs/assets/jquery-history.js
new file mode 100644
index 000000000..ef96ec39d
--- /dev/null
+++ b/public/apis/embeddingapidocs/assets/jquery-history.js
@@ -0,0 +1,78 @@
+/**
+ * jQuery history event v0.1
+ * Copyright (c) 2008 Tom Rodenberg
+ * Licensed under the GPL (http://www.gnu.org/licenses/gpl.html) license.
+ */
+(function($) {
+ var currentHash, previousNav, timer, hashTrim = /^.*#/;
+
+ var msie = {
+ iframe: null,
+ getDoc: function() {
+ return msie.iframe.contentWindow.document;
+ },
+ getHash: function() {
+ return msie.getDoc().location.hash;
+ },
+ setHash: function(hash) {
+ var d = msie.getDoc();
+ d.open();
+ d.close();
+ d.location.hash = hash;
+ }
+ };
+
+ var historycheck = function() {
+ var hash = msie.iframe ? msie.getHash() : location.hash;
+ if (hash != currentHash) {
+ currentHash = hash;
+ if (msie.iframe) {
+ location.hash = currentHash;
+ }
+ var current = $.history.getCurrent();
+ $.event.trigger('history', [current, previousNav]);
+ previousNav = current;
+ }
+ };
+
+ $.history = {
+ add: function(hash) {
+ hash = '#' + hash.replace(hashTrim, '');
+ if (currentHash != hash) {
+ var previous = $.history.getCurrent();
+ location.hash = currentHash = hash;
+ if (msie.iframe) {
+ msie.setHash(currentHash);
+ }
+ $.event.trigger('historyadd', [$.history.getCurrent(), previous]);
+ }
+ if (!timer) {
+ timer = setInterval(historycheck, 100);
+ }
+ },
+ getCurrent: function() {
+ if (currentHash) {
+ return currentHash.replace(hashTrim, '');
+ } else {
+ return "";
+ }
+ }
+ };
+
+ $.fn.history = function(fn) {
+ $(this).bind('history', fn);
+ };
+
+ $.fn.historyadd = function(fn) {
+ $(this).bind('historyadd', fn);
+ };
+
+ $(function() {
+ currentHash = location.hash;
+ if ($.browser.msie) {
+ msie.iframe = $('').prependTo('body')[0];
+ msie.setHash(currentHash);
+ currentHash = msie.getHash();
+ }
+ });
+})(jQuery);
diff --git a/public/apis/embeddingapidocs/assets/jquery-resizable.min.js b/public/apis/embeddingapidocs/assets/jquery-resizable.min.js
new file mode 100644
index 000000000..67186fef6
--- /dev/null
+++ b/public/apis/embeddingapidocs/assets/jquery-resizable.min.js
@@ -0,0 +1,40 @@
+/*
+ * jQuery JavaScript Library v1.3.2
+ * http://jquery.com/
+ *
+ * Copyright (c) 2009 John Resig
+ * Dual licensed under the MIT and GPL licenses.
+ * http://docs.jquery.com/License
+ *
+ * Date: 2009-02-19 17:34:21 -0500 (Thu, 19 Feb 2009)
+ * Revision: 6246
+ */
+(function(){var l=this,g,y=l.jQuery,p=l.$,o=l.jQuery=l.$=function(E,F){return new o.fn.init(E,F)},D=/^[^<]*(<(.|\s)+>)[^>]*$|^#([\w-]+)$/,f=/^.[^:#\[\.,]*$/;o.fn=o.prototype={init:function(E,H){E=E||document;if(E.nodeType){this[0]=E;this.length=1;this.context=E;return this}if(typeof E==="string"){var G=D.exec(E);if(G&&(G[1]||!H)){if(G[1]){E=o.clean([G[1]],H)}else{var I=document.getElementById(G[3]);if(I&&I.id!=G[3]){return o().find(E)}var F=o(I||[]);F.context=document;F.selector=E;return F}}else{return o(H).find(E)}}else{if(o.isFunction(E)){return o(document).ready(E)}}if(E.selector&&E.context){this.selector=E.selector;this.context=E.context}return this.setArray(o.isArray(E)?E:o.makeArray(E))},selector:"",jquery:"1.3.2",size:function(){return this.length},get:function(E){return E===g?Array.prototype.slice.call(this):this[E]},pushStack:function(F,H,E){var G=o(F);G.prevObject=this;G.context=this.context;if(H==="find"){G.selector=this.selector+(this.selector?" ":"")+E}else{if(H){G.selector=this.selector+"."+H+"("+E+")"}}return G},setArray:function(E){this.length=0;Array.prototype.push.apply(this,E);return this},each:function(F,E){return o.each(this,F,E)},index:function(E){return o.inArray(E&&E.jquery?E[0]:E,this)},attr:function(F,H,G){var E=F;if(typeof F==="string"){if(H===g){return this[0]&&o[G||"attr"](this[0],F)}else{E={};E[F]=H}}return this.each(function(I){for(F in E){o.attr(G?this.style:this,F,o.prop(this,E[F],G,I,F))}})},css:function(E,F){if((E=="width"||E=="height")&&parseFloat(F)<0){F=g}return this.attr(E,F,"curCSS")},text:function(F){if(typeof F!=="object"&&F!=null){return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(F))}var E="";o.each(F||this,function(){o.each(this.childNodes,function(){if(this.nodeType!=8){E+=this.nodeType!=1?this.nodeValue:o.fn.text([this])}})});return E},wrapAll:function(E){if(this[0]){var F=o(E,this[0].ownerDocument).clone();if(this[0].parentNode){F.insertBefore(this[0])}F.map(function(){var G=this;while(G.firstChild){G=G.firstChild}return G}).append(this)}return this},wrapInner:function(E){return this.each(function(){o(this).contents().wrapAll(E)})},wrap:function(E){return this.each(function(){o(this).wrapAll(E)})},append:function(){return this.domManip(arguments,true,function(E){if(this.nodeType==1){this.appendChild(E)}})},prepend:function(){return this.domManip(arguments,true,function(E){if(this.nodeType==1){this.insertBefore(E,this.firstChild)}})},before:function(){return this.domManip(arguments,false,function(E){this.parentNode.insertBefore(E,this)})},after:function(){return this.domManip(arguments,false,function(E){this.parentNode.insertBefore(E,this.nextSibling)})},end:function(){return this.prevObject||o([])},push:[].push,sort:[].sort,splice:[].splice,find:function(E){if(this.length===1){var F=this.pushStack([],"find",E);F.length=0;o.find(E,this[0],F);return F}else{return this.pushStack(o.unique(o.map(this,function(G){return o.find(E,G)})),"find",E)}},clone:function(G){var E=this.map(function(){if(!o.support.noCloneEvent&&!o.isXMLDoc(this)){var I=this.outerHTML;if(!I){var J=this.ownerDocument.createElement("div");J.appendChild(this.cloneNode(true));I=J.innerHTML}return o.clean([I.replace(/ jQuery\d+="(?:\d+|null)"/g,"").replace(/^\s*/,"")])[0]}else{return this.cloneNode(true)}});if(G===true){var H=this.find("*").andSelf(),F=0;E.find("*").andSelf().each(function(){if(this.nodeName!==H[F].nodeName){return}var I=o.data(H[F],"events");for(var K in I){for(var J in I[K]){o.event.add(this,K,I[K][J],I[K][J].data)}}F++})}return E},filter:function(E){return this.pushStack(o.isFunction(E)&&o.grep(this,function(G,F){return E.call(G,F)})||o.multiFilter(E,o.grep(this,function(F){return F.nodeType===1})),"filter",E)},closest:function(E){var G=o.expr.match.POS.test(E)?o(E):null,F=0;return this.map(function(){var H=this;while(H&&H.ownerDocument){if(G?G.index(H)>-1:o(H).is(E)){o.data(H,"closest",F);return H}H=H.parentNode;F++}})},not:function(E){if(typeof E==="string"){if(f.test(E)){return this.pushStack(o.multiFilter(E,this,true),"not",E)}else{E=o.multiFilter(E,this)}}var F=E.length&&E[E.length-1]!==g&&!E.nodeType;return this.filter(function(){return F?o.inArray(this,E)<0:this!=E})},add:function(E){return this.pushStack(o.unique(o.merge(this.get(),typeof E==="string"?o(E):o.makeArray(E))))},is:function(E){return !!E&&o.multiFilter(E,this).length>0},hasClass:function(E){return !!E&&this.is("."+E)},val:function(K){if(K===g){var E=this[0];if(E){if(o.nodeName(E,"option")){return(E.attributes.value||{}).specified?E.value:E.text}if(o.nodeName(E,"select")){var I=E.selectedIndex,L=[],M=E.options,H=E.type=="select-one";if(I<0){return null}for(var F=H?I:0,J=H?I+1:M.length;F=0||o.inArray(this.name,K)>=0)}else{if(o.nodeName(this,"select")){var N=o.makeArray(K);o("option",this).each(function(){this.selected=(o.inArray(this.value,N)>=0||o.inArray(this.text,N)>=0)});if(!N.length){this.selectedIndex=-1}}else{this.value=K}}})},html:function(E){return E===g?(this[0]?this[0].innerHTML.replace(/ jQuery\d+="(?:\d+|null)"/g,""):null):this.empty().append(E)},replaceWith:function(E){return this.after(E).remove()},eq:function(E){return this.slice(E,+E+1)},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments),"slice",Array.prototype.slice.call(arguments).join(","))},map:function(E){return this.pushStack(o.map(this,function(G,F){return E.call(G,F,G)}))},andSelf:function(){return this.add(this.prevObject)},domManip:function(J,M,L){if(this[0]){var I=(this[0].ownerDocument||this[0]).createDocumentFragment(),F=o.clean(J,(this[0].ownerDocument||this[0]),I),H=I.firstChild;if(H){for(var G=0,E=this.length;G1||G>0?I.cloneNode(true):I)}}if(F){o.each(F,z)}}return this;function K(N,O){return M&&o.nodeName(N,"table")&&o.nodeName(O,"tr")?(N.getElementsByTagName("tbody")[0]||N.appendChild(N.ownerDocument.createElement("tbody"))):N}}};o.fn.init.prototype=o.fn;function z(E,F){if(F.src){o.ajax({url:F.src,async:false,dataType:"script"})}else{o.globalEval(F.text||F.textContent||F.innerHTML||"")}if(F.parentNode){F.parentNode.removeChild(F)}}function e(){return +new Date}o.extend=o.fn.extend=function(){var J=arguments[0]||{},H=1,I=arguments.length,E=false,G;if(typeof J==="boolean"){E=J;J=arguments[1]||{};H=2}if(typeof J!=="object"&&!o.isFunction(J)){J={}}if(I==H){J=this;--H}for(;H-1}},swap:function(H,G,I){var E={};for(var F in G){E[F]=H.style[F];H.style[F]=G[F]}I.call(H);for(var F in G){H.style[F]=E[F]}},css:function(H,F,J,E){if(F=="width"||F=="height"){var L,G={position:"absolute",visibility:"hidden",display:"block"},K=F=="width"?["Left","Right"]:["Top","Bottom"];function I(){L=F=="width"?H.offsetWidth:H.offsetHeight;if(E==="border"){return}o.each(K,function(){if(!E){L-=parseFloat(o.curCSS(H,"padding"+this,true))||0}if(E==="margin"){L+=parseFloat(o.curCSS(H,"margin"+this,true))||0}else{L-=parseFloat(o.curCSS(H,"border"+this+"Width",true))||0}})}if(H.offsetWidth!==0){I()}else{o.swap(H,G,I)}return Math.max(0,Math.round(L))}return o.curCSS(H,F,J)},curCSS:function(I,F,G){var L,E=I.style;if(F=="opacity"&&!o.support.opacity){L=o.attr(E,"opacity");return L==""?"1":L}if(F.match(/float/i)){F=w}if(!G&&E&&E[F]){L=E[F]}else{if(q.getComputedStyle){if(F.match(/float/i)){F="float"}F=F.replace(/([A-Z])/g,"-$1").toLowerCase();var M=q.getComputedStyle(I,null);if(M){L=M.getPropertyValue(F)}if(F=="opacity"&&L==""){L="1"}}else{if(I.currentStyle){var J=F.replace(/\-(\w)/g,function(N,O){return O.toUpperCase()});L=I.currentStyle[F]||I.currentStyle[J];if(!/^\d+(px)?$/i.test(L)&&/^\d/.test(L)){var H=E.left,K=I.runtimeStyle.left;I.runtimeStyle.left=I.currentStyle.left;E.left=L||0;L=E.pixelLeft+"px";E.left=H;I.runtimeStyle.left=K}}}}return L},clean:function(F,K,I){K=K||document;if(typeof K.createElement==="undefined"){K=K.ownerDocument||K[0]&&K[0].ownerDocument||document}if(!I&&F.length===1&&typeof F[0]==="string"){var H=/^<(\w+)\s*\/?>$/.exec(F[0]);if(H){return[K.createElement(H[1])]}}var G=[],E=[],L=K.createElement("div");o.each(F,function(P,S){if(typeof S==="number"){S+=""}if(!S){return}if(typeof S==="string"){S=S.replace(/(<(\w+)[^>]*?)\/>/g,function(U,V,T){return T.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?U:V+">"+T+">"});var O=S.replace(/^\s+/,"").substring(0,10).toLowerCase();var Q=!O.indexOf("",""]||!O.indexOf("",""]||O.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,""]||!O.indexOf("","