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":"generateD365Xml.js","sourceRoot":"","sources":["../../src/tools/generateD365Xml.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Find Method generator — `generate_object(mode="find-methods")`.
|
|
3
|
+
*
|
|
4
|
+
* Ports TRUDUtils "Create Find Method": generates the standard static
|
|
5
|
+
* find()/findRecId()/exists() methods for a table, keyed on the table's primary
|
|
6
|
+
* (unique) index. The method bodies follow Microsoft's shipped convention
|
|
7
|
+
* (selectForUpdate guard, firstonly, key null-guard) so the output compiles and
|
|
8
|
+
* matches BP expectations without manual rewriting.
|
|
9
|
+
*
|
|
10
|
+
* Data source priority mirrors tableInfo: C# bridge (authoritative — gives index
|
|
11
|
+
* + EDT info) → explicit keyFields arg (DB-only environments, where index data
|
|
12
|
+
* is not in the symbol index). Without either, findRecId()/exists-by-RecId are
|
|
13
|
+
* still emitted (RecId always exists) and a note explains how to get key-based
|
|
14
|
+
* finds.
|
|
15
|
+
*
|
|
16
|
+
* Output is text X++; the caller inserts it with d365fo_file(action="modify",
|
|
17
|
+
* add-method) — these methods live on an EXISTING table, so no prefix applies.
|
|
18
|
+
*/
|
|
19
|
+
import type { CallToolRequest } from '@modelcontextprotocol/sdk/types.js';
|
|
20
|
+
import type { XppServerContext } from '../types/context.js';
|
|
21
|
+
/** Minimal table shape the generator needs — decoupled from the bridge type. */
|
|
22
|
+
export interface FindMethodTableShape {
|
|
23
|
+
name: string;
|
|
24
|
+
/** Primary index name, when known (bridge.primaryIndex). */
|
|
25
|
+
primaryIndex?: string;
|
|
26
|
+
fields: Array<{
|
|
27
|
+
name: string;
|
|
28
|
+
extendedDataType?: string;
|
|
29
|
+
fieldType?: string;
|
|
30
|
+
}>;
|
|
31
|
+
indexes: Array<{
|
|
32
|
+
name: string;
|
|
33
|
+
allowDuplicates: boolean;
|
|
34
|
+
fields: string[];
|
|
35
|
+
}>;
|
|
36
|
+
}
|
|
37
|
+
export interface FindMethodKeyField {
|
|
38
|
+
/** Field name as declared on the table. */
|
|
39
|
+
field: string;
|
|
40
|
+
/** X++ parameter type — the field's EDT, else its base field type, else a safe default. */
|
|
41
|
+
type: string;
|
|
42
|
+
}
|
|
43
|
+
/** lower-camelCase buffer variable name for a table, e.g. CustTable → custTable. */
|
|
44
|
+
export declare function bufferName(table: string): string;
|
|
45
|
+
/**
|
|
46
|
+
* Resolve the key fields find()/exists() should select on. Preference:
|
|
47
|
+
* 1. explicit override
|
|
48
|
+
* 2. the declared primary index
|
|
49
|
+
* 3. the first unique (allowDuplicates=false) index
|
|
50
|
+
* Returns [] when no unique key can be determined.
|
|
51
|
+
*/
|
|
52
|
+
export declare function resolveKeyFields(table: FindMethodTableShape, override?: string[]): FindMethodKeyField[];
|
|
53
|
+
/**
|
|
54
|
+
* Render find()/findRecId()/exists() for a table. Pure — unit-testable without
|
|
55
|
+
* a bridge. When `keys` is empty, key-based find()/exists() are skipped and only
|
|
56
|
+
* findRecId() (always valid via the system RecId field) is produced.
|
|
57
|
+
*/
|
|
58
|
+
export declare function buildFindMethods(table: FindMethodTableShape, keys: FindMethodKeyField[], opts?: {
|
|
59
|
+
includeExists?: boolean;
|
|
60
|
+
includeFindRecId?: boolean;
|
|
61
|
+
}): string;
|
|
62
|
+
export declare function generateFindMethodsTool(request: CallToolRequest, context: XppServerContext): Promise<{
|
|
63
|
+
content: {
|
|
64
|
+
type: 'text';
|
|
65
|
+
text: string;
|
|
66
|
+
}[];
|
|
67
|
+
isError?: boolean | undefined;
|
|
68
|
+
}>;
|
|
69
|
+
//# sourceMappingURL=generateFindMethods.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generateFindMethods.d.ts","sourceRoot":"","sources":["../../src/tools/generateFindMethods.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAE1E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAgB5D,gFAAgF;AAChF,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,4DAA4D;IAC5D,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC/E,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,eAAe,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAC;CAC9E;AAED,MAAM,WAAW,kBAAkB;IACjC,2CAA2C;IAC3C,KAAK,EAAE,MAAM,CAAC;IACd,2FAA2F;IAC3F,IAAI,EAAE,MAAM,CAAC;CACd;AAED,oFAAoF;AACpF,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEhD;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,oBAAoB,EAC3B,QAAQ,CAAC,EAAE,MAAM,EAAE,GAClB,kBAAkB,EAAE,CAkBtB;AAOD;;;;GAIG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,oBAAoB,EAC3B,IAAI,EAAE,kBAAkB,EAAE,EAC1B,IAAI,GAAE;IAAE,aAAa,CAAC,EAAE,OAAO,CAAC;IAAC,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAAO,GACjE,MAAM,CAmER;AAMD,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,eAAe,EACxB,OAAO,EAAE,gBAAgB;;cALE,MAAM;;;;GAmGlC"}
|
|
@@ -0,0 +1,207 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Find Method generator — `generate_object(mode="find-methods")`.
|
|
3
|
+
*
|
|
4
|
+
* Ports TRUDUtils "Create Find Method": generates the standard static
|
|
5
|
+
* find()/findRecId()/exists() methods for a table, keyed on the table's primary
|
|
6
|
+
* (unique) index. The method bodies follow Microsoft's shipped convention
|
|
7
|
+
* (selectForUpdate guard, firstonly, key null-guard) so the output compiles and
|
|
8
|
+
* matches BP expectations without manual rewriting.
|
|
9
|
+
*
|
|
10
|
+
* Data source priority mirrors tableInfo: C# bridge (authoritative — gives index
|
|
11
|
+
* + EDT info) → explicit keyFields arg (DB-only environments, where index data
|
|
12
|
+
* is not in the symbol index). Without either, findRecId()/exists-by-RecId are
|
|
13
|
+
* still emitted (RecId always exists) and a note explains how to get key-based
|
|
14
|
+
* finds.
|
|
15
|
+
*
|
|
16
|
+
* Output is text X++; the caller inserts it with d365fo_file(action="modify",
|
|
17
|
+
* add-method) — these methods live on an EXISTING table, so no prefix applies.
|
|
18
|
+
*/
|
|
19
|
+
import { z } from 'zod';
|
|
20
|
+
import { lookupSymbolNocase } from '../utils/symbolLookup.js';
|
|
21
|
+
const FindMethodsArgsSchema = z.object({
|
|
22
|
+
name: z.string().describe('Table name to generate find methods for (e.g. "CustTable").'),
|
|
23
|
+
keyFields: z
|
|
24
|
+
.array(z.string())
|
|
25
|
+
.optional()
|
|
26
|
+
.describe('Explicit key field names for find()/exists(), in order. Overrides index detection. ' +
|
|
27
|
+
'Use this when the bridge is unavailable (the symbol index does not carry index metadata).'),
|
|
28
|
+
includeExists: z.boolean().optional().default(true).describe('Emit exists() (default true).'),
|
|
29
|
+
includeFindRecId: z.boolean().optional().default(true).describe('Emit findRecId() (default true).'),
|
|
30
|
+
});
|
|
31
|
+
/** lower-camelCase buffer variable name for a table, e.g. CustTable → custTable. */
|
|
32
|
+
export function bufferName(table) {
|
|
33
|
+
return table.length > 0 ? table[0].toLowerCase() + table.slice(1) : table;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Resolve the key fields find()/exists() should select on. Preference:
|
|
37
|
+
* 1. explicit override
|
|
38
|
+
* 2. the declared primary index
|
|
39
|
+
* 3. the first unique (allowDuplicates=false) index
|
|
40
|
+
* Returns [] when no unique key can be determined.
|
|
41
|
+
*/
|
|
42
|
+
export function resolveKeyFields(table, override) {
|
|
43
|
+
const typeOf = (fieldName) => {
|
|
44
|
+
const f = table.fields.find((x) => x.name.toLowerCase() === fieldName.toLowerCase());
|
|
45
|
+
return f?.extendedDataType || f?.fieldType || 'str';
|
|
46
|
+
};
|
|
47
|
+
const toKeys = (names) => names.map((n) => ({ field: n, type: typeOf(n) }));
|
|
48
|
+
if (override && override.length > 0)
|
|
49
|
+
return toKeys(override);
|
|
50
|
+
if (table.primaryIndex) {
|
|
51
|
+
const pk = table.indexes.find((i) => i.name.toLowerCase() === table.primaryIndex.toLowerCase());
|
|
52
|
+
if (pk && pk.fields.length > 0)
|
|
53
|
+
return toKeys(pk.fields);
|
|
54
|
+
}
|
|
55
|
+
const unique = table.indexes.find((i) => !i.allowDuplicates && i.fields.length > 0);
|
|
56
|
+
if (unique)
|
|
57
|
+
return toKeys(unique.fields);
|
|
58
|
+
return [];
|
|
59
|
+
}
|
|
60
|
+
/** camelCase parameter name for a key field, e.g. AccountNum → _accountNum. */
|
|
61
|
+
function paramName(field) {
|
|
62
|
+
return '_' + field[0].toLowerCase() + field.slice(1);
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Render find()/findRecId()/exists() for a table. Pure — unit-testable without
|
|
66
|
+
* a bridge. When `keys` is empty, key-based find()/exists() are skipped and only
|
|
67
|
+
* findRecId() (always valid via the system RecId field) is produced.
|
|
68
|
+
*/
|
|
69
|
+
export function buildFindMethods(table, keys, opts = {}) {
|
|
70
|
+
const { includeExists = true, includeFindRecId = true } = opts;
|
|
71
|
+
const buf = bufferName(table.name);
|
|
72
|
+
const blocks = [];
|
|
73
|
+
if (keys.length > 0) {
|
|
74
|
+
const params = keys.map((k) => `${k.type} ${paramName(k.field)}`).join(', ');
|
|
75
|
+
const guard = keys.map((k) => paramName(k.field)).join(' && ');
|
|
76
|
+
const whereClause = keys
|
|
77
|
+
.map((k, i) => `${i === 0 ? '' : '\n && '}${buf}.${k.field} == ${paramName(k.field)}`)
|
|
78
|
+
.join('');
|
|
79
|
+
blocks.push(`/// <summary>\n` +
|
|
80
|
+
`/// Finds the <c>${table.name}</c> record matching the supplied key.\n` +
|
|
81
|
+
`/// </summary>\n` +
|
|
82
|
+
`public static ${table.name} find(${params}, boolean _forUpdate = false)\n` +
|
|
83
|
+
`{\n` +
|
|
84
|
+
` ${table.name} ${buf};\n\n` +
|
|
85
|
+
` if (${guard})\n` +
|
|
86
|
+
` {\n` +
|
|
87
|
+
` ${buf}.selectForUpdate(_forUpdate);\n\n` +
|
|
88
|
+
` select firstonly ${buf}\n` +
|
|
89
|
+
` where ${whereClause};\n` +
|
|
90
|
+
` }\n\n` +
|
|
91
|
+
` return ${buf};\n` +
|
|
92
|
+
`}`);
|
|
93
|
+
if (includeExists) {
|
|
94
|
+
const existsWhere = keys
|
|
95
|
+
.map((k, i) => `${i === 0 ? '' : '\n && '}${buf}.${k.field} == ${paramName(k.field)}`)
|
|
96
|
+
.join('');
|
|
97
|
+
blocks.push(`/// <summary>\n` +
|
|
98
|
+
`/// Determines whether a <c>${table.name}</c> record exists for the supplied key.\n` +
|
|
99
|
+
`/// </summary>\n` +
|
|
100
|
+
`public static boolean exists(${params})\n` +
|
|
101
|
+
`{\n` +
|
|
102
|
+
` return ${guard}\n` +
|
|
103
|
+
` && (select firstonly RecId from ${buf}\n` +
|
|
104
|
+
` where ${existsWhere}).RecId != 0;\n` +
|
|
105
|
+
`}`);
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
if (includeFindRecId) {
|
|
109
|
+
blocks.push(`/// <summary>\n` +
|
|
110
|
+
`/// Finds the <c>${table.name}</c> record with the supplied <c>RecId</c>.\n` +
|
|
111
|
+
`/// </summary>\n` +
|
|
112
|
+
`public static ${table.name} findRecId(RefRecId _recId, boolean _forUpdate = false)\n` +
|
|
113
|
+
`{\n` +
|
|
114
|
+
` ${table.name} ${buf};\n\n` +
|
|
115
|
+
` if (_recId)\n` +
|
|
116
|
+
` {\n` +
|
|
117
|
+
` ${buf}.selectForUpdate(_forUpdate);\n\n` +
|
|
118
|
+
` select firstonly ${buf}\n` +
|
|
119
|
+
` where ${buf}.RecId == _recId;\n` +
|
|
120
|
+
` }\n\n` +
|
|
121
|
+
` return ${buf};\n` +
|
|
122
|
+
`}`);
|
|
123
|
+
}
|
|
124
|
+
return blocks.join('\n\n');
|
|
125
|
+
}
|
|
126
|
+
function text(s, isError = false) {
|
|
127
|
+
return { content: [{ type: 'text', text: s }], ...(isError ? { isError: true } : {}) };
|
|
128
|
+
}
|
|
129
|
+
export async function generateFindMethodsTool(request, context) {
|
|
130
|
+
let args;
|
|
131
|
+
try {
|
|
132
|
+
args = FindMethodsArgsSchema.parse(request.params.arguments);
|
|
133
|
+
}
|
|
134
|
+
catch (e) {
|
|
135
|
+
return text(`❌ Invalid arguments: ${e instanceof Error ? e.message : String(e)}`, true);
|
|
136
|
+
}
|
|
137
|
+
const { name, keyFields, includeExists, includeFindRecId } = args;
|
|
138
|
+
// 1. Bridge — authoritative; carries index + EDT info the symbol index lacks.
|
|
139
|
+
let table;
|
|
140
|
+
const bridge = context.bridge;
|
|
141
|
+
if (bridge?.isReady && bridge.metadataAvailable) {
|
|
142
|
+
try {
|
|
143
|
+
const t = await bridge.readTable(name);
|
|
144
|
+
if (t) {
|
|
145
|
+
table = {
|
|
146
|
+
name: t.name,
|
|
147
|
+
primaryIndex: t.primaryIndex,
|
|
148
|
+
fields: t.fields.map((f) => ({
|
|
149
|
+
name: f.name,
|
|
150
|
+
extendedDataType: f.extendedDataType,
|
|
151
|
+
fieldType: f.fieldType,
|
|
152
|
+
})),
|
|
153
|
+
indexes: t.indexes.map((i) => ({
|
|
154
|
+
name: i.name,
|
|
155
|
+
allowDuplicates: i.allowDuplicates,
|
|
156
|
+
fields: i.fields,
|
|
157
|
+
})),
|
|
158
|
+
};
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
catch {
|
|
162
|
+
/* fall through to DB-backed shape */
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
// 2. DB fallback — fields only (no index metadata). Key-based finds then
|
|
166
|
+
// require an explicit keyFields arg.
|
|
167
|
+
if (!table) {
|
|
168
|
+
try {
|
|
169
|
+
const db = context.symbolIndex.getReadDb();
|
|
170
|
+
// Canonicalize first — `parent_name = ? COLLATE NOCASE` cannot use
|
|
171
|
+
// idx_parent_type_name and scans all 360k field rows (180 s cold).
|
|
172
|
+
const canonical = lookupSymbolNocase(db, name)?.name ?? name;
|
|
173
|
+
const rows = db
|
|
174
|
+
.prepare(`SELECT name, signature FROM symbols WHERE type = 'field' AND parent_name = ? ORDER BY name`)
|
|
175
|
+
.all(canonical);
|
|
176
|
+
if (rows.length === 0) {
|
|
177
|
+
return text(`❌ Table "${name}" not found via bridge or symbol index.\n\n` +
|
|
178
|
+
`If it was just created, call update_symbol_index first, then retry.`, true);
|
|
179
|
+
}
|
|
180
|
+
table = {
|
|
181
|
+
name,
|
|
182
|
+
fields: rows.map((r) => ({ name: r.name, fieldType: r.signature ?? undefined })),
|
|
183
|
+
indexes: [],
|
|
184
|
+
};
|
|
185
|
+
}
|
|
186
|
+
catch {
|
|
187
|
+
return text(`❌ Could not read table "${name}" (no bridge and symbol index unavailable).`, true);
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
const keys = resolveKeyFields(table, keyFields);
|
|
191
|
+
const noKeyNote = keys.length === 0
|
|
192
|
+
? `\n\n> ⚠️ No unique key could be determined for **${name}** ` +
|
|
193
|
+
`${table.indexes.length === 0 ? '(index metadata unavailable — running without the C# bridge)' : '(no unique index found)'}. ` +
|
|
194
|
+
`Only \`findRecId()\` was generated. Pass \`keyFields: ["Field1", ...]\` to also generate key-based \`find()\`/\`exists()\`.`
|
|
195
|
+
: '';
|
|
196
|
+
if (keys.length === 0 && !includeFindRecId) {
|
|
197
|
+
return text(`❌ Nothing to generate for "${name}": no key fields resolved and includeFindRecId=false.` +
|
|
198
|
+
`\n\nPass keyFields explicitly, or enable findRecId.`, true);
|
|
199
|
+
}
|
|
200
|
+
const code = buildFindMethods(table, keys, { includeExists, includeFindRecId });
|
|
201
|
+
const keySummary = keys.length > 0 ? `Keyed on: ${keys.map((k) => k.field).join(', ')}` : 'RecId only';
|
|
202
|
+
return text(`✅ Find methods for **${name}** (${keySummary})\n\n` +
|
|
203
|
+
`Insert each method with \`d365fo_file(action="modify", objectType="table", objectName="${name}", ...)\` ` +
|
|
204
|
+
`add-method, or add to the table's class declaration.${noKeyNote}\n\n` +
|
|
205
|
+
`\`\`\`xpp\n${code}\n\`\`\``);
|
|
206
|
+
}
|
|
207
|
+
//# sourceMappingURL=generateFindMethods.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generateFindMethods.js","sourceRoot":"","sources":["../../src/tools/generateFindMethods.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* generateMetadata.ts
|
|
3
|
+
*
|
|
4
|
+
* Regenerates D365FO runtime metadata manifests (.md files) from XML source
|
|
5
|
+
* after an xppc compile, without requiring a full VS build.
|
|
6
|
+
*
|
|
7
|
+
* xppc.exe compiles X++ source into .netmodule files but does NOT update the
|
|
8
|
+
* binary .md manifests that the AOS uses to resolve class names at runtime.
|
|
9
|
+
* VS BuildTask does this as a post-compile step using the MetadataProviderFactory
|
|
10
|
+
* + RuntimeMetadataWriter APIs from Microsoft.Dynamics.AX.Metadata.Storage.dll.
|
|
11
|
+
*
|
|
12
|
+
* This module replicates that step by:
|
|
13
|
+
* 1. Compiling a small .NET Framework 4.x helper (GenerateMetadata.exe) on
|
|
14
|
+
* first use, referencing the DLLs from the D365FO framework directory.
|
|
15
|
+
* 2. Running the compiled helper after each successful xppc build.
|
|
16
|
+
*
|
|
17
|
+
* The helper exe is cached in the framework `bin` directory (so .NET resolves
|
|
18
|
+
* the referenced Dynamics DLLs via the application base) under a name that
|
|
19
|
+
* embeds a short hash of its C# source. It therefore survives MCP server
|
|
20
|
+
* restarts and is recompiled automatically both when D365FO is upgraded (new
|
|
21
|
+
* framework directory) and when the helper source below changes (new hash).
|
|
22
|
+
*/
|
|
23
|
+
export interface GenerateMetadataResult {
|
|
24
|
+
skipped: boolean;
|
|
25
|
+
success: boolean;
|
|
26
|
+
message: string;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Regenerate the .md runtime metadata manifests for `modelName` from its XML
|
|
30
|
+
* source. Called after a successful xppc build.
|
|
31
|
+
*
|
|
32
|
+
* @param microsoftPackagesPath Framework directory (FrameworkDirectory / PackagesLocalDirectory for CHE)
|
|
33
|
+
* @param customPackagesPath Model store root — the directory that contains the model folder
|
|
34
|
+
* @param modelName Model to regenerate manifests for
|
|
35
|
+
*/
|
|
36
|
+
export declare function generateRuntimeMetadata(microsoftPackagesPath: string, customPackagesPath: string, modelName: string): Promise<GenerateMetadataResult>;
|
|
37
|
+
//# sourceMappingURL=generateMetadata.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generateMetadata.d.ts","sourceRoot":"","sources":["../../src/tools/generateMetadata.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AA6IH,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;GAOG;AACH,wBAAsB,uBAAuB,CAC3C,qBAAqB,EAAE,MAAM,EAC7B,kBAAkB,EAAE,MAAM,EAC1B,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,sBAAsB,CAAC,CAsEjC"}
|
|
@@ -0,0 +1,213 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* generateMetadata.ts
|
|
3
|
+
*
|
|
4
|
+
* Regenerates D365FO runtime metadata manifests (.md files) from XML source
|
|
5
|
+
* after an xppc compile, without requiring a full VS build.
|
|
6
|
+
*
|
|
7
|
+
* xppc.exe compiles X++ source into .netmodule files but does NOT update the
|
|
8
|
+
* binary .md manifests that the AOS uses to resolve class names at runtime.
|
|
9
|
+
* VS BuildTask does this as a post-compile step using the MetadataProviderFactory
|
|
10
|
+
* + RuntimeMetadataWriter APIs from Microsoft.Dynamics.AX.Metadata.Storage.dll.
|
|
11
|
+
*
|
|
12
|
+
* This module replicates that step by:
|
|
13
|
+
* 1. Compiling a small .NET Framework 4.x helper (GenerateMetadata.exe) on
|
|
14
|
+
* first use, referencing the DLLs from the D365FO framework directory.
|
|
15
|
+
* 2. Running the compiled helper after each successful xppc build.
|
|
16
|
+
*
|
|
17
|
+
* The helper exe is cached in the framework `bin` directory (so .NET resolves
|
|
18
|
+
* the referenced Dynamics DLLs via the application base) under a name that
|
|
19
|
+
* embeds a short hash of its C# source. It therefore survives MCP server
|
|
20
|
+
* restarts and is recompiled automatically both when D365FO is upgraded (new
|
|
21
|
+
* framework directory) and when the helper source below changes (new hash).
|
|
22
|
+
*/
|
|
23
|
+
import { execFile } from 'child_process';
|
|
24
|
+
import util from 'util';
|
|
25
|
+
import path from 'path';
|
|
26
|
+
import crypto from 'crypto';
|
|
27
|
+
import { access, writeFile, unlink, cp } from 'fs/promises';
|
|
28
|
+
const execFileAsync = util.promisify(execFile);
|
|
29
|
+
// C# source for the helper — compiled on first use
|
|
30
|
+
const CS_SOURCE = `
|
|
31
|
+
using System;
|
|
32
|
+
using System.IO;
|
|
33
|
+
using Microsoft.Dynamics.AX.Metadata.Storage;
|
|
34
|
+
using Microsoft.Dynamics.AX.Metadata.Storage.Runtime;
|
|
35
|
+
|
|
36
|
+
class GenerateMetadata
|
|
37
|
+
{
|
|
38
|
+
static int Main(string[] args)
|
|
39
|
+
{
|
|
40
|
+
if (args.Length < 3)
|
|
41
|
+
{
|
|
42
|
+
Console.Error.WriteLine("Usage: GenerateMetadata.exe <metadataDir> <modelName> <outputDir>");
|
|
43
|
+
return 1;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
string metadataDir = args[0];
|
|
47
|
+
string modelName = args[1];
|
|
48
|
+
string outputDir = args[2];
|
|
49
|
+
|
|
50
|
+
try
|
|
51
|
+
{
|
|
52
|
+
var factory = new MetadataProviderFactory();
|
|
53
|
+
var provider = factory.CreateDiskProvider(metadataDir);
|
|
54
|
+
var version = new Version(1, 0, 0, 0);
|
|
55
|
+
RuntimeMetadataWriter.WriteAll(provider, modelName, outputDir, version, false, null);
|
|
56
|
+
Console.WriteLine("OK: runtime metadata written for " + modelName);
|
|
57
|
+
return 0;
|
|
58
|
+
}
|
|
59
|
+
catch (Exception ex)
|
|
60
|
+
{
|
|
61
|
+
Console.Error.WriteLine("GenerateMetadata error: " + ex.Message);
|
|
62
|
+
for (var inner = ex.InnerException; inner != null; inner = inner.InnerException)
|
|
63
|
+
Console.Error.WriteLine(" -> " + inner.Message);
|
|
64
|
+
return 1;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
`.trim();
|
|
69
|
+
// Short hash of the helper source. Embedded in the cached exe name so that any
|
|
70
|
+
// edit to CS_SOURCE produces a new file name and the stale exe is never reused
|
|
71
|
+
// (editing the C# without this would silently keep running the old binary).
|
|
72
|
+
const HELPER_VERSION = crypto.createHash('sha256').update(CS_SOURCE).digest('hex').slice(0, 8);
|
|
73
|
+
// csc.exe locations (.NET Framework 4.x, built into Windows)
|
|
74
|
+
const CSC_CANDIDATES = [
|
|
75
|
+
'C:\\Windows\\Microsoft.NET\\Framework64\\v4.0.30319\\csc.exe',
|
|
76
|
+
'C:\\Windows\\Microsoft.NET\\Framework\\v4.0.30319\\csc.exe',
|
|
77
|
+
];
|
|
78
|
+
async function findCscExe() {
|
|
79
|
+
for (const c of CSC_CANDIDATES) {
|
|
80
|
+
try {
|
|
81
|
+
await access(c);
|
|
82
|
+
return c;
|
|
83
|
+
}
|
|
84
|
+
catch { /* next */ }
|
|
85
|
+
}
|
|
86
|
+
return null;
|
|
87
|
+
}
|
|
88
|
+
// Compile helper (once per framework version)
|
|
89
|
+
function exeCachePath(frameworkBinDir) {
|
|
90
|
+
// Place the exe in the framework bin directory itself so .NET finds the
|
|
91
|
+
// referenced Dynamics DLLs via the application base directory at runtime.
|
|
92
|
+
// The source-hash suffix forces a rebuild whenever CS_SOURCE changes.
|
|
93
|
+
return path.join(frameworkBinDir, `D365McpGenerateMetadata.${HELPER_VERSION}.exe`);
|
|
94
|
+
}
|
|
95
|
+
async function compileHelper(cscExe, frameworkBinDir, exePath) {
|
|
96
|
+
const csFile = exePath.replace(/\.exe$/, '.cs');
|
|
97
|
+
await writeFile(csFile, CS_SOURCE, 'utf-8');
|
|
98
|
+
const refs = [
|
|
99
|
+
'Microsoft.Dynamics.AX.Metadata.Core.dll',
|
|
100
|
+
'Microsoft.Dynamics.AX.Metadata.dll',
|
|
101
|
+
'Microsoft.Dynamics.AX.Metadata.Storage.dll',
|
|
102
|
+
].map(dll => `/reference:${path.join(frameworkBinDir, dll)}`);
|
|
103
|
+
try {
|
|
104
|
+
await execFileAsync(cscExe, [
|
|
105
|
+
'/nologo',
|
|
106
|
+
`/out:${exePath}`,
|
|
107
|
+
'/target:exe',
|
|
108
|
+
'/platform:x64',
|
|
109
|
+
...refs,
|
|
110
|
+
csFile,
|
|
111
|
+
], { timeout: 30_000 });
|
|
112
|
+
}
|
|
113
|
+
finally {
|
|
114
|
+
await unlink(csFile).catch(() => { });
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
// Compiler-metadata sync: xppc writes compiled X++ compiler metadata (XppMetadata tree) to the
|
|
118
|
+
// -compilermetadata root, which can differ from the -metadata source root in an MCP-only build.
|
|
119
|
+
// RuntimeMetadataWriter needs both source and compiler metadata under one root, so we overlay the
|
|
120
|
+
// freshly written XppMetadata onto the source root before generating runtime manifests. Overlay
|
|
121
|
+
// (not mirror) is safe — orphan compiler metadata with no matching source is harmless since the
|
|
122
|
+
// provider enumerates classes from the source XML.
|
|
123
|
+
async function syncCompilerMetadata(compilerMetadataRoot, metadataRoot, modelName) {
|
|
124
|
+
const src = path.join(compilerMetadataRoot, modelName, 'XppMetadata');
|
|
125
|
+
const dest = path.join(metadataRoot, modelName, 'XppMetadata');
|
|
126
|
+
// Same root (e.g. CHE where -metadata == -compilermetadata) — nothing to do.
|
|
127
|
+
if (path.resolve(src).toLowerCase() === path.resolve(dest).toLowerCase()) {
|
|
128
|
+
return 'compiler metadata already co-located with source';
|
|
129
|
+
}
|
|
130
|
+
try {
|
|
131
|
+
await access(src);
|
|
132
|
+
}
|
|
133
|
+
catch {
|
|
134
|
+
return `no compiler metadata to sync (not found at ${src})`;
|
|
135
|
+
}
|
|
136
|
+
await cp(src, dest, { recursive: true, force: true });
|
|
137
|
+
return `compiler metadata synced from ${src}`;
|
|
138
|
+
}
|
|
139
|
+
/**
|
|
140
|
+
* Regenerate the .md runtime metadata manifests for `modelName` from its XML
|
|
141
|
+
* source. Called after a successful xppc build.
|
|
142
|
+
*
|
|
143
|
+
* @param microsoftPackagesPath Framework directory (FrameworkDirectory / PackagesLocalDirectory for CHE)
|
|
144
|
+
* @param customPackagesPath Model store root — the directory that contains the model folder
|
|
145
|
+
* @param modelName Model to regenerate manifests for
|
|
146
|
+
*/
|
|
147
|
+
export async function generateRuntimeMetadata(microsoftPackagesPath, customPackagesPath, modelName) {
|
|
148
|
+
const frameworkBinDir = path.join(microsoftPackagesPath, 'bin');
|
|
149
|
+
const outputDir = path.join(customPackagesPath, modelName, 'bin');
|
|
150
|
+
// Verify at least one of the required DLLs exists before attempting anything
|
|
151
|
+
const storageDll = path.join(frameworkBinDir, 'Microsoft.Dynamics.AX.Metadata.Storage.dll');
|
|
152
|
+
try {
|
|
153
|
+
await access(storageDll);
|
|
154
|
+
}
|
|
155
|
+
catch {
|
|
156
|
+
return {
|
|
157
|
+
skipped: true,
|
|
158
|
+
success: false,
|
|
159
|
+
message: `Skipped metadata regeneration — Microsoft.Dynamics.AX.Metadata.Storage.dll not found at ${frameworkBinDir}`,
|
|
160
|
+
};
|
|
161
|
+
}
|
|
162
|
+
const cscExe = await findCscExe();
|
|
163
|
+
if (!cscExe) {
|
|
164
|
+
return {
|
|
165
|
+
skipped: true,
|
|
166
|
+
success: false,
|
|
167
|
+
message: 'Skipped metadata regeneration — csc.exe not found (expected at C:\\Windows\\Microsoft.NET\\Framework64\\v4.0.30319\\csc.exe)',
|
|
168
|
+
};
|
|
169
|
+
}
|
|
170
|
+
const exePath = exeCachePath(frameworkBinDir);
|
|
171
|
+
// Compile helper if not yet cached for this framework version
|
|
172
|
+
try {
|
|
173
|
+
await access(exePath);
|
|
174
|
+
}
|
|
175
|
+
catch {
|
|
176
|
+
try {
|
|
177
|
+
await compileHelper(cscExe, frameworkBinDir, exePath);
|
|
178
|
+
}
|
|
179
|
+
catch (compileErr) {
|
|
180
|
+
return {
|
|
181
|
+
skipped: false,
|
|
182
|
+
success: false,
|
|
183
|
+
message: `Failed to compile GenerateMetadata helper: ${compileErr.message}`,
|
|
184
|
+
};
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
// Co-locate the freshly compiled compiler metadata with the source before the
|
|
188
|
+
// runtime writer reads it (see syncCompilerMetadata for why this is required
|
|
189
|
+
// for newly added classes in an MCP-only build).
|
|
190
|
+
let syncMessage;
|
|
191
|
+
try {
|
|
192
|
+
syncMessage = await syncCompilerMetadata(microsoftPackagesPath, customPackagesPath, modelName);
|
|
193
|
+
}
|
|
194
|
+
catch (syncErr) {
|
|
195
|
+
return {
|
|
196
|
+
skipped: false,
|
|
197
|
+
success: false,
|
|
198
|
+
message: `Failed to sync compiler metadata: ${syncErr.message}`,
|
|
199
|
+
};
|
|
200
|
+
}
|
|
201
|
+
// Run the helper
|
|
202
|
+
try {
|
|
203
|
+
const { stdout, stderr } = await execFileAsync(exePath, [customPackagesPath, modelName, outputDir], { timeout: 60_000 });
|
|
204
|
+
const output = [stdout, stderr].filter(Boolean).join('\n').trim();
|
|
205
|
+
const message = [syncMessage, output].filter(Boolean).join(' | ') || 'Runtime metadata regenerated';
|
|
206
|
+
return { skipped: false, success: true, message };
|
|
207
|
+
}
|
|
208
|
+
catch (runErr) {
|
|
209
|
+
const output = [runErr.stdout, runErr.stderr, runErr.message].filter(Boolean).join('\n');
|
|
210
|
+
return { skipped: false, success: false, message: `GenerateMetadata.exe failed: ${output}` };
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
//# sourceMappingURL=generateMetadata.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generateMetadata.js","sourceRoot":"","sources":["../../src/tools/generateMetadata.ts"],"names":[],"mappings":"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"}
|