/* PLAN 322-1 — 옛 도움 파일들이 함께 쓰는 구조물 표(catalog) 모듈 한 벌. * 진짜 `common_util_structure_catalog.ts` + 부품 상자 JSON · 실제 정의(마스터 읽기만)로 세운 표(화면이 종류 * 레지스트리를 받은 뒤와 같음). 각 도움 파일 로더가 `…common_util_structure_catalog` 요청을 이것으로 갈음함. */ const fs = require("fs"); const path = require("path"); const ROOT = path.join(__dirname, "..", ".."); const ts = require(path.join(ROOT, "config", "node_modules", "typescript")); const read = (...parts) => JSON.parse(fs.readFileSync(path.join(ROOT, ...parts), "utf8")); const js = ts.transpileModule( fs.readFileSync(path.join(ROOT, "common_util", "common_util_structure_catalog.ts"), "utf8"), { compilerOptions: { module: ts.ModuleKind.CommonJS, target: ts.ScriptTarget.ES2020 } }, ).outputText; const box = { exports: {} }; new Function("exports", "module", "require", js)(box.exports, box, () => read("common_util", "common_util_structure_parts.json"), ); box.exports.useCatalogDefinition(read("resources", "master_template", "구조물정의.json")); /** 로더 요청이 구조물 표 모듈인가. */ box.exports.isCatalogRequest = (request) => /common_util_structure_catalog(\.js)?$/.test(request); module.exports = box.exports;