source: Dev/trunk/src/client/util/build/transforms/writeOptimized.js

Last change on this file was 483, checked in by hendrikvanantwerpen, 11 years ago

Added Dojo 1.9.3 release.

File size: 1.2 KB
Line 
1define(["../buildControl", "require"], function(bc, require){
2        var optimizers = {};
3
4        function resolveComments(optimizer) {
5                // This is for back-compat of comments and comments.keepLines,
6                // after the refactor to separate optimizers placed this logic in shrinksafe.
7                // TODO: remove @ 2.0 (along with shrinksafe entirely, perhaps)
8                return /^comments/.test(optimizer) ? "shrinksafe." + optimizer : optimizer;
9        }
10
11        if(bc.optimize){
12                bc.optimize = resolveComments(bc.optimize);
13                require(["./optimizer/" + bc.optimize.split(".")[0]], function(optimizer){
14                        optimizers[bc.optimize] = optimizer;
15                });
16        }
17        if(bc.layerOptimize){
18                bc.layerOptimize = resolveComments(bc.layerOptimize);
19                require(["./optimizer/" + bc.layerOptimize.split(".")[0]], function(optimizer){
20                        optimizers[bc.layerOptimize] = optimizer;
21                });
22        }
23
24        return function(resource, callback) {
25                if(bc.optimize && !resource.layer){
26                        return optimizers[bc.optimize](resource, resource.uncompressedText, resource.pack.copyright, bc.optimize, callback);
27                }else if(bc.layerOptimize && resource.layer && !resource.layer.discard){
28                        return optimizers[bc.layerOptimize](resource, resource.uncompressedText, resource.layer.copyright, bc.layerOptimize, callback);
29                }else{
30                        return 0;
31                }
32        };
33});
Note: See TracBrowser for help on using the repository browser.