@ffschrattenecker/tm1-mcp-server 6.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/CHANGELOG.md +1211 -0
- package/LICENSE +21 -0
- package/NOTICE +34 -0
- package/README.md +276 -0
- package/dist/config.d.ts +35 -0
- package/dist/config.js +238 -0
- package/dist/http-transport.d.ts +8 -0
- package/dist/http-transport.js +132 -0
- package/dist/index.d.ts +18 -0
- package/dist/index.js +164 -0
- package/dist/lib/callgraph/callGraph.d.ts +124 -0
- package/dist/lib/callgraph/callGraph.js +334 -0
- package/dist/lib/callgraph/choreGraph.d.ts +23 -0
- package/dist/lib/callgraph/choreGraph.js +102 -0
- package/dist/lib/callgraph/dataFlow.d.ts +74 -0
- package/dist/lib/callgraph/dataFlow.js +271 -0
- package/dist/lib/callgraph/datasourceMembership.d.ts +31 -0
- package/dist/lib/callgraph/datasourceMembership.js +142 -0
- package/dist/lib/callgraph/lintTypes.d.ts +28 -0
- package/dist/lib/callgraph/lintTypes.js +2 -0
- package/dist/lib/callgraph/mdxMembers.d.ts +29 -0
- package/dist/lib/callgraph/mdxMembers.js +97 -0
- package/dist/lib/callgraph/referenceIndex.d.ts +179 -0
- package/dist/lib/callgraph/referenceIndex.js +584 -0
- package/dist/lib/callgraph/rulesLinter.d.ts +55 -0
- package/dist/lib/callgraph/rulesLinter.js +776 -0
- package/dist/lib/callgraph/rulesParser.d.ts +26 -0
- package/dist/lib/callgraph/rulesParser.js +71 -0
- package/dist/lib/callgraph/subsetUsage.d.ts +16 -0
- package/dist/lib/callgraph/subsetUsage.js +134 -0
- package/dist/lib/callgraph/tiParser.d.ts +21 -0
- package/dist/lib/callgraph/tiParser.js +672 -0
- package/dist/lib/callgraph/tiSignatures.d.ts +32 -0
- package/dist/lib/callgraph/tiSignatures.js +6185 -0
- package/dist/lib/callgraph/tm1-adapter.d.ts +32 -0
- package/dist/lib/callgraph/tm1-adapter.js +159 -0
- package/dist/lib/callgraph/types.d.ts +53 -0
- package/dist/lib/callgraph/types.js +2 -0
- package/dist/lib/callgraph/variableEnv.d.ts +86 -0
- package/dist/lib/callgraph/variableEnv.js +214 -0
- package/dist/lib/cell-address.d.ts +12 -0
- package/dist/lib/cell-address.js +71 -0
- package/dist/lib/complexity/antipatterns.d.ts +22 -0
- package/dist/lib/complexity/antipatterns.js +302 -0
- package/dist/lib/complexity/comment-classifier.d.ts +24 -0
- package/dist/lib/complexity/comment-classifier.js +43 -0
- package/dist/lib/complexity/cross-process.d.ts +78 -0
- package/dist/lib/complexity/cross-process.js +114 -0
- package/dist/lib/complexity/process-metrics.d.ts +78 -0
- package/dist/lib/complexity/process-metrics.js +278 -0
- package/dist/lib/complexity/rules-metrics.d.ts +31 -0
- package/dist/lib/complexity/rules-metrics.js +99 -0
- package/dist/lib/concurrency.d.ts +11 -0
- package/dist/lib/concurrency.js +27 -0
- package/dist/lib/control-name.d.ts +10 -0
- package/dist/lib/control-name.js +10 -0
- package/dist/lib/coordinate-error.d.ts +3 -0
- package/dist/lib/coordinate-error.js +29 -0
- package/dist/lib/credential-format.d.ts +23 -0
- package/dist/lib/credential-format.js +25 -0
- package/dist/lib/cube-stats/fetcher.d.ts +106 -0
- package/dist/lib/cube-stats/fetcher.js +194 -0
- package/dist/lib/feeders/brackets.d.ts +47 -0
- package/dist/lib/feeders/brackets.js +195 -0
- package/dist/lib/feeders/element-type-cache.d.ts +42 -0
- package/dist/lib/feeders/element-type-cache.js +86 -0
- package/dist/lib/feeders/static-heuristics.d.ts +101 -0
- package/dist/lib/feeders/static-heuristics.js +202 -0
- package/dist/lib/git-process.d.ts +67 -0
- package/dist/lib/git-process.js +243 -0
- package/dist/lib/mask-secrets.d.ts +10 -0
- package/dist/lib/mask-secrets.js +99 -0
- package/dist/lib/mdx.d.ts +3 -0
- package/dist/lib/mdx.js +13 -0
- package/dist/lib/naming/odata-filter.d.ts +15 -0
- package/dist/lib/naming/odata-filter.js +81 -0
- package/dist/lib/naming/rules.d.ts +34 -0
- package/dist/lib/naming/rules.js +215 -0
- package/dist/lib/pro-parser.d.ts +19 -0
- package/dist/lib/pro-parser.js +260 -0
- package/dist/lib/pro-serializer.d.ts +19 -0
- package/dist/lib/pro-serializer.js +170 -0
- package/dist/lib/process-parts-schema.d.ts +45 -0
- package/dist/lib/process-parts-schema.js +46 -0
- package/dist/lib/process-refs.d.ts +88 -0
- package/dist/lib/process-refs.js +441 -0
- package/dist/lib/rules-outline.d.ts +29 -0
- package/dist/lib/rules-outline.js +68 -0
- package/dist/lib/rules-patch.d.ts +6 -0
- package/dist/lib/rules-patch.js +59 -0
- package/dist/lib/safe-regex.d.ts +15 -0
- package/dist/lib/safe-regex.js +37 -0
- package/dist/lib/sample-cells.d.ts +48 -0
- package/dist/lib/sample-cells.js +146 -0
- package/dist/lib/slim-json-schema.d.ts +20 -0
- package/dist/lib/slim-json-schema.js +68 -0
- package/dist/lib/strip-comments.d.ts +23 -0
- package/dist/lib/strip-comments.js +61 -0
- package/dist/lib/tm1-events.d.ts +16 -0
- package/dist/lib/tm1-events.js +29 -0
- package/dist/lib/v12-compat/deprecated-ti.d.ts +17 -0
- package/dist/lib/v12-compat/deprecated-ti.js +257 -0
- package/dist/lib/v12-compat/scanner.d.ts +10 -0
- package/dist/lib/v12-compat/scanner.js +43 -0
- package/dist/lib/variables-ui-data.d.ts +26 -0
- package/dist/lib/variables-ui-data.js +77 -0
- package/dist/load-env.d.ts +2 -0
- package/dist/load-env.js +29 -0
- package/dist/logger.d.ts +4 -0
- package/dist/logger.js +60 -0
- package/dist/prompts/index.d.ts +3 -0
- package/dist/prompts/index.js +141 -0
- package/dist/resources/index.d.ts +5 -0
- package/dist/resources/index.js +237 -0
- package/dist/resources/list-handler.d.ts +40 -0
- package/dist/resources/list-handler.js +86 -0
- package/dist/resources/subscriptions.d.ts +19 -0
- package/dist/resources/subscriptions.js +80 -0
- package/dist/schemas/cells.d.ts +17 -0
- package/dist/schemas/cells.js +13 -0
- package/dist/schemas/common.d.ts +16 -0
- package/dist/schemas/common.js +14 -0
- package/dist/schemas/index.d.ts +10 -0
- package/dist/schemas/index.js +23 -0
- package/dist/schemas/metadata.d.ts +70 -0
- package/dist/schemas/metadata.js +47 -0
- package/dist/schemas/monitoring.d.ts +95 -0
- package/dist/schemas/monitoring.js +69 -0
- package/dist/schemas/processes.d.ts +74 -0
- package/dist/schemas/processes.js +66 -0
- package/dist/schemas/scheduling.d.ts +13 -0
- package/dist/schemas/scheduling.js +13 -0
- package/dist/schemas/security.d.ts +19 -0
- package/dist/schemas/security.js +16 -0
- package/dist/schemas/subsets.d.ts +12 -0
- package/dist/schemas/subsets.js +12 -0
- package/dist/schemas/views.d.ts +9 -0
- package/dist/schemas/views.js +9 -0
- package/dist/session-manager.d.ts +79 -0
- package/dist/session-manager.js +281 -0
- package/dist/tm1-client/connection/profile.d.ts +13 -0
- package/dist/tm1-client/connection/profile.js +99 -0
- package/dist/tm1-client/dispatcher.d.ts +5 -0
- package/dist/tm1-client/dispatcher.js +31 -0
- package/dist/tm1-client/http.d.ts +81 -0
- package/dist/tm1-client/http.js +547 -0
- package/dist/tm1-client/services/batch-service.d.ts +123 -0
- package/dist/tm1-client/services/batch-service.js +455 -0
- package/dist/tm1-client/services/cell-service.d.ts +71 -0
- package/dist/tm1-client/services/cell-service.js +333 -0
- package/dist/tm1-client/services/cellset-transform.d.ts +26 -0
- package/dist/tm1-client/services/cellset-transform.js +80 -0
- package/dist/tm1-client/services/chore-service.d.ts +68 -0
- package/dist/tm1-client/services/chore-service.js +179 -0
- package/dist/tm1-client/services/chore-status.d.ts +11 -0
- package/dist/tm1-client/services/chore-status.js +127 -0
- package/dist/tm1-client/services/cube-service.d.ts +134 -0
- package/dist/tm1-client/services/cube-service.js +294 -0
- package/dist/tm1-client/services/dimension-service.d.ts +118 -0
- package/dist/tm1-client/services/dimension-service.js +249 -0
- package/dist/tm1-client/services/element-service.d.ts +245 -0
- package/dist/tm1-client/services/element-service.js +809 -0
- package/dist/tm1-client/services/fallback.d.ts +44 -0
- package/dist/tm1-client/services/fallback.js +72 -0
- package/dist/tm1-client/services/file-service.d.ts +53 -0
- package/dist/tm1-client/services/file-service.js +218 -0
- package/dist/tm1-client/services/hierarchy-service.d.ts +129 -0
- package/dist/tm1-client/services/hierarchy-service.js +332 -0
- package/dist/tm1-client/services/monitoring-service.d.ts +34 -0
- package/dist/tm1-client/services/monitoring-service.js +123 -0
- package/dist/tm1-client/services/odata-page.d.ts +71 -0
- package/dist/tm1-client/services/odata-page.js +87 -0
- package/dist/tm1-client/services/process-service.d.ts +278 -0
- package/dist/tm1-client/services/process-service.js +874 -0
- package/dist/tm1-client/services/process-status.d.ts +21 -0
- package/dist/tm1-client/services/process-status.js +89 -0
- package/dist/tm1-client/services/security-service.d.ts +50 -0
- package/dist/tm1-client/services/security-service.js +93 -0
- package/dist/tm1-client/services/server-service.d.ts +116 -0
- package/dist/tm1-client/services/server-service.js +504 -0
- package/dist/tm1-client/services/subset-service.d.ts +37 -0
- package/dist/tm1-client/services/subset-service.js +122 -0
- package/dist/tm1-client/services/view-service.d.ts +46 -0
- package/dist/tm1-client/services/view-service.js +287 -0
- package/dist/tm1-client.d.ts +56 -0
- package/dist/tm1-client.js +126 -0
- package/dist/tools/analysis/analyze-callgraph.d.ts +28 -0
- package/dist/tools/analysis/analyze-callgraph.js +350 -0
- package/dist/tools/analysis/analyze-chore-graph.d.ts +2 -0
- package/dist/tools/analysis/analyze-chore-graph.js +148 -0
- package/dist/tools/analysis/analyze-object-usage.d.ts +2 -0
- package/dist/tools/analysis/analyze-object-usage.js +143 -0
- package/dist/tools/analysis/audit-complexity.d.ts +2 -0
- package/dist/tools/analysis/audit-complexity.js +255 -0
- package/dist/tools/analysis/audit-feeders.d.ts +2 -0
- package/dist/tools/analysis/audit-feeders.js +417 -0
- package/dist/tools/analysis/audit-naming.d.ts +2 -0
- package/dist/tools/analysis/audit-naming.js +379 -0
- package/dist/tools/analysis/check-v12-readiness.d.ts +2 -0
- package/dist/tools/analysis/check-v12-readiness.js +136 -0
- package/dist/tools/analysis/find-orphan-dimensions.d.ts +2 -0
- package/dist/tools/analysis/find-orphan-dimensions.js +55 -0
- package/dist/tools/analysis/invalidate-callgraph-cache.d.ts +2 -0
- package/dist/tools/analysis/invalidate-callgraph-cache.js +40 -0
- package/dist/tools/analysis/trace-data-flow.d.ts +2 -0
- package/dist/tools/analysis/trace-data-flow.js +138 -0
- package/dist/tools/annotations.d.ts +12 -0
- package/dist/tools/annotations.js +61 -0
- package/dist/tools/celldata/check-feeders.d.ts +2 -0
- package/dist/tools/celldata/check-feeders.js +48 -0
- package/dist/tools/celldata/check-writable-coords.d.ts +2 -0
- package/dist/tools/celldata/check-writable-coords.js +126 -0
- package/dist/tools/celldata/execute-mdx.d.ts +17 -0
- package/dist/tools/celldata/execute-mdx.js +126 -0
- package/dist/tools/celldata/get-cell-value.d.ts +2 -0
- package/dist/tools/celldata/get-cell-value.js +30 -0
- package/dist/tools/celldata/get-view-definition.d.ts +2 -0
- package/dist/tools/celldata/get-view-definition.js +29 -0
- package/dist/tools/celldata/get-view.d.ts +2 -0
- package/dist/tools/celldata/get-view.js +55 -0
- package/dist/tools/celldata/sample-cells.d.ts +2 -0
- package/dist/tools/celldata/sample-cells.js +101 -0
- package/dist/tools/celldata/trace-cell-calculation.d.ts +2 -0
- package/dist/tools/celldata/trace-cell-calculation.js +53 -0
- package/dist/tools/celldata/trace-feeders.d.ts +2 -0
- package/dist/tools/celldata/trace-feeders.js +44 -0
- package/dist/tools/celldata/write-cells.d.ts +2 -0
- package/dist/tools/celldata/write-cells.js +65 -0
- package/dist/tools/confirm.d.ts +10 -0
- package/dist/tools/confirm.js +64 -0
- package/dist/tools/define-tool.d.ts +51 -0
- package/dist/tools/define-tool.js +49 -0
- package/dist/tools/dimension-management/bulk-upsert-elements.d.ts +2 -0
- package/dist/tools/dimension-management/bulk-upsert-elements.js +103 -0
- package/dist/tools/dimension-management/create-dimension.d.ts +2 -0
- package/dist/tools/dimension-management/create-dimension.js +22 -0
- package/dist/tools/dimension-management/create-element-attribute.d.ts +2 -0
- package/dist/tools/dimension-management/create-element-attribute.js +26 -0
- package/dist/tools/dimension-management/create-element.d.ts +2 -0
- package/dist/tools/dimension-management/create-element.js +31 -0
- package/dist/tools/dimension-management/create-hierarchy.d.ts +2 -0
- package/dist/tools/dimension-management/create-hierarchy.js +22 -0
- package/dist/tools/dimension-management/delete-dimension.d.ts +2 -0
- package/dist/tools/dimension-management/delete-dimension.js +25 -0
- package/dist/tools/dimension-management/delete-element.d.ts +2 -0
- package/dist/tools/dimension-management/delete-element.js +26 -0
- package/dist/tools/dimension-management/delete-elements.d.ts +2 -0
- package/dist/tools/dimension-management/delete-elements.js +44 -0
- package/dist/tools/dimension-management/delete-hierarchy.d.ts +2 -0
- package/dist/tools/dimension-management/delete-hierarchy.js +35 -0
- package/dist/tools/dimension-management/get-element-attribute-values.d.ts +2 -0
- package/dist/tools/dimension-management/get-element-attribute-values.js +77 -0
- package/dist/tools/dimension-management/list-element-attributes.d.ts +2 -0
- package/dist/tools/dimension-management/list-element-attributes.js +31 -0
- package/dist/tools/dimension-management/move-element.d.ts +2 -0
- package/dist/tools/dimension-management/move-element.js +28 -0
- package/dist/tools/dimension-management/update-element-attribute-value.d.ts +2 -0
- package/dist/tools/dimension-management/update-element-attribute-value.js +80 -0
- package/dist/tools/dimension-management/update-element.d.ts +2 -0
- package/dist/tools/dimension-management/update-element.js +35 -0
- package/dist/tools/error-format.d.ts +22 -0
- package/dist/tools/error-format.js +130 -0
- package/dist/tools/fileops/delete-file.d.ts +2 -0
- package/dist/tools/fileops/delete-file.js +32 -0
- package/dist/tools/fileops/get-file-content.d.ts +2 -0
- package/dist/tools/fileops/get-file-content.js +76 -0
- package/dist/tools/fileops/list-files.d.ts +2 -0
- package/dist/tools/fileops/list-files.js +43 -0
- package/dist/tools/fileops/search-files.d.ts +2 -0
- package/dist/tools/fileops/search-files.js +76 -0
- package/dist/tools/fileops/upload-file.d.ts +2 -0
- package/dist/tools/fileops/upload-file.js +69 -0
- package/dist/tools/format.d.ts +57 -0
- package/dist/tools/format.js +157 -0
- package/dist/tools/hierarchy.d.ts +6 -0
- package/dist/tools/hierarchy.js +27 -0
- package/dist/tools/index.d.ts +4 -0
- package/dist/tools/index.js +263 -0
- package/dist/tools/local-file.d.ts +16 -0
- package/dist/tools/local-file.js +88 -0
- package/dist/tools/metadata/get-ancestors.d.ts +2 -0
- package/dist/tools/metadata/get-ancestors.js +36 -0
- package/dist/tools/metadata/get-descendants.d.ts +2 -0
- package/dist/tools/metadata/get-descendants.js +64 -0
- package/dist/tools/metadata/get-hierarchy.d.ts +2 -0
- package/dist/tools/metadata/get-hierarchy.js +130 -0
- package/dist/tools/metadata/list-chores.d.ts +2 -0
- package/dist/tools/metadata/list-chores.js +62 -0
- package/dist/tools/metadata/list-cubes.d.ts +2 -0
- package/dist/tools/metadata/list-cubes.js +128 -0
- package/dist/tools/metadata/list-dimensions.d.ts +2 -0
- package/dist/tools/metadata/list-dimensions.js +131 -0
- package/dist/tools/metadata/list-processes-grouped.d.ts +2 -0
- package/dist/tools/metadata/list-processes-grouped.js +96 -0
- package/dist/tools/metadata/list-processes.d.ts +2 -0
- package/dist/tools/metadata/list-processes.js +108 -0
- package/dist/tools/metadata/resolve-default-members.d.ts +2 -0
- package/dist/tools/metadata/resolve-default-members.js +46 -0
- package/dist/tools/model-building/check-cube-rule.d.ts +2 -0
- package/dist/tools/model-building/check-cube-rule.js +51 -0
- package/dist/tools/model-building/clear-cube.d.ts +2 -0
- package/dist/tools/model-building/clear-cube.js +46 -0
- package/dist/tools/model-building/create-cube.d.ts +2 -0
- package/dist/tools/model-building/create-cube.js +34 -0
- package/dist/tools/model-building/delete-cube.d.ts +2 -0
- package/dist/tools/model-building/delete-cube.js +27 -0
- package/dist/tools/model-building/get-all-cube-rules.d.ts +2 -0
- package/dist/tools/model-building/get-all-cube-rules.js +149 -0
- package/dist/tools/model-building/get-cube-rules.d.ts +2 -0
- package/dist/tools/model-building/get-cube-rules.js +69 -0
- package/dist/tools/model-building/rules-source.d.ts +21 -0
- package/dist/tools/model-building/rules-source.js +49 -0
- package/dist/tools/model-building/search-rules.d.ts +2 -0
- package/dist/tools/model-building/search-rules.js +132 -0
- package/dist/tools/model-building/set-cube-rules.d.ts +2 -0
- package/dist/tools/model-building/set-cube-rules.js +81 -0
- package/dist/tools/model-building/unload-cube.d.ts +2 -0
- package/dist/tools/model-building/unload-cube.js +23 -0
- package/dist/tools/operations/diagnose-process-error.d.ts +2 -0
- package/dist/tools/operations/diagnose-process-error.js +178 -0
- package/dist/tools/operations/error-log-helpers.d.ts +25 -0
- package/dist/tools/operations/error-log-helpers.js +57 -0
- package/dist/tools/operations/get-audit-log.d.ts +2 -0
- package/dist/tools/operations/get-audit-log.js +70 -0
- package/dist/tools/operations/get-cube-stats.d.ts +2 -0
- package/dist/tools/operations/get-cube-stats.js +107 -0
- package/dist/tools/operations/get-error-log-content.d.ts +2 -0
- package/dist/tools/operations/get-error-log-content.js +164 -0
- package/dist/tools/operations/get-jobs.d.ts +3 -0
- package/dist/tools/operations/get-jobs.js +51 -0
- package/dist/tools/operations/get-message-log.d.ts +2 -0
- package/dist/tools/operations/get-message-log.js +63 -0
- package/dist/tools/operations/get-server-info.d.ts +2 -0
- package/dist/tools/operations/get-server-info.js +180 -0
- package/dist/tools/operations/get-server-state.d.ts +2 -0
- package/dist/tools/operations/get-server-state.js +129 -0
- package/dist/tools/operations/get-sessions.d.ts +2 -0
- package/dist/tools/operations/get-sessions.js +76 -0
- package/dist/tools/operations/get-threads.d.ts +3 -0
- package/dist/tools/operations/get-threads.js +50 -0
- package/dist/tools/operations/get-transaction-log.d.ts +2 -0
- package/dist/tools/operations/get-transaction-log.js +63 -0
- package/dist/tools/operations/list-error-logs.d.ts +8 -0
- package/dist/tools/operations/list-error-logs.js +157 -0
- package/dist/tools/operations/save-data.d.ts +2 -0
- package/dist/tools/operations/save-data.js +50 -0
- package/dist/tools/pagination.d.ts +32 -0
- package/dist/tools/pagination.js +116 -0
- package/dist/tools/scheduling/create-chore.d.ts +2 -0
- package/dist/tools/scheduling/create-chore.js +93 -0
- package/dist/tools/scheduling/delete-chore.d.ts +2 -0
- package/dist/tools/scheduling/delete-chore.js +22 -0
- package/dist/tools/scheduling/execute-chore.d.ts +2 -0
- package/dist/tools/scheduling/execute-chore.js +52 -0
- package/dist/tools/scheduling/toggle-chore.d.ts +2 -0
- package/dist/tools/scheduling/toggle-chore.js +22 -0
- package/dist/tools/scheduling/update-chore.d.ts +2 -0
- package/dist/tools/scheduling/update-chore.js +71 -0
- package/dist/tools/schemas/common.d.ts +10 -0
- package/dist/tools/schemas/common.js +23 -0
- package/dist/tools/schemas/items-analysis.d.ts +394 -0
- package/dist/tools/schemas/items-analysis.js +419 -0
- package/dist/tools/schemas/items-cells.d.ts +70 -0
- package/dist/tools/schemas/items-cells.js +65 -0
- package/dist/tools/schemas/items-common.d.ts +18 -0
- package/dist/tools/schemas/items-common.js +39 -0
- package/dist/tools/schemas/items-fileops.d.ts +11 -0
- package/dist/tools/schemas/items-fileops.js +13 -0
- package/dist/tools/schemas/items-metadata.d.ts +262 -0
- package/dist/tools/schemas/items-metadata.js +184 -0
- package/dist/tools/schemas/items-monitoring.d.ts +79 -0
- package/dist/tools/schemas/items-monitoring.js +78 -0
- package/dist/tools/schemas/items-processes.d.ts +279 -0
- package/dist/tools/schemas/items-processes.js +235 -0
- package/dist/tools/schemas/items-scheduling.d.ts +25 -0
- package/dist/tools/schemas/items-scheduling.js +26 -0
- package/dist/tools/schemas/items-security.d.ts +19 -0
- package/dist/tools/schemas/items-security.js +12 -0
- package/dist/tools/schemas/items-subsets.d.ts +2 -0
- package/dist/tools/schemas/items-subsets.js +4 -0
- package/dist/tools/schemas/items-views.d.ts +38 -0
- package/dist/tools/schemas/items-views.js +26 -0
- package/dist/tools/schemas/items.d.ts +12 -0
- package/dist/tools/schemas/items.js +23 -0
- package/dist/tools/schemas/markdown-capable.d.ts +21 -0
- package/dist/tools/schemas/markdown-capable.js +58 -0
- package/dist/tools/schemas/output-schema.d.ts +24 -0
- package/dist/tools/schemas/output-schema.js +25 -0
- package/dist/tools/security/assign-client-group.d.ts +2 -0
- package/dist/tools/security/assign-client-group.js +20 -0
- package/dist/tools/security/create-client.d.ts +2 -0
- package/dist/tools/security/create-client.js +28 -0
- package/dist/tools/security/delete-client.d.ts +2 -0
- package/dist/tools/security/delete-client.js +22 -0
- package/dist/tools/security/get-client.d.ts +2 -0
- package/dist/tools/security/get-client.js +20 -0
- package/dist/tools/security/list-clients.d.ts +2 -0
- package/dist/tools/security/list-clients.js +86 -0
- package/dist/tools/security/list-groups.d.ts +2 -0
- package/dist/tools/security/list-groups.js +43 -0
- package/dist/tools/security/remove-client-group.d.ts +2 -0
- package/dist/tools/security/remove-client-group.js +27 -0
- package/dist/tools/security/update-client.d.ts +2 -0
- package/dist/tools/security/update-client.js +22 -0
- package/dist/tools/subsets/create-subset.d.ts +2 -0
- package/dist/tools/subsets/create-subset.js +44 -0
- package/dist/tools/subsets/delete-subset.d.ts +2 -0
- package/dist/tools/subsets/delete-subset.js +26 -0
- package/dist/tools/subsets/get-subset.d.ts +2 -0
- package/dist/tools/subsets/get-subset.js +29 -0
- package/dist/tools/subsets/list-subsets.d.ts +2 -0
- package/dist/tools/subsets/list-subsets.js +36 -0
- package/dist/tools/subsets/update-subset.d.ts +2 -0
- package/dist/tools/subsets/update-subset.js +33 -0
- package/dist/tools/ti-development/check-process-code.d.ts +2 -0
- package/dist/tools/ti-development/check-process-code.js +96 -0
- package/dist/tools/ti-development/compile-process.d.ts +2 -0
- package/dist/tools/ti-development/compile-process.js +32 -0
- package/dist/tools/ti-development/copy-process.d.ts +2 -0
- package/dist/tools/ti-development/copy-process.js +32 -0
- package/dist/tools/ti-development/delete-process.d.ts +2 -0
- package/dist/tools/ti-development/delete-process.js +26 -0
- package/dist/tools/ti-development/diff-process-with-file.d.ts +2 -0
- package/dist/tools/ti-development/diff-process-with-file.js +208 -0
- package/dist/tools/ti-development/diff-processes.d.ts +2 -0
- package/dist/tools/ti-development/diff-processes.js +312 -0
- package/dist/tools/ti-development/execute-process.d.ts +8 -0
- package/dist/tools/ti-development/execute-process.js +109 -0
- package/dist/tools/ti-development/export-process-to-git.d.ts +2 -0
- package/dist/tools/ti-development/export-process-to-git.js +113 -0
- package/dist/tools/ti-development/export-process-to-pro.d.ts +2 -0
- package/dist/tools/ti-development/export-process-to-pro.js +117 -0
- package/dist/tools/ti-development/get-all-processes-code.d.ts +2 -0
- package/dist/tools/ti-development/get-all-processes-code.js +131 -0
- package/dist/tools/ti-development/get-process-code.d.ts +2 -0
- package/dist/tools/ti-development/get-process-code.js +100 -0
- package/dist/tools/ti-development/get-process-datasource.d.ts +2 -0
- package/dist/tools/ti-development/get-process-datasource.js +20 -0
- package/dist/tools/ti-development/get-process-parameters.d.ts +2 -0
- package/dist/tools/ti-development/get-process-parameters.js +25 -0
- package/dist/tools/ti-development/get-process-variables.d.ts +2 -0
- package/dist/tools/ti-development/get-process-variables.js +38 -0
- package/dist/tools/ti-development/get-process.d.ts +2 -0
- package/dist/tools/ti-development/get-process.js +163 -0
- package/dist/tools/ti-development/import-pro-file.d.ts +2 -0
- package/dist/tools/ti-development/import-pro-file.js +153 -0
- package/dist/tools/ti-development/import-process-from-git.d.ts +2 -0
- package/dist/tools/ti-development/import-process-from-git.js +198 -0
- package/dist/tools/ti-development/install-pro-bundle.d.ts +2 -0
- package/dist/tools/ti-development/install-pro-bundle.js +288 -0
- package/dist/tools/ti-development/preflight.d.ts +39 -0
- package/dist/tools/ti-development/preflight.js +56 -0
- package/dist/tools/ti-development/process-backup.d.ts +29 -0
- package/dist/tools/ti-development/process-backup.js +118 -0
- package/dist/tools/ti-development/search-code.d.ts +2 -0
- package/dist/tools/ti-development/search-code.js +208 -0
- package/dist/tools/ti-development/upsert-process.d.ts +2 -0
- package/dist/tools/ti-development/upsert-process.js +167 -0
- package/dist/tools/ti-development/validate-process-refs.d.ts +2 -0
- package/dist/tools/ti-development/validate-process-refs.js +73 -0
- package/dist/tools/views/create-mdx-view.d.ts +2 -0
- package/dist/tools/views/create-mdx-view.js +21 -0
- package/dist/tools/views/create-native-view.d.ts +2 -0
- package/dist/tools/views/create-native-view.js +81 -0
- package/dist/tools/views/delete-view.d.ts +2 -0
- package/dist/tools/views/delete-view.js +23 -0
- package/dist/tools/views/list-views.d.ts +2 -0
- package/dist/tools/views/list-views.js +32 -0
- package/dist/tools/with-annotations.d.ts +6 -0
- package/dist/tools/with-annotations.js +339 -0
- package/dist/types.d.ts +409 -0
- package/dist/types.js +91 -0
- package/dist/version.d.ts +4 -0
- package/dist/version.js +18 -0
- package/package.json +107 -0
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
// Quote-and-escape a string for .pro CSV-like values: wrap in double quotes, double inner ".
|
|
2
|
+
function quote(s) {
|
|
3
|
+
return `"${s.replace(/"/g, '""')}"`;
|
|
4
|
+
}
|
|
5
|
+
function paramTypeToInt(t) {
|
|
6
|
+
return t === "String" ? 2 : 1;
|
|
7
|
+
}
|
|
8
|
+
function variableTypeToInt(t) {
|
|
9
|
+
return t === "Numeric" ? 1 : 2;
|
|
10
|
+
}
|
|
11
|
+
function serializeParameters(params) {
|
|
12
|
+
if (params.length === 0)
|
|
13
|
+
return [];
|
|
14
|
+
const lines = [];
|
|
15
|
+
// 560 = parameter names
|
|
16
|
+
lines.push(`560,${params.length}`);
|
|
17
|
+
for (const p of params)
|
|
18
|
+
lines.push(p.name);
|
|
19
|
+
// 561 = parameter types (1=Numeric, 2=String)
|
|
20
|
+
lines.push(`561,${params.length}`);
|
|
21
|
+
for (const p of params)
|
|
22
|
+
lines.push(String(paramTypeToInt(p.type)));
|
|
23
|
+
// 590 = name,defaultValue (numbers raw, strings quoted)
|
|
24
|
+
lines.push(`590,${params.length}`);
|
|
25
|
+
for (const p of params) {
|
|
26
|
+
const dv = p.defaultValue;
|
|
27
|
+
const valStr = typeof dv === "number" ? String(dv) : quote(String(dv ?? ""));
|
|
28
|
+
lines.push(`${p.name},${valStr}`);
|
|
29
|
+
}
|
|
30
|
+
// 637 = name,prompt
|
|
31
|
+
lines.push(`637,${params.length}`);
|
|
32
|
+
for (const p of params)
|
|
33
|
+
lines.push(`${p.name},${quote(p.prompt ?? "")}`);
|
|
34
|
+
return lines;
|
|
35
|
+
}
|
|
36
|
+
function serializeVariables(vars) {
|
|
37
|
+
if (vars.length === 0)
|
|
38
|
+
return [];
|
|
39
|
+
const lines = [];
|
|
40
|
+
lines.push(`577,${vars.length}`);
|
|
41
|
+
for (const v of vars)
|
|
42
|
+
lines.push(v.name);
|
|
43
|
+
lines.push(`578,${vars.length}`);
|
|
44
|
+
for (const v of vars)
|
|
45
|
+
lines.push(String(variableTypeToInt(v.type)));
|
|
46
|
+
lines.push(`579,${vars.length}`);
|
|
47
|
+
for (const v of vars)
|
|
48
|
+
lines.push(String(v.position));
|
|
49
|
+
// 580/581 = start and end byte per variable. Zero everywhere for delimited
|
|
50
|
+
// sources; a fixed-width source is unusable without them.
|
|
51
|
+
lines.push(`580,${vars.length}`);
|
|
52
|
+
for (const v of vars)
|
|
53
|
+
lines.push(String(v.startByte ?? 0));
|
|
54
|
+
lines.push(`581,${vars.length}`);
|
|
55
|
+
for (const v of vars)
|
|
56
|
+
lines.push(String(v.endByte ?? 0));
|
|
57
|
+
return lines;
|
|
58
|
+
}
|
|
59
|
+
// 582 = per-column UI state, one entry per datasource column. Written verbatim:
|
|
60
|
+
// the block counts COLUMNS, not variables, so its length legitimately exceeds
|
|
61
|
+
// the variable count whenever columns are ignored.
|
|
62
|
+
function serializeVariablesUIData(uiData) {
|
|
63
|
+
if (!uiData || uiData.length === 0)
|
|
64
|
+
return [];
|
|
65
|
+
return [`582,${uiData.length}`, ...uiData];
|
|
66
|
+
}
|
|
67
|
+
function serializeDataSource(ds) {
|
|
68
|
+
if (!ds || ds.type === "None")
|
|
69
|
+
return ["562,NULL"];
|
|
70
|
+
const REVERSE_TYPE_MAP = {
|
|
71
|
+
None: "NULL",
|
|
72
|
+
TM1CubeView: "VIEW",
|
|
73
|
+
TM1DimensionSubset: "SUBSET",
|
|
74
|
+
ASCII: "CHARACTERDELIMITED",
|
|
75
|
+
ODBC: "ODBC",
|
|
76
|
+
TM1Process: "TM1PROCESS",
|
|
77
|
+
};
|
|
78
|
+
const lines = [];
|
|
79
|
+
// A fixed-width ASCII source is its own .pro type, not a flag on the type.
|
|
80
|
+
const proType = ds.type === "ASCII" && ds.asciiDelimiterType === "FixedWidth"
|
|
81
|
+
? "POSITIONDELIMITED"
|
|
82
|
+
: REVERSE_TYPE_MAP[ds.type];
|
|
83
|
+
lines.push(`562,${quote(proType)}`);
|
|
84
|
+
// 586 = DataSourceNameForServer, 585 = DataSourceNameForClient — this is the
|
|
85
|
+
// slot order TM1 itself writes; each falls back to the other when unset.
|
|
86
|
+
const server = ds.dataSourceNameForServer ?? ds.dataSourceNameForClient ?? "";
|
|
87
|
+
// TM1 leaves 585 empty when no client-side name is set — mirror that rather
|
|
88
|
+
// than duplicating the server name, which would alter state on re-import.
|
|
89
|
+
const client = ds.dataSourceNameForClient ?? "";
|
|
90
|
+
// TM1 leaves an unset slot bare ("585,"), it does not write empty quotes.
|
|
91
|
+
const slot = (s) => (s === "" ? "" : quote(s));
|
|
92
|
+
lines.push(`586,${slot(server)}`);
|
|
93
|
+
lines.push(`585,${slot(client)}`);
|
|
94
|
+
// View and subset names go in unquoted — TM1 writes `570,Ansicht, mit "Komma"`
|
|
95
|
+
// verbatim, commas and quotes included.
|
|
96
|
+
if (ds.type === "TM1CubeView") {
|
|
97
|
+
lines.push(`570,${ds.view ?? ""}`);
|
|
98
|
+
}
|
|
99
|
+
else if (ds.type === "TM1DimensionSubset") {
|
|
100
|
+
// 571 is the subset slot; 570 holds view names.
|
|
101
|
+
lines.push(`571,${ds.subset ?? ""}`);
|
|
102
|
+
}
|
|
103
|
+
else if (ds.type === "ASCII") {
|
|
104
|
+
if (ds.asciiDelimiterChar !== undefined)
|
|
105
|
+
lines.push(`567,${quote(ds.asciiDelimiterChar)}`);
|
|
106
|
+
if (ds.asciiQuoteCharacter !== undefined)
|
|
107
|
+
lines.push(`568,${quote(ds.asciiQuoteCharacter)}`);
|
|
108
|
+
if (ds.asciiHeaderRecords !== undefined)
|
|
109
|
+
lines.push(`569,${ds.asciiHeaderRecords}`);
|
|
110
|
+
if (ds.asciiDecimalSeparator !== undefined)
|
|
111
|
+
lines.push(`588,${quote(ds.asciiDecimalSeparator)}`);
|
|
112
|
+
if (ds.asciiThousandSeparator !== undefined)
|
|
113
|
+
lines.push(`589,${quote(ds.asciiThousandSeparator)}`);
|
|
114
|
+
}
|
|
115
|
+
else if (ds.type === "ODBC") {
|
|
116
|
+
if (ds.userName)
|
|
117
|
+
lines.push(`564,${quote(ds.userName)}`);
|
|
118
|
+
// 559 is the ODBC unicode-interface flag: `usesUnicode: true` → "559,1",
|
|
119
|
+
// false → "559,0". Measured on 11.8 by patching the property and reading
|
|
120
|
+
// the file back. TM1 writes the line for every source type, but only an
|
|
121
|
+
// ODBC source exposes it over REST, so only that branch can round-trip it.
|
|
122
|
+
if (ds.usesUnicode !== undefined)
|
|
123
|
+
lines.push(`559,${ds.usesUnicode ? 1 : 0}`);
|
|
124
|
+
// 565 is TM1's password slot. It is only filled when the caller explicitly
|
|
125
|
+
// exported credentials; the value is then what TM1's REST API returned —
|
|
126
|
+
// a server-bound ciphertext on v11, plain text on v12 — not TM1's own file
|
|
127
|
+
// encoding, so such a file is for round trips through this server, not for
|
|
128
|
+
// dropping into a data directory.
|
|
129
|
+
if (ds.password)
|
|
130
|
+
lines.push(`565,${quote(ds.password)}`);
|
|
131
|
+
// 566 is a counted block: header with the line count, then the SQL. TM1
|
|
132
|
+
// writes "566,0" when there is no query. The password (565) stays out —
|
|
133
|
+
// TM1 stores it as a server-encrypted blob, useless and unsafe to carry.
|
|
134
|
+
const queryLines = ds.query !== undefined && ds.query.length > 0
|
|
135
|
+
? ds.query.split(/\r?\n/)
|
|
136
|
+
: [];
|
|
137
|
+
lines.push(`566,${queryLines.length}`);
|
|
138
|
+
lines.push(...queryLines);
|
|
139
|
+
}
|
|
140
|
+
return lines;
|
|
141
|
+
}
|
|
142
|
+
function serializeSection(code, body) {
|
|
143
|
+
const text = body ?? "";
|
|
144
|
+
const bodyLines = text.length > 0 ? text.split(/\r?\n/) : [];
|
|
145
|
+
// Line count in the header, like TM1: it keeps code that looks like a header
|
|
146
|
+
// line (e.g. a literal "930,0") inside the section on re-read.
|
|
147
|
+
return [`${code},${bodyLines.length}`, ...bodyLines];
|
|
148
|
+
}
|
|
149
|
+
// Serialize a TM1 process back to a .pro file body. Round-trip safe with parseProFile().
|
|
150
|
+
// Line codes follow what TM1 writes itself (562/564/566/570/571/585/586, counted
|
|
151
|
+
// sections), so files TM1 wrote parse back losslessly. Still omitted are the headers
|
|
152
|
+
// TM1 adds but that carry no portable information: 601 (version), 565 (the
|
|
153
|
+
// server-encrypted password blob), 592, 593-598, 599, 800/801, 928, 603. They are only
|
|
154
|
+
// required when re-uploading via legacy TM1 .pro tooling, not for repo round-trip via
|
|
155
|
+
// tm1_import_pro_file.
|
|
156
|
+
export function serializeToPro(input) {
|
|
157
|
+
const lines = [];
|
|
158
|
+
lines.push(`602,${quote(input.name)}`);
|
|
159
|
+
lines.push(...serializeParameters(input.parameters ?? []));
|
|
160
|
+
lines.push(...serializeVariables(input.variables ?? []));
|
|
161
|
+
lines.push(...serializeVariablesUIData(input.variablesUIData));
|
|
162
|
+
lines.push(...serializeDataSource(input.dataSource));
|
|
163
|
+
lines.push(...serializeSection("572", input.prolog));
|
|
164
|
+
lines.push(...serializeSection("573", input.metadata));
|
|
165
|
+
lines.push(...serializeSection("574", input.data));
|
|
166
|
+
lines.push(...serializeSection("575", input.epilog));
|
|
167
|
+
// Trailing newline — TM1 .pro files end with one.
|
|
168
|
+
return lines.join("\n") + "\n";
|
|
169
|
+
}
|
|
170
|
+
//# sourceMappingURL=pro-serializer.js.map
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
export declare const parameterSchema: z.ZodObject<{
|
|
3
|
+
name: z.ZodString;
|
|
4
|
+
type: z.ZodEnum<{
|
|
5
|
+
Numeric: "Numeric";
|
|
6
|
+
String: "String";
|
|
7
|
+
}>;
|
|
8
|
+
defaultValue: z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>;
|
|
9
|
+
prompt: z.ZodOptional<z.ZodString>;
|
|
10
|
+
}, z.core.$strip>;
|
|
11
|
+
export declare const variableSchema: z.ZodObject<{
|
|
12
|
+
name: z.ZodString;
|
|
13
|
+
type: z.ZodEnum<{
|
|
14
|
+
Numeric: "Numeric";
|
|
15
|
+
String: "String";
|
|
16
|
+
}>;
|
|
17
|
+
position: z.ZodNumber;
|
|
18
|
+
startByte: z.ZodOptional<z.ZodNumber>;
|
|
19
|
+
endByte: z.ZodOptional<z.ZodNumber>;
|
|
20
|
+
}, z.core.$strip>;
|
|
21
|
+
export declare const dataSourceSchema: z.ZodObject<{
|
|
22
|
+
type: z.ZodEnum<{
|
|
23
|
+
None: "None";
|
|
24
|
+
TM1CubeView: "TM1CubeView";
|
|
25
|
+
TM1DimensionSubset: "TM1DimensionSubset";
|
|
26
|
+
ASCII: "ASCII";
|
|
27
|
+
ODBC: "ODBC";
|
|
28
|
+
TM1Process: "TM1Process";
|
|
29
|
+
}>;
|
|
30
|
+
dataSourceNameForServer: z.ZodOptional<z.ZodString>;
|
|
31
|
+
dataSourceNameForClient: z.ZodOptional<z.ZodString>;
|
|
32
|
+
asciiDelimiterType: z.ZodOptional<z.ZodString>;
|
|
33
|
+
asciiDelimiterChar: z.ZodOptional<z.ZodString>;
|
|
34
|
+
asciiQuoteCharacter: z.ZodOptional<z.ZodString>;
|
|
35
|
+
asciiHeaderRecords: z.ZodOptional<z.ZodNumber>;
|
|
36
|
+
asciiDecimalSeparator: z.ZodOptional<z.ZodString>;
|
|
37
|
+
asciiThousandSeparator: z.ZodOptional<z.ZodString>;
|
|
38
|
+
usesUnicode: z.ZodOptional<z.ZodBoolean>;
|
|
39
|
+
userName: z.ZodOptional<z.ZodString>;
|
|
40
|
+
password: z.ZodOptional<z.ZodString>;
|
|
41
|
+
query: z.ZodOptional<z.ZodString>;
|
|
42
|
+
view: z.ZodOptional<z.ZodString>;
|
|
43
|
+
subset: z.ZodOptional<z.ZodString>;
|
|
44
|
+
}, z.core.$strip>;
|
|
45
|
+
//# sourceMappingURL=process-parts-schema.d.ts.map
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
// Shared Zod schemas for the deployable parts of a TI process (parameters,
|
|
3
|
+
// variables, datasource). Used to validate untrusted input at two boundaries:
|
|
4
|
+
// - tm1_check_process_code tool input (already Zod-validated by the SDK)
|
|
5
|
+
// - parseProcessFromGit, which parses a user-authored {name}.json file
|
|
6
|
+
// Keeping one definition prevents the git path from accepting shapes the tool
|
|
7
|
+
// path would reject. Field names/shapes mirror ProcessParameter / ProcessVariable
|
|
8
|
+
// / DataSource in ../types.ts — keep them in sync.
|
|
9
|
+
export const parameterSchema = z.object({
|
|
10
|
+
name: z.string(),
|
|
11
|
+
type: z.enum(["String", "Numeric"]),
|
|
12
|
+
defaultValue: z.union([z.string(), z.number()]),
|
|
13
|
+
prompt: z.string().optional(),
|
|
14
|
+
});
|
|
15
|
+
export const variableSchema = z.object({
|
|
16
|
+
name: z.string(),
|
|
17
|
+
type: z.enum(["String", "Numeric"]),
|
|
18
|
+
position: z.number(),
|
|
19
|
+
startByte: z.number().optional(),
|
|
20
|
+
endByte: z.number().optional(),
|
|
21
|
+
});
|
|
22
|
+
export const dataSourceSchema = z.object({
|
|
23
|
+
type: z.enum([
|
|
24
|
+
"None",
|
|
25
|
+
"TM1CubeView",
|
|
26
|
+
"TM1DimensionSubset",
|
|
27
|
+
"ASCII",
|
|
28
|
+
"ODBC",
|
|
29
|
+
"TM1Process",
|
|
30
|
+
]),
|
|
31
|
+
dataSourceNameForServer: z.string().optional(),
|
|
32
|
+
dataSourceNameForClient: z.string().optional(),
|
|
33
|
+
asciiDelimiterType: z.string().optional(),
|
|
34
|
+
asciiDelimiterChar: z.string().optional(),
|
|
35
|
+
asciiQuoteCharacter: z.string().optional(),
|
|
36
|
+
asciiHeaderRecords: z.number().optional(),
|
|
37
|
+
asciiDecimalSeparator: z.string().optional(),
|
|
38
|
+
asciiThousandSeparator: z.string().optional(),
|
|
39
|
+
usesUnicode: z.boolean().optional(),
|
|
40
|
+
userName: z.string().optional(),
|
|
41
|
+
password: z.string().optional(),
|
|
42
|
+
query: z.string().optional(),
|
|
43
|
+
view: z.string().optional(),
|
|
44
|
+
subset: z.string().optional(),
|
|
45
|
+
});
|
|
46
|
+
//# sourceMappingURL=process-parts-schema.js.map
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
export declare const TABS: readonly ["prolog", "metadata", "data", "epilog"];
|
|
2
|
+
export type Tab = (typeof TABS)[number];
|
|
3
|
+
export type ProcessCode = Partial<Record<Tab, string>>;
|
|
4
|
+
export interface RefIssue {
|
|
5
|
+
kind: "cube" | "dimension" | "element";
|
|
6
|
+
name: string;
|
|
7
|
+
/** For kind "element": the dimension it was looked up in. */
|
|
8
|
+
dimension?: string;
|
|
9
|
+
tab: Tab;
|
|
10
|
+
line: number;
|
|
11
|
+
context: string;
|
|
12
|
+
}
|
|
13
|
+
export interface ProcessRefReport {
|
|
14
|
+
cubeRefsScanned: number;
|
|
15
|
+
dimensionRefsScanned: number;
|
|
16
|
+
/** Distinct literal (dimension, element) pairs looked up. */
|
|
17
|
+
elementRefsScanned: number;
|
|
18
|
+
unresolved: number;
|
|
19
|
+
issues: RefIssue[];
|
|
20
|
+
/** Tabs that carried code and were scanned. */
|
|
21
|
+
tabsChecked: Tab[];
|
|
22
|
+
/**
|
|
23
|
+
* Object-name arguments passed as identifiers that no literal binding
|
|
24
|
+
* resolves (parameters, datasource variables, computed values). Those
|
|
25
|
+
* references were not checked.
|
|
26
|
+
*/
|
|
27
|
+
unresolvableArgs: number;
|
|
28
|
+
/** True when unresolvableArgs > 0 — the report does not cover every reference. */
|
|
29
|
+
partial: boolean;
|
|
30
|
+
}
|
|
31
|
+
/** What the check needs from the server: the object catalogue. */
|
|
32
|
+
export interface ObjectCatalogue {
|
|
33
|
+
cubes: {
|
|
34
|
+
list: () => Promise<Array<{
|
|
35
|
+
name: string;
|
|
36
|
+
}>>;
|
|
37
|
+
/** Needed for the element check; without it elements are not checked. */
|
|
38
|
+
getDimensionNames?: (cubeName: string) => Promise<string[]>;
|
|
39
|
+
};
|
|
40
|
+
dimensions: {
|
|
41
|
+
list: () => Promise<Array<{
|
|
42
|
+
name: string;
|
|
43
|
+
}>>;
|
|
44
|
+
};
|
|
45
|
+
elements?: {
|
|
46
|
+
exists: (dim: string, hierarchy: string, el: string) => Promise<boolean>;
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
type Found = Map<string, {
|
|
50
|
+
tab: Tab;
|
|
51
|
+
line: number;
|
|
52
|
+
context: string;
|
|
53
|
+
}>;
|
|
54
|
+
/** TM1 compares names ignoring case and spaces. */
|
|
55
|
+
export declare const tm1Key: (s: string) => string;
|
|
56
|
+
interface CellCall {
|
|
57
|
+
cube: string;
|
|
58
|
+
/** One entry per element argument: the literal, or null if not literal. */
|
|
59
|
+
elements: Array<string | null>;
|
|
60
|
+
tab: Tab;
|
|
61
|
+
line: number;
|
|
62
|
+
context: string;
|
|
63
|
+
}
|
|
64
|
+
interface Inserts {
|
|
65
|
+
/** tm1Key(dimension) → tm1Key(element) the code inserts. */
|
|
66
|
+
literal: Map<string, Set<string>>;
|
|
67
|
+
/** Dimensions the code inserts a computed element name into. */
|
|
68
|
+
dynamicDims: Set<string>;
|
|
69
|
+
/** True if some insert targets a dimension whose name is computed. */
|
|
70
|
+
dynamicAnyDim: boolean;
|
|
71
|
+
}
|
|
72
|
+
/** Parse-time half: collect the references, no server round-trip. */
|
|
73
|
+
export declare function scanProcessRefs(code: ProcessCode): {
|
|
74
|
+
cubeRefs: Found;
|
|
75
|
+
dimRefs: Found;
|
|
76
|
+
createdCubes: Set<string>;
|
|
77
|
+
createdDims: Set<string>;
|
|
78
|
+
tabsChecked: Tab[];
|
|
79
|
+
unresolvableArgs: number;
|
|
80
|
+
cellCalls: CellCall[];
|
|
81
|
+
inserts: Inserts;
|
|
82
|
+
};
|
|
83
|
+
/** Scan the code and resolve every reference against the server's catalogue. */
|
|
84
|
+
export declare function checkProcessRefs(catalogue: ObjectCatalogue, code: ProcessCode, opts?: {
|
|
85
|
+
includeControl?: boolean;
|
|
86
|
+
}): Promise<ProcessRefReport>;
|
|
87
|
+
export {};
|
|
88
|
+
//# sourceMappingURL=process-refs.d.ts.map
|