aboutsummaryrefslogtreecommitdiffstats
path: root/build
diff options
context:
space:
mode:
authorScott González <scott.gonzalez@gmail.com>2014-10-30 15:55:08 -0400
committerScott González <scott.gonzalez@gmail.com>2014-11-10 13:19:03 -0500
commitb5f1ffdea4c3c4b41936e56d4cb23ca8acb2aaa8 (patch)
tree549f0cfc1e6996e9f88feca44df29a937ff9287c /build
parent347b2a5ecd02933c191a13596a5849960f8f4ad2 (diff)
downloadjquery-ui-b5f1ffdea4c3c4b41936e56d4cb23ca8acb2aaa8.tar.gz
jquery-ui-b5f1ffdea4c3c4b41936e56d4cb23ca8acb2aaa8.zip
Build: Remove manifest files; move metadata to source files
Closes gh-1379
Diffstat (limited to 'build')
-rw-r--r--build/core.json68
-rw-r--r--build/effect.json46
-rw-r--r--build/interaction.json36
-rw-r--r--build/release.js11
-rw-r--r--build/tasks/build.js92
-rw-r--r--build/widget.json106
6 files changed, 4 insertions, 355 deletions
diff --git a/build/core.json b/build/core.json
deleted file mode 100644
index 903230c87..000000000
--- a/build/core.json
+++ /dev/null
@@ -1,68 +0,0 @@
-{
- "core": {
- "description": "The core of jQuery UI, required for all interactions and widgets.",
- "homepage": "http://jqueryui.com/",
- "demo": "http://jqueryui.com/",
- "docs": "http://api.jqueryui.com/category/ui-core/"
- },
- "datepicker": {
- "description": "Displays a calendar from an input or inline for selecting dates.",
- "dependencies": [ "core" ],
- "keywords": [
- "form",
- "calendar",
- "date",
- "i18n"
- ],
- "category": "widget"
- },
- "effect": {
- "title": "jQuery UI Effects Core",
- "description": "Extends the internal jQuery effects. Includes morphing and easing. Required by all other effects.",
- "keywords": [
- "animation",
- "show",
- "hide",
- "color",
- "class",
- "transition",
- "easing"
- ],
- "category": "effect",
- "homepage": "http://jqueryui.com/",
- "demo": "http://jqueryui.com/effect/",
- "docs": "http://api.jqueryui.com/category/effects-core/"
- },
- "position": {
- "description": "Positions elements relative to other elements.",
- "keywords": [
- "offset",
- "relative",
- "absolute",
- "fixed",
- "collision"
- ]
- },
- "transfer": {
- "name": "ui.effect-transfer",
- "title": "jQuery UI Transfer Effect",
- "description": "Displays a transfer effect from one element to another.",
- "keywords": [
- "effect"
- ],
- "homepage": "http://jqueryui.com/transfer-effect/",
- "demo": "http://jqueryui.com/transfer-effect/",
- "docs": "http://api.jqueryui.com/transfer-effect/",
- "dependencies": [ "effect" ],
- "category": "effect"
- },
- "widget": {
- "description": "Provides a factory for creating stateful widgets with a common API.",
- "keywords": [
- "abstraction",
- "state",
- "factory"
- ],
- "docs": "http://api.jqueryui.com/jQuery.widget/"
- }
-}
diff --git a/build/effect.json b/build/effect.json
deleted file mode 100644
index 3963bced3..000000000
--- a/build/effect.json
+++ /dev/null
@@ -1,46 +0,0 @@
-{
- "blind": {
- "description": "Blinds the element."
- },
- "bounce": {
- "description": "Bounces an element horizontally or vertically n times."
- },
- "clip": {
- "description": "Clips the element on and off like an old TV."
- },
- "drop": {
- "description": "Moves an element in one direction and hides it at the same time."
- },
- "explode": {
- "description": "Explodes an element in all directions into n pieces. Implodes an element to its original wholeness."
- },
- "fade": {
- "description": "Fades an element."
- },
- "fold": {
- "description": "Folds an element first horizontally and then vertically."
- },
- "highlight": {
- "description": "Highlights the background of an element in a defined color for a custom duration."
- },
- "puff": {
- "dependencies": [ "effect-scale" ],
- "description": "Creates a puff effect by scaling the element up and hiding it at the same time."
- },
- "pulsate": {
- "description": "Pulsates an element n times by changing the opacity to zero and back."
- },
- "scale": {
- "dependencies": [ "effect-size" ],
- "description": "Grows or shrinks an element and its content. Restores an element to its original size."
- },
- "shake": {
- "description": "Shakes an element horizontally or vertically n times."
- },
- "size": {
- "description": "Resize an element to a specified width and height."
- },
- "slide": {
- "description": "Slides an element in and out of the viewport."
- }
-}
diff --git a/build/interaction.json b/build/interaction.json
deleted file mode 100644
index d964c4ac3..000000000
--- a/build/interaction.json
+++ /dev/null
@@ -1,36 +0,0 @@
-{
- "draggable": {
- "description": "Enables dragging functionality for any element.",
- "keywords": [
- "drag",
- "drop"
- ]
- },
- "droppable": {
- "dependencies": [ "draggable" ],
- "description": "Enables drop targets for draggable elements.",
- "keywords": [
- "drag",
- "drop"
- ]
- },
- "resizable": {
- "description": "Enables resize functionality for any element.",
- "keywords": [
- "resize"
- ]
- },
- "selectable": {
- "description": "Allows groups of elements to be selected with the mouse.",
- "keywords": [
- "selection"
- ]
- },
- "sortable": {
- "description": "Enables items in a list to be sorted using the mouse.",
- "keywords": [
- "sort",
- "list"
- ]
- }
-} \ No newline at end of file
diff --git a/build/release.js b/build/release.js
index abb972cb6..a55f8002c 100644
--- a/build/release.js
+++ b/build/release.js
@@ -65,8 +65,9 @@ Release.define({
"}</script>\n\nReleased on " + monthNames[ now.getMonth() ] + " " + now.getDate() + ", " + now.getFullYear() + "\n\n";
},
generateArtifacts: function( fn ) {
- var files;
- function copyCdnFiles() {
+ var files = replaceAtVersion();
+
+ buildCDNPackage(function copyCdnFiles() {
var zipFile = shell.ls( "../jquery*-cdn.zip" )[ 0 ],
tmpFolder = "../tmp-zip-output",
unzipCommand = "unzip -o " + zipFile + " -d " + tmpFolder;
@@ -82,11 +83,7 @@ Release.define({
shell.cp( tmpFolder + "/jquery-ui*.js", "dist/cdn" );
shell.cp( "-r", tmpFolder + "/themes", "dist/cdn" );
fn( files );
- }
-
- Release.exec( "grunt manifest" );
- files = shell.ls( "*.jquery.json" ).concat( replaceAtVersion() );
- buildCDNPackage( copyCdnFiles );
+ });
}
});
diff --git a/build/tasks/build.js b/build/tasks/build.js
index 1e08dc62f..13e6fad14 100644
--- a/build/tasks/build.js
+++ b/build/tasks/build.js
@@ -2,98 +2,6 @@ module.exports = function( grunt ) {
"use strict";
-grunt.registerTask( "manifest", "Generate jquery.json manifest files", function() {
- var uiFiles,
- totalManifests = 0,
- pkg = grunt.config( "pkg" ),
- base = {
- core: {
- name: "ui.{plugin}",
- title: "jQuery UI {Plugin}"
- },
- widget: {
- name: "ui.{plugin}",
- title: "jQuery UI {Plugin}",
- dependencies: [ "core", "widget" ]
- },
- interaction: {
- name: "ui.{plugin}",
- title: "jQuery UI {Plugin}",
- dependencies: [ "core", "widget", "mouse" ]
- },
- effect: {
- name: "ui.effect-{plugin}",
- title: "jQuery UI {Plugin} Effect",
- keywords: [ "effect", "show", "hide" ],
- homepage: "http://jqueryui.com/effect/",
- demo: "http://jqueryui.com/effect/",
- docs: "http://api.jqueryui.com/{plugin}-effect/",
- dependencies: [ "effect" ]
- }
- };
-
- Object.keys( base ).forEach(function( type ) {
- var baseManifest = base[ type ],
- plugins = grunt.file.readJSON( "build/" + type + ".json" ),
- bower = grunt.file.readJSON( "bower.json" );
-
- Object.keys( plugins ).forEach(function( plugin ) {
- var manifest, bowerKey,
- data = plugins[ plugin ],
- name = plugin.charAt( 0 ).toUpperCase() + plugin.substr( 1 );
-
- function replace( str ) {
- return str.replace( "{plugin}", plugin ).replace( "{Plugin}", name );
- }
-
- manifest = {
- name: data.name || replace( baseManifest.name ),
- title: data.title || replace( baseManifest.title ),
- description: data.description,
- keywords: [ "ui", plugin ]
- .concat( baseManifest.keywords || [] )
- .concat( data.keywords || [] ),
- version: pkg.version,
- author: pkg.author,
- maintainers: pkg.maintainers,
- licenses: pkg.licenses,
- bugs: pkg.bugs,
- homepage: data.homepage || replace( baseManifest.homepage ||
- "http://jqueryui.com/{plugin}/" ),
- demo: data.demo || replace( baseManifest.demo ||
- "http://jqueryui.com/{plugin}/" ),
- docs: data.docs || replace( baseManifest.docs ||
- "http://api.jqueryui.com/{plugin}/" ),
- download: "http://jqueryui.com/download/",
- dependencies: {},
- // custom
- category: data.category || type
- };
-
- for ( bowerKey in bower.dependencies ) {
- manifest.dependencies[ bowerKey ] = bower.dependencies[ bowerKey ];
- }
-
- (baseManifest.dependencies || [])
- .concat(data.dependencies || [])
- .forEach(function( dependency ) {
- manifest.dependencies[ "ui." + dependency ] = pkg.version;
- });
-
- grunt.file.write( manifest.name + ".jquery.json",
- JSON.stringify( manifest, null, "\t" ) + "\n" );
- totalManifests += 1;
- });
- });
-
- uiFiles = grunt.file.expand( "ui/*.js" ).length;
- if ( totalManifests !== uiFiles ) {
- grunt.log.error( "Generated " + totalManifests + " manifest files, but there are " +
- uiFiles + " ui/*.js files. Do all of them have entries?" );
- return false;
- }
-});
-
grunt.registerTask( "clean", function() {
require( "rimraf" ).sync( "dist" );
});
diff --git a/build/widget.json b/build/widget.json
deleted file mode 100644
index df09accd6..000000000
--- a/build/widget.json
+++ /dev/null
@@ -1,106 +0,0 @@
-{
- "accordion": {
- "dependencies": [],
- "description": "Displays collapsible content panels for presenting information in a limited amount of space.",
- "keywords": [
- "navigation",
- "panel",
- "collapse",
- "expand"
- ]
- },
- "autocomplete": {
- "dependencies": [ "menu", "position" ],
- "description": "Lists suggested words as the user is typing.",
- "keywords": [
- "form",
- "word",
- "predict",
- "suggest"
- ]
- },
- "button": {
- "dependencies": [],
- "description": "Enhances a form with themeable buttons.",
- "keywords": [
- "form",
- "radio",
- "checkbox"
- ]
- },
- "dialog": {
- "dependencies": [ "button", "draggable", "position", "resizable" ],
- "description": "Displays customizable dialog windows.",
- "keywords": [
- "modal",
- "alert",
- "popup"
- ]
- },
- "menu": {
- "dependencies": [ "position" ],
- "description": "Creates nestable menus.",
- "keywords": [
- "dropdown",
- "flyout"
- ]
- },
- "mouse": {
- "dependencies": [],
- "description": "Abstracts mouse-based interactions to assist in creating certain widgets.",
- "keywords": [
- "abstraction"
- ],
- "category": "core"
- },
- "progressbar": {
- "dependencies": [],
- "description": "Displays a status indicator for loading state, standard percentage, and other progress indicators.",
- "keywords": [
- "determinate",
- "status"
- ]
- },
- "selectmenu": {
- "dependencies": [ "position", "menu" ],
- "description": "Duplicates and extends the functionality of a native HTML select element, allowing it to be customizable in behavior and appearance far beyond the limitations of a native select.",
- "keywords": [
- "form",
- "select"
- ]
- },
- "slider": {
- "dependencies": [ "mouse" ],
- "description": "Displays a flexible slider with ranges and accessibility via keyboard.",
- "keywords": [
- "form",
- "number",
- "range"
- ]
- },
- "spinner": {
- "dependencies": [ "button" ],
- "description": "Displays buttons to easily input numbers via the keyboard or mouse.",
- "keywords": [
- "form",
- "number",
- "spinbutton",
- "stepper"
- ]
- },
- "tabs": {
- "dependencies": [],
- "description": "Transforms a set of container elements into a tab structure.",
- "keywords": [
- "navigation",
- "panel",
- "collapse",
- "expand"
- ]
- },
- "tooltip": {
- "dependencies": [ "position" ],
- "description": "Shows additional information for any element on hover or focus.",
- "keywords": []
- }
-}