Compare commits

...

8 Commits

Author SHA1 Message Date
9afe7c8a9e 2.1.0 2016-03-19 22:08:13 +01:00
9aac47cae3 now handling gulp streams allright 2016-03-19 22:07:59 +01:00
4e62bbeeea 2.0.0 2016-03-18 17:34:43 +01:00
4a8df9c12f tests running though, can now handle local and remote files 2016-03-18 17:34:31 +01:00
34d38cd3d4 work in progress 2016-03-18 09:19:46 +00:00
834b22ed8d 1.0.1 2016-03-14 04:22:42 +01:00
8e9b080004 update travis 2016-03-14 04:22:36 +01:00
d5d4d3ff67 1.0.0 2016-03-14 03:50:34 +01:00
17 changed files with 518 additions and 114 deletions

2
.gitignore vendored
View File

@ -8,5 +8,5 @@ ts/*.js
ts/*.js.map
ts/typings/
test/assets/
test/temp/

View File

@ -1,11 +1,11 @@
language: node_js
node_js:
- '4.2.4'
- 4.2.4
deploy:
provider: npm
email: npm@lossless.digital
api_key:
secure: 3RdzAcS9d6sLJs3tHM2uCVU2wV2NsKiLiYWue98DevgijIqTFDHtYuoP29p7fbB4SV87JRbTK1y41QM2u/CCjnbB+mrAUg/Pn08dTibmzi9liom67sLczIPD4eZeMznXPRaddESQdzqrtQfc/6P+1JQO7XWexLNebgYtMrUzYcOrHPWf/Uktk2cKiYfrO8piSR+HOFh2rzC5HjVZ/7fKDIa9bqTlBETkNc7s2NgB++jKRF9LNMVGI/9EmxjBzSSE1juOz26Ahp4+/+P3Lc5LngnTFOYsPoW5iWNY+AQltZxhu9K+rrtfn90rmQDnO7RCGO5yZgMS2+0UjJedwV+4ancU3nzoNmiuoIL7DjQ7NQlt0QKMmIqZuBFBc3tdxqotxNoJDk8/Ui0yfHWzJz0Fd22OI+VdTWNH1y5Vyywsql6wwkl2+Da1WhZf/Mn2gPgLPI0lssPTIl/u3Bey+167tZ3HvX0yqlvPO/JbqK02+5VrRBaV67vT00DG+dh4nnwqcX14Umx2a3JHt3tSGkDnDKpsLbvqjhPhkMRsCIloju+wMnyKjtScMZW+2FeO2n4PgbjNhF+5SG8pDmTS8p0Vy7iohUOiGIJty7K/1r6sQ1FNluhO5Ol3mBDs6wjg6S5QCSNL9eylpV52FV0UX4cRCijmzso+n48I2BbSwjghTB8=
secure: wIOQHE7Jbck2j5lcv1Rc8T9/1wbHNGLxqJ6pttNZ+hG1+w77TYnjNYuGtM2xQCXitXSFDoogU8MpiYieOQHYypFgJ6Ns8MTeKIzNJSnlOWdCSN/lVptscT8pyC6qD4IBAyi8m5F2HoGQR+IzcdDBPjXLaPbH7jn8hc9rNY+LNktmYOXfOr37P40pxYrf16GLwrkjQIK8pbkdIbNA0D0k3apTGqw+HsneN2D/O/zAYaB3ojm40ttgPAGYF5PO5t6uqIbPFgIPkMWsO1HbV6I+vOAuIf0KYUqnR/YZd5yFcxFt3c+bfyc8/LP4vy5FyKMLXHe4IXIjXPYetOSiVHgMMYaxawU51OqwIKO+87FJ1TdaVmacMFO0wagl2QS0ceQBn8KBUhljHu/fDInK82uy15Iddk44EhnTx1MIxxgH5WMM6aQB2vuqnViPghs4nA0Y/Dz2U69267fhvmZvEWWUndz058EksHdZsIt5WCqQErI/dWLXMGom94CuZv6nkoVHCw8CO5dqVvfqUFL7Qyw59kRbiUPItFVoiV8ptLUX9tnQ5xBukNRkFX34ViM9YvBRlGt5e//f+cWjUpXFvbrwkqusXArplpxIaUSsQKh7XaMB5DcZ5jDDdjKzIMDf6QWsMTU1rjfQS5ZS3eV5LPy0UlfpDGK28oK2/o8fM+yydVk=
on:
tags: true
repo: pushrocks/smartfile

15
dist/index.js vendored
View File

@ -1,15 +1,16 @@
/// <reference path="./typings/main.d.ts" />
"use strict";
var SmartfileChecks = require("./smartfile.checks");
var SmartfileSimple = require("./smartfile.simple");
var SmartfileFsaction = require("./smartfile.fsaction");
var SmartfileLocal = require("./smartfile.local");
var SmartfileRemote = require("./smartfile.remote");
var smartfile = {
copy: SmartfileSimple.copy,
fsaction: SmartfileFsaction,
checks: SmartfileChecks,
readFileToString: SmartfileSimple.readFileToString,
readFileToObject: SmartfileSimple.readFileToObject,
readFileToVinyl: SmartfileSimple.readFileToVinyl,
requireReload: SmartfileSimple.requireReload
local: SmartfileLocal,
remote: SmartfileRemote,
requireReload: SmartfileLocal.requireReload
};
module.exports = smartfile;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDRDQUE0Qzs7QUFHNUMsSUFBTyxlQUFlLFdBQVcsb0JBQW9CLENBQUMsQ0FBQztBQUN2RCxJQUFPLGVBQWUsV0FBVyxvQkFBb0IsQ0FBQyxDQUFDO0FBR3ZELElBQUksU0FBUyxHQUFPO0lBQ2hCLElBQUksRUFBRSxlQUFlLENBQUMsSUFBSTtJQUMxQixNQUFNLEVBQUUsZUFBZTtJQUN2QixnQkFBZ0IsRUFBRSxlQUFlLENBQUMsZ0JBQWdCO0lBQ2xELGdCQUFnQixFQUFFLGVBQWUsQ0FBQyxnQkFBZ0I7SUFDbEQsZUFBZSxFQUFFLGVBQWUsQ0FBQyxlQUFlO0lBQ2hELGFBQWEsRUFBRSxlQUFlLENBQUMsYUFBYTtDQUMvQyxDQUFDO0FBRUYsaUJBQVMsU0FBUyxDQUFDIiwiZmlsZSI6ImluZGV4LmpzIiwic291cmNlc0NvbnRlbnQiOlsiLy8vIDxyZWZlcmVuY2UgcGF0aD1cIi4vdHlwaW5ncy9tYWluLmQudHNcIiAvPlxuXG5pbXBvcnQgcGx1Z2lucyA9IHJlcXVpcmUoXCIuL3NtYXJ0ZmlsZS5wbHVnaW5zXCIpO1xuaW1wb3J0IFNtYXJ0ZmlsZUNoZWNrcyA9IHJlcXVpcmUoXCIuL3NtYXJ0ZmlsZS5jaGVja3NcIik7XG5pbXBvcnQgU21hcnRmaWxlU2ltcGxlID0gcmVxdWlyZShcIi4vc21hcnRmaWxlLnNpbXBsZVwiKTtcblxuXG52YXIgc21hcnRmaWxlOmFueSA9IHtcbiAgICBjb3B5OiBTbWFydGZpbGVTaW1wbGUuY29weSxcbiAgICBjaGVja3M6IFNtYXJ0ZmlsZUNoZWNrcyxcbiAgICByZWFkRmlsZVRvU3RyaW5nOiBTbWFydGZpbGVTaW1wbGUucmVhZEZpbGVUb1N0cmluZyxcbiAgICByZWFkRmlsZVRvT2JqZWN0OiBTbWFydGZpbGVTaW1wbGUucmVhZEZpbGVUb09iamVjdCxcbiAgICByZWFkRmlsZVRvVmlueWw6IFNtYXJ0ZmlsZVNpbXBsZS5yZWFkRmlsZVRvVmlueWwsXG4gICAgcmVxdWlyZVJlbG9hZDogU21hcnRmaWxlU2ltcGxlLnJlcXVpcmVSZWxvYWRcbn07XG5cbmV4cG9ydCA9IHNtYXJ0ZmlsZTtcbiJdLCJzb3VyY2VSb290IjoiL3NvdXJjZS8ifQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDRDQUE0Qzs7QUFHNUMsSUFBTyxlQUFlLFdBQVcsb0JBQW9CLENBQUMsQ0FBQztBQUN2RCxJQUFPLGlCQUFpQixXQUFXLHNCQUFzQixDQUFDLENBQUM7QUFDM0QsSUFBTyxjQUFjLFdBQVcsbUJBQW1CLENBQUMsQ0FBQztBQUNyRCxJQUFPLGVBQWUsV0FBVyxvQkFBb0IsQ0FBQyxDQUFDO0FBR3ZELElBQUksU0FBUyxHQUFPO0lBQ2hCLFFBQVEsRUFBRSxpQkFBaUI7SUFDM0IsTUFBTSxFQUFFLGVBQWU7SUFDdkIsS0FBSyxFQUFFLGNBQWM7SUFDckIsTUFBTSxFQUFFLGVBQWU7SUFDdkIsYUFBYSxFQUFFLGNBQWMsQ0FBQyxhQUFhO0NBQzlDLENBQUM7QUFFRixpQkFBUyxTQUFTLENBQUMiLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VzQ29udGVudCI6WyIvLy8gPHJlZmVyZW5jZSBwYXRoPVwiLi90eXBpbmdzL21haW4uZC50c1wiIC8+XG5cbmltcG9ydCBwbHVnaW5zID0gcmVxdWlyZShcIi4vc21hcnRmaWxlLnBsdWdpbnNcIik7XG5pbXBvcnQgU21hcnRmaWxlQ2hlY2tzID0gcmVxdWlyZShcIi4vc21hcnRmaWxlLmNoZWNrc1wiKTtcbmltcG9ydCBTbWFydGZpbGVGc2FjdGlvbiA9IHJlcXVpcmUoXCIuL3NtYXJ0ZmlsZS5mc2FjdGlvblwiKTtcbmltcG9ydCBTbWFydGZpbGVMb2NhbCA9IHJlcXVpcmUoXCIuL3NtYXJ0ZmlsZS5sb2NhbFwiKTtcbmltcG9ydCBTbWFydGZpbGVSZW1vdGUgPSByZXF1aXJlKFwiLi9zbWFydGZpbGUucmVtb3RlXCIpO1xuXG5cbnZhciBzbWFydGZpbGU6YW55ID0ge1xuICAgIGZzYWN0aW9uOiBTbWFydGZpbGVGc2FjdGlvbixcbiAgICBjaGVja3M6IFNtYXJ0ZmlsZUNoZWNrcyxcbiAgICBsb2NhbDogU21hcnRmaWxlTG9jYWwsXG4gICAgcmVtb3RlOiBTbWFydGZpbGVSZW1vdGUsXG4gICAgcmVxdWlyZVJlbG9hZDogU21hcnRmaWxlTG9jYWwucmVxdWlyZVJlbG9hZFxufTtcblxuZXhwb3J0ID0gc21hcnRmaWxlO1xuIl0sInNvdXJjZVJvb3QiOiIvc291cmNlLyJ9

8
dist/smartfile.fsaction.js vendored Normal file
View File

@ -0,0 +1,8 @@
/// <reference path="./typings/main.d.ts" />
"use strict";
var plugins = require("./smartfile.plugins");
exports.copy = function (fromArg, toArg) {
plugins.shelljs.cp("-r", fromArg, toArg);
};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNtYXJ0ZmlsZS5mc2FjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSw0Q0FBNEM7O0FBRTVDLElBQU8sT0FBTyxXQUFXLHFCQUFxQixDQUFDLENBQUM7QUFFckMsWUFBSSxHQUFHLFVBQVMsT0FBYyxFQUFDLEtBQVk7SUFDbEQsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsSUFBSSxFQUFDLE9BQU8sRUFBQyxLQUFLLENBQUMsQ0FBQztBQUMzQyxDQUFDLENBQUMiLCJmaWxlIjoic21hcnRmaWxlLmZzYWN0aW9uLmpzIiwic291cmNlc0NvbnRlbnQiOlsiLy8vIDxyZWZlcmVuY2UgcGF0aD1cIi4vdHlwaW5ncy9tYWluLmQudHNcIiAvPlxuXG5pbXBvcnQgcGx1Z2lucyA9IHJlcXVpcmUoXCIuL3NtYXJ0ZmlsZS5wbHVnaW5zXCIpO1xuXG5leHBvcnQgbGV0IGNvcHkgPSBmdW5jdGlvbihmcm9tQXJnOnN0cmluZyx0b0FyZzpzdHJpbmcpe1xuICAgIHBsdWdpbnMuc2hlbGxqcy5jcChcIi1yXCIsZnJvbUFyZyx0b0FyZyk7XG59OyJdLCJzb3VyY2VSb290IjoiL3NvdXJjZS8ifQ==

81
dist/smartfile.local.js vendored Normal file

File diff suppressed because one or more lines are too long

View File

@ -2,12 +2,17 @@
/// <reference path="./typings/main.d.ts" />
exports.beautylog = require("beautylog");
exports.fs = require("fs-extra");
exports.gulp = require("gulp");
exports.g = {
remoteSrc: require("gulp-remote-src")
};
exports.path = require("path");
exports.q = require("q");
exports.vinyl = require("vinyl");
exports.vinylFile = require("vinyl-file");
exports.yaml = require("js-yaml");
exports.request = require("request");
exports.requireReload = require("require-reload");
exports.shelljs = require("shelljs");
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNtYXJ0ZmlsZS5wbHVnaW5zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSw0Q0FBNEM7QUFDakMsaUJBQVMsR0FBRyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUM7QUFDakMsVUFBRSxHQUFHLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQztBQUN6QixZQUFJLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0FBQ3ZCLFNBQUMsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7QUFDakIsYUFBSyxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztBQUN6QixpQkFBUyxHQUFHLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQztBQUNsQyxZQUFJLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0FBQzFCLHFCQUFhLEdBQUcsT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBQUM7QUFDMUMsZUFBTyxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQyIsImZpbGUiOiJzbWFydGZpbGUucGx1Z2lucy5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8vLyA8cmVmZXJlbmNlIHBhdGg9XCIuL3R5cGluZ3MvbWFpbi5kLnRzXCIgLz5cbmV4cG9ydCBsZXQgYmVhdXR5bG9nID0gcmVxdWlyZShcImJlYXV0eWxvZ1wiKTtcbmV4cG9ydCBsZXQgZnMgPSByZXF1aXJlKFwiZnMtZXh0cmFcIik7XG5leHBvcnQgbGV0IHBhdGggPSByZXF1aXJlKFwicGF0aFwiKTtcbmV4cG9ydCBsZXQgcSA9IHJlcXVpcmUoXCJxXCIpO1xuZXhwb3J0IGxldCB2aW55bCA9IHJlcXVpcmUoXCJ2aW55bFwiKTtcbmV4cG9ydCBsZXQgdmlueWxGaWxlID0gcmVxdWlyZShcInZpbnlsLWZpbGVcIik7XG5leHBvcnQgbGV0IHlhbWwgPSByZXF1aXJlKFwianMteWFtbFwiKTtcbmV4cG9ydCBsZXQgcmVxdWlyZVJlbG9hZCA9IHJlcXVpcmUoXCJyZXF1aXJlLXJlbG9hZFwiKTtcbmV4cG9ydCBsZXQgc2hlbGxqcyA9IHJlcXVpcmUoXCJzaGVsbGpzXCIpO1xuIl0sInNvdXJjZVJvb3QiOiIvc291cmNlLyJ9
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNtYXJ0ZmlsZS5wbHVnaW5zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSw0Q0FBNEM7QUFDakMsaUJBQVMsR0FBRyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUM7QUFDakMsVUFBRSxHQUFHLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQztBQUN6QixZQUFJLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0FBQ3ZCLFNBQUMsR0FBRztJQUNYLFNBQVMsRUFBRSxPQUFPLENBQUMsaUJBQWlCLENBQUM7Q0FDeEMsQ0FBQztBQUNTLFlBQUksR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7QUFDdkIsU0FBQyxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUNqQixhQUFLLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0FBQ3pCLGlCQUFTLEdBQUcsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDO0FBQ2xDLFlBQUksR0FBRyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUM7QUFDMUIsZUFBTyxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztBQUM3QixxQkFBYSxHQUFHLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0FBQzFDLGVBQU8sR0FBRyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUMiLCJmaWxlIjoic21hcnRmaWxlLnBsdWdpbnMuanMiLCJzb3VyY2VzQ29udGVudCI6WyIvLy8gPHJlZmVyZW5jZSBwYXRoPVwiLi90eXBpbmdzL21haW4uZC50c1wiIC8+XG5leHBvcnQgbGV0IGJlYXV0eWxvZyA9IHJlcXVpcmUoXCJiZWF1dHlsb2dcIik7XG5leHBvcnQgbGV0IGZzID0gcmVxdWlyZShcImZzLWV4dHJhXCIpO1xuZXhwb3J0IGxldCBndWxwID0gcmVxdWlyZShcImd1bHBcIik7XG5leHBvcnQgbGV0IGcgPSB7XG4gICAgcmVtb3RlU3JjOiByZXF1aXJlKFwiZ3VscC1yZW1vdGUtc3JjXCIpXG59O1xuZXhwb3J0IGxldCBwYXRoID0gcmVxdWlyZShcInBhdGhcIik7XG5leHBvcnQgbGV0IHEgPSByZXF1aXJlKFwicVwiKTtcbmV4cG9ydCBsZXQgdmlueWwgPSByZXF1aXJlKFwidmlueWxcIik7XG5leHBvcnQgbGV0IHZpbnlsRmlsZSA9IHJlcXVpcmUoXCJ2aW55bC1maWxlXCIpO1xuZXhwb3J0IGxldCB5YW1sID0gcmVxdWlyZShcImpzLXlhbWxcIik7XG5leHBvcnQgbGV0IHJlcXVlc3QgPSByZXF1aXJlKFwicmVxdWVzdFwiKTtcbmV4cG9ydCBsZXQgcmVxdWlyZVJlbG9hZCA9IHJlcXVpcmUoXCJyZXF1aXJlLXJlbG9hZFwiKTtcbmV4cG9ydCBsZXQgc2hlbGxqcyA9IHJlcXVpcmUoXCJzaGVsbGpzXCIpO1xuIl0sInNvdXJjZVJvb3QiOiIvc291cmNlLyJ9

69
dist/smartfile.read.js vendored Normal file
View File

@ -0,0 +1,69 @@
/// <reference path="./typings/main.d.ts" />
"use strict";
var plugins = require("./smartfile.plugins");
exports.toFS = function (options, cb) {
if (cb === void 0) { cb = undefined; }
};
/**
*
* @param filePath
* @param fileTypeArg
* @returns {any}
*/
exports.toObject = function (filePath, fileTypeArg) {
if (fileTypeArg === void 0) { fileTypeArg = undefined; }
var fileType;
if (typeof fileTypeArg == "undefined") {
fileType = plugins.path.extname(filePath);
}
else {
fileType = fileTypeArg;
}
fileType = fileType.replace(/\.([a-z]*)/, "$1"); //remove . form fileType
switch (fileType) {
case "yml":
case "yaml":
try {
return plugins.yaml.safeLoad(plugins.fs.readFileSync(filePath, 'utf8'));
}
catch (e) {
plugins.beautylog.error("check that " + filePath.blue + " points to a valid file");
}
break;
case "json":
return plugins.fs.readJsonSync(filePath, {});
default:
plugins.beautylog.error("file type " + fileType.blue + " not supported");
break;
}
};
/**
* reads a file content to a String
* @param filePath
* @returns {string|Buffer|any}
*/
exports.toString = function (filePath) {
var fileString;
fileString = plugins.fs.readFileSync(filePath, "utf8");
return fileString;
};
/**
*
* @param filePathArg
* @param options
* @returns {number}
*/
exports.toVinyl = function (filePathArg, options) {
if (options === void 0) { options = {}; }
return plugins.vinylFile.readSync(filePathArg, options);
};
/**
* lets you reload files hot.
* @param path
* @returns {any}
*/
exports.requireReload = function (path) {
return plugins.requireReload(path);
};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNtYXJ0ZmlsZS5yZWFkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDRDQUE0Qzs7QUFFNUMsSUFBTyxPQUFPLFdBQVcscUJBQXFCLENBQUMsQ0FBQztBQUVyQyxZQUFJLEdBQUcsVUFBUyxPQUFtQyxFQUFFLEVBQVk7SUFBWixrQkFBWSxHQUFaLGNBQVk7QUFFNUUsQ0FBQyxDQUFDO0FBRUY7Ozs7O0dBS0c7QUFDUSxnQkFBUSxHQUFHLFVBQVMsUUFBUSxFQUFDLFdBQXVCO0lBQXZCLDJCQUF1QixHQUF2Qix1QkFBdUI7SUFDM0QsSUFBSSxRQUFRLENBQUM7SUFDYixFQUFFLENBQUMsQ0FBQyxPQUFPLFdBQVcsSUFBSSxXQUFXLENBQUMsQ0FBQyxDQUFDO1FBQ3BDLFFBQVEsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUM5QyxDQUFDO0lBQUMsSUFBSSxDQUFDLENBQUM7UUFDSixRQUFRLEdBQUcsV0FBVyxDQUFDO0lBQzNCLENBQUM7SUFDRCxRQUFRLEdBQUcsUUFBUSxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyx3QkFBd0I7SUFDeEUsTUFBTSxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztRQUNmLEtBQUssS0FBSyxDQUFFO1FBQ1osS0FBSyxNQUFNO1lBQ1AsSUFBSSxDQUFDO2dCQUNELE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQztZQUM1RSxDQUFFO1lBQUEsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUEsQ0FBQztnQkFDUixPQUFPLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxhQUFhLEdBQUcsUUFBUSxDQUFDLElBQUksR0FBRyx5QkFBeUIsQ0FBQyxDQUFDO1lBQ3ZGLENBQUM7WUFDRCxLQUFLLENBQUM7UUFDVixLQUFLLE1BQU07WUFDUCxNQUFNLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ2hEO1lBQ0ksT0FBTyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsWUFBWSxHQUFHLFFBQVEsQ0FBQyxJQUFJLEdBQUcsZ0JBQWdCLENBQUMsQ0FBQztZQUN6RSxLQUFLLENBQUM7SUFDZCxDQUFDO0FBQ0wsQ0FBQyxDQUFDO0FBRUY7Ozs7R0FJRztBQUNRLGdCQUFRLEdBQUcsVUFBUyxRQUFRO0lBQ25DLElBQUksVUFBVSxDQUFDO0lBQ2YsVUFBVSxHQUFHLE9BQU8sQ0FBQyxFQUFFLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUN2RCxNQUFNLENBQUMsVUFBVSxDQUFDO0FBQ3RCLENBQUMsQ0FBQztBQUVGOzs7OztHQUtHO0FBQ1EsZUFBTyxHQUFHLFVBQVMsV0FBVyxFQUFDLE9BQVk7SUFBWix1QkFBWSxHQUFaLFlBQVk7SUFDbEQsTUFBTSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLFdBQVcsRUFBQyxPQUFPLENBQUMsQ0FBQztBQUMzRCxDQUFDLENBQUM7QUFFRjs7OztHQUlHO0FBQ1EscUJBQWEsR0FBRyxVQUFTLElBQVc7SUFDM0MsTUFBTSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUM7QUFDdkMsQ0FBQyxDQUFDIiwiZmlsZSI6InNtYXJ0ZmlsZS5yZWFkLmpzIiwic291cmNlc0NvbnRlbnQiOlsiLy8vIDxyZWZlcmVuY2UgcGF0aD1cIi4vdHlwaW5ncy9tYWluLmQudHNcIiAvPlxuXG5pbXBvcnQgcGx1Z2lucyA9IHJlcXVpcmUoXCIuL3NtYXJ0ZmlsZS5wbHVnaW5zXCIpO1xuXG5leHBvcnQgbGV0IHRvRlMgPSBmdW5jdGlvbihvcHRpb25zOntmcm9tOnN0cmluZyx0b1BhdGg6c3RyaW5nfSwgY2I9dW5kZWZpbmVkKXtcbiAgICBcbn07XG5cbi8qKlxuICpcbiAqIEBwYXJhbSBmaWxlUGF0aFxuICogQHBhcmFtIGZpbGVUeXBlQXJnXG4gKiBAcmV0dXJucyB7YW55fVxuICovXG5leHBvcnQgbGV0IHRvT2JqZWN0ID0gZnVuY3Rpb24oZmlsZVBhdGgsZmlsZVR5cGVBcmcgPSB1bmRlZmluZWQpIHtcbiAgICBsZXQgZmlsZVR5cGU7XG4gICAgaWYgKHR5cGVvZiBmaWxlVHlwZUFyZyA9PSBcInVuZGVmaW5lZFwiKSB7XG4gICAgICAgIGZpbGVUeXBlID0gcGx1Z2lucy5wYXRoLmV4dG5hbWUoZmlsZVBhdGgpO1xuICAgIH0gZWxzZSB7XG4gICAgICAgIGZpbGVUeXBlID0gZmlsZVR5cGVBcmc7XG4gICAgfVxuICAgIGZpbGVUeXBlID0gZmlsZVR5cGUucmVwbGFjZSgvXFwuKFthLXpdKikvLFwiJDFcIik7IC8vcmVtb3ZlIC4gZm9ybSBmaWxlVHlwZVxuICAgIHN3aXRjaCAoZmlsZVR5cGUpIHtcbiAgICAgICAgY2FzZSBcInltbFwiIDpcbiAgICAgICAgY2FzZSBcInlhbWxcIjpcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHBsdWdpbnMueWFtbC5zYWZlTG9hZChwbHVnaW5zLmZzLnJlYWRGaWxlU3luYyhmaWxlUGF0aCwgJ3V0ZjgnKSk7XG4gICAgICAgICAgICB9IGNhdGNoIChlKXtcbiAgICAgICAgICAgICAgICBwbHVnaW5zLmJlYXV0eWxvZy5lcnJvcihcImNoZWNrIHRoYXQgXCIgKyBmaWxlUGF0aC5ibHVlICsgXCIgcG9pbnRzIHRvIGEgdmFsaWQgZmlsZVwiKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIFwianNvblwiOlxuICAgICAgICAgICAgcmV0dXJuIHBsdWdpbnMuZnMucmVhZEpzb25TeW5jKGZpbGVQYXRoLHt9KTtcbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgIHBsdWdpbnMuYmVhdXR5bG9nLmVycm9yKFwiZmlsZSB0eXBlIFwiICsgZmlsZVR5cGUuYmx1ZSArIFwiIG5vdCBzdXBwb3J0ZWRcIik7XG4gICAgICAgICAgICBicmVhaztcbiAgICB9XG59O1xuXG4vKipcbiAqIHJlYWRzIGEgZmlsZSBjb250ZW50IHRvIGEgU3RyaW5nXG4gKiBAcGFyYW0gZmlsZVBhdGhcbiAqIEByZXR1cm5zIHtzdHJpbmd8QnVmZmVyfGFueX1cbiAqL1xuZXhwb3J0IGxldCB0b1N0cmluZyA9IGZ1bmN0aW9uKGZpbGVQYXRoKSB7XG4gICAgbGV0IGZpbGVTdHJpbmc7XG4gICAgZmlsZVN0cmluZyA9IHBsdWdpbnMuZnMucmVhZEZpbGVTeW5jKGZpbGVQYXRoLCBcInV0ZjhcIik7XG4gICAgcmV0dXJuIGZpbGVTdHJpbmc7XG59O1xuXG4vKipcbiAqXG4gKiBAcGFyYW0gZmlsZVBhdGhBcmdcbiAqIEBwYXJhbSBvcHRpb25zXG4gKiBAcmV0dXJucyB7bnVtYmVyfVxuICovXG5leHBvcnQgbGV0IHRvVmlueWwgPSBmdW5jdGlvbihmaWxlUGF0aEFyZyxvcHRpb25zID0ge30pIHtcbiAgICByZXR1cm4gcGx1Z2lucy52aW55bEZpbGUucmVhZFN5bmMoZmlsZVBhdGhBcmcsb3B0aW9ucyk7XG59O1xuXG4vKipcbiAqIGxldHMgeW91IHJlbG9hZCBmaWxlcyBob3QuXG4gKiBAcGFyYW0gcGF0aFxuICogQHJldHVybnMge2FueX1cbiAqL1xuZXhwb3J0IGxldCByZXF1aXJlUmVsb2FkID0gZnVuY3Rpb24ocGF0aDpzdHJpbmcpe1xuICAgIHJldHVybiBwbHVnaW5zLnJlcXVpcmVSZWxvYWQocGF0aCk7XG59OyJdLCJzb3VyY2VSb290IjoiL3NvdXJjZS8ifQ==

66
dist/smartfile.remote.js vendored Normal file
View File

@ -0,0 +1,66 @@
"use strict";
/// <reference path="./typings/main.d.ts" />
var plugins = require("./smartfile.plugins");
exports.toFs = function (from, toPath) {
var done = plugins.q.defer();
var stream = plugins.request(from).pipe(plugins.fs.createWriteStream(toPath));
stream.on('finish', function () {
done.resolve(toPath);
});
return done.promise;
};
/**
*
* @param filePathArg
* @returns {*}
*/
exports.toGulpStreamSync = function (filePathArg, baseArg) {
var stream = plugins.g.remoteSrc(filePathArg, {
base: baseArg
});
return stream;
};
/**
*
* @param fromArg
* @returns {any}
*/
exports.toObject = function (fromArg) {
var done = plugins.q.defer();
plugins.request.get(fromArg, function (error, response, bodyString) {
var jsonObject;
if (!error && response.statusCode == 200) {
jsonObject = JSON.parse(bodyString);
done.resolve(jsonObject);
}
else {
console.log('could not get remote file from ' + fromArg);
jsonObject = undefined;
done.reject(jsonObject);
}
;
});
return done.promise;
};
/**
*
* @param fromArg
* @returns {any}
*/
exports.toString = function (fromArg) {
var done = plugins.q.defer();
plugins.request.get(fromArg, function (error, response, bodyString) {
if (!error && response.statusCode == 200) {
done.resolve(bodyString);
}
else {
plugins.beautylog.error('could not get get remote file from ' + fromArg);
bodyString = undefined;
done.reject(bodyString);
}
;
});
return done.promise;
};
//# sourceMappingURL=data:application/json;base64,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Q0FBQyxDQUFDIiwiZmlsZSI6InNtYXJ0ZmlsZS5yZW1vdGUuanMiLCJzb3VyY2VzQ29udGVudCI6WyIvLy8gPHJlZmVyZW5jZSBwYXRoPVwiLi90eXBpbmdzL21haW4uZC50c1wiIC8+XG5pbXBvcnQgcGx1Z2lucyA9IHJlcXVpcmUoXCIuL3NtYXJ0ZmlsZS5wbHVnaW5zXCIpO1xuXG5leHBvcnQgbGV0IHRvRnMgPSBmdW5jdGlvbihmcm9tOnN0cmluZyx0b1BhdGg6c3RyaW5nKSB7XG4gICAgdmFyIGRvbmUgPSBwbHVnaW5zLnEuZGVmZXIoKTtcbiAgICB2YXIgc3RyZWFtID0gcGx1Z2lucy5yZXF1ZXN0KGZyb20pLnBpcGUocGx1Z2lucy5mcy5jcmVhdGVXcml0ZVN0cmVhbSh0b1BhdGgpKTtcbiAgICBzdHJlYW0ub24oJ2ZpbmlzaCcsZnVuY3Rpb24oKXtcbiAgICAgICAgZG9uZS5yZXNvbHZlKHRvUGF0aCk7XG4gICAgfSk7XG4gICAgcmV0dXJuIGRvbmUucHJvbWlzZTtcbn07XG5cbi8qKlxuICpcbiAqIEBwYXJhbSBmaWxlUGF0aEFyZ1xuICogQHJldHVybnMgeyp9XG4gKi9cbmV4cG9ydCBsZXQgdG9HdWxwU3RyZWFtU3luYyA9IGZ1bmN0aW9uKGZpbGVQYXRoQXJnOnN0cmluZyxiYXNlQXJnOnN0cmluZyl7XG4gICAgbGV0IHN0cmVhbSA9IHBsdWdpbnMuZy5yZW1vdGVTcmMoZmlsZVBhdGhBcmcsIHtcbiAgICAgICAgYmFzZTogYmFzZUFyZ1xuICAgIH0pO1xuICAgIHJldHVybiBzdHJlYW07XG59O1xuXG4vKipcbiAqXG4gKiBAcGFyYW0gZnJvbUFyZ1xuICogQHJldHVybnMge2FueX1cbiAqL1xuZXhwb3J0IGxldCB0b09iamVjdCA9IGZ1bmN0aW9uKGZyb21Bcmc6c3RyaW5nKXtcbiAgICBsZXQgZG9uZSA9IHBsdWdpbnMucS5kZWZlcigpO1xuICAgIHBsdWdpbnMucmVxdWVzdC5nZXQoZnJvbUFyZywgZnVuY3Rpb24gKGVycm9yLCByZXNwb25zZSwgYm9keVN0cmluZykge1xuICAgICAgICBsZXQganNvbk9iamVjdDtcbiAgICAgICAgaWYgKCFlcnJvciAmJiByZXNwb25zZS5zdGF0dXNDb2RlID09IDIwMCkge1xuICAgICAgICAgICAganNvbk9iamVjdCA9IEpTT04ucGFyc2UoYm9keVN0cmluZyk7XG4gICAgICAgICAgICBkb25lLnJlc29sdmUoanNvbk9iamVjdCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb25zb2xlLmxvZygnY291bGQgbm90IGdldCByZW1vdGUgZmlsZSBmcm9tICcgKyBmcm9tQXJnKTtcbiAgICAgICAgICAgIGpzb25PYmplY3QgPSB1bmRlZmluZWQ7XG4gICAgICAgICAgICBkb25lLnJlamVjdChqc29uT2JqZWN0KTtcbiAgICAgICAgfTtcbiAgICB9KTtcbiAgICByZXR1cm4gZG9uZS5wcm9taXNlO1xufTtcblxuLyoqXG4gKlxuICogQHBhcmFtIGZyb21BcmdcbiAqIEByZXR1cm5zIHthbnl9XG4gKi9cbmV4cG9ydCBsZXQgdG9TdHJpbmcgPSAoZnJvbUFyZzpzdHJpbmcpID0+IHtcbiAgICBsZXQgZG9uZSA9IHBsdWdpbnMucS5kZWZlcigpO1xuICAgIHBsdWdpbnMucmVxdWVzdC5nZXQoZnJvbUFyZywgZnVuY3Rpb24gKGVycm9yLCByZXNwb25zZSwgYm9keVN0cmluZykge1xuICAgICAgICBpZiAoIWVycm9yICYmIHJlc3BvbnNlLnN0YXR1c0NvZGUgPT0gMjAwKSB7XG4gICAgICAgICAgICBkb25lLnJlc29sdmUoYm9keVN0cmluZyk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBwbHVnaW5zLmJlYXV0eWxvZy5lcnJvcignY291bGQgbm90IGdldCBnZXQgcmVtb3RlIGZpbGUgZnJvbSAnICsgZnJvbUFyZyk7XG4gICAgICAgICAgICBib2R5U3RyaW5nID0gdW5kZWZpbmVkO1xuICAgICAgICAgICAgZG9uZS5yZWplY3QoYm9keVN0cmluZyk7XG4gICAgICAgIH07XG4gICAgfSk7XG4gICAgcmV0dXJuIGRvbmUucHJvbWlzZTtcbn07XG5cbiJdLCJzb3VyY2VSb290IjoiL3NvdXJjZS8ifQ==

View File

@ -1,6 +1,6 @@
{
"name": "smartfile",
"version": "0.1.0",
"version": "2.1.0",
"description": "offers smart ways to work with files in nodejs",
"main": "dist/index.js",
"scripts": {
@ -26,16 +26,20 @@
"homepage": "https://github.com/pushrocks/smartfile",
"dependencies": {
"beautylog": "3.1.2",
"fs-extra": "0.26.5",
"js-yaml": "3.5.4",
"fs-extra": "0.26.7",
"gulp": "^3.9.1",
"gulp-remote-src": "^0.4.1",
"js-yaml": "3.5.5",
"q": "1.4.1",
"request": "^2.69.0",
"require-reload": "0.2.2",
"shelljs": "^0.6.0",
"vinyl": "1.1.1",
"vinyl-file": "2.0.0"
},
"devDependencies": {
"npmts": "3.4.1",
"gulp-function": "^1.1.1",
"npmts": "3.5.0",
"should": "^8.2.2"
}
}

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
{"version":3,"file":"test.js","sourceRoot":"","sources":["test.ts"],"names":[],"mappings":"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"}
{"version":3,"file":"test.js","sourceRoot":"","sources":["test.ts"],"names":[],"mappings":"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"}

View File

@ -1,42 +1,11 @@
/// <reference path="../ts/typings/main.d.ts" />
var smartfile = require("../dist/index.js");
var beautylog = require("beautylog");
var should = require("should");
var vinyl = require("vinyl");
let smartfile = require("../dist/index.js");
let beautylog = require("beautylog");
let should = require("should");
let vinyl = require("vinyl");
let gFunction = require("gulp-function");
describe("smartfile",function(){
describe(".readFileToString".yellow,function(){
it("should read a file to a string",function(){
should.equal(
smartfile.readFileToString("./test/mytest.txt"),
"Some TestString &&%$"
);
});
});
describe(".readFileToObject".yellow,function(){
it("should read an " + ".yaml".blue + " file to an object",function(){
var testData = smartfile.readFileToObject("./test/mytest.yaml");
testData.should.have.property("key1","this works");
testData.should.have.property("key2","this works too");
});
it("should state unknown file type for unknown file types",function(){
var testData = smartfile.readFileToObject("./test/mytest.txt");
});
it("should read an " + ".json".blue + " file to an object",function(){
var testData = smartfile.readFileToObject("./test/mytest.json");
testData.should.have.property("key1","this works");
testData.should.have.property("key2","this works too");
});
});
describe(".readFileToVinyl".yellow,function(){
it("should read an " + ".json OR .yaml".blue + " file to an " + "vinyl file object".cyan,function(){
var testData = smartfile.readFileToVinyl("./test/mytest.json");
(vinyl.isVinyl(testData)).should.be.true();
});
});
describe("smartfile".yellow,function(){
describe(".checks".yellow,function(){
describe(".fileExistsSync".yellow,function(){
it("should return an accurate boolean",function(){
@ -52,15 +21,85 @@ describe("smartfile",function(){
});
})
});
describe("copy",function(){
it("should copy a directory",function(){
smartfile.copy("./test/testfolder/","./test/assets/")
});
it("should copy a file",function(){
smartfile.copy("./test/mytest.yaml","./test/assets/")
});
it("should copy a file and rename it",function(){
smartfile.copy("./test/mytest.yaml","./test/assets/mytestRenamed.yaml")
describe(".fsaction".yellow,function(){
describe(".copy()".yellow,function(){
it("should copy a directory",function(){
smartfile.fsaction.copy("./test/testfolder/","./test/temp/")
});
it("should copy a file",function(){
smartfile.fsaction.copy("./test/mytest.yaml","./test/temp/")
});
it("should copy a file and rename it",function(){
smartfile.fsaction.copy("./test/mytest.yaml","./test/temp/mytestRenamed.yaml")
});
});
});
describe(".local".yellow,function(){
describe("toGulpStreamSync() and toGulpDestSync",function(){
it("should produce a gulp stream",function(done){
smartfile.local.toGulpStreamSync("./test/my*")
.pipe(smartfile.local.toGulpDestSync("./test/temp/"))
.pipe(gFunction(done,"atEnd"));
});
});
describe(".toObjectSync()".yellow,function(){
it("should read an " + ".yaml".blue + " file to an object",function(){
let testData = smartfile.local.toObjectSync("./test/mytest.yaml");
testData.should.have.property("key1","this works");
testData.should.have.property("key2","this works too");
});
it("should state unknown file type for unknown file types",function(){
let testData = smartfile.local.toObjectSync("./test/mytest.txt");
});
it("should read an " + ".json".blue + " file to an object",function(){
let testData = smartfile.local.toObjectSync("./test/mytest.json");
testData.should.have.property("key1","this works");
testData.should.have.property("key2","this works too");
});
});
describe(".toStringSync()".yellow,function(){
it("should read a file to a string",function(){
should.equal(
smartfile.local.toStringSync("./test/mytest.txt"),
"Some TestString &&%$"
);
});
});
describe(".toVinylSync".yellow,function(){
it("should read an " + ".json OR .yaml".blue + " file to an " + "vinyl file object".cyan,function(){
let testData = smartfile.local.toVinylSync("./test/mytest.json");
(vinyl.isVinyl(testData)).should.be.true();
});
});
});
describe(".remote",function(){
describe("toGulpStreamSync()",function(){
it("should produce a gulp stream",function(done){
smartfile.remote.toGulpStreamSync("mytest.txt","https://raw.githubusercontent.com/pushrocks/smartfile/master/test/")
.pipe(smartfile.local.toGulpDestSync("./test/temp/"))
.pipe(gFunction(done,"atEnd"));
});
});
describe(".toString()",function(){
it("should load a remote file to a variable",function(done){
this.timeout(5000);
smartfile.remote.toString("https://raw.githubusercontent.com/pushrocks/smartfile/master/test/mytest.txt")
.then(function(responseString){
should.equal(responseString,"Some TestString &&%$");
done();
});
});
it("should reject a Promise when the link is false",function(done){
smartfile.remote.toString("https://push.rocks/doesnotexist.txt")
.then(function(){
throw new Error("this test should not be resolved");
},function(){
done();
})
});
});
})
});

View File

@ -2,16 +2,17 @@
import plugins = require("./smartfile.plugins");
import SmartfileChecks = require("./smartfile.checks");
import SmartfileSimple = require("./smartfile.simple");
import SmartfileFsaction = require("./smartfile.fsaction");
import SmartfileLocal = require("./smartfile.local");
import SmartfileRemote = require("./smartfile.remote");
var smartfile:any = {
copy: SmartfileSimple.copy,
fsaction: SmartfileFsaction,
checks: SmartfileChecks,
readFileToString: SmartfileSimple.readFileToString,
readFileToObject: SmartfileSimple.readFileToObject,
readFileToVinyl: SmartfileSimple.readFileToVinyl,
requireReload: SmartfileSimple.requireReload
local: SmartfileLocal,
remote: SmartfileRemote,
requireReload: SmartfileLocal.requireReload
};
export = smartfile;

7
ts/smartfile.fsaction.ts Normal file
View File

@ -0,0 +1,7 @@
/// <reference path="./typings/main.d.ts" />
import plugins = require("./smartfile.plugins");
export let copy = function(fromArg:string,toArg:string){
plugins.shelljs.cp("-r",fromArg,toArg);
};

View File

@ -2,19 +2,22 @@
import plugins = require("./smartfile.plugins");
export let copy = function(fromArg:string,toArg:string){
plugins.shelljs.cp("-r",fromArg,toArg);
export let toFS = function(options:{from:string,toPath:string}, cb=undefined){
};
/**
* reads a file content to a String
* @param filePath
* @returns {string|Buffer|any}
*
* @param filePathArg
* @returns {*}
*/
export let readFileToString = function(filePath) {
let fileString;
fileString = plugins.fs.readFileSync(filePath, "utf8");
return fileString;
export let toGulpStreamSync = function(filePathArg:string){
let stream = plugins.gulp.src(filePathArg);
return stream;
};
export let toGulpDestSync = function(folderPathArg:string){
return plugins.gulp.dest(folderPathArg);
};
/**
@ -23,7 +26,7 @@ export let readFileToString = function(filePath) {
* @param fileTypeArg
* @returns {any}
*/
export let readFileToObject = function(filePath,fileTypeArg = undefined) {
export let toObjectSync = function(filePath,fileTypeArg = undefined) {
let fileType;
if (typeof fileTypeArg == "undefined") {
fileType = plugins.path.extname(filePath);
@ -48,13 +51,24 @@ export let readFileToObject = function(filePath,fileTypeArg = undefined) {
}
};
/**
* reads a file content to a String
* @param filePath
* @returns {string|Buffer|any}
*/
export let toStringSync = function(filePath) {
let fileString;
fileString = plugins.fs.readFileSync(filePath, "utf8");
return fileString;
};
/**
*
* @param filePathArg
* @param options
* @returns {number}
*/
export let readFileToVinyl = function(filePathArg,options = {}) {
export let toVinylSync = function(filePathArg,options = {}) {
return plugins.vinylFile.readSync(filePathArg,options);
};

View File

@ -1,10 +1,15 @@
/// <reference path="./typings/main.d.ts" />
export let beautylog = require("beautylog");
export let fs = require("fs-extra");
export let gulp = require("gulp");
export let g = {
remoteSrc: require("gulp-remote-src")
};
export let path = require("path");
export let q = require("q");
export let vinyl = require("vinyl");
export let vinylFile = require("vinyl-file");
export let yaml = require("js-yaml");
export let request = require("request");
export let requireReload = require("require-reload");
export let shelljs = require("shelljs");

64
ts/smartfile.remote.ts Normal file
View File

@ -0,0 +1,64 @@
/// <reference path="./typings/main.d.ts" />
import plugins = require("./smartfile.plugins");
export let toFs = function(from:string,toPath:string) {
var done = plugins.q.defer();
var stream = plugins.request(from).pipe(plugins.fs.createWriteStream(toPath));
stream.on('finish',function(){
done.resolve(toPath);
});
return done.promise;
};
/**
*
* @param filePathArg
* @returns {*}
*/
export let toGulpStreamSync = function(filePathArg:string,baseArg:string){
let stream = plugins.g.remoteSrc(filePathArg, {
base: baseArg
});
return stream;
};
/**
*
* @param fromArg
* @returns {any}
*/
export let toObject = function(fromArg:string){
let done = plugins.q.defer();
plugins.request.get(fromArg, function (error, response, bodyString) {
let jsonObject;
if (!error && response.statusCode == 200) {
jsonObject = JSON.parse(bodyString);
done.resolve(jsonObject);
} else {
console.log('could not get remote file from ' + fromArg);
jsonObject = undefined;
done.reject(jsonObject);
};
});
return done.promise;
};
/**
*
* @param fromArg
* @returns {any}
*/
export let toString = (fromArg:string) => {
let done = plugins.q.defer();
plugins.request.get(fromArg, function (error, response, bodyString) {
if (!error && response.statusCode == 200) {
done.resolve(bodyString);
} else {
plugins.beautylog.error('could not get get remote file from ' + fromArg);
bodyString = undefined;
done.reject(bodyString);
};
});
return done.promise;
};