()
| 39 | } |
| 40 | |
| 41 | async function loadProtectedTextModule() { |
| 42 | const tempRoot = join(process.cwd(), ".tmp"); |
| 43 | mkdirSync(tempRoot, { recursive: true }); |
| 44 | const dir = mkdtempSync(join(tempRoot, "lessai-protected-text-")); |
| 45 | const modules = [ |
| 46 | ["src/lib/protectedText.tsx", "protectedText.tsx"], |
| 47 | [ |
| 48 | "src/lib/protectedTextPlaceholderLabels.generated.ts", |
| 49 | "protectedTextPlaceholderLabels.generated.ts" |
| 50 | ], |
| 51 | ["src/lib/markdownProtectedSegments.ts", "markdownProtectedSegments.ts"], |
| 52 | ["src/lib/path.ts", "path.ts"], |
| 53 | ["src/lib/protectedTextShared.ts", "protectedTextShared.ts"], |
| 54 | ["src/lib/texProtectedSegments.ts", "texProtectedSegments.ts"] |
| 55 | ]; |
| 56 | const file = join(dir, "protectedText.mjs"); |
| 57 | |
| 58 | try { |
| 59 | for (const [path, fileName] of modules) { |
| 60 | const source = read(path); |
| 61 | const transpiled = ts.transpileModule(source, { |
| 62 | compilerOptions: { |
| 63 | module: ts.ModuleKind.ES2022, |
| 64 | target: ts.ScriptTarget.ES2022, |
| 65 | jsx: ts.JsxEmit.ReactJSX |
| 66 | }, |
| 67 | fileName |
| 68 | }).outputText; |
| 69 | const rewritten = rewriteRelativeImports(transpiled); |
| 70 | writeFileSync(join(dir, fileName.replace(/\.(ts|tsx)$/, ".mjs")), rewritten, "utf8"); |
| 71 | } |
| 72 | return await import(pathToFileURL(file).href); |
| 73 | } finally { |
| 74 | rmSync(dir, { recursive: true, force: true }); |
| 75 | } |
| 76 | } |
| 77 | |
| 78 | async function loadReviewSuggestionRowModel() { |
| 79 | const tempRoot = join(process.cwd(), ".tmp"); |
no test coverage detected