@theia/ai-ide 1.77.0-next.99 → 1.77.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/lib/browser/address-pr-review-command-contribution.js +15 -19
- package/lib/browser/address-pr-review-command-contribution.js.map +1 -1
- package/lib/browser/agent-mode-confirmation-service.js +20 -24
- package/lib/browser/agent-mode-confirmation-service.js.map +1 -1
- package/lib/browser/agents-md-agent.js +15 -19
- package/lib/browser/agents-md-agent.js.map +1 -1
- package/lib/browser/ai-allow-all-mode-chat-banner.js +32 -39
- package/lib/browser/ai-allow-all-mode-chat-banner.js.map +1 -1
- package/lib/browser/ai-allow-all-mode-chat-banner.spec.js +49 -51
- package/lib/browser/ai-allow-all-mode-chat-banner.spec.js.map +1 -1
- package/lib/browser/ai-aware-scm-commit-widget.d.ts +1 -1
- package/lib/browser/ai-aware-scm-commit-widget.d.ts.map +1 -1
- package/lib/browser/ai-aware-scm-commit-widget.js +36 -47
- package/lib/browser/ai-aware-scm-commit-widget.js.map +1 -1
- package/lib/browser/ai-configuration/agent-icon.js +5 -9
- package/lib/browser/ai-configuration/agent-icon.js.map +1 -1
- package/lib/browser/ai-configuration/ai-configuration-breadcrumbs-contribution.js +28 -37
- package/lib/browser/ai-configuration/ai-configuration-breadcrumbs-contribution.js.map +1 -1
- package/lib/browser/ai-configuration/ai-configuration-detail-widget.js +29 -39
- package/lib/browser/ai-configuration/ai-configuration-detail-widget.js.map +1 -1
- package/lib/browser/ai-configuration/ai-configuration-detail-widget.spec.js +22 -24
- package/lib/browser/ai-configuration/ai-configuration-detail-widget.spec.js.map +1 -1
- package/lib/browser/ai-configuration/ai-configuration-label-provider-contribution.js +12 -15
- package/lib/browser/ai-configuration/ai-configuration-label-provider-contribution.js.map +1 -1
- package/lib/browser/ai-configuration/ai-configuration-open-preference-renderer.js +20 -24
- package/lib/browser/ai-configuration/ai-configuration-open-preference-renderer.js.map +1 -1
- package/lib/browser/ai-configuration/ai-configuration-preference-ownership.spec.js +37 -39
- package/lib/browser/ai-configuration/ai-configuration-preference-ownership.spec.js.map +1 -1
- package/lib/browser/ai-configuration/ai-configuration-resource.js +3 -7
- package/lib/browser/ai-configuration/ai-configuration-resource.js.map +1 -1
- package/lib/browser/ai-configuration/ai-configuration-search-widget.js +20 -26
- package/lib/browser/ai-configuration/ai-configuration-search-widget.js.map +1 -1
- package/lib/browser/ai-configuration/ai-configuration-search.js +2 -5
- package/lib/browser/ai-configuration/ai-configuration-search.js.map +1 -1
- package/lib/browser/ai-configuration/ai-configuration-search.spec.js +15 -17
- package/lib/browser/ai-configuration/ai-configuration-search.spec.js.map +1 -1
- package/lib/browser/ai-configuration/ai-configuration-service.js +9 -12
- package/lib/browser/ai-configuration/ai-configuration-service.js.map +1 -1
- package/lib/browser/ai-configuration/ai-configuration-tree-model.js +7 -10
- package/lib/browser/ai-configuration/ai-configuration-tree-model.js.map +1 -1
- package/lib/browser/ai-configuration/ai-configuration-tree-nodes.js +14 -17
- package/lib/browser/ai-configuration/ai-configuration-tree-nodes.js.map +1 -1
- package/lib/browser/ai-configuration/ai-configuration-tree-nodes.spec.js +47 -49
- package/lib/browser/ai-configuration/ai-configuration-tree-nodes.spec.js.map +1 -1
- package/lib/browser/ai-configuration/ai-configuration-tree-widget.d.ts +1 -1
- package/lib/browser/ai-configuration/ai-configuration-tree-widget.d.ts.map +1 -1
- package/lib/browser/ai-configuration/ai-configuration-tree-widget.js +68 -79
- package/lib/browser/ai-configuration/ai-configuration-tree-widget.js.map +1 -1
- package/lib/browser/ai-configuration/ai-configuration-view-contribution.d.ts +2 -2
- package/lib/browser/ai-configuration/ai-configuration-view-contribution.d.ts.map +1 -1
- package/lib/browser/ai-configuration/ai-configuration-view-contribution.js +47 -54
- package/lib/browser/ai-configuration/ai-configuration-view-contribution.js.map +1 -1
- package/lib/browser/ai-configuration/ai-configuration-widget.d.ts +4 -4
- package/lib/browser/ai-configuration/ai-configuration-widget.d.ts.map +1 -1
- package/lib/browser/ai-configuration/ai-configuration-widget.js +45 -57
- package/lib/browser/ai-configuration/ai-configuration-widget.js.map +1 -1
- package/lib/browser/ai-configuration/categories/agent-capabilities-settings.d.ts +3 -0
- package/lib/browser/ai-configuration/categories/agent-capabilities-settings.d.ts.map +1 -1
- package/lib/browser/ai-configuration/categories/agent-capabilities-settings.js +34 -40
- package/lib/browser/ai-configuration/categories/agent-capabilities-settings.js.map +1 -1
- package/lib/browser/ai-configuration/categories/agent-capabilities-settings.spec.js +135 -140
- package/lib/browser/ai-configuration/categories/agent-capabilities-settings.spec.js.map +1 -1
- package/lib/browser/ai-configuration/categories/agent-chips.js +8 -13
- package/lib/browser/ai-configuration/categories/agent-chips.js.map +1 -1
- package/lib/browser/ai-configuration/categories/agent-detail-model.js +7 -10
- package/lib/browser/ai-configuration/categories/agent-detail-model.js.map +1 -1
- package/lib/browser/ai-configuration/categories/agent-detail-model.spec.js +13 -15
- package/lib/browser/ai-configuration/categories/agent-detail-model.spec.js.map +1 -1
- package/lib/browser/ai-configuration/categories/agent-detail-view.d.ts +1 -1
- package/lib/browser/ai-configuration/categories/agent-detail-view.d.ts.map +1 -1
- package/lib/browser/ai-configuration/categories/agent-detail-view.js +29 -34
- package/lib/browser/ai-configuration/categories/agent-detail-view.js.map +1 -1
- package/lib/browser/ai-configuration/categories/agents-configuration-category.d.ts +1 -1
- package/lib/browser/ai-configuration/categories/agents-configuration-category.d.ts.map +1 -1
- package/lib/browser/ai-configuration/categories/agents-configuration-category.js +106 -128
- package/lib/browser/ai-configuration/categories/agents-configuration-category.js.map +1 -1
- package/lib/browser/ai-configuration/categories/agents-configuration-category.spec.js +32 -34
- package/lib/browser/ai-configuration/categories/agents-configuration-category.spec.js.map +1 -1
- package/lib/browser/ai-configuration/categories/general-configuration-category.js +91 -101
- package/lib/browser/ai-configuration/categories/general-configuration-category.js.map +1 -1
- package/lib/browser/ai-configuration/categories/general-configuration-category.spec.js +38 -40
- package/lib/browser/ai-configuration/categories/general-configuration-category.spec.js.map +1 -1
- package/lib/browser/ai-configuration/categories/model-aliases-configuration-category.js +53 -63
- package/lib/browser/ai-configuration/categories/model-aliases-configuration-category.js.map +1 -1
- package/lib/browser/ai-configuration/categories/model-aliases-configuration-category.spec.js +25 -27
- package/lib/browser/ai-configuration/categories/model-aliases-configuration-category.spec.js.map +1 -1
- package/lib/browser/ai-configuration/categories/models-configuration-category.js +45 -56
- package/lib/browser/ai-configuration/categories/models-configuration-category.js.map +1 -1
- package/lib/browser/ai-configuration/categories/models-configuration-category.spec.js +31 -33
- package/lib/browser/ai-configuration/categories/models-configuration-category.spec.js.map +1 -1
- package/lib/browser/ai-configuration/categories/prompt-snippets-configuration-category.js +68 -76
- package/lib/browser/ai-configuration/categories/prompt-snippets-configuration-category.js.map +1 -1
- package/lib/browser/ai-configuration/categories/prompt-snippets-configuration-category.spec.js +55 -57
- package/lib/browser/ai-configuration/categories/prompt-snippets-configuration-category.spec.js.map +1 -1
- package/lib/browser/ai-configuration/categories/prompts-and-skills-configuration-category.js +85 -100
- package/lib/browser/ai-configuration/categories/prompts-and-skills-configuration-category.js.map +1 -1
- package/lib/browser/ai-configuration/categories/prompts-and-skills-configuration-category.spec.js +39 -41
- package/lib/browser/ai-configuration/categories/prompts-and-skills-configuration-category.spec.js.map +1 -1
- package/lib/browser/ai-configuration/categories/provider-model-discovery-section.js +44 -49
- package/lib/browser/ai-configuration/categories/provider-model-discovery-section.js.map +1 -1
- package/lib/browser/ai-configuration/categories/provider-model-discovery-section.spec.js +71 -74
- package/lib/browser/ai-configuration/categories/provider-model-discovery-section.spec.js.map +1 -1
- package/lib/browser/ai-configuration/categories/token-usage-configuration-category.js +34 -42
- package/lib/browser/ai-configuration/categories/token-usage-configuration-category.js.map +1 -1
- package/lib/browser/ai-configuration/categories/token-usage-configuration-category.spec.js +16 -18
- package/lib/browser/ai-configuration/categories/token-usage-configuration-category.spec.js.map +1 -1
- package/lib/browser/ai-configuration/categories/tools-configuration-category.js +101 -112
- package/lib/browser/ai-configuration/categories/tools-configuration-category.js.map +1 -1
- package/lib/browser/ai-configuration/categories/tools-configuration-category.spec.js +46 -48
- package/lib/browser/ai-configuration/categories/tools-configuration-category.spec.js.map +1 -1
- package/lib/browser/ai-configuration/categories/variables-configuration-category.js +54 -63
- package/lib/browser/ai-configuration/categories/variables-configuration-category.js.map +1 -1
- package/lib/browser/ai-configuration/categories/variables-configuration-category.spec.js +27 -29
- package/lib/browser/ai-configuration/categories/variables-configuration-category.spec.js.map +1 -1
- package/lib/browser/ai-configuration/components/agent-notification-settings.js +12 -16
- package/lib/browser/ai-configuration/components/agent-notification-settings.js.map +1 -1
- package/lib/browser/ai-configuration/language-model-renderer.js +25 -31
- package/lib/browser/ai-configuration/language-model-renderer.js.map +1 -1
- package/lib/browser/ai-configuration/language-model-renderer.spec.js +29 -32
- package/lib/browser/ai-configuration/language-model-renderer.spec.js.map +1 -1
- package/lib/browser/ai-first-perspective-contribution.js +18 -21
- package/lib/browser/ai-first-perspective-contribution.js.map +1 -1
- package/lib/browser/ai-getting-started-commands.js +3 -6
- package/lib/browser/ai-getting-started-commands.js.map +1 -1
- package/lib/browser/ai-getting-started-contribution.js +24 -30
- package/lib/browser/ai-getting-started-contribution.js.map +1 -1
- package/lib/browser/ai-getting-started-walkthrough.js +54 -58
- package/lib/browser/ai-getting-started-walkthrough.js.map +1 -1
- package/lib/browser/ai-getting-started-walkthrough.spec.js +32 -34
- package/lib/browser/ai-getting-started-walkthrough.spec.js.map +1 -1
- package/lib/browser/ai-ide-activation-service.js +25 -34
- package/lib/browser/ai-ide-activation-service.js.map +1 -1
- package/lib/browser/ai-sessions-view-contribution.d.ts +1 -1
- package/lib/browser/ai-sessions-view-contribution.d.ts.map +1 -1
- package/lib/browser/ai-sessions-view-contribution.js +28 -33
- package/lib/browser/ai-sessions-view-contribution.js.map +1 -1
- package/lib/browser/ai-sessions-widget.d.ts +3 -3
- package/lib/browser/ai-sessions-widget.d.ts.map +1 -1
- package/lib/browser/ai-sessions-widget.js +42 -55
- package/lib/browser/ai-sessions-widget.js.map +1 -1
- package/lib/browser/ai-terminal-functions.js +18 -24
- package/lib/browser/ai-terminal-functions.js.map +1 -1
- package/lib/browser/ai-walkthrough-context-keys.js +35 -45
- package/lib/browser/ai-walkthrough-context-keys.js.map +1 -1
- package/lib/browser/ai-walkthrough-context-keys.spec.js +34 -36
- package/lib/browser/ai-walkthrough-context-keys.spec.js.map +1 -1
- package/lib/browser/ai-workspace-restriction-contribution.js +11 -15
- package/lib/browser/ai-workspace-restriction-contribution.js.map +1 -1
- package/lib/browser/analyze-gh-ticket-command-contribution.js +19 -23
- package/lib/browser/analyze-gh-ticket-command-contribution.js.map +1 -1
- package/lib/browser/app-tester-chat-agent.js +45 -51
- package/lib/browser/app-tester-chat-agent.js.map +1 -1
- package/lib/browser/app-tester-chat-functions.d.ts +1 -1
- package/lib/browser/app-tester-chat-functions.d.ts.map +1 -1
- package/lib/browser/app-tester-chat-functions.js +29 -34
- package/lib/browser/app-tester-chat-functions.js.map +1 -1
- package/lib/browser/app-tester-prompt-template.js +42 -45
- package/lib/browser/app-tester-prompt-template.js.map +1 -1
- package/lib/browser/apptester-capability-contribution.js +13 -17
- package/lib/browser/apptester-capability-contribution.js.map +1 -1
- package/lib/browser/architect-agent.d.ts +2 -2
- package/lib/browser/architect-agent.d.ts.map +1 -1
- package/lib/browser/architect-agent.js +38 -44
- package/lib/browser/architect-agent.js.map +1 -1
- package/lib/browser/architect-prompt-template.js +84 -87
- package/lib/browser/architect-prompt-template.js.map +1 -1
- package/lib/browser/chat-session-item-action-contribution.js +15 -18
- package/lib/browser/chat-session-item-action-contribution.js.map +1 -1
- package/lib/browser/chat-session-item.d.ts +1 -1
- package/lib/browser/chat-session-item.d.ts.map +1 -1
- package/lib/browser/chat-session-item.js +25 -29
- package/lib/browser/chat-session-item.js.map +1 -1
- package/lib/browser/chat-session-list-components.js +9 -14
- package/lib/browser/chat-session-list-components.js.map +1 -1
- package/lib/browser/chat-session-list-service.d.ts +2 -2
- package/lib/browser/chat-session-list-service.d.ts.map +1 -1
- package/lib/browser/chat-session-list-service.js +33 -43
- package/lib/browser/chat-session-list-service.js.map +1 -1
- package/lib/browser/chat-session-list-service.spec.js +56 -58
- package/lib/browser/chat-session-list-service.spec.js.map +1 -1
- package/lib/browser/chat-session-tooltip.js +31 -35
- package/lib/browser/chat-session-tooltip.js.map +1 -1
- package/lib/browser/chat-sessions-welcome-message-provider.d.ts +3 -3
- package/lib/browser/chat-sessions-welcome-message-provider.d.ts.map +1 -1
- package/lib/browser/chat-sessions-welcome-message-provider.js +54 -70
- package/lib/browser/chat-sessions-welcome-message-provider.js.map +1 -1
- package/lib/browser/code-review-capability-contribution.js +13 -17
- package/lib/browser/code-review-capability-contribution.js.map +1 -1
- package/lib/browser/code-reviewer-agent.js +17 -21
- package/lib/browser/code-reviewer-agent.js.map +1 -1
- package/lib/browser/code-reviewer-prompt-template.js +5 -8
- package/lib/browser/code-reviewer-prompt-template.js.map +1 -1
- package/lib/browser/coder-agent.d.ts +2 -2
- package/lib/browser/coder-agent.d.ts.map +1 -1
- package/lib/browser/coder-agent.js +44 -50
- package/lib/browser/coder-agent.js.map +1 -1
- package/lib/browser/commit-message-agent.js +26 -32
- package/lib/browser/commit-message-agent.js.map +1 -1
- package/lib/browser/commit-message-agent.spec.js +25 -28
- package/lib/browser/commit-message-agent.spec.js.map +1 -1
- package/lib/browser/commit-message-command-contribution.d.ts +1 -1
- package/lib/browser/commit-message-command-contribution.d.ts.map +1 -1
- package/lib/browser/commit-message-command-contribution.js +21 -28
- package/lib/browser/commit-message-command-contribution.js.map +1 -1
- package/lib/browser/commit-message-commands.js +4 -7
- package/lib/browser/commit-message-commands.js.map +1 -1
- package/lib/browser/commit-message-prompt-template.js +9 -12
- package/lib/browser/commit-message-prompt-template.js.map +1 -1
- package/lib/browser/commit-message-runner.d.ts +2 -2
- package/lib/browser/commit-message-runner.d.ts.map +1 -1
- package/lib/browser/commit-message-runner.js +33 -41
- package/lib/browser/commit-message-runner.js.map +1 -1
- package/lib/browser/commit-message-runner.spec.js +65 -68
- package/lib/browser/commit-message-runner.spec.js.map +1 -1
- package/lib/browser/context-file-validation-service-impl.d.ts +1 -1
- package/lib/browser/context-file-validation-service-impl.d.ts.map +1 -1
- package/lib/browser/context-file-validation-service-impl.js +20 -26
- package/lib/browser/context-file-validation-service-impl.js.map +1 -1
- package/lib/browser/context-file-validation-service-impl.spec.js +77 -79
- package/lib/browser/context-file-validation-service-impl.spec.js.map +1 -1
- package/lib/browser/context-functions.js +27 -31
- package/lib/browser/context-functions.js.map +1 -1
- package/lib/browser/context-functions.spec.js +64 -66
- package/lib/browser/context-functions.spec.js.map +1 -1
- package/lib/browser/create-skill-agent.d.ts +1 -1
- package/lib/browser/create-skill-agent.d.ts.map +1 -1
- package/lib/browser/create-skill-agent.js +19 -23
- package/lib/browser/create-skill-agent.js.map +1 -1
- package/lib/browser/default-chat-agent-recommendation-service.js +16 -19
- package/lib/browser/default-chat-agent-recommendation-service.js.map +1 -1
- package/lib/browser/explore-agent.d.ts +1 -1
- package/lib/browser/explore-agent.d.ts.map +1 -1
- package/lib/browser/explore-agent.js +18 -22
- package/lib/browser/explore-agent.js.map +1 -1
- package/lib/browser/explore-prompt-template.js +5 -8
- package/lib/browser/explore-prompt-template.js.map +1 -1
- package/lib/browser/file-changeset-function.spec.js +12 -14
- package/lib/browser/file-changeset-function.spec.js.map +1 -1
- package/lib/browser/file-changeset-functions.d.ts +1 -1
- package/lib/browser/file-changeset-functions.d.ts.map +1 -1
- package/lib/browser/file-changeset-functions.js +134 -164
- package/lib/browser/file-changeset-functions.js.map +1 -1
- package/lib/browser/file-changeset-functions.spec.js +136 -138
- package/lib/browser/file-changeset-functions.spec.js.map +1 -1
- package/lib/browser/frontend-module.js +293 -295
- package/lib/browser/frontend-module.js.map +1 -1
- package/lib/browser/git-changes-tool.js +22 -26
- package/lib/browser/git-changes-tool.js.map +1 -1
- package/lib/browser/git-changes-tool.spec.js +52 -55
- package/lib/browser/git-changes-tool.spec.js.map +1 -1
- package/lib/browser/github-capability-contribution.js +14 -18
- package/lib/browser/github-capability-contribution.js.map +1 -1
- package/lib/browser/github-chat-agent.js +58 -67
- package/lib/browser/github-chat-agent.js.map +1 -1
- package/lib/browser/github-prompt-template.js +6 -9
- package/lib/browser/github-prompt-template.js.map +1 -1
- package/lib/browser/github-repo-variable-contribution.d.ts +1 -1
- package/lib/browser/github-repo-variable-contribution.d.ts.map +1 -1
- package/lib/browser/github-repo-variable-contribution.js +23 -30
- package/lib/browser/github-repo-variable-contribution.js.map +1 -1
- package/lib/browser/ide-chat-welcome-message-provider.js +59 -71
- package/lib/browser/ide-chat-welcome-message-provider.js.map +1 -1
- package/lib/browser/implement-gh-ticket-command-contribution.js +15 -19
- package/lib/browser/implement-gh-ticket-command-contribution.js.map +1 -1
- package/lib/browser/memory-capability-contribution.d.ts.map +1 -1
- package/lib/browser/memory-capability-contribution.js +21 -25
- package/lib/browser/memory-capability-contribution.js.map +1 -1
- package/lib/browser/memory-capability-contribution.spec.js +30 -32
- package/lib/browser/memory-capability-contribution.spec.js.map +1 -1
- package/lib/browser/memory-directory-variable-contribution.d.ts +1 -1
- package/lib/browser/memory-directory-variable-contribution.d.ts.map +1 -1
- package/lib/browser/memory-directory-variable-contribution.js +19 -24
- package/lib/browser/memory-directory-variable-contribution.js.map +1 -1
- package/lib/browser/memory-directory-variable-contribution.spec.js +28 -30
- package/lib/browser/memory-directory-variable-contribution.spec.js.map +1 -1
- package/lib/browser/mode-aware-chat-agent.js +9 -12
- package/lib/browser/mode-aware-chat-agent.js.map +1 -1
- package/lib/browser/multi-root-paths.spec.js +86 -88
- package/lib/browser/multi-root-paths.spec.js.map +1 -1
- package/lib/browser/open-editors-hint-contribution.js +10 -14
- package/lib/browser/open-editors-hint-contribution.js.map +1 -1
- package/lib/browser/remember-command-contribution.js +17 -21
- package/lib/browser/remember-command-contribution.js.map +1 -1
- package/lib/browser/review/pr-review-agent.js +17 -21
- package/lib/browser/review/pr-review-agent.js.map +1 -1
- package/lib/browser/review/pr-review-capability-contribution.js +41 -45
- package/lib/browser/review/pr-review-capability-contribution.js.map +1 -1
- package/lib/browser/review/pr-review-prompt-template.js +48 -51
- package/lib/browser/review/pr-review-prompt-template.js.map +1 -1
- package/lib/browser/shell-execution-capability-contribution.js +17 -21
- package/lib/browser/shell-execution-capability-contribution.js.map +1 -1
- package/lib/browser/skill-file-functions.js +27 -33
- package/lib/browser/skill-file-functions.js.map +1 -1
- package/lib/browser/skill-file-functions.spec.js +19 -21
- package/lib/browser/skill-file-functions.spec.js.map +1 -1
- package/lib/browser/summarize-session-command-contribution.d.ts +1 -1
- package/lib/browser/summarize-session-command-contribution.d.ts.map +1 -1
- package/lib/browser/summarize-session-command-contribution.js +38 -50
- package/lib/browser/summarize-session-command-contribution.js.map +1 -1
- package/lib/browser/task-background-summary-variable.js +17 -20
- package/lib/browser/task-background-summary-variable.js.map +1 -1
- package/lib/browser/task-context-file-storage-service.js +39 -51
- package/lib/browser/task-context-file-storage-service.js.map +1 -1
- package/lib/browser/task-context-file-storage-service.spec.js +41 -43
- package/lib/browser/task-context-file-storage-service.spec.js.map +1 -1
- package/lib/browser/task-context-functions.js +44 -52
- package/lib/browser/task-context-functions.js.map +1 -1
- package/lib/browser/template-preference-contribution.js +30 -37
- package/lib/browser/template-preference-contribution.js.map +1 -1
- package/lib/browser/test/tool-provider-cancellation-test-util.spec.js +8 -10
- package/lib/browser/test/tool-provider-cancellation-test-util.spec.js.map +1 -1
- package/lib/browser/todo-tool-renderer.d.ts +1 -1
- package/lib/browser/todo-tool-renderer.d.ts.map +1 -1
- package/lib/browser/todo-tool-renderer.js +42 -51
- package/lib/browser/todo-tool-renderer.js.map +1 -1
- package/lib/browser/todo-tool.js +8 -11
- package/lib/browser/todo-tool.js.map +1 -1
- package/lib/browser/todo-tool.spec.js +14 -16
- package/lib/browser/todo-tool.spec.js.map +1 -1
- package/lib/browser/user-interaction-tool-renderer.d.ts +1 -1
- package/lib/browser/user-interaction-tool-renderer.d.ts.map +1 -1
- package/lib/browser/user-interaction-tool-renderer.js +81 -95
- package/lib/browser/user-interaction-tool-renderer.js.map +1 -1
- package/lib/browser/user-interaction-tool.d.ts +2 -2
- package/lib/browser/user-interaction-tool.d.ts.map +1 -1
- package/lib/browser/user-interaction-tool.js +56 -65
- package/lib/browser/user-interaction-tool.js.map +1 -1
- package/lib/browser/user-interaction-tool.spec.js +118 -121
- package/lib/browser/user-interaction-tool.spec.js.map +1 -1
- package/lib/browser/workspace-functions.d.ts +1 -1
- package/lib/browser/workspace-functions.d.ts.map +1 -1
- package/lib/browser/workspace-functions.js +126 -155
- package/lib/browser/workspace-functions.js.map +1 -1
- package/lib/browser/workspace-functions.spec.js +607 -600
- package/lib/browser/workspace-functions.spec.js.map +1 -1
- package/lib/browser/workspace-launch-provider.d.ts +1 -1
- package/lib/browser/workspace-launch-provider.d.ts.map +1 -1
- package/lib/browser/workspace-launch-provider.js +46 -57
- package/lib/browser/workspace-launch-provider.js.map +1 -1
- package/lib/browser/workspace-launch-provider.spec.js +119 -122
- package/lib/browser/workspace-launch-provider.spec.js.map +1 -1
- package/lib/browser/workspace-search-provider.d.ts +1 -1
- package/lib/browser/workspace-search-provider.d.ts.map +1 -1
- package/lib/browser/workspace-search-provider.js +25 -32
- package/lib/browser/workspace-search-provider.js.map +1 -1
- package/lib/browser/workspace-search-provider.spec.js +35 -38
- package/lib/browser/workspace-search-provider.spec.js.map +1 -1
- package/lib/browser/workspace-task-provider.d.ts +1 -1
- package/lib/browser/workspace-task-provider.d.ts.map +1 -1
- package/lib/browser/workspace-task-provider.js +42 -51
- package/lib/browser/workspace-task-provider.js.map +1 -1
- package/lib/browser/workspace-task-provider.spec.js +102 -105
- package/lib/browser/workspace-task-provider.spec.js.map +1 -1
- package/lib/common/agent-ids.js +2 -5
- package/lib/common/agent-ids.js.map +1 -1
- package/lib/common/agents-md-prompt-template.js +38 -41
- package/lib/common/agents-md-prompt-template.js.map +1 -1
- package/lib/common/ai-configuration-preferences.js +5 -8
- package/lib/common/ai-configuration-preferences.js.map +1 -1
- package/lib/common/ai-ide-preferences.js +16 -19
- package/lib/common/ai-ide-preferences.js.map +1 -1
- package/lib/common/ai-terminal-functions.js +1 -4
- package/lib/common/ai-terminal-functions.js.map +1 -1
- package/lib/common/app-tester-chat-functions.js +4 -7
- package/lib/common/app-tester-chat-functions.js.map +1 -1
- package/lib/common/browser-automation-protocol.js +3 -6
- package/lib/common/browser-automation-protocol.js.map +1 -1
- package/lib/common/coder-replace-prompt-template.js +102 -108
- package/lib/common/coder-replace-prompt-template.js.map +1 -1
- package/lib/common/command-chat-agents.js +34 -40
- package/lib/common/command-chat-agents.js.map +1 -1
- package/lib/common/command-prompt-template.js +1 -4
- package/lib/common/command-prompt-template.js.map +1 -1
- package/lib/common/context-files-variable.js +17 -20
- package/lib/common/context-files-variable.js.map +1 -1
- package/lib/common/context-functions.js +3 -6
- package/lib/common/context-functions.js.map +1 -1
- package/lib/common/context-variables.js +2 -5
- package/lib/common/context-variables.js.map +1 -1
- package/lib/common/create-skill-prompt-template.js +22 -25
- package/lib/common/create-skill-prompt-template.js.map +1 -1
- package/lib/common/file-changeset-function-ids.js +8 -11
- package/lib/common/file-changeset-function-ids.js.map +1 -1
- package/lib/common/github-repo-protocol.js +2 -5
- package/lib/common/github-repo-protocol.js.map +1 -1
- package/lib/common/open-editors-hint-fragment-id.js +1 -4
- package/lib/common/open-editors-hint-fragment-id.js.map +1 -1
- package/lib/common/orchestrator-chat-agent.js +36 -42
- package/lib/common/orchestrator-chat-agent.js.map +1 -1
- package/lib/common/orchestrator-prompt-template.js +1 -4
- package/lib/common/orchestrator-prompt-template.js.map +1 -1
- package/lib/common/summarize-session-commands.js +2 -5
- package/lib/common/summarize-session-commands.js.map +1 -1
- package/lib/common/task-context-function-ids.js +5 -8
- package/lib/common/task-context-function-ids.js.map +1 -1
- package/lib/common/todo-tool.js +2 -6
- package/lib/common/todo-tool.js.map +1 -1
- package/lib/common/universal-chat-agent.js +17 -21
- package/lib/common/universal-chat-agent.js.map +1 -1
- package/lib/common/universal-prompt-template.js +6 -9
- package/lib/common/universal-prompt-template.js.map +1 -1
- package/lib/common/user-interaction-tool.js +11 -21
- package/lib/common/user-interaction-tool.js.map +1 -1
- package/lib/common/user-interaction-tool.spec.js +52 -54
- package/lib/common/user-interaction-tool.spec.js.map +1 -1
- package/lib/common/workspace-functions.js +13 -16
- package/lib/common/workspace-functions.js.map +1 -1
- package/lib/common/workspace-preferences.js +41 -44
- package/lib/common/workspace-preferences.js.map +1 -1
- package/lib/common/workspace-search-provider-util.js +3 -6
- package/lib/common/workspace-search-provider-util.js.map +1 -1
- package/lib/common/workspace-search-provider-util.spec.js +13 -15
- package/lib/common/workspace-search-provider-util.spec.js.map +1 -1
- package/lib/node/app-tester-agent/browser-automation-impl.d.ts +1 -1
- package/lib/node/app-tester-agent/browser-automation-impl.d.ts.map +1 -1
- package/lib/node/app-tester-agent/browser-automation-impl.js +7 -10
- package/lib/node/app-tester-agent/browser-automation-impl.js.map +1 -1
- package/lib/node/backend-module.js +21 -23
- package/lib/node/backend-module.js.map +1 -1
- package/lib/node/github-repo-service-impl.d.ts +1 -1
- package/lib/node/github-repo-service-impl.d.ts.map +1 -1
- package/lib/node/github-repo-service-impl.js +11 -15
- package/lib/node/github-repo-service-impl.js.map +1 -1
- package/lib/package.spec.d.ts +1 -0
- package/lib/package.spec.js +1 -1
- package/lib/package.spec.js.map +1 -1
- package/package.json +33 -25
- package/src/browser/address-pr-review-command-contribution.ts +1 -1
- package/src/browser/agent-mode-confirmation-service.ts +1 -1
- package/src/browser/agents-md-agent.ts +1 -1
- package/src/browser/ai-allow-all-mode-chat-banner.spec.ts +1 -1
- package/src/browser/ai-aware-scm-commit-widget.tsx +3 -3
- package/src/browser/ai-configuration/ai-configuration-breadcrumbs-contribution.ts +2 -2
- package/src/browser/ai-configuration/ai-configuration-detail-widget.spec.ts +1 -1
- package/src/browser/ai-configuration/ai-configuration-label-provider-contribution.ts +1 -1
- package/src/browser/ai-configuration/ai-configuration-open-preference-renderer.ts +1 -1
- package/src/browser/ai-configuration/ai-configuration-preference-ownership.spec.ts +6 -6
- package/src/browser/ai-configuration/ai-configuration-search.spec.ts +1 -1
- package/src/browser/ai-configuration/ai-configuration-tree-nodes.spec.ts +1 -1
- package/src/browser/ai-configuration/ai-configuration-tree-widget.tsx +3 -3
- package/src/browser/ai-configuration/ai-configuration-view-contribution.ts +2 -2
- package/src/browser/ai-configuration/ai-configuration-widget.tsx +5 -5
- package/src/browser/ai-configuration/categories/agent-capabilities-settings.spec.ts +9 -9
- package/src/browser/ai-configuration/categories/agent-capabilities-settings.tsx +5 -2
- package/src/browser/ai-configuration/categories/agent-chips.tsx +1 -1
- package/src/browser/ai-configuration/categories/agent-detail-model.spec.ts +1 -1
- package/src/browser/ai-configuration/categories/agent-detail-view.tsx +6 -6
- package/src/browser/ai-configuration/categories/agents-configuration-category.spec.ts +1 -1
- package/src/browser/ai-configuration/categories/agents-configuration-category.tsx +5 -5
- package/src/browser/ai-configuration/categories/general-configuration-category.spec.ts +2 -2
- package/src/browser/ai-configuration/categories/general-configuration-category.tsx +1 -1
- package/src/browser/ai-configuration/categories/model-aliases-configuration-category.spec.ts +1 -1
- package/src/browser/ai-configuration/categories/model-aliases-configuration-category.tsx +1 -1
- package/src/browser/ai-configuration/categories/models-configuration-category.spec.ts +1 -1
- package/src/browser/ai-configuration/categories/models-configuration-category.tsx +1 -1
- package/src/browser/ai-configuration/categories/prompt-snippets-configuration-category.spec.ts +1 -1
- package/src/browser/ai-configuration/categories/prompt-snippets-configuration-category.tsx +1 -1
- package/src/browser/ai-configuration/categories/prompts-and-skills-configuration-category.spec.ts +1 -1
- package/src/browser/ai-configuration/categories/prompts-and-skills-configuration-category.tsx +1 -1
- package/src/browser/ai-configuration/categories/provider-model-discovery-section.spec.tsx +1 -1
- package/src/browser/ai-configuration/categories/provider-model-discovery-section.tsx +1 -1
- package/src/browser/ai-configuration/categories/token-usage-configuration-category.spec.ts +1 -1
- package/src/browser/ai-configuration/categories/token-usage-configuration-category.tsx +1 -1
- package/src/browser/ai-configuration/categories/tools-configuration-category.spec.ts +1 -1
- package/src/browser/ai-configuration/categories/variables-configuration-category.spec.ts +1 -1
- package/src/browser/ai-configuration/categories/variables-configuration-category.tsx +1 -1
- package/src/browser/ai-configuration/language-model-renderer.spec.ts +1 -1
- package/src/browser/ai-first-perspective-contribution.ts +1 -1
- package/src/browser/ai-getting-started-contribution.ts +2 -2
- package/src/browser/ai-getting-started-walkthrough.spec.ts +2 -2
- package/src/browser/ai-getting-started-walkthrough.ts +3 -3
- package/src/browser/ai-ide-activation-service.ts +1 -1
- package/src/browser/ai-sessions-view-contribution.ts +1 -1
- package/src/browser/ai-sessions-widget.tsx +4 -4
- package/src/browser/ai-terminal-functions.ts +1 -1
- package/src/browser/ai-walkthrough-context-keys.spec.ts +1 -1
- package/src/browser/analyze-gh-ticket-command-contribution.ts +3 -3
- package/src/browser/app-tester-chat-agent.ts +2 -2
- package/src/browser/app-tester-chat-functions.ts +2 -2
- package/src/browser/app-tester-prompt-template.ts +2 -2
- package/src/browser/apptester-capability-contribution.ts +1 -1
- package/src/browser/architect-agent.ts +4 -4
- package/src/browser/architect-prompt-template.ts +6 -6
- package/src/browser/chat-session-item.tsx +2 -2
- package/src/browser/chat-session-list-service.spec.ts +2 -2
- package/src/browser/chat-session-list-service.ts +2 -2
- package/src/browser/chat-sessions-welcome-message-provider.tsx +5 -5
- package/src/browser/code-review-capability-contribution.ts +1 -1
- package/src/browser/code-reviewer-agent.ts +1 -1
- package/src/browser/coder-agent.ts +3 -3
- package/src/browser/commit-message-agent.spec.ts +2 -2
- package/src/browser/commit-message-agent.ts +1 -1
- package/src/browser/commit-message-command-contribution.ts +3 -3
- package/src/browser/commit-message-runner.spec.ts +3 -3
- package/src/browser/commit-message-runner.ts +2 -2
- package/src/browser/context-file-validation-service-impl.spec.ts +2 -2
- package/src/browser/context-file-validation-service-impl.ts +1 -1
- package/src/browser/context-functions.spec.ts +1 -1
- package/src/browser/context-functions.ts +1 -1
- package/src/browser/create-skill-agent.ts +2 -2
- package/src/browser/default-chat-agent-recommendation-service.ts +2 -2
- package/src/browser/explore-agent.ts +2 -2
- package/src/browser/file-changeset-function.spec.ts +1 -1
- package/src/browser/file-changeset-functions.spec.ts +3 -3
- package/src/browser/file-changeset-functions.ts +3 -3
- package/src/browser/frontend-module.ts +89 -89
- package/src/browser/git-changes-tool.spec.ts +1 -1
- package/src/browser/github-capability-contribution.ts +1 -1
- package/src/browser/github-chat-agent.ts +3 -3
- package/src/browser/github-repo-variable-contribution.ts +1 -1
- package/src/browser/ide-chat-welcome-message-provider.tsx +3 -3
- package/src/browser/implement-gh-ticket-command-contribution.ts +1 -1
- package/src/browser/memory-capability-contribution.spec.ts +4 -4
- package/src/browser/memory-capability-contribution.ts +5 -3
- package/src/browser/memory-directory-variable-contribution.spec.ts +1 -1
- package/src/browser/memory-directory-variable-contribution.ts +1 -1
- package/src/browser/multi-root-paths.spec.ts +2 -2
- package/src/browser/open-editors-hint-contribution.ts +1 -1
- package/src/browser/remember-command-contribution.ts +2 -2
- package/src/browser/review/pr-review-agent.ts +1 -1
- package/src/browser/review/pr-review-capability-contribution.ts +6 -6
- package/src/browser/review/pr-review-prompt-template.ts +4 -4
- package/src/browser/shell-execution-capability-contribution.ts +1 -1
- package/src/browser/skill-file-functions.spec.ts +1 -1
- package/src/browser/skill-file-functions.ts +1 -1
- package/src/browser/summarize-session-command-contribution.ts +2 -2
- package/src/browser/task-background-summary-variable.ts +1 -1
- package/src/browser/task-context-file-storage-service.spec.ts +1 -1
- package/src/browser/task-context-file-storage-service.ts +1 -1
- package/src/browser/task-context-functions.ts +1 -1
- package/src/browser/template-preference-contribution.ts +1 -1
- package/src/browser/todo-tool-renderer.tsx +1 -1
- package/src/browser/todo-tool.spec.ts +1 -1
- package/src/browser/todo-tool.ts +1 -1
- package/src/browser/user-interaction-tool-renderer.tsx +3 -3
- package/src/browser/user-interaction-tool.spec.ts +3 -3
- package/src/browser/user-interaction-tool.ts +2 -2
- package/src/browser/workspace-functions.spec.ts +16 -7
- package/src/browser/workspace-functions.ts +7 -6
- package/src/browser/workspace-launch-provider.spec.ts +2 -2
- package/src/browser/workspace-launch-provider.ts +2 -2
- package/src/browser/workspace-search-provider.spec.ts +2 -2
- package/src/browser/workspace-search-provider.ts +4 -4
- package/src/browser/workspace-task-provider.spec.ts +2 -2
- package/src/browser/workspace-task-provider.ts +2 -2
- package/src/common/agents-md-prompt-template.ts +4 -4
- package/src/common/coder-replace-prompt-template.ts +8 -8
- package/src/common/command-chat-agents.ts +1 -1
- package/src/common/context-files-variable.ts +1 -1
- package/src/common/create-skill-prompt-template.ts +4 -4
- package/src/common/orchestrator-chat-agent.ts +2 -2
- package/src/common/universal-chat-agent.ts +1 -1
- package/src/common/universal-prompt-template.ts +1 -1
- package/src/common/user-interaction-tool.spec.ts +1 -1
- package/src/common/workspace-search-provider-util.spec.ts +1 -1
- package/src/node/app-tester-agent/browser-automation-impl.ts +1 -1
- package/src/node/backend-module.ts +7 -7
- package/src/node/github-repo-service-impl.ts +1 -1
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
// *****************************************************************************
|
|
3
2
|
// Copyright (C) 2025 EclipseSource GmbH.
|
|
4
3
|
//
|
|
@@ -14,23 +13,22 @@
|
|
|
14
13
|
//
|
|
15
14
|
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
16
15
|
// *****************************************************************************
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
const with_workspace_service_defaults_1 = require("@theia/workspace/lib/browser/test/with-workspace-service-defaults");
|
|
16
|
+
import { enableJSDOM } from '@theia/core/lib/browser/test/jsdom';
|
|
17
|
+
let disableJSDOM = enableJSDOM();
|
|
18
|
+
import { FrontendApplicationConfigProvider } from '@theia/core/lib/browser/frontend-application-config-provider';
|
|
19
|
+
FrontendApplicationConfigProvider.set({});
|
|
20
|
+
import { expect } from 'chai';
|
|
21
|
+
import { Container } from '@theia/core/shared/inversify';
|
|
22
|
+
import { URI, PreferenceService, ILogger } from '@theia/core';
|
|
23
|
+
import { FileService } from '@theia/filesystem/lib/browser/file-service';
|
|
24
|
+
import { WorkspaceService } from '@theia/workspace/lib/browser/workspace-service';
|
|
25
|
+
import { ContextFileValidationService, FileValidationState } from '@theia/ai-chat/lib/browser/context-file-validation-service';
|
|
26
|
+
import { ContextFileValidationServiceImpl } from './context-file-validation-service-impl.js';
|
|
27
|
+
import { WorkspaceFunctionScope } from './workspace-functions.js';
|
|
28
|
+
import { AiConfigurationService } from '@theia/ai-core';
|
|
29
|
+
import { EnvVariablesServer } from '@theia/core/lib/common/env-variables';
|
|
30
|
+
import { MockLogger } from '@theia/core/lib/common/test/mock-logger';
|
|
31
|
+
import { withWorkspaceServiceDefaults } from '@theia/workspace/lib/browser/test/with-workspace-service-defaults';
|
|
34
32
|
disableJSDOM();
|
|
35
33
|
describe('ContextFileValidationService', () => {
|
|
36
34
|
let container;
|
|
@@ -38,7 +36,7 @@ describe('ContextFileValidationService', () => {
|
|
|
38
36
|
let mockFileService;
|
|
39
37
|
let mockWorkspaceService;
|
|
40
38
|
let mockPreferenceService;
|
|
41
|
-
const workspaceRoot = new
|
|
39
|
+
const workspaceRoot = new URI('file:///home/user/workspace');
|
|
42
40
|
// Store URIs as actual URI strings, exactly as URI.toString() would produce them
|
|
43
41
|
const existingFiles = new Map([
|
|
44
42
|
// Files inside workspace
|
|
@@ -55,14 +53,14 @@ describe('ContextFileValidationService', () => {
|
|
|
55
53
|
['file:///tmp/temporary-file.log', true]
|
|
56
54
|
]);
|
|
57
55
|
before(() => {
|
|
58
|
-
disableJSDOM =
|
|
56
|
+
disableJSDOM = enableJSDOM();
|
|
59
57
|
});
|
|
60
58
|
after(() => {
|
|
61
59
|
disableJSDOM();
|
|
62
60
|
});
|
|
63
61
|
beforeEach(async () => {
|
|
64
|
-
container = new
|
|
65
|
-
container.bind(
|
|
62
|
+
container = new Container();
|
|
63
|
+
container.bind(ILogger).to(MockLogger).inSingletonScope();
|
|
66
64
|
// Mock WorkspaceService
|
|
67
65
|
mockWorkspaceService = {
|
|
68
66
|
tryGetRoots: () => [{
|
|
@@ -100,132 +98,132 @@ describe('ContextFileValidationService', () => {
|
|
|
100
98
|
mockPreferenceService = {
|
|
101
99
|
get: () => false
|
|
102
100
|
};
|
|
103
|
-
container.bind(
|
|
104
|
-
container.bind(
|
|
105
|
-
container.bind(
|
|
106
|
-
container.bind(
|
|
101
|
+
container.bind(FileService).toConstantValue(mockFileService);
|
|
102
|
+
container.bind(WorkspaceService).toConstantValue(withWorkspaceServiceDefaults(mockWorkspaceService));
|
|
103
|
+
container.bind(PreferenceService).toConstantValue(mockPreferenceService);
|
|
104
|
+
container.bind(AiConfigurationService).toConstantValue({
|
|
107
105
|
get: (_name, fallback) => fallback,
|
|
108
106
|
ready: Promise.resolve(),
|
|
109
107
|
onDidChangeTrust: () => ({ dispose: () => { } })
|
|
110
108
|
});
|
|
111
|
-
container.bind(
|
|
109
|
+
container.bind(EnvVariablesServer).toConstantValue({
|
|
112
110
|
getHomeDirUri: async () => 'file:///home/user',
|
|
113
111
|
getExecPath: async () => '',
|
|
114
112
|
getVariables: async () => [],
|
|
115
113
|
getValue: async () => undefined,
|
|
116
114
|
getConfigDirUri: async () => 'file:///home/user/.config'
|
|
117
115
|
});
|
|
118
|
-
container.bind(
|
|
119
|
-
container.bind(
|
|
120
|
-
container.bind(
|
|
121
|
-
validationService = await container.getAsync(
|
|
116
|
+
container.bind(WorkspaceFunctionScope).toSelf();
|
|
117
|
+
container.bind(ContextFileValidationServiceImpl).toSelf();
|
|
118
|
+
container.bind(ContextFileValidationService).toService(ContextFileValidationServiceImpl);
|
|
119
|
+
validationService = await container.getAsync(ContextFileValidationService);
|
|
122
120
|
});
|
|
123
121
|
describe('validateFile with relative paths', () => {
|
|
124
122
|
it('should validate existing file with relative path', async () => {
|
|
125
123
|
const result = await validationService.validateFile('src/index.tsx');
|
|
126
|
-
|
|
124
|
+
expect(result.state).to.equal(FileValidationState.VALID);
|
|
127
125
|
});
|
|
128
126
|
it('should reject non-existing file with relative path', async () => {
|
|
129
127
|
const result = await validationService.validateFile('src/missing.tsx');
|
|
130
|
-
|
|
128
|
+
expect(result.state).to.equal(FileValidationState.INVALID_NOT_FOUND);
|
|
131
129
|
});
|
|
132
130
|
it('should validate nested file with relative path', async () => {
|
|
133
131
|
const result = await validationService.validateFile('src/components/Button.tsx');
|
|
134
|
-
|
|
132
|
+
expect(result.state).to.equal(FileValidationState.VALID);
|
|
135
133
|
});
|
|
136
134
|
it('should validate file in root with relative path', async () => {
|
|
137
135
|
const result = await validationService.validateFile('package.json');
|
|
138
|
-
|
|
136
|
+
expect(result.state).to.equal(FileValidationState.VALID);
|
|
139
137
|
});
|
|
140
138
|
});
|
|
141
139
|
describe('validateFile with absolute file paths', () => {
|
|
142
140
|
it('should validate existing file with absolute path within workspace', async () => {
|
|
143
141
|
const result = await validationService.validateFile('/home/user/workspace/src/index.tsx');
|
|
144
|
-
|
|
142
|
+
expect(result.state).to.equal(FileValidationState.VALID);
|
|
145
143
|
});
|
|
146
144
|
it('should reject non-existing file with absolute path within workspace', async () => {
|
|
147
145
|
const result = await validationService.validateFile('/home/user/workspace/src/missing.tsx');
|
|
148
|
-
|
|
146
|
+
expect(result.state).to.equal(FileValidationState.INVALID_NOT_FOUND);
|
|
149
147
|
});
|
|
150
148
|
it('should reject existing file with absolute path outside workspace (/etc/passwd)', async () => {
|
|
151
149
|
const result = await validationService.validateFile('/etc/passwd');
|
|
152
|
-
|
|
150
|
+
expect(result.state).to.equal(FileValidationState.INVALID_NOT_FOUND);
|
|
153
151
|
});
|
|
154
152
|
it('should reject existing file with absolute path outside workspace (/etc/hosts)', async () => {
|
|
155
153
|
const result = await validationService.validateFile('/etc/hosts');
|
|
156
|
-
|
|
154
|
+
expect(result.state).to.equal(FileValidationState.INVALID_NOT_FOUND);
|
|
157
155
|
});
|
|
158
156
|
it('should reject existing file with absolute path in other user directory', async () => {
|
|
159
157
|
const result = await validationService.validateFile('/home/other-user/secret.txt');
|
|
160
|
-
|
|
158
|
+
expect(result.state).to.equal(FileValidationState.INVALID_NOT_FOUND);
|
|
161
159
|
});
|
|
162
160
|
it('should reject existing file with absolute path in /tmp', async () => {
|
|
163
161
|
const result = await validationService.validateFile('/tmp/temporary-file.log');
|
|
164
|
-
|
|
162
|
+
expect(result.state).to.equal(FileValidationState.INVALID_NOT_FOUND);
|
|
165
163
|
});
|
|
166
164
|
it('should reject non-existing file with absolute path outside workspace', async () => {
|
|
167
165
|
const result = await validationService.validateFile('/var/log/nonexistent.log');
|
|
168
|
-
|
|
166
|
+
expect(result.state).to.equal(FileValidationState.INVALID_NOT_FOUND);
|
|
169
167
|
});
|
|
170
168
|
it('should validate nested file with absolute path within workspace', async () => {
|
|
171
169
|
const result = await validationService.validateFile('/home/user/workspace/src/components/Button.tsx');
|
|
172
|
-
|
|
170
|
+
expect(result.state).to.equal(FileValidationState.VALID);
|
|
173
171
|
});
|
|
174
172
|
});
|
|
175
173
|
describe('validateFile with file:// URIs', () => {
|
|
176
174
|
it('should validate existing file with file:// URI within workspace', async () => {
|
|
177
175
|
const result = await validationService.validateFile('file:///home/user/workspace/src/index.tsx');
|
|
178
|
-
|
|
176
|
+
expect(result.state).to.equal(FileValidationState.VALID);
|
|
179
177
|
});
|
|
180
178
|
it('should reject non-existing file with file:// URI within workspace', async () => {
|
|
181
179
|
const result = await validationService.validateFile('file:///home/user/workspace/src/missing.tsx');
|
|
182
|
-
|
|
180
|
+
expect(result.state).to.equal(FileValidationState.INVALID_NOT_FOUND);
|
|
183
181
|
});
|
|
184
182
|
it('should reject existing file with file:// URI outside workspace (/etc/passwd)', async () => {
|
|
185
183
|
const result = await validationService.validateFile('file:///etc/passwd');
|
|
186
|
-
|
|
184
|
+
expect(result.state).to.equal(FileValidationState.INVALID_NOT_FOUND);
|
|
187
185
|
});
|
|
188
186
|
it('should reject existing file with file:// URI outside workspace (/etc/hosts)', async () => {
|
|
189
187
|
const result = await validationService.validateFile('file:///etc/hosts');
|
|
190
|
-
|
|
188
|
+
expect(result.state).to.equal(FileValidationState.INVALID_NOT_FOUND);
|
|
191
189
|
});
|
|
192
190
|
it('should reject existing file with file:// URI in other user directory', async () => {
|
|
193
191
|
const result = await validationService.validateFile('file:///home/other-user/secret.txt');
|
|
194
|
-
|
|
192
|
+
expect(result.state).to.equal(FileValidationState.INVALID_NOT_FOUND);
|
|
195
193
|
});
|
|
196
194
|
it('should reject existing file with file:// URI in /tmp', async () => {
|
|
197
195
|
const result = await validationService.validateFile('file:///tmp/temporary-file.log');
|
|
198
|
-
|
|
196
|
+
expect(result.state).to.equal(FileValidationState.INVALID_NOT_FOUND);
|
|
199
197
|
});
|
|
200
198
|
it('should reject non-existing file with file:// URI outside workspace', async () => {
|
|
201
199
|
const result = await validationService.validateFile('file:///var/log/nonexistent.log');
|
|
202
|
-
|
|
200
|
+
expect(result.state).to.equal(FileValidationState.INVALID_NOT_FOUND);
|
|
203
201
|
});
|
|
204
202
|
it('should validate file at workspace root with file:// URI', async () => {
|
|
205
203
|
const result = await validationService.validateFile('file:///home/user/workspace/package.json');
|
|
206
|
-
|
|
204
|
+
expect(result.state).to.equal(FileValidationState.VALID);
|
|
207
205
|
});
|
|
208
206
|
});
|
|
209
207
|
describe('validateFile with URI objects', () => {
|
|
210
208
|
it('should validate existing file with URI object within workspace', async () => {
|
|
211
|
-
const uri = new
|
|
209
|
+
const uri = new URI('file:///home/user/workspace/src/index.tsx');
|
|
212
210
|
const result = await validationService.validateFile(uri);
|
|
213
|
-
|
|
211
|
+
expect(result.state).to.equal(FileValidationState.VALID);
|
|
214
212
|
});
|
|
215
213
|
it('should reject non-existing file with URI object within workspace', async () => {
|
|
216
|
-
const uri = new
|
|
214
|
+
const uri = new URI('file:///home/user/workspace/src/missing.tsx');
|
|
217
215
|
const result = await validationService.validateFile(uri);
|
|
218
|
-
|
|
216
|
+
expect(result.state).to.equal(FileValidationState.INVALID_NOT_FOUND);
|
|
219
217
|
});
|
|
220
218
|
it('should reject existing file with URI object outside workspace', async () => {
|
|
221
|
-
const uri = new
|
|
219
|
+
const uri = new URI('file:///etc/passwd');
|
|
222
220
|
const result = await validationService.validateFile(uri);
|
|
223
|
-
|
|
221
|
+
expect(result.state).to.equal(FileValidationState.INVALID_NOT_FOUND);
|
|
224
222
|
});
|
|
225
223
|
it('should reject another existing file with URI object outside workspace', async () => {
|
|
226
|
-
const uri = new
|
|
224
|
+
const uri = new URI('file:///home/other-user/secret.txt');
|
|
227
225
|
const result = await validationService.validateFile(uri);
|
|
228
|
-
|
|
226
|
+
expect(result.state).to.equal(FileValidationState.INVALID_NOT_FOUND);
|
|
229
227
|
});
|
|
230
228
|
});
|
|
231
229
|
describe('validateFile with no workspace', () => {
|
|
@@ -235,19 +233,19 @@ describe('ContextFileValidationService', () => {
|
|
|
235
233
|
});
|
|
236
234
|
it('should reject any file when no workspace is open', async () => {
|
|
237
235
|
const result = await validationService.validateFile('src/index.tsx');
|
|
238
|
-
|
|
236
|
+
expect(result.state).to.equal(FileValidationState.INVALID_NOT_FOUND);
|
|
239
237
|
});
|
|
240
238
|
it('should reject absolute path when no workspace is open', async () => {
|
|
241
239
|
const result = await validationService.validateFile('/home/user/file.txt');
|
|
242
|
-
|
|
240
|
+
expect(result.state).to.equal(FileValidationState.INVALID_NOT_FOUND);
|
|
243
241
|
});
|
|
244
242
|
it('should reject file:// URI when no workspace is open', async () => {
|
|
245
243
|
const result = await validationService.validateFile('file:///home/user/file.txt');
|
|
246
|
-
|
|
244
|
+
expect(result.state).to.equal(FileValidationState.INVALID_NOT_FOUND);
|
|
247
245
|
});
|
|
248
246
|
});
|
|
249
247
|
describe('validateFile with multiple workspace roots', () => {
|
|
250
|
-
const workspaceRoot2 = new
|
|
248
|
+
const workspaceRoot2 = new URI('file:///home/user/other-project');
|
|
251
249
|
beforeEach(async () => {
|
|
252
250
|
// Override mock to return multiple workspace roots
|
|
253
251
|
mockWorkspaceService.tryGetRoots = () => [
|
|
@@ -283,27 +281,27 @@ describe('ContextFileValidationService', () => {
|
|
|
283
281
|
it('should validate file in first workspace root', async () => {
|
|
284
282
|
// Use root-prefixed path since resolveRelativePath requires it in multi-root
|
|
285
283
|
const result = await validationService.validateFile('workspace/src/index.tsx');
|
|
286
|
-
|
|
284
|
+
expect(result.state).to.equal(FileValidationState.VALID);
|
|
287
285
|
});
|
|
288
286
|
it('should validate file in second workspace root with relative path', async () => {
|
|
289
287
|
// Use root-prefixed path since resolveRelativePath requires it in multi-root
|
|
290
288
|
const result = await validationService.validateFile('other-project/index.js');
|
|
291
289
|
// With multi-root support, files in any root are valid
|
|
292
|
-
|
|
290
|
+
expect(result.state).to.equal(FileValidationState.VALID);
|
|
293
291
|
});
|
|
294
292
|
it('should validate file in second workspace root with absolute path', async () => {
|
|
295
293
|
const result = await validationService.validateFile('/home/user/other-project/index.js');
|
|
296
294
|
// With multi-root support, files in any root are valid
|
|
297
|
-
|
|
295
|
+
expect(result.state).to.equal(FileValidationState.VALID);
|
|
298
296
|
});
|
|
299
297
|
it('should validate file in second workspace root with file:// URI', async () => {
|
|
300
298
|
const result = await validationService.validateFile('file:///home/user/other-project/lib/utils.js');
|
|
301
299
|
// With multi-root support, files in any root are valid
|
|
302
|
-
|
|
300
|
+
expect(result.state).to.equal(FileValidationState.VALID);
|
|
303
301
|
});
|
|
304
302
|
it('should still reject files outside both workspace roots', async () => {
|
|
305
303
|
const result = await validationService.validateFile('/etc/passwd');
|
|
306
|
-
|
|
304
|
+
expect(result.state).to.equal(FileValidationState.INVALID_NOT_FOUND);
|
|
307
305
|
});
|
|
308
306
|
});
|
|
309
307
|
describe('validateFile error handling', () => {
|
|
@@ -312,13 +310,13 @@ describe('ContextFileValidationService', () => {
|
|
|
312
310
|
throw new Error('Permission denied');
|
|
313
311
|
};
|
|
314
312
|
const result = await validationService.validateFile('src/index.tsx');
|
|
315
|
-
|
|
313
|
+
expect(result.state).to.equal(FileValidationState.INVALID_NOT_FOUND);
|
|
316
314
|
});
|
|
317
315
|
it('should handle Windows-style paths', async () => {
|
|
318
316
|
// Add a Windows path to existing files
|
|
319
317
|
// Note: URI encoding will convert 'c:' to 'c%3A'
|
|
320
|
-
const windowsRoot = new
|
|
321
|
-
const windowsFile = new
|
|
318
|
+
const windowsRoot = new URI('file:///c:/Users/user/project');
|
|
319
|
+
const windowsFile = new URI('file:///c:/Users/user/project/file.txt');
|
|
322
320
|
existingFiles.set(windowsFile.toString(), true);
|
|
323
321
|
// Override workspace to use Windows path
|
|
324
322
|
mockWorkspaceService.tryGetRoots = () => [{
|
|
@@ -326,7 +324,7 @@ describe('ContextFileValidationService', () => {
|
|
|
326
324
|
isDirectory: true
|
|
327
325
|
}];
|
|
328
326
|
const result = await validationService.validateFile('file:///c:/Users/user/project/file.txt');
|
|
329
|
-
|
|
327
|
+
expect(result.state).to.equal(FileValidationState.VALID);
|
|
330
328
|
// Clean up
|
|
331
329
|
existingFiles.delete(windowsFile.toString());
|
|
332
330
|
});
|
|
@@ -336,7 +334,7 @@ describe('ContextFileValidationService', () => {
|
|
|
336
334
|
existingFiles.set(windowsSystemFile, true);
|
|
337
335
|
// Keep workspace as Linux for this test
|
|
338
336
|
const result = await validationService.validateFile('file:///c:/Windows/System32/config/sam');
|
|
339
|
-
|
|
337
|
+
expect(result.state).to.equal(FileValidationState.INVALID_NOT_FOUND);
|
|
340
338
|
// Clean up
|
|
341
339
|
existingFiles.delete(windowsSystemFile);
|
|
342
340
|
});
|
|
@@ -344,30 +342,30 @@ describe('ContextFileValidationService', () => {
|
|
|
344
342
|
describe('edge cases', () => {
|
|
345
343
|
it('should handle paths with special characters', async () => {
|
|
346
344
|
const result = await validationService.validateFile('file:///home/user/workspace/src/file%20with%20spaces.tsx');
|
|
347
|
-
|
|
345
|
+
expect(result.state).to.equal(FileValidationState.VALID);
|
|
348
346
|
});
|
|
349
347
|
it('should handle paths with normalized separators', async () => {
|
|
350
348
|
const result = await validationService.validateFile('src\\components\\Button.tsx');
|
|
351
|
-
|
|
349
|
+
expect(result.state).to.equal(FileValidationState.VALID);
|
|
352
350
|
});
|
|
353
351
|
it('should reject empty path', async () => {
|
|
354
352
|
const result = await validationService.validateFile('');
|
|
355
|
-
|
|
353
|
+
expect(result.state).to.equal(FileValidationState.INVALID_NOT_FOUND);
|
|
356
354
|
});
|
|
357
355
|
it('should reject parent directory references in relative paths', async () => {
|
|
358
356
|
// Parent directory references are not allowed for security and clarity
|
|
359
357
|
const result = await validationService.validateFile('src/../config.json');
|
|
360
|
-
|
|
358
|
+
expect(result.state).to.equal(FileValidationState.INVALID_NOT_FOUND);
|
|
361
359
|
});
|
|
362
360
|
it('should reject path traversal attempts with parent directory references', async () => {
|
|
363
361
|
// Path traversal attempts should be rejected
|
|
364
362
|
const result = await validationService.validateFile('../../../../../../etc/passwd');
|
|
365
|
-
|
|
363
|
+
expect(result.state).to.equal(FileValidationState.INVALID_NOT_FOUND);
|
|
366
364
|
});
|
|
367
365
|
it('should reject absolute paths with parent directory references', async () => {
|
|
368
366
|
// Even absolute paths with .. should be rejected for consistency
|
|
369
367
|
const result = await validationService.validateFile('/home/user/workspace/src/../config.json');
|
|
370
|
-
|
|
368
|
+
expect(result.state).to.equal(FileValidationState.INVALID_NOT_FOUND);
|
|
371
369
|
});
|
|
372
370
|
});
|
|
373
371
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-file-validation-service-impl.spec.js","sourceRoot":"","sources":["../../src/browser/context-file-validation-service-impl.spec.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;AAEhF,8DAAiE;AACjE,IAAI,YAAY,GAAG,IAAA,mBAAW,GAAE,CAAC;AACjC,uHAAiH;AACjH,wEAAiC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AAE1C,+BAA8B;AAC9B,4DAAyD;AACzD,sCAA8D;AAC9D,6EAAyE;AACzE,sFAAkF;AAElF,gHAA+H;AAC/H,iGAA0F;AAC1F,+DAA+D;AAC/D,4CAAwD;AACxD,wEAA0E;AAC1E,yEAAqE;AACrE,uHAAiH;AAEjH,YAAY,EAAE,CAAC;AAEf,QAAQ,CAAC,8BAA8B,EAAE,GAAG,EAAE;IAC1C,IAAI,SAAoB,CAAC;IACzB,IAAI,iBAA+C,CAAC;IACpD,IAAI,eAA4B,CAAC;IACjC,IAAI,oBAAsC,CAAC;IAC3C,IAAI,qBAAwC,CAAC;IAE7C,MAAM,aAAa,GAAG,IAAI,UAAG,CAAC,6BAA6B,CAAC,CAAC;IAE7D,iFAAiF;IACjF,MAAM,aAAa,GAAG,IAAI,GAAG,CAAkB;QAC3C,yBAAyB;QACzB,CAAC,2CAA2C,EAAE,IAAI,CAAC;QACnD,CAAC,0CAA0C,EAAE,IAAI,CAAC;QAClD,CAAC,uCAAuC,EAAE,IAAI,CAAC;QAC/C,CAAC,uDAAuD,EAAE,IAAI,CAAC;QAC/D,CAAC,yCAAyC,EAAE,IAAI,CAAC;QACjD,CAAC,0DAA0D,EAAE,IAAI,CAAC;QAClE,+DAA+D;QAC/D,CAAC,oBAAoB,EAAE,IAAI,CAAC;QAC5B,CAAC,mBAAmB,EAAE,IAAI,CAAC;QAC3B,CAAC,oCAAoC,EAAE,IAAI,CAAC;QAC5C,CAAC,gCAAgC,EAAE,IAAI,CAAC;KAC3C,CAAC,CAAC;IAEH,MAAM,CAAC,GAAG,EAAE;QACR,YAAY,GAAG,IAAA,mBAAW,GAAE,CAAC;IACjC,CAAC,CAAC,CAAC;IAEH,KAAK,CAAC,GAAG,EAAE;QACP,YAAY,EAAE,CAAC;IACnB,CAAC,CAAC,CAAC;IAEH,UAAU,CAAC,KAAK,IAAI,EAAE;QAClB,SAAS,GAAG,IAAI,qBAAS,EAAE,CAAC;QAC5B,SAAS,CAAC,IAAI,CAAC,cAAO,CAAC,CAAC,EAAE,CAAC,wBAAU,CAAC,CAAC,gBAAgB,EAAE,CAAC;QAC1D,wBAAwB;QACxB,oBAAoB,GAAG;YACnB,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC;oBAChB,QAAQ,EAAE,aAAa;oBACvB,WAAW,EAAE,IAAI;iBACR,CAAC;YACd,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;oBACpB,QAAQ,EAAE,aAAa;oBACvB,WAAW,EAAE,IAAI;iBACR,CAAC,CAAC;YACf,kBAAkB,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC;SACtB,CAAC;QAEjC,mBAAmB;QACnB,eAAe,GAAG;YACd,MAAM,EAAE,KAAK,EAAE,GAAQ,EAAE,EAAE;gBACvB,MAAM,aAAa,GAAG,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;gBAC3C,MAAM,mBAAmB,GAAG,GAAG,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,QAAQ,EAAE,CAAC;gBACnE,MAAM,SAAS,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC;gBAEjC,MAAM,MAAM,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,IAAI,CAAC;oBAClF,CAAC,aAAa,CAAC,GAAG,CAAC,mBAAmB,CAAC,IAAI,aAAa,CAAC,GAAG,CAAC,mBAAmB,CAAC,KAAK,IAAI,CAAC,CAAC;gBAChG,OAAO,MAAM,CAAC;YAClB,CAAC;YACD,OAAO,EAAE,KAAK,EAAE,GAAQ,EAAE,EAAE;gBACxB,MAAM,SAAS,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC;gBACjC,IAAI,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,IAAI,EAAE,CAAC;oBACxE,OAAO;wBACH,QAAQ,EAAE,GAAG;wBACb,WAAW,EAAE,KAAK;qBACT,CAAC;gBAClB,CAAC;gBACD,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC;YACtC,CAAC;SACsB,CAAC;QAE5B,yBAAyB;QACzB,qBAAqB,GAAG;YACpB,GAAG,EAAE,GAAG,EAAE,CAAC,KAAK;SACa,CAAC;QAElC,SAAS,CAAC,IAAI,CAAC,0BAAW,CAAC,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC;QAC7D,SAAS,CAAC,IAAI,CAAC,oCAAgB,CAAC,CAAC,eAAe,CAAC,IAAA,8DAA4B,EAAC,oBAAoB,CAAC,CAAC,CAAC;QACrG,SAAS,CAAC,IAAI,CAAC,wBAAiB,CAAC,CAAC,eAAe,CAAC,qBAAqB,CAAC,CAAC;QACzE,SAAS,CAAC,IAAI,CAAC,gCAAsB,CAAC,CAAC,eAAe,CAAC;YACnD,GAAG,EAAE,CAAI,KAAa,EAAE,QAAY,EAAE,EAAE,CAAC,QAAQ;YACjD,KAAK,EAAE,OAAO,CAAC,OAAO,EAAE;YACxB,gBAAgB,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,GAAc,CAAC,EAAE,CAAC;SACzB,CAAC,CAAC;QACxC,SAAS,CAAC,IAAI,CAAC,kCAAkB,CAAC,CAAC,eAAe,CAAC;YAC/C,aAAa,EAAE,KAAK,IAAI,EAAE,CAAC,mBAAmB;YAC9C,WAAW,EAAE,KAAK,IAAI,EAAE,CAAC,EAAE;YAC3B,YAAY,EAAE,KAAK,IAAI,EAAE,CAAC,EAAE;YAC5B,QAAQ,EAAE,KAAK,IAAI,EAAE,CAAC,SAAS;YAC/B,eAAe,EAAE,KAAK,IAAI,EAAE,CAAC,2BAA2B;SAC1B,CAAC,CAAC;QACpC,SAAS,CAAC,IAAI,CAAC,4CAAsB,CAAC,CAAC,MAAM,EAAE,CAAC;QAChD,SAAS,CAAC,IAAI,CAAC,uEAAgC,CAAC,CAAC,MAAM,EAAE,CAAC;QAC1D,SAAS,CAAC,IAAI,CAAC,8DAA4B,CAAC,CAAC,SAAS,CAAC,uEAAgC,CAAC,CAAC;QAEzF,iBAAiB,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,8DAA4B,CAAC,CAAC;IAC/E,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,kCAAkC,EAAE,GAAG,EAAE;QAC9C,EAAE,CAAC,kDAAkD,EAAE,KAAK,IAAI,EAAE;YAC9D,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;YACrE,IAAA,aAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,qDAAmB,CAAC,KAAK,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,oDAAoD,EAAE,KAAK,IAAI,EAAE;YAChE,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAC;YACvE,IAAA,aAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,qDAAmB,CAAC,iBAAiB,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gDAAgD,EAAE,KAAK,IAAI,EAAE;YAC5D,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,YAAY,CAAC,2BAA2B,CAAC,CAAC;YACjF,IAAA,aAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,qDAAmB,CAAC,KAAK,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,iDAAiD,EAAE,KAAK,IAAI,EAAE;YAC7D,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;YACpE,IAAA,aAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,qDAAmB,CAAC,KAAK,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,uCAAuC,EAAE,GAAG,EAAE;QACnD,EAAE,CAAC,mEAAmE,EAAE,KAAK,IAAI,EAAE;YAC/E,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,YAAY,CAAC,oCAAoC,CAAC,CAAC;YAC1F,IAAA,aAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,qDAAmB,CAAC,KAAK,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,qEAAqE,EAAE,KAAK,IAAI,EAAE;YACjF,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,YAAY,CAAC,sCAAsC,CAAC,CAAC;YAC5F,IAAA,aAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,qDAAmB,CAAC,iBAAiB,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gFAAgF,EAAE,KAAK,IAAI,EAAE;YAC5F,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;YACnE,IAAA,aAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,qDAAmB,CAAC,iBAAiB,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,+EAA+E,EAAE,KAAK,IAAI,EAAE;YAC3F,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;YAClE,IAAA,aAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,qDAAmB,CAAC,iBAAiB,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,wEAAwE,EAAE,KAAK,IAAI,EAAE;YACpF,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,YAAY,CAAC,6BAA6B,CAAC,CAAC;YACnF,IAAA,aAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,qDAAmB,CAAC,iBAAiB,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,wDAAwD,EAAE,KAAK,IAAI,EAAE;YACpE,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,YAAY,CAAC,yBAAyB,CAAC,CAAC;YAC/E,IAAA,aAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,qDAAmB,CAAC,iBAAiB,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sEAAsE,EAAE,KAAK,IAAI,EAAE;YAClF,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,YAAY,CAAC,0BAA0B,CAAC,CAAC;YAChF,IAAA,aAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,qDAAmB,CAAC,iBAAiB,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,iEAAiE,EAAE,KAAK,IAAI,EAAE;YAC7E,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,YAAY,CAAC,gDAAgD,CAAC,CAAC;YACtG,IAAA,aAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,qDAAmB,CAAC,KAAK,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,gCAAgC,EAAE,GAAG,EAAE;QAC5C,EAAE,CAAC,iEAAiE,EAAE,KAAK,IAAI,EAAE;YAC7E,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,YAAY,CAAC,2CAA2C,CAAC,CAAC;YACjG,IAAA,aAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,qDAAmB,CAAC,KAAK,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mEAAmE,EAAE,KAAK,IAAI,EAAE;YAC/E,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,YAAY,CAAC,6CAA6C,CAAC,CAAC;YACnG,IAAA,aAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,qDAAmB,CAAC,iBAAiB,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,8EAA8E,EAAE,KAAK,IAAI,EAAE;YAC1F,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,YAAY,CAAC,oBAAoB,CAAC,CAAC;YAC1E,IAAA,aAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,qDAAmB,CAAC,iBAAiB,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,6EAA6E,EAAE,KAAK,IAAI,EAAE;YACzF,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,YAAY,CAAC,mBAAmB,CAAC,CAAC;YACzE,IAAA,aAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,qDAAmB,CAAC,iBAAiB,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sEAAsE,EAAE,KAAK,IAAI,EAAE;YAClF,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,YAAY,CAAC,oCAAoC,CAAC,CAAC;YAC1F,IAAA,aAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,qDAAmB,CAAC,iBAAiB,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sDAAsD,EAAE,KAAK,IAAI,EAAE;YAClE,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,YAAY,CAAC,gCAAgC,CAAC,CAAC;YACtF,IAAA,aAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,qDAAmB,CAAC,iBAAiB,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,oEAAoE,EAAE,KAAK,IAAI,EAAE;YAChF,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,YAAY,CAAC,iCAAiC,CAAC,CAAC;YACvF,IAAA,aAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,qDAAmB,CAAC,iBAAiB,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,yDAAyD,EAAE,KAAK,IAAI,EAAE;YACrE,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,YAAY,CAAC,0CAA0C,CAAC,CAAC;YAChG,IAAA,aAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,qDAAmB,CAAC,KAAK,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,+BAA+B,EAAE,GAAG,EAAE;QAC3C,EAAE,CAAC,gEAAgE,EAAE,KAAK,IAAI,EAAE;YAC5E,MAAM,GAAG,GAAG,IAAI,UAAG,CAAC,2CAA2C,CAAC,CAAC;YACjE,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;YACzD,IAAA,aAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,qDAAmB,CAAC,KAAK,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,kEAAkE,EAAE,KAAK,IAAI,EAAE;YAC9E,MAAM,GAAG,GAAG,IAAI,UAAG,CAAC,6CAA6C,CAAC,CAAC;YACnE,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;YACzD,IAAA,aAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,qDAAmB,CAAC,iBAAiB,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,+DAA+D,EAAE,KAAK,IAAI,EAAE;YAC3E,MAAM,GAAG,GAAG,IAAI,UAAG,CAAC,oBAAoB,CAAC,CAAC;YAC1C,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;YACzD,IAAA,aAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,qDAAmB,CAAC,iBAAiB,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uEAAuE,EAAE,KAAK,IAAI,EAAE;YACnF,MAAM,GAAG,GAAG,IAAI,UAAG,CAAC,oCAAoC,CAAC,CAAC;YAC1D,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;YACzD,IAAA,aAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,qDAAmB,CAAC,iBAAiB,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,gCAAgC,EAAE,GAAG,EAAE;QAC5C,UAAU,CAAC,KAAK,IAAI,EAAE;YAClB,6CAA6C;YAC7C,oBAAoB,CAAC,WAAW,GAAG,GAAG,EAAE,CAAC,EAAE,CAAC;QAChD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,kDAAkD,EAAE,KAAK,IAAI,EAAE;YAC9D,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;YACrE,IAAA,aAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,qDAAmB,CAAC,iBAAiB,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uDAAuD,EAAE,KAAK,IAAI,EAAE;YACnE,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,YAAY,CAAC,qBAAqB,CAAC,CAAC;YAC3E,IAAA,aAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,qDAAmB,CAAC,iBAAiB,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,qDAAqD,EAAE,KAAK,IAAI,EAAE;YACjE,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,YAAY,CAAC,4BAA4B,CAAC,CAAC;YAClF,IAAA,aAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,qDAAmB,CAAC,iBAAiB,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,4CAA4C,EAAE,GAAG,EAAE;QACxD,MAAM,cAAc,GAAG,IAAI,UAAG,CAAC,iCAAiC,CAAC,CAAC;QAElE,UAAU,CAAC,KAAK,IAAI,EAAE;YAClB,mDAAmD;YACnD,oBAAoB,CAAC,WAAW,GAAG,GAAG,EAAE,CAAC;gBACrC;oBACI,QAAQ,EAAE,aAAa;oBACvB,WAAW,EAAE,IAAI;iBACR;gBACb;oBACI,QAAQ,EAAE,cAAc;oBACxB,WAAW,EAAE,IAAI;iBACR;aAChB,CAAC;YACF,wEAAwE;YACvE,oBAAuD,CAAC,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC;gBAC7E;oBACI,QAAQ,EAAE,aAAa;oBACvB,WAAW,EAAE,IAAI;iBACR;gBACb;oBACI,QAAQ,EAAE,cAAc;oBACxB,WAAW,EAAE,IAAI;iBACR;aAChB,CAAC,CAAC;YAEH,oCAAoC;YACpC,aAAa,CAAC,GAAG,CAAC,0CAA0C,EAAE,IAAI,CAAC,CAAC;YACpE,aAAa,CAAC,GAAG,CAAC,8CAA8C,EAAE,IAAI,CAAC,CAAC;QAC5E,CAAC,CAAC,CAAC;QAEH,SAAS,CAAC,GAAG,EAAE;YACX,qCAAqC;YACrC,aAAa,CAAC,MAAM,CAAC,0CAA0C,CAAC,CAAC;YACjE,aAAa,CAAC,MAAM,CAAC,8CAA8C,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,8CAA8C,EAAE,KAAK,IAAI,EAAE;YAC1D,6EAA6E;YAC7E,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,YAAY,CAAC,yBAAyB,CAAC,CAAC;YAC/E,IAAA,aAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,qDAAmB,CAAC,KAAK,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,kEAAkE,EAAE,KAAK,IAAI,EAAE;YAC9E,6EAA6E;YAC7E,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,YAAY,CAAC,wBAAwB,CAAC,CAAC;YAC9E,uDAAuD;YACvD,IAAA,aAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,qDAAmB,CAAC,KAAK,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,kEAAkE,EAAE,KAAK,IAAI,EAAE;YAC9E,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,YAAY,CAAC,mCAAmC,CAAC,CAAC;YACzF,uDAAuD;YACvD,IAAA,aAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,qDAAmB,CAAC,KAAK,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gEAAgE,EAAE,KAAK,IAAI,EAAE;YAC5E,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,YAAY,CAAC,8CAA8C,CAAC,CAAC;YACpG,uDAAuD;YACvD,IAAA,aAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,qDAAmB,CAAC,KAAK,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,wDAAwD,EAAE,KAAK,IAAI,EAAE;YACpE,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;YACnE,IAAA,aAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,qDAAmB,CAAC,iBAAiB,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,6BAA6B,EAAE,GAAG,EAAE;QACzC,EAAE,CAAC,0DAA0D,EAAE,KAAK,IAAI,EAAE;YACtE,eAAe,CAAC,MAAM,GAAG,KAAK,IAAI,EAAE;gBAChC,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;YACzC,CAAC,CAAC;YAEF,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;YACrE,IAAA,aAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,qDAAmB,CAAC,iBAAiB,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;YAC/C,uCAAuC;YACvC,iDAAiD;YACjD,MAAM,WAAW,GAAG,IAAI,UAAG,CAAC,+BAA+B,CAAC,CAAC;YAC7D,MAAM,WAAW,GAAG,IAAI,UAAG,CAAC,wCAAwC,CAAC,CAAC;YACtE,aAAa,CAAC,GAAG,CAAC,WAAW,CAAC,QAAQ,EAAE,EAAE,IAAI,CAAC,CAAC;YAEhD,yCAAyC;YACzC,oBAAoB,CAAC,WAAW,GAAG,GAAG,EAAE,CAAC,CAAC;oBACtC,QAAQ,EAAE,WAAW;oBACrB,WAAW,EAAE,IAAI;iBACR,CAAC,CAAC;YAEf,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,YAAY,CAAC,wCAAwC,CAAC,CAAC;YAC9F,IAAA,aAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,qDAAmB,CAAC,KAAK,CAAC,CAAC;YAEzD,WAAW;YACX,aAAa,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sDAAsD,EAAE,KAAK,IAAI,EAAE;YAClE,0BAA0B;YAC1B,MAAM,iBAAiB,GAAG,wCAAwC,CAAC;YACnE,aAAa,CAAC,GAAG,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC;YAE3C,wCAAwC;YACxC,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,YAAY,CAAC,wCAAwC,CAAC,CAAC;YAC9F,IAAA,aAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,qDAAmB,CAAC,iBAAiB,CAAC,CAAC;YAErE,WAAW;YACX,aAAa,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;QACxB,EAAE,CAAC,6CAA6C,EAAE,KAAK,IAAI,EAAE;YACzD,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,YAAY,CAAC,0DAA0D,CAAC,CAAC;YAChH,IAAA,aAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,qDAAmB,CAAC,KAAK,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gDAAgD,EAAE,KAAK,IAAI,EAAE;YAC5D,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,YAAY,CAAC,6BAA6B,CAAC,CAAC;YACnF,IAAA,aAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,qDAAmB,CAAC,KAAK,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE;YACtC,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;YACxD,IAAA,aAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,qDAAmB,CAAC,iBAAiB,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,6DAA6D,EAAE,KAAK,IAAI,EAAE;YACzE,uEAAuE;YACvE,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,YAAY,CAAC,oBAAoB,CAAC,CAAC;YAC1E,IAAA,aAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,qDAAmB,CAAC,iBAAiB,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,wEAAwE,EAAE,KAAK,IAAI,EAAE;YACpF,6CAA6C;YAC7C,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,YAAY,CAAC,8BAA8B,CAAC,CAAC;YACpF,IAAA,aAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,qDAAmB,CAAC,iBAAiB,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,+DAA+D,EAAE,KAAK,IAAI,EAAE;YAC3E,iEAAiE;YACjE,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,YAAY,CAAC,yCAAyC,CAAC,CAAC;YAC/F,IAAA,aAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,qDAAmB,CAAC,iBAAiB,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"context-file-validation-service-impl.spec.js","sourceRoot":"","sources":["../../src/browser/context-file-validation-service-impl.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
// *****************************************************************************
|
|
3
2
|
// Copyright (C) 2025 EclipseSource GmbH.
|
|
4
3
|
//
|
|
@@ -15,24 +14,22 @@
|
|
|
15
14
|
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
16
15
|
// *****************************************************************************
|
|
17
16
|
var ListChatContext_1, ResolveChatContext_1, AddFileToChatContext_1;
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
const file_variable_contribution_1 = require("@theia/ai-core/lib/browser/file-variable-contribution");
|
|
25
|
-
const context_file_validation_service_1 = require("@theia/ai-chat/lib/browser/context-file-validation-service");
|
|
17
|
+
import { __decorate } from "tslib";
|
|
18
|
+
import { assertChatContext } from '@theia/ai-chat';
|
|
19
|
+
import { inject, injectable, optional } from '@theia/core/shared/inversify';
|
|
20
|
+
import { LIST_CHAT_CONTEXT_FUNCTION_ID, RESOLVE_CHAT_CONTEXT_FUNCTION_ID, UPDATE_CONTEXT_FILES_FUNCTION_ID } from '../common/context-functions.js';
|
|
21
|
+
import { FILE_VARIABLE } from '@theia/ai-core/lib/browser/file-variable-contribution';
|
|
22
|
+
import { ContextFileValidationService, FileValidationState } from '@theia/ai-chat/lib/browser/context-file-validation-service';
|
|
26
23
|
let ListChatContext = class ListChatContext {
|
|
27
24
|
static { ListChatContext_1 = this; }
|
|
28
|
-
static { this.ID =
|
|
25
|
+
static { this.ID = LIST_CHAT_CONTEXT_FUNCTION_ID; }
|
|
29
26
|
getTool() {
|
|
30
27
|
return {
|
|
31
28
|
id: ListChatContext_1.ID,
|
|
32
29
|
name: ListChatContext_1.ID,
|
|
33
30
|
description: 'Returns the list of context elements (such as files) specified by the user manually as part of the chat request.',
|
|
34
31
|
handler: async (_, ctx) => {
|
|
35
|
-
|
|
32
|
+
assertChatContext(ctx);
|
|
36
33
|
if (ctx.cancellationToken?.isCancellationRequested) {
|
|
37
34
|
return JSON.stringify({ error: 'Operation cancelled by user' });
|
|
38
35
|
}
|
|
@@ -49,13 +46,13 @@ let ListChatContext = class ListChatContext {
|
|
|
49
46
|
};
|
|
50
47
|
}
|
|
51
48
|
};
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
(0, inversify_1.injectable)()
|
|
49
|
+
ListChatContext = ListChatContext_1 = __decorate([
|
|
50
|
+
injectable()
|
|
55
51
|
], ListChatContext);
|
|
52
|
+
export { ListChatContext };
|
|
56
53
|
let ResolveChatContext = class ResolveChatContext {
|
|
57
54
|
static { ResolveChatContext_1 = this; }
|
|
58
|
-
static { this.ID =
|
|
55
|
+
static { this.ID = RESOLVE_CHAT_CONTEXT_FUNCTION_ID; }
|
|
59
56
|
getTool() {
|
|
60
57
|
return {
|
|
61
58
|
id: ResolveChatContext_1.ID,
|
|
@@ -72,7 +69,7 @@ let ResolveChatContext = class ResolveChatContext {
|
|
|
72
69
|
required: ['contextElementId']
|
|
73
70
|
},
|
|
74
71
|
handler: async (args, ctx) => {
|
|
75
|
-
|
|
72
|
+
assertChatContext(ctx);
|
|
76
73
|
if (ctx.cancellationToken?.isCancellationRequested) {
|
|
77
74
|
return JSON.stringify({ error: 'Operation cancelled by user' });
|
|
78
75
|
}
|
|
@@ -91,13 +88,13 @@ let ResolveChatContext = class ResolveChatContext {
|
|
|
91
88
|
};
|
|
92
89
|
}
|
|
93
90
|
};
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
(0, inversify_1.injectable)()
|
|
91
|
+
ResolveChatContext = ResolveChatContext_1 = __decorate([
|
|
92
|
+
injectable()
|
|
97
93
|
], ResolveChatContext);
|
|
94
|
+
export { ResolveChatContext };
|
|
98
95
|
let AddFileToChatContext = class AddFileToChatContext {
|
|
99
96
|
static { AddFileToChatContext_1 = this; }
|
|
100
|
-
static { this.ID =
|
|
97
|
+
static { this.ID = UPDATE_CONTEXT_FILES_FUNCTION_ID; }
|
|
101
98
|
getTool() {
|
|
102
99
|
return {
|
|
103
100
|
id: AddFileToChatContext_1.ID,
|
|
@@ -122,7 +119,7 @@ let AddFileToChatContext = class AddFileToChatContext {
|
|
|
122
119
|
'Returns a detailed status for each file, including which were successfully added and which were rejected with reasons. ' +
|
|
123
120
|
'Note: Adding a file to context does NOT read its contents - use getFileContent to read the actual content.',
|
|
124
121
|
handler: async (arg, ctx) => {
|
|
125
|
-
|
|
122
|
+
assertChatContext(ctx);
|
|
126
123
|
if (ctx.cancellationToken?.isCancellationRequested) {
|
|
127
124
|
return JSON.stringify({ error: 'Operation cancelled by user' });
|
|
128
125
|
}
|
|
@@ -132,8 +129,8 @@ let AddFileToChatContext = class AddFileToChatContext {
|
|
|
132
129
|
for (const file of filesToAdd) {
|
|
133
130
|
if (this.validationService) {
|
|
134
131
|
const validationResult = await this.validationService.validateFile(file);
|
|
135
|
-
if (validationResult.state ===
|
|
136
|
-
ctx.request.session.context.addVariables({ arg: file, variable:
|
|
132
|
+
if (validationResult.state === FileValidationState.VALID) {
|
|
133
|
+
ctx.request.session.context.addVariables({ arg: file, variable: FILE_VARIABLE });
|
|
137
134
|
added.push(file);
|
|
138
135
|
}
|
|
139
136
|
else {
|
|
@@ -145,7 +142,7 @@ let AddFileToChatContext = class AddFileToChatContext {
|
|
|
145
142
|
}
|
|
146
143
|
}
|
|
147
144
|
else {
|
|
148
|
-
ctx.request.session.context.addVariables({ arg: file, variable:
|
|
145
|
+
ctx.request.session.context.addVariables({ arg: file, variable: FILE_VARIABLE });
|
|
149
146
|
added.push(file);
|
|
150
147
|
}
|
|
151
148
|
}
|
|
@@ -162,13 +159,12 @@ let AddFileToChatContext = class AddFileToChatContext {
|
|
|
162
159
|
};
|
|
163
160
|
}
|
|
164
161
|
};
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
(
|
|
168
|
-
(0, inversify_1.optional)(),
|
|
169
|
-
tslib_1.__metadata("design:type", Object)
|
|
162
|
+
__decorate([
|
|
163
|
+
inject(ContextFileValidationService),
|
|
164
|
+
optional()
|
|
170
165
|
], AddFileToChatContext.prototype, "validationService", void 0);
|
|
171
|
-
|
|
172
|
-
|
|
166
|
+
AddFileToChatContext = AddFileToChatContext_1 = __decorate([
|
|
167
|
+
injectable()
|
|
173
168
|
], AddFileToChatContext);
|
|
169
|
+
export { AddFileToChatContext };
|
|
174
170
|
//# sourceMappingURL=context-functions.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-functions.js","sourceRoot":"","sources":["../../src/browser/context-functions.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"context-functions.js","sourceRoot":"","sources":["../../src/browser/context-functions.ts"],"names":[],"mappings":"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"}
|