1 | 'use strict';
|
2 |
|
3 | var path = require('path');
|
4 |
|
5 | var pipeline = require('when/pipeline');
|
6 |
|
7 | var listDirectory = require('./list-directory');
|
8 |
|
9 | var filer = require('../filer');
|
10 |
|
11 | var opts = {
|
12 | persistent: true,
|
13 | size: 1024 * 1024
|
14 | };
|
15 |
|
16 | function createAction(payload) {
|
17 | return {
|
18 | type: 'WRITE_FILE',
|
19 | payload: payload
|
20 | };
|
21 | }
|
22 |
|
23 | function writeFile(filename, text) {
|
24 | var dirname = path.dirname(filename);
|
25 |
|
26 | var seq = [function () {
|
27 | return filer.init(opts);
|
28 | }, function () {
|
29 | return filer.mkdir(dirname, false);
|
30 | }, function () {
|
31 | return filer.write(filename, { data: text, type: 'text/plain' });
|
32 | }, function () {
|
33 | return listDirectory('.');
|
34 | }, function (_ref) {
|
35 | var payload = _ref.payload;
|
36 | return { listing: payload.listing };
|
37 | }];
|
38 |
|
39 | return pipeline(seq).then(createAction);
|
40 | }
|
41 |
|
42 | module.exports = writeFile; |
\ | No newline at end of file |