mirror of
https://github.com/alchemy-fr/Phraseanet.git
synced 2025-10-14 05:23:21 +00:00
2176 lines
237 KiB
HTML
2176 lines
237 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
|
<html xmlns:yui="http://yuilibrary.com/rdf/1.0/yui.rdf#">
|
|
<head>
|
|
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
|
|
<title>API: yuiloader yuiloader.js (YUI Library)</title>
|
|
|
|
<link rel="stylesheet" type="text/css" href="assets/reset-fonts-grids-min.css" />
|
|
<link rel="stylesheet" type="text/css" href="assets/api.css" />
|
|
|
|
<script type="text/javascript" src="assets/api-js"></script>
|
|
<script type="text/javascript" src="assets/ac-js"></script>
|
|
</head>
|
|
|
|
<body id="yahoo-com">
|
|
|
|
<div id="doc3" class="yui-t2">
|
|
<div id="hd">
|
|
<h1><a href="http://developer.yahoo.com/yui/" title="Yahoo! UI Library">Yahoo! UI Library</a></h1>
|
|
<h3>yuiloader <span class="subtitle">2.8.2r1</span></h3>
|
|
<a href="./index.html" title="Yahoo! UI Library">Yahoo! UI Library</a>
|
|
> <a href="./module_yuiloader.html" title="yuiloader">yuiloader</a>
|
|
|
|
> yuiloader.js (source view)
|
|
<form onsubmit="return false">
|
|
<div id="propertysearch">
|
|
Search: <input autocomplete="off" id="searchinput" />
|
|
<div id="searchresults">
|
|
|
|
</div>
|
|
</div>
|
|
</form>
|
|
</div>
|
|
|
|
<div id="bd">
|
|
<div id="yui-main">
|
|
<div class="yui-b">
|
|
<form action="#" name="yui-classopts-form" method="get" id="yui-classopts-form">
|
|
<fieldset>
|
|
<legend>Filters</legend>
|
|
<span class="classopts"><input type="checkbox" name="show_private" id="show_private" /> <label for="show_private">Show Private</label></span>
|
|
<span class="classopts"><input type="checkbox" name="show_protected" id="show_protected" /> <label for="show_protected">Show Protected</label></span>
|
|
<span class="classopts"><input type="checkbox" name="show_deprecated" id="show_deprecated" /> <label for="show_deprecated">Show Deprecated</label></span>
|
|
</fieldset>
|
|
</form>
|
|
|
|
<div id="srcout">
|
|
<style>
|
|
#doc3 .classopts { display:none; }
|
|
</style>
|
|
<div class="highlight"><pre><span class="cm">/**</span>
|
|
<span class="cm"> * Provides dynamic loading for the YUI library. It includes the dependency</span>
|
|
<span class="cm"> * info for the library, and will automatically pull in dependencies for</span>
|
|
<span class="cm"> * the modules requested. It supports rollup files (such as utilities.js</span>
|
|
<span class="cm"> * and yahoo-dom-event.js), and will automatically use these when</span>
|
|
<span class="cm"> * appropriate in order to minimize the number of http connections</span>
|
|
<span class="cm"> * required to load all of the dependencies.</span>
|
|
<span class="cm"> * </span>
|
|
<span class="cm"> * @module yuiloader</span>
|
|
<span class="cm"> * @namespace YAHOO.util</span>
|
|
<span class="cm"> */</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * YUILoader provides dynamic loading for YUI.</span>
|
|
<span class="cm"> * @class YAHOO.util.YUILoader</span>
|
|
<span class="cm"> * @todo</span>
|
|
<span class="cm"> * version management, automatic sandboxing</span>
|
|
<span class="cm"> */</span>
|
|
<span class="p">(</span><span class="kd">function</span><span class="p">()</span> <span class="p">{</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">Y</span><span class="o">=</span><span class="nx">YAHOO</span><span class="p">,</span> <span class="nx">util</span><span class="o">=</span><span class="nx">Y</span><span class="p">.</span><span class="nx">util</span><span class="p">,</span> <span class="nx">lang</span><span class="o">=</span><span class="nx">Y</span><span class="p">.</span><span class="nx">lang</span><span class="p">,</span> <span class="nx">env</span><span class="o">=</span><span class="nx">Y</span><span class="p">.</span><span class="nx">env</span><span class="p">,</span>
|
|
<span class="nx">PROV</span> <span class="o">=</span> <span class="s2">"_provides"</span><span class="p">,</span> <span class="nx">SUPER</span> <span class="o">=</span> <span class="s2">"_supersedes"</span><span class="p">,</span>
|
|
<span class="nx">REQ</span> <span class="o">=</span> <span class="s2">"expanded"</span><span class="p">,</span> <span class="nx">AFTER</span> <span class="o">=</span> <span class="s2">"_after"</span><span class="p">;</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">YUI</span> <span class="o">=</span> <span class="p">{</span>
|
|
|
|
<span class="nx">dupsAllowed</span><span class="o">:</span> <span class="p">{</span><span class="s1">'yahoo'</span><span class="o">:</span> <span class="kc">true</span><span class="p">,</span> <span class="s1">'get'</span><span class="o">:</span> <span class="kc">true</span><span class="p">},</span>
|
|
|
|
<span class="cm">/*</span>
|
|
<span class="cm"> * The library metadata for the current release The is the default</span>
|
|
<span class="cm"> * value for YAHOO.util.YUILoader.moduleInfo</span>
|
|
<span class="cm"> * @property YUIInfo</span>
|
|
<span class="cm"> * @static</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">info</span><span class="o">:</span> <span class="p">{</span>
|
|
|
|
<span class="c1">// 'root': '2.5.2/build/',</span>
|
|
<span class="c1">// 'base': 'http://yui.yahooapis.com/2.5.2/build/',</span>
|
|
|
|
<span class="s1">'root'</span><span class="o">:</span> <span class="s1">'@VERSION@/build/'</span><span class="p">,</span>
|
|
<span class="s1">'base'</span><span class="o">:</span> <span class="s1">'http://yui.yahooapis.com/@VERSION@/build/'</span><span class="p">,</span>
|
|
|
|
<span class="s1">'comboBase'</span><span class="o">:</span> <span class="s1">'http://yui.yahooapis.com/combo?'</span><span class="p">,</span>
|
|
|
|
<span class="s1">'skin'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'defaultSkin'</span><span class="o">:</span> <span class="s1">'sam'</span><span class="p">,</span>
|
|
<span class="s1">'base'</span><span class="o">:</span> <span class="s1">'assets/skins/'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'skin.css'</span><span class="p">,</span>
|
|
<span class="s1">'after'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'reset'</span><span class="p">,</span> <span class="s1">'fonts'</span><span class="p">,</span> <span class="s1">'grids'</span><span class="p">,</span> <span class="s1">'base'</span><span class="p">],</span>
|
|
<span class="s1">'rollup'</span><span class="o">:</span> <span class="mi">3</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">dupsAllowed</span><span class="o">:</span> <span class="p">[</span><span class="s1">'yahoo'</span><span class="p">,</span> <span class="s1">'get'</span><span class="p">],</span>
|
|
|
|
<span class="s1">'moduleInfo'</span><span class="o">:</span> <span class="p">{</span>
|
|
|
|
<span class="s1">'animation'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'animation/animation-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'dom'</span><span class="p">,</span> <span class="s1">'event'</span><span class="p">]</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'autocomplete'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'autocomplete/autocomplete-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'dom'</span><span class="p">,</span> <span class="s1">'event'</span><span class="p">,</span> <span class="s1">'datasource'</span><span class="p">],</span>
|
|
<span class="s1">'optional'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'connection'</span><span class="p">,</span> <span class="s1">'animation'</span><span class="p">],</span>
|
|
<span class="s1">'skinnable'</span><span class="o">:</span> <span class="kc">true</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'base'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'css'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'base/base-min.css'</span><span class="p">,</span>
|
|
<span class="s1">'after'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'reset'</span><span class="p">,</span> <span class="s1">'fonts'</span><span class="p">,</span> <span class="s1">'grids'</span><span class="p">]</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'button'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'button/button-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'element'</span><span class="p">],</span>
|
|
<span class="s1">'optional'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'menu'</span><span class="p">],</span>
|
|
<span class="s1">'skinnable'</span><span class="o">:</span> <span class="kc">true</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'calendar'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'calendar/calendar-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'event'</span><span class="p">,</span> <span class="s1">'dom'</span><span class="p">],</span>
|
|
<span class="nx">supersedes</span><span class="o">:</span> <span class="p">[</span><span class="s1">'datemeth'</span><span class="p">],</span>
|
|
<span class="s1">'skinnable'</span><span class="o">:</span> <span class="kc">true</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'carousel'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'carousel/carousel-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'element'</span><span class="p">],</span>
|
|
<span class="s1">'optional'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'animation'</span><span class="p">],</span>
|
|
<span class="s1">'skinnable'</span><span class="o">:</span> <span class="kc">true</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'charts'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'charts/charts-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'element'</span><span class="p">,</span> <span class="s1">'json'</span><span class="p">,</span> <span class="s1">'datasource'</span><span class="p">,</span> <span class="s1">'swf'</span><span class="p">]</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'colorpicker'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'colorpicker/colorpicker-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'slider'</span><span class="p">,</span> <span class="s1">'element'</span><span class="p">],</span>
|
|
<span class="s1">'optional'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'animation'</span><span class="p">],</span>
|
|
<span class="s1">'skinnable'</span><span class="o">:</span> <span class="kc">true</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'connection'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'connection/connection-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'event'</span><span class="p">],</span>
|
|
<span class="s1">'supersedes'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'connectioncore'</span><span class="p">]</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'connectioncore'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'connection/connection_core-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'event'</span><span class="p">],</span>
|
|
<span class="s1">'pkg'</span><span class="o">:</span> <span class="s1">'connection'</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'container'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'container/container-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'dom'</span><span class="p">,</span> <span class="s1">'event'</span><span class="p">],</span>
|
|
<span class="c1">// button is also optional, but this creates a circular </span>
|
|
<span class="c1">// dependency when loadOptional is specified. button</span>
|
|
<span class="c1">// optionally includes menu, menu requires container.</span>
|
|
<span class="s1">'optional'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'dragdrop'</span><span class="p">,</span> <span class="s1">'animation'</span><span class="p">,</span> <span class="s1">'connection'</span><span class="p">],</span>
|
|
<span class="s1">'supersedes'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'containercore'</span><span class="p">],</span>
|
|
<span class="s1">'skinnable'</span><span class="o">:</span> <span class="kc">true</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'containercore'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'container/container_core-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'dom'</span><span class="p">,</span> <span class="s1">'event'</span><span class="p">],</span>
|
|
<span class="s1">'pkg'</span><span class="o">:</span> <span class="s1">'container'</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'cookie'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'cookie/cookie-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'yahoo'</span><span class="p">]</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'datasource'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'datasource/datasource-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'event'</span><span class="p">],</span>
|
|
<span class="s1">'optional'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'connection'</span><span class="p">]</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'datatable'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'datatable/datatable-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'element'</span><span class="p">,</span> <span class="s1">'datasource'</span><span class="p">],</span>
|
|
<span class="s1">'optional'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'calendar'</span><span class="p">,</span> <span class="s1">'dragdrop'</span><span class="p">,</span> <span class="s1">'paginator'</span><span class="p">],</span>
|
|
<span class="s1">'skinnable'</span><span class="o">:</span> <span class="kc">true</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">datemath</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'datemath/datemath-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'yahoo'</span><span class="p">]</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'dom'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'dom/dom-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'yahoo'</span><span class="p">]</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'dragdrop'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'dragdrop/dragdrop-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'dom'</span><span class="p">,</span> <span class="s1">'event'</span><span class="p">]</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'editor'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'editor/editor-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'menu'</span><span class="p">,</span> <span class="s1">'element'</span><span class="p">,</span> <span class="s1">'button'</span><span class="p">],</span>
|
|
<span class="s1">'optional'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'animation'</span><span class="p">,</span> <span class="s1">'dragdrop'</span><span class="p">],</span>
|
|
<span class="s1">'supersedes'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'simpleeditor'</span><span class="p">],</span>
|
|
<span class="s1">'skinnable'</span><span class="o">:</span> <span class="kc">true</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'element'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'element/element-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'dom'</span><span class="p">,</span> <span class="s1">'event'</span><span class="p">],</span>
|
|
<span class="s1">'optional'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'event-mouseenter'</span><span class="p">,</span> <span class="s1">'event-delegate'</span><span class="p">]</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'element-delegate'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'element-delegate/element-delegate-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'element'</span><span class="p">]</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'event'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'event/event-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'yahoo'</span><span class="p">]</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'event-simulate'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'event-simulate/event-simulate-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'event'</span><span class="p">]</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'event-delegate'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'event-delegate/event-delegate-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'event'</span><span class="p">],</span>
|
|
<span class="s1">'optional'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'selector'</span><span class="p">]</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'event-mouseenter'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'event-mouseenter/event-mouseenter-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'dom'</span><span class="p">,</span> <span class="s1">'event'</span><span class="p">]</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'fonts'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'css'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'fonts/fonts-min.css'</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'get'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'get/get-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'yahoo'</span><span class="p">]</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'grids'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'css'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'grids/grids-min.css'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'fonts'</span><span class="p">],</span>
|
|
<span class="s1">'optional'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'reset'</span><span class="p">]</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'history'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'history/history-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'event'</span><span class="p">]</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'imagecropper'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'imagecropper/imagecropper-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'dragdrop'</span><span class="p">,</span> <span class="s1">'element'</span><span class="p">,</span> <span class="s1">'resize'</span><span class="p">],</span>
|
|
<span class="s1">'skinnable'</span><span class="o">:</span> <span class="kc">true</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'imageloader'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'imageloader/imageloader-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'event'</span><span class="p">,</span> <span class="s1">'dom'</span><span class="p">]</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'json'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'json/json-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'yahoo'</span><span class="p">]</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'layout'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'layout/layout-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'element'</span><span class="p">],</span>
|
|
<span class="s1">'optional'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'animation'</span><span class="p">,</span> <span class="s1">'dragdrop'</span><span class="p">,</span> <span class="s1">'resize'</span><span class="p">,</span> <span class="s1">'selector'</span><span class="p">],</span>
|
|
<span class="s1">'skinnable'</span><span class="o">:</span> <span class="kc">true</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'logger'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'logger/logger-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'event'</span><span class="p">,</span> <span class="s1">'dom'</span><span class="p">],</span>
|
|
<span class="s1">'optional'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'dragdrop'</span><span class="p">],</span>
|
|
<span class="s1">'skinnable'</span><span class="o">:</span> <span class="kc">true</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'menu'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'menu/menu-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'containercore'</span><span class="p">],</span>
|
|
<span class="s1">'skinnable'</span><span class="o">:</span> <span class="kc">true</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'paginator'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'paginator/paginator-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'element'</span><span class="p">],</span>
|
|
<span class="s1">'skinnable'</span><span class="o">:</span> <span class="kc">true</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'profiler'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'profiler/profiler-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'yahoo'</span><span class="p">]</span>
|
|
<span class="p">},</span>
|
|
|
|
|
|
<span class="s1">'profilerviewer'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'profilerviewer/profilerviewer-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'profiler'</span><span class="p">,</span> <span class="s1">'yuiloader'</span><span class="p">,</span> <span class="s1">'element'</span><span class="p">],</span>
|
|
<span class="s1">'skinnable'</span><span class="o">:</span> <span class="kc">true</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'progressbar'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'progressbar/progressbar-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'element'</span><span class="p">],</span>
|
|
<span class="s1">'optional'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'animation'</span><span class="p">],</span>
|
|
<span class="s1">'skinnable'</span><span class="o">:</span> <span class="kc">true</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'reset'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'css'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'reset/reset-min.css'</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'reset-fonts-grids'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'css'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'reset-fonts-grids/reset-fonts-grids.css'</span><span class="p">,</span>
|
|
<span class="s1">'supersedes'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'reset'</span><span class="p">,</span> <span class="s1">'fonts'</span><span class="p">,</span> <span class="s1">'grids'</span><span class="p">,</span> <span class="s1">'reset-fonts'</span><span class="p">],</span>
|
|
<span class="s1">'rollup'</span><span class="o">:</span> <span class="mi">4</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'reset-fonts'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'css'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'reset-fonts/reset-fonts.css'</span><span class="p">,</span>
|
|
<span class="s1">'supersedes'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'reset'</span><span class="p">,</span> <span class="s1">'fonts'</span><span class="p">],</span>
|
|
<span class="s1">'rollup'</span><span class="o">:</span> <span class="mi">2</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'resize'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'resize/resize-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'dragdrop'</span><span class="p">,</span> <span class="s1">'element'</span><span class="p">],</span>
|
|
<span class="s1">'optional'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'animation'</span><span class="p">],</span>
|
|
<span class="s1">'skinnable'</span><span class="o">:</span> <span class="kc">true</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'selector'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'selector/selector-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'yahoo'</span><span class="p">,</span> <span class="s1">'dom'</span><span class="p">]</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'simpleeditor'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'editor/simpleeditor-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'element'</span><span class="p">],</span>
|
|
<span class="s1">'optional'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'containercore'</span><span class="p">,</span> <span class="s1">'menu'</span><span class="p">,</span> <span class="s1">'button'</span><span class="p">,</span> <span class="s1">'animation'</span><span class="p">,</span> <span class="s1">'dragdrop'</span><span class="p">],</span>
|
|
<span class="s1">'skinnable'</span><span class="o">:</span> <span class="kc">true</span><span class="p">,</span>
|
|
<span class="s1">'pkg'</span><span class="o">:</span> <span class="s1">'editor'</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'slider'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'slider/slider-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'dragdrop'</span><span class="p">],</span>
|
|
<span class="s1">'optional'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'animation'</span><span class="p">],</span>
|
|
<span class="s1">'skinnable'</span><span class="o">:</span> <span class="kc">true</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'storage'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'storage/storage-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'yahoo'</span><span class="p">,</span> <span class="s1">'event'</span><span class="p">,</span> <span class="s1">'cookie'</span><span class="p">],</span>
|
|
<span class="s1">'optional'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'swfstore'</span><span class="p">]</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'stylesheet'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'stylesheet/stylesheet-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'yahoo'</span><span class="p">]</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'swf'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'swf/swf-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'element'</span><span class="p">],</span>
|
|
<span class="s1">'supersedes'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'swfdetect'</span><span class="p">]</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'swfdetect'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'swfdetect/swfdetect-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'yahoo'</span><span class="p">]</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'swfstore'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'swfstore/swfstore-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'element'</span><span class="p">,</span> <span class="s1">'cookie'</span><span class="p">,</span> <span class="s1">'swf'</span><span class="p">]</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'tabview'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'tabview/tabview-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'element'</span><span class="p">],</span>
|
|
<span class="s1">'optional'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'connection'</span><span class="p">],</span>
|
|
<span class="s1">'skinnable'</span><span class="o">:</span> <span class="kc">true</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'treeview'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'treeview/treeview-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'event'</span><span class="p">,</span> <span class="s1">'dom'</span><span class="p">],</span>
|
|
<span class="s1">'optional'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'json'</span><span class="p">,</span> <span class="s1">'animation'</span><span class="p">,</span> <span class="s1">'calendar'</span><span class="p">],</span>
|
|
<span class="s1">'skinnable'</span><span class="o">:</span> <span class="kc">true</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'uploader'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'uploader/uploader-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'element'</span><span class="p">]</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'utilities'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'utilities/utilities.js'</span><span class="p">,</span>
|
|
<span class="s1">'supersedes'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'yahoo'</span><span class="p">,</span> <span class="s1">'event'</span><span class="p">,</span> <span class="s1">'dragdrop'</span><span class="p">,</span> <span class="s1">'animation'</span><span class="p">,</span> <span class="s1">'dom'</span><span class="p">,</span> <span class="s1">'connection'</span><span class="p">,</span> <span class="s1">'element'</span><span class="p">,</span> <span class="s1">'yahoo-dom-event'</span><span class="p">,</span> <span class="s1">'get'</span><span class="p">,</span> <span class="s1">'yuiloader'</span><span class="p">,</span> <span class="s1">'yuiloader-dom-event'</span><span class="p">],</span>
|
|
<span class="s1">'rollup'</span><span class="o">:</span> <span class="mi">8</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'yahoo'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'yahoo/yahoo-min.js'</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'yahoo-dom-event'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'yahoo-dom-event/yahoo-dom-event.js'</span><span class="p">,</span>
|
|
<span class="s1">'supersedes'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'yahoo'</span><span class="p">,</span> <span class="s1">'event'</span><span class="p">,</span> <span class="s1">'dom'</span><span class="p">],</span>
|
|
<span class="s1">'rollup'</span><span class="o">:</span> <span class="mi">3</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'yuiloader'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'yuiloader/yuiloader-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'supersedes'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'yahoo'</span><span class="p">,</span> <span class="s1">'get'</span><span class="p">]</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'yuiloader-dom-event'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'yuiloader-dom-event/yuiloader-dom-event.js'</span><span class="p">,</span>
|
|
<span class="s1">'supersedes'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'yahoo'</span><span class="p">,</span> <span class="s1">'dom'</span><span class="p">,</span> <span class="s1">'event'</span><span class="p">,</span> <span class="s1">'get'</span><span class="p">,</span> <span class="s1">'yuiloader'</span><span class="p">,</span> <span class="s1">'yahoo-dom-event'</span><span class="p">],</span>
|
|
<span class="s1">'rollup'</span><span class="o">:</span> <span class="mi">5</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="s1">'yuitest'</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'js'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="s1">'yuitest/yuitest-min.js'</span><span class="p">,</span>
|
|
<span class="s1">'requires'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'logger'</span><span class="p">],</span>
|
|
<span class="s1">'optional'</span><span class="o">:</span> <span class="p">[</span><span class="s1">'event-simulate'</span><span class="p">],</span>
|
|
<span class="s1">'skinnable'</span><span class="o">:</span> <span class="kc">true</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
<span class="p">,</span>
|
|
|
|
<span class="nx">ObjectUtil</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="nx">appendArray</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">o</span><span class="p">,</span> <span class="nx">a</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">a</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">for</span> <span class="p">(</span><span class="kd">var</span> <span class="nx">i</span><span class="o">=</span><span class="mi">0</span><span class="p">;</span> <span class="nx">i</span><span class="o"><</span><span class="nx">a</span><span class="p">.</span><span class="nx">length</span><span class="p">;</span> <span class="nx">i</span><span class="o">=</span><span class="nx">i</span><span class="o">+</span><span class="mi">1</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">o</span><span class="p">[</span><span class="nx">a</span><span class="p">[</span><span class="nx">i</span><span class="p">]]</span> <span class="o">=</span> <span class="kc">true</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">keys</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">o</span><span class="p">,</span> <span class="nx">ordered</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="kd">var</span> <span class="nx">a</span><span class="o">=</span><span class="p">[],</span> <span class="nx">i</span><span class="p">;</span>
|
|
<span class="k">for</span> <span class="p">(</span><span class="nx">i</span> <span class="k">in</span> <span class="nx">o</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">lang</span><span class="p">.</span><span class="nx">hasOwnProperty</span><span class="p">(</span><span class="nx">o</span><span class="p">,</span> <span class="nx">i</span><span class="p">))</span> <span class="p">{</span>
|
|
<span class="nx">a</span><span class="p">.</span><span class="nx">push</span><span class="p">(</span><span class="nx">i</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">return</span> <span class="nx">a</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">ArrayUtil</span><span class="o">:</span> <span class="p">{</span>
|
|
|
|
<span class="nx">appendArray</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">a1</span><span class="p">,</span> <span class="nx">a2</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nb">Array</span><span class="p">.</span><span class="nx">prototype</span><span class="p">.</span><span class="nx">push</span><span class="p">.</span><span class="nx">apply</span><span class="p">(</span><span class="nx">a1</span><span class="p">,</span> <span class="nx">a2</span><span class="p">);</span>
|
|
<span class="cm">/*</span>
|
|
<span class="cm"> for (var i=0; i<a2.length; i=i+1) {</span>
|
|
<span class="cm"> a1.push(a2[i]);</span>
|
|
<span class="cm"> }</span>
|
|
<span class="cm"> */</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">indexOf</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">a</span><span class="p">,</span> <span class="nx">val</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">for</span> <span class="p">(</span><span class="kd">var</span> <span class="nx">i</span><span class="o">=</span><span class="mi">0</span><span class="p">;</span> <span class="nx">i</span><span class="o"><</span><span class="nx">a</span><span class="p">.</span><span class="nx">length</span><span class="p">;</span> <span class="nx">i</span><span class="o">=</span><span class="nx">i</span><span class="o">+</span><span class="mi">1</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">a</span><span class="p">[</span><span class="nx">i</span><span class="p">]</span> <span class="o">===</span> <span class="nx">val</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">return</span> <span class="nx">i</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">return</span> <span class="o">-</span><span class="mi">1</span><span class="p">;</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">toObject</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">a</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="kd">var</span> <span class="nx">o</span> <span class="o">=</span> <span class="p">{};</span>
|
|
<span class="k">for</span> <span class="p">(</span><span class="kd">var</span> <span class="nx">i</span><span class="o">=</span><span class="mi">0</span><span class="p">;</span> <span class="nx">i</span><span class="o"><</span><span class="nx">a</span><span class="p">.</span><span class="nx">length</span><span class="p">;</span> <span class="nx">i</span><span class="o">=</span><span class="nx">i</span><span class="o">+</span><span class="mi">1</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">o</span><span class="p">[</span><span class="nx">a</span><span class="p">[</span><span class="nx">i</span><span class="p">]]</span> <span class="o">=</span> <span class="kc">true</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">return</span> <span class="nx">o</span><span class="p">;</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="cm">/*</span>
|
|
<span class="cm"> * Returns a unique array. Does not maintain order, which is fine</span>
|
|
<span class="cm"> * for this application, and performs better than it would if it</span>
|
|
<span class="cm"> * did.</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">uniq</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">a</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">return</span> <span class="nx">YUI</span><span class="p">.</span><span class="nx">ObjectUtil</span><span class="p">.</span><span class="nx">keys</span><span class="p">(</span><span class="nx">YUI</span><span class="p">.</span><span class="nx">ArrayUtil</span><span class="p">.</span><span class="nx">toObject</span><span class="p">(</span><span class="nx">a</span><span class="p">));</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
<span class="p">};</span>
|
|
|
|
<span class="nx">YAHOO</span><span class="p">.</span><span class="nx">util</span><span class="p">.</span><span class="nx">YUILoader</span> <span class="o">=</span> <span class="kd">function</span><span class="p">(</span><span class="nx">o</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * Internal callback to handle multiple internal insert() calls</span>
|
|
<span class="cm"> * so that css is inserted prior to js</span>
|
|
<span class="cm"> * @property _internalCallback</span>
|
|
<span class="cm"> * @private</span>
|
|
<span class="cm"> */</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">_internalCallback</span> <span class="o">=</span> <span class="kc">null</span><span class="p">;</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * Use the YAHOO environment listener to detect script load. This</span>
|
|
<span class="cm"> * is only switched on for Safari 2.x and below.</span>
|
|
<span class="cm"> * @property _useYahooListener</span>
|
|
<span class="cm"> * @private</span>
|
|
<span class="cm"> */</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">_useYahooListener</span> <span class="o">=</span> <span class="kc">false</span><span class="p">;</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * Callback that will be executed when the loader is finished</span>
|
|
<span class="cm"> * with an insert</span>
|
|
<span class="cm"> * @method onSuccess</span>
|
|
<span class="cm"> * @type function</span>
|
|
<span class="cm"> */</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">onSuccess</span> <span class="o">=</span> <span class="kc">null</span><span class="p">;</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * Callback that will be executed if there is a failure</span>
|
|
<span class="cm"> * @method onFailure</span>
|
|
<span class="cm"> * @type function</span>
|
|
<span class="cm"> */</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">onFailure</span> <span class="o">=</span> <span class="nx">Y</span><span class="p">.</span><span class="nx">log</span><span class="p">;</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * Callback that will be executed each time a new module is loaded</span>
|
|
<span class="cm"> * @method onProgress</span>
|
|
<span class="cm"> * @type function</span>
|
|
<span class="cm"> */</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">onProgress</span> <span class="o">=</span> <span class="kc">null</span><span class="p">;</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * Callback that will be executed if a timeout occurs</span>
|
|
<span class="cm"> * @method onTimeout</span>
|
|
<span class="cm"> * @type function</span>
|
|
<span class="cm"> */</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">onTimeout</span> <span class="o">=</span> <span class="kc">null</span><span class="p">;</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * The execution scope for all callbacks</span>
|
|
<span class="cm"> * @property scope</span>
|
|
<span class="cm"> * @default this</span>
|
|
<span class="cm"> */</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">scope</span> <span class="o">=</span> <span class="k">this</span><span class="p">;</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * Data that is passed to all callbacks</span>
|
|
<span class="cm"> * @property data</span>
|
|
<span class="cm"> */</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">data</span> <span class="o">=</span> <span class="kc">null</span><span class="p">;</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * Node reference or id where new nodes should be inserted before</span>
|
|
<span class="cm"> * @property insertBefore</span>
|
|
<span class="cm"> * @type string|HTMLElement</span>
|
|
<span class="cm"> */</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">insertBefore</span> <span class="o">=</span> <span class="kc">null</span><span class="p">;</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * The charset attribute for inserted nodes</span>
|
|
<span class="cm"> * @property charset</span>
|
|
<span class="cm"> * @type string</span>
|
|
<span class="cm"> * @default utf-8</span>
|
|
<span class="cm"> */</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">charset</span> <span class="o">=</span> <span class="kc">null</span><span class="p">;</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * The name of the variable in a sandbox or script node </span>
|
|
<span class="cm"> * (for external script support in Safari 2.x and earlier)</span>
|
|
<span class="cm"> * to reference when the load is complete. If this variable </span>
|
|
<span class="cm"> * is not available in the specified scripts, the operation will </span>
|
|
<span class="cm"> * fail. </span>
|
|
<span class="cm"> * @property varName</span>
|
|
<span class="cm"> * @type string</span>
|
|
<span class="cm"> */</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">varName</span> <span class="o">=</span> <span class="kc">null</span><span class="p">;</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * The base directory.</span>
|
|
<span class="cm"> * @property base</span>
|
|
<span class="cm"> * @type string</span>
|
|
<span class="cm"> * @default http://yui.yahooapis.com/[YUI VERSION]/build/</span>
|
|
<span class="cm"> */</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">base</span> <span class="o">=</span> <span class="nx">YUI</span><span class="p">.</span><span class="nx">info</span><span class="p">.</span><span class="nx">base</span><span class="p">;</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * Base path for the combo service</span>
|
|
<span class="cm"> * @property comboBase</span>
|
|
<span class="cm"> * @type string</span>
|
|
<span class="cm"> * @default http://yui.yahooapis.com/combo?</span>
|
|
<span class="cm"> */</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">comboBase</span> <span class="o">=</span> <span class="nx">YUI</span><span class="p">.</span><span class="nx">info</span><span class="p">.</span><span class="nx">comboBase</span><span class="p">;</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * If configured, YUI will use the the combo handler on the</span>
|
|
<span class="cm"> * Yahoo! CDN to pontentially reduce the number of http requests</span>
|
|
<span class="cm"> * required.</span>
|
|
<span class="cm"> * @property combine</span>
|
|
<span class="cm"> * @type boolean</span>
|
|
<span class="cm"> * @default false</span>
|
|
<span class="cm"> */</span>
|
|
<span class="c1">// this.combine = (o && !('base' in o));</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">combine</span> <span class="o">=</span> <span class="kc">false</span><span class="p">;</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * Root path to prepend to module path for the combo</span>
|
|
<span class="cm"> * service</span>
|
|
<span class="cm"> * @property root</span>
|
|
<span class="cm"> * @type string</span>
|
|
<span class="cm"> * @default [YUI VERSION]/build/</span>
|
|
<span class="cm"> */</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">root</span> <span class="o">=</span> <span class="nx">YUI</span><span class="p">.</span><span class="nx">info</span><span class="p">.</span><span class="nx">root</span><span class="p">;</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * Timeout value in milliseconds. If set, this value will be used by</span>
|
|
<span class="cm"> * the get utility. the timeout event will fire if</span>
|
|
<span class="cm"> * a timeout occurs.</span>
|
|
<span class="cm"> * @property timeout</span>
|
|
<span class="cm"> * @type int</span>
|
|
<span class="cm"> */</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">timeout</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * A list of modules that should not be loaded, even if</span>
|
|
<span class="cm"> * they turn up in the dependency tree</span>
|
|
<span class="cm"> * @property ignore</span>
|
|
<span class="cm"> * @type string[]</span>
|
|
<span class="cm"> */</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">ignore</span> <span class="o">=</span> <span class="kc">null</span><span class="p">;</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * A list of modules that should always be loaded, even</span>
|
|
<span class="cm"> * if they have already been inserted into the page.</span>
|
|
<span class="cm"> * @property force</span>
|
|
<span class="cm"> * @type string[]</span>
|
|
<span class="cm"> */</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">force</span> <span class="o">=</span> <span class="kc">null</span><span class="p">;</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * Should we allow rollups</span>
|
|
<span class="cm"> * @property allowRollup</span>
|
|
<span class="cm"> * @type boolean</span>
|
|
<span class="cm"> * @default true</span>
|
|
<span class="cm"> */</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">allowRollup</span> <span class="o">=</span> <span class="kc">true</span><span class="p">;</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * A filter to apply to result urls. This filter will modify the default</span>
|
|
<span class="cm"> * path for all modules. The default path for the YUI library is the</span>
|
|
<span class="cm"> * minified version of the files (e.g., event-min.js). The filter property</span>
|
|
<span class="cm"> * can be a predefined filter or a custom filter. The valid predefined </span>
|
|
<span class="cm"> * filters are:</span>
|
|
<span class="cm"> * <dl></span>
|
|
<span class="cm"> * <dt>DEBUG</dt></span>
|
|
<span class="cm"> * <dd>Selects the debug versions of the library (e.g., event-debug.js).</span>
|
|
<span class="cm"> * This option will automatically include the logger widget</dd></span>
|
|
<span class="cm"> * <dt>RAW</dt></span>
|
|
<span class="cm"> * <dd>Selects the non-minified version of the library (e.g., event.js).</span>
|
|
<span class="cm"> * </dl></span>
|
|
<span class="cm"> * You can also define a custom filter, which must be an object literal </span>
|
|
<span class="cm"> * containing a search expression and a replace string:</span>
|
|
<span class="cm"> * <pre></span>
|
|
<span class="cm"> * myFilter: &#123; </span>
|
|
<span class="cm"> * 'searchExp': "-min\\.js", </span>
|
|
<span class="cm"> * 'replaceStr': "-debug.js"</span>
|
|
<span class="cm"> * &#125;</span>
|
|
<span class="cm"> * </pre></span>
|
|
<span class="cm"> * @property filter</span>
|
|
<span class="cm"> * @type string|{searchExp: string, replaceStr: string}</span>
|
|
<span class="cm"> */</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">filter</span> <span class="o">=</span> <span class="kc">null</span><span class="p">;</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * The list of requested modules</span>
|
|
<span class="cm"> * @property required</span>
|
|
<span class="cm"> * @type {string: boolean}</span>
|
|
<span class="cm"> */</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">required</span> <span class="o">=</span> <span class="p">{};</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * The library metadata</span>
|
|
<span class="cm"> * @property moduleInfo</span>
|
|
<span class="cm"> */</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">moduleInfo</span> <span class="o">=</span> <span class="nx">lang</span><span class="p">.</span><span class="nx">merge</span><span class="p">(</span><span class="nx">YUI</span><span class="p">.</span><span class="nx">info</span><span class="p">.</span><span class="nx">moduleInfo</span><span class="p">);</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * List of rollup files found in the library metadata</span>
|
|
<span class="cm"> * @property rollups</span>
|
|
<span class="cm"> */</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">rollups</span> <span class="o">=</span> <span class="kc">null</span><span class="p">;</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * Whether or not to load optional dependencies for </span>
|
|
<span class="cm"> * the requested modules</span>
|
|
<span class="cm"> * @property loadOptional</span>
|
|
<span class="cm"> * @type boolean</span>
|
|
<span class="cm"> * @default false</span>
|
|
<span class="cm"> */</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">loadOptional</span> <span class="o">=</span> <span class="kc">false</span><span class="p">;</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * All of the derived dependencies in sorted order, which</span>
|
|
<span class="cm"> * will be populated when either calculate() or insert()</span>
|
|
<span class="cm"> * is called</span>
|
|
<span class="cm"> * @property sorted</span>
|
|
<span class="cm"> * @type string[]</span>
|
|
<span class="cm"> */</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">sorted</span> <span class="o">=</span> <span class="p">[];</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * Set when beginning to compute the dependency tree. </span>
|
|
<span class="cm"> * Composed of what YAHOO reports to be loaded combined</span>
|
|
<span class="cm"> * with what has been loaded by the tool</span>
|
|
<span class="cm"> * @propery loaded</span>
|
|
<span class="cm"> * @type {string: boolean}</span>
|
|
<span class="cm"> */</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">loaded</span> <span class="o">=</span> <span class="p">{};</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * Flag to indicate the dependency tree needs to be recomputed</span>
|
|
<span class="cm"> * if insert is called again.</span>
|
|
<span class="cm"> * @property dirty</span>
|
|
<span class="cm"> * @type boolean</span>
|
|
<span class="cm"> * @default true</span>
|
|
<span class="cm"> */</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">dirty</span> <span class="o">=</span> <span class="kc">true</span><span class="p">;</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * List of modules inserted by the utility</span>
|
|
<span class="cm"> * @property inserted</span>
|
|
<span class="cm"> * @type {string: boolean}</span>
|
|
<span class="cm"> */</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">inserted</span> <span class="o">=</span> <span class="p">{};</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * Provides the information used to skin the skinnable components.</span>
|
|
<span class="cm"> * The following skin definition would result in 'skin1' and 'skin2'</span>
|
|
<span class="cm"> * being loaded for calendar (if calendar was requested), and</span>
|
|
<span class="cm"> * 'sam' for all other skinnable components:</span>
|
|
<span class="cm"> *</span>
|
|
<span class="cm"> * <code></span>
|
|
<span class="cm"> * skin: {</span>
|
|
<span class="cm"> *</span>
|
|
<span class="cm"> * // The default skin, which is automatically applied if not</span>
|
|
<span class="cm"> * // overriden by a component-specific skin definition.</span>
|
|
<span class="cm"> * // Change this in to apply a different skin globally</span>
|
|
<span class="cm"> * defaultSkin: 'sam', </span>
|
|
<span class="cm"> *</span>
|
|
<span class="cm"> * // This is combined with the loader base property to get</span>
|
|
<span class="cm"> * // the default root directory for a skin. ex:</span>
|
|
<span class="cm"> * // http://yui.yahooapis.com/2.3.0/build/assets/skins/sam/</span>
|
|
<span class="cm"> * base: 'assets/skins/',</span>
|
|
<span class="cm"> *</span>
|
|
<span class="cm"> * // The name of the rollup css file for the skin</span>
|
|
<span class="cm"> * path: 'skin.css',</span>
|
|
<span class="cm"> *</span>
|
|
<span class="cm"> * // The number of skinnable components requested that are</span>
|
|
<span class="cm"> * // required before using the rollup file rather than the</span>
|
|
<span class="cm"> * // individual component css files</span>
|
|
<span class="cm"> * rollup: 3,</span>
|
|
<span class="cm"> *</span>
|
|
<span class="cm"> * // Any component-specific overrides can be specified here,</span>
|
|
<span class="cm"> * // making it possible to load different skins for different</span>
|
|
<span class="cm"> * // components. It is possible to load more than one skin</span>
|
|
<span class="cm"> * // for a given component as well.</span>
|
|
<span class="cm"> * overrides: {</span>
|
|
<span class="cm"> * calendar: ['skin1', 'skin2']</span>
|
|
<span class="cm"> * }</span>
|
|
<span class="cm"> * }</span>
|
|
<span class="cm"> * </code></span>
|
|
<span class="cm"> * @property skin</span>
|
|
<span class="cm"> */</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">self</span> <span class="o">=</span> <span class="k">this</span><span class="p">;</span>
|
|
|
|
<span class="nx">env</span><span class="p">.</span><span class="nx">listeners</span><span class="p">.</span><span class="nx">push</span><span class="p">(</span><span class="kd">function</span><span class="p">(</span><span class="nx">m</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">self</span><span class="p">.</span><span class="nx">_useYahooListener</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="c1">//Y.log("YAHOO listener: " + m.name);</span>
|
|
<span class="nx">self</span><span class="p">.</span><span class="nx">loadNext</span><span class="p">(</span><span class="nx">m</span><span class="p">.</span><span class="nx">name</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
<span class="p">});</span>
|
|
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">skin</span> <span class="o">=</span> <span class="nx">lang</span><span class="p">.</span><span class="nx">merge</span><span class="p">(</span><span class="nx">YUI</span><span class="p">.</span><span class="nx">info</span><span class="p">.</span><span class="nx">skin</span><span class="p">);</span>
|
|
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">_config</span><span class="p">(</span><span class="nx">o</span><span class="p">);</span>
|
|
|
|
<span class="p">};</span>
|
|
|
|
<span class="nx">Y</span><span class="p">.</span><span class="nx">util</span><span class="p">.</span><span class="nx">YUILoader</span><span class="p">.</span><span class="nx">prototype</span> <span class="o">=</span> <span class="p">{</span>
|
|
|
|
<span class="nx">FILTERS</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="nx">RAW</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'searchExp'</span><span class="o">:</span> <span class="s2">"-min\\.js"</span><span class="p">,</span>
|
|
<span class="s1">'replaceStr'</span><span class="o">:</span> <span class="s2">".js"</span>
|
|
<span class="p">},</span>
|
|
<span class="nx">DEBUG</span><span class="o">:</span> <span class="p">{</span>
|
|
<span class="s1">'searchExp'</span><span class="o">:</span> <span class="s2">"-min\\.js"</span><span class="p">,</span>
|
|
<span class="s1">'replaceStr'</span><span class="o">:</span> <span class="s2">"-debug.js"</span>
|
|
<span class="p">}</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">SKIN_PREFIX</span><span class="o">:</span> <span class="s2">"skin-"</span><span class="p">,</span>
|
|
|
|
<span class="nx">_config</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">o</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="c1">// apply config values</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">o</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">for</span> <span class="p">(</span><span class="kd">var</span> <span class="nx">i</span> <span class="k">in</span> <span class="nx">o</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">lang</span><span class="p">.</span><span class="nx">hasOwnProperty</span><span class="p">(</span><span class="nx">o</span><span class="p">,</span> <span class="nx">i</span><span class="p">))</span> <span class="p">{</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">i</span> <span class="o">==</span> <span class="s2">"require"</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">require</span><span class="p">(</span><span class="nx">o</span><span class="p">[</span><span class="nx">i</span><span class="p">]);</span>
|
|
<span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
|
|
<span class="k">this</span><span class="p">[</span><span class="nx">i</span><span class="p">]</span> <span class="o">=</span> <span class="nx">o</span><span class="p">[</span><span class="nx">i</span><span class="p">];</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="c1">// fix filter</span>
|
|
<span class="kd">var</span> <span class="nx">f</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">filter</span><span class="p">;</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">lang</span><span class="p">.</span><span class="nx">isString</span><span class="p">(</span><span class="nx">f</span><span class="p">))</span> <span class="p">{</span>
|
|
<span class="nx">f</span> <span class="o">=</span> <span class="nx">f</span><span class="p">.</span><span class="nx">toUpperCase</span><span class="p">();</span>
|
|
|
|
<span class="c1">// the logger must be available in order to use the debug</span>
|
|
<span class="c1">// versions of the library</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">f</span> <span class="o">===</span> <span class="s2">"DEBUG"</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">require</span><span class="p">(</span><span class="s2">"logger"</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="c1">// hack to handle a a bug where LogWriter is being instantiated</span>
|
|
<span class="c1">// at load time, and the loader has no way to sort above it</span>
|
|
<span class="c1">// at the moment.</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">Y</span><span class="p">.</span><span class="nx">widget</span><span class="p">.</span><span class="nx">LogWriter</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">Y</span><span class="p">.</span><span class="nx">widget</span><span class="p">.</span><span class="nx">LogWriter</span> <span class="o">=</span> <span class="kd">function</span><span class="p">()</span> <span class="p">{</span>
|
|
<span class="k">return</span> <span class="nx">Y</span><span class="p">;</span>
|
|
<span class="p">};</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">filter</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">FILTERS</span><span class="p">[</span><span class="nx">f</span><span class="p">];</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">},</span>
|
|
|
|
<span class="cm">/** Add a new module to the component metadata. </span>
|
|
<span class="cm"> * <dl></span>
|
|
<span class="cm"> * <dt>name:</dt> <dd>required, the component name</dd></span>
|
|
<span class="cm"> * <dt>type:</dt> <dd>required, the component type (js or css)</dd></span>
|
|
<span class="cm"> * <dt>path:</dt> <dd>required, the path to the script from "base"</dd></span>
|
|
<span class="cm"> * <dt>requires:</dt> <dd>array of modules required by this component</dd></span>
|
|
<span class="cm"> * <dt>optional:</dt> <dd>array of optional modules for this component</dd></span>
|
|
<span class="cm"> * <dt>supersedes:</dt> <dd>array of the modules this component replaces</dd></span>
|
|
<span class="cm"> * <dt>after:</dt> <dd>array of modules the components which, if present, should be sorted above this one</dd></span>
|
|
<span class="cm"> * <dt>rollup:</dt> <dd>the number of superseded modules required for automatic rollup</dd></span>
|
|
<span class="cm"> * <dt>fullpath:</dt> <dd>If fullpath is specified, this is used instead of the configured base + path</dd></span>
|
|
<span class="cm"> * <dt>skinnable:</dt> <dd>flag to determine if skin assets should automatically be pulled in</dd></span>
|
|
<span class="cm"> * </dl></span>
|
|
<span class="cm"> * @method addModule</span>
|
|
<span class="cm"> * @param o An object containing the module data</span>
|
|
<span class="cm"> * @return {boolean} true if the module was added, false if </span>
|
|
<span class="cm"> * the object passed in did not provide all required attributes</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">addModule</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">o</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">o</span> <span class="o">||</span> <span class="o">!</span><span class="nx">o</span><span class="p">.</span><span class="nx">name</span> <span class="o">||</span> <span class="o">!</span><span class="nx">o</span><span class="p">.</span><span class="nx">type</span> <span class="o">||</span> <span class="p">(</span><span class="o">!</span><span class="nx">o</span><span class="p">.</span><span class="nx">path</span> <span class="o">&&</span> <span class="o">!</span><span class="nx">o</span><span class="p">.</span><span class="nx">fullpath</span><span class="p">))</span> <span class="p">{</span>
|
|
<span class="k">return</span> <span class="kc">false</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="nx">o</span><span class="p">.</span><span class="nx">ext</span> <span class="o">=</span> <span class="p">(</span><span class="s1">'ext'</span> <span class="k">in</span> <span class="nx">o</span><span class="p">)</span> <span class="o">?</span> <span class="nx">o</span><span class="p">.</span><span class="nx">ext</span> <span class="o">:</span> <span class="kc">true</span><span class="p">;</span>
|
|
<span class="nx">o</span><span class="p">.</span><span class="nx">requires</span> <span class="o">=</span> <span class="nx">o</span><span class="p">.</span><span class="nx">requires</span> <span class="o">||</span> <span class="p">[];</span>
|
|
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">moduleInfo</span><span class="p">[</span><span class="nx">o</span><span class="p">.</span><span class="nx">name</span><span class="p">]</span> <span class="o">=</span> <span class="nx">o</span><span class="p">;</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">dirty</span> <span class="o">=</span> <span class="kc">true</span><span class="p">;</span>
|
|
|
|
<span class="k">return</span> <span class="kc">true</span><span class="p">;</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * Add a requirement for one or more module</span>
|
|
<span class="cm"> * @method require</span>
|
|
<span class="cm"> * @param what {string[] | string*} the modules to load</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">require</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">what</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="kd">var</span> <span class="nx">a</span> <span class="o">=</span> <span class="p">(</span><span class="k">typeof</span> <span class="nx">what</span> <span class="o">===</span> <span class="s2">"string"</span><span class="p">)</span> <span class="o">?</span> <span class="nx">arguments</span> <span class="o">:</span> <span class="nx">what</span><span class="p">;</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">dirty</span> <span class="o">=</span> <span class="kc">true</span><span class="p">;</span>
|
|
<span class="nx">YUI</span><span class="p">.</span><span class="nx">ObjectUtil</span><span class="p">.</span><span class="nx">appendArray</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">required</span><span class="p">,</span> <span class="nx">a</span><span class="p">);</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * Adds the skin def to the module info</span>
|
|
<span class="cm"> * @method _addSkin</span>
|
|
<span class="cm"> * @param skin {string} the name of the skin</span>
|
|
<span class="cm"> * @param mod {string} the name of the module</span>
|
|
<span class="cm"> * @return {string} the module name for the skin</span>
|
|
<span class="cm"> * @private</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">_addSkin</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">skin</span><span class="p">,</span> <span class="nx">mod</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="c1">// Add a module definition for the skin rollup css</span>
|
|
<span class="kd">var</span> <span class="nx">name</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">formatSkin</span><span class="p">(</span><span class="nx">skin</span><span class="p">),</span> <span class="nx">info</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">moduleInfo</span><span class="p">,</span>
|
|
<span class="nx">sinf</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">skin</span><span class="p">,</span> <span class="nx">ext</span> <span class="o">=</span> <span class="nx">info</span><span class="p">[</span><span class="nx">mod</span><span class="p">]</span> <span class="o">&&</span> <span class="nx">info</span><span class="p">[</span><span class="nx">mod</span><span class="p">].</span><span class="nx">ext</span><span class="p">;</span>
|
|
|
|
<span class="c1">// Y.log('ext? ' + mod + ": " + ext);</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">info</span><span class="p">[</span><span class="nx">name</span><span class="p">])</span> <span class="p">{</span>
|
|
<span class="c1">// Y.log('adding skin ' + name);</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">addModule</span><span class="p">({</span>
|
|
<span class="s1">'name'</span><span class="o">:</span> <span class="nx">name</span><span class="p">,</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'css'</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="nx">sinf</span><span class="p">.</span><span class="nx">base</span> <span class="o">+</span> <span class="nx">skin</span> <span class="o">+</span> <span class="s1">'/'</span> <span class="o">+</span> <span class="nx">sinf</span><span class="p">.</span><span class="nx">path</span><span class="p">,</span>
|
|
<span class="c1">//'supersedes': '*',</span>
|
|
<span class="s1">'after'</span><span class="o">:</span> <span class="nx">sinf</span><span class="p">.</span><span class="nx">after</span><span class="p">,</span>
|
|
<span class="s1">'rollup'</span><span class="o">:</span> <span class="nx">sinf</span><span class="p">.</span><span class="nx">rollup</span><span class="p">,</span>
|
|
<span class="s1">'ext'</span><span class="o">:</span> <span class="nx">ext</span>
|
|
<span class="p">});</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="c1">// Add a module definition for the module-specific skin css</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">mod</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">name</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">formatSkin</span><span class="p">(</span><span class="nx">skin</span><span class="p">,</span> <span class="nx">mod</span><span class="p">);</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">info</span><span class="p">[</span><span class="nx">name</span><span class="p">])</span> <span class="p">{</span>
|
|
<span class="kd">var</span> <span class="nx">mdef</span> <span class="o">=</span> <span class="nx">info</span><span class="p">[</span><span class="nx">mod</span><span class="p">],</span> <span class="nx">pkg</span> <span class="o">=</span> <span class="nx">mdef</span><span class="p">.</span><span class="nx">pkg</span> <span class="o">||</span> <span class="nx">mod</span><span class="p">;</span>
|
|
<span class="c1">// Y.log('adding skin ' + name);</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">addModule</span><span class="p">({</span>
|
|
<span class="s1">'name'</span><span class="o">:</span> <span class="nx">name</span><span class="p">,</span>
|
|
<span class="s1">'type'</span><span class="o">:</span> <span class="s1">'css'</span><span class="p">,</span>
|
|
<span class="s1">'after'</span><span class="o">:</span> <span class="nx">sinf</span><span class="p">.</span><span class="nx">after</span><span class="p">,</span>
|
|
<span class="s1">'path'</span><span class="o">:</span> <span class="nx">pkg</span> <span class="o">+</span> <span class="s1">'/'</span> <span class="o">+</span> <span class="nx">sinf</span><span class="p">.</span><span class="nx">base</span> <span class="o">+</span> <span class="nx">skin</span> <span class="o">+</span> <span class="s1">'/'</span> <span class="o">+</span> <span class="nx">mod</span> <span class="o">+</span> <span class="s1">'.css'</span><span class="p">,</span>
|
|
<span class="s1">'ext'</span><span class="o">:</span> <span class="nx">ext</span>
|
|
<span class="p">});</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">return</span> <span class="nx">name</span><span class="p">;</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * Returns an object containing properties for all modules required</span>
|
|
<span class="cm"> * in order to load the requested module</span>
|
|
<span class="cm"> * @method getRequires</span>
|
|
<span class="cm"> * @param mod The module definition from moduleInfo</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">getRequires</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">mod</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">mod</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">return</span> <span class="p">[];</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="k">this</span><span class="p">.</span><span class="nx">dirty</span> <span class="o">&&</span> <span class="nx">mod</span><span class="p">.</span><span class="nx">expanded</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">return</span> <span class="nx">mod</span><span class="p">.</span><span class="nx">expanded</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="nx">mod</span><span class="p">.</span><span class="nx">requires</span><span class="o">=</span><span class="nx">mod</span><span class="p">.</span><span class="nx">requires</span> <span class="o">||</span> <span class="p">[];</span>
|
|
<span class="kd">var</span> <span class="nx">i</span><span class="p">,</span> <span class="nx">d</span><span class="o">=</span><span class="p">[],</span> <span class="nx">r</span><span class="o">=</span><span class="nx">mod</span><span class="p">.</span><span class="nx">requires</span><span class="p">,</span> <span class="nx">o</span><span class="o">=</span><span class="nx">mod</span><span class="p">.</span><span class="nx">optional</span><span class="p">,</span> <span class="nx">info</span><span class="o">=</span><span class="k">this</span><span class="p">.</span><span class="nx">moduleInfo</span><span class="p">,</span> <span class="nx">m</span><span class="p">;</span>
|
|
<span class="k">for</span> <span class="p">(</span><span class="nx">i</span><span class="o">=</span><span class="mi">0</span><span class="p">;</span> <span class="nx">i</span><span class="o"><</span><span class="nx">r</span><span class="p">.</span><span class="nx">length</span><span class="p">;</span> <span class="nx">i</span><span class="o">=</span><span class="nx">i</span><span class="o">+</span><span class="mi">1</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">d</span><span class="p">.</span><span class="nx">push</span><span class="p">(</span><span class="nx">r</span><span class="p">[</span><span class="nx">i</span><span class="p">]);</span>
|
|
<span class="nx">m</span> <span class="o">=</span> <span class="nx">info</span><span class="p">[</span><span class="nx">r</span><span class="p">[</span><span class="nx">i</span><span class="p">]];</span>
|
|
<span class="nx">YUI</span><span class="p">.</span><span class="nx">ArrayUtil</span><span class="p">.</span><span class="nx">appendArray</span><span class="p">(</span><span class="nx">d</span><span class="p">,</span> <span class="k">this</span><span class="p">.</span><span class="nx">getRequires</span><span class="p">(</span><span class="nx">m</span><span class="p">));</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">o</span> <span class="o">&&</span> <span class="k">this</span><span class="p">.</span><span class="nx">loadOptional</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">for</span> <span class="p">(</span><span class="nx">i</span><span class="o">=</span><span class="mi">0</span><span class="p">;</span> <span class="nx">i</span><span class="o"><</span><span class="nx">o</span><span class="p">.</span><span class="nx">length</span><span class="p">;</span> <span class="nx">i</span><span class="o">=</span><span class="nx">i</span><span class="o">+</span><span class="mi">1</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">d</span><span class="p">.</span><span class="nx">push</span><span class="p">(</span><span class="nx">o</span><span class="p">[</span><span class="nx">i</span><span class="p">]);</span>
|
|
<span class="nx">YUI</span><span class="p">.</span><span class="nx">ArrayUtil</span><span class="p">.</span><span class="nx">appendArray</span><span class="p">(</span><span class="nx">d</span><span class="p">,</span> <span class="k">this</span><span class="p">.</span><span class="nx">getRequires</span><span class="p">(</span><span class="nx">info</span><span class="p">[</span><span class="nx">o</span><span class="p">[</span><span class="nx">i</span><span class="p">]]));</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="nx">mod</span><span class="p">.</span><span class="nx">expanded</span> <span class="o">=</span> <span class="nx">YUI</span><span class="p">.</span><span class="nx">ArrayUtil</span><span class="p">.</span><span class="nx">uniq</span><span class="p">(</span><span class="nx">d</span><span class="p">);</span>
|
|
|
|
<span class="k">return</span> <span class="nx">mod</span><span class="p">.</span><span class="nx">expanded</span><span class="p">;</span>
|
|
<span class="p">},</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * Returns an object literal of the modules the supplied module satisfies</span>
|
|
<span class="cm"> * @method getProvides</span>
|
|
<span class="cm"> * @param name{string} The name of the module</span>
|
|
<span class="cm"> * @param notMe {string} don't add this module name, only include superseded modules</span>
|
|
<span class="cm"> * @return what this module provides</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">getProvides</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">name</span><span class="p">,</span> <span class="nx">notMe</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="kd">var</span> <span class="nx">addMe</span> <span class="o">=</span> <span class="o">!</span><span class="p">(</span><span class="nx">notMe</span><span class="p">),</span> <span class="nx">ckey</span> <span class="o">=</span> <span class="p">(</span><span class="nx">addMe</span><span class="p">)</span> <span class="o">?</span> <span class="nx">PROV</span> <span class="o">:</span> <span class="nx">SUPER</span><span class="p">,</span>
|
|
<span class="nx">m</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">moduleInfo</span><span class="p">[</span><span class="nx">name</span><span class="p">],</span> <span class="nx">o</span> <span class="o">=</span> <span class="p">{};</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">m</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">return</span> <span class="nx">o</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">m</span><span class="p">[</span><span class="nx">ckey</span><span class="p">])</span> <span class="p">{</span>
|
|
<span class="c1">// Y.log('cached: ' + name + ' ' + ckey + ' ' + lang.dump(this.moduleInfo[name][ckey], 0));</span>
|
|
<span class="k">return</span> <span class="nx">m</span><span class="p">[</span><span class="nx">ckey</span><span class="p">];</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">s</span> <span class="o">=</span> <span class="nx">m</span><span class="p">.</span><span class="nx">supersedes</span><span class="p">,</span> <span class="nx">done</span><span class="o">=</span><span class="p">{},</span> <span class="nx">me</span> <span class="o">=</span> <span class="k">this</span><span class="p">;</span>
|
|
|
|
<span class="c1">// use worker to break cycles</span>
|
|
<span class="kd">var</span> <span class="nx">add</span> <span class="o">=</span> <span class="kd">function</span><span class="p">(</span><span class="nx">mm</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">done</span><span class="p">[</span><span class="nx">mm</span><span class="p">])</span> <span class="p">{</span>
|
|
<span class="c1">// Y.log(name + ' provides worker trying: ' + mm);</span>
|
|
<span class="nx">done</span><span class="p">[</span><span class="nx">mm</span><span class="p">]</span> <span class="o">=</span> <span class="kc">true</span><span class="p">;</span>
|
|
<span class="c1">// we always want the return value normal behavior </span>
|
|
<span class="c1">// (provides) for superseded modules.</span>
|
|
<span class="nx">lang</span><span class="p">.</span><span class="nx">augmentObject</span><span class="p">(</span><span class="nx">o</span><span class="p">,</span> <span class="nx">me</span><span class="p">.</span><span class="nx">getProvides</span><span class="p">(</span><span class="nx">mm</span><span class="p">));</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="c1">// else {</span>
|
|
<span class="c1">// Y.log(name + ' provides worker skipping done: ' + mm);</span>
|
|
<span class="c1">// }</span>
|
|
<span class="p">};</span>
|
|
|
|
<span class="c1">// calculate superseded modules</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">s</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">for</span> <span class="p">(</span><span class="kd">var</span> <span class="nx">i</span><span class="o">=</span><span class="mi">0</span><span class="p">;</span> <span class="nx">i</span><span class="o"><</span><span class="nx">s</span><span class="p">.</span><span class="nx">length</span><span class="p">;</span> <span class="nx">i</span><span class="o">=</span><span class="nx">i</span><span class="o">+</span><span class="mi">1</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">add</span><span class="p">(</span><span class="nx">s</span><span class="p">[</span><span class="nx">i</span><span class="p">]);</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="c1">// supersedes cache</span>
|
|
<span class="nx">m</span><span class="p">[</span><span class="nx">SUPER</span><span class="p">]</span> <span class="o">=</span> <span class="nx">o</span><span class="p">;</span>
|
|
<span class="c1">// provides cache</span>
|
|
<span class="nx">m</span><span class="p">[</span><span class="nx">PROV</span><span class="p">]</span> <span class="o">=</span> <span class="nx">lang</span><span class="p">.</span><span class="nx">merge</span><span class="p">(</span><span class="nx">o</span><span class="p">);</span>
|
|
<span class="nx">m</span><span class="p">[</span><span class="nx">PROV</span><span class="p">][</span><span class="nx">name</span><span class="p">]</span> <span class="o">=</span> <span class="kc">true</span><span class="p">;</span>
|
|
|
|
<span class="c1">// Y.log(name + " supersedes " + lang.dump(m[SUPER], 0));</span>
|
|
<span class="c1">// Y.log(name + " provides " + lang.dump(m[PROV], 0));</span>
|
|
|
|
<span class="k">return</span> <span class="nx">m</span><span class="p">[</span><span class="nx">ckey</span><span class="p">];</span>
|
|
<span class="p">},</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * Calculates the dependency tree, the result is stored in the sorted </span>
|
|
<span class="cm"> * property</span>
|
|
<span class="cm"> * @method calculate</span>
|
|
<span class="cm"> * @param o optional options object</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">calculate</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">o</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">o</span> <span class="o">||</span> <span class="k">this</span><span class="p">.</span><span class="nx">dirty</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">_config</span><span class="p">(</span><span class="nx">o</span><span class="p">);</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">_setup</span><span class="p">();</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">_explode</span><span class="p">();</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">allowRollup</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">_rollup</span><span class="p">();</span>
|
|
<span class="p">}</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">_reduce</span><span class="p">();</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">_sort</span><span class="p">();</span>
|
|
|
|
<span class="c1">// Y.log("after calculate: " + lang.dump(this.required));</span>
|
|
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">dirty</span> <span class="o">=</span> <span class="kc">false</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * Investigates the current YUI configuration on the page. By default,</span>
|
|
<span class="cm"> * modules already detected will not be loaded again unless a force</span>
|
|
<span class="cm"> * option is encountered. Called by calculate()</span>
|
|
<span class="cm"> * @method _setup</span>
|
|
<span class="cm"> * @private</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">_setup</span><span class="o">:</span> <span class="kd">function</span><span class="p">()</span> <span class="p">{</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">info</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">moduleInfo</span><span class="p">,</span> <span class="nx">name</span><span class="p">,</span> <span class="nx">i</span><span class="p">,</span> <span class="nx">j</span><span class="p">;</span>
|
|
|
|
<span class="c1">// Create skin modules</span>
|
|
<span class="k">for</span> <span class="p">(</span><span class="nx">name</span> <span class="k">in</span> <span class="nx">info</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">lang</span><span class="p">.</span><span class="nx">hasOwnProperty</span><span class="p">(</span><span class="nx">info</span><span class="p">,</span> <span class="nx">name</span><span class="p">))</span> <span class="p">{</span>
|
|
<span class="kd">var</span> <span class="nx">m</span> <span class="o">=</span> <span class="nx">info</span><span class="p">[</span><span class="nx">name</span><span class="p">];</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">m</span> <span class="o">&&</span> <span class="nx">m</span><span class="p">.</span><span class="nx">skinnable</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="c1">// Y.log("skinning: " + name);</span>
|
|
<span class="kd">var</span> <span class="nx">o</span><span class="o">=</span><span class="k">this</span><span class="p">.</span><span class="nx">skin</span><span class="p">.</span><span class="nx">overrides</span><span class="p">,</span> <span class="nx">smod</span><span class="p">;</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">o</span> <span class="o">&&</span> <span class="nx">o</span><span class="p">[</span><span class="nx">name</span><span class="p">])</span> <span class="p">{</span>
|
|
<span class="k">for</span> <span class="p">(</span><span class="nx">i</span><span class="o">=</span><span class="mi">0</span><span class="p">;</span> <span class="nx">i</span><span class="o"><</span><span class="nx">o</span><span class="p">[</span><span class="nx">name</span><span class="p">].</span><span class="nx">length</span><span class="p">;</span> <span class="nx">i</span><span class="o">=</span><span class="nx">i</span><span class="o">+</span><span class="mi">1</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">smod</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">_addSkin</span><span class="p">(</span><span class="nx">o</span><span class="p">[</span><span class="nx">name</span><span class="p">][</span><span class="nx">i</span><span class="p">],</span> <span class="nx">name</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
|
|
<span class="nx">smod</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">_addSkin</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">skin</span><span class="p">.</span><span class="nx">defaultSkin</span><span class="p">,</span> <span class="nx">name</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="nx">m</span><span class="p">.</span><span class="nx">requires</span><span class="p">.</span><span class="nx">push</span><span class="p">(</span><span class="nx">smod</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">l</span> <span class="o">=</span> <span class="nx">lang</span><span class="p">.</span><span class="nx">merge</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">inserted</span><span class="p">);</span> <span class="c1">// shallow clone</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="k">this</span><span class="p">.</span><span class="nx">_sandbox</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">l</span> <span class="o">=</span> <span class="nx">lang</span><span class="p">.</span><span class="nx">merge</span><span class="p">(</span><span class="nx">l</span><span class="p">,</span> <span class="nx">env</span><span class="p">.</span><span class="nx">modules</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="c1">// Y.log("Already loaded stuff: " + lang.dump(l, 0));</span>
|
|
|
|
<span class="c1">// add the ignore list to the list of loaded packages</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">ignore</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">YUI</span><span class="p">.</span><span class="nx">ObjectUtil</span><span class="p">.</span><span class="nx">appendArray</span><span class="p">(</span><span class="nx">l</span><span class="p">,</span> <span class="k">this</span><span class="p">.</span><span class="nx">ignore</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="c1">// remove modules on the force list from the loaded list</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">force</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">for</span> <span class="p">(</span><span class="nx">i</span><span class="o">=</span><span class="mi">0</span><span class="p">;</span> <span class="nx">i</span><span class="o"><</span><span class="k">this</span><span class="p">.</span><span class="nx">force</span><span class="p">.</span><span class="nx">length</span><span class="p">;</span> <span class="nx">i</span><span class="o">=</span><span class="nx">i</span><span class="o">+</span><span class="mi">1</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">force</span><span class="p">[</span><span class="nx">i</span><span class="p">]</span> <span class="k">in</span> <span class="nx">l</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">delete</span> <span class="nx">l</span><span class="p">[</span><span class="k">this</span><span class="p">.</span><span class="nx">force</span><span class="p">[</span><span class="nx">i</span><span class="p">]];</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="c1">// expand the list to include superseded modules</span>
|
|
<span class="k">for</span> <span class="p">(</span><span class="nx">j</span> <span class="k">in</span> <span class="nx">l</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="c1">// Y.log("expanding: " + j);</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">lang</span><span class="p">.</span><span class="nx">hasOwnProperty</span><span class="p">(</span><span class="nx">l</span><span class="p">,</span> <span class="nx">j</span><span class="p">))</span> <span class="p">{</span>
|
|
<span class="nx">lang</span><span class="p">.</span><span class="nx">augmentObject</span><span class="p">(</span><span class="nx">l</span><span class="p">,</span> <span class="k">this</span><span class="p">.</span><span class="nx">getProvides</span><span class="p">(</span><span class="nx">j</span><span class="p">));</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="c1">// Y.log("loaded expanded: " + lang.dump(l, 0));</span>
|
|
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">loaded</span> <span class="o">=</span> <span class="nx">l</span><span class="p">;</span>
|
|
|
|
<span class="p">},</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * Inspects the required modules list looking for additional </span>
|
|
<span class="cm"> * dependencies. Expands the required list to include all </span>
|
|
<span class="cm"> * required modules. Called by calculate()</span>
|
|
<span class="cm"> * @method _explode</span>
|
|
<span class="cm"> * @private</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">_explode</span><span class="o">:</span> <span class="kd">function</span><span class="p">()</span> <span class="p">{</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">r</span><span class="o">=</span><span class="k">this</span><span class="p">.</span><span class="nx">required</span><span class="p">,</span> <span class="nx">i</span><span class="p">,</span> <span class="nx">mod</span><span class="p">;</span>
|
|
|
|
<span class="k">for</span> <span class="p">(</span><span class="nx">i</span> <span class="k">in</span> <span class="nx">r</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">lang</span><span class="p">.</span><span class="nx">hasOwnProperty</span><span class="p">(</span><span class="nx">r</span><span class="p">,</span> <span class="nx">i</span><span class="p">))</span> <span class="p">{</span>
|
|
<span class="nx">mod</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">moduleInfo</span><span class="p">[</span><span class="nx">i</span><span class="p">];</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">mod</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">req</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">getRequires</span><span class="p">(</span><span class="nx">mod</span><span class="p">);</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">req</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">YUI</span><span class="p">.</span><span class="nx">ObjectUtil</span><span class="p">.</span><span class="nx">appendArray</span><span class="p">(</span><span class="nx">r</span><span class="p">,</span> <span class="nx">req</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="cm">/*</span>
|
|
<span class="cm"> * @method _skin</span>
|
|
<span class="cm"> * @private</span>
|
|
<span class="cm"> * @deprecated</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">_skin</span><span class="o">:</span> <span class="kd">function</span><span class="p">()</span> <span class="p">{</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * Returns the skin module name for the specified skin name. If a</span>
|
|
<span class="cm"> * module name is supplied, the returned skin module name is </span>
|
|
<span class="cm"> * specific to the module passed in.</span>
|
|
<span class="cm"> * @method formatSkin</span>
|
|
<span class="cm"> * @param skin {string} the name of the skin</span>
|
|
<span class="cm"> * @param mod {string} optional: the name of a module to skin</span>
|
|
<span class="cm"> * @return {string} the full skin module name</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">formatSkin</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">skin</span><span class="p">,</span> <span class="nx">mod</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="kd">var</span> <span class="nx">s</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">SKIN_PREFIX</span> <span class="o">+</span> <span class="nx">skin</span><span class="p">;</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">mod</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">s</span> <span class="o">=</span> <span class="nx">s</span> <span class="o">+</span> <span class="s2">"-"</span> <span class="o">+</span> <span class="nx">mod</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">return</span> <span class="nx">s</span><span class="p">;</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * Reverses <code>formatSkin</code>, providing the skin name and</span>
|
|
<span class="cm"> * module name if the string matches the pattern for skins.</span>
|
|
<span class="cm"> * @method parseSkin</span>
|
|
<span class="cm"> * @param mod {string} the module name to parse</span>
|
|
<span class="cm"> * @return {skin: string, module: string} the parsed skin name </span>
|
|
<span class="cm"> * and module name, or null if the supplied string does not match</span>
|
|
<span class="cm"> * the skin pattern</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">parseSkin</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">mod</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">mod</span><span class="p">.</span><span class="nx">indexOf</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">SKIN_PREFIX</span><span class="p">)</span> <span class="o">===</span> <span class="mi">0</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="kd">var</span> <span class="nx">a</span> <span class="o">=</span> <span class="nx">mod</span><span class="p">.</span><span class="nx">split</span><span class="p">(</span><span class="s2">"-"</span><span class="p">);</span>
|
|
<span class="k">return</span> <span class="p">{</span><span class="nx">skin</span><span class="o">:</span> <span class="nx">a</span><span class="p">[</span><span class="mi">1</span><span class="p">],</span> <span class="nx">module</span><span class="o">:</span> <span class="nx">a</span><span class="p">[</span><span class="mi">2</span><span class="p">]};</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">return</span> <span class="kc">null</span><span class="p">;</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * Look for rollup packages to determine if all of the modules a</span>
|
|
<span class="cm"> * rollup supersedes are required. If so, include the rollup to</span>
|
|
<span class="cm"> * help reduce the total number of connections required. Called</span>
|
|
<span class="cm"> * by calculate()</span>
|
|
<span class="cm"> * @method _rollup</span>
|
|
<span class="cm"> * @private</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">_rollup</span><span class="o">:</span> <span class="kd">function</span><span class="p">()</span> <span class="p">{</span>
|
|
<span class="kd">var</span> <span class="nx">i</span><span class="p">,</span> <span class="nx">j</span><span class="p">,</span> <span class="nx">m</span><span class="p">,</span> <span class="nx">s</span><span class="p">,</span> <span class="nx">rollups</span><span class="o">=</span><span class="p">{},</span> <span class="nx">r</span><span class="o">=</span><span class="k">this</span><span class="p">.</span><span class="nx">required</span><span class="p">,</span> <span class="nx">roll</span><span class="p">,</span>
|
|
<span class="nx">info</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">moduleInfo</span><span class="p">;</span>
|
|
|
|
<span class="c1">// find and cache rollup modules</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">dirty</span> <span class="o">||</span> <span class="o">!</span><span class="k">this</span><span class="p">.</span><span class="nx">rollups</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">for</span> <span class="p">(</span><span class="nx">i</span> <span class="k">in</span> <span class="nx">info</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">lang</span><span class="p">.</span><span class="nx">hasOwnProperty</span><span class="p">(</span><span class="nx">info</span><span class="p">,</span> <span class="nx">i</span><span class="p">))</span> <span class="p">{</span>
|
|
<span class="nx">m</span> <span class="o">=</span> <span class="nx">info</span><span class="p">[</span><span class="nx">i</span><span class="p">];</span>
|
|
<span class="c1">//if (m && m.rollup && m.supersedes) {</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">m</span> <span class="o">&&</span> <span class="nx">m</span><span class="p">.</span><span class="nx">rollup</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">rollups</span><span class="p">[</span><span class="nx">i</span><span class="p">]</span> <span class="o">=</span> <span class="nx">m</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">rollups</span> <span class="o">=</span> <span class="nx">rollups</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="c1">// make as many passes as needed to pick up rollup rollups</span>
|
|
<span class="k">for</span> <span class="p">(;;)</span> <span class="p">{</span>
|
|
<span class="kd">var</span> <span class="nx">rolled</span> <span class="o">=</span> <span class="kc">false</span><span class="p">;</span>
|
|
|
|
<span class="c1">// go through the rollup candidates</span>
|
|
<span class="k">for</span> <span class="p">(</span><span class="nx">i</span> <span class="k">in</span> <span class="nx">rollups</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="c1">// there can be only one</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">r</span><span class="p">[</span><span class="nx">i</span><span class="p">]</span> <span class="o">&&</span> <span class="o">!</span><span class="k">this</span><span class="p">.</span><span class="nx">loaded</span><span class="p">[</span><span class="nx">i</span><span class="p">])</span> <span class="p">{</span>
|
|
<span class="nx">m</span> <span class="o">=</span><span class="nx">info</span><span class="p">[</span><span class="nx">i</span><span class="p">];</span> <span class="nx">s</span> <span class="o">=</span> <span class="nx">m</span><span class="p">.</span><span class="nx">supersedes</span><span class="p">;</span> <span class="nx">roll</span><span class="o">=</span><span class="kc">false</span><span class="p">;</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">m</span><span class="p">.</span><span class="nx">rollup</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">continue</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">skin</span> <span class="o">=</span> <span class="p">(</span><span class="nx">m</span><span class="p">.</span><span class="nx">ext</span><span class="p">)</span> <span class="o">?</span> <span class="kc">false</span> <span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">parseSkin</span><span class="p">(</span><span class="nx">i</span><span class="p">),</span> <span class="nx">c</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span>
|
|
|
|
<span class="c1">// Y.log('skin? ' + i + ": " + skin);</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">skin</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">for</span> <span class="p">(</span><span class="nx">j</span> <span class="k">in</span> <span class="nx">r</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">lang</span><span class="p">.</span><span class="nx">hasOwnProperty</span><span class="p">(</span><span class="nx">r</span><span class="p">,</span> <span class="nx">j</span><span class="p">))</span> <span class="p">{</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">i</span> <span class="o">!==</span> <span class="nx">j</span> <span class="o">&&</span> <span class="k">this</span><span class="p">.</span><span class="nx">parseSkin</span><span class="p">(</span><span class="nx">j</span><span class="p">))</span> <span class="p">{</span>
|
|
<span class="nx">c</span><span class="o">++</span><span class="p">;</span>
|
|
<span class="nx">roll</span> <span class="o">=</span> <span class="p">(</span><span class="nx">c</span> <span class="o">>=</span> <span class="nx">m</span><span class="p">.</span><span class="nx">rollup</span><span class="p">);</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">roll</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="c1">// Y.log("skin rollup " + lang.dump(r));</span>
|
|
<span class="k">break</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
|
|
|
|
<span class="c1">// check the threshold</span>
|
|
<span class="k">for</span> <span class="p">(</span><span class="nx">j</span><span class="o">=</span><span class="mi">0</span><span class="p">;</span><span class="nx">j</span><span class="o"><</span><span class="nx">s</span><span class="p">.</span><span class="nx">length</span><span class="p">;</span><span class="nx">j</span><span class="o">=</span><span class="nx">j</span><span class="o">+</span><span class="mi">1</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="c1">// if the superseded module is loaded, we can't load the rollup</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">loaded</span><span class="p">[</span><span class="nx">s</span><span class="p">[</span><span class="nx">j</span><span class="p">]]</span> <span class="o">&&</span> <span class="p">(</span><span class="o">!</span><span class="nx">YUI</span><span class="p">.</span><span class="nx">dupsAllowed</span><span class="p">[</span><span class="nx">s</span><span class="p">[</span><span class="nx">j</span><span class="p">]]))</span> <span class="p">{</span>
|
|
<span class="nx">roll</span> <span class="o">=</span> <span class="kc">false</span><span class="p">;</span>
|
|
<span class="k">break</span><span class="p">;</span>
|
|
<span class="c1">// increment the counter if this module is required. if we are</span>
|
|
<span class="c1">// beyond the rollup threshold, we will use the rollup module</span>
|
|
<span class="p">}</span> <span class="k">else</span> <span class="k">if</span> <span class="p">(</span><span class="nx">r</span><span class="p">[</span><span class="nx">s</span><span class="p">[</span><span class="nx">j</span><span class="p">]])</span> <span class="p">{</span>
|
|
<span class="nx">c</span><span class="o">++</span><span class="p">;</span>
|
|
<span class="nx">roll</span> <span class="o">=</span> <span class="p">(</span><span class="nx">c</span> <span class="o">>=</span> <span class="nx">m</span><span class="p">.</span><span class="nx">rollup</span><span class="p">);</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">roll</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="c1">// Y.log("over thresh " + c + ", " + lang.dump(r));</span>
|
|
<span class="k">break</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">roll</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="c1">// Y.log("rollup: " + i + ", " + lang.dump(this, 1));</span>
|
|
<span class="c1">// add the rollup</span>
|
|
<span class="nx">r</span><span class="p">[</span><span class="nx">i</span><span class="p">]</span> <span class="o">=</span> <span class="kc">true</span><span class="p">;</span>
|
|
<span class="nx">rolled</span> <span class="o">=</span> <span class="kc">true</span><span class="p">;</span>
|
|
|
|
<span class="c1">// expand the rollup's dependencies</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">getRequires</span><span class="p">(</span><span class="nx">m</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="c1">// if we made it here w/o rolling up something, we are done</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">rolled</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">break</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * Remove superceded modules and loaded modules. Called by</span>
|
|
<span class="cm"> * calculate() after we have the mega list of all dependencies</span>
|
|
<span class="cm"> * @method _reduce</span>
|
|
<span class="cm"> * @private</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">_reduce</span><span class="o">:</span> <span class="kd">function</span><span class="p">()</span> <span class="p">{</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">i</span><span class="p">,</span> <span class="nx">j</span><span class="p">,</span> <span class="nx">s</span><span class="p">,</span> <span class="nx">m</span><span class="p">,</span> <span class="nx">r</span><span class="o">=</span><span class="k">this</span><span class="p">.</span><span class="nx">required</span><span class="p">;</span>
|
|
<span class="k">for</span> <span class="p">(</span><span class="nx">i</span> <span class="k">in</span> <span class="nx">r</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="c1">// remove if already loaded</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">i</span> <span class="k">in</span> <span class="k">this</span><span class="p">.</span><span class="nx">loaded</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">delete</span> <span class="nx">r</span><span class="p">[</span><span class="nx">i</span><span class="p">];</span>
|
|
|
|
<span class="c1">// remove anything this module supersedes</span>
|
|
<span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">skinDef</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">parseSkin</span><span class="p">(</span><span class="nx">i</span><span class="p">);</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">skinDef</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="c1">//YAHOO.log("skin found in reduce: " + skinDef.skin + ", " + skinDef.module);</span>
|
|
<span class="c1">// the skin rollup will not have a module name</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">skinDef</span><span class="p">.</span><span class="nx">module</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="kd">var</span> <span class="nx">skin_pre</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">SKIN_PREFIX</span> <span class="o">+</span> <span class="nx">skinDef</span><span class="p">.</span><span class="nx">skin</span><span class="p">;</span>
|
|
<span class="c1">//YAHOO.log("skin_pre: " + skin_pre);</span>
|
|
<span class="k">for</span> <span class="p">(</span><span class="nx">j</span> <span class="k">in</span> <span class="nx">r</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">lang</span><span class="p">.</span><span class="nx">hasOwnProperty</span><span class="p">(</span><span class="nx">r</span><span class="p">,</span> <span class="nx">j</span><span class="p">))</span> <span class="p">{</span>
|
|
<span class="nx">m</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">moduleInfo</span><span class="p">[</span><span class="nx">j</span><span class="p">];</span>
|
|
<span class="kd">var</span> <span class="nx">ext</span> <span class="o">=</span> <span class="nx">m</span> <span class="o">&&</span> <span class="nx">m</span><span class="p">.</span><span class="nx">ext</span><span class="p">;</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">ext</span> <span class="o">&&</span> <span class="nx">j</span> <span class="o">!==</span> <span class="nx">i</span> <span class="o">&&</span> <span class="nx">j</span><span class="p">.</span><span class="nx">indexOf</span><span class="p">(</span><span class="nx">skin_pre</span><span class="p">)</span> <span class="o">></span> <span class="o">-</span><span class="mi">1</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="c1">// Y.log ("removing component skin: " + j);</span>
|
|
<span class="k">delete</span> <span class="nx">r</span><span class="p">[</span><span class="nx">j</span><span class="p">];</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
|
|
|
|
<span class="nx">m</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">moduleInfo</span><span class="p">[</span><span class="nx">i</span><span class="p">];</span>
|
|
<span class="nx">s</span> <span class="o">=</span> <span class="nx">m</span> <span class="o">&&</span> <span class="nx">m</span><span class="p">.</span><span class="nx">supersedes</span><span class="p">;</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">s</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">for</span> <span class="p">(</span><span class="nx">j</span><span class="o">=</span><span class="mi">0</span><span class="p">;</span> <span class="nx">j</span><span class="o"><</span><span class="nx">s</span><span class="p">.</span><span class="nx">length</span><span class="p">;</span> <span class="nx">j</span><span class="o">=</span><span class="nx">j</span><span class="o">+</span><span class="mi">1</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">s</span><span class="p">[</span><span class="nx">j</span><span class="p">]</span> <span class="k">in</span> <span class="nx">r</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">delete</span> <span class="nx">r</span><span class="p">[</span><span class="nx">s</span><span class="p">[</span><span class="nx">j</span><span class="p">]];</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">_onFailure</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">msg</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">YAHOO</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="s1">'Failure'</span><span class="p">,</span> <span class="s1">'info'</span><span class="p">,</span> <span class="s1">'loader'</span><span class="p">);</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">f</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">onFailure</span><span class="p">;</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">f</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">f</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">scope</span><span class="p">,</span> <span class="p">{</span>
|
|
<span class="nx">msg</span><span class="o">:</span> <span class="s1">'failure: '</span> <span class="o">+</span> <span class="nx">msg</span><span class="p">,</span>
|
|
<span class="nx">data</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">data</span><span class="p">,</span>
|
|
<span class="nx">success</span><span class="o">:</span> <span class="kc">false</span>
|
|
<span class="p">});</span>
|
|
<span class="p">}</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">_onTimeout</span><span class="o">:</span> <span class="kd">function</span><span class="p">()</span> <span class="p">{</span>
|
|
<span class="nx">YAHOO</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="s1">'Timeout'</span><span class="p">,</span> <span class="s1">'info'</span><span class="p">,</span> <span class="s1">'loader'</span><span class="p">);</span>
|
|
<span class="kd">var</span> <span class="nx">f</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">onTimeout</span><span class="p">;</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">f</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">f</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">scope</span><span class="p">,</span> <span class="p">{</span>
|
|
<span class="nx">msg</span><span class="o">:</span> <span class="s1">'timeout'</span><span class="p">,</span>
|
|
<span class="nx">data</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">data</span><span class="p">,</span>
|
|
<span class="nx">success</span><span class="o">:</span> <span class="kc">false</span>
|
|
<span class="p">});</span>
|
|
<span class="p">}</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * Sorts the dependency tree. The last step of calculate()</span>
|
|
<span class="cm"> * @method _sort</span>
|
|
<span class="cm"> * @private</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">_sort</span><span class="o">:</span> <span class="kd">function</span><span class="p">()</span> <span class="p">{</span>
|
|
<span class="c1">// create an indexed list</span>
|
|
<span class="kd">var</span> <span class="nx">s</span><span class="o">=</span><span class="p">[],</span> <span class="nx">info</span><span class="o">=</span><span class="k">this</span><span class="p">.</span><span class="nx">moduleInfo</span><span class="p">,</span> <span class="nx">loaded</span><span class="o">=</span><span class="k">this</span><span class="p">.</span><span class="nx">loaded</span><span class="p">,</span>
|
|
<span class="nx">checkOptional</span><span class="o">=!</span><span class="k">this</span><span class="p">.</span><span class="nx">loadOptional</span><span class="p">,</span> <span class="nx">me</span> <span class="o">=</span> <span class="k">this</span><span class="p">;</span>
|
|
|
|
<span class="c1">// returns true if b is not loaded, and is required</span>
|
|
<span class="c1">// directly or by means of modules it supersedes.</span>
|
|
<span class="kd">var</span> <span class="nx">requires</span> <span class="o">=</span> <span class="kd">function</span><span class="p">(</span><span class="nx">aa</span><span class="p">,</span> <span class="nx">bb</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">mm</span><span class="o">=</span><span class="nx">info</span><span class="p">[</span><span class="nx">aa</span><span class="p">];</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">loaded</span><span class="p">[</span><span class="nx">bb</span><span class="p">]</span> <span class="o">||</span> <span class="o">!</span><span class="nx">mm</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">return</span> <span class="kc">false</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">ii</span><span class="p">,</span>
|
|
<span class="nx">rr</span> <span class="o">=</span> <span class="nx">mm</span><span class="p">.</span><span class="nx">expanded</span><span class="p">,</span>
|
|
<span class="nx">after</span> <span class="o">=</span> <span class="nx">mm</span><span class="p">.</span><span class="nx">after</span><span class="p">,</span>
|
|
<span class="nx">other</span> <span class="o">=</span> <span class="nx">info</span><span class="p">[</span><span class="nx">bb</span><span class="p">],</span>
|
|
<span class="nx">optional</span> <span class="o">=</span> <span class="nx">mm</span><span class="p">.</span><span class="nx">optional</span><span class="p">;</span>
|
|
|
|
|
|
<span class="c1">// check if this module requires the other directly</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">rr</span> <span class="o">&&</span> <span class="nx">YUI</span><span class="p">.</span><span class="nx">ArrayUtil</span><span class="p">.</span><span class="nx">indexOf</span><span class="p">(</span><span class="nx">rr</span><span class="p">,</span> <span class="nx">bb</span><span class="p">)</span> <span class="o">></span> <span class="o">-</span><span class="mi">1</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">return</span> <span class="kc">true</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="c1">// check if this module should be sorted after the other</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">after</span> <span class="o">&&</span> <span class="nx">YUI</span><span class="p">.</span><span class="nx">ArrayUtil</span><span class="p">.</span><span class="nx">indexOf</span><span class="p">(</span><span class="nx">after</span><span class="p">,</span> <span class="nx">bb</span><span class="p">)</span> <span class="o">></span> <span class="o">-</span><span class="mi">1</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">return</span> <span class="kc">true</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="c1">// if loadOptional is not specified, optional dependencies still</span>
|
|
<span class="c1">// must be sorted correctly when present.</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">checkOptional</span> <span class="o">&&</span> <span class="nx">optional</span> <span class="o">&&</span> <span class="nx">YUI</span><span class="p">.</span><span class="nx">ArrayUtil</span><span class="p">.</span><span class="nx">indexOf</span><span class="p">(</span><span class="nx">optional</span><span class="p">,</span> <span class="nx">bb</span><span class="p">)</span> <span class="o">></span> <span class="o">-</span><span class="mi">1</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">return</span> <span class="kc">true</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="c1">// check if this module requires one the other supersedes</span>
|
|
<span class="kd">var</span> <span class="nx">ss</span><span class="o">=</span><span class="nx">info</span><span class="p">[</span><span class="nx">bb</span><span class="p">]</span> <span class="o">&&</span> <span class="nx">info</span><span class="p">[</span><span class="nx">bb</span><span class="p">].</span><span class="nx">supersedes</span><span class="p">;</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">ss</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">for</span> <span class="p">(</span><span class="nx">ii</span><span class="o">=</span><span class="mi">0</span><span class="p">;</span> <span class="nx">ii</span><span class="o"><</span><span class="nx">ss</span><span class="p">.</span><span class="nx">length</span><span class="p">;</span> <span class="nx">ii</span><span class="o">=</span><span class="nx">ii</span><span class="o">+</span><span class="mi">1</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">requires</span><span class="p">(</span><span class="nx">aa</span><span class="p">,</span> <span class="nx">ss</span><span class="p">[</span><span class="nx">ii</span><span class="p">]))</span> <span class="p">{</span>
|
|
<span class="k">return</span> <span class="kc">true</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="c1">// var ss=me.getProvides(bb, true);</span>
|
|
<span class="c1">// if (ss) {</span>
|
|
<span class="c1">// for (ii in ss) {</span>
|
|
<span class="c1">// if (requires(aa, ii)) {</span>
|
|
<span class="c1">// return true;</span>
|
|
<span class="c1">// }</span>
|
|
<span class="c1">// }</span>
|
|
<span class="c1">// }</span>
|
|
|
|
<span class="c1">// external css files should be sorted below yui css</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">mm</span><span class="p">.</span><span class="nx">ext</span> <span class="o">&&</span> <span class="nx">mm</span><span class="p">.</span><span class="nx">type</span> <span class="o">==</span> <span class="s1">'css'</span> <span class="o">&&</span> <span class="o">!</span><span class="nx">other</span><span class="p">.</span><span class="nx">ext</span> <span class="o">&&</span> <span class="nx">other</span><span class="p">.</span><span class="nx">type</span> <span class="o">==</span> <span class="s1">'css'</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">return</span> <span class="kc">true</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">return</span> <span class="kc">false</span><span class="p">;</span>
|
|
<span class="p">};</span>
|
|
|
|
<span class="c1">// get the required items out of the obj into an array so we</span>
|
|
<span class="c1">// can sort</span>
|
|
<span class="k">for</span> <span class="p">(</span><span class="kd">var</span> <span class="nx">i</span> <span class="k">in</span> <span class="k">this</span><span class="p">.</span><span class="nx">required</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">lang</span><span class="p">.</span><span class="nx">hasOwnProperty</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">required</span><span class="p">,</span> <span class="nx">i</span><span class="p">))</span> <span class="p">{</span>
|
|
<span class="nx">s</span><span class="p">.</span><span class="nx">push</span><span class="p">(</span><span class="nx">i</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="c1">// pointer to the first unsorted item</span>
|
|
<span class="kd">var</span> <span class="nx">p</span><span class="o">=</span><span class="mi">0</span><span class="p">;</span>
|
|
|
|
<span class="c1">// keep going until we make a pass without moving anything</span>
|
|
<span class="k">for</span> <span class="p">(;;)</span> <span class="p">{</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">l</span><span class="o">=</span><span class="nx">s</span><span class="p">.</span><span class="nx">length</span><span class="p">,</span> <span class="nx">a</span><span class="p">,</span> <span class="nx">b</span><span class="p">,</span> <span class="nx">j</span><span class="p">,</span> <span class="nx">k</span><span class="p">,</span> <span class="nx">moved</span><span class="o">=</span><span class="kc">false</span><span class="p">;</span>
|
|
|
|
<span class="c1">// start the loop after items that are already sorted</span>
|
|
<span class="k">for</span> <span class="p">(</span><span class="nx">j</span><span class="o">=</span><span class="nx">p</span><span class="p">;</span> <span class="nx">j</span><span class="o"><</span><span class="nx">l</span><span class="p">;</span> <span class="nx">j</span><span class="o">=</span><span class="nx">j</span><span class="o">+</span><span class="mi">1</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="c1">// check the next module on the list to see if its</span>
|
|
<span class="c1">// dependencies have been met</span>
|
|
<span class="nx">a</span> <span class="o">=</span> <span class="nx">s</span><span class="p">[</span><span class="nx">j</span><span class="p">];</span>
|
|
|
|
<span class="c1">// check everything below current item and move if we</span>
|
|
<span class="c1">// find a requirement for the current item</span>
|
|
<span class="k">for</span> <span class="p">(</span><span class="nx">k</span><span class="o">=</span><span class="nx">j</span><span class="o">+</span><span class="mi">1</span><span class="p">;</span> <span class="nx">k</span><span class="o"><</span><span class="nx">l</span><span class="p">;</span> <span class="nx">k</span><span class="o">=</span><span class="nx">k</span><span class="o">+</span><span class="mi">1</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">requires</span><span class="p">(</span><span class="nx">a</span><span class="p">,</span> <span class="nx">s</span><span class="p">[</span><span class="nx">k</span><span class="p">]))</span> <span class="p">{</span>
|
|
|
|
<span class="c1">// extract the dependency so we can move it up</span>
|
|
<span class="nx">b</span> <span class="o">=</span> <span class="nx">s</span><span class="p">.</span><span class="nx">splice</span><span class="p">(</span><span class="nx">k</span><span class="p">,</span> <span class="mi">1</span><span class="p">);</span>
|
|
|
|
<span class="c1">// insert the dependency above the item that </span>
|
|
<span class="c1">// requires it</span>
|
|
<span class="nx">s</span><span class="p">.</span><span class="nx">splice</span><span class="p">(</span><span class="nx">j</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="nx">b</span><span class="p">[</span><span class="mi">0</span><span class="p">]);</span>
|
|
|
|
<span class="nx">moved</span> <span class="o">=</span> <span class="kc">true</span><span class="p">;</span>
|
|
<span class="k">break</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="c1">// jump out of loop if we moved something</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">moved</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">break</span><span class="p">;</span>
|
|
<span class="c1">// this item is sorted, move our pointer and keep going</span>
|
|
<span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
|
|
<span class="nx">p</span> <span class="o">=</span> <span class="nx">p</span> <span class="o">+</span> <span class="mi">1</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="c1">// when we make it here and moved is false, we are </span>
|
|
<span class="c1">// finished sorting</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">moved</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">break</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">sorted</span> <span class="o">=</span> <span class="nx">s</span><span class="p">;</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">toString</span><span class="o">:</span> <span class="kd">function</span><span class="p">()</span> <span class="p">{</span>
|
|
<span class="kd">var</span> <span class="nx">o</span> <span class="o">=</span> <span class="p">{</span>
|
|
<span class="nx">type</span><span class="o">:</span> <span class="s2">"YUILoader"</span><span class="p">,</span>
|
|
<span class="nx">base</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">base</span><span class="p">,</span>
|
|
<span class="nx">filter</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">filter</span><span class="p">,</span>
|
|
<span class="nx">required</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">required</span><span class="p">,</span>
|
|
<span class="nx">loaded</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">loaded</span><span class="p">,</span>
|
|
<span class="nx">inserted</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">inserted</span>
|
|
<span class="p">};</span>
|
|
|
|
<span class="nx">lang</span><span class="p">.</span><span class="nx">dump</span><span class="p">(</span><span class="nx">o</span><span class="p">,</span> <span class="mi">1</span><span class="p">);</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">_combine</span><span class="o">:</span> <span class="kd">function</span><span class="p">()</span> <span class="p">{</span>
|
|
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">_combining</span> <span class="o">=</span> <span class="p">[];</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">self</span> <span class="o">=</span> <span class="k">this</span><span class="p">,</span>
|
|
<span class="nx">s</span><span class="o">=</span><span class="k">this</span><span class="p">.</span><span class="nx">sorted</span><span class="p">,</span>
|
|
<span class="nx">len</span> <span class="o">=</span> <span class="nx">s</span><span class="p">.</span><span class="nx">length</span><span class="p">,</span>
|
|
<span class="nx">js</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">comboBase</span><span class="p">,</span>
|
|
<span class="nx">css</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">comboBase</span><span class="p">,</span>
|
|
<span class="nx">target</span><span class="p">,</span>
|
|
<span class="nx">startLen</span> <span class="o">=</span> <span class="nx">js</span><span class="p">.</span><span class="nx">length</span><span class="p">,</span>
|
|
<span class="nx">i</span><span class="p">,</span> <span class="nx">m</span><span class="p">,</span> <span class="nx">type</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">loadType</span><span class="p">;</span>
|
|
|
|
<span class="nx">YAHOO</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="s1">'type '</span> <span class="o">+</span> <span class="nx">type</span><span class="p">);</span>
|
|
|
|
<span class="k">for</span> <span class="p">(</span><span class="nx">i</span><span class="o">=</span><span class="mi">0</span><span class="p">;</span> <span class="nx">i</span><span class="o"><</span><span class="nx">len</span><span class="p">;</span> <span class="nx">i</span><span class="o">=</span><span class="nx">i</span><span class="o">+</span><span class="mi">1</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="nx">m</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">moduleInfo</span><span class="p">[</span><span class="nx">s</span><span class="p">[</span><span class="nx">i</span><span class="p">]];</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">m</span> <span class="o">&&</span> <span class="o">!</span><span class="nx">m</span><span class="p">.</span><span class="nx">ext</span> <span class="o">&&</span> <span class="p">(</span><span class="o">!</span><span class="nx">type</span> <span class="o">||</span> <span class="nx">type</span> <span class="o">===</span> <span class="nx">m</span><span class="p">.</span><span class="nx">type</span><span class="p">))</span> <span class="p">{</span>
|
|
|
|
<span class="nx">target</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">root</span> <span class="o">+</span> <span class="nx">m</span><span class="p">.</span><span class="nx">path</span><span class="p">;</span>
|
|
|
|
<span class="c1">// if (i < len-1) {</span>
|
|
<span class="nx">target</span> <span class="o">+=</span> <span class="s1">'&'</span><span class="p">;</span>
|
|
<span class="c1">// }</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">m</span><span class="p">.</span><span class="nx">type</span> <span class="o">==</span> <span class="s1">'js'</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">js</span> <span class="o">+=</span> <span class="nx">target</span><span class="p">;</span>
|
|
<span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
|
|
<span class="nx">css</span> <span class="o">+=</span> <span class="nx">target</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="c1">// YAHOO.log(target);</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">_combining</span><span class="p">.</span><span class="nx">push</span><span class="p">(</span><span class="nx">s</span><span class="p">[</span><span class="nx">i</span><span class="p">]);</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">_combining</span><span class="p">.</span><span class="nx">length</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="nx">YAHOO</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="s1">'Attempting to combine: '</span> <span class="o">+</span> <span class="k">this</span><span class="p">.</span><span class="nx">_combining</span><span class="p">,</span> <span class="s2">"info"</span><span class="p">,</span> <span class="s2">"loader"</span><span class="p">);</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">callback</span><span class="o">=</span><span class="kd">function</span><span class="p">(</span><span class="nx">o</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="c1">// YAHOO.log('Combo complete: ' + o.data, "info", "loader");</span>
|
|
<span class="c1">// this._combineComplete = true;</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">c</span><span class="o">=</span><span class="k">this</span><span class="p">.</span><span class="nx">_combining</span><span class="p">,</span> <span class="nx">len</span><span class="o">=</span><span class="nx">c</span><span class="p">.</span><span class="nx">length</span><span class="p">,</span> <span class="nx">i</span><span class="p">,</span> <span class="nx">m</span><span class="p">;</span>
|
|
<span class="k">for</span> <span class="p">(</span><span class="nx">i</span><span class="o">=</span><span class="mi">0</span><span class="p">;</span> <span class="nx">i</span><span class="o"><</span><span class="nx">len</span><span class="p">;</span> <span class="nx">i</span><span class="o">=</span><span class="nx">i</span><span class="o">+</span><span class="mi">1</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">inserted</span><span class="p">[</span><span class="nx">c</span><span class="p">[</span><span class="nx">i</span><span class="p">]]</span> <span class="o">=</span> <span class="kc">true</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">loadNext</span><span class="p">(</span><span class="nx">o</span><span class="p">.</span><span class="nx">data</span><span class="p">);</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">loadScript</span> <span class="o">=</span> <span class="kd">function</span><span class="p">()</span> <span class="p">{</span>
|
|
<span class="c1">// YAHOO.log('combining js: ' + js);</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">js</span><span class="p">.</span><span class="nx">length</span> <span class="o">></span> <span class="nx">startLen</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">YAHOO</span><span class="p">.</span><span class="nx">util</span><span class="p">.</span><span class="nx">Get</span><span class="p">.</span><span class="nx">script</span><span class="p">(</span><span class="nx">self</span><span class="p">.</span><span class="nx">_filter</span><span class="p">(</span><span class="nx">js</span><span class="p">),</span> <span class="p">{</span>
|
|
<span class="nx">data</span><span class="o">:</span> <span class="nx">self</span><span class="p">.</span><span class="nx">_loading</span><span class="p">,</span>
|
|
<span class="nx">onSuccess</span><span class="o">:</span> <span class="nx">callback</span><span class="p">,</span>
|
|
<span class="nx">onFailure</span><span class="o">:</span> <span class="nx">self</span><span class="p">.</span><span class="nx">_onFailure</span><span class="p">,</span>
|
|
<span class="nx">onTimeout</span><span class="o">:</span> <span class="nx">self</span><span class="p">.</span><span class="nx">_onTimeout</span><span class="p">,</span>
|
|
<span class="nx">insertBefore</span><span class="o">:</span> <span class="nx">self</span><span class="p">.</span><span class="nx">insertBefore</span><span class="p">,</span>
|
|
<span class="nx">charset</span><span class="o">:</span> <span class="nx">self</span><span class="p">.</span><span class="nx">charset</span><span class="p">,</span>
|
|
<span class="nx">timeout</span><span class="o">:</span> <span class="nx">self</span><span class="p">.</span><span class="nx">timeout</span><span class="p">,</span>
|
|
<span class="nx">scope</span><span class="o">:</span> <span class="nx">self</span>
|
|
<span class="p">});</span>
|
|
<span class="p">}</span>
|
|
<span class="p">};</span>
|
|
|
|
<span class="c1">// load the css first</span>
|
|
<span class="c1">// YAHOO.log('combining css: ' + css);</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">css</span><span class="p">.</span><span class="nx">length</span> <span class="o">></span> <span class="nx">startLen</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">YAHOO</span><span class="p">.</span><span class="nx">util</span><span class="p">.</span><span class="nx">Get</span><span class="p">.</span><span class="nx">css</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">_filter</span><span class="p">(</span><span class="nx">css</span><span class="p">),</span> <span class="p">{</span>
|
|
<span class="nx">data</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">_loading</span><span class="p">,</span>
|
|
<span class="nx">onSuccess</span><span class="o">:</span> <span class="nx">loadScript</span><span class="p">,</span>
|
|
<span class="nx">onFailure</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">_onFailure</span><span class="p">,</span>
|
|
<span class="nx">onTimeout</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">_onTimeout</span><span class="p">,</span>
|
|
<span class="nx">insertBefore</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">insertBefore</span><span class="p">,</span>
|
|
<span class="nx">charset</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">charset</span><span class="p">,</span>
|
|
<span class="nx">timeout</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">timeout</span><span class="p">,</span>
|
|
<span class="nx">scope</span><span class="o">:</span> <span class="nx">self</span>
|
|
<span class="p">});</span>
|
|
<span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
|
|
<span class="nx">loadScript</span><span class="p">();</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">return</span><span class="p">;</span>
|
|
|
|
<span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
|
|
<span class="c1">// this._combineComplete = true;</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">loadNext</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">_loading</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * inserts the requested modules and their dependencies. </span>
|
|
<span class="cm"> * <code>type</code> can be "js" or "css". Both script and </span>
|
|
<span class="cm"> * css are inserted if type is not provided.</span>
|
|
<span class="cm"> * @method insert</span>
|
|
<span class="cm"> * @param o optional options object</span>
|
|
<span class="cm"> * @param type {string} the type of dependency to insert</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">insert</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">o</span><span class="p">,</span> <span class="nx">type</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="c1">// if (o) {</span>
|
|
<span class="c1">// Y.log("insert: " + lang.dump(o, 1) + ", " + type);</span>
|
|
<span class="c1">// } else {</span>
|
|
<span class="c1">// Y.log("insert: " + this.toString() + ", " + type);</span>
|
|
<span class="c1">// }</span>
|
|
|
|
<span class="c1">// build the dependency list</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">calculate</span><span class="p">(</span><span class="nx">o</span><span class="p">);</span>
|
|
|
|
|
|
<span class="c1">// set a flag to indicate the load has started</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">_loading</span> <span class="o">=</span> <span class="kc">true</span><span class="p">;</span>
|
|
|
|
<span class="c1">// flag to indicate we are done with the combo service</span>
|
|
<span class="c1">// and any additional files will need to be loaded</span>
|
|
<span class="c1">// individually</span>
|
|
<span class="c1">// this._combineComplete = false;</span>
|
|
|
|
<span class="c1">// keep the loadType (js, css or undefined) cached</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">loadType</span> <span class="o">=</span> <span class="nx">type</span><span class="p">;</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">combine</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">return</span> <span class="k">this</span><span class="p">.</span><span class="nx">_combine</span><span class="p">();</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">type</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="c1">// Y.log("trying to load css first");</span>
|
|
<span class="kd">var</span> <span class="nx">self</span> <span class="o">=</span> <span class="k">this</span><span class="p">;</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">_internalCallback</span> <span class="o">=</span> <span class="kd">function</span><span class="p">()</span> <span class="p">{</span>
|
|
<span class="nx">self</span><span class="p">.</span><span class="nx">_internalCallback</span> <span class="o">=</span> <span class="kc">null</span><span class="p">;</span>
|
|
<span class="nx">self</span><span class="p">.</span><span class="nx">insert</span><span class="p">(</span><span class="kc">null</span><span class="p">,</span> <span class="s2">"js"</span><span class="p">);</span>
|
|
<span class="p">};</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">insert</span><span class="p">(</span><span class="kc">null</span><span class="p">,</span> <span class="s2">"css"</span><span class="p">);</span>
|
|
<span class="k">return</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
|
|
|
|
<span class="c1">// start the load</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">loadNext</span><span class="p">();</span>
|
|
|
|
<span class="p">},</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * Interns the script for the requested modules. The callback is</span>
|
|
<span class="cm"> * provided a reference to the sandboxed YAHOO object. This only</span>
|
|
<span class="cm"> * applies to the script: css can not be sandboxed; css will be</span>
|
|
<span class="cm"> * loaded into the page normally if specified.</span>
|
|
<span class="cm"> * @method sandbox</span>
|
|
<span class="cm"> * @param callback {Function} the callback to exectued when the load is</span>
|
|
<span class="cm"> * complete.</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">sandbox</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">o</span><span class="p">,</span> <span class="nx">type</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="c1">// if (o) {</span>
|
|
<span class="c1">// YAHOO.log("sandbox: " + lang.dump(o, 1) + ", " + type);</span>
|
|
<span class="c1">// } else {</span>
|
|
<span class="c1">// YAHOO.log("sandbox: " + this.toString() + ", " + type);</span>
|
|
<span class="c1">// }</span>
|
|
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">_config</span><span class="p">(</span><span class="nx">o</span><span class="p">);</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="k">this</span><span class="p">.</span><span class="nx">onSuccess</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">throw</span> <span class="k">new</span> <span class="nb">Error</span><span class="p">(</span><span class="s2">"You must supply an onSuccess handler for your sandbox"</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">_sandbox</span> <span class="o">=</span> <span class="kc">true</span><span class="p">;</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">self</span> <span class="o">=</span> <span class="k">this</span><span class="p">;</span>
|
|
|
|
<span class="c1">// take care of any css first (this can't be sandboxed)</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">type</span> <span class="o">||</span> <span class="nx">type</span> <span class="o">!==</span> <span class="s2">"js"</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">_internalCallback</span> <span class="o">=</span> <span class="kd">function</span><span class="p">()</span> <span class="p">{</span>
|
|
<span class="nx">self</span><span class="p">.</span><span class="nx">_internalCallback</span> <span class="o">=</span> <span class="kc">null</span><span class="p">;</span>
|
|
<span class="nx">self</span><span class="p">.</span><span class="nx">sandbox</span><span class="p">(</span><span class="kc">null</span><span class="p">,</span> <span class="s2">"js"</span><span class="p">);</span>
|
|
<span class="p">};</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">insert</span><span class="p">(</span><span class="kc">null</span><span class="p">,</span> <span class="s2">"css"</span><span class="p">);</span>
|
|
<span class="k">return</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="c1">// get the connection manager if not on the page</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">util</span><span class="p">.</span><span class="nx">Connect</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="c1">// get a new loader instance to load connection.</span>
|
|
<span class="kd">var</span> <span class="nx">ld</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">YAHOO</span><span class="p">.</span><span class="nx">util</span><span class="p">.</span><span class="nx">YUILoader</span><span class="p">();</span>
|
|
<span class="nx">ld</span><span class="p">.</span><span class="nx">insert</span><span class="p">({</span>
|
|
<span class="nx">base</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">base</span><span class="p">,</span>
|
|
<span class="nx">filter</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">filter</span><span class="p">,</span>
|
|
<span class="nx">require</span><span class="o">:</span> <span class="s2">"connection"</span><span class="p">,</span>
|
|
<span class="nx">insertBefore</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">insertBefore</span><span class="p">,</span>
|
|
<span class="nx">charset</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">charset</span><span class="p">,</span>
|
|
<span class="nx">onSuccess</span><span class="o">:</span> <span class="kd">function</span><span class="p">()</span> <span class="p">{</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">sandbox</span><span class="p">(</span><span class="kc">null</span><span class="p">,</span> <span class="s2">"js"</span><span class="p">);</span>
|
|
<span class="p">},</span>
|
|
<span class="nx">scope</span><span class="o">:</span> <span class="k">this</span>
|
|
<span class="p">},</span> <span class="s2">"js"</span><span class="p">);</span>
|
|
<span class="k">return</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">_scriptText</span> <span class="o">=</span> <span class="p">[];</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">_loadCount</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">_stopCount</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">sorted</span><span class="p">.</span><span class="nx">length</span><span class="p">;</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">_xhr</span> <span class="o">=</span> <span class="p">[];</span>
|
|
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">calculate</span><span class="p">();</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">s</span><span class="o">=</span><span class="k">this</span><span class="p">.</span><span class="nx">sorted</span><span class="p">,</span> <span class="nx">l</span><span class="o">=</span><span class="nx">s</span><span class="p">.</span><span class="nx">length</span><span class="p">,</span> <span class="nx">i</span><span class="p">,</span> <span class="nx">m</span><span class="p">,</span> <span class="nx">url</span><span class="p">;</span>
|
|
|
|
<span class="k">for</span> <span class="p">(</span><span class="nx">i</span><span class="o">=</span><span class="mi">0</span><span class="p">;</span> <span class="nx">i</span><span class="o"><</span><span class="nx">l</span><span class="p">;</span> <span class="nx">i</span><span class="o">=</span><span class="nx">i</span><span class="o">+</span><span class="mi">1</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">m</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">moduleInfo</span><span class="p">[</span><span class="nx">s</span><span class="p">[</span><span class="nx">i</span><span class="p">]];</span>
|
|
|
|
<span class="c1">// undefined modules cause a failure</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">m</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">_onFailure</span><span class="p">(</span><span class="s2">"undefined module "</span> <span class="o">+</span> <span class="nx">m</span><span class="p">);</span>
|
|
<span class="k">for</span> <span class="p">(</span><span class="kd">var</span> <span class="nx">j</span><span class="o">=</span><span class="mi">0</span><span class="p">;</span><span class="nx">j</span><span class="o"><</span><span class="k">this</span><span class="p">.</span><span class="nx">_xhr</span><span class="p">.</span><span class="nx">length</span><span class="p">;</span><span class="nx">j</span><span class="o">=</span><span class="nx">j</span><span class="o">+</span><span class="mi">1</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">_xhr</span><span class="p">[</span><span class="nx">j</span><span class="p">].</span><span class="nx">abort</span><span class="p">();</span>
|
|
<span class="p">}</span>
|
|
<span class="k">return</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="c1">// css files should be done</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">m</span><span class="p">.</span><span class="nx">type</span> <span class="o">!==</span> <span class="s2">"js"</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">_loadCount</span><span class="o">++</span><span class="p">;</span>
|
|
<span class="k">continue</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="nx">url</span> <span class="o">=</span> <span class="nx">m</span><span class="p">.</span><span class="nx">fullpath</span><span class="p">;</span>
|
|
<span class="nx">url</span> <span class="o">=</span> <span class="p">(</span><span class="nx">url</span><span class="p">)</span> <span class="o">?</span> <span class="k">this</span><span class="p">.</span><span class="nx">_filter</span><span class="p">(</span><span class="nx">url</span><span class="p">)</span> <span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">_url</span><span class="p">(</span><span class="nx">m</span><span class="p">.</span><span class="nx">path</span><span class="p">);</span>
|
|
|
|
<span class="c1">// YAHOO.log("xhr request: " + url + ", " + i);</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">xhrData</span> <span class="o">=</span> <span class="p">{</span>
|
|
|
|
<span class="nx">success</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">o</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">idx</span><span class="o">=</span><span class="nx">o</span><span class="p">.</span><span class="nx">argument</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span> <span class="nx">name</span><span class="o">=</span><span class="nx">o</span><span class="p">.</span><span class="nx">argument</span><span class="p">[</span><span class="mi">2</span><span class="p">];</span>
|
|
|
|
<span class="c1">// store the response in the position it was requested</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">_scriptText</span><span class="p">[</span><span class="nx">idx</span><span class="p">]</span> <span class="o">=</span> <span class="nx">o</span><span class="p">.</span><span class="nx">responseText</span><span class="p">;</span>
|
|
|
|
<span class="c1">// YAHOO.log("received: " + o.responseText.substr(0, 100) + ", " + idx);</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">onProgress</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">onProgress</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">scope</span><span class="p">,</span> <span class="p">{</span>
|
|
<span class="nx">name</span><span class="o">:</span> <span class="nx">name</span><span class="p">,</span>
|
|
<span class="nx">scriptText</span><span class="o">:</span> <span class="nx">o</span><span class="p">.</span><span class="nx">responseText</span><span class="p">,</span>
|
|
<span class="nx">xhrResponse</span><span class="o">:</span> <span class="nx">o</span><span class="p">,</span>
|
|
<span class="nx">data</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">data</span>
|
|
<span class="p">});</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="c1">// only generate the sandbox once everything is loaded</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">_loadCount</span><span class="o">++</span><span class="p">;</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">_loadCount</span> <span class="o">>=</span> <span class="k">this</span><span class="p">.</span><span class="nx">_stopCount</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="c1">// the variable to find</span>
|
|
<span class="kd">var</span> <span class="nx">v</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">varName</span> <span class="o">||</span> <span class="s2">"YAHOO"</span><span class="p">;</span>
|
|
|
|
<span class="c1">// wrap the contents of the requested modules in an anonymous function</span>
|
|
<span class="kd">var</span> <span class="nx">t</span> <span class="o">=</span> <span class="s2">"(function() {\n"</span><span class="p">;</span>
|
|
|
|
<span class="c1">// return the locally scoped reference.</span>
|
|
<span class="kd">var</span> <span class="nx">b</span> <span class="o">=</span> <span class="s2">"\nreturn "</span> <span class="o">+</span> <span class="nx">v</span> <span class="o">+</span> <span class="s2">";\n})();"</span><span class="p">;</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">ref</span> <span class="o">=</span> <span class="nb">eval</span><span class="p">(</span><span class="nx">t</span> <span class="o">+</span> <span class="k">this</span><span class="p">.</span><span class="nx">_scriptText</span><span class="p">.</span><span class="nx">join</span><span class="p">(</span><span class="s2">"\n"</span><span class="p">)</span> <span class="o">+</span> <span class="nx">b</span><span class="p">);</span>
|
|
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">_pushEvents</span><span class="p">(</span><span class="nx">ref</span><span class="p">);</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">ref</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">onSuccess</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">scope</span><span class="p">,</span> <span class="p">{</span>
|
|
<span class="nx">reference</span><span class="o">:</span> <span class="nx">ref</span><span class="p">,</span>
|
|
<span class="nx">data</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">data</span>
|
|
<span class="p">});</span>
|
|
<span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">_onFailure</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">varName</span> <span class="o">+</span> <span class="s2">" reference failure"</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">failure</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">o</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">onFailure</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">scope</span><span class="p">,</span> <span class="p">{</span>
|
|
<span class="nx">msg</span><span class="o">:</span> <span class="s2">"XHR failure"</span><span class="p">,</span>
|
|
<span class="nx">xhrResponse</span><span class="o">:</span> <span class="nx">o</span><span class="p">,</span>
|
|
<span class="nx">data</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">data</span>
|
|
<span class="p">});</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">scope</span><span class="o">:</span> <span class="k">this</span><span class="p">,</span>
|
|
|
|
<span class="c1">// module index, module name, sandbox name</span>
|
|
<span class="nx">argument</span><span class="o">:</span> <span class="p">[</span><span class="nx">i</span><span class="p">,</span> <span class="nx">url</span><span class="p">,</span> <span class="nx">s</span><span class="p">[</span><span class="nx">i</span><span class="p">]]</span>
|
|
|
|
<span class="p">};</span>
|
|
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">_xhr</span><span class="p">.</span><span class="nx">push</span><span class="p">(</span><span class="nx">util</span><span class="p">.</span><span class="nx">Connect</span><span class="p">.</span><span class="nx">asyncRequest</span><span class="p">(</span><span class="s1">'GET'</span><span class="p">,</span> <span class="nx">url</span><span class="p">,</span> <span class="nx">xhrData</span><span class="p">));</span>
|
|
<span class="p">}</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * Executed every time a module is loaded, and if we are in a load</span>
|
|
<span class="cm"> * cycle, we attempt to load the next script. Public so that it</span>
|
|
<span class="cm"> * is possible to call this if using a method other than</span>
|
|
<span class="cm"> * YAHOO.register to determine when scripts are fully loaded</span>
|
|
<span class="cm"> * @method loadNext</span>
|
|
<span class="cm"> * @param mname {string} optional the name of the module that has</span>
|
|
<span class="cm"> * been loaded (which is usually why it is time to load the next</span>
|
|
<span class="cm"> * one)</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">loadNext</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">mname</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="c1">// It is possible that this function is executed due to something</span>
|
|
<span class="c1">// else one the page loading a YUI module. Only react when we</span>
|
|
<span class="c1">// are actively loading something</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="k">this</span><span class="p">.</span><span class="nx">_loading</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">return</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">mname</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="c1">// if the module that was just loaded isn't what we were expecting,</span>
|
|
<span class="c1">// continue to wait</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">mname</span> <span class="o">!==</span> <span class="k">this</span><span class="p">.</span><span class="nx">_loading</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">return</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="c1">// YAHOO.log("loadNext executing, just loaded " + mname);</span>
|
|
|
|
<span class="c1">// The global handler that is called when each module is loaded</span>
|
|
<span class="c1">// will pass that module name to this function. Storing this</span>
|
|
<span class="c1">// data to avoid loading the same module multiple times</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">inserted</span><span class="p">[</span><span class="nx">mname</span><span class="p">]</span> <span class="o">=</span> <span class="kc">true</span><span class="p">;</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">onProgress</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">onProgress</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">scope</span><span class="p">,</span> <span class="p">{</span>
|
|
<span class="nx">name</span><span class="o">:</span> <span class="nx">mname</span><span class="p">,</span>
|
|
<span class="nx">data</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">data</span>
|
|
<span class="p">});</span>
|
|
<span class="p">}</span>
|
|
<span class="c1">//var o = this.getProvides(mname);</span>
|
|
<span class="c1">//this.inserted = lang.merge(this.inserted, o);</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">s</span><span class="o">=</span><span class="k">this</span><span class="p">.</span><span class="nx">sorted</span><span class="p">,</span> <span class="nx">len</span><span class="o">=</span><span class="nx">s</span><span class="p">.</span><span class="nx">length</span><span class="p">,</span> <span class="nx">i</span><span class="p">,</span> <span class="nx">m</span><span class="p">;</span>
|
|
|
|
<span class="k">for</span> <span class="p">(</span><span class="nx">i</span><span class="o">=</span><span class="mi">0</span><span class="p">;</span> <span class="nx">i</span><span class="o"><</span><span class="nx">len</span><span class="p">;</span> <span class="nx">i</span><span class="o">=</span><span class="nx">i</span><span class="o">+</span><span class="mi">1</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="c1">// This.inserted keeps track of what the loader has loaded</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">s</span><span class="p">[</span><span class="nx">i</span><span class="p">]</span> <span class="k">in</span> <span class="k">this</span><span class="p">.</span><span class="nx">inserted</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="c1">// YAHOO.log(s[i] + " alread loaded ");</span>
|
|
<span class="k">continue</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="c1">// Because rollups will cause multiple load notifications</span>
|
|
<span class="c1">// from YAHOO, loadNext may be called multiple times for</span>
|
|
<span class="c1">// the same module when loading a rollup. We can safely</span>
|
|
<span class="c1">// skip the subsequent requests</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">s</span><span class="p">[</span><span class="nx">i</span><span class="p">]</span> <span class="o">===</span> <span class="k">this</span><span class="p">.</span><span class="nx">_loading</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="c1">// YAHOO.log("still loading " + s[i] + ", waiting");</span>
|
|
<span class="k">return</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="c1">// log("inserting " + s[i]);</span>
|
|
<span class="nx">m</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">moduleInfo</span><span class="p">[</span><span class="nx">s</span><span class="p">[</span><span class="nx">i</span><span class="p">]];</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">m</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">onFailure</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">scope</span><span class="p">,</span> <span class="p">{</span>
|
|
<span class="nx">msg</span><span class="o">:</span> <span class="s2">"undefined module "</span> <span class="o">+</span> <span class="nx">m</span><span class="p">,</span>
|
|
<span class="nx">data</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">data</span>
|
|
<span class="p">});</span>
|
|
<span class="k">return</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="c1">// The load type is stored to offer the possibility to load</span>
|
|
<span class="c1">// the css separately from the script.</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="k">this</span><span class="p">.</span><span class="nx">loadType</span> <span class="o">||</span> <span class="k">this</span><span class="p">.</span><span class="nx">loadType</span> <span class="o">===</span> <span class="nx">m</span><span class="p">.</span><span class="nx">type</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">_loading</span> <span class="o">=</span> <span class="nx">s</span><span class="p">[</span><span class="nx">i</span><span class="p">];</span>
|
|
<span class="c1">//YAHOO.log("attempting to load " + s[i] + ", " + this.base);</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">fn</span><span class="o">=</span><span class="p">(</span><span class="nx">m</span><span class="p">.</span><span class="nx">type</span> <span class="o">===</span> <span class="s2">"css"</span><span class="p">)</span> <span class="o">?</span> <span class="nx">util</span><span class="p">.</span><span class="nx">Get</span><span class="p">.</span><span class="nx">css</span> <span class="o">:</span> <span class="nx">util</span><span class="p">.</span><span class="nx">Get</span><span class="p">.</span><span class="nx">script</span><span class="p">,</span>
|
|
<span class="nx">url</span> <span class="o">=</span> <span class="nx">m</span><span class="p">.</span><span class="nx">fullpath</span><span class="p">,</span>
|
|
<span class="nx">self</span><span class="o">=</span><span class="k">this</span><span class="p">,</span>
|
|
<span class="nx">c</span><span class="o">=</span><span class="kd">function</span><span class="p">(</span><span class="nx">o</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">self</span><span class="p">.</span><span class="nx">loadNext</span><span class="p">(</span><span class="nx">o</span><span class="p">.</span><span class="nx">data</span><span class="p">);</span>
|
|
<span class="p">};</span>
|
|
|
|
<span class="nx">url</span> <span class="o">=</span> <span class="p">(</span><span class="nx">url</span><span class="p">)</span> <span class="o">?</span> <span class="k">this</span><span class="p">.</span><span class="nx">_filter</span><span class="p">(</span><span class="nx">url</span><span class="p">)</span> <span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">_url</span><span class="p">(</span><span class="nx">m</span><span class="p">.</span><span class="nx">path</span><span class="p">);</span>
|
|
|
|
<span class="c1">// safari 2.x or lower, script, and part of YUI</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">env</span><span class="p">.</span><span class="nx">ua</span><span class="p">.</span><span class="nx">webkit</span> <span class="o">&&</span> <span class="nx">env</span><span class="p">.</span><span class="nx">ua</span><span class="p">.</span><span class="nx">webkit</span> <span class="o"><</span> <span class="mi">420</span> <span class="o">&&</span> <span class="nx">m</span><span class="p">.</span><span class="nx">type</span> <span class="o">===</span> <span class="s2">"js"</span> <span class="o">&&</span>
|
|
<span class="o">!</span><span class="nx">m</span><span class="p">.</span><span class="nx">varName</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="c1">//YUI.info.moduleInfo[s[i]]) {</span>
|
|
<span class="c1">//YAHOO.log("using YAHOO env " + s[i] + ", " + m.varName);</span>
|
|
<span class="nx">c</span> <span class="o">=</span> <span class="kc">null</span><span class="p">;</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">_useYahooListener</span> <span class="o">=</span> <span class="kc">true</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="nx">fn</span><span class="p">(</span><span class="nx">url</span><span class="p">,</span> <span class="p">{</span>
|
|
<span class="nx">data</span><span class="o">:</span> <span class="nx">s</span><span class="p">[</span><span class="nx">i</span><span class="p">],</span>
|
|
<span class="nx">onSuccess</span><span class="o">:</span> <span class="nx">c</span><span class="p">,</span>
|
|
<span class="nx">onFailure</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">_onFailure</span><span class="p">,</span>
|
|
<span class="nx">onTimeout</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">_onTimeout</span><span class="p">,</span>
|
|
<span class="nx">insertBefore</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">insertBefore</span><span class="p">,</span>
|
|
<span class="nx">charset</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">charset</span><span class="p">,</span>
|
|
<span class="nx">timeout</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">timeout</span><span class="p">,</span>
|
|
<span class="nx">varName</span><span class="o">:</span> <span class="nx">m</span><span class="p">.</span><span class="nx">varName</span><span class="p">,</span>
|
|
<span class="nx">scope</span><span class="o">:</span> <span class="nx">self</span>
|
|
<span class="p">});</span>
|
|
|
|
<span class="k">return</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="c1">// we are finished</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">_loading</span> <span class="o">=</span> <span class="kc">null</span><span class="p">;</span>
|
|
|
|
<span class="c1">// internal callback for loading css first</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">_internalCallback</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="kd">var</span> <span class="nx">f</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">_internalCallback</span><span class="p">;</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">_internalCallback</span> <span class="o">=</span> <span class="kc">null</span><span class="p">;</span>
|
|
<span class="nx">f</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="k">this</span><span class="p">);</span>
|
|
<span class="p">}</span> <span class="k">else</span> <span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">onSuccess</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">_pushEvents</span><span class="p">();</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">onSuccess</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">scope</span><span class="p">,</span> <span class="p">{</span>
|
|
<span class="nx">data</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">data</span>
|
|
<span class="p">});</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">},</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * In IE, the onAvailable/onDOMReady events need help when Event is</span>
|
|
<span class="cm"> * loaded dynamically</span>
|
|
<span class="cm"> * @method _pushEvents</span>
|
|
<span class="cm"> * @param {Function} optional function reference</span>
|
|
<span class="cm"> * @private</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">_pushEvents</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">ref</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="kd">var</span> <span class="nx">r</span> <span class="o">=</span> <span class="nx">ref</span> <span class="o">||</span> <span class="nx">YAHOO</span><span class="p">;</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">r</span><span class="p">.</span><span class="nx">util</span> <span class="o">&&</span> <span class="nx">r</span><span class="p">.</span><span class="nx">util</span><span class="p">.</span><span class="nx">Event</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">r</span><span class="p">.</span><span class="nx">util</span><span class="p">.</span><span class="nx">Event</span><span class="p">.</span><span class="nx">_load</span><span class="p">();</span>
|
|
<span class="p">}</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * Applies filter</span>
|
|
<span class="cm"> * method _filter</span>
|
|
<span class="cm"> * @return {string} the filtered string</span>
|
|
<span class="cm"> * @private</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">_filter</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">str</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="kd">var</span> <span class="nx">f</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">filter</span><span class="p">;</span>
|
|
<span class="k">return</span> <span class="p">(</span><span class="nx">f</span><span class="p">)</span> <span class="o">?</span> <span class="nx">str</span><span class="p">.</span><span class="nx">replace</span><span class="p">(</span><span class="k">new</span> <span class="nb">RegExp</span><span class="p">(</span><span class="nx">f</span><span class="p">.</span><span class="nx">searchExp</span><span class="p">,</span> <span class="s1">'g'</span><span class="p">),</span> <span class="nx">f</span><span class="p">.</span><span class="nx">replaceStr</span><span class="p">)</span> <span class="o">:</span> <span class="nx">str</span><span class="p">;</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * Generates the full url for a module</span>
|
|
<span class="cm"> * method _url</span>
|
|
<span class="cm"> * @param path {string} the path fragment</span>
|
|
<span class="cm"> * @return {string} the full url</span>
|
|
<span class="cm"> * @private</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">_url</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">path</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">return</span> <span class="k">this</span><span class="p">.</span><span class="nx">_filter</span><span class="p">((</span><span class="k">this</span><span class="p">.</span><span class="nx">base</span> <span class="o">||</span> <span class="s2">""</span><span class="p">)</span> <span class="o">+</span> <span class="nx">path</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">};</span>
|
|
|
|
<span class="p">})();</span>
|
|
</pre></div>
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="yui-b">
|
|
<div class="nav">
|
|
|
|
<div id="moduleList" class="module">
|
|
<h4>Modules</h4>
|
|
<ul class="content">
|
|
<li class=""><a href="module_animation.html" title="animation">animation</a></li>
|
|
<li class=""><a href="module_autocomplete.html" title="autocomplete">autocomplete</a></li>
|
|
<li class=""><a href="module_button.html" title="button">button</a></li>
|
|
<li class=""><a href="module_calendar.html" title="calendar">calendar</a></li>
|
|
<li class=""><a href="module_carousel.html" title="carousel">carousel</a></li>
|
|
<li class=""><a href="module_charts.html" title="charts">charts</a></li>
|
|
<li class=""><a href="module_colorpicker.html" title="colorpicker">colorpicker</a></li>
|
|
<li class=""><a href="module_connection.html" title="connection">connection</a></li>
|
|
<li class=""><a href="module_container.html" title="container">container</a></li>
|
|
<li class=""><a href="module_cookie.html" title="cookie">cookie</a></li>
|
|
<li class=""><a href="module_datasource.html" title="datasource">datasource</a></li>
|
|
<li class=""><a href="module_datatable.html" title="datatable">datatable</a></li>
|
|
<li class=""><a href="module_datemath.html" title="datemath">datemath</a></li>
|
|
<li class=""><a href="module_dom.html" title="dom">dom</a></li>
|
|
<li class=""><a href="module_dragdrop.html" title="dragdrop">dragdrop</a></li>
|
|
<li class=""><a href="module_editor.html" title="editor">editor</a></li>
|
|
<li class=""><a href="module_element.html" title="element">element</a></li>
|
|
<li class=""><a href="module_element-delegate.html" title="element-delegate">element-delegate</a></li>
|
|
<li class=""><a href="module_event.html" title="event">event</a></li>
|
|
<li class=""><a href="module_event-delegate.html" title="event-delegate">event-delegate</a></li>
|
|
<li class=""><a href="module_event-mouseenter.html" title="event-mouseenter">event-mouseenter</a></li>
|
|
<li class=""><a href="module_event-simulate.html" title="event-simulate">event-simulate</a></li>
|
|
<li class=""><a href="module_get.html" title="get">get</a></li>
|
|
<li class=""><a href="module_history.html" title="history">history</a></li>
|
|
<li class=""><a href="module_imagecropper.html" title="imagecropper">imagecropper</a></li>
|
|
<li class=""><a href="module_imageloader.html" title="imageloader">imageloader</a></li>
|
|
<li class=""><a href="module_json.html" title="json">json</a></li>
|
|
<li class=""><a href="module_layout.html" title="layout">layout</a></li>
|
|
<li class=""><a href="module_logger.html" title="logger">logger</a></li>
|
|
<li class=""><a href="module_menu.html" title="menu">menu</a></li>
|
|
<li class=""><a href="module_paginator.html" title="paginator">paginator</a></li>
|
|
<li class=""><a href="module_profiler.html" title="profiler">profiler</a></li>
|
|
<li class=""><a href="module_profilerviewer.html" title="profilerviewer">profilerviewer</a></li>
|
|
<li class=""><a href="module_progressbar.html" title="progressbar">progressbar</a></li>
|
|
<li class=""><a href="module_resize.html" title="resize">resize</a></li>
|
|
<li class=""><a href="module_selector.html" title="selector">selector</a></li>
|
|
<li class=""><a href="module_slider.html" title="slider">slider</a></li>
|
|
<li class=""><a href="module_storage.html" title="Storage">Storage</a></li>
|
|
<li class=""><a href="module_stylesheet.html" title="stylesheet">stylesheet</a></li>
|
|
<li class=""><a href="module_swf.html" title="swf">swf</a></li>
|
|
<li class=""><a href="module_swfdetect.html" title="swfdetect">swfdetect</a></li>
|
|
<li class=""><a href="module_swfstore.html" title="swfstore">swfstore</a></li>
|
|
<li class=""><a href="module_tabview.html" title="tabview">tabview</a></li>
|
|
<li class=""><a href="module_treeview.html" title="treeview">treeview</a></li>
|
|
<li class=""><a href="module_uploader.html" title="uploader">uploader</a></li>
|
|
<li class=""><a href="module_yahoo.html" title="yahoo">yahoo</a></li>
|
|
<li class="selected"><a href="module_yuiloader.html" title="yuiloader">yuiloader</a></li>
|
|
<li class=""><a href="module_yuitest.html" title="yuitest">yuitest</a></li>
|
|
</ul>
|
|
</div>
|
|
|
|
<div id="classList" class="module">
|
|
<h4>Classes</h4>
|
|
<ul class="content">
|
|
<li class=""><a href="YAHOO.util.YUILoader.html" title="YAHOO.util.YUILoader">YAHOO.util.YUILoader</a></li>
|
|
</ul>
|
|
</div>
|
|
|
|
<div id="fileList" class="module">
|
|
<h4>Files</h4>
|
|
<ul class="content">
|
|
<li class="selected"><a href="yuiloader.js.html" title="yuiloader.js">yuiloader.js</a></li>
|
|
</ul>
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div id="ft">
|
|
<hr />
|
|
Copyright © 2010 Yahoo! Inc. All rights reserved.
|
|
</div>
|
|
</div>
|
|
<script type="text/javascript">
|
|
|
|
var ALL_YUI_PROPS = [{"access": "", "host": "YAHOO.util.YUILoader", "name": "addModule", "url": "YAHOO.util.YUILoader.html#method_addModule", "type": "method"}, {"access": "private", "host": "YAHOO.util.YUILoader", "name": "_addSkin", "url": "YAHOO.util.YUILoader.html#method__addSkin", "type": "method"}, {"access": "", "host": "YAHOO.util.YUILoader", "name": "allowRollup", "url": "YAHOO.util.YUILoader.html#property_allowRollup", "type": "property"}, {"access": "", "host": "YAHOO.util.YUILoader", "name": "base", "url": "YAHOO.util.YUILoader.html#property_base", "type": "property"}, {"access": "", "host": "YAHOO.util.YUILoader", "name": "calculate", "url": "YAHOO.util.YUILoader.html#method_calculate", "type": "method"}, {"access": "", "host": "YAHOO.util.YUILoader", "name": "charset", "url": "YAHOO.util.YUILoader.html#property_charset", "type": "property"}, {"access": "", "host": "YAHOO.util.YUILoader", "name": "combine", "url": "YAHOO.util.YUILoader.html#property_combine", "type": "property"}, {"access": "", "host": "YAHOO.util.YUILoader", "name": "comboBase", "url": "YAHOO.util.YUILoader.html#property_comboBase", "type": "property"}, {"access": "", "host": "YAHOO.util.YUILoader", "name": "data", "url": "YAHOO.util.YUILoader.html#property_data", "type": "property"}, {"access": "", "host": "YAHOO.util.YUILoader", "name": "dirty", "url": "YAHOO.util.YUILoader.html#property_dirty", "type": "property"}, {"access": "private", "host": "YAHOO.util.YUILoader", "name": "_explode", "url": "YAHOO.util.YUILoader.html#method__explode", "type": "method"}, {"access": "", "host": "YAHOO.util.YUILoader", "name": "filter", "url": "YAHOO.util.YUILoader.html#property_filter", "type": "property"}, {"access": "private", "host": "YAHOO.util.YUILoader", "name": "_filter", "url": "YAHOO.util.YUILoader.html#method__filter", "type": "method"}, {"access": "", "host": "YAHOO.util.YUILoader", "name": "force", "url": "YAHOO.util.YUILoader.html#property_force", "type": "property"}, {"access": "", "host": "YAHOO.util.YUILoader", "name": "formatSkin", "url": "YAHOO.util.YUILoader.html#method_formatSkin", "type": "method"}, {"access": "", "host": "YAHOO.util.YUILoader", "name": "getProvides", "url": "YAHOO.util.YUILoader.html#method_getProvides", "type": "method"}, {"access": "", "host": "YAHOO.util.YUILoader", "name": "getRequires", "url": "YAHOO.util.YUILoader.html#method_getRequires", "type": "method"}, {"access": "", "host": "YAHOO.util.YUILoader", "name": "ignore", "url": "YAHOO.util.YUILoader.html#property_ignore", "type": "property"}, {"access": "", "host": "YAHOO.util.YUILoader", "name": "insert", "url": "YAHOO.util.YUILoader.html#method_insert", "type": "method"}, {"access": "", "host": "YAHOO.util.YUILoader", "name": "insertBefore", "url": "YAHOO.util.YUILoader.html#property_insertBefore", "type": "property"}, {"access": "", "host": "YAHOO.util.YUILoader", "name": "inserted", "url": "YAHOO.util.YUILoader.html#property_inserted", "type": "property"}, {"access": "private", "host": "YAHOO.util.YUILoader", "name": "_internalCallback", "url": "YAHOO.util.YUILoader.html#property__internalCallback", "type": "property"}, {"access": "", "host": "YAHOO.util.YUILoader", "name": "loaded", "url": "YAHOO.util.YUILoader.html#property_loaded", "type": "property"}, {"access": "", "host": "YAHOO.util.YUILoader", "name": "loadNext", "url": "YAHOO.util.YUILoader.html#method_loadNext", "type": "method"}, {"access": "", "host": "YAHOO.util.YUILoader", "name": "loadOptional", "url": "YAHOO.util.YUILoader.html#property_loadOptional", "type": "property"}, {"access": "", "host": "YAHOO.util.YUILoader", "name": "moduleInfo", "url": "YAHOO.util.YUILoader.html#property_moduleInfo", "type": "property"}, {"access": "", "host": "YAHOO.util.YUILoader", "name": "onFailure", "url": "YAHOO.util.YUILoader.html#method_onFailure", "type": "method"}, {"access": "", "host": "YAHOO.util.YUILoader", "name": "onProgress", "url": "YAHOO.util.YUILoader.html#method_onProgress", "type": "method"}, {"access": "", "host": "YAHOO.util.YUILoader", "name": "onSuccess", "url": "YAHOO.util.YUILoader.html#method_onSuccess", "type": "method"}, {"access": "", "host": "YAHOO.util.YUILoader", "name": "onTimeout", "url": "YAHOO.util.YUILoader.html#method_onTimeout", "type": "method"}, {"access": "", "host": "YAHOO.util.YUILoader", "name": "parseSkin", "url": "YAHOO.util.YUILoader.html#method_parseSkin", "type": "method"}, {"access": "private", "host": "YAHOO.util.YUILoader", "name": "_pushEvents", "url": "YAHOO.util.YUILoader.html#method__pushEvents", "type": "method"}, {"access": "private", "host": "YAHOO.util.YUILoader", "name": "_reduce", "url": "YAHOO.util.YUILoader.html#method__reduce", "type": "method"}, {"access": "", "host": "YAHOO.util.YUILoader", "name": "require", "url": "YAHOO.util.YUILoader.html#method_require", "type": "method"}, {"access": "", "host": "YAHOO.util.YUILoader", "name": "required", "url": "YAHOO.util.YUILoader.html#property_required", "type": "property"}, {"access": "private", "host": "YAHOO.util.YUILoader", "name": "_rollup", "url": "YAHOO.util.YUILoader.html#method__rollup", "type": "method"}, {"access": "", "host": "YAHOO.util.YUILoader", "name": "rollups", "url": "YAHOO.util.YUILoader.html#property_rollups", "type": "property"}, {"access": "", "host": "YAHOO.util.YUILoader", "name": "root", "url": "YAHOO.util.YUILoader.html#property_root", "type": "property"}, {"access": "", "host": "YAHOO.util.YUILoader", "name": "sandbox", "url": "YAHOO.util.YUILoader.html#method_sandbox", "type": "method"}, {"access": "", "host": "YAHOO.util.YUILoader", "name": "scope", "url": "YAHOO.util.YUILoader.html#property_scope", "type": "property"}, {"access": "private", "host": "YAHOO.util.YUILoader", "name": "_setup", "url": "YAHOO.util.YUILoader.html#method__setup", "type": "method"}, {"access": "", "host": "YAHOO.util.YUILoader", "name": "skin", "url": "YAHOO.util.YUILoader.html#property_skin", "type": "property"}, {"access": "private", "host": "YAHOO.util.YUILoader", "name": "_sort", "url": "YAHOO.util.YUILoader.html#method__sort", "type": "method"}, {"access": "", "host": "YAHOO.util.YUILoader", "name": "sorted", "url": "YAHOO.util.YUILoader.html#property_sorted", "type": "property"}, {"access": "", "host": "YAHOO.util.YUILoader", "name": "timeout", "url": "YAHOO.util.YUILoader.html#property_timeout", "type": "property"}, {"access": "private", "host": "YAHOO.util.YUILoader", "name": "_url", "url": "YAHOO.util.YUILoader.html#method__url", "type": "method"}, {"access": "private", "host": "YAHOO.util.YUILoader", "name": "_useYahooListener", "url": "YAHOO.util.YUILoader.html#property__useYahooListener", "type": "property"}, {"access": "", "host": "YAHOO.util.YUILoader", "name": "varName", "url": "YAHOO.util.YUILoader.html#property_varName", "type": "property"}];
|
|
</script>
|
|
</body>
|
|
</html>
|