d365fo-mcp 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +205 -0
- package/dist/bridge/bridgeAdapter.d.ts +319 -0
- package/dist/bridge/bridgeAdapter.d.ts.map +1 -0
- package/dist/bridge/bridgeAdapter.js +2003 -0
- package/dist/bridge/bridgeAdapter.js.map +1 -0
- package/dist/bridge/bridgeClient.d.ts +255 -0
- package/dist/bridge/bridgeClient.d.ts.map +1 -0
- package/dist/bridge/bridgeClient.js +741 -0
- package/dist/bridge/bridgeClient.js.map +1 -0
- package/dist/bridge/bridgeTypes.d.ts +561 -0
- package/dist/bridge/bridgeTypes.d.ts.map +1 -0
- package/dist/bridge/bridgeTypes.js +6 -0
- package/dist/bridge/bridgeTypes.js.map +1 -0
- package/dist/bridge/debouncedRefresh.d.ts +16 -0
- package/dist/bridge/debouncedRefresh.d.ts.map +1 -0
- package/dist/bridge/debouncedRefresh.js +77 -0
- package/dist/bridge/debouncedRefresh.js.map +1 -0
- package/dist/bridge/index.d.ts +21 -0
- package/dist/bridge/index.d.ts.map +1 -0
- package/dist/bridge/index.js +20 -0
- package/dist/bridge/index.js.map +1 -0
- package/dist/cli/commands/config.d.ts +8 -0
- package/dist/cli/commands/config.d.ts.map +1 -0
- package/dist/cli/commands/config.js +77 -0
- package/dist/cli/commands/config.js.map +1 -0
- package/dist/cli/commands/doctor.d.ts +2 -0
- package/dist/cli/commands/doctor.d.ts.map +1 -0
- package/dist/cli/commands/doctor.js +177 -0
- package/dist/cli/commands/doctor.js.map +1 -0
- package/dist/cli/commands/indexCmd.d.ts +8 -0
- package/dist/cli/commands/indexCmd.d.ts.map +1 -0
- package/dist/cli/commands/indexCmd.js +78 -0
- package/dist/cli/commands/indexCmd.js.map +1 -0
- package/dist/cli/commands/instance.d.ts +4 -0
- package/dist/cli/commands/instance.d.ts.map +1 -0
- package/dist/cli/commands/instance.js +183 -0
- package/dist/cli/commands/instance.js.map +1 -0
- package/dist/cli/commands/setup.d.ts +4 -0
- package/dist/cli/commands/setup.d.ts.map +1 -0
- package/dist/cli/commands/setup.js +246 -0
- package/dist/cli/commands/setup.js.map +1 -0
- package/dist/cli/commands/start.d.ts +2 -0
- package/dist/cli/commands/start.d.ts.map +1 -0
- package/dist/cli/commands/start.js +49 -0
- package/dist/cli/commands/start.js.map +1 -0
- package/dist/cli/commands/update.d.ts +4 -0
- package/dist/cli/commands/update.d.ts.map +1 -0
- package/dist/cli/commands/update.js +55 -0
- package/dist/cli/commands/update.js.map +1 -0
- package/dist/cli/context.d.ts +26 -0
- package/dist/cli/context.d.ts.map +1 -0
- package/dist/cli/context.js +38 -0
- package/dist/cli/context.js.map +1 -0
- package/dist/cli/envFile.d.ts +23 -0
- package/dist/cli/envFile.d.ts.map +1 -0
- package/dist/cli/envFile.js +79 -0
- package/dist/cli/envFile.js.map +1 -0
- package/dist/cli/exec.d.ts +13 -0
- package/dist/cli/exec.d.ts.map +1 -0
- package/dist/cli/exec.js +47 -0
- package/dist/cli/exec.js.map +1 -0
- package/dist/cli/index.d.ts +3 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +122 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/instances.d.ts +19 -0
- package/dist/cli/instances.d.ts.map +1 -0
- package/dist/cli/instances.js +60 -0
- package/dist/cli/instances.js.map +1 -0
- package/dist/cli/mcpJson.d.ts +15 -0
- package/dist/cli/mcpJson.d.ts.map +1 -0
- package/dist/cli/mcpJson.js +44 -0
- package/dist/cli/mcpJson.js.map +1 -0
- package/dist/cli/settingsPrompt.d.ts +20 -0
- package/dist/cli/settingsPrompt.d.ts.map +1 -0
- package/dist/cli/settingsPrompt.js +150 -0
- package/dist/cli/settingsPrompt.js.map +1 -0
- package/dist/cli/settingsStore.d.ts +47 -0
- package/dist/cli/settingsStore.d.ts.map +1 -0
- package/dist/cli/settingsStore.js +144 -0
- package/dist/cli/settingsStore.js.map +1 -0
- package/dist/cli/target.d.ts +23 -0
- package/dist/cli/target.d.ts.map +1 -0
- package/dist/cli/target.js +62 -0
- package/dist/cli/target.js.map +1 -0
- package/dist/cli/ui.d.ts +26 -0
- package/dist/cli/ui.d.ts.map +1 -0
- package/dist/cli/ui.js +48 -0
- package/dist/cli/ui.js.map +1 -0
- package/dist/cli/xppConfig.d.ts +35 -0
- package/dist/cli/xppConfig.d.ts.map +1 -0
- package/dist/cli/xppConfig.js +97 -0
- package/dist/cli/xppConfig.js.map +1 -0
- package/dist/config/configFile.d.ts +50 -0
- package/dist/config/configFile.d.ts.map +1 -0
- package/dist/config/configFile.js +152 -0
- package/dist/config/configFile.js.map +1 -0
- package/dist/config/settings.d.ts +58 -0
- package/dist/config/settings.d.ts.map +1 -0
- package/dist/config/settings.js +641 -0
- package/dist/config/settings.js.map +1 -0
- package/dist/database/download.d.ts +27 -0
- package/dist/database/download.d.ts.map +1 -0
- package/dist/database/download.js +241 -0
- package/dist/database/download.js.map +1 -0
- package/dist/eval/audit/knowledgeAudit.d.ts +66 -0
- package/dist/eval/audit/knowledgeAudit.d.ts.map +1 -0
- package/dist/eval/audit/knowledgeAudit.js +117 -0
- package/dist/eval/audit/knowledgeAudit.js.map +1 -0
- package/dist/eval/audit/knowledgeAuditCli.d.ts +17 -0
- package/dist/eval/audit/knowledgeAuditCli.d.ts.map +1 -0
- package/dist/eval/audit/knowledgeAuditCli.js +83 -0
- package/dist/eval/audit/knowledgeAuditCli.js.map +1 -0
- package/dist/eval/audit/knowledgeRefs.d.ts +37 -0
- package/dist/eval/audit/knowledgeRefs.d.ts.map +1 -0
- package/dist/eval/audit/knowledgeRefs.js +150 -0
- package/dist/eval/audit/knowledgeRefs.js.map +1 -0
- package/dist/eval/audit/symbolLookup.d.ts +23 -0
- package/dist/eval/audit/symbolLookup.d.ts.map +1 -0
- package/dist/eval/audit/symbolLookup.js +80 -0
- package/dist/eval/audit/symbolLookup.js.map +1 -0
- package/dist/eval/coverage/coverage.d.ts +65 -0
- package/dist/eval/coverage/coverage.d.ts.map +1 -0
- package/dist/eval/coverage/coverage.js +136 -0
- package/dist/eval/coverage/coverage.js.map +1 -0
- package/dist/eval/coverage/coverageCli.d.ts +13 -0
- package/dist/eval/coverage/coverageCli.d.ts.map +1 -0
- package/dist/eval/coverage/coverageCli.js +106 -0
- package/dist/eval/coverage/coverageCli.js.map +1 -0
- package/dist/eval/coverage/sources.d.ts +17 -0
- package/dist/eval/coverage/sources.d.ts.map +1 -0
- package/dist/eval/coverage/sources.js +40 -0
- package/dist/eval/coverage/sources.js.map +1 -0
- package/dist/eval/coverage/taxonomy.d.ts +59 -0
- package/dist/eval/coverage/taxonomy.d.ts.map +1 -0
- package/dist/eval/coverage/taxonomy.js +400 -0
- package/dist/eval/coverage/taxonomy.js.map +1 -0
- package/dist/eval/improver/caseMining.d.ts +55 -0
- package/dist/eval/improver/caseMining.d.ts.map +1 -0
- package/dist/eval/improver/caseMining.js +64 -0
- package/dist/eval/improver/caseMining.js.map +1 -0
- package/dist/eval/improver/caseMiningCli.d.ts +10 -0
- package/dist/eval/improver/caseMiningCli.d.ts.map +1 -0
- package/dist/eval/improver/caseMiningCli.js +50 -0
- package/dist/eval/improver/caseMiningCli.js.map +1 -0
- package/dist/eval/improver/cli.d.ts +11 -0
- package/dist/eval/improver/cli.d.ts.map +1 -0
- package/dist/eval/improver/cli.js +73 -0
- package/dist/eval/improver/cli.js.map +1 -0
- package/dist/eval/improver/cluster.d.ts +47 -0
- package/dist/eval/improver/cluster.d.ts.map +1 -0
- package/dist/eval/improver/cluster.js +0 -0
- package/dist/eval/improver/cluster.js.map +1 -0
- package/dist/eval/improver/corpusIO.d.ts +26 -0
- package/dist/eval/improver/corpusIO.d.ts.map +1 -0
- package/dist/eval/improver/corpusIO.js +50 -0
- package/dist/eval/improver/corpusIO.js.map +1 -0
- package/dist/eval/improver/fixBrief.d.ts +34 -0
- package/dist/eval/improver/fixBrief.d.ts.map +1 -0
- package/dist/eval/improver/fixBrief.js +69 -0
- package/dist/eval/improver/fixBrief.js.map +1 -0
- package/dist/eval/improver/fixBriefCli.d.ts +11 -0
- package/dist/eval/improver/fixBriefCli.d.ts.map +1 -0
- package/dist/eval/improver/fixBriefCli.js +46 -0
- package/dist/eval/improver/fixBriefCli.js.map +1 -0
- package/dist/eval/improver/flakeDetection.d.ts +50 -0
- package/dist/eval/improver/flakeDetection.d.ts.map +1 -0
- package/dist/eval/improver/flakeDetection.js +0 -0
- package/dist/eval/improver/flakeDetection.js.map +1 -0
- package/dist/eval/improver/flakeDetectionCli.d.ts +8 -0
- package/dist/eval/improver/flakeDetectionCli.d.ts.map +1 -0
- package/dist/eval/improver/flakeDetectionCli.js +27 -0
- package/dist/eval/improver/flakeDetectionCli.js.map +1 -0
- package/dist/eval/improver/heldout.d.ts +44 -0
- package/dist/eval/improver/heldout.d.ts.map +1 -0
- package/dist/eval/improver/heldout.js +52 -0
- package/dist/eval/improver/heldout.js.map +1 -0
- package/dist/eval/improver/knowledgeFeedback.d.ts +56 -0
- package/dist/eval/improver/knowledgeFeedback.d.ts.map +1 -0
- package/dist/eval/improver/knowledgeFeedback.js +88 -0
- package/dist/eval/improver/knowledgeFeedback.js.map +1 -0
- package/dist/eval/improver/knowledgeFeedbackCli.d.ts +8 -0
- package/dist/eval/improver/knowledgeFeedbackCli.d.ts.map +1 -0
- package/dist/eval/improver/knowledgeFeedbackCli.js +28 -0
- package/dist/eval/improver/knowledgeFeedbackCli.js.map +1 -0
- package/dist/eval/improver/report.d.ts +36 -0
- package/dist/eval/improver/report.d.ts.map +1 -0
- package/dist/eval/improver/report.js +61 -0
- package/dist/eval/improver/report.js.map +1 -0
- package/dist/eval/improver/reportCli.d.ts +7 -0
- package/dist/eval/improver/reportCli.d.ts.map +1 -0
- package/dist/eval/improver/reportCli.js +27 -0
- package/dist/eval/improver/reportCli.js.map +1 -0
- package/dist/eval/oracle/actualArtifactResolution.d.ts +49 -0
- package/dist/eval/oracle/actualArtifactResolution.d.ts.map +1 -0
- package/dist/eval/oracle/actualArtifactResolution.js +73 -0
- package/dist/eval/oracle/actualArtifactResolution.js.map +1 -0
- package/dist/eval/oracle/cli.d.ts +30 -0
- package/dist/eval/oracle/cli.d.ts.map +1 -0
- package/dist/eval/oracle/cli.js +179 -0
- package/dist/eval/oracle/cli.js.map +1 -0
- package/dist/eval/oracle/diff.d.ts +26 -0
- package/dist/eval/oracle/diff.d.ts.map +1 -0
- package/dist/eval/oracle/diff.js +51 -0
- package/dist/eval/oracle/diff.js.map +1 -0
- package/dist/eval/oracle/index.d.ts +81 -0
- package/dist/eval/oracle/index.d.ts.map +1 -0
- package/dist/eval/oracle/index.js +55 -0
- package/dist/eval/oracle/index.js.map +1 -0
- package/dist/eval/oracle/normalize.d.ts +85 -0
- package/dist/eval/oracle/normalize.d.ts.map +1 -0
- package/dist/eval/oracle/normalize.js +321 -0
- package/dist/eval/oracle/normalize.js.map +1 -0
- package/dist/eval/oracle/score.d.ts +26 -0
- package/dist/eval/oracle/score.d.ts.map +1 -0
- package/dist/eval/oracle/score.js +15 -0
- package/dist/eval/oracle/score.js.map +1 -0
- package/dist/eval/oracle/systest.d.ts +30 -0
- package/dist/eval/oracle/systest.d.ts.map +1 -0
- package/dist/eval/oracle/systest.js +98 -0
- package/dist/eval/oracle/systest.js.map +1 -0
- package/dist/index.d.ts +6 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +753 -0
- package/dist/index.js.map +1 -0
- package/dist/knowledge/formPatterns/catalog/subPatterns/customFilters.d.ts +10 -0
- package/dist/knowledge/formPatterns/catalog/subPatterns/customFilters.d.ts.map +1 -0
- package/dist/knowledge/formPatterns/catalog/subPatterns/customFilters.js +38 -0
- package/dist/knowledge/formPatterns/catalog/subPatterns/customFilters.js.map +1 -0
- package/dist/knowledge/formPatterns/catalog/subPatterns/fields.d.ts +21 -0
- package/dist/knowledge/formPatterns/catalog/subPatterns/fields.d.ts.map +1 -0
- package/dist/knowledge/formPatterns/catalog/subPatterns/fields.js +168 -0
- package/dist/knowledge/formPatterns/catalog/subPatterns/fields.js.map +1 -0
- package/dist/knowledge/formPatterns/catalog/subPatterns/panels.d.ts +9 -0
- package/dist/knowledge/formPatterns/catalog/subPatterns/panels.d.ts.map +1 -0
- package/dist/knowledge/formPatterns/catalog/subPatterns/panels.js +47 -0
- package/dist/knowledge/formPatterns/catalog/subPatterns/panels.js.map +1 -0
- package/dist/knowledge/formPatterns/catalog/subPatterns/toolbar.d.ts +16 -0
- package/dist/knowledge/formPatterns/catalog/subPatterns/toolbar.d.ts.map +1 -0
- package/dist/knowledge/formPatterns/catalog/subPatterns/toolbar.js +124 -0
- package/dist/knowledge/formPatterns/catalog/subPatterns/toolbar.js.map +1 -0
- package/dist/knowledge/formPatterns/catalog/subPatterns/workspaceSections.d.ts +12 -0
- package/dist/knowledge/formPatterns/catalog/subPatterns/workspaceSections.d.ts.map +1 -0
- package/dist/knowledge/formPatterns/catalog/subPatterns/workspaceSections.js +36 -0
- package/dist/knowledge/formPatterns/catalog/subPatterns/workspaceSections.js.map +1 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/common.d.ts +11 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/common.d.ts.map +1 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/common.js +37 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/common.js.map +1 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/detailsMaster.d.ts +8 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/detailsMaster.d.ts.map +1 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/detailsMaster.js +86 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/detailsMaster.js.map +1 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/detailsTransaction.d.ts +7 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/detailsTransaction.d.ts.map +1 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/detailsTransaction.js +69 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/detailsTransaction.js.map +1 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/dialog.d.ts +14 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/dialog.d.ts.map +1 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/dialog.js +187 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/dialog.js.map +1 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/factBox.d.ts +10 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/factBox.d.ts.map +1 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/factBox.js +54 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/factBox.js.map +1 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/listPage.d.ts +7 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/listPage.d.ts.map +1 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/listPage.js +33 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/listPage.js.map +1 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/lookup.d.ts +10 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/lookup.d.ts.map +1 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/lookup.js +95 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/lookup.js.map +1 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/simpleDetails.d.ts +16 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/simpleDetails.d.ts.map +1 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/simpleDetails.js +158 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/simpleDetails.js.map +1 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/simpleList.d.ts +7 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/simpleList.d.ts.map +1 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/simpleList.js +34 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/simpleList.js.map +1 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/simpleListDetails.d.ts +9 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/simpleListDetails.d.ts.map +1 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/simpleListDetails.js +99 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/simpleListDetails.js.map +1 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/tableOfContents.d.ts +8 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/tableOfContents.d.ts.map +1 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/tableOfContents.js +95 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/tableOfContents.js.map +1 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/task.d.ts +9 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/task.d.ts.map +1 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/task.js +42 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/task.js.map +1 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/wizard.d.ts +7 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/wizard.d.ts.map +1 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/wizard.js +42 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/wizard.js.map +1 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/workspace.d.ts +17 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/workspace.d.ts.map +1 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/workspace.js +157 -0
- package/dist/knowledge/formPatterns/catalog/topLevel/workspace.js.map +1 -0
- package/dist/knowledge/formPatterns/crossCheck.d.ts +44 -0
- package/dist/knowledge/formPatterns/crossCheck.d.ts.map +1 -0
- package/dist/knowledge/formPatterns/crossCheck.js +109 -0
- package/dist/knowledge/formPatterns/crossCheck.js.map +1 -0
- package/dist/knowledge/formPatterns/index.d.ts +30 -0
- package/dist/knowledge/formPatterns/index.d.ts.map +1 -0
- package/dist/knowledge/formPatterns/index.js +158 -0
- package/dist/knowledge/formPatterns/index.js.map +1 -0
- package/dist/knowledge/formPatterns/methodStubs.d.ts +45 -0
- package/dist/knowledge/formPatterns/methodStubs.d.ts.map +1 -0
- package/dist/knowledge/formPatterns/methodStubs.js +257 -0
- package/dist/knowledge/formPatterns/methodStubs.js.map +1 -0
- package/dist/knowledge/formPatterns/types.d.ts +115 -0
- package/dist/knowledge/formPatterns/types.d.ts.map +1 -0
- package/dist/knowledge/formPatterns/types.js +44 -0
- package/dist/knowledge/formPatterns/types.js.map +1 -0
- package/dist/metadata/enhancedParser.d.ts +91 -0
- package/dist/metadata/enhancedParser.d.ts.map +1 -0
- package/dist/metadata/enhancedParser.js +379 -0
- package/dist/metadata/enhancedParser.js.map +1 -0
- package/dist/metadata/formPatternMiner.d.ts +78 -0
- package/dist/metadata/formPatternMiner.d.ts.map +1 -0
- package/dist/metadata/formPatternMiner.js +220 -0
- package/dist/metadata/formPatternMiner.js.map +1 -0
- package/dist/metadata/labelParser.d.ts +71 -0
- package/dist/metadata/labelParser.d.ts.map +1 -0
- package/dist/metadata/labelParser.js +258 -0
- package/dist/metadata/labelParser.js.map +1 -0
- package/dist/metadata/symbolCountsWorker.d.ts +16 -0
- package/dist/metadata/symbolCountsWorker.d.ts.map +1 -0
- package/dist/metadata/symbolCountsWorker.js +42 -0
- package/dist/metadata/symbolCountsWorker.js.map +1 -0
- package/dist/metadata/symbolIndex.d.ts +474 -0
- package/dist/metadata/symbolIndex.d.ts.map +1 -0
- package/dist/metadata/symbolIndex.js +3152 -0
- package/dist/metadata/symbolIndex.js.map +1 -0
- package/dist/metadata/types.d.ts +267 -0
- package/dist/metadata/types.d.ts.map +1 -0
- package/dist/metadata/types.js +5 -0
- package/dist/metadata/types.js.map +1 -0
- package/dist/metadata/xmlParser.d.ts +232 -0
- package/dist/metadata/xmlParser.d.ts.map +1 -0
- package/dist/metadata/xmlParser.js +1021 -0
- package/dist/metadata/xmlParser.js.map +1 -0
- package/dist/metadata/xppDeclaration.d.ts +116 -0
- package/dist/metadata/xppDeclaration.d.ts.map +1 -0
- package/dist/metadata/xppDeclaration.js +350 -0
- package/dist/metadata/xppDeclaration.js.map +1 -0
- package/dist/middleware/apiKeyAuth.d.ts +7 -0
- package/dist/middleware/apiKeyAuth.d.ts.map +1 -0
- package/dist/middleware/apiKeyAuth.js +70 -0
- package/dist/middleware/apiKeyAuth.js.map +1 -0
- package/dist/middleware/rateLimiter.d.ts +7 -0
- package/dist/middleware/rateLimiter.d.ts.map +1 -0
- package/dist/middleware/rateLimiter.js +78 -0
- package/dist/middleware/rateLimiter.js.map +1 -0
- package/dist/prompts/codeReview.d.ts +8 -0
- package/dist/prompts/codeReview.d.ts.map +1 -0
- package/dist/prompts/codeReview.js +619 -0
- package/dist/prompts/codeReview.js.map +1 -0
- package/dist/prompts/index.d.ts +6 -0
- package/dist/prompts/index.d.ts.map +1 -0
- package/dist/prompts/index.js +6 -0
- package/dist/prompts/index.js.map +1 -0
- package/dist/prompts/systemInstructions.d.ts +33 -0
- package/dist/prompts/systemInstructions.d.ts.map +1 -0
- package/dist/prompts/systemInstructions.js +154 -0
- package/dist/prompts/systemInstructions.js.map +1 -0
- package/dist/resources/classResource.d.ts +17 -0
- package/dist/resources/classResource.d.ts.map +1 -0
- package/dist/resources/classResource.js +33 -0
- package/dist/resources/classResource.js.map +1 -0
- package/dist/resources/index.d.ts +20 -0
- package/dist/resources/index.d.ts.map +1 -0
- package/dist/resources/index.js +154 -0
- package/dist/resources/index.js.map +1 -0
- package/dist/server/mcpServer.d.ts +11 -0
- package/dist/server/mcpServer.d.ts.map +1 -0
- package/dist/server/mcpServer.js +185 -0
- package/dist/server/mcpServer.js.map +1 -0
- package/dist/server/serverMode.d.ts +53 -0
- package/dist/server/serverMode.d.ts.map +1 -0
- package/dist/server/serverMode.js +72 -0
- package/dist/server/serverMode.js.map +1 -0
- package/dist/server/toolAnnotations.d.ts +28 -0
- package/dist/server/toolAnnotations.d.ts.map +1 -0
- package/dist/server/toolAnnotations.js +70 -0
- package/dist/server/toolAnnotations.js.map +1 -0
- package/dist/server/toolSchemas/analyzeCode.d.ts +71 -0
- package/dist/server/toolSchemas/analyzeCode.d.ts.map +1 -0
- package/dist/server/toolSchemas/analyzeCode.js +50 -0
- package/dist/server/toolSchemas/analyzeCode.js.map +1 -0
- package/dist/server/toolSchemas/batchGetInfo.d.ts +32 -0
- package/dist/server/toolSchemas/batchGetInfo.d.ts.map +1 -0
- package/dist/server/toolSchemas/batchGetInfo.js +35 -0
- package/dist/server/toolSchemas/batchGetInfo.js.map +1 -0
- package/dist/server/toolSchemas/buildD365foProject.d.ts +44 -0
- package/dist/server/toolSchemas/buildD365foProject.d.ts.map +1 -0
- package/dist/server/toolSchemas/buildD365foProject.js +47 -0
- package/dist/server/toolSchemas/buildD365foProject.js.map +1 -0
- package/dist/server/toolSchemas/d365foFile.d.ts +99 -0
- package/dist/server/toolSchemas/d365foFile.d.ts.map +1 -0
- package/dist/server/toolSchemas/d365foFile.js +163 -0
- package/dist/server/toolSchemas/d365foFile.js.map +1 -0
- package/dist/server/toolSchemas/extensionInfo.d.ts +65 -0
- package/dist/server/toolSchemas/extensionInfo.d.ts.map +1 -0
- package/dist/server/toolSchemas/extensionInfo.js +73 -0
- package/dist/server/toolSchemas/extensionInfo.js.map +1 -0
- package/dist/server/toolSchemas/findReferences.d.ts +35 -0
- package/dist/server/toolSchemas/findReferences.d.ts.map +1 -0
- package/dist/server/toolSchemas/findReferences.js +35 -0
- package/dist/server/toolSchemas/findReferences.js.map +1 -0
- package/dist/server/toolSchemas/generateObject.d.ts +246 -0
- package/dist/server/toolSchemas/generateObject.d.ts.map +1 -0
- package/dist/server/toolSchemas/generateObject.js +158 -0
- package/dist/server/toolSchemas/generateObject.js.map +1 -0
- package/dist/server/toolSchemas/getKnowledge.d.ts +39 -0
- package/dist/server/toolSchemas/getKnowledge.d.ts.map +1 -0
- package/dist/server/toolSchemas/getKnowledge.js +46 -0
- package/dist/server/toolSchemas/getKnowledge.js.map +1 -0
- package/dist/server/toolSchemas/getMethod.d.ts +30 -0
- package/dist/server/toolSchemas/getMethod.d.ts.map +1 -0
- package/dist/server/toolSchemas/getMethod.js +34 -0
- package/dist/server/toolSchemas/getMethod.js.map +1 -0
- package/dist/server/toolSchemas/getObjectInfo.d.ts +24 -0
- package/dist/server/toolSchemas/getObjectInfo.d.ts.map +1 -0
- package/dist/server/toolSchemas/getObjectInfo.js +30 -0
- package/dist/server/toolSchemas/getObjectInfo.js.map +1 -0
- package/dist/server/toolSchemas/getWorkspaceInfo.d.ts +29 -0
- package/dist/server/toolSchemas/getWorkspaceInfo.d.ts.map +1 -0
- package/dist/server/toolSchemas/getWorkspaceInfo.js +29 -0
- package/dist/server/toolSchemas/getWorkspaceInfo.js.map +1 -0
- package/dist/server/toolSchemas/index.d.ts +1142 -0
- package/dist/server/toolSchemas/index.d.ts.map +1 -0
- package/dist/server/toolSchemas/index.js +60 -0
- package/dist/server/toolSchemas/index.js.map +1 -0
- package/dist/server/toolSchemas/labels.d.ts +172 -0
- package/dist/server/toolSchemas/labels.d.ts.map +1 -0
- package/dist/server/toolSchemas/labels.js +159 -0
- package/dist/server/toolSchemas/labels.js.map +1 -0
- package/dist/server/toolSchemas/objectPatterns.d.ts +93 -0
- package/dist/server/toolSchemas/objectPatterns.d.ts.map +1 -0
- package/dist/server/toolSchemas/objectPatterns.js +104 -0
- package/dist/server/toolSchemas/objectPatterns.js.map +1 -0
- package/dist/server/toolSchemas/prepare.d.ts +49 -0
- package/dist/server/toolSchemas/prepare.d.ts.map +1 -0
- package/dist/server/toolSchemas/prepare.js +57 -0
- package/dist/server/toolSchemas/prepare.js.map +1 -0
- package/dist/server/toolSchemas/reviewWorkspaceChanges.d.ts +20 -0
- package/dist/server/toolSchemas/reviewWorkspaceChanges.d.ts.map +1 -0
- package/dist/server/toolSchemas/reviewWorkspaceChanges.js +19 -0
- package/dist/server/toolSchemas/reviewWorkspaceChanges.js.map +1 -0
- package/dist/server/toolSchemas/runBpCheck.d.ts +36 -0
- package/dist/server/toolSchemas/runBpCheck.d.ts.map +1 -0
- package/dist/server/toolSchemas/runBpCheck.js +21 -0
- package/dist/server/toolSchemas/runBpCheck.js.map +1 -0
- package/dist/server/toolSchemas/runSystestClass.d.ts +32 -0
- package/dist/server/toolSchemas/runSystestClass.d.ts.map +1 -0
- package/dist/server/toolSchemas/runSystestClass.js +20 -0
- package/dist/server/toolSchemas/runSystestClass.js.map +1 -0
- package/dist/server/toolSchemas/search.d.ts +109 -0
- package/dist/server/toolSchemas/search.d.ts.map +1 -0
- package/dist/server/toolSchemas/search.js +123 -0
- package/dist/server/toolSchemas/search.js.map +1 -0
- package/dist/server/toolSchemas/securityInfo.d.ts +45 -0
- package/dist/server/toolSchemas/securityInfo.d.ts.map +1 -0
- package/dist/server/toolSchemas/securityInfo.js +39 -0
- package/dist/server/toolSchemas/securityInfo.js.map +1 -0
- package/dist/server/toolSchemas/suggestEdt.d.ts +29 -0
- package/dist/server/toolSchemas/suggestEdt.d.ts.map +1 -0
- package/dist/server/toolSchemas/suggestEdt.js +29 -0
- package/dist/server/toolSchemas/suggestEdt.js.map +1 -0
- package/dist/server/toolSchemas/triggerDbSync.d.ts +47 -0
- package/dist/server/toolSchemas/triggerDbSync.d.ts.map +1 -0
- package/dist/server/toolSchemas/triggerDbSync.js +31 -0
- package/dist/server/toolSchemas/triggerDbSync.js.map +1 -0
- package/dist/server/toolSchemas/undoLastModification.d.ts +20 -0
- package/dist/server/toolSchemas/undoLastModification.d.ts.map +1 -0
- package/dist/server/toolSchemas/undoLastModification.js +17 -0
- package/dist/server/toolSchemas/undoLastModification.js.map +1 -0
- package/dist/server/toolSchemas/updateSymbolIndex.d.ts +19 -0
- package/dist/server/toolSchemas/updateSymbolIndex.d.ts.map +1 -0
- package/dist/server/toolSchemas/updateSymbolIndex.js +18 -0
- package/dist/server/toolSchemas/updateSymbolIndex.js.map +1 -0
- package/dist/server/toolSchemas/validateCode.d.ts +35 -0
- package/dist/server/toolSchemas/validateCode.d.ts.map +1 -0
- package/dist/server/toolSchemas/validateCode.js +38 -0
- package/dist/server/toolSchemas/validateCode.js.map +1 -0
- package/dist/server/toolSchemas/validateObjectNaming.d.ts +33 -0
- package/dist/server/toolSchemas/validateObjectNaming.d.ts.map +1 -0
- package/dist/server/toolSchemas/validateObjectNaming.js +32 -0
- package/dist/server/toolSchemas/validateObjectNaming.js.map +1 -0
- package/dist/server/toolSchemas/verifyD365foProject.d.ts +50 -0
- package/dist/server/toolSchemas/verifyD365foProject.d.ts.map +1 -0
- package/dist/server/toolSchemas/verifyD365foProject.js +46 -0
- package/dist/server/toolSchemas/verifyD365foProject.js.map +1 -0
- package/dist/server/transport.d.ts +30 -0
- package/dist/server/transport.d.ts.map +1 -0
- package/dist/server/transport.js +391 -0
- package/dist/server/transport.js.map +1 -0
- package/dist/tools/analyzeCode.d.ts +17 -0
- package/dist/tools/analyzeCode.d.ts.map +1 -0
- package/dist/tools/analyzeCode.js +63 -0
- package/dist/tools/analyzeCode.js.map +1 -0
- package/dist/tools/analyzeCompleteness.d.ts +20 -0
- package/dist/tools/analyzeCompleteness.d.ts.map +1 -0
- package/dist/tools/analyzeCompleteness.js +103 -0
- package/dist/tools/analyzeCompleteness.js.map +1 -0
- package/dist/tools/analyzeExtensionPoints.d.ts +21 -0
- package/dist/tools/analyzeExtensionPoints.d.ts.map +1 -0
- package/dist/tools/analyzeExtensionPoints.js +343 -0
- package/dist/tools/analyzeExtensionPoints.js.map +1 -0
- package/dist/tools/analyzePatterns.d.ts +20 -0
- package/dist/tools/analyzePatterns.d.ts.map +1 -0
- package/dist/tools/analyzePatterns.js +71 -0
- package/dist/tools/analyzePatterns.js.map +1 -0
- package/dist/tools/apiUsagePatterns.d.ts +20 -0
- package/dist/tools/apiUsagePatterns.d.ts.map +1 -0
- package/dist/tools/apiUsagePatterns.js +136 -0
- package/dist/tools/apiUsagePatterns.js.map +1 -0
- package/dist/tools/batchGetInfo.d.ts +50 -0
- package/dist/tools/batchGetInfo.d.ts.map +1 -0
- package/dist/tools/batchGetInfo.js +52 -0
- package/dist/tools/batchGetInfo.js.map +1 -0
- package/dist/tools/batchSearch.d.ts +64 -0
- package/dist/tools/batchSearch.d.ts.map +1 -0
- package/dist/tools/batchSearch.js +265 -0
- package/dist/tools/batchSearch.js.map +1 -0
- package/dist/tools/buildProject.d.ts +28 -0
- package/dist/tools/buildProject.d.ts.map +1 -0
- package/dist/tools/buildProject.js +929 -0
- package/dist/tools/buildProject.js.map +1 -0
- package/dist/tools/classInfo.d.ts +8 -0
- package/dist/tools/classInfo.d.ts.map +1 -0
- package/dist/tools/classInfo.js +235 -0
- package/dist/tools/classInfo.js.map +1 -0
- package/dist/tools/codeGen.d.ts +19 -0
- package/dist/tools/codeGen.d.ts.map +1 -0
- package/dist/tools/codeGen.js +1956 -0
- package/dist/tools/codeGen.js.map +1 -0
- package/dist/tools/completion.d.ts +8 -0
- package/dist/tools/completion.d.ts.map +1 -0
- package/dist/tools/completion.js +272 -0
- package/dist/tools/completion.js.map +1 -0
- package/dist/tools/configKeyInfo.d.ts +22 -0
- package/dist/tools/configKeyInfo.d.ts.map +1 -0
- package/dist/tools/configKeyInfo.js +74 -0
- package/dist/tools/configKeyInfo.js.map +1 -0
- package/dist/tools/createD365File.d.ts +479 -0
- package/dist/tools/createD365File.d.ts.map +1 -0
- package/dist/tools/createD365File.js +4185 -0
- package/dist/tools/createD365File.js.map +1 -0
- package/dist/tools/createLabel.d.ts +51 -0
- package/dist/tools/createLabel.d.ts.map +1 -0
- package/dist/tools/createLabel.js +761 -0
- package/dist/tools/createLabel.js.map +1 -0
- package/dist/tools/d365foErrorHelp.d.ts +29 -0
- package/dist/tools/d365foErrorHelp.d.ts.map +1 -0
- package/dist/tools/d365foErrorHelp.js +389 -0
- package/dist/tools/d365foErrorHelp.js.map +1 -0
- package/dist/tools/d365foFile.d.ts +20 -0
- package/dist/tools/d365foFile.d.ts.map +1 -0
- package/dist/tools/d365foFile.js +58 -0
- package/dist/tools/d365foFile.js.map +1 -0
- package/dist/tools/d365foFileOpSpecs.d.ts +41 -0
- package/dist/tools/d365foFileOpSpecs.d.ts.map +1 -0
- package/dist/tools/d365foFileOpSpecs.js +336 -0
- package/dist/tools/d365foFileOpSpecs.js.map +1 -0
- package/dist/tools/dataEntityInfo.d.ts +23 -0
- package/dist/tools/dataEntityInfo.d.ts.map +1 -0
- package/dist/tools/dataEntityInfo.js +45 -0
- package/dist/tools/dataEntityInfo.js.map +1 -0
- package/dist/tools/dataEntityXml.d.ts +31 -0
- package/dist/tools/dataEntityXml.d.ts.map +1 -0
- package/dist/tools/dataEntityXml.js +131 -0
- package/dist/tools/dataEntityXml.js.map +1 -0
- package/dist/tools/dbSync.d.ts +8 -0
- package/dist/tools/dbSync.d.ts.map +1 -0
- package/dist/tools/dbSync.js +285 -0
- package/dist/tools/dbSync.js.map +1 -0
- package/dist/tools/edtInfo.d.ts +23 -0
- package/dist/tools/edtInfo.d.ts.map +1 -0
- package/dist/tools/edtInfo.js +122 -0
- package/dist/tools/edtInfo.js.map +1 -0
- package/dist/tools/enumInfo.d.ts +17 -0
- package/dist/tools/enumInfo.d.ts.map +1 -0
- package/dist/tools/enumInfo.js +44 -0
- package/dist/tools/enumInfo.js.map +1 -0
- package/dist/tools/extensionInfo.d.ts +26 -0
- package/dist/tools/extensionInfo.d.ts.map +1 -0
- package/dist/tools/extensionInfo.js +73 -0
- package/dist/tools/extensionInfo.js.map +1 -0
- package/dist/tools/extensionSearch.d.ts +20 -0
- package/dist/tools/extensionSearch.d.ts.map +1 -0
- package/dist/tools/extensionSearch.js +72 -0
- package/dist/tools/extensionSearch.js.map +1 -0
- package/dist/tools/extensionStrategyAdvisor.d.ts +15 -0
- package/dist/tools/extensionStrategyAdvisor.d.ts.map +1 -0
- package/dist/tools/extensionStrategyAdvisor.js +519 -0
- package/dist/tools/extensionStrategyAdvisor.js.map +1 -0
- package/dist/tools/findCocExtensions.d.ts +20 -0
- package/dist/tools/findCocExtensions.d.ts.map +1 -0
- package/dist/tools/findCocExtensions.js +285 -0
- package/dist/tools/findCocExtensions.js.map +1 -0
- package/dist/tools/findEventHandlers.d.ts +21 -0
- package/dist/tools/findEventHandlers.d.ts.map +1 -0
- package/dist/tools/findEventHandlers.js +196 -0
- package/dist/tools/findEventHandlers.js.map +1 -0
- package/dist/tools/findReferences.d.ts +30 -0
- package/dist/tools/findReferences.d.ts.map +1 -0
- package/dist/tools/findReferences.js +551 -0
- package/dist/tools/findReferences.js.map +1 -0
- package/dist/tools/formInfo.d.ts +13 -0
- package/dist/tools/formInfo.d.ts.map +1 -0
- package/dist/tools/formInfo.js +407 -0
- package/dist/tools/formInfo.js.map +1 -0
- package/dist/tools/formPattern.d.ts +19 -0
- package/dist/tools/formPattern.d.ts.map +1 -0
- package/dist/tools/formPattern.js +52 -0
- package/dist/tools/formPattern.js.map +1 -0
- package/dist/tools/generateD365Xml.d.ts +12 -0
- package/dist/tools/generateD365Xml.d.ts.map +1 -0
- package/dist/tools/generateD365Xml.js +1454 -0
- package/dist/tools/generateD365Xml.js.map +1 -0
- package/dist/tools/generateFindMethods.d.ts +69 -0
- package/dist/tools/generateFindMethods.d.ts.map +1 -0
- package/dist/tools/generateFindMethods.js +207 -0
- package/dist/tools/generateFindMethods.js.map +1 -0
- package/dist/tools/generateMetadata.d.ts +37 -0
- package/dist/tools/generateMetadata.d.ts.map +1 -0
- package/dist/tools/generateMetadata.js +213 -0
- package/dist/tools/generateMetadata.js.map +1 -0
- package/dist/tools/generateObject.d.ts +34 -0
- package/dist/tools/generateObject.d.ts.map +1 -0
- package/dist/tools/generateObject.js +47 -0
- package/dist/tools/generateObject.js.map +1 -0
- package/dist/tools/generateRelationXpp.d.ts +45 -0
- package/dist/tools/generateRelationXpp.d.ts.map +1 -0
- package/dist/tools/generateRelationXpp.js +129 -0
- package/dist/tools/generateRelationXpp.js.map +1 -0
- package/dist/tools/generateSmart.d.ts +32 -0
- package/dist/tools/generateSmart.d.ts.map +1 -0
- package/dist/tools/generateSmart.js +52 -0
- package/dist/tools/generateSmart.js.map +1 -0
- package/dist/tools/generateSmartForm.d.ts +82 -0
- package/dist/tools/generateSmartForm.d.ts.map +1 -0
- package/dist/tools/generateSmartForm.js +996 -0
- package/dist/tools/generateSmartForm.js.map +1 -0
- package/dist/tools/generateSmartReport.d.ts +90 -0
- package/dist/tools/generateSmartReport.d.ts.map +1 -0
- package/dist/tools/generateSmartReport.js +1254 -0
- package/dist/tools/generateSmartReport.js.map +1 -0
- package/dist/tools/generateSmartTable.d.ts +138 -0
- package/dist/tools/generateSmartTable.d.ts.map +1 -0
- package/dist/tools/generateSmartTable.js +1305 -0
- package/dist/tools/generateSmartTable.js.map +1 -0
- package/dist/tools/generateTableFields.d.ts +48 -0
- package/dist/tools/generateTableFields.d.ts.map +1 -0
- package/dist/tools/generateTableFields.js +186 -0
- package/dist/tools/generateTableFields.js.map +1 -0
- package/dist/tools/generateTableRelation.d.ts +35 -0
- package/dist/tools/generateTableRelation.d.ts.map +1 -0
- package/dist/tools/generateTableRelation.js +161 -0
- package/dist/tools/generateTableRelation.js.map +1 -0
- package/dist/tools/getFormPatternSpec.d.ts +13 -0
- package/dist/tools/getFormPatternSpec.d.ts.map +1 -0
- package/dist/tools/getFormPatternSpec.js +290 -0
- package/dist/tools/getFormPatternSpec.js.map +1 -0
- package/dist/tools/getFormPatterns.d.ts +68 -0
- package/dist/tools/getFormPatterns.d.ts.map +1 -0
- package/dist/tools/getFormPatterns.js +471 -0
- package/dist/tools/getFormPatterns.js.map +1 -0
- package/dist/tools/getKnowledge.d.ts +27 -0
- package/dist/tools/getKnowledge.d.ts.map +1 -0
- package/dist/tools/getKnowledge.js +50 -0
- package/dist/tools/getKnowledge.js.map +1 -0
- package/dist/tools/getLabelInfo.d.ts +21 -0
- package/dist/tools/getLabelInfo.d.ts.map +1 -0
- package/dist/tools/getLabelInfo.js +138 -0
- package/dist/tools/getLabelInfo.js.map +1 -0
- package/dist/tools/getMethod.d.ts +19 -0
- package/dist/tools/getMethod.d.ts.map +1 -0
- package/dist/tools/getMethod.js +77 -0
- package/dist/tools/getMethod.js.map +1 -0
- package/dist/tools/getMethodSource.d.ts +17 -0
- package/dist/tools/getMethodSource.d.ts.map +1 -0
- package/dist/tools/getMethodSource.js +161 -0
- package/dist/tools/getMethodSource.js.map +1 -0
- package/dist/tools/getObjectInfo.d.ts +17 -0
- package/dist/tools/getObjectInfo.d.ts.map +1 -0
- package/dist/tools/getObjectInfo.js +88 -0
- package/dist/tools/getObjectInfo.js.map +1 -0
- package/dist/tools/getTablePatterns.d.ts +45 -0
- package/dist/tools/getTablePatterns.d.ts.map +1 -0
- package/dist/tools/getTablePatterns.js +235 -0
- package/dist/tools/getTablePatterns.js.map +1 -0
- package/dist/tools/index.d.ts +11 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +11 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/tools/labels.d.ts +25 -0
- package/dist/tools/labels.d.ts.map +1 -0
- package/dist/tools/labels.js +111 -0
- package/dist/tools/labels.js.map +1 -0
- package/dist/tools/macroInfo.d.ts +23 -0
- package/dist/tools/macroInfo.d.ts.map +1 -0
- package/dist/tools/macroInfo.js +62 -0
- package/dist/tools/macroInfo.js.map +1 -0
- package/dist/tools/mapInfo.d.ts +21 -0
- package/dist/tools/mapInfo.d.ts.map +1 -0
- package/dist/tools/mapInfo.js +54 -0
- package/dist/tools/mapInfo.js.map +1 -0
- package/dist/tools/mapXml.d.ts +26 -0
- package/dist/tools/mapXml.d.ts.map +1 -0
- package/dist/tools/mapXml.js +88 -0
- package/dist/tools/mapXml.js.map +1 -0
- package/dist/tools/menuItemInfo.d.ts +20 -0
- package/dist/tools/menuItemInfo.d.ts.map +1 -0
- package/dist/tools/menuItemInfo.js +185 -0
- package/dist/tools/menuItemInfo.js.map +1 -0
- package/dist/tools/methodSignature.d.ts +33 -0
- package/dist/tools/methodSignature.d.ts.map +1 -0
- package/dist/tools/methodSignature.js +348 -0
- package/dist/tools/methodSignature.js.map +1 -0
- package/dist/tools/modifyD365File.d.ts +130 -0
- package/dist/tools/modifyD365File.d.ts.map +1 -0
- package/dist/tools/modifyD365File.js +2179 -0
- package/dist/tools/modifyD365File.js.map +1 -0
- package/dist/tools/objectInfoRegistry.d.ts +36 -0
- package/dist/tools/objectInfoRegistry.d.ts.map +1 -0
- package/dist/tools/objectInfoRegistry.js +98 -0
- package/dist/tools/objectInfoRegistry.js.map +1 -0
- package/dist/tools/objectPatterns.d.ts +16 -0
- package/dist/tools/objectPatterns.d.ts.map +1 -0
- package/dist/tools/objectPatterns.js +84 -0
- package/dist/tools/objectPatterns.js.map +1 -0
- package/dist/tools/prepare.d.ts +18 -0
- package/dist/tools/prepare.d.ts.map +1 -0
- package/dist/tools/prepare.js +47 -0
- package/dist/tools/prepare.js.map +1 -0
- package/dist/tools/prepareChange.d.ts +43 -0
- package/dist/tools/prepareChange.d.ts.map +1 -0
- package/dist/tools/prepareChange.js +327 -0
- package/dist/tools/prepareChange.js.map +1 -0
- package/dist/tools/prepareCreate.d.ts +45 -0
- package/dist/tools/prepareCreate.d.ts.map +1 -0
- package/dist/tools/prepareCreate.js +263 -0
- package/dist/tools/prepareCreate.js.map +1 -0
- package/dist/tools/queryInfo.d.ts +17 -0
- package/dist/tools/queryInfo.d.ts.map +1 -0
- package/dist/tools/queryInfo.js +46 -0
- package/dist/tools/queryInfo.js.map +1 -0
- package/dist/tools/queryViewXml.d.ts +36 -0
- package/dist/tools/queryViewXml.d.ts.map +1 -0
- package/dist/tools/queryViewXml.js +129 -0
- package/dist/tools/queryViewXml.js.map +1 -0
- package/dist/tools/renameLabel.d.ts +29 -0
- package/dist/tools/renameLabel.d.ts.map +1 -0
- package/dist/tools/renameLabel.js +377 -0
- package/dist/tools/renameLabel.js.map +1 -0
- package/dist/tools/repairFormControls.d.ts +21 -0
- package/dist/tools/repairFormControls.d.ts.map +1 -0
- package/dist/tools/repairFormControls.js +151 -0
- package/dist/tools/repairFormControls.js.map +1 -0
- package/dist/tools/reportInfo.d.ts +14 -0
- package/dist/tools/reportInfo.d.ts.map +1 -0
- package/dist/tools/reportInfo.js +302 -0
- package/dist/tools/reportInfo.js.map +1 -0
- package/dist/tools/resolveReferences.d.ts +89 -0
- package/dist/tools/resolveReferences.d.ts.map +1 -0
- package/dist/tools/resolveReferences.js +791 -0
- package/dist/tools/resolveReferences.js.map +1 -0
- package/dist/tools/reviewWorkspaceChanges.d.ts +14 -0
- package/dist/tools/reviewWorkspaceChanges.d.ts.map +1 -0
- package/dist/tools/reviewWorkspaceChanges.js +73 -0
- package/dist/tools/reviewWorkspaceChanges.js.map +1 -0
- package/dist/tools/runBpCheck.d.ts +14 -0
- package/dist/tools/runBpCheck.d.ts.map +1 -0
- package/dist/tools/runBpCheck.js +241 -0
- package/dist/tools/runBpCheck.js.map +1 -0
- package/dist/tools/search.d.ts +20 -0
- package/dist/tools/search.d.ts.map +1 -0
- package/dist/tools/search.js +246 -0
- package/dist/tools/search.js.map +1 -0
- package/dist/tools/searchLabels.d.ts +26 -0
- package/dist/tools/searchLabels.d.ts.map +1 -0
- package/dist/tools/searchLabels.js +91 -0
- package/dist/tools/searchLabels.js.map +1 -0
- package/dist/tools/searchUnified.d.ts +28 -0
- package/dist/tools/searchUnified.d.ts.map +1 -0
- package/dist/tools/searchUnified.js +48 -0
- package/dist/tools/searchUnified.js.map +1 -0
- package/dist/tools/securityArtifactInfo.d.ts +14 -0
- package/dist/tools/securityArtifactInfo.d.ts.map +1 -0
- package/dist/tools/securityArtifactInfo.js +192 -0
- package/dist/tools/securityArtifactInfo.js.map +1 -0
- package/dist/tools/securityCoverageInfo.d.ts +21 -0
- package/dist/tools/securityCoverageInfo.d.ts.map +1 -0
- package/dist/tools/securityCoverageInfo.js +248 -0
- package/dist/tools/securityCoverageInfo.js.map +1 -0
- package/dist/tools/securityInfo.d.ts +22 -0
- package/dist/tools/securityInfo.d.ts.map +1 -0
- package/dist/tools/securityInfo.js +43 -0
- package/dist/tools/securityInfo.js.map +1 -0
- package/dist/tools/securityPolicyInfo.d.ts +22 -0
- package/dist/tools/securityPolicyInfo.d.ts.map +1 -0
- package/dist/tools/securityPolicyInfo.js +49 -0
- package/dist/tools/securityPolicyInfo.js.map +1 -0
- package/dist/tools/securityPrivilegeXml.d.ts +21 -0
- package/dist/tools/securityPrivilegeXml.d.ts.map +1 -0
- package/dist/tools/securityPrivilegeXml.js +61 -0
- package/dist/tools/securityPrivilegeXml.js.map +1 -0
- package/dist/tools/serviceInfo.d.ts +25 -0
- package/dist/tools/serviceInfo.d.ts.map +1 -0
- package/dist/tools/serviceInfo.js +93 -0
- package/dist/tools/serviceInfo.js.map +1 -0
- package/dist/tools/suggestEdt.d.ts +15 -0
- package/dist/tools/suggestEdt.d.ts.map +1 -0
- package/dist/tools/suggestEdt.js +348 -0
- package/dist/tools/suggestEdt.js.map +1 -0
- package/dist/tools/suggestImplementation.d.ts +20 -0
- package/dist/tools/suggestImplementation.d.ts.map +1 -0
- package/dist/tools/suggestImplementation.js +144 -0
- package/dist/tools/suggestImplementation.js.map +1 -0
- package/dist/tools/sysTestRunner.d.ts +14 -0
- package/dist/tools/sysTestRunner.d.ts.map +1 -0
- package/dist/tools/sysTestRunner.js +145 -0
- package/dist/tools/sysTestRunner.js.map +1 -0
- package/dist/tools/tableExtensionInfo.d.ts +91 -0
- package/dist/tools/tableExtensionInfo.d.ts.map +1 -0
- package/dist/tools/tableExtensionInfo.js +305 -0
- package/dist/tools/tableExtensionInfo.js.map +1 -0
- package/dist/tools/tableInfo.d.ts +23 -0
- package/dist/tools/tableInfo.d.ts.map +1 -0
- package/dist/tools/tableInfo.js +125 -0
- package/dist/tools/tableInfo.js.map +1 -0
- package/dist/tools/toolHandler.d.ts +4 -0
- package/dist/tools/toolHandler.d.ts.map +1 -0
- package/dist/tools/toolHandler.js +508 -0
- package/dist/tools/toolHandler.js.map +1 -0
- package/dist/tools/undoLastModification.d.ts +15 -0
- package/dist/tools/undoLastModification.d.ts.map +1 -0
- package/dist/tools/undoLastModification.js +147 -0
- package/dist/tools/undoLastModification.js.map +1 -0
- package/dist/tools/updateSymbolIndex.d.ts +15 -0
- package/dist/tools/updateSymbolIndex.d.ts.map +1 -0
- package/dist/tools/updateSymbolIndex.js +520 -0
- package/dist/tools/updateSymbolIndex.js.map +1 -0
- package/dist/tools/validateCode.d.ts +24 -0
- package/dist/tools/validateCode.d.ts.map +1 -0
- package/dist/tools/validateCode.js +201 -0
- package/dist/tools/validateCode.js.map +1 -0
- package/dist/tools/validateFormPattern.d.ts +51 -0
- package/dist/tools/validateFormPattern.d.ts.map +1 -0
- package/dist/tools/validateFormPattern.js +201 -0
- package/dist/tools/validateFormPattern.js.map +1 -0
- package/dist/tools/validateObjectNaming.d.ts +21 -0
- package/dist/tools/validateObjectNaming.d.ts.map +1 -0
- package/dist/tools/validateObjectNaming.js +319 -0
- package/dist/tools/validateObjectNaming.js.map +1 -0
- package/dist/tools/validateXpp.d.ts +79 -0
- package/dist/tools/validateXpp.d.ts.map +1 -0
- package/dist/tools/validateXpp.js +705 -0
- package/dist/tools/validateXpp.js.map +1 -0
- package/dist/tools/verifyD365Project.d.ts +21 -0
- package/dist/tools/verifyD365Project.d.ts.map +1 -0
- package/dist/tools/verifyD365Project.js +299 -0
- package/dist/tools/verifyD365Project.js.map +1 -0
- package/dist/tools/viewInfo.d.ts +17 -0
- package/dist/tools/viewInfo.d.ts.map +1 -0
- package/dist/tools/viewInfo.js +46 -0
- package/dist/tools/viewInfo.js.map +1 -0
- package/dist/tools/xppKnowledge.d.ts +45 -0
- package/dist/tools/xppKnowledge.d.ts.map +1 -0
- package/dist/tools/xppKnowledge.js +2815 -0
- package/dist/tools/xppKnowledge.js.map +1 -0
- package/dist/types/context.d.ts +56 -0
- package/dist/types/context.d.ts.map +1 -0
- package/dist/types/context.js +5 -0
- package/dist/types/context.js.map +1 -0
- package/dist/utils/callDedup.d.ts +29 -0
- package/dist/utils/callDedup.d.ts.map +1 -0
- package/dist/utils/callDedup.js +87 -0
- package/dist/utils/callDedup.js.map +1 -0
- package/dist/utils/configManager.d.ts +307 -0
- package/dist/utils/configManager.d.ts.map +1 -0
- package/dist/utils/configManager.js +1169 -0
- package/dist/utils/configManager.js.map +1 -0
- package/dist/utils/d365XmlNormalizer.d.ts +9 -0
- package/dist/utils/d365XmlNormalizer.d.ts.map +1 -0
- package/dist/utils/d365XmlNormalizer.js +24 -0
- package/dist/utils/d365XmlNormalizer.js.map +1 -0
- package/dist/utils/edtExtensionValidator.d.ts +110 -0
- package/dist/utils/edtExtensionValidator.d.ts.map +1 -0
- package/dist/utils/edtExtensionValidator.js +367 -0
- package/dist/utils/edtExtensionValidator.js.map +1 -0
- package/dist/utils/eolUtils.d.ts +15 -0
- package/dist/utils/eolUtils.d.ts.map +1 -0
- package/dist/utils/eolUtils.js +21 -0
- package/dist/utils/eolUtils.js.map +1 -0
- package/dist/utils/extractManifest.d.ts +34 -0
- package/dist/utils/extractManifest.d.ts.map +1 -0
- package/dist/utils/extractManifest.js +43 -0
- package/dist/utils/extractManifest.js.map +1 -0
- package/dist/utils/fieldControlTypes.d.ts +44 -0
- package/dist/utils/fieldControlTypes.d.ts.map +1 -0
- package/dist/utils/fieldControlTypes.js +97 -0
- package/dist/utils/fieldControlTypes.js.map +1 -0
- package/dist/utils/formCloner.d.ts +77 -0
- package/dist/utils/formCloner.d.ts.map +1 -0
- package/dist/utils/formCloner.js +364 -0
- package/dist/utils/formCloner.js.map +1 -0
- package/dist/utils/formControlExpander.d.ts +68 -0
- package/dist/utils/formControlExpander.d.ts.map +1 -0
- package/dist/utils/formControlExpander.js +207 -0
- package/dist/utils/formControlExpander.js.map +1 -0
- package/dist/utils/formControlRepair.d.ts +81 -0
- package/dist/utils/formControlRepair.d.ts.map +1 -0
- package/dist/utils/formControlRepair.js +203 -0
- package/dist/utils/formControlRepair.js.map +1 -0
- package/dist/utils/formExtensionShapeValidator.d.ts +44 -0
- package/dist/utils/formExtensionShapeValidator.d.ts.map +1 -0
- package/dist/utils/formExtensionShapeValidator.js +99 -0
- package/dist/utils/formExtensionShapeValidator.js.map +1 -0
- package/dist/utils/formPatternTemplates.d.ts +77 -0
- package/dist/utils/formPatternTemplates.d.ts.map +1 -0
- package/dist/utils/formPatternTemplates.js +1917 -0
- package/dist/utils/formPatternTemplates.js.map +1 -0
- package/dist/utils/fsExtensionScanner.d.ts +76 -0
- package/dist/utils/fsExtensionScanner.d.ts.map +1 -0
- package/dist/utils/fsExtensionScanner.js +271 -0
- package/dist/utils/fsExtensionScanner.js.map +1 -0
- package/dist/utils/fuzzyMatching.d.ts +41 -0
- package/dist/utils/fuzzyMatching.d.ts.map +1 -0
- package/dist/utils/fuzzyMatching.js +186 -0
- package/dist/utils/fuzzyMatching.js.map +1 -0
- package/dist/utils/indexStaleness.d.ts +30 -0
- package/dist/utils/indexStaleness.d.ts.map +1 -0
- package/dist/utils/indexStaleness.js +104 -0
- package/dist/utils/indexStaleness.js.map +1 -0
- package/dist/utils/loadEnv.d.ts +32 -0
- package/dist/utils/loadEnv.d.ts.map +1 -0
- package/dist/utils/loadEnv.js +83 -0
- package/dist/utils/loadEnv.js.map +1 -0
- package/dist/utils/logger.d.ts +4 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/logger.js +11 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/metadataResolver.d.ts +155 -0
- package/dist/utils/metadataResolver.d.ts.map +1 -0
- package/dist/utils/metadataResolver.js +277 -0
- package/dist/utils/metadataResolver.js.map +1 -0
- package/dist/utils/modelClassifier.d.ts +180 -0
- package/dist/utils/modelClassifier.d.ts.map +1 -0
- package/dist/utils/modelClassifier.js +373 -0
- package/dist/utils/modelClassifier.js.map +1 -0
- package/dist/utils/operationLocks.d.ts +26 -0
- package/dist/utils/operationLocks.d.ts.map +1 -0
- package/dist/utils/operationLocks.js +182 -0
- package/dist/utils/operationLocks.js.map +1 -0
- package/dist/utils/packageResolver.d.ts +52 -0
- package/dist/utils/packageResolver.d.ts.map +1 -0
- package/dist/utils/packageResolver.js +174 -0
- package/dist/utils/packageResolver.js.map +1 -0
- package/dist/utils/pathContainment.d.ts +60 -0
- package/dist/utils/pathContainment.d.ts.map +1 -0
- package/dist/utils/pathContainment.js +270 -0
- package/dist/utils/pathContainment.js.map +1 -0
- package/dist/utils/projectUtils.d.ts +14 -0
- package/dist/utils/projectUtils.d.ts.map +1 -0
- package/dist/utils/projectUtils.js +48 -0
- package/dist/utils/projectUtils.js.map +1 -0
- package/dist/utils/provenanceStore.d.ts +54 -0
- package/dist/utils/provenanceStore.d.ts.map +1 -0
- package/dist/utils/provenanceStore.js +203 -0
- package/dist/utils/provenanceStore.js.map +1 -0
- package/dist/utils/richContext.d.ts +45 -0
- package/dist/utils/richContext.d.ts.map +1 -0
- package/dist/utils/richContext.js +316 -0
- package/dist/utils/richContext.js.map +1 -0
- package/dist/utils/smartXmlBuilder.d.ts +187 -0
- package/dist/utils/smartXmlBuilder.d.ts.map +1 -0
- package/dist/utils/smartXmlBuilder.js +504 -0
- package/dist/utils/smartXmlBuilder.js.map +1 -0
- package/dist/utils/stdioSessionInfo.d.ts +53 -0
- package/dist/utils/stdioSessionInfo.d.ts.map +1 -0
- package/dist/utils/stdioSessionInfo.js +47 -0
- package/dist/utils/stdioSessionInfo.js.map +1 -0
- package/dist/utils/suggestionEngine.d.ts +20 -0
- package/dist/utils/suggestionEngine.d.ts.map +1 -0
- package/dist/utils/suggestionEngine.js +145 -0
- package/dist/utils/suggestionEngine.js.map +1 -0
- package/dist/utils/symbolLookup.d.ts +60 -0
- package/dist/utils/symbolLookup.d.ts.map +1 -0
- package/dist/utils/symbolLookup.js +0 -0
- package/dist/utils/symbolLookup.js.map +1 -0
- package/dist/utils/terminalUi.d.ts +85 -0
- package/dist/utils/terminalUi.d.ts.map +1 -0
- package/dist/utils/terminalUi.js +182 -0
- package/dist/utils/terminalUi.js.map +1 -0
- package/dist/utils/toolMetrics.d.ts +32 -0
- package/dist/utils/toolMetrics.d.ts.map +1 -0
- package/dist/utils/toolMetrics.js +89 -0
- package/dist/utils/toolMetrics.js.map +1 -0
- package/dist/utils/toolProgressMessage.d.ts +8 -0
- package/dist/utils/toolProgressMessage.d.ts.map +1 -0
- package/dist/utils/toolProgressMessage.js +182 -0
- package/dist/utils/toolProgressMessage.js.map +1 -0
- package/dist/utils/workspaceDetector.d.ts +51 -0
- package/dist/utils/workspaceDetector.d.ts.map +1 -0
- package/dist/utils/workspaceDetector.js +328 -0
- package/dist/utils/workspaceDetector.js.map +1 -0
- package/dist/utils/xppConfigProvider.d.ts +48 -0
- package/dist/utils/xppConfigProvider.d.ts.map +1 -0
- package/dist/utils/xppConfigProvider.js +121 -0
- package/dist/utils/xppConfigProvider.js.map +1 -0
- package/dist/utils/xppDocGen.d.ts +39 -0
- package/dist/utils/xppDocGen.d.ts.map +1 -0
- package/dist/utils/xppDocGen.js +518 -0
- package/dist/utils/xppDocGen.js.map +1 -0
- package/dist/utils/xppFormat.d.ts +21 -0
- package/dist/utils/xppFormat.d.ts.map +1 -0
- package/dist/utils/xppFormat.js +102 -0
- package/dist/utils/xppFormat.js.map +1 -0
- package/dist/utils/xppSelectLint.d.ts +18 -0
- package/dist/utils/xppSelectLint.d.ts.map +1 -0
- package/dist/utils/xppSelectLint.js +80 -0
- package/dist/utils/xppSelectLint.js.map +1 -0
- package/dist/validation/formPatternValidator.d.ts +53 -0
- package/dist/validation/formPatternValidator.d.ts.map +1 -0
- package/dist/validation/formPatternValidator.js +454 -0
- package/dist/validation/formPatternValidator.js.map +1 -0
- package/dist/workspace/contextRanker.d.ts +58 -0
- package/dist/workspace/contextRanker.d.ts.map +1 -0
- package/dist/workspace/contextRanker.js +216 -0
- package/dist/workspace/contextRanker.js.map +1 -0
- package/dist/workspace/contextSnapshot.d.ts +68 -0
- package/dist/workspace/contextSnapshot.d.ts.map +1 -0
- package/dist/workspace/contextSnapshot.js +193 -0
- package/dist/workspace/contextSnapshot.js.map +1 -0
- package/dist/workspace/hybridSearch.d.ts +39 -0
- package/dist/workspace/hybridSearch.d.ts.map +1 -0
- package/dist/workspace/hybridSearch.js +96 -0
- package/dist/workspace/hybridSearch.js.map +1 -0
- package/dist/workspace/workspaceScanner.d.ts +95 -0
- package/dist/workspace/workspaceScanner.d.ts.map +1 -0
- package/dist/workspace/workspaceScanner.js +247 -0
- package/dist/workspace/workspaceScanner.js.map +1 -0
- package/dist/workspace/workspaceUtils.d.ts +23 -0
- package/dist/workspace/workspaceUtils.d.ts.map +1 -0
- package/dist/workspace/workspaceUtils.js +77 -0
- package/dist/workspace/workspaceUtils.js.map +1 -0
- package/package.json +94 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toolMetrics.js","sourceRoot":"","sources":["../../src/utils/toolMetrics.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Builds a human-readable progress/status description for a given tool call.
|
|
3
|
+
* Used in two places:
|
|
4
|
+
* - stdio mode → sent as MCP notifications/message BEFORE the tool runs (visible in chat)
|
|
5
|
+
* - HTTP mode → prepended to the tool result text (visible when expanding the tool call)
|
|
6
|
+
*/
|
|
7
|
+
export declare function buildProgressMessage(toolName: string, args: Record<string, any> | undefined): string;
|
|
8
|
+
//# sourceMappingURL=toolProgressMessage.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toolProgressMessage.d.ts","sourceRoot":"","sources":["../../src/utils/toolProgressMessage.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,SAAS,GAAG,MAAM,CA8JpG"}
|
|
@@ -0,0 +1,182 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Builds a human-readable progress/status description for a given tool call.
|
|
3
|
+
* Used in two places:
|
|
4
|
+
* - stdio mode → sent as MCP notifications/message BEFORE the tool runs (visible in chat)
|
|
5
|
+
* - HTTP mode → prepended to the tool result text (visible when expanding the tool call)
|
|
6
|
+
*/
|
|
7
|
+
export function buildProgressMessage(toolName, args) {
|
|
8
|
+
const a = args ?? {};
|
|
9
|
+
switch (toolName) {
|
|
10
|
+
case 'search':
|
|
11
|
+
if (Array.isArray(a.queries)) {
|
|
12
|
+
return `🔍 Batch search: ${a.queries.map((q) => `"${q.query ?? q}"`).join(', ')}`;
|
|
13
|
+
}
|
|
14
|
+
if (a.scope === 'extensions') {
|
|
15
|
+
return `🔍 Searching custom extensions: "${a.query ?? ''}"`;
|
|
16
|
+
}
|
|
17
|
+
return `🔍 Searching D365FO index: "${a.query ?? ''}"${a.type ? ` [${a.type}]` : ''}`;
|
|
18
|
+
case 'get_object_info':
|
|
19
|
+
return `📦 Reading ${a.objectType ?? 'object'} ${a.name ?? ''}`;
|
|
20
|
+
case 'get_method':
|
|
21
|
+
return `📖 Reading ${a.include === 'signature' ? 'signature' : a.include === 'source' ? 'source' : 'method'} of ${a.className ?? ''}.${a.methodName ?? ''}`;
|
|
22
|
+
case 'find_references':
|
|
23
|
+
return `🔗 Finding references to ${a.targetName ?? ''}`;
|
|
24
|
+
case 'extension_info':
|
|
25
|
+
switch (a.mode) {
|
|
26
|
+
case 'events': return `🔗 Finding event handlers for ${a.target ?? ''}`;
|
|
27
|
+
case 'table-merge': return `🔧 Reading extensions of table ${a.target ?? ''}`;
|
|
28
|
+
case 'points': return `🔍 Analyzing extension points of ${a.target ?? ''}`;
|
|
29
|
+
case 'strategy': return `💡 Recommending extension strategy for "${a.goal ?? ''}"${a.target ? ` on ${a.target}` : ''}`;
|
|
30
|
+
default: return `🔗 Finding CoC extensions of ${a.target ?? ''}${a.method ? `.${a.method}` : ''}`;
|
|
31
|
+
}
|
|
32
|
+
case 'security_info':
|
|
33
|
+
return a.mode === 'coverage'
|
|
34
|
+
? `🔒 Reading security coverage for ${a.objectName ?? ''}`
|
|
35
|
+
: `🔒 Reading security artifact ${a.name ?? ''}`;
|
|
36
|
+
case 'analyze_code':
|
|
37
|
+
switch (a.mode) {
|
|
38
|
+
case 'implementations': return `💡 Suggesting implementation for ${a.className ?? ''}.${a.methodName ?? ''}`;
|
|
39
|
+
case 'completeness': return `✅ Analyzing completeness of class ${a.className ?? ''}`;
|
|
40
|
+
case 'api-usage': return `📐 API usage patterns for ${a.apiName ?? ''}`;
|
|
41
|
+
default: return `📐 Analyzing code patterns: "${a.scenario ?? ''}"`;
|
|
42
|
+
}
|
|
43
|
+
case 'd365fo_file':
|
|
44
|
+
switch (a.action) {
|
|
45
|
+
case 'modify': {
|
|
46
|
+
const op = a.operation ?? 'modify';
|
|
47
|
+
// Op-specific parameters (methodName, fieldName, indexName, …) may arrive
|
|
48
|
+
// nested in `params` rather than flat at top level — merge so the label
|
|
49
|
+
// reflects the real values instead of showing blanks.
|
|
50
|
+
const p = { ...a, ...(a.params ?? {}) };
|
|
51
|
+
// Callers that just created the object pass `filePath` instead of
|
|
52
|
+
// `objectName`; fall back to the file's basename so the label isn't empty.
|
|
53
|
+
const objName = a.objectName
|
|
54
|
+
?? (typeof a.filePath === 'string'
|
|
55
|
+
? a.filePath.replace(/\\/g, '/').split('/').pop()?.replace(/\.xml$/i, '')
|
|
56
|
+
: undefined);
|
|
57
|
+
const obj = `${a.objectType ?? 'object'} ${objName ?? ''}`.trim();
|
|
58
|
+
switch (op) {
|
|
59
|
+
case 'add-index':
|
|
60
|
+
case 'remove-index': {
|
|
61
|
+
const fields = Array.isArray(p.indexFields)
|
|
62
|
+
? p.indexFields.map((f) => f.fieldName ?? f).join(', ')
|
|
63
|
+
: '';
|
|
64
|
+
return `✏️ ${op} "${p.indexName ?? ''}"${fields ? ` [${fields}]` : ''} on ${obj}`;
|
|
65
|
+
}
|
|
66
|
+
case 'add-relation':
|
|
67
|
+
case 'remove-relation': {
|
|
68
|
+
const constraints = Array.isArray(p.relationConstraints)
|
|
69
|
+
? p.relationConstraints.map((c) => `${c.fieldName ?? c.field} → ${c.relatedFieldName ?? c.relatedField}`).join(', ')
|
|
70
|
+
: '';
|
|
71
|
+
return `✏️ ${op} "${p.relationName ?? ''}"${p.relatedTable ? ` → ${p.relatedTable}` : ''}${constraints ? ` [${constraints}]` : ''} on ${obj}`;
|
|
72
|
+
}
|
|
73
|
+
case 'modify-property':
|
|
74
|
+
return `✏️ ${op} ${p.propertyPath ?? ''}${p.propertyValue !== undefined ? ` = ${String(p.propertyValue).slice(0, 40)}` : ''} on ${obj}`;
|
|
75
|
+
case 'add-method':
|
|
76
|
+
case 'remove-method':
|
|
77
|
+
case 'add-table-method':
|
|
78
|
+
case 'add-display-method': {
|
|
79
|
+
// methodName is optional for add-method — it is derived from the
|
|
80
|
+
// source signature downstream; derive it here too for the label.
|
|
81
|
+
const name = p.methodName ?? deriveMethodNameForLabel(p.sourceCode) ?? '';
|
|
82
|
+
return `✏️ ${op} "${name}" on ${obj}`;
|
|
83
|
+
}
|
|
84
|
+
case 'add-field':
|
|
85
|
+
case 'modify-field':
|
|
86
|
+
case 'rename-field':
|
|
87
|
+
case 'remove-field':
|
|
88
|
+
return `✏️ ${op} "${p.fieldName ?? ''}"${p.fieldNewName ? ` → "${p.fieldNewName}"` : ''} on ${obj}`;
|
|
89
|
+
case 'add-enum-value':
|
|
90
|
+
case 'modify-enum-value':
|
|
91
|
+
case 'remove-enum-value':
|
|
92
|
+
return `✏️ ${op} "${p.enumValueName ?? ''}" on ${obj}`;
|
|
93
|
+
default:
|
|
94
|
+
return `✏️ ${op} on ${obj}`;
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
case 'generate': return `🔧 Generating XML for ${a.objectType ?? 'object'} ${a.objectName ?? ''}`;
|
|
98
|
+
default: return `📁 Creating ${a.objectType ?? 'object'} ${a.objectName ?? ''}`;
|
|
99
|
+
}
|
|
100
|
+
case 'generate_object':
|
|
101
|
+
if (a.mode === 'scaffold') {
|
|
102
|
+
const kind = a.objectType ?? 'object';
|
|
103
|
+
return `🏗️ Generating ${kind} ${a.name ?? ''}`;
|
|
104
|
+
}
|
|
105
|
+
return `🔧 Generating code pattern "${a.pattern ?? ''}" for ${a.name ?? ''}`;
|
|
106
|
+
case 'object_patterns':
|
|
107
|
+
if (a.domain === 'table') {
|
|
108
|
+
return `📐 Getting table patterns${a.tableGroup ? ` [${a.tableGroup}]` : ''}${a.similarTo ? ` similar to ${a.similarTo}` : ''}`;
|
|
109
|
+
}
|
|
110
|
+
switch (a.action) {
|
|
111
|
+
case 'validate': return `✅ Validating form pattern${a.formName ? ` of ${a.formName}` : ''}`;
|
|
112
|
+
case 'spec': return `📐 Form pattern spec${a.pattern ? `: ${a.pattern}` : ''}`;
|
|
113
|
+
default: return `📐 Analyzing form patterns${a.formPattern ? ` [${a.formPattern}]` : ''}`;
|
|
114
|
+
}
|
|
115
|
+
case 'suggest_edt':
|
|
116
|
+
return `💡 Suggesting EDT for field "${a.fieldName ?? ''}"`;
|
|
117
|
+
case 'prepare':
|
|
118
|
+
return `🧭 Preparing ${a.mode === 'create' ? 'create' : 'change'} context${a.objectName ? ` for ${a.objectName}` : ''}`;
|
|
119
|
+
case 'labels': {
|
|
120
|
+
const action = a.action ?? '';
|
|
121
|
+
switch (action) {
|
|
122
|
+
case 'search':
|
|
123
|
+
return `🏷️ Searching labels: "${a.query ?? ''}"`;
|
|
124
|
+
case 'info':
|
|
125
|
+
return `🏷️ Reading label info${a.labelId ? ` for ${a.labelId}` : ''}`;
|
|
126
|
+
case 'create':
|
|
127
|
+
return `🏷️ Creating label ${a.labelId ?? ''}`;
|
|
128
|
+
case 'rename':
|
|
129
|
+
return `🏷️ Renaming label ${a.oldLabelId ?? ''} → ${a.newLabelId ?? ''}`;
|
|
130
|
+
default:
|
|
131
|
+
return `🏷️ Label operation${action ? ` (${action})` : ''}`;
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
case 'validate_object_naming':
|
|
135
|
+
return `✅ Validating name "${a.proposedName ?? ''}" for ${a.objectType ?? ''}`;
|
|
136
|
+
case 'verify_d365fo_project':
|
|
137
|
+
return `✅ Verifying D365FO project${a.projectPath ? ` at ${a.projectPath}` : ''}`;
|
|
138
|
+
case 'update_symbol_index':
|
|
139
|
+
return `🔄 Updating symbol index${a.filePath ? ` for ${a.filePath}` : ''}`;
|
|
140
|
+
case 'build_d365fo_project':
|
|
141
|
+
return `🔨 Building D365FO project${a.projectPath ? ` ${a.projectPath}` : ''}`;
|
|
142
|
+
case 'trigger_db_sync':
|
|
143
|
+
return `🗄️ Triggering database sync${a.tableName ? ` for ${a.tableName}` : ''}`;
|
|
144
|
+
case 'run_bp_check':
|
|
145
|
+
return `🔍 Running Best Practices check${a.targetFilter ? ` on ${a.targetFilter}` : ''}`;
|
|
146
|
+
case 'run_systest_class':
|
|
147
|
+
return `🧪 Running unit tests: ${a.className ?? ''}`;
|
|
148
|
+
case 'review_workspace_changes':
|
|
149
|
+
return `🔍 Reviewing workspace changes${a.directoryPath ? ` in ${a.directoryPath}` : ''}`;
|
|
150
|
+
case 'undo_last_modification':
|
|
151
|
+
return `↩️ Undoing last modification${a.filePath ? ` of ${a.filePath}` : ''}`;
|
|
152
|
+
case 'get_workspace_info':
|
|
153
|
+
return `⚙️ Reading workspace configuration`;
|
|
154
|
+
case 'get_knowledge':
|
|
155
|
+
return a.kind === 'error'
|
|
156
|
+
? `🆘 Looking up D365FO error: "${String(a.errorText ?? '').slice(0, 80)}"`
|
|
157
|
+
: `📚 Reading X++ knowledge: "${a.topic ?? ''}"`;
|
|
158
|
+
case 'validate_code':
|
|
159
|
+
return a.mode === 'references'
|
|
160
|
+
? `🔎 Resolving symbol references in generated code`
|
|
161
|
+
: `✅ Validating X++/XML (best-practice rules)`;
|
|
162
|
+
default:
|
|
163
|
+
return `⚙️ Running ${toolName}`;
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
/**
|
|
167
|
+
* Best-effort method-name extraction for the progress label only, used when an
|
|
168
|
+
* add-method call omits `methodName` and relies on downstream derivation from the
|
|
169
|
+
* source. Strips line/block comments, then returns the identifier before the first
|
|
170
|
+
* '(' of the signature. Not authoritative — the bridge derives the real name.
|
|
171
|
+
*/
|
|
172
|
+
function deriveMethodNameForLabel(source) {
|
|
173
|
+
if (typeof source !== 'string' || !source)
|
|
174
|
+
return null;
|
|
175
|
+
const cleaned = source
|
|
176
|
+
.replace(/\/\/[^\n]*/g, ' ')
|
|
177
|
+
.replace(/\/\*[\s\S]*?\*\//g, ' ')
|
|
178
|
+
.replace(/\[[^\]]*\]/g, ' ');
|
|
179
|
+
const m = cleaned.match(/\b([A-Za-z_]\w*)\s*\(/);
|
|
180
|
+
return m ? m[1] : null;
|
|
181
|
+
}
|
|
182
|
+
//# sourceMappingURL=toolProgressMessage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toolProgressMessage.js","sourceRoot":"","sources":["../../src/utils/toolProgressMessage.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Workspace Detector
|
|
3
|
+
* Automatically detects D365FO project paths from GitHub Copilot workspace
|
|
4
|
+
*/
|
|
5
|
+
export interface D365ProjectInfo {
|
|
6
|
+
/** Path to the .rnrproj file. May be undefined when model was detected from PackagesLocalDirectory path. */
|
|
7
|
+
projectPath?: string;
|
|
8
|
+
modelName: string;
|
|
9
|
+
/** Path to the VS solution folder. May be undefined when model was detected from PackagesLocalDirectory path. */
|
|
10
|
+
solutionPath?: string;
|
|
11
|
+
/** Base PackagesLocalDirectory path, if known */
|
|
12
|
+
packagePath?: string;
|
|
13
|
+
packageName?: string;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Returns true when the model name is a well-known Microsoft tutorial/demo model
|
|
17
|
+
* that should never be auto-selected as a custom project target.
|
|
18
|
+
*/
|
|
19
|
+
export declare function isMicrosoftDemoModel(modelName: string): boolean;
|
|
20
|
+
/**
|
|
21
|
+
* Extract ModelName from .rnrproj file
|
|
22
|
+
* Tries <Model> tag first (standard), then falls back to <ModelName>
|
|
23
|
+
*/
|
|
24
|
+
export declare function extractModelNameFromProject(projectPath: string): Promise<string | null>;
|
|
25
|
+
/**
|
|
26
|
+
* Detect D365FO project information from workspace path
|
|
27
|
+
* This is automatically called when GitHub Copilot provides workspace context
|
|
28
|
+
*/
|
|
29
|
+
export declare function detectD365Project(workspacePath: string, maxDepth?: number): Promise<D365ProjectInfo | null>;
|
|
30
|
+
/**
|
|
31
|
+
* Auto-detect project from multiple possible workspace sources:
|
|
32
|
+
* 1. Explicitly provided workspacePath parameter
|
|
33
|
+
* 2. Current working directory (process.cwd())
|
|
34
|
+
* 3. Environment variable WORKSPACE_PATH
|
|
35
|
+
* 4. Well-known VS project directories (%USERPROFILE%\Documents\VS 2022\Projects, K:\VSProjects, K:\Projects, K:\repos, C:\VSProjects, C:\Projects)
|
|
36
|
+
* 5. PackagesLocalDirectory path regex extraction (last resort, no .rnrproj)
|
|
37
|
+
*/
|
|
38
|
+
export declare function autoDetectD365Project(explicitWorkspacePath?: string): Promise<D365ProjectInfo | null>;
|
|
39
|
+
/**
|
|
40
|
+
* Get the currently checked-out git branch name for a directory.
|
|
41
|
+
* Returns null if the directory is not a git repository, git is unavailable,
|
|
42
|
+
* or HEAD is detached (detached HEAD is unhelpful for project matching).
|
|
43
|
+
*/
|
|
44
|
+
export declare function detectGitBranch(workspaceRoot: string): Promise<string | null>;
|
|
45
|
+
/**
|
|
46
|
+
* Scan a root directory for ALL D365FO projects (.rnrproj files).
|
|
47
|
+
* Used when D365FO_SOLUTIONS_PATH is configured — lists every project available
|
|
48
|
+
* so the user can pick the active one via get_workspace_info(projectPath).
|
|
49
|
+
*/
|
|
50
|
+
export declare function scanAllD365Projects(rootPath: string): Promise<D365ProjectInfo[]>;
|
|
51
|
+
//# sourceMappingURL=workspaceDetector.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workspaceDetector.d.ts","sourceRoot":"","sources":["../../src/utils/workspaceDetector.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAOH,MAAM,WAAW,eAAe;IAC9B,4GAA4G;IAC5G,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,iHAAiH;IACjH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iDAAiD;IACjD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAeD;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAE/D;AAoDD;;;GAGG;AACH,wBAAsB,2BAA2B,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAgB7F;AAED;;;GAGG;AACH,wBAAsB,iBAAiB,CAAC,aAAa,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAU,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CAqEpH;AAED;;;;;;;GAOG;AACH,wBAAsB,qBAAqB,CACzC,qBAAqB,CAAC,EAAE,MAAM,GAC7B,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CA6HjC;AAED;;;;GAIG;AACH,wBAAsB,eAAe,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAgBnF;AAED;;;;GAIG;AACH,wBAAsB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC,CAkBtF"}
|
|
@@ -0,0 +1,328 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Workspace Detector
|
|
3
|
+
* Automatically detects D365FO project paths from GitHub Copilot workspace
|
|
4
|
+
*/
|
|
5
|
+
import * as fs from 'fs/promises';
|
|
6
|
+
import { existsSync } from 'fs';
|
|
7
|
+
import * as path from 'path';
|
|
8
|
+
import { debugLog } from './logger.js';
|
|
9
|
+
/**
|
|
10
|
+
* Microsoft tutorial / demo model names that ship with D365FO.
|
|
11
|
+
* A new VS project's <Model> tag defaults to "FleetManagement" when the developer
|
|
12
|
+
* forgets to change it in the project wizard. These model names must never be
|
|
13
|
+
* auto-selected as the target custom model for create/modify operations.
|
|
14
|
+
*/
|
|
15
|
+
const MICROSOFT_DEMO_MODELS = new Set([
|
|
16
|
+
'fleetmanagement',
|
|
17
|
+
'fleetmanagementextension',
|
|
18
|
+
'fleetmanagementunittests',
|
|
19
|
+
'tutorial',
|
|
20
|
+
]);
|
|
21
|
+
/**
|
|
22
|
+
* Returns true when the model name is a well-known Microsoft tutorial/demo model
|
|
23
|
+
* that should never be auto-selected as a custom project target.
|
|
24
|
+
*/
|
|
25
|
+
export function isMicrosoftDemoModel(modelName) {
|
|
26
|
+
return MICROSOFT_DEMO_MODELS.has(modelName.toLowerCase());
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Find all .rnrproj files in a directory (recursive search)
|
|
30
|
+
* Limited to reasonable depth to avoid performance issues
|
|
31
|
+
*/
|
|
32
|
+
async function findProjectFiles(dir, maxDepth = 5, currentDepth = 0) {
|
|
33
|
+
if (currentDepth >= maxDepth) {
|
|
34
|
+
return [];
|
|
35
|
+
}
|
|
36
|
+
try {
|
|
37
|
+
const entries = await fs.readdir(dir, { withFileTypes: true });
|
|
38
|
+
const projectFiles = [];
|
|
39
|
+
for (const entry of entries) {
|
|
40
|
+
const fullPath = path.join(dir, entry.name);
|
|
41
|
+
// Skip common directories that won't contain .rnrproj
|
|
42
|
+
const skipDirs = [
|
|
43
|
+
'node_modules', 'bin', 'obj', '.git', '.vs', 'PackagesLocalDirectory',
|
|
44
|
+
// AOT artifact folders inside model directories — skip to avoid crawling thousands of XML files
|
|
45
|
+
'AxClass', 'AxTable', 'AxForm', 'AxEnum', 'AxQuery', 'AxView',
|
|
46
|
+
'AxDataEntityView', 'AxTableExtension', 'AxFormExtension',
|
|
47
|
+
'AxMenuItemAction', 'AxMenuItemDisplay', 'AxMenuItemOutput',
|
|
48
|
+
'AxMenu', 'AxSecurityRole', 'AxSecurityDuty', 'AxSecurityPrivilege',
|
|
49
|
+
'AxLabel', 'AxResource', 'AxReport',
|
|
50
|
+
'AxEdt', 'AxExtendedDataType',
|
|
51
|
+
];
|
|
52
|
+
if (entry.isDirectory() && skipDirs.includes(entry.name)) {
|
|
53
|
+
continue;
|
|
54
|
+
}
|
|
55
|
+
if (entry.isFile() && entry.name.endsWith('.rnrproj')) {
|
|
56
|
+
projectFiles.push(fullPath);
|
|
57
|
+
}
|
|
58
|
+
else if (entry.isDirectory()) {
|
|
59
|
+
const subProjects = await findProjectFiles(fullPath, maxDepth, currentDepth + 1);
|
|
60
|
+
projectFiles.push(...subProjects);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
return projectFiles;
|
|
64
|
+
}
|
|
65
|
+
catch (error) {
|
|
66
|
+
// Directory not accessible or doesn't exist
|
|
67
|
+
return [];
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Extract ModelName from .rnrproj file
|
|
72
|
+
* Tries <Model> tag first (standard), then falls back to <ModelName>
|
|
73
|
+
*/
|
|
74
|
+
export async function extractModelNameFromProject(projectPath) {
|
|
75
|
+
try {
|
|
76
|
+
const content = await fs.readFile(projectPath, 'utf-8');
|
|
77
|
+
// Try <Model> tag first (standard D365FO project format)
|
|
78
|
+
const modelMatch = content.match(/<Model>(.*?)<\/Model>/);
|
|
79
|
+
if (modelMatch && modelMatch[1]) {
|
|
80
|
+
return modelMatch[1];
|
|
81
|
+
}
|
|
82
|
+
// Fallback to <ModelName> tag (alternative format)
|
|
83
|
+
const modelNameMatch = content.match(/<ModelName>(.*?)<\/ModelName>/);
|
|
84
|
+
return modelNameMatch ? modelNameMatch[1] : null;
|
|
85
|
+
}
|
|
86
|
+
catch {
|
|
87
|
+
return null;
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Detect D365FO project information from workspace path
|
|
92
|
+
* This is automatically called when GitHub Copilot provides workspace context
|
|
93
|
+
*/
|
|
94
|
+
export async function detectD365Project(workspacePath, maxDepth = 5) {
|
|
95
|
+
try {
|
|
96
|
+
debugLog(`[WorkspaceDetector] Searching for .rnrproj files in: ${workspacePath}`);
|
|
97
|
+
// Find all .rnrproj files in workspace
|
|
98
|
+
const projectFiles = await findProjectFiles(workspacePath, maxDepth);
|
|
99
|
+
if (projectFiles.length === 0) {
|
|
100
|
+
debugLog('[WorkspaceDetector] No .rnrproj files found in workspace');
|
|
101
|
+
return null;
|
|
102
|
+
}
|
|
103
|
+
debugLog(`[WorkspaceDetector] Found ${projectFiles.length} .rnrproj file(s):`);
|
|
104
|
+
projectFiles.forEach(p => debugLog(` - ${p}`));
|
|
105
|
+
// Prefer the .rnrproj whose own folder name matches the workspace base name
|
|
106
|
+
// (D365FO multi-project solution convention); else the first file found.
|
|
107
|
+
let primaryProject = projectFiles[0];
|
|
108
|
+
if (projectFiles.length > 1) {
|
|
109
|
+
const wpBase = path.basename(workspacePath).toLowerCase();
|
|
110
|
+
const nameMatch = projectFiles.find(p => path.basename(path.dirname(p)).toLowerCase() === wpBase);
|
|
111
|
+
if (nameMatch) {
|
|
112
|
+
primaryProject = nameMatch;
|
|
113
|
+
debugLog(`[WorkspaceDetector] Solution-name match → ${path.basename(nameMatch)}`);
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
// Prefer a non-demo model when the initially selected primaryProject has a
|
|
117
|
+
// Microsoft demo model name (e.g. FleetManagement).
|
|
118
|
+
const modelName = await extractModelNameFromProject(primaryProject);
|
|
119
|
+
if (modelName && isMicrosoftDemoModel(modelName) && projectFiles.length > 1) {
|
|
120
|
+
debugLog(`[WorkspaceDetector] Primary .rnrproj has MS demo model "${modelName}" — looking for better candidate`);
|
|
121
|
+
for (const pf of projectFiles) {
|
|
122
|
+
if (pf === primaryProject)
|
|
123
|
+
continue;
|
|
124
|
+
const altModel = await extractModelNameFromProject(pf);
|
|
125
|
+
if (altModel && !isMicrosoftDemoModel(altModel)) {
|
|
126
|
+
debugLog(`[WorkspaceDetector] Skipping demo model "${modelName}", using "${altModel}" from ${path.basename(pf)}`);
|
|
127
|
+
primaryProject = pf;
|
|
128
|
+
break;
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
if (!modelName) {
|
|
133
|
+
console.error('[WorkspaceDetector] Could not extract ModelName from .rnrproj');
|
|
134
|
+
return null;
|
|
135
|
+
}
|
|
136
|
+
// Extract solution path (parent directory of .rnrproj)
|
|
137
|
+
const solutionPath = path.dirname(path.dirname(primaryProject));
|
|
138
|
+
const result = {
|
|
139
|
+
projectPath: primaryProject,
|
|
140
|
+
modelName,
|
|
141
|
+
solutionPath,
|
|
142
|
+
};
|
|
143
|
+
debugLog('[WorkspaceDetector] ✅ Detected D365FO project:');
|
|
144
|
+
debugLog(` Project: ${result.projectPath}`);
|
|
145
|
+
debugLog(` Model: ${result.modelName}`);
|
|
146
|
+
debugLog(` Solution: ${result.solutionPath}`);
|
|
147
|
+
return result;
|
|
148
|
+
}
|
|
149
|
+
catch (error) {
|
|
150
|
+
console.error('[WorkspaceDetector] Error detecting project:', error);
|
|
151
|
+
return null;
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
/**
|
|
155
|
+
* Auto-detect project from multiple possible workspace sources:
|
|
156
|
+
* 1. Explicitly provided workspacePath parameter
|
|
157
|
+
* 2. Current working directory (process.cwd())
|
|
158
|
+
* 3. Environment variable WORKSPACE_PATH
|
|
159
|
+
* 4. Well-known VS project directories (%USERPROFILE%\Documents\VS 2022\Projects, K:\VSProjects, K:\Projects, K:\repos, C:\VSProjects, C:\Projects)
|
|
160
|
+
* 5. PackagesLocalDirectory path regex extraction (last resort, no .rnrproj)
|
|
161
|
+
*/
|
|
162
|
+
export async function autoDetectD365Project(explicitWorkspacePath) {
|
|
163
|
+
// Priority 1: Explicit workspace path
|
|
164
|
+
if (explicitWorkspacePath) {
|
|
165
|
+
debugLog(`[WorkspaceDetector] Using explicit workspace path: ${explicitWorkspacePath}`);
|
|
166
|
+
const result = await detectD365Project(explicitWorkspacePath);
|
|
167
|
+
if (result)
|
|
168
|
+
return result;
|
|
169
|
+
}
|
|
170
|
+
// Priority 2: Current working directory (skip if it's a Node.js project —
|
|
171
|
+
// VS 2022 starts the stdio subprocess from the server's own directory).
|
|
172
|
+
const cwd = process.cwd();
|
|
173
|
+
const cwdIsNodeProject = existsSync(path.join(cwd, 'package.json'));
|
|
174
|
+
if (cwdIsNodeProject) {
|
|
175
|
+
debugLog(`[WorkspaceDetector] Skipping cwd (Node.js project): ${cwd}`);
|
|
176
|
+
}
|
|
177
|
+
else {
|
|
178
|
+
debugLog(`[WorkspaceDetector] Trying current working directory: ${cwd}`);
|
|
179
|
+
const cwdResult = await detectD365Project(cwd);
|
|
180
|
+
if (cwdResult)
|
|
181
|
+
return cwdResult;
|
|
182
|
+
}
|
|
183
|
+
// Priority 3: Explicit env vars
|
|
184
|
+
const envWorkspace = process.env.WORKSPACE_PATH;
|
|
185
|
+
if (envWorkspace) {
|
|
186
|
+
debugLog(`[WorkspaceDetector] Trying WORKSPACE_PATH env var: ${envWorkspace}`);
|
|
187
|
+
const envResult = await detectD365Project(envWorkspace);
|
|
188
|
+
if (envResult)
|
|
189
|
+
return envResult;
|
|
190
|
+
}
|
|
191
|
+
// Priority 3b: D365FO_SOLUTIONS_PATH — scan root for ALL D365FO projects, use
|
|
192
|
+
// first as primary (recommended for multi-solution setups; full list is
|
|
193
|
+
// available via scanAllD365Projects()).
|
|
194
|
+
const solutionsRoot = process.env.D365FO_SOLUTIONS_PATH;
|
|
195
|
+
if (solutionsRoot) {
|
|
196
|
+
debugLog(`[WorkspaceDetector] Scanning D365FO_SOLUTIONS_PATH: ${solutionsRoot}`);
|
|
197
|
+
const result = await detectD365Project(solutionsRoot, 6);
|
|
198
|
+
if (result)
|
|
199
|
+
return result;
|
|
200
|
+
}
|
|
201
|
+
// Priority 4: Well-known VS project directories (Windows only).
|
|
202
|
+
// %USERPROFILE%\source\repos is intentionally excluded — it often contains the
|
|
203
|
+
// MCP server repo itself alongside D365FO projects, making the first-found
|
|
204
|
+
// result unpredictable; use D365FO_SOLUTIONS_PATH instead.
|
|
205
|
+
if (process.platform === 'win32') {
|
|
206
|
+
const userProfile = process.env.USERPROFILE || (process.env.USERNAME ? `C:\\Users\\${process.env.USERNAME}` : undefined);
|
|
207
|
+
const wellKnownPaths = [
|
|
208
|
+
userProfile ? `${userProfile}\\Documents\\Visual Studio 2022\\Projects` : undefined,
|
|
209
|
+
// K: is the data drive in most LCS-provisioned VMs
|
|
210
|
+
`K:\\VSProjects`,
|
|
211
|
+
`K:\\Projects`,
|
|
212
|
+
`K:\\repos`,
|
|
213
|
+
`C:\\VSProjects`,
|
|
214
|
+
`C:\\Projects`,
|
|
215
|
+
].filter((p) => !!p);
|
|
216
|
+
const sanitizePathForLog = (p) => {
|
|
217
|
+
if (userProfile && p.startsWith(userProfile)) {
|
|
218
|
+
return p.replace(userProfile, '<UserProfile>');
|
|
219
|
+
}
|
|
220
|
+
return p;
|
|
221
|
+
};
|
|
222
|
+
for (const searchRoot of wellKnownPaths) {
|
|
223
|
+
try {
|
|
224
|
+
const files = await findProjectFiles(searchRoot);
|
|
225
|
+
if (files.length > 0) {
|
|
226
|
+
const loggedSearchRoot = sanitizePathForLog(searchRoot);
|
|
227
|
+
debugLog(`[WorkspaceDetector] Found ${files.length} .rnrproj file(s) in ${loggedSearchRoot}`);
|
|
228
|
+
const projectPath = files[0]; // take first (most likely the user's project)
|
|
229
|
+
const modelName = await extractModelNameFromProject(projectPath);
|
|
230
|
+
if (modelName) {
|
|
231
|
+
const solutionPath = path.dirname(path.dirname(projectPath));
|
|
232
|
+
const packagePath = explicitWorkspacePath
|
|
233
|
+
? path.normalize(explicitWorkspacePath).match(/^(.+[\\\/]PackagesLocalDirectory)(?:[\\\/]|$)/i)?.[1] || null
|
|
234
|
+
: null;
|
|
235
|
+
debugLog(`[WorkspaceDetector] ✅ Found project via well-known path: ${projectPath}`);
|
|
236
|
+
debugLog(`[WorkspaceDetector] ModelName: ${modelName}`);
|
|
237
|
+
return {
|
|
238
|
+
modelName,
|
|
239
|
+
projectPath,
|
|
240
|
+
solutionPath,
|
|
241
|
+
packagePath: packagePath || undefined,
|
|
242
|
+
};
|
|
243
|
+
}
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
catch {
|
|
247
|
+
// directory doesn't exist or not accessible — skip silently
|
|
248
|
+
}
|
|
249
|
+
}
|
|
250
|
+
}
|
|
251
|
+
// Priority 5: Extract model name directly from a PackagesLocalDirectory path,
|
|
252
|
+
// e.g. K:\AOSService\PackagesLocalDirectory\MyEnhancedDataSharing → "MyEnhancedDataSharing"
|
|
253
|
+
if (explicitWorkspacePath) {
|
|
254
|
+
const normalized = path.normalize(explicitWorkspacePath);
|
|
255
|
+
// K:\...\PackagesLocalDirectory\PackageName\ModelName
|
|
256
|
+
const twoLevelMatch = normalized.match(/^(.+[\\\/]PackagesLocalDirectory)[\\\/]([^\\\/]+)[\\\/]([^\\\/]+)\\?\/?$/i);
|
|
257
|
+
if (twoLevelMatch) {
|
|
258
|
+
const packagePath = twoLevelMatch[1];
|
|
259
|
+
const packageName = twoLevelMatch[2];
|
|
260
|
+
const modelName = twoLevelMatch[3];
|
|
261
|
+
return {
|
|
262
|
+
modelName,
|
|
263
|
+
packageName,
|
|
264
|
+
packagePath,
|
|
265
|
+
};
|
|
266
|
+
}
|
|
267
|
+
const match = normalized.match(/^(.+[\\]PackagesLocalDirectory)[\\]([^\\]+)\\?$/i);
|
|
268
|
+
if (match) {
|
|
269
|
+
const packagePath = match[1];
|
|
270
|
+
const modelName = match[2];
|
|
271
|
+
debugLog(`[WorkspaceDetector] ✅ Extracted model name from PackagesLocalDirectory path: ${modelName}`);
|
|
272
|
+
debugLog(`[WorkspaceDetector] Package path: ${packagePath}`);
|
|
273
|
+
debugLog(`[WorkspaceDetector] Note: projectPath unknown — addToProject=true requires projectPath in .mcp.json`);
|
|
274
|
+
// projectPath and solutionPath omitted — not derivable from this path form
|
|
275
|
+
return {
|
|
276
|
+
modelName,
|
|
277
|
+
packagePath,
|
|
278
|
+
};
|
|
279
|
+
}
|
|
280
|
+
}
|
|
281
|
+
console.error('[WorkspaceDetector] ⚠️ Could not auto-detect D365FO project from any source');
|
|
282
|
+
return null;
|
|
283
|
+
}
|
|
284
|
+
/**
|
|
285
|
+
* Get the currently checked-out git branch name for a directory.
|
|
286
|
+
* Returns null if the directory is not a git repository, git is unavailable,
|
|
287
|
+
* or HEAD is detached (detached HEAD is unhelpful for project matching).
|
|
288
|
+
*/
|
|
289
|
+
export async function detectGitBranch(workspaceRoot) {
|
|
290
|
+
try {
|
|
291
|
+
const { execFile } = await import('child_process');
|
|
292
|
+
const { promisify } = await import('util');
|
|
293
|
+
const execFileAsync = promisify(execFile);
|
|
294
|
+
const { stdout } = await execFileAsync('git', ['-C', workspaceRoot, 'rev-parse', '--abbrev-ref', 'HEAD'], { timeout: 5000, windowsHide: true, encoding: 'utf8' });
|
|
295
|
+
const branch = stdout.trim();
|
|
296
|
+
// 'HEAD' means detached HEAD — not useful for project matching
|
|
297
|
+
return branch && branch !== 'HEAD' ? branch : null;
|
|
298
|
+
}
|
|
299
|
+
catch {
|
|
300
|
+
return null;
|
|
301
|
+
}
|
|
302
|
+
}
|
|
303
|
+
/**
|
|
304
|
+
* Scan a root directory for ALL D365FO projects (.rnrproj files).
|
|
305
|
+
* Used when D365FO_SOLUTIONS_PATH is configured — lists every project available
|
|
306
|
+
* so the user can pick the active one via get_workspace_info(projectPath).
|
|
307
|
+
*/
|
|
308
|
+
export async function scanAllD365Projects(rootPath) {
|
|
309
|
+
try {
|
|
310
|
+
const projectFiles = await findProjectFiles(rootPath, 6);
|
|
311
|
+
const results = [];
|
|
312
|
+
for (const pf of projectFiles) {
|
|
313
|
+
const modelName = await extractModelNameFromProject(pf);
|
|
314
|
+
if (modelName) {
|
|
315
|
+
results.push({
|
|
316
|
+
projectPath: pf,
|
|
317
|
+
modelName,
|
|
318
|
+
solutionPath: path.dirname(path.dirname(pf)),
|
|
319
|
+
});
|
|
320
|
+
}
|
|
321
|
+
}
|
|
322
|
+
return results;
|
|
323
|
+
}
|
|
324
|
+
catch {
|
|
325
|
+
return [];
|
|
326
|
+
}
|
|
327
|
+
}
|
|
328
|
+
//# sourceMappingURL=workspaceDetector.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workspaceDetector.js","sourceRoot":"","sources":["../../src/utils/workspaceDetector.ts"],"names":[],"mappings":"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"}
|