From 4bda1c7ead4af3d1ba1422a18d76b58a513a09d4 Mon Sep 17 00:00:00 2001 From: Merin Romario Date: Thu, 5 Mar 2026 15:02:09 +0530 Subject: [PATCH 1/6] chore: upgraded mesh-builder to alpha and implemented normalizeMeshConfig --- package.json | 2 +- src/commands/api-mesh/run.js | 7 ++++--- src/utils.js | 9 ++++++++- yarn.lock | 8 ++++---- 4 files changed, 17 insertions(+), 9 deletions(-) diff --git a/package.json b/package.json index aeff6357..b0572723 100644 --- a/package.json +++ b/package.json @@ -38,7 +38,7 @@ "version": "oclif-dev readme && git add README.md" }, "dependencies": { - "@adobe-apimesh/mesh-builder": "2.3.1", + "@adobe-apimesh/mesh-builder": "^2.4.0-alpha.1", "@adobe/aio-cli-lib-console": "^5.0.0", "@adobe/aio-lib-core-config": "^5.0.0", "@adobe/aio-lib-core-logging": "^3.0.0", diff --git a/src/commands/api-mesh/run.js b/src/commands/api-mesh/run.js index 68a4b3ca..bcbbe59e 100644 --- a/src/commands/api-mesh/run.js +++ b/src/commands/api-mesh/run.js @@ -42,7 +42,7 @@ const { } = require('../../project'); const { resolveRelativeSources } = require('../../meshArtifact'); -const { validateMesh, buildMesh, compileMesh } = meshBuilder.default; +const { validateMesh, buildMesh, compileMesh, normalizeMeshConfig } = meshBuilder.default; class RunCommand extends Command { static summary = 'Run local development server'; @@ -188,8 +188,9 @@ class RunCommand extends Command { //Generating unique mesh id const meshId = 'testMesh'; - await validateMesh(data.meshConfig); - await buildMesh(meshId, data.meshConfig); + const normalizedMeshConfig = await normalizeMeshConfig(data.meshConfig); + await validateMesh(normalizedMeshConfig); + await buildMesh(meshId, normalizedMeshConfig); await compileMesh(meshId); // Resolve relative sources in built mesh for local development diff --git a/src/utils.js b/src/utils.js index 861c205f..79705f92 100644 --- a/src/utils.js +++ b/src/utils.js @@ -193,6 +193,13 @@ function getFilesInMeshConfig(data, meshConfigName) { } }); + // Additional Type Defs + data.meshConfig.additionalTypeDefs?.forEach(additionalTypeDef => { + if (typeof additionalTypeDef === 'string' && !fileURLRegex.test(additionalTypeDef) && (additionalTypeDef.endsWith('.graphql') || additionalTypeDef.endsWith('.gql'))) { + filesList.push(additionalTypeDef); + } + }); + // ReplaceField Transform - source level data.meshConfig.sources.transforms?.forEach(transform => { transform.replaceField?.replacements.forEach(replacement => { @@ -395,7 +402,7 @@ function validateFileType(filesList) { filesList.forEach(file => { const extension = path.extname(file); - const isValidFileType = ['.js', '.json', '.graphql'].includes(extension); + const isValidFileType = ['.js', '.json', '.graphql', '.gql'].includes(extension); if (!isValidFileType) { filesWithInvalidTypes.push(path.basename(file)); diff --git a/yarn.lock b/yarn.lock index f71124bd..037bb80b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7,10 +7,10 @@ resolved "https://registry.yarnpkg.com/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz#bd9154aec9983f77b3a034ecaa015c2e4201f6cf" integrity sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA== -"@adobe-apimesh/mesh-builder@2.3.1": - version "2.3.1" - resolved "https://registry.yarnpkg.com/@adobe-apimesh/mesh-builder/-/mesh-builder-2.3.1.tgz#72e0cc90bf145078eeae7597aa8d4551592805b2" - integrity sha512-r0FR2AFYk5ZmIMWivfTmA3D/k3wRJZAFb5ur3mR3+t3LK6z091PfHcm9jBJV2pkNLmJV8C7xy35YMZHJD2O2Jg== +"@adobe-apimesh/mesh-builder@^2.4.0-alpha.1": + version "2.4.0-alpha.1" + resolved "https://registry.yarnpkg.com/@adobe-apimesh/mesh-builder/-/mesh-builder-2.4.0-alpha.1.tgz#10bd41589fdadc03256f2959c6c4c4c4a3ae608c" + integrity sha512-HleaB502FJqNqP7jqVY6YTvcmK1YEH2Jr57r42NcrDBJQuAXjBUcJcNd1PtYCqZH1g783wtbkL0GGytD9OZ3CQ== dependencies: "@fastify/request-context" "^4.1.0" eslint "^8.39.0" From 48971d2c4f22c93c6f13c04fb66daa08edc71e03 Mon Sep 17 00:00:00 2001 From: Merin Romario Date: Thu, 5 Mar 2026 15:06:39 +0530 Subject: [PATCH 2/6] chore: Updated version for alpha --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index b0572723..727dda09 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@adobe/aio-cli-plugin-api-mesh", - "version": "5.6.0", + "version": "5.6.1-alpha.0", "description": "Adobe I/O CLI plugin to develop and manage API mesh sources", "keywords": [ "oclif-plugin" From 917ea2c878dd60559459586a313280a23e3359f0 Mon Sep 17 00:00:00 2001 From: Merin Romario Date: Thu, 5 Mar 2026 17:02:52 +0530 Subject: [PATCH 3/6] fix: Updated tests --- src/commands/api-mesh/__tests__/run.test.js | 1 + src/utils.js | 12 ++++++++++-- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/src/commands/api-mesh/__tests__/run.test.js b/src/commands/api-mesh/__tests__/run.test.js index d8151ce5..dd560c92 100644 --- a/src/commands/api-mesh/__tests__/run.test.js +++ b/src/commands/api-mesh/__tests__/run.test.js @@ -61,6 +61,7 @@ jest.mock('@adobe-apimesh/mesh-builder', () => { validateMesh: jest.fn().mockResolvedValue({}), buildMesh: jest.fn().mockResolvedValue({}), compileMesh: jest.fn().mockResolvedValue({}), + normalizeMeshConfig: jest.fn().mockResolvedValue({}), }, }; }); diff --git a/src/utils.js b/src/utils.js index 79705f92..bdb755bf 100644 --- a/src/utils.js +++ b/src/utils.js @@ -194,8 +194,16 @@ function getFilesInMeshConfig(data, meshConfigName) { }); // Additional Type Defs - data.meshConfig.additionalTypeDefs?.forEach(additionalTypeDef => { - if (typeof additionalTypeDef === 'string' && !fileURLRegex.test(additionalTypeDef) && (additionalTypeDef.endsWith('.graphql') || additionalTypeDef.endsWith('.gql'))) { + const additionalTypeDefs = + typeof data.meshConfig.additionalTypeDefs === 'string' + ? [data.meshConfig.additionalTypeDefs] + : data.meshConfig.additionalTypeDefs; + additionalTypeDefs?.forEach(additionalTypeDef => { + if ( + typeof additionalTypeDef === 'string' && + !fileURLRegex.test(additionalTypeDef) && + (additionalTypeDef.endsWith('.graphql') || additionalTypeDef.endsWith('.gql')) + ) { filesList.push(additionalTypeDef); } }); From d83e6a23dd6b35ee88572579b0562aa6b41f11b2 Mon Sep 17 00:00:00 2001 From: Merin Romario Date: Wed, 25 Mar 2026 19:57:45 +0530 Subject: [PATCH 4/6] chore: Updated mesh-builder package version --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 603a8244..3d699dd3 100644 --- a/package.json +++ b/package.json @@ -38,7 +38,7 @@ "version": "oclif-dev readme && git add README.md" }, "dependencies": { - "@adobe-apimesh/mesh-builder": "^2.4.0-alpha.1", + "@adobe-apimesh/mesh-builder": "^2.4.0", "@adobe/aio-cli-lib-console": "^5.0.0", "@adobe/aio-lib-core-config": "^5.0.0", "@adobe/aio-lib-core-logging": "^3.0.0", diff --git a/yarn.lock b/yarn.lock index 037bb80b..db0114ef 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7,10 +7,10 @@ resolved "https://registry.yarnpkg.com/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz#bd9154aec9983f77b3a034ecaa015c2e4201f6cf" integrity sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA== -"@adobe-apimesh/mesh-builder@^2.4.0-alpha.1": - version "2.4.0-alpha.1" - resolved "https://registry.yarnpkg.com/@adobe-apimesh/mesh-builder/-/mesh-builder-2.4.0-alpha.1.tgz#10bd41589fdadc03256f2959c6c4c4c4a3ae608c" - integrity sha512-HleaB502FJqNqP7jqVY6YTvcmK1YEH2Jr57r42NcrDBJQuAXjBUcJcNd1PtYCqZH1g783wtbkL0GGytD9OZ3CQ== +"@adobe-apimesh/mesh-builder@^2.4.0": + version "2.4.0" + resolved "https://registry.yarnpkg.com/@adobe-apimesh/mesh-builder/-/mesh-builder-2.4.0.tgz#35fc8ae0ecd5617cfdb585cb923bf0112ad4d56f" + integrity sha512-MnvojKskFRY/wVy1Sh5xVOTgA4c3pi8jU9CtihljjrVNqp0DxkKhcCGvD5UJf5gnqOCnyFcEhDQ6CObZP8tEAw== dependencies: "@fastify/request-context" "^4.1.0" eslint "^8.39.0" From 29a477709fab733bf68d55e56277c89a978ab873 Mon Sep 17 00:00:00 2001 From: Merin Romario Date: Wed, 25 Mar 2026 20:02:35 +0530 Subject: [PATCH 5/6] chore: Bumped for beta release --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 3d699dd3..13a9c3a5 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@adobe/aio-cli-plugin-api-mesh", - "version": "5.6.1", + "version": "5.6.2-beta.0", "description": "Adobe I/O CLI plugin to develop and manage API mesh sources", "keywords": [ "oclif-plugin" From 62f928a1a6e157c15ecbab70453c29a80c0c7201 Mon Sep 17 00:00:00 2001 From: Merin Romario Date: Mon, 30 Mar 2026 19:22:25 +0530 Subject: [PATCH 6/6] chore: release stable version --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 13a9c3a5..37eb8e1e 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@adobe/aio-cli-plugin-api-mesh", - "version": "5.6.2-beta.0", + "version": "5.6.2", "description": "Adobe I/O CLI plugin to develop and manage API mesh sources", "keywords": [ "oclif-plugin"