Showing with 23 additions and 24 deletions.
  1. +6 −5 config.json
  2. +10 −18 lib/config.js
  3. +7 −1 lib/jquery-ui.js
@@ -1,13 +1,14 @@
{
"jqueryUi": {
"stable": {
"jqueryUi": [
{
"version": "1.10.3",
"dependsOn": "jQuery1.6+"
"dependsOn": "jQuery1.6+",
"stable": true
},
"legacy": {
{
"version": "1.9.2",
"dependsOn": "jQuery1.6+"
}
},
],
"jquery": "1.9.1"
}
@@ -6,32 +6,24 @@ Config = module.exports = function() {
var config = Config.get();

// Validate jqueryUi, eg:
// "jqueryUi": {
// "stable": { // required
// "version": "1.10.0"
// "dependsOn": "jQuery 1.7+"
// "jqueryUi": [
// {
// "version": "1.10.0",
// "dependsOn": "jQuery 1.7+",
// "stable": true
// },
// "legacy": { // optional
// "version": "1.9.1"
// {
// "version": "1.9.1",
// "dependsOn": "jQuery 1.6+"
// }
// }
// ]
if ( config.jqueryUi == null ) {
throw new Error( "Missing jqueryUi branch/tag in config.json" );
}
if ( typeof config.jqueryUi !== "object" ) {
if ( !Array.isArray( config.jqueryUi ) ) {
throw new Error( "Invalid jqueryUi branch/tag in config.json" );
}
if ( config.jqueryUi.stable == null ) {
throw new Error( "Missing \"stable\" jqueryUi branch/tag in config.json" );
}
// Normalizing jqueryUi object into an Array
jqueryUi = [ config.jqueryUi.stable ];
jqueryUi[ 0 ].stable = true;
if ( config.jqueryUi.legacy ) {
jqueryUi.push( config.jqueryUi.legacy );
}
config.jqueryUi = jqueryUi.map(function( entry ) {
config.jqueryUi = config.jqueryUi.map(function( entry ) {
if ( typeof entry !== "object" || !entry.version ) {
throw new Error( "Invalid jqueryUi entry " + JSON.stringify( entry ) + " in config.json" );
}
@@ -64,7 +64,13 @@ JqueryUi.all = function() {
};

JqueryUi.getStable = function() {
return JqueryUi.all()[ 0 ];
var match = JqueryUi.all().filter(function( jqueryUi ) {
return jqueryUi.stable;
});
if ( !match.length ) {
throw new Error( "No stable jqueryUi has been defined. Check your config file." );
}
return match[ 0 ];
};

JqueryUi.find = function( version ) {