UNPKG

@storm-software/git-tools

Version:

Tools for managing Git repositories within a Nx workspace.

53 lines (47 loc) 1.79 kB
const isWin = process.platform === "win32"; const escape = (input) => { return input .map(function (s) { if (s && typeof s === "object") { return s.op.replace(/(.)/g, "\\$1"); } if (/["\s]/.test(s) && !/'/.test(s)) { return "'" + s.replace(/(['\\])/g, "\\$1") + "'"; } if (/["'\s]/.test(s)) { return '"' + s.replace(/(["\\$`!])/g, "\\$1") + '"'; } return String(s).replace( /([A-Za-z]:)?([#!"$&'()*,:;<=>?@[\\\]^`{|}])/g, "$1\\$2", ); }) .join(" ") .replace(/\\@/g, "@"); }; module.exports = { "**/*.*": (fileNames) => { const escapedFileNames = fileNames .map((filename) => (isWin ? filename : escape(filename))) .join(" "); return ["pnpm build", `git add ${escapedFileNames}`]; }, "**/*.{js,jsx,ts,tsx,json,css,scss,md,mdx,yml,yaml,graphql,html,prisma,acid,acidic}": (fileNames) => { const escapedFileNames = fileNames .map((filename) => (isWin ? filename : escape(filename))) .join(" "); return [ "pnpm lint", `prettier --with-node-modules --ignore-path @storm-software/git-tools/prettier/.prettierignore_staged --write ${escapedFileNames}`, "pnpm nx format:write --uncommitted", `git add ${escapedFileNames}`, ]; }, "**/README.md": (fileNames) => { const escapedFileNames = fileNames .map((filename) => (isWin ? filename : escape(filename))) .join(" "); return ["pnpm readme-gen", `git add ${escapedFileNames}`]; }, };