ness
Version:
✪ No-effort static sites deployed to your AWS account.
75 lines • 6.65 kB
JavaScript
;
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
__setModuleDefault(result, mod);
return result;
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.saveSettings = exports.getSettingsFromArgs = exports.getSettingsFromFile = void 0;
const fs = __importStar(require("fs-extra"));
const path = __importStar(require("path"));
const SETTINGS_FILENAME = 'ness.json';
/**
* Get settings from local configuration file.
*
* @param entry Path to the project root. Defaults to process.cwd().
*/
async function getSettingsFromFile(entry = process.cwd()) {
const settingsJson = path.resolve(entry, SETTINGS_FILENAME);
try {
// eslint-disable-next-line @typescript-eslint/no-require-imports
return require(settingsJson);
}
catch (_a) {
return undefined;
}
}
exports.getSettingsFromFile = getSettingsFromFile;
/**
* Get settings from command args.
*
* @param command Commander command to extract args from.
*/
async function getSettingsFromArgs(command) {
const options = command === null || command === void 0 ? void 0 : command.opts();
return { ...options, indexDocument: options['indexDoc'], errorDocument: options['errorDoc'] };
}
exports.getSettingsFromArgs = getSettingsFromArgs;
/**
* Persist settings to ./ness.json
*
* @param settings Settings to persist
* @param entry Path to the project root. Defaults to process.cwd().
*/
async function saveSettings(settings, entry = process.cwd()) {
try {
const settingsJson = path.resolve(entry, SETTINGS_FILENAME);
const toPersist = {
...settings,
verbose: undefined,
};
await fs.writeFile(settingsJson, JSON.stringify(toPersist, null, 2), {
encoding: 'utf-8',
});
return true;
}
catch (_a) {
return false;
}
}
exports.saveSettings = saveSettings;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dGluZ3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvc2V0dGluZ3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUNBLDZDQUE4QjtBQUM5QiwyQ0FBNEI7QUFFNUIsTUFBTSxpQkFBaUIsR0FBRyxXQUFXLENBQUE7QUFpQnJDOzs7O0dBSUc7QUFDSSxLQUFLLFVBQVUsbUJBQW1CLENBQ3ZDLFFBQWdCLE9BQU8sQ0FBQyxHQUFHLEVBQUU7SUFFN0IsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsaUJBQWlCLENBQUMsQ0FBQTtJQUUzRCxJQUFJO1FBQ0YsaUVBQWlFO1FBQ2pFLE9BQU8sT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFBO0tBQzdCO0lBQUMsV0FBTTtRQUNOLE9BQU8sU0FBUyxDQUFBO0tBQ2pCO0FBQ0gsQ0FBQztBQVhELGtEQVdDO0FBRUQ7Ozs7R0FJRztBQUNJLEtBQUssVUFBVSxtQkFBbUIsQ0FBQyxPQUFnQjtJQUN4RCxNQUFNLE9BQU8sR0FBRyxPQUFPLGFBQVAsT0FBTyx1QkFBUCxPQUFPLENBQUUsSUFBSSxFQUFFLENBQUE7SUFDL0IsT0FBTyxFQUFDLEdBQUcsT0FBTyxFQUFFLGFBQWEsRUFBRSxPQUFPLENBQUMsVUFBVSxDQUFDLEVBQUUsYUFBYSxFQUFFLE9BQU8sQ0FBQyxVQUFVLENBQUMsRUFBQyxDQUFBO0FBQzdGLENBQUM7QUFIRCxrREFHQztBQUVEOzs7OztHQUtHO0FBQ0ksS0FBSyxVQUFVLFlBQVksQ0FDaEMsUUFBc0IsRUFDdEIsUUFBZ0IsT0FBTyxDQUFDLEdBQUcsRUFBRTtJQUU3QixJQUFJO1FBQ0YsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsaUJBQWlCLENBQUMsQ0FBQTtRQUMzRCxNQUFNLFNBQVMsR0FBRztZQUNoQixHQUFHLFFBQVE7WUFDWCxPQUFPLEVBQUUsU0FBUztTQUNuQixDQUFBO1FBQ0QsTUFBTSxFQUFFLENBQUMsU0FBUyxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLFNBQVMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLEVBQUU7WUFDbkUsUUFBUSxFQUFFLE9BQU87U0FDbEIsQ0FBQyxDQUFBO1FBRUYsT0FBTyxJQUFJLENBQUE7S0FDWjtJQUFDLFdBQU07UUFDTixPQUFPLEtBQUssQ0FBQTtLQUNiO0FBQ0gsQ0FBQztBQWxCRCxvQ0FrQkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbW1hbmR9IGZyb20gJ2NvbW1hbmRlcidcbmltcG9ydCAqIGFzIGZzIGZyb20gJ2ZzLWV4dHJhJ1xuaW1wb3J0ICogYXMgcGF0aCBmcm9tICdwYXRoJ1xuXG5jb25zdCBTRVRUSU5HU19GSUxFTkFNRSA9ICduZXNzLmpzb24nXG5cbi8qKlxuICogTmVzcyBTZXR0aW5nc1xuICovXG5leHBvcnQgdHlwZSBOZXNzU2V0dGluZ3MgPSB7XG4gIGRpcj86IHN0cmluZ1xuICBwcm9kPzogYm9vbGVhblxuICBkb21haW4/OiBzdHJpbmdcbiAgcmVkaXJlY3RXd3c/OiBib29sZWFuXG4gIGNzcD86IHN0cmluZ1xuICBpbmRleERvY3VtZW50Pzogc3RyaW5nXG4gIGVycm9yRG9jdW1lbnQ/OiBzdHJpbmdcbiAgc3BhPzogYm9vbGVhblxuICB2ZXJib3NlPzogYm9vbGVhblxufVxuXG4vKipcbiAqIEdldCBzZXR0aW5ncyBmcm9tIGxvY2FsIGNvbmZpZ3VyYXRpb24gZmlsZS5cbiAqXG4gKiBAcGFyYW0gZW50cnkgUGF0aCB0byB0aGUgcHJvamVjdCByb290LiBEZWZhdWx0cyB0byBwcm9jZXNzLmN3ZCgpLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0U2V0dGluZ3NGcm9tRmlsZShcbiAgZW50cnk6IHN0cmluZyA9IHByb2Nlc3MuY3dkKCksXG4pOiBQcm9taXNlPE5lc3NTZXR0aW5ncyB8IHVuZGVmaW5lZD4ge1xuICBjb25zdCBzZXR0aW5nc0pzb24gPSBwYXRoLnJlc29sdmUoZW50cnksIFNFVFRJTkdTX0ZJTEVOQU1FKVxuXG4gIHRyeSB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1yZXF1aXJlLWltcG9ydHNcbiAgICByZXR1cm4gcmVxdWlyZShzZXR0aW5nc0pzb24pXG4gIH0gY2F0Y2gge1xuICAgIHJldHVybiB1bmRlZmluZWRcbiAgfVxufVxuXG4vKipcbiAqIEdldCBzZXR0aW5ncyBmcm9tIGNvbW1hbmQgYXJncy5cbiAqXG4gKiBAcGFyYW0gY29tbWFuZCBDb21tYW5kZXIgY29tbWFuZCB0byBleHRyYWN0IGFyZ3MgZnJvbS5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdldFNldHRpbmdzRnJvbUFyZ3MoY29tbWFuZDogQ29tbWFuZCk6IFByb21pc2U8TmVzc1NldHRpbmdzIHwgdW5kZWZpbmVkPiB7XG4gIGNvbnN0IG9wdGlvbnMgPSBjb21tYW5kPy5vcHRzKClcbiAgcmV0dXJuIHsuLi5vcHRpb25zLCBpbmRleERvY3VtZW50OiBvcHRpb25zWydpbmRleERvYyddLCBlcnJvckRvY3VtZW50OiBvcHRpb25zWydlcnJvckRvYyddfVxufVxuXG4vKipcbiAqIFBlcnNpc3Qgc2V0dGluZ3MgdG8gLi9uZXNzLmpzb25cbiAqXG4gKiBAcGFyYW0gc2V0dGluZ3MgU2V0dGluZ3MgdG8gcGVyc2lzdFxuICogQHBhcmFtIGVudHJ5IFBhdGggdG8gdGhlIHByb2plY3Qgcm9vdC4gRGVmYXVsdHMgdG8gcHJvY2Vzcy5jd2QoKS5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHNhdmVTZXR0aW5ncyhcbiAgc2V0dGluZ3M6IE5lc3NTZXR0aW5ncyxcbiAgZW50cnk6IHN0cmluZyA9IHByb2Nlc3MuY3dkKCksXG4pOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgdHJ5IHtcbiAgICBjb25zdCBzZXR0aW5nc0pzb24gPSBwYXRoLnJlc29sdmUoZW50cnksIFNFVFRJTkdTX0ZJTEVOQU1FKVxuICAgIGNvbnN0IHRvUGVyc2lzdCA9IHtcbiAgICAgIC4uLnNldHRpbmdzLFxuICAgICAgdmVyYm9zZTogdW5kZWZpbmVkLFxuICAgIH1cbiAgICBhd2FpdCBmcy53cml0ZUZpbGUoc2V0dGluZ3NKc29uLCBKU09OLnN0cmluZ2lmeSh0b1BlcnNpc3QsIG51bGwsIDIpLCB7XG4gICAgICBlbmNvZGluZzogJ3V0Zi04JyxcbiAgICB9KVxuXG4gICAgcmV0dXJuIHRydWVcbiAgfSBjYXRjaCB7XG4gICAgcmV0dXJuIGZhbHNlXG4gIH1cbn1cbiJdfQ==