"use strict";

var config        = require("./../config");
var utils         = require("./../utils");
var logger        = require("./../logger").logger;

var fs            = require("fs");
var _             = require("lodash");
var path          = require("path");

var info = {
    /**
     * Version info
     * @param {Object} pjson
     * @returns {String}
     */
    getVersion: function (pjson) {
        console.log(pjson.version);
        return pjson.version;
    },
    /**
     * Retrieve the config file
     * @returns {*}
     * @private
     * @param filePath
     */
    getConfigFile: function (filePath) {
        return require(path.resolve(process.cwd() + "/" + filePath));
    },
    /**
     * Generate an example Config file.
     */
    makeConfig: function (cwd) {

        var opts = require(__dirname + "/../" + config.configFile);
        var userOpts = {};

        var ignore = ["excludedFileTypes", "injectFileTypes", "snippetOptions"];

        Object.keys(opts).forEach(function (key) {
            if (!_.contains(ignore, key)) 

        });

        var file = fs.readFileSync(__dirname + config.template);

        file = file.toString().replace("//OPTS", JSON.stringify(userOpts, null, 4));

        var path = cwd + config.userFile;

        fs.writeFile(path, file, function () {
            logger.info("Config file created {magenta:%s}", utils.resolveRelativeFilePath(path, cwd));
            logger.info(
              "To use it, in the same directory run: " +
              "{cyan:browser-sync start --config bs-config.js}"
            );
        });
    }
};

module.exports = info;

{
                userOpts[key] = opts[key];
            }