@zendesk/zcli-themes
Version:
zcli theme commands live here
24 lines (23 loc) • 1.04 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const errors_1 = require("@oclif/core/lib/errors");
const fs = require("fs");
const path = require("path");
const getLocalServerBaseUrl_1 = require("./getLocalServerBaseUrl");
function getAssets(themePath, flags) {
const assetsPath = `${themePath}/assets`;
const filenames = fs.existsSync(assetsPath) ? fs.readdirSync(assetsPath) : [];
const assets = [];
filenames.forEach(filename => {
const parsedPath = path.parse(filename);
const name = parsedPath.name.toLowerCase();
if (name.match(/[^a-z0-9-_+.]/)) {
throw new errors_1.CLIError(`The asset "${filename}" has illegal characters in its name. Filenames should only have alpha-numerical characters, ., _, -, and +`);
}
if (!name.startsWith('.')) {
assets.push([parsedPath, `${(0, getLocalServerBaseUrl_1.getLocalServerBaseUrl)(flags)}/guide/assets/${filename}`]);
}
});
return assets;
}
exports.default = getAssets;