diff --git a/build/build.html b/build/build.html index c5bab02e..a48049a8 100644 --- a/build/build.html +++ b/build/build.html @@ -14,22 +14,23 @@ #container { text-align: left; margin: 0 auto; - width: 600px; + width: 780px; } #deplist { list-style: none; padding: 0; } #deplist li { - padding-top: 10px; - padding-bottom: 10px; - border-top: 1px solid #eee; + padding-top: 7px; + padding-bottom: 7px; + border-bottom: 1px solid #ddd; } #deplist li.heading { border: none; - background: #eee; + background: #ddd; padding: 5px 10px; - margin-top: 10px; + margin-top: 25px; + border-radius: 5px; } #deplist input { float: left; @@ -38,7 +39,7 @@ } #deplist label { float: left; - width: 190px; + width: 160px; font-weight: bold; } #deplist div { @@ -55,25 +56,36 @@ #command, #command2 { width: 100%; } + + #toolbar { + padding-bottom: 10px; + border-bottom: 1px solid #ddd; + } + + h2 { + margin-top: 2em; + }

Leaflet Build Helper

-

+

Select All | Deselect All

+

Building using Node and UglifyJS

- To build using UglifyJS, install Node, run npm install -g jake, then npm install -g uglify-js, then run this in the root Leaflet directory:
+ Install Node, install Jake & UglifyJS (npm install -g jake; npm install -g uglify-js), then run this in the root Leaflet directory:

+

Building using Closure Compiler

- To build using Closure Compiler, download and extract it into lib/closure-compiler directory and run this command in the root Leaflet directory:
+ Download Closure Compiler and extract it into lib/closure-compiler directory and run this command in the root Leaflet directory:

@@ -108,10 +120,10 @@ var checks = deplist.getElementsByTagName('input'); var compsStr = ''; - for (var i = 0; i < checks.length; i++) { + for (var i = 0, len = checks.length; i < len; i++) { if (checks[i].checked) { var srcs = deps[checks[i].id].src; - for (var j = 0; j < srcs.length; j++) { + for (var j = 0, len2 = srcs.length; j < len2; j++) { files[srcs[j]] = true; } compsStr = '1' + compsStr; diff --git a/build/deps.js b/build/deps.js index a78daa22..b49faeda 100644 --- a/build/deps.js +++ b/build/deps.js @@ -2,9 +2,9 @@ var deps = { Core: { src: ['Leaflet.js', 'core/Util.js', - 'core/Class.js', - 'core/Events.js', - 'core/Browser.js', + 'core/Class.js', + 'core/Events.js', + 'core/Browser.js', 'geometry/Point.js', 'geometry/Bounds.js', 'geometry/Transformation.js', @@ -20,78 +20,78 @@ var deps = { 'map/Map.js'], desc: 'The core of the library, including OOP, events, DOM facilities, basic units, projections (EPSG:3857 and EPSG:4326) and the base Map class.' }, - - + + EPSG3395: { src: ['geo/projection/Projection.Mercator.js', 'geo/crs/CRS.EPSG3395.js'], desc: 'EPSG:3395 projection (used by some map providers).', heading: 'Additional projections' }, - + TileLayer: { src: ['layer/tile/TileLayer.js'], desc: 'The base class for displaying tile layers on the map.', heading: 'Layers' }, - + TileLayerWMS: { src: ['layer/tile/TileLayer.WMS.js'], desc: 'WMS tile layer.', deps: ['TileLayer'] }, - + TileLayerCanvas: { src: ['layer/tile/TileLayer.Canvas.js'], desc: 'Tile layer made from canvases (for custom drawing purposes).', deps: ['TileLayer'] }, - + ImageOverlay: { src: ['layer/ImageOverlay.js'], desc: 'Used to display an image over a particular rectangular area of the map.' }, - + Marker: { src: ['layer/marker/Icon.js', 'layer/marker/Marker.js'], desc: 'Markers to put on the map.' }, - + Popup: { src: ['layer/Popup.js', 'layer/marker/Marker.Popup.js', 'map/ext/Map.Popup.js'], deps: ['Marker'], desc: 'Used to display the map popup (used mostly for binding HTML data to markers and paths on click).' }, - + LayerGroup: { src: ['layer/LayerGroup.js'], desc: 'Allows grouping several layers to handle them as one.' }, - + FeatureGroup: { src: ['layer/FeatureGroup.js'], deps: ['LayerGroup', 'Popup'], desc: 'Extends LayerGroup with mouse events and bindPopup method shared between layers.' }, - - + + Path: { src: ['layer/vector/Path.js', 'layer/vector/Path.SVG.js', 'layer/vector/Path.Popup.js'], desc: 'Vector rendering core (SVG-powered), enables overlaying the map with SVG paths.', heading: 'Vector layers' }, - + PathVML: { src: ['layer/vector/Path.VML.js'], desc: 'VML fallback for vector rendering core (IE 6-8).' }, - + Polyline: { src: ['geometry/LineUtil.js', 'layer/vector/Polyline.js'], deps: ['Path'], desc: 'Polyline overlays.' }, - + Polygon: { src: ['geometry/PolyUtil.js', 'layer/vector/Polygon.js'], deps: ['Polyline'], @@ -109,13 +109,13 @@ var deps = { deps: ['Path'], desc: 'Circle overlays (with radius in meters).' }, - + CircleMarker: { src: ['layer/vector/CircleMarker.js'], deps: ['Circle'], desc: 'Circle overlays with a constant pixel radius.' }, - + PathCanvas: { src: ['layer/vector/canvas/Path.Canvas.js', 'layer/vector/canvas/Polyline.Canvas.js', @@ -124,14 +124,14 @@ var deps = { deps: ['Path', 'Polyline', 'Polygon', 'Circle'], desc: 'Canvas fallback for vector layers (makes them work on Android 2+).' }, - + GeoJSON: { src: ['layer/GeoJSON.js'], deps: ['Marker', 'MultiPoly', 'FeatureGroup'], desc: 'GeoJSON layer, parses the data and adds corresponding layers above.' }, - + MapDrag: { src: ['dom/DomEvent.js', 'dom/Draggable.js', @@ -140,7 +140,7 @@ var deps = { desc: 'Makes the map draggable (by mouse or touch).', heading: 'Interaction' }, - + MouseZoom: { src: ['dom/DomEvent.js', 'handler/Handler.js', @@ -148,7 +148,7 @@ var deps = { 'handler/ScrollWheelZoom.js'], desc: 'Scroll wheel zoom and double click zoom on the map.' }, - + TouchZoom: { src: ['dom/DomEvent.js', 'dom/DomEvent.DoubleTap.js', @@ -157,69 +157,69 @@ var deps = { deps: ['MapAnimationZoom'], desc: 'Enables smooth touch zooming on iOS and double tap on iOS/Android.' }, - + ShiftDragZoom: { src: ['handler/ShiftDragZoom.js'], desc: 'Enables zooming to bounding box by shift-dragging the map.' }, - + MarkerDrag: { src: ['handler/MarkerDrag.js'], desc: 'Makes markers draggable (by mouse or touch).' }, - - + + ControlZoom: { - src: ['control/Control.js', - 'map/ext/Map.Control.js', + src: ['control/Control.js', + 'map/ext/Map.Control.js', 'control/Control.Zoom.js'], heading: 'Controls', desc: 'Basic zoom control with two buttons (zoom in / zoom out).' }, - + ControlAttrib: { - src: ['control/Control.js', - 'map/ext/Map.Control.js', + src: ['control/Control.js', + 'map/ext/Map.Control.js', 'control/Control.Attribution.js'], desc: 'Attribution control.' }, - + ControlLayers: { - src: ['control/Control.js', - 'map/ext/Map.Control.js', + src: ['control/Control.js', + 'map/ext/Map.Control.js', 'control/Control.Layers.js'], desc: 'Layer Switcher control.' }, - - - MapAnimationNative: { + + + AnimationNative: { src: ['dom/DomEvent.js', 'dom/transition/Transition.js', 'dom/transition/Transition.Native.js'], desc: 'Animation core that uses CSS3 Transitions (for powering pan & zoom animations). Works on mobile webkit-powered browsers and some modern desktop browsers.', heading: 'Visual effects' }, - - MapAnimationFallback: { + + AnimationTimer: { src: ['dom/transition/Transition.Timer.js'], - deps: ['MapAnimationNative'], + deps: ['AnimationNative'], desc: 'Timer-based animation fallback for browsers that don\'t support CSS3 transitions.' }, - - MapAnimationPan: { + + AnimationPan: { src: ['map/ext/Map.PanAnimation.js'], - deps: ['MapAnimationNative'], + deps: ['AnimationPan'], desc: 'Panning animation. Can use both native and timer-based animation.' }, - - MapAnimationZoom: { + + AnimationZoom: { src: ['map/ext/Map.ZoomAnimation.js'], - deps: ['MapAnimationPan', 'MapAnimationNative'], + deps: ['AnimationPan', 'AnimationNative'], desc: 'Smooth zooming animation. So far it works only on browsers that support CSS3 Transitions.' }, - - - MapGeolocation: { + + + Geolocation: { src: ['map/ext/Map.Geolocation.js'], desc: 'Adds Map#locate method and related events to make geolocation easier.', heading: 'Misc' @@ -228,4 +228,4 @@ var deps = { if (typeof exports !== 'undefined') { exports.deps = deps; -} \ No newline at end of file +}