Code coverage report for ./src/loaders/ocLazyLoad.loaders.jsLoader.js

Statements: 100% (12 / 12)      Branches: 100% (0 / 0)      Functions: 100% (7 / 7)      Lines: 100% (12 / 12)      Ignored: none     

All files » ./src/loaders\ » ocLazyLoad.loaders.jsLoader.js
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33    1     1 18                 18 3 3 3   3 2   1     18   18        
"use strict";
 
(function (angular) {
    "use strict";
 
    angular.module("oc.lazyLoad").config(function ($provide) {
        $provide.decorator("$ocLazyLoad", function ($delegate, $q) {
            /**
             * jsLoader function
             * @type Function
             * @param paths array list of js files to load
             * @param callback to call when everything is loaded. We use a callback and not a promise
             * @param params object config parameters
             * because the user can overwrite jsLoader and it will probably not use promises :(
             */
            $delegate.jsLoader = function (paths, callback, params) {
                var promises = [];
                angular.forEach(paths, function loading(path) {
                    promises.push($delegate.buildElement("js", path, params));
                });
                $q.all(promises).then(function success() {
                    callback();
                }, function error(err) {
                    callback(err);
                });
            };
            $delegate.jsLoader.ocLazyLoadLoader = true;
 
            return $delegate;
        });
    });
})(angular);
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkM6L3dhbXAvd3d3L29jTGF6eUxvYWQvc3JjL2xvYWRlcnMvb2NMYXp5TG9hZC5sb2FkZXJzLmpzTG9hZGVyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsQ0FBQyxVQUFTLE9BQU8sRUFBRTtBQUNmLGdCQUFZLENBQUM7O0FBRWIsV0FBTyxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQyxNQUFNLENBQUMsVUFBUyxRQUFRLEVBQUU7QUFDcEQsZ0JBQVEsQ0FBQyxTQUFTLENBQUMsYUFBYSxFQUFFLFVBQVUsU0FBUyxFQUFFLEVBQUUsRUFBRTs7Ozs7Ozs7O0FBU3ZELHFCQUFTLENBQUMsUUFBUSxHQUFHLFVBQVMsS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUU7QUFDbkQsb0JBQUksUUFBUSxHQUFHLEVBQUUsQ0FBQztBQUNsQix1QkFBTyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsU0FBUyxPQUFPLENBQUMsSUFBSSxFQUFFO0FBQzFDLDRCQUFRLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDO2lCQUM3RCxDQUFDLENBQUM7QUFDSCxrQkFBRSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxPQUFPLEdBQUc7QUFDckMsNEJBQVEsRUFBRSxDQUFDO2lCQUNkLEVBQUUsU0FBUyxLQUFLLENBQUMsR0FBRyxFQUFFO0FBQ25CLDRCQUFRLENBQUMsR0FBRyxDQUFDLENBQUM7aUJBQ2pCLENBQUMsQ0FBQzthQUNOLENBQUM7QUFDRixxQkFBUyxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUM7O0FBRTNDLG1CQUFPLFNBQVMsQ0FBQztTQUNwQixDQUFDLENBQUE7S0FDTCxDQUFDLENBQUE7Q0FFTCxDQUFBLENBQUUsT0FBTyxDQUFDLENBQUMiLCJmaWxlIjoiQzovd2FtcC93d3cvb2NMYXp5TG9hZC9zcmMvbG9hZGVycy9vY0xhenlMb2FkLmxvYWRlcnMuanNMb2FkZXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyIoZnVuY3Rpb24oYW5ndWxhcikge1xuICAgICd1c2Ugc3RyaWN0JztcblxuICAgIGFuZ3VsYXIubW9kdWxlKCdvYy5sYXp5TG9hZCcpLmNvbmZpZyhmdW5jdGlvbigkcHJvdmlkZSkge1xuICAgICAgICAkcHJvdmlkZS5kZWNvcmF0b3IoJyRvY0xhenlMb2FkJywgZnVuY3Rpb24gKCRkZWxlZ2F0ZSwgJHEpIHtcbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICoganNMb2FkZXIgZnVuY3Rpb25cbiAgICAgICAgICAgICAqIEB0eXBlIEZ1bmN0aW9uXG4gICAgICAgICAgICAgKiBAcGFyYW0gcGF0aHMgYXJyYXkgbGlzdCBvZiBqcyBmaWxlcyB0byBsb2FkXG4gICAgICAgICAgICAgKiBAcGFyYW0gY2FsbGJhY2sgdG8gY2FsbCB3aGVuIGV2ZXJ5dGhpbmcgaXMgbG9hZGVkLiBXZSB1c2UgYSBjYWxsYmFjayBhbmQgbm90IGEgcHJvbWlzZVxuICAgICAgICAgICAgICogQHBhcmFtIHBhcmFtcyBvYmplY3QgY29uZmlnIHBhcmFtZXRlcnNcbiAgICAgICAgICAgICAqIGJlY2F1c2UgdGhlIHVzZXIgY2FuIG92ZXJ3cml0ZSBqc0xvYWRlciBhbmQgaXQgd2lsbCBwcm9iYWJseSBub3QgdXNlIHByb21pc2VzIDooXG4gICAgICAgICAgICAgKi9cbiAgICAgICAgICAgICRkZWxlZ2F0ZS5qc0xvYWRlciA9IGZ1bmN0aW9uKHBhdGhzLCBjYWxsYmFjaywgcGFyYW1zKSB7XG4gICAgICAgICAgICAgICAgdmFyIHByb21pc2VzID0gW107XG4gICAgICAgICAgICAgICAgYW5ndWxhci5mb3JFYWNoKHBhdGhzLCBmdW5jdGlvbiBsb2FkaW5nKHBhdGgpIHtcbiAgICAgICAgICAgICAgICAgICAgcHJvbWlzZXMucHVzaCgkZGVsZWdhdGUuYnVpbGRFbGVtZW50KCdqcycsIHBhdGgsIHBhcmFtcykpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICRxLmFsbChwcm9taXNlcykudGhlbihmdW5jdGlvbiBzdWNjZXNzKCkge1xuICAgICAgICAgICAgICAgICAgICBjYWxsYmFjaygpO1xuICAgICAgICAgICAgICAgIH0sIGZ1bmN0aW9uIGVycm9yKGVycikge1xuICAgICAgICAgICAgICAgICAgICBjYWxsYmFjayhlcnIpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICRkZWxlZ2F0ZS5qc0xvYWRlci5vY0xhenlMb2FkTG9hZGVyID0gdHJ1ZTtcblxuICAgICAgICAgICAgcmV0dXJuICRkZWxlZ2F0ZTtcbiAgICAgICAgfSlcbiAgICB9KVxuXG59KShhbmd1bGFyKTtcbiJdfQ==