openpetswithchatandmcp/website/extract_banner.cjs
OpenPets Dev 65ac83849e Add 'website/' from commit '966aea480ffe1c340553aa878def30131d2af827'
git-subtree-dir: website
git-subtree-mainline: 8d3849caea
git-subtree-split: 966aea480f
2026-06-17 20:48:39 +00:00

25 lines
733 B
JavaScript
Executable file

const { Project, SyntaxKind } = require("ts-morph");
const fs = require("fs");
const project = new Project({ tsConfigFilePath: "./tsconfig.json" });
const sourceFile = project.getSourceFile("src/pages/Runboard.tsx");
let target;
sourceFile.forEachDescendant(node => {
if (node.getKind() === SyntaxKind.JsxOpeningElement) {
const attr = node.getAttribute("data-testid");
if (attr && attr.getText().includes("runboard-compare-remediation-route-banner")) {
target = node.getParent();
}
}
});
const bannerText = target.getText();
fs.writeFileSync("src/pages/temp_banner_test.tsx", `
import React from "react";
export const RunboardCompareRemediationRouteBanner = () => {
return (` + bannerText + `);
};
`);