@kiwicom/orbit-tracking
Version:
Tracking for orbit design system
47 lines (44 loc) • 1.39 kB
JavaScript
import {
getVersions
} from "./chunk-JYXHBCZ6.js";
import {
infoMessage
} from "./chunk-ZXUFWPBJ.js";
import {
__dirname
} from "./chunk-5T6242DN.js";
import {
TMP_FOLDER
} from "./chunk-NCG23OMG.js";
import {
__objRest,
__spreadProps,
__spreadValues
} from "./chunk-EQVCDNQH.js";
// src/helpers/project.ts
import { execaCommand } from "execa";
import { chalk, path } from "zx";
var getTrackedData = async ({ config, id, name, url, data }) => {
const projectId = `${name}-${id}`;
const projectFolder = path.resolve(TMP_FOLDER, projectId);
const orbitVersion = await getVersions(projectFolder);
return execaCommand(`yarn react-scanner-orbit -c ${config || path.resolve(__dirname, "react-scanner.config.js")} -p ${projectFolder}`, { env: { REPO_URL: url, OUTPUT_DIR: projectFolder } }).then(({ stdout }) => {
console.log(chalk.bold.green(`parsed: ${name}`));
return __spreadProps(__spreadValues({
name
}, data), {
url,
orbitVersion,
trackedData: JSON.parse(stdout.substring(stdout.indexOf("[")))
});
});
};
var projectCmd = (config, _a) => {
var _b = _a, { id, name, cmd, url } = _b, data = __objRest(_b, ["id", "name", "cmd", "url"]);
return execaCommand(cmd).then(() => {
infoMessage(`fetched: ${name} \u2714\uFE0F`);
}).then(() => getTrackedData({ config, id, name, url, data }));
};
export {
projectCmd
};