Convert build scripts from CommonJS to ES Modules
- Convert all eng/*.js files to ES Modules (.mjs) - Update package.json scripts to reference .mjs files - Fix ERR_REQUIRE_ESM error with vfile v6.0.3 - Add __dirname polyfills for ES Modules
This commit is contained in:
parent
076e9b28cc
commit
9dad4ae3aa
@ -1,4 +1,9 @@
|
|||||||
const path = require("path");
|
import path from "path";
|
||||||
|
import { fileURLToPath } from "url";
|
||||||
|
import { dirname } from "path";
|
||||||
|
|
||||||
|
const __filename = fileURLToPath(import.meta.url);
|
||||||
|
const __dirname = dirname(__filename);
|
||||||
|
|
||||||
// Template sections for the README
|
// Template sections for the README
|
||||||
const TEMPLATES = {
|
const TEMPLATES = {
|
||||||
@ -115,7 +120,7 @@ const MAX_COLLECTION_ITEMS = 50;
|
|||||||
|
|
||||||
const DOCS_DIR = path.join(ROOT_FOLDER, "docs");
|
const DOCS_DIR = path.join(ROOT_FOLDER, "docs");
|
||||||
|
|
||||||
module.exports = {
|
export {
|
||||||
TEMPLATES,
|
TEMPLATES,
|
||||||
vscodeInstallImage,
|
vscodeInstallImage,
|
||||||
vscodeInsidersInstallImage,
|
vscodeInsidersInstallImage,
|
||||||
@ -130,3 +135,4 @@ module.exports = {
|
|||||||
MAX_COLLECTION_ITEMS,
|
MAX_COLLECTION_ITEMS,
|
||||||
DOCS_DIR,
|
DOCS_DIR,
|
||||||
};
|
};
|
||||||
|
|
||||||
18
eng/update-readme.js → eng/update-readme.mjs
Executable file → Normal file
18
eng/update-readme.js → eng/update-readme.mjs
Executable file → Normal file
@ -1,14 +1,16 @@
|
|||||||
#!/usr/bin/env node
|
#!/usr/bin/env node
|
||||||
|
|
||||||
const fs = require("fs");
|
import fs from "fs";
|
||||||
const path = require("path");
|
import path from "path";
|
||||||
const {
|
import { fileURLToPath } from "url";
|
||||||
|
import { dirname } from "path";
|
||||||
|
import {
|
||||||
parseCollectionYaml,
|
parseCollectionYaml,
|
||||||
extractMcpServers,
|
extractMcpServers,
|
||||||
extractMcpServerConfigs,
|
extractMcpServerConfigs,
|
||||||
parseFrontmatter,
|
parseFrontmatter,
|
||||||
} = require("./yaml-parser");
|
} from "./yaml-parser.mjs";
|
||||||
const {
|
import {
|
||||||
TEMPLATES,
|
TEMPLATES,
|
||||||
AKA_INSTALL_URLS,
|
AKA_INSTALL_URLS,
|
||||||
repoBaseUrl,
|
repoBaseUrl,
|
||||||
@ -21,7 +23,10 @@ const {
|
|||||||
COLLECTIONS_DIR,
|
COLLECTIONS_DIR,
|
||||||
INSTRUCTIONS_DIR,
|
INSTRUCTIONS_DIR,
|
||||||
DOCS_DIR,
|
DOCS_DIR,
|
||||||
} = require("./constants");
|
} from "./constants.mjs";
|
||||||
|
|
||||||
|
const __filename = fileURLToPath(import.meta.url);
|
||||||
|
const __dirname = dirname(__filename);
|
||||||
|
|
||||||
// Cache of MCP registry server names (lower-cased) loaded from github-mcp-registry.json
|
// Cache of MCP registry server names (lower-cased) loaded from github-mcp-registry.json
|
||||||
let MCP_REGISTRY_SET = null;
|
let MCP_REGISTRY_SET = null;
|
||||||
@ -968,3 +973,4 @@ try {
|
|||||||
console.error(`Error generating category README files: ${error.message}`);
|
console.error(`Error generating category README files: ${error.message}`);
|
||||||
process.exit(1);
|
process.exit(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
11
eng/validate-collections.js → eng/validate-collections.mjs
Executable file → Normal file
11
eng/validate-collections.js → eng/validate-collections.mjs
Executable file → Normal file
@ -1,13 +1,13 @@
|
|||||||
#!/usr/bin/env node
|
#!/usr/bin/env node
|
||||||
|
|
||||||
const fs = require("fs");
|
import fs from "fs";
|
||||||
const path = require("path");
|
import path from "path";
|
||||||
const { parseCollectionYaml, parseFrontmatter } = require("./yaml-parser");
|
import { parseCollectionYaml, parseFrontmatter } from "./yaml-parser.mjs";
|
||||||
const {
|
import {
|
||||||
ROOT_FOLDER,
|
ROOT_FOLDER,
|
||||||
COLLECTIONS_DIR,
|
COLLECTIONS_DIR,
|
||||||
MAX_COLLECTION_ITEMS,
|
MAX_COLLECTION_ITEMS,
|
||||||
} = require("./constants");
|
} from "./constants.mjs";
|
||||||
|
|
||||||
// Validation functions
|
// Validation functions
|
||||||
function validateCollectionId(id) {
|
function validateCollectionId(id) {
|
||||||
@ -370,3 +370,4 @@ try {
|
|||||||
console.error(`Error during validation: ${error.message}`);
|
console.error(`Error during validation: ${error.message}`);
|
||||||
process.exit(1);
|
process.exit(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1,8 +1,8 @@
|
|||||||
// YAML parser for collection files and frontmatter parsing using vfile-matter
|
// YAML parser for collection files and frontmatter parsing using vfile-matter
|
||||||
const fs = require("fs");
|
import fs from "fs";
|
||||||
const yaml = require("js-yaml");
|
import yaml from "js-yaml";
|
||||||
const { VFile } = require("vfile");
|
import { VFile } from "vfile";
|
||||||
const { matter } = require("vfile-matter");
|
import { matter } from "vfile-matter";
|
||||||
|
|
||||||
function safeFileOperation(operation, filePath, defaultValue = null) {
|
function safeFileOperation(operation, filePath, defaultValue = null) {
|
||||||
try {
|
try {
|
||||||
@ -137,7 +137,7 @@ function extractMcpServerConfigs(filePath) {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
module.exports = {
|
export {
|
||||||
parseCollectionYaml,
|
parseCollectionYaml,
|
||||||
parseFrontmatter,
|
parseFrontmatter,
|
||||||
extractAgentMetadata,
|
extractAgentMetadata,
|
||||||
@ -6,11 +6,11 @@
|
|||||||
"private": true,
|
"private": true,
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"start": "npm run build",
|
"start": "npm run build",
|
||||||
"build": "node ./eng/update-readme.js",
|
"build": "node ./eng/update-readme.mjs",
|
||||||
"contributors:add": "all-contributors add",
|
"contributors:add": "all-contributors add",
|
||||||
"contributors:generate": "all-contributors generate",
|
"contributors:generate": "all-contributors generate",
|
||||||
"contributors:check": "all-contributors check",
|
"contributors:check": "all-contributors check",
|
||||||
"validate:collections": "node ./eng/validate-collections.js"
|
"validate:collections": "node ./eng/validate-collections.mjs"
|
||||||
},
|
},
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user