Skip to content

Commit 185cb77

Browse files
author
Philipp Alferov
committed
Switching back from bulkify
1 parent b9c3204 commit 185cb77

15 files changed

+126
-153
lines changed

dist/angular-file-saver.js

Lines changed: 47 additions & 59 deletions
Original file line numberDiff line numberDiff line change
@@ -11,45 +11,23 @@
1111
*
1212
*/
1313

14+
angular.module('ngFileSaver', [])
15+
.factory('FileSaver', ['Blob', 'SaveAs', 'FileSaverUtils', require('./angular-file-saver.service')])
16+
.factory('FileSaverUtils', [require('./utils/utils.service.js')])
17+
.factory('Blob', ['$window', require('./dependencies/blob.service.js')])
18+
.factory('SaveAs', ['$window', require('./dependencies/file-saver.service.js')]);
1419

15-
16-
module.exports = angular.module('ngFileSaver', []);
17-
18-
({"angular-file-saver.service":require("./angular-file-saver.service.js"),"blob.service":require("./blob.service.js"),"file-saver.service":require("./file-saver.service.js")});
19-
20-
},{"./angular-file-saver.service.js":2,"./blob.service.js":3,"./file-saver.service.js":4}],2:[function(require,module,exports){
20+
},{"./angular-file-saver.service":2,"./dependencies/blob.service.js":3,"./dependencies/file-saver.service.js":4,"./utils/utils.service.js":5}],2:[function(require,module,exports){
2121
'use strict';
2222

23-
var ngFileSaver = require('./angular-file-saver.module.js');
24-
25-
function handleErrors(msg) {
26-
throw new Error(msg);
27-
}
28-
29-
function isArray(obj) {
30-
return Object.prototype.toString.call(obj) === '[object Array]';
31-
}
23+
module.exports = function FileSaver(Blob, SaveAs, FileSaverUtils) {
3224

33-
function isObject(obj) {
34-
return obj !== null && typeof obj === 'object';
35-
}
36-
37-
function isString(obj) {
38-
return typeof obj === 'string' || obj instanceof String;
39-
}
40-
41-
function isUndefined(obj) {
42-
return typeof obj === 'undefined';
43-
}
44-
45-
function FileSaver($window, Blob, SaveAs) {
46-
console.log(Blob, SaveAs);
47-
if (isUndefined(FileSaver)) {
48-
handleErrors('saveAs is not supported. Please include saveAs polyfill');
25+
if (FileSaverUtils.isUndefined(FileSaver)) {
26+
FileSaverUtils.handleErrors('saveAs is not supported. Please include saveAs polyfill');
4927
}
5028

51-
if (isUndefined(Blob)) {
52-
handleErrors('Blob is not supported. Please include blob polyfill');
29+
if (FileSaverUtils.isUndefined(Blob)) {
30+
FileSaverUtils.handleErrors('Blob is not supported. Please include blob polyfill');
5331
}
5432

5533
function isBlobInstance(obj) {
@@ -60,7 +38,7 @@ function FileSaver($window, Blob, SaveAs) {
6038
try {
6139
SaveAs(blob, filename);
6240
} catch(err) {
63-
handleErrors(err.message);
41+
FileSaverUtils.handleErrors(err.message);
6442
}
6543
}
6644

@@ -81,12 +59,12 @@ function FileSaver($window, Blob, SaveAs) {
8159
var filename = config.filename;
8260
var options = config.options;
8361

84-
if (!isArray(data) && !isBlobInstance(data)) {
85-
handleErrors('Data argument should be represented as an array or Blob instance');
62+
if (!FileSaverUtils.isArray(data) && !isBlobInstance(data)) {
63+
FileSaverUtils.handleErrors('Data argument should be represented as an array or Blob instance');
8664
}
8765

88-
if (!isString(filename)) {
89-
handleErrors('Filename argument should be a string');
66+
if (!FileSaverUtils.isString(filename)) {
67+
FileSaverUtils.handleErrors('Filename argument should be a string');
9068
}
9169

9270
if (isBlobInstance(data)) {
@@ -97,35 +75,45 @@ function FileSaver($window, Blob, SaveAs) {
9775
return save(blob, filename);
9876
}
9977
};
100-
}
101-
102-
ngFileSaver
103-
.factory('FileSaver', ['$window', FileSaver]);
78+
};
10479

105-
},{"./angular-file-saver.module.js":1}],3:[function(require,module,exports){
80+
},{}],3:[function(require,module,exports){
10681
'use strict';
10782

108-
var ngFileSaver = require('./angular-file-saver.module.js');
109-
110-
111-
function Blob($window) {
83+
module.exports = function Blob($window) {
11284
return $window.Blob;
113-
}
114-
115-
ngFileSaver
116-
.factory('Blob', ['$window', Blob]);
85+
};
11786

118-
},{"./angular-file-saver.module.js":1}],4:[function(require,module,exports){
87+
},{}],4:[function(require,module,exports){
11988
'use strict';
12089

121-
var ngFileSaver = require('./angular-file-saver.module.js');
90+
var ngFileSaver = require('../angular-file-saver.module');
12291

123-
124-
function SaveAs($window) {
92+
module.exports = function SaveAs($window) {
12593
return $window.saveAs;
126-
}
94+
};
12795

128-
ngFileSaver
129-
.factory('SaveAs', ['$window', SaveAs]);
96+
},{"../angular-file-saver.module":1}],5:[function(require,module,exports){
97+
'use strict';
98+
99+
module.exports = function FileSaverUtils() {
100+
return {
101+
handleErrors: function(msg) {
102+
throw new Error(msg);
103+
},
104+
isArray: function isArray(obj) {
105+
return Object.prototype.toString.call(obj) === '[object Array]';
106+
},
107+
isObject: function(obj) {
108+
return obj !== null && typeof obj === 'object';
109+
},
110+
isString: function(obj) {
111+
return typeof obj === 'string' || obj instanceof String;
112+
},
113+
isUndefined: function isUndefined(obj) {
114+
return typeof obj === 'undefined';
115+
}
116+
};
117+
};
130118

131-
},{"./angular-file-saver.module.js":1}]},{},[1]);
119+
},{}]},{},[1]);

dist/angular-file-saver.min.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

docs/dist/examples.js

Lines changed: 38 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -28992,18 +28992,16 @@ module.exports = angular;
2899228992
*
2899328993
*/
2899428994

28995+
angular.module('ngFileSaver', [])
28996+
.factory('FileSaver', ['Blob', 'SaveAs', 'FileSaverUtils', require('./angular-file-saver.service')])
28997+
.factory('FileSaverUtils', [require('./utils/utils.service.js')])
28998+
.factory('Blob', ['$window', require('./dependencies/blob.service.js')])
28999+
.factory('SaveAs', ['$window', require('./dependencies/file-saver.service.js')]);
2899529000

28996-
28997-
module.exports = angular.module('ngFileSaver', []);
28998-
28999-
({"angular-file-saver.service":require("./angular-file-saver.service.js"),"blob.service":require("./blob.service.js"),"file-saver.service":require("./file-saver.service.js")});
29000-
29001-
},{"./angular-file-saver.service.js":6,"./blob.service.js":7,"./file-saver.service.js":8}],6:[function(require,module,exports){
29001+
},{"./angular-file-saver.service":6,"./dependencies/blob.service.js":7,"./dependencies/file-saver.service.js":8,"./utils/utils.service.js":9}],6:[function(require,module,exports){
2900229002
'use strict';
2900329003

29004-
var ngFileSaver = require('./angular-file-saver.module.js');
29005-
29006-
function FileSaver(Blob, SaveAs, FileSaverUtils) {
29004+
module.exports = function FileSaver(Blob, SaveAs, FileSaverUtils) {
2900729005

2900829006
if (FileSaverUtils.isUndefined(FileSaver)) {
2900929007
FileSaverUtils.handleErrors('saveAs is not supported. Please include saveAs polyfill');
@@ -29058,33 +29056,45 @@ function FileSaver(Blob, SaveAs, FileSaverUtils) {
2905829056
return save(blob, filename);
2905929057
}
2906029058
};
29061-
}
29062-
29063-
ngFileSaver
29064-
.factory('FileSaver', ['Blob', 'SaveAs', 'FileSaverUtils', FileSaver]);
29059+
};
2906529060

29066-
},{"./angular-file-saver.module.js":5}],7:[function(require,module,exports){
29061+
},{}],7:[function(require,module,exports){
2906729062
'use strict';
2906829063

29069-
var ngFileSaver = require('./angular-file-saver.module.js');
29070-
29071-
function Blob($window) {
29064+
module.exports = function Blob($window) {
2907229065
return $window.Blob;
29073-
}
29074-
29075-
ngFileSaver
29076-
.factory('Blob', ['$window', Blob]);
29066+
};
2907729067

29078-
},{"./angular-file-saver.module.js":5}],8:[function(require,module,exports){
29068+
},{}],8:[function(require,module,exports){
2907929069
'use strict';
2908029070

29081-
var ngFileSaver = require('./angular-file-saver.module.js');
29071+
var ngFileSaver = require('../angular-file-saver.module');
2908229072

29083-
function SaveAs($window) {
29073+
module.exports = function SaveAs($window) {
2908429074
return $window.saveAs;
29085-
}
29075+
};
29076+
29077+
},{"../angular-file-saver.module":5}],9:[function(require,module,exports){
29078+
'use strict';
2908629079

29087-
ngFileSaver
29088-
.factory('SaveAs', ['$window', SaveAs]);
29080+
module.exports = function FileSaverUtils() {
29081+
return {
29082+
handleErrors: function(msg) {
29083+
throw new Error(msg);
29084+
},
29085+
isArray: function isArray(obj) {
29086+
return Object.prototype.toString.call(obj) === '[object Array]';
29087+
},
29088+
isObject: function(obj) {
29089+
return obj !== null && typeof obj === 'object';
29090+
},
29091+
isString: function(obj) {
29092+
return typeof obj === 'string' || obj instanceof String;
29093+
},
29094+
isUndefined: function isUndefined(obj) {
29095+
return typeof obj === 'undefined';
29096+
}
29097+
};
29098+
};
2908929099

29090-
},{"./angular-file-saver.module.js":5}]},{},[1]);
29100+
},{}]},{},[1]);

docs/dist/examples.min.js

Lines changed: 6 additions & 6 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

gulpfile.js

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -85,15 +85,6 @@ function buildScript() {
8585
fullPaths: false
8686
});
8787

88-
var transforms = [
89-
'brfs',
90-
'bulkify'
91-
];
92-
93-
transforms.forEach(function(transform) {
94-
bundler.transform(transform);
95-
});
96-
9788
function rebundle() {
9889
var stream = bundler.bundle();
9990

package.json

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,11 +28,9 @@
2828
"FileSaver.js": "https://github.com/alferov/FileSaver.js",
2929
"angular": "^1.4.5",
3030
"angular-mocks": "^1.4.5",
31-
"brfs": "^1.4.1",
3231
"browser-filesaver": "^1.0.0",
3332
"browser-sync": "^2.8.2",
3433
"browserify": "^11.0.1",
35-
"bulkify": "^1.1.1",
3634
"eslint": "^1.3.1",
3735
"gulp": "^3.9.0",
3836
"gulp-bump": "^0.3.1",
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
'use strict';
2+
3+
/*
4+
*
5+
* A AngularJS module that implements the HTML5 W3C saveAs() in browsers that
6+
* do not natively support it
7+
*
8+
* (c) 2015 Philipp Alferov
9+
* License: MIT
10+
*
11+
*/
12+
13+
angular.module('ngFileSaver', [])
14+
.factory('FileSaver', ['Blob', 'SaveAs', 'FileSaverUtils', require('./angular-file-saver.service')])
15+
.factory('FileSaverUtils', [require('./utils/utils.service.js')])
16+
.factory('Blob', ['$window', require('./dependencies/blob-bundle.service.js')])
17+
.factory('SaveAs', ['$window', require('./dependencies/file-saver-bundle.service.js')]);

src/angular-file-saver.module.js

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@
1010
*
1111
*/
1212

13-
var bulk = require('bulk-require');
14-
15-
module.exports = angular.module('ngFileSaver', []);
16-
17-
bulk(__dirname, ['./**/!(*.module).js']);
13+
angular.module('ngFileSaver', [])
14+
.factory('FileSaver', ['Blob', 'SaveAs', 'FileSaverUtils', require('./angular-file-saver.service')])
15+
.factory('FileSaverUtils', [require('./utils/utils.service.js')])
16+
.factory('Blob', ['$window', require('./dependencies/blob.service.js')])
17+
.factory('SaveAs', ['$window', require('./dependencies/file-saver.service.js')]);

src/angular-file-saver.service.js

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
11
'use strict';
22

3-
var ngFileSaver = require('./angular-file-saver.module');
4-
5-
function FileSaver(Blob, SaveAs, FileSaverUtils) {
3+
module.exports = function FileSaver(Blob, SaveAs, FileSaverUtils) {
64

75
if (FileSaverUtils.isUndefined(FileSaver)) {
86
FileSaverUtils.handleErrors('saveAs is not supported. Please include saveAs polyfill');
@@ -57,7 +55,4 @@ function FileSaver(Blob, SaveAs, FileSaverUtils) {
5755
return save(blob, filename);
5856
}
5957
};
60-
}
61-
62-
ngFileSaver
63-
.factory('FileSaver', ['Blob', 'SaveAs', 'FileSaverUtils', FileSaver]);
58+
};
Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,5 @@
11
'use strict';
22

3-
var ngFileSaver = require('../angular-file-saver.module');
4-
5-
function Blob($window) {
3+
module.exports = function Blob($window) {
64
return $window.Blob;
7-
}
8-
9-
ngFileSaver
10-
.factory('Blob', ['$window', Blob]);
5+
};

0 commit comments

Comments
 (0)