@theia/ai-chat-ui 1.74.0-next.8 → 1.74.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.
Files changed (131) hide show
  1. package/lib/browser/ai-chat-ui-contribution.d.ts.map +1 -1
  2. package/lib/browser/ai-chat-ui-contribution.js +54 -31
  3. package/lib/browser/ai-chat-ui-contribution.js.map +1 -1
  4. package/lib/browser/ai-chat-ui-frontend-module.d.ts.map +1 -1
  5. package/lib/browser/ai-chat-ui-frontend-module.js +11 -3
  6. package/lib/browser/ai-chat-ui-frontend-module.js.map +1 -1
  7. package/lib/browser/chat-banner-provider.d.ts +20 -0
  8. package/lib/browser/chat-banner-provider.d.ts.map +1 -0
  9. package/lib/browser/chat-banner-provider.js +28 -0
  10. package/lib/browser/chat-banner-provider.js.map +1 -0
  11. package/lib/browser/chat-banner-widget.d.ts +20 -0
  12. package/lib/browser/chat-banner-widget.d.ts.map +1 -0
  13. package/lib/browser/chat-banner-widget.js +81 -0
  14. package/lib/browser/chat-banner-widget.js.map +1 -0
  15. package/lib/browser/chat-input-widget.d.ts +34 -15
  16. package/lib/browser/chat-input-widget.d.ts.map +1 -1
  17. package/lib/browser/chat-input-widget.js +166 -60
  18. package/lib/browser/chat-input-widget.js.map +1 -1
  19. package/lib/browser/chat-response-renderer/block-external-resources.d.ts +22 -0
  20. package/lib/browser/chat-response-renderer/block-external-resources.d.ts.map +1 -0
  21. package/lib/browser/chat-response-renderer/block-external-resources.js +331 -0
  22. package/lib/browser/chat-response-renderer/block-external-resources.js.map +1 -0
  23. package/lib/browser/chat-response-renderer/block-external-resources.spec.d.ts +2 -0
  24. package/lib/browser/chat-response-renderer/block-external-resources.spec.d.ts.map +1 -0
  25. package/lib/browser/chat-response-renderer/block-external-resources.spec.js +351 -0
  26. package/lib/browser/chat-response-renderer/block-external-resources.spec.js.map +1 -0
  27. package/lib/browser/chat-response-renderer/blocked-resource-placeholder.d.ts +7 -0
  28. package/lib/browser/chat-response-renderer/blocked-resource-placeholder.d.ts.map +1 -0
  29. package/lib/browser/chat-response-renderer/blocked-resource-placeholder.js +39 -0
  30. package/lib/browser/chat-response-renderer/blocked-resource-placeholder.js.map +1 -0
  31. package/lib/browser/chat-response-renderer/compaction-part-renderer.d.ts +8 -0
  32. package/lib/browser/chat-response-renderer/compaction-part-renderer.d.ts.map +1 -0
  33. package/lib/browser/chat-response-renderer/compaction-part-renderer.js +47 -0
  34. package/lib/browser/chat-response-renderer/compaction-part-renderer.js.map +1 -0
  35. package/lib/browser/chat-response-renderer/delegation-tool-renderer.js +1 -1
  36. package/lib/browser/chat-response-renderer/delegation-tool-renderer.js.map +1 -1
  37. package/lib/browser/chat-response-renderer/external-resource-allowlist-contribution.d.ts +11 -0
  38. package/lib/browser/chat-response-renderer/external-resource-allowlist-contribution.d.ts.map +1 -0
  39. package/lib/browser/chat-response-renderer/external-resource-allowlist-contribution.js +47 -0
  40. package/lib/browser/chat-response-renderer/external-resource-allowlist-contribution.js.map +1 -0
  41. package/lib/browser/chat-response-renderer/index.d.ts +1 -0
  42. package/lib/browser/chat-response-renderer/index.d.ts.map +1 -1
  43. package/lib/browser/chat-response-renderer/index.js +1 -0
  44. package/lib/browser/chat-response-renderer/index.js.map +1 -1
  45. package/lib/browser/chat-response-renderer/markdown-part-renderer.d.ts +4 -1
  46. package/lib/browser/chat-response-renderer/markdown-part-renderer.d.ts.map +1 -1
  47. package/lib/browser/chat-response-renderer/markdown-part-renderer.js +41 -10
  48. package/lib/browser/chat-response-renderer/markdown-part-renderer.js.map +1 -1
  49. package/lib/browser/chat-response-renderer/markdown-part-renderer.spec.d.ts +2 -0
  50. package/lib/browser/chat-response-renderer/markdown-part-renderer.spec.d.ts.map +1 -0
  51. package/lib/browser/chat-response-renderer/markdown-part-renderer.spec.js +167 -0
  52. package/lib/browser/chat-response-renderer/markdown-part-renderer.spec.js.map +1 -0
  53. package/lib/browser/chat-session-notification-contribution.d.ts +36 -0
  54. package/lib/browser/chat-session-notification-contribution.d.ts.map +1 -0
  55. package/lib/browser/chat-session-notification-contribution.js +128 -0
  56. package/lib/browser/chat-session-notification-contribution.js.map +1 -0
  57. package/lib/browser/chat-session-notification-contribution.spec.d.ts +2 -0
  58. package/lib/browser/chat-session-notification-contribution.spec.d.ts.map +1 -0
  59. package/lib/browser/chat-session-notification-contribution.spec.js +233 -0
  60. package/lib/browser/chat-session-notification-contribution.spec.js.map +1 -0
  61. package/lib/browser/chat-token-usage-indicator-util.d.ts +8 -1
  62. package/lib/browser/chat-token-usage-indicator-util.d.ts.map +1 -1
  63. package/lib/browser/chat-token-usage-indicator-util.js +50 -5
  64. package/lib/browser/chat-token-usage-indicator-util.js.map +1 -1
  65. package/lib/browser/chat-token-usage-indicator-util.spec.js +86 -2
  66. package/lib/browser/chat-token-usage-indicator-util.spec.js.map +1 -1
  67. package/lib/browser/chat-tree-view/chat-view-tree-widget.d.ts +12 -27
  68. package/lib/browser/chat-tree-view/chat-view-tree-widget.d.ts.map +1 -1
  69. package/lib/browser/chat-tree-view/chat-view-tree-widget.js +39 -127
  70. package/lib/browser/chat-tree-view/chat-view-tree-widget.js.map +1 -1
  71. package/lib/browser/chat-tree-view/chat-view-tree-widget.spec.d.ts +2 -0
  72. package/lib/browser/chat-tree-view/chat-view-tree-widget.spec.d.ts.map +1 -0
  73. package/lib/browser/chat-tree-view/chat-view-tree-widget.spec.js +83 -0
  74. package/lib/browser/chat-tree-view/chat-view-tree-widget.spec.js.map +1 -0
  75. package/lib/browser/chat-tree-view/model-badge.d.ts +13 -0
  76. package/lib/browser/chat-tree-view/model-badge.d.ts.map +1 -0
  77. package/lib/browser/chat-tree-view/model-badge.js +41 -0
  78. package/lib/browser/chat-tree-view/model-badge.js.map +1 -0
  79. package/lib/browser/chat-view-commands.d.ts +1 -0
  80. package/lib/browser/chat-view-commands.d.ts.map +1 -1
  81. package/lib/browser/chat-view-commands.js +6 -1
  82. package/lib/browser/chat-view-commands.js.map +1 -1
  83. package/lib/browser/chat-view-preferences.d.ts +2 -0
  84. package/lib/browser/chat-view-preferences.d.ts.map +1 -1
  85. package/lib/browser/chat-view-preferences.js +13 -1
  86. package/lib/browser/chat-view-preferences.js.map +1 -1
  87. package/lib/browser/chat-view-widget.d.ts +3 -1
  88. package/lib/browser/chat-view-widget.d.ts.map +1 -1
  89. package/lib/browser/chat-view-widget.js +8 -2
  90. package/lib/browser/chat-view-widget.js.map +1 -1
  91. package/lib/browser/session-settings-dialog.d.ts +5 -0
  92. package/lib/browser/session-settings-dialog.d.ts.map +1 -1
  93. package/lib/browser/session-settings-dialog.js +61 -2
  94. package/lib/browser/session-settings-dialog.js.map +1 -1
  95. package/package.json +13 -13
  96. package/src/browser/ai-chat-ui-contribution.ts +64 -36
  97. package/src/browser/ai-chat-ui-frontend-module.ts +12 -3
  98. package/src/browser/chat-banner-provider.ts +36 -0
  99. package/src/browser/chat-banner-widget.tsx +69 -0
  100. package/src/browser/chat-input-widget.tsx +222 -62
  101. package/src/browser/chat-response-renderer/block-external-resources.spec.ts +449 -0
  102. package/src/browser/chat-response-renderer/block-external-resources.ts +370 -0
  103. package/src/browser/chat-response-renderer/blocked-resource-placeholder.tsx +44 -0
  104. package/src/browser/chat-response-renderer/compaction-part-renderer.tsx +52 -0
  105. package/src/browser/chat-response-renderer/delegation-tool-renderer.tsx +1 -1
  106. package/src/browser/chat-response-renderer/external-resource-allowlist-contribution.ts +42 -0
  107. package/src/browser/chat-response-renderer/index.ts +1 -0
  108. package/src/browser/chat-response-renderer/markdown-part-renderer.spec.tsx +203 -0
  109. package/src/browser/chat-response-renderer/markdown-part-renderer.tsx +47 -10
  110. package/src/browser/chat-session-notification-contribution.spec.ts +314 -0
  111. package/src/browser/chat-session-notification-contribution.ts +132 -0
  112. package/src/browser/chat-token-usage-indicator-util.spec.ts +100 -2
  113. package/src/browser/chat-token-usage-indicator-util.ts +52 -5
  114. package/src/browser/chat-tree-view/chat-view-tree-widget.spec.tsx +117 -0
  115. package/src/browser/chat-tree-view/chat-view-tree-widget.tsx +53 -153
  116. package/src/browser/chat-tree-view/model-badge.tsx +52 -0
  117. package/src/browser/chat-view-commands.ts +6 -0
  118. package/src/browser/chat-view-preferences.ts +16 -0
  119. package/src/browser/chat-view-widget.tsx +6 -1
  120. package/src/browser/session-settings-dialog.tsx +140 -1
  121. package/src/browser/style/index.css +195 -34
  122. package/lib/browser/chat-input-needed-notification-contribution.d.ts +0 -28
  123. package/lib/browser/chat-input-needed-notification-contribution.d.ts.map +0 -1
  124. package/lib/browser/chat-input-needed-notification-contribution.js +0 -104
  125. package/lib/browser/chat-input-needed-notification-contribution.js.map +0 -1
  126. package/lib/browser/chat-input-needed-notification-contribution.spec.d.ts +0 -2
  127. package/lib/browser/chat-input-needed-notification-contribution.spec.d.ts.map +0 -1
  128. package/lib/browser/chat-input-needed-notification-contribution.spec.js +0 -171
  129. package/lib/browser/chat-input-needed-notification-contribution.spec.js.map +0 -1
  130. package/src/browser/chat-input-needed-notification-contribution.spec.ts +0 -223
  131. package/src/browser/chat-input-needed-notification-contribution.ts +0 -103
@@ -0,0 +1,351 @@
1
+ "use strict";
2
+ // *****************************************************************************
3
+ // Copyright (C) 2026 EclipseSource GmbH.
4
+ //
5
+ // This program and the accompanying materials are made available under the
6
+ // terms of the Eclipse Public License v. 2.0 which is available at
7
+ // http://www.eclipse.org/legal/epl-2.0.
8
+ //
9
+ // This Source Code may also be made available under the following Secondary
10
+ // Licenses when the conditions for such availability set forth in the Eclipse
11
+ // Public License v. 2.0 are satisfied: GNU General Public License, version 2
12
+ // with the GNU Classpath Exception which is available at
13
+ // https://www.gnu.org/software/classpath/license.html.
14
+ //
15
+ // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
+ // *****************************************************************************
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ const jsdom_1 = require("@theia/core/lib/browser/test/jsdom");
19
+ let disableJSDOM = (0, jsdom_1.enableJSDOM)();
20
+ const chai_1 = require("chai");
21
+ const block_external_resources_1 = require("./block-external-resources");
22
+ disableJSDOM();
23
+ describe('blockExternalResources', () => {
24
+ before(() => disableJSDOM = (0, jsdom_1.enableJSDOM)());
25
+ after(() => disableJSDOM());
26
+ afterEach(() => (0, block_external_resources_1.setAllowedResourceUrls)([]));
27
+ const createRoot = (html) => {
28
+ const root = document.createElement('div');
29
+ root.innerHTML = html;
30
+ (0, block_external_resources_1.blockExternalResources)(root);
31
+ return root;
32
+ };
33
+ it('replaces an external image with a placeholder that shows the URL', () => {
34
+ const root = createRoot('<img src="https://evil.com/x.gif">');
35
+ const placeholder = root.querySelector(`.${block_external_resources_1.BLOCKED_RESOURCE_CLASS}`);
36
+ (0, chai_1.expect)(placeholder).to.exist;
37
+ (0, chai_1.expect)(root.querySelector('img')).to.be.null;
38
+ (0, chai_1.expect)(placeholder.textContent).to.contain('https://evil.com/x.gif');
39
+ });
40
+ it('preserves data images', () => {
41
+ const root = createRoot('<img src="data:image/png;base64,AAA">');
42
+ (0, chai_1.expect)(root.querySelector(`.${block_external_resources_1.BLOCKED_RESOURCE_CLASS}`)).to.be.null;
43
+ (0, chai_1.expect)(root.querySelector('img')?.getAttribute('src')).to.equal('data:image/png;base64,AAA');
44
+ });
45
+ it('preserves images without a source', () => {
46
+ const root = createRoot('<img><img src="">');
47
+ (0, chai_1.expect)(root.querySelector(`.${block_external_resources_1.BLOCKED_RESOURCE_CLASS}`)).to.be.null;
48
+ (0, chai_1.expect)(root.querySelectorAll('img')).to.have.length(2);
49
+ });
50
+ it('blocks external image srcset entries', () => {
51
+ const root = createRoot('<img srcset="https://a.com/x 1x, https://b.com/y 2x">');
52
+ (0, chai_1.expect)(root.querySelector(`.${block_external_resources_1.BLOCKED_RESOURCE_CLASS}`)).to.exist;
53
+ (0, chai_1.expect)(root.querySelector('img')).to.be.null;
54
+ });
55
+ it('lists all blocked srcset entries', () => {
56
+ const root = createRoot('<img srcset="https://a.com/x 1x,https://b.com/y 2x, https://c.com/z 100w">');
57
+ const placeholder = root.querySelector(`.${block_external_resources_1.BLOCKED_RESOURCE_CLASS}`);
58
+ (0, chai_1.expect)(placeholder).to.exist;
59
+ (0, chai_1.expect)(placeholder.textContent).to.contain('https://a.com/x');
60
+ (0, chai_1.expect)(placeholder.textContent).to.contain('https://b.com/y');
61
+ (0, chai_1.expect)(placeholder.textContent).to.contain('https://c.com/z');
62
+ (0, chai_1.expect)(placeholder.textContent).to.contain('3 resources will be enabled');
63
+ });
64
+ it('preserves data image srcset entries', () => {
65
+ const root = createRoot('<img srcset="data:image/png;base64,AAA 1x">');
66
+ (0, chai_1.expect)(root.querySelector(`.${block_external_resources_1.BLOCKED_RESOURCE_CLASS}`)).to.be.null;
67
+ (0, chai_1.expect)(root.querySelector('img')?.getAttribute('srcset')).to.equal('data:image/png;base64,AAA 1x');
68
+ });
69
+ it('lists only external srcset entries when mixed with data entries', () => {
70
+ const root = createRoot('<img srcset="data:image/png;base64,AAA 1x,https://evil.com/x.png 2x">');
71
+ const placeholder = root.querySelector(`.${block_external_resources_1.BLOCKED_RESOURCE_CLASS}`);
72
+ (0, chai_1.expect)(placeholder).to.exist;
73
+ (0, chai_1.expect)(placeholder.textContent).to.contain('https://evil.com/x.png');
74
+ (0, chai_1.expect)(placeholder.textContent).not.to.contain('data:image/png;base64,AAA');
75
+ });
76
+ it('blocks external picture sources while preserving safe fallback images', () => {
77
+ const root = createRoot('<picture><source srcset="https://x"><img src="data:image/png;base64,AAA"></picture>');
78
+ (0, chai_1.expect)(root.querySelector(`.${block_external_resources_1.BLOCKED_RESOURCE_CLASS}`)).to.exist;
79
+ (0, chai_1.expect)(root.querySelector('source')).to.be.null;
80
+ (0, chai_1.expect)(root.querySelector('img')?.getAttribute('src')).to.equal('data:image/png;base64,AAA');
81
+ });
82
+ it('blocks external video resources', () => {
83
+ const root = createRoot('<video src="https://x" poster="https://y"></video>');
84
+ (0, chai_1.expect)(root.querySelector(`.${block_external_resources_1.BLOCKED_RESOURCE_CLASS}`)).to.exist;
85
+ (0, chai_1.expect)(root.querySelector('video')).to.be.null;
86
+ });
87
+ it('blocks external audio resources', () => {
88
+ const root = createRoot('<audio src="https://x"></audio>');
89
+ (0, chai_1.expect)(root.querySelector(`.${block_external_resources_1.BLOCKED_RESOURCE_CLASS}`)).to.exist;
90
+ (0, chai_1.expect)(root.querySelector('audio')).to.be.null;
91
+ });
92
+ it('blocks SVG image resources', () => {
93
+ const root = createRoot('<svg><image href="https://evil.com/x.png"></image></svg>');
94
+ const placeholder = root.querySelector(`.${block_external_resources_1.BLOCKED_RESOURCE_CLASS}`);
95
+ (0, chai_1.expect)(placeholder).to.exist;
96
+ (0, chai_1.expect)(placeholder.textContent).to.contain('https://evil.com/x.png');
97
+ (0, chai_1.expect)(root.querySelector('image')).to.be.null;
98
+ });
99
+ it('blocks SVG use resources', () => {
100
+ const root = createRoot('<svg><use xlink:href="https://evil.com/icons.svg#icon"></use></svg>');
101
+ const placeholder = root.querySelector(`.${block_external_resources_1.BLOCKED_RESOURCE_CLASS}`);
102
+ (0, chai_1.expect)(placeholder).to.exist;
103
+ (0, chai_1.expect)(placeholder.textContent).to.contain('https://evil.com/icons.svg#icon');
104
+ (0, chai_1.expect)(root.querySelector('use')).to.be.null;
105
+ });
106
+ it('blocks SVG filter image resources', () => {
107
+ const root = createRoot('<svg><filter><feImage href="https://evil.com/filter.png"></feImage></filter></svg>');
108
+ const placeholder = root.querySelector(`.${block_external_resources_1.BLOCKED_RESOURCE_CLASS}`);
109
+ (0, chai_1.expect)(placeholder).to.exist;
110
+ (0, chai_1.expect)(placeholder.textContent).to.contain('https://evil.com/filter.png');
111
+ (0, chai_1.expect)(root.querySelector('feImage')).to.be.null;
112
+ });
113
+ it('blocks SVG filter image resources using xlink:href', () => {
114
+ const root = createRoot('<svg><filter><feImage xlink:href="https://evil.com/filter.png"></feImage></filter></svg>');
115
+ const placeholder = root.querySelector(`.${block_external_resources_1.BLOCKED_RESOURCE_CLASS}`);
116
+ (0, chai_1.expect)(placeholder).to.exist;
117
+ (0, chai_1.expect)(placeholder.textContent).to.contain('https://evil.com/filter.png');
118
+ (0, chai_1.expect)(root.querySelector('feImage')).to.be.null;
119
+ });
120
+ it('preserves data SVG filter image resources', () => {
121
+ const root = createRoot('<svg><filter><feImage href="data:image/png;base64,AAA"></feImage></filter></svg>');
122
+ (0, chai_1.expect)(root.querySelector(`.${block_external_resources_1.BLOCKED_RESOURCE_CLASS}`)).to.be.null;
123
+ (0, chai_1.expect)(root.querySelector('feImage')?.getAttribute('href')).to.equal('data:image/png;base64,AAA');
124
+ });
125
+ it('blocks object and embed resources', () => {
126
+ const root = createRoot('<object data="https://evil.com/object.svg"></object><embed src="https://evil.com/embed.svg">');
127
+ (0, chai_1.expect)(root.querySelectorAll(`.${block_external_resources_1.BLOCKED_RESOURCE_CLASS}`)).to.have.length(2);
128
+ (0, chai_1.expect)(root.querySelector('object')).to.be.null;
129
+ (0, chai_1.expect)(root.querySelector('embed')).to.be.null;
130
+ });
131
+ it('shows all resources that will be enabled by allowing blocked content', () => {
132
+ const root = createRoot('<video src="https://evil.com/video.mp4" poster="https://evil.com/poster.png"></video>');
133
+ const placeholder = root.querySelector(`.${block_external_resources_1.BLOCKED_RESOURCE_CLASS}`);
134
+ (0, chai_1.expect)(placeholder).to.exist;
135
+ (0, chai_1.expect)(placeholder.textContent).to.contain('https://evil.com/video.mp4');
136
+ (0, chai_1.expect)(placeholder.textContent).to.contain('https://evil.com/poster.png');
137
+ (0, chai_1.expect)(placeholder.textContent).to.contain('2 resources will be enabled');
138
+ });
139
+ it('blocks iframes unconditionally', () => {
140
+ const root = createRoot('<iframe src="https://x"></iframe>');
141
+ (0, chai_1.expect)(root.querySelector(`.${block_external_resources_1.BLOCKED_RESOURCE_CLASS}`)).to.exist;
142
+ (0, chai_1.expect)(root.querySelector('iframe')).to.be.null;
143
+ });
144
+ it('blocks inline iframe content', () => {
145
+ const root = createRoot('<iframe srcdoc="&lt;p&gt;hi&lt;/p&gt;"></iframe>');
146
+ const placeholder = root.querySelector(`.${block_external_resources_1.BLOCKED_RESOURCE_CLASS}`);
147
+ (0, chai_1.expect)(placeholder).to.exist;
148
+ (0, chai_1.expect)(placeholder.textContent).to.contain('(inline external content)');
149
+ });
150
+ it('sandboxes restored embedded content', () => {
151
+ const root = createRoot('<iframe srcdoc="&lt;img src=x onerror=alert(1)&gt;"></iframe>');
152
+ const placeholder = root.querySelector(`.${block_external_resources_1.BLOCKED_RESOURCE_CLASS}`);
153
+ const restored = (0, block_external_resources_1.restoreBlockedResource)(placeholder);
154
+ (0, chai_1.expect)(restored?.tagName).to.equal('IFRAME');
155
+ (0, chai_1.expect)(restored?.getAttribute('sandbox')).to.equal('');
156
+ });
157
+ it('overrides attacker-supplied sandbox attributes on restored embedded content', () => {
158
+ const root = createRoot('<iframe sandbox="allow-scripts allow-same-origin" srcdoc="&lt;p&gt;hi&lt;/p&gt;"></iframe>');
159
+ const placeholder = root.querySelector(`.${block_external_resources_1.BLOCKED_RESOURCE_CLASS}`);
160
+ const restored = (0, block_external_resources_1.restoreBlockedResource)(placeholder);
161
+ (0, chai_1.expect)(restored?.getAttribute('sandbox')).to.equal('');
162
+ });
163
+ it('blocks object and embed elements without external URLs', () => {
164
+ const root = createRoot('<object></object><embed>');
165
+ const placeholders = root.querySelectorAll(`.${block_external_resources_1.BLOCKED_RESOURCE_CLASS}`);
166
+ (0, chai_1.expect)(placeholders).to.have.length(2);
167
+ (0, chai_1.expect)(placeholders[0].textContent).to.contain('(inline external content)');
168
+ (0, chai_1.expect)(root.querySelector('object')).to.be.null;
169
+ (0, chai_1.expect)(root.querySelector('embed')).to.be.null;
170
+ });
171
+ it('blocks objects with inline document data URLs', () => {
172
+ const root = createRoot('<object data="data:text/html,&lt;script&gt;fetch(1)&lt;/script&gt;"></object>');
173
+ (0, chai_1.expect)(root.querySelector(`.${block_external_resources_1.BLOCKED_RESOURCE_CLASS}`)).to.exist;
174
+ (0, chai_1.expect)(root.querySelector('object')).to.be.null;
175
+ });
176
+ it('blocks elements with external background attributes', () => {
177
+ const root = createRoot('<table background="https://evil.com/x.png"><tr><td>x</td></tr></table>');
178
+ const placeholder = root.querySelector(`.${block_external_resources_1.BLOCKED_RESOURCE_CLASS}`);
179
+ (0, chai_1.expect)(placeholder).to.exist;
180
+ (0, chai_1.expect)(placeholder.textContent).to.contain('https://evil.com/x.png');
181
+ (0, chai_1.expect)(root.querySelector('table')).to.be.null;
182
+ });
183
+ it('preserves HTML and SVG links', () => {
184
+ const root = createRoot('<a href="https://example.com">link</a><svg><a href="https://example.com"><text>svg link</text></a></svg>');
185
+ (0, chai_1.expect)(root.querySelector(`.${block_external_resources_1.BLOCKED_RESOURCE_CLASS}`)).to.be.null;
186
+ (0, chai_1.expect)(root.querySelectorAll('a')).to.have.length(2);
187
+ });
188
+ it('wraps elements with external CSS URLs and preserves safe style declarations', () => {
189
+ const root = createRoot('<div style="background-image: url(https://x); color: red">content</div>');
190
+ const placeholder = root.querySelector(`.${block_external_resources_1.BLOCKED_RESOURCE_CLASS}`);
191
+ const div = root.querySelector('div');
192
+ (0, chai_1.expect)(placeholder).to.exist;
193
+ (0, chai_1.expect)(placeholder.textContent).to.contain('https://x');
194
+ (0, chai_1.expect)(div).to.exist;
195
+ (0, chai_1.expect)(div?.style.backgroundImage).to.equal('');
196
+ (0, chai_1.expect)(div?.style.color).to.equal('red');
197
+ });
198
+ it('blocks external CSS image-set resources and preserves safe style declarations', () => {
199
+ const root = document.createElement('div');
200
+ const div = document.createElement('div');
201
+ div.setAttribute('style', 'color: red');
202
+ const getAttribute = div.getAttribute.bind(div);
203
+ div.getAttribute = (qualifiedName) => qualifiedName === 'style'
204
+ ? 'background-image: image-set("https://evil.com/x.png" 1x); color: red'
205
+ : getAttribute(qualifiedName);
206
+ div.textContent = 'content';
207
+ root.appendChild(div);
208
+ (0, block_external_resources_1.blockExternalResources)(root);
209
+ const placeholder = root.querySelector(`.${block_external_resources_1.BLOCKED_RESOURCE_CLASS}`);
210
+ const safeDiv = root.querySelector('div');
211
+ (0, chai_1.expect)(placeholder).to.exist;
212
+ (0, chai_1.expect)(placeholder.textContent).to.contain('https://evil.com/x.png');
213
+ (0, chai_1.expect)(safeDiv).to.exist;
214
+ (0, chai_1.expect)(safeDiv?.getAttribute('style')).to.equal('color: red');
215
+ });
216
+ it('blocks style sheets importing external CSS via url()', () => {
217
+ const root = createRoot('<style>@import url("https://evil.com/main.css");</style><div class="App">content</div>');
218
+ const placeholder = root.querySelector(`.${block_external_resources_1.BLOCKED_RESOURCE_CLASS}`);
219
+ (0, chai_1.expect)(placeholder).to.exist;
220
+ (0, chai_1.expect)(placeholder.textContent).to.contain('https://evil.com/main.css');
221
+ (0, chai_1.expect)(root.querySelector('style')).to.be.null;
222
+ (0, chai_1.expect)(root.querySelector('div.App')?.textContent).to.equal('content');
223
+ });
224
+ it('blocks style sheets importing external CSS via the string form', () => {
225
+ const root = createRoot("<style>@import 'https://evil.com/main.css';</style>");
226
+ const placeholder = root.querySelector(`.${block_external_resources_1.BLOCKED_RESOURCE_CLASS}`);
227
+ (0, chai_1.expect)(placeholder).to.exist;
228
+ (0, chai_1.expect)(placeholder.textContent).to.contain('https://evil.com/main.css');
229
+ (0, chai_1.expect)(root.querySelector('style')).to.be.null;
230
+ });
231
+ it('blocks style sheets with external CSS URLs', () => {
232
+ const root = createRoot('<style>.app { background: url(https://evil.com/x.png); }</style>');
233
+ const placeholder = root.querySelector(`.${block_external_resources_1.BLOCKED_RESOURCE_CLASS}`);
234
+ (0, chai_1.expect)(placeholder).to.exist;
235
+ (0, chai_1.expect)(placeholder.textContent).to.contain('https://evil.com/x.png');
236
+ (0, chai_1.expect)(root.querySelector('style')).to.be.null;
237
+ });
238
+ it('blocks style sheets with comment-obfuscated external references', () => {
239
+ const root = createRoot('<style>@import/**/"https://evil.com/main.css";</style>');
240
+ (0, chai_1.expect)(root.querySelector(`.${block_external_resources_1.BLOCKED_RESOURCE_CLASS}`)).to.exist;
241
+ (0, chai_1.expect)(root.querySelector('style')).to.be.null;
242
+ });
243
+ it('blocks style sheets with escape-obfuscated external references', () => {
244
+ const root = createRoot('<style>.app { background: \\75rl(https://evil.com/x.png); }</style>');
245
+ (0, chai_1.expect)(root.querySelector(`.${block_external_resources_1.BLOCKED_RESOURCE_CLASS}`)).to.exist;
246
+ (0, chai_1.expect)(root.querySelector('style')).to.be.null;
247
+ });
248
+ it('preserves style sheets without external references', () => {
249
+ const root = createRoot('<style>.app { color: red; background: url(data:image/png;base64,AA); border: 1px solid url(#pattern); }</style>');
250
+ (0, chai_1.expect)(root.querySelector(`.${block_external_resources_1.BLOCKED_RESOURCE_CLASS}`)).to.be.null;
251
+ (0, chai_1.expect)(root.querySelector('style')).to.exist;
252
+ });
253
+ it('blocks external SVG paint server references', () => {
254
+ const root = createRoot('<svg><rect fill="url(https://evil.com/paint.svg#p)"></rect></svg>');
255
+ const placeholder = root.querySelector(`.${block_external_resources_1.BLOCKED_RESOURCE_CLASS}`);
256
+ (0, chai_1.expect)(placeholder).to.exist;
257
+ (0, chai_1.expect)(placeholder.textContent).to.contain('https://evil.com/paint.svg#p');
258
+ (0, chai_1.expect)(root.querySelector('rect')).to.be.null;
259
+ });
260
+ it('blocks external SVG filter references', () => {
261
+ const root = createRoot('<svg><rect filter="url(https://evil.com/filter.svg#f)"></rect></svg>');
262
+ const placeholder = root.querySelector(`.${block_external_resources_1.BLOCKED_RESOURCE_CLASS}`);
263
+ (0, chai_1.expect)(placeholder).to.exist;
264
+ (0, chai_1.expect)(placeholder.textContent).to.contain('https://evil.com/filter.svg#f');
265
+ (0, chai_1.expect)(root.querySelector('rect')).to.be.null;
266
+ });
267
+ it('preserves same-document SVG references', () => {
268
+ const root = createRoot('<svg><defs><linearGradient id="gradient"></linearGradient></defs><circle fill="url(#gradient)"></circle><use href="#gradient"></use></svg>');
269
+ (0, chai_1.expect)(root.querySelector(`.${block_external_resources_1.BLOCKED_RESOURCE_CLASS}`)).to.be.null;
270
+ (0, chai_1.expect)(root.querySelector('circle')?.getAttribute('fill')).to.equal('url(#gradient)');
271
+ (0, chai_1.expect)(root.querySelector('use')).to.exist;
272
+ });
273
+ it('preserves data CSS URLs', () => {
274
+ const root = createRoot('<div style="background-image: url(data:image/png;base64,AA)">content</div>');
275
+ (0, chai_1.expect)(root.querySelector(`.${block_external_resources_1.BLOCKED_RESOURCE_CLASS}`)).to.be.null;
276
+ (0, chai_1.expect)(root.querySelector('div')?.style.backgroundImage).to.contain('data:image/png;base64,AA');
277
+ });
278
+ it('blocks style sheets importing a data URL stylesheet that references external resources', () => {
279
+ const nestedCss = encodeURIComponent('.probe{background-image:url(https://evil.com/logo.svg)}');
280
+ const root = createRoot(`<style>@import url("data:text/css,${nestedCss}");</style><div class="probe">content</div>`);
281
+ (0, chai_1.expect)(root.querySelector(`.${block_external_resources_1.BLOCKED_RESOURCE_CLASS}`)).to.exist;
282
+ (0, chai_1.expect)(root.querySelector('style')).to.be.null;
283
+ });
284
+ it('preserves data URL stylesheets without external references', () => {
285
+ const nestedCss = encodeURIComponent('.probe{color:red;background-image:url(data:image/png;base64,AA)}');
286
+ const root = createRoot(`<style>@import url("data:text/css,${nestedCss}");</style>`);
287
+ (0, chai_1.expect)(root.querySelector(`.${block_external_resources_1.BLOCKED_RESOURCE_CLASS}`)).to.be.null;
288
+ (0, chai_1.expect)(root.querySelector('style')).to.exist;
289
+ });
290
+ it('blocks a data URL stylesheet whose payload cannot be decoded', () => {
291
+ const root = createRoot('<style>@import url("data:text/css,%ZZurl%28https://evil.com/x.png%29");</style>');
292
+ (0, chai_1.expect)(root.querySelector(`.${block_external_resources_1.BLOCKED_RESOURCE_CLASS}`)).to.exist;
293
+ (0, chai_1.expect)(root.querySelector('style')).to.be.null;
294
+ });
295
+ it('still inspects nested CSS when a data: prefix is allowlisted', () => {
296
+ (0, block_external_resources_1.setAllowedResourceUrls)(['data:']);
297
+ const nestedCss = encodeURIComponent('.probe{background-image:url(https://evil.com/logo.svg)}');
298
+ const root = createRoot(`<style>@import url("data:text/css,${nestedCss}");</style>`);
299
+ (0, chai_1.expect)(root.querySelector(`.${block_external_resources_1.BLOCKED_RESOURCE_CLASS}`)).to.exist;
300
+ (0, chai_1.expect)(root.querySelector('style')).to.be.null;
301
+ });
302
+ it('renders external URL resources but still blocks active embedded content in trusted mode', () => {
303
+ const root = document.createElement('div');
304
+ root.innerHTML = '<img src="https://evil.com/x.gif"><iframe srcdoc="&lt;p&gt;hi&lt;/p&gt;"></iframe>';
305
+ (0, block_external_resources_1.blockExternalResources)(root, false);
306
+ (0, chai_1.expect)(root.querySelector('img')?.getAttribute('src')).to.equal('https://evil.com/x.gif');
307
+ const placeholder = root.querySelector(`.${block_external_resources_1.BLOCKED_RESOURCE_CLASS}`);
308
+ (0, chai_1.expect)(placeholder).to.exist;
309
+ (0, chai_1.expect)(placeholder.textContent).to.contain('(inline external content)');
310
+ (0, chai_1.expect)(root.querySelector('iframe')).to.be.null;
311
+ });
312
+ it('sandboxes embedded content restored from trusted mode', () => {
313
+ const root = document.createElement('div');
314
+ root.innerHTML = '<iframe srcdoc="&lt;img src=x onerror=alert(1)&gt;"></iframe>';
315
+ (0, block_external_resources_1.blockExternalResources)(root, false);
316
+ const placeholder = root.querySelector(`.${block_external_resources_1.BLOCKED_RESOURCE_CLASS}`);
317
+ const restored = (0, block_external_resources_1.restoreBlockedResource)(placeholder);
318
+ (0, chai_1.expect)(restored?.tagName).to.equal('IFRAME');
319
+ (0, chai_1.expect)(restored?.getAttribute('sandbox')).to.equal('');
320
+ });
321
+ it('renders resources whose URL matches the configured allowlist', () => {
322
+ (0, block_external_resources_1.setAllowedResourceUrls)(['https://trusted.example.com/']);
323
+ const root = createRoot('<img src="https://trusted.example.com/logo.png">');
324
+ (0, chai_1.expect)(root.querySelector(`.${block_external_resources_1.BLOCKED_RESOURCE_CLASS}`)).to.be.null;
325
+ (0, chai_1.expect)(root.querySelector('img')?.getAttribute('src')).to.equal('https://trusted.example.com/logo.png');
326
+ });
327
+ it('still blocks resources that do not match the configured allowlist', () => {
328
+ (0, block_external_resources_1.setAllowedResourceUrls)(['https://trusted.example.com/']);
329
+ const root = createRoot('<img src="https://evil.com/x.gif">');
330
+ (0, chai_1.expect)(root.querySelector(`.${block_external_resources_1.BLOCKED_RESOURCE_CLASS}`)).to.exist;
331
+ (0, chai_1.expect)(root.querySelector('img')).to.be.null;
332
+ });
333
+ it('uses text content for displayed URLs', () => {
334
+ const root = createRoot('<img src="https://evil.com/<script>alert(1)</script>.gif">');
335
+ const placeholder = root.querySelector(`.${block_external_resources_1.BLOCKED_RESOURCE_CLASS}`);
336
+ (0, chai_1.expect)(placeholder).to.exist;
337
+ (0, chai_1.expect)(placeholder.querySelector('script')).to.be.null;
338
+ (0, chai_1.expect)(placeholder.textContent).to.contain('https://evil.com/<script>alert(1)</script>.gif');
339
+ });
340
+ it('stores blocked resources outside forgeable DOM attributes', () => {
341
+ const root = createRoot('<img src="https://evil.com/x.gif" alt="tracker">');
342
+ const placeholder = root.querySelector(`.${block_external_resources_1.BLOCKED_RESOURCE_CLASS}`);
343
+ (0, chai_1.expect)(placeholder.dataset.blockedHtml).to.be.undefined;
344
+ const restored = (0, block_external_resources_1.restoreBlockedResource)(placeholder);
345
+ (0, chai_1.expect)(restored?.tagName).to.equal('IMG');
346
+ (0, chai_1.expect)(restored?.getAttribute('src')).to.equal('https://evil.com/x.gif');
347
+ (0, chai_1.expect)(restored?.getAttribute('alt')).to.equal('tracker');
348
+ (0, chai_1.expect)((0, block_external_resources_1.restoreBlockedResource)(placeholder)).to.be.undefined;
349
+ });
350
+ });
351
+ //# sourceMappingURL=block-external-resources.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"block-external-resources.spec.js","sourceRoot":"","sources":["../../../src/browser/chat-response-renderer/block-external-resources.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;AAEjE,IAAI,YAAY,GAAG,IAAA,mBAAW,GAAE,CAAC;AAEjC,+BAA8B;AAC9B,yEAA4I;AAE5I,YAAY,EAAE,CAAC;AAEf,QAAQ,CAAC,wBAAwB,EAAE,GAAG,EAAE;IACpC,MAAM,CAAC,GAAG,EAAE,CAAC,YAAY,GAAG,IAAA,mBAAW,GAAE,CAAC,CAAC;IAC3C,KAAK,CAAC,GAAG,EAAE,CAAC,YAAY,EAAE,CAAC,CAAC;IAC5B,SAAS,CAAC,GAAG,EAAE,CAAC,IAAA,iDAAsB,EAAC,EAAE,CAAC,CAAC,CAAC;IAE5C,MAAM,UAAU,GAAG,CAAC,IAAY,EAAe,EAAE;QAC7C,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC3C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAA,iDAAsB,EAAC,IAAI,CAAC,CAAC;QAC7B,OAAO,IAAI,CAAC;IAChB,CAAC,CAAC;IAEF,EAAE,CAAC,kEAAkE,EAAE,GAAG,EAAE;QACxE,MAAM,IAAI,GAAG,UAAU,CAAC,oCAAoC,CAAC,CAAC;QAE9D,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,iDAAsB,EAAE,CAAgB,CAAC;QACpF,IAAA,aAAM,EAAC,WAAW,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC;QAC7B,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAC7C,IAAA,aAAM,EAAC,WAAW,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;IACzE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uBAAuB,EAAE,GAAG,EAAE;QAC7B,MAAM,IAAI,GAAG,UAAU,CAAC,uCAAuC,CAAC,CAAC;QAEjE,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,IAAI,iDAAsB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QACpE,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;IACjG,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;QACzC,MAAM,IAAI,GAAG,UAAU,CAAC,mBAAmB,CAAC,CAAC;QAE7C,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,IAAI,iDAAsB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QACpE,IAAA,aAAM,EAAC,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAC3D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;QAC5C,MAAM,IAAI,GAAG,UAAU,CAAC,uDAAuD,CAAC,CAAC;QAEjF,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,IAAI,iDAAsB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC;QAClE,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACjD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kCAAkC,EAAE,GAAG,EAAE;QACxC,MAAM,IAAI,GAAG,UAAU,CAAC,4EAA4E,CAAC,CAAC;QAEtG,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,iDAAsB,EAAE,CAAgB,CAAC;QACpF,IAAA,aAAM,EAAC,WAAW,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC;QAC7B,IAAA,aAAM,EAAC,WAAW,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;QAC9D,IAAA,aAAM,EAAC,WAAW,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;QAC9D,IAAA,aAAM,EAAC,WAAW,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;QAC9D,IAAA,aAAM,EAAC,WAAW,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,6BAA6B,CAAC,CAAC;IAC9E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;QAC3C,MAAM,IAAI,GAAG,UAAU,CAAC,6CAA6C,CAAC,CAAC;QAEvE,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,IAAI,iDAAsB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QACpE,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;IACvG,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iEAAiE,EAAE,GAAG,EAAE;QACvE,MAAM,IAAI,GAAG,UAAU,CAAC,uEAAuE,CAAC,CAAC;QAEjG,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,iDAAsB,EAAE,CAAgB,CAAC;QACpF,IAAA,aAAM,EAAC,WAAW,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC;QAC7B,IAAA,aAAM,EAAC,WAAW,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;QACrE,IAAA,aAAM,EAAC,WAAW,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,2BAA2B,CAAC,CAAC;IAChF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uEAAuE,EAAE,GAAG,EAAE;QAC7E,MAAM,IAAI,GAAG,UAAU,CAAC,qFAAqF,CAAC,CAAC;QAE/G,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,IAAI,iDAAsB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC;QAClE,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAChD,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;IACjG,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iCAAiC,EAAE,GAAG,EAAE;QACvC,MAAM,IAAI,GAAG,UAAU,CAAC,oDAAoD,CAAC,CAAC;QAE9E,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,IAAI,iDAAsB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC;QAClE,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iCAAiC,EAAE,GAAG,EAAE;QACvC,MAAM,IAAI,GAAG,UAAU,CAAC,iCAAiC,CAAC,CAAC;QAE3D,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,IAAI,iDAAsB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC;QAClE,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4BAA4B,EAAE,GAAG,EAAE;QAClC,MAAM,IAAI,GAAG,UAAU,CAAC,0DAA0D,CAAC,CAAC;QAEpF,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,iDAAsB,EAAE,CAAgB,CAAC;QACpF,IAAA,aAAM,EAAC,WAAW,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC;QAC7B,IAAA,aAAM,EAAC,WAAW,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;QACrE,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0BAA0B,EAAE,GAAG,EAAE;QAChC,MAAM,IAAI,GAAG,UAAU,CAAC,qEAAqE,CAAC,CAAC;QAE/F,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,iDAAsB,EAAE,CAAgB,CAAC;QACpF,IAAA,aAAM,EAAC,WAAW,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC;QAC7B,IAAA,aAAM,EAAC,WAAW,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,iCAAiC,CAAC,CAAC;QAC9E,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACjD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;QACzC,MAAM,IAAI,GAAG,UAAU,CAAC,oFAAoF,CAAC,CAAC;QAE9G,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,iDAAsB,EAAE,CAAgB,CAAC;QACpF,IAAA,aAAM,EAAC,WAAW,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC;QAC7B,IAAA,aAAM,EAAC,WAAW,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,6BAA6B,CAAC,CAAC;QAC1E,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACrD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oDAAoD,EAAE,GAAG,EAAE;QAC1D,MAAM,IAAI,GAAG,UAAU,CAAC,0FAA0F,CAAC,CAAC;QAEpH,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,iDAAsB,EAAE,CAAgB,CAAC;QACpF,IAAA,aAAM,EAAC,WAAW,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC;QAC7B,IAAA,aAAM,EAAC,WAAW,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,6BAA6B,CAAC,CAAC;QAC1E,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACrD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2CAA2C,EAAE,GAAG,EAAE;QACjD,MAAM,IAAI,GAAG,UAAU,CAAC,kFAAkF,CAAC,CAAC;QAE5G,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,IAAI,iDAAsB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QACpE,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;IACtG,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;QACzC,MAAM,IAAI,GAAG,UAAU,CAAC,8FAA8F,CAAC,CAAC;QAExH,IAAA,aAAM,EAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,iDAAsB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAC9E,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAChD,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sEAAsE,EAAE,GAAG,EAAE;QAC5E,MAAM,IAAI,GAAG,UAAU,CAAC,uFAAuF,CAAC,CAAC;QAEjH,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,iDAAsB,EAAE,CAAgB,CAAC;QACpF,IAAA,aAAM,EAAC,WAAW,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC;QAC7B,IAAA,aAAM,EAAC,WAAW,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,4BAA4B,CAAC,CAAC;QACzE,IAAA,aAAM,EAAC,WAAW,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,6BAA6B,CAAC,CAAC;QAC1E,IAAA,aAAM,EAAC,WAAW,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,6BAA6B,CAAC,CAAC;IAC9E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gCAAgC,EAAE,GAAG,EAAE;QACtC,MAAM,IAAI,GAAG,UAAU,CAAC,mCAAmC,CAAC,CAAC;QAE7D,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,IAAI,iDAAsB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC;QAClE,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACpD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8BAA8B,EAAE,GAAG,EAAE;QACpC,MAAM,IAAI,GAAG,UAAU,CAAC,kDAAkD,CAAC,CAAC;QAE5E,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,iDAAsB,EAAE,CAAgB,CAAC;QACpF,IAAA,aAAM,EAAC,WAAW,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC;QAC7B,IAAA,aAAM,EAAC,WAAW,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,2BAA2B,CAAC,CAAC;IAC5E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;QAC3C,MAAM,IAAI,GAAG,UAAU,CAAC,+DAA+D,CAAC,CAAC;QAEzF,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,iDAAsB,EAAE,CAAgB,CAAC;QACpF,MAAM,QAAQ,GAAG,IAAA,iDAAsB,EAAC,WAAW,CAAC,CAAC;QACrD,IAAA,aAAM,EAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC7C,IAAA,aAAM,EAAC,QAAQ,EAAE,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC3D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6EAA6E,EAAE,GAAG,EAAE;QACnF,MAAM,IAAI,GAAG,UAAU,CAAC,4FAA4F,CAAC,CAAC;QAEtH,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,iDAAsB,EAAE,CAAgB,CAAC;QACpF,MAAM,QAAQ,GAAG,IAAA,iDAAsB,EAAC,WAAW,CAAC,CAAC;QACrD,IAAA,aAAM,EAAC,QAAQ,EAAE,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC3D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wDAAwD,EAAE,GAAG,EAAE;QAC9D,MAAM,IAAI,GAAG,UAAU,CAAC,0BAA0B,CAAC,CAAC;QAEpD,MAAM,YAAY,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,iDAAsB,EAAE,CAAC,CAAC;QACzE,IAAA,aAAM,EAAC,YAAY,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACvC,IAAA,aAAM,EAAC,YAAY,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,2BAA2B,CAAC,CAAC;QAC5E,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAChD,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+CAA+C,EAAE,GAAG,EAAE;QACrD,MAAM,IAAI,GAAG,UAAU,CAAC,+EAA+E,CAAC,CAAC;QAEzG,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,IAAI,iDAAsB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC;QAClE,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACpD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qDAAqD,EAAE,GAAG,EAAE;QAC3D,MAAM,IAAI,GAAG,UAAU,CAAC,wEAAwE,CAAC,CAAC;QAElG,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,iDAAsB,EAAE,CAAgB,CAAC;QACpF,IAAA,aAAM,EAAC,WAAW,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC;QAC7B,IAAA,aAAM,EAAC,WAAW,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;QACrE,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8BAA8B,EAAE,GAAG,EAAE;QACpC,MAAM,IAAI,GAAG,UAAU,CAAC,0GAA0G,CAAC,CAAC;QAEpI,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,IAAI,iDAAsB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QACpE,IAAA,aAAM,EAAC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6EAA6E,EAAE,GAAG,EAAE;QACnF,MAAM,IAAI,GAAG,UAAU,CAAC,yEAAyE,CAAC,CAAC;QAEnG,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,iDAAsB,EAAE,CAAgB,CAAC;QACpF,MAAM,GAAG,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QACtC,IAAA,aAAM,EAAC,WAAW,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC;QAC7B,IAAA,aAAM,EAAC,WAAW,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QACxD,IAAA,aAAM,EAAC,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC;QACrB,IAAA,aAAM,EAAC,GAAG,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAChD,IAAA,aAAM,EAAC,GAAG,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC7C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+EAA+E,EAAE,GAAG,EAAE;QACrF,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC3C,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC1C,GAAG,CAAC,YAAY,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;QACxC,MAAM,YAAY,GAAG,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAChD,GAAG,CAAC,YAAY,GAAG,CAAC,aAAqB,EAAE,EAAE,CAAC,aAAa,KAAK,OAAO;YACnE,CAAC,CAAC,sEAAsE;YACxE,CAAC,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;QAClC,GAAG,CAAC,WAAW,GAAG,SAAS,CAAC;QAC5B,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACtB,IAAA,iDAAsB,EAAC,IAAI,CAAC,CAAC;QAE7B,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,iDAAsB,EAAE,CAAgB,CAAC;QACpF,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC1C,IAAA,aAAM,EAAC,WAAW,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC;QAC7B,IAAA,aAAM,EAAC,WAAW,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;QACrE,IAAA,aAAM,EAAC,OAAO,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC;QACzB,IAAA,aAAM,EAAC,OAAO,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IAClE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sDAAsD,EAAE,GAAG,EAAE;QAC5D,MAAM,IAAI,GAAG,UAAU,CAAC,wFAAwF,CAAC,CAAC;QAElH,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,iDAAsB,EAAE,CAAgB,CAAC;QACpF,IAAA,aAAM,EAAC,WAAW,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC;QAC7B,IAAA,aAAM,EAAC,WAAW,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,2BAA2B,CAAC,CAAC;QACxE,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAC/C,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAC3E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gEAAgE,EAAE,GAAG,EAAE;QACtE,MAAM,IAAI,GAAG,UAAU,CAAC,qDAAqD,CAAC,CAAC;QAE/E,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,iDAAsB,EAAE,CAAgB,CAAC;QACpF,IAAA,aAAM,EAAC,WAAW,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC;QAC7B,IAAA,aAAM,EAAC,WAAW,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,2BAA2B,CAAC,CAAC;QACxE,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;QAClD,MAAM,IAAI,GAAG,UAAU,CAAC,kEAAkE,CAAC,CAAC;QAE5F,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,iDAAsB,EAAE,CAAgB,CAAC;QACpF,IAAA,aAAM,EAAC,WAAW,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC;QAC7B,IAAA,aAAM,EAAC,WAAW,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;QACrE,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iEAAiE,EAAE,GAAG,EAAE;QACvE,MAAM,IAAI,GAAG,UAAU,CAAC,wDAAwD,CAAC,CAAC;QAElF,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,IAAI,iDAAsB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC;QAClE,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gEAAgE,EAAE,GAAG,EAAE;QACtE,MAAM,IAAI,GAAG,UAAU,CAAC,qEAAqE,CAAC,CAAC;QAE/F,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,IAAI,iDAAsB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC;QAClE,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oDAAoD,EAAE,GAAG,EAAE;QAC1D,MAAM,IAAI,GAAG,UAAU,CAAC,iHAAiH,CAAC,CAAC;QAE3I,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,IAAI,iDAAsB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QACpE,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC;IACjD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;QACnD,MAAM,IAAI,GAAG,UAAU,CAAC,mEAAmE,CAAC,CAAC;QAE7F,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,iDAAsB,EAAE,CAAgB,CAAC;QACpF,IAAA,aAAM,EAAC,WAAW,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC;QAC7B,IAAA,aAAM,EAAC,WAAW,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,8BAA8B,CAAC,CAAC;QAC3E,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IAClD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE;QAC7C,MAAM,IAAI,GAAG,UAAU,CAAC,sEAAsE,CAAC,CAAC;QAEhG,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,iDAAsB,EAAE,CAAgB,CAAC;QACpF,IAAA,aAAM,EAAC,WAAW,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC;QAC7B,IAAA,aAAM,EAAC,WAAW,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,+BAA+B,CAAC,CAAC;QAC5E,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IAClD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wCAAwC,EAAE,GAAG,EAAE;QAC9C,MAAM,IAAI,GAAG,UAAU,CAAC,4IAA4I,CAAC,CAAC;QAEtK,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,IAAI,iDAAsB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QACpE,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;QACtF,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC;IAC/C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yBAAyB,EAAE,GAAG,EAAE;QAC/B,MAAM,IAAI,GAAG,UAAU,CAAC,4EAA4E,CAAC,CAAC;QAEtG,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,IAAI,iDAAsB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QACpE,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,0BAA0B,CAAC,CAAC;IACpG,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wFAAwF,EAAE,GAAG,EAAE;QAC9F,MAAM,SAAS,GAAG,kBAAkB,CAAC,yDAAyD,CAAC,CAAC;QAChG,MAAM,IAAI,GAAG,UAAU,CAAC,qCAAqC,SAAS,6CAA6C,CAAC,CAAC;QAErH,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,IAAI,iDAAsB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC;QAClE,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4DAA4D,EAAE,GAAG,EAAE;QAClE,MAAM,SAAS,GAAG,kBAAkB,CAAC,kEAAkE,CAAC,CAAC;QACzG,MAAM,IAAI,GAAG,UAAU,CAAC,qCAAqC,SAAS,aAAa,CAAC,CAAC;QAErF,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,IAAI,iDAAsB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QACpE,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC;IACjD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8DAA8D,EAAE,GAAG,EAAE;QACpE,MAAM,IAAI,GAAG,UAAU,CAAC,iFAAiF,CAAC,CAAC;QAE3G,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,IAAI,iDAAsB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC;QAClE,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8DAA8D,EAAE,GAAG,EAAE;QACpE,IAAA,iDAAsB,EAAC,CAAC,OAAO,CAAC,CAAC,CAAC;QAClC,MAAM,SAAS,GAAG,kBAAkB,CAAC,yDAAyD,CAAC,CAAC;QAChG,MAAM,IAAI,GAAG,UAAU,CAAC,qCAAqC,SAAS,aAAa,CAAC,CAAC;QAErF,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,IAAI,iDAAsB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC;QAClE,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yFAAyF,EAAE,GAAG,EAAE;QAC/F,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC3C,IAAI,CAAC,SAAS,GAAG,oFAAoF,CAAC;QACtG,IAAA,iDAAsB,EAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAEpC,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;QAC1F,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,iDAAsB,EAAE,CAAgB,CAAC;QACpF,IAAA,aAAM,EAAC,WAAW,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC;QAC7B,IAAA,aAAM,EAAC,WAAW,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,2BAA2B,CAAC,CAAC;QACxE,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACpD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uDAAuD,EAAE,GAAG,EAAE;QAC7D,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC3C,IAAI,CAAC,SAAS,GAAG,+DAA+D,CAAC;QACjF,IAAA,iDAAsB,EAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAEpC,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,iDAAsB,EAAE,CAAgB,CAAC;QACpF,MAAM,QAAQ,GAAG,IAAA,iDAAsB,EAAC,WAAW,CAAC,CAAC;QACrD,IAAA,aAAM,EAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC7C,IAAA,aAAM,EAAC,QAAQ,EAAE,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC3D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8DAA8D,EAAE,GAAG,EAAE;QACpE,IAAA,iDAAsB,EAAC,CAAC,8BAA8B,CAAC,CAAC,CAAC;QACzD,MAAM,IAAI,GAAG,UAAU,CAAC,kDAAkD,CAAC,CAAC;QAE5E,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,IAAI,iDAAsB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QACpE,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC;IAC5G,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mEAAmE,EAAE,GAAG,EAAE;QACzE,IAAA,iDAAsB,EAAC,CAAC,8BAA8B,CAAC,CAAC,CAAC;QACzD,MAAM,IAAI,GAAG,UAAU,CAAC,oCAAoC,CAAC,CAAC;QAE9D,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,IAAI,iDAAsB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC;QAClE,IAAA,aAAM,EAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACjD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;QAC5C,MAAM,IAAI,GAAG,UAAU,CAAC,4DAA4D,CAAC,CAAC;QAEtF,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,iDAAsB,EAAE,CAAgB,CAAC;QACpF,IAAA,aAAM,EAAC,WAAW,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC;QAC7B,IAAA,aAAM,EAAC,WAAW,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QACvD,IAAA,aAAM,EAAC,WAAW,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,gDAAgD,CAAC,CAAC;IACjG,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2DAA2D,EAAE,GAAG,EAAE;QACjE,MAAM,IAAI,GAAG,UAAU,CAAC,kDAAkD,CAAC,CAAC;QAE5E,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,iDAAsB,EAAE,CAAgB,CAAC;QACpF,IAAA,aAAM,EAAC,WAAW,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC;QAExD,MAAM,QAAQ,GAAG,IAAA,iDAAsB,EAAC,WAAW,CAAC,CAAC;QACrD,IAAA,aAAM,EAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC1C,IAAA,aAAM,EAAC,QAAQ,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;QACzE,IAAA,aAAM,EAAC,QAAQ,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAC1D,IAAA,aAAM,EAAC,IAAA,iDAAsB,EAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC;IAChE,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
@@ -0,0 +1,7 @@
1
+ import * as React from '@theia/core/shared/react';
2
+ export interface BlockedResourcePlaceholderProps {
3
+ resources: string[];
4
+ }
5
+ export declare const BlockedResourcePlaceholder: ({ resources }: BlockedResourcePlaceholderProps) => React.ReactNode;
6
+ export declare const renderBlockedResourcePlaceholder: (resources: string[]) => string;
7
+ //# sourceMappingURL=blocked-resource-placeholder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"blocked-resource-placeholder.d.ts","sourceRoot":"","sources":["../../../src/browser/chat-response-renderer/blocked-resource-placeholder.tsx"],"names":[],"mappings":"AAgBA,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAKlD,MAAM,WAAW,+BAA+B;IAC5C,SAAS,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,eAAO,MAAM,0BAA0B,GAAI,eAAe,+BAA+B,KAAG,KAAK,CAAC,SAgBjG,CAAC;AAEF,eAAO,MAAM,gCAAgC,GAAI,WAAW,MAAM,EAAE,KAAG,MAAoF,CAAC"}
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ // *****************************************************************************
3
+ // Copyright (C) 2026 EclipseSource GmbH.
4
+ //
5
+ // This program and the accompanying materials are made available under the
6
+ // terms of the Eclipse Public License v. 2.0 which is available at
7
+ // http://www.eclipse.org/legal/epl-2.0.
8
+ //
9
+ // This Source Code may also be made available under the following Secondary
10
+ // Licenses when the conditions for such availability set forth in the Eclipse
11
+ // Public License v. 2.0 are satisfied: GNU General Public License, version 2
12
+ // with the GNU Classpath Exception which is available at
13
+ // https://www.gnu.org/software/classpath/license.html.
14
+ //
15
+ // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
+ // *****************************************************************************
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.renderBlockedResourcePlaceholder = exports.BlockedResourcePlaceholder = void 0;
19
+ const React = require("@theia/core/shared/react");
20
+ // eslint-disable-next-line import/no-extraneous-dependencies
21
+ const server_1 = require("react-dom/server");
22
+ const nls_1 = require("@theia/core/lib/common/nls");
23
+ const BlockedResourcePlaceholder = ({ resources }) => {
24
+ const firstResource = resources[0] ?? nls_1.nls.localize('theia/ai-chat-ui/blockedResource/inlineContent', '(inline external content)');
25
+ return React.createElement(React.Fragment, null,
26
+ React.createElement("span", { className: 'theia-blocked-resource-icon codicon codicon-shield' }),
27
+ React.createElement("span", { className: 'theia-blocked-resource-label' },
28
+ nls_1.nls.localize('theia/ai-chat-ui/blockedResource/label', 'External resource blocked:'),
29
+ ' ',
30
+ React.createElement("span", { className: 'theia-blocked-resource-url', title: firstResource }, firstResource)),
31
+ resources.length > 1 && React.createElement("details", { className: 'theia-blocked-resource-details' },
32
+ React.createElement("summary", null, nls_1.nls.localize('theia/ai-chat-ui/blockedResource/resourcesToAllow', '{0} resources will be enabled', resources.length)),
33
+ React.createElement("ul", null, resources.map(resource => React.createElement("li", { key: resource, title: resource }, resource)))),
34
+ React.createElement("button", { type: 'button', className: 'theia-blocked-resource-allow' }, nls_1.nls.localize('theia/ai-chat-ui/blockedResource/allow', 'Allow this blocked content')));
35
+ };
36
+ exports.BlockedResourcePlaceholder = BlockedResourcePlaceholder;
37
+ const renderBlockedResourcePlaceholder = (resources) => (0, server_1.renderToStaticMarkup)(React.createElement(exports.BlockedResourcePlaceholder, { resources: resources }));
38
+ exports.renderBlockedResourcePlaceholder = renderBlockedResourcePlaceholder;
39
+ //# sourceMappingURL=blocked-resource-placeholder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"blocked-resource-placeholder.js","sourceRoot":"","sources":["../../../src/browser/chat-response-renderer/blocked-resource-placeholder.tsx"],"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,kDAAkD;AAClD,6DAA6D;AAC7D,6CAAwD;AACxD,oDAAiD;AAM1C,MAAM,0BAA0B,GAAG,CAAC,EAAE,SAAS,EAAmC,EAAmB,EAAE;IAC1G,MAAM,aAAa,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,SAAG,CAAC,QAAQ,CAAC,gDAAgD,EAAE,2BAA2B,CAAC,CAAC;IAClI,OAAO;QACH,8BAAM,SAAS,EAAC,oDAAoD,GAAQ;QAC5E,8BAAM,SAAS,EAAC,8BAA8B;YACzC,SAAG,CAAC,QAAQ,CAAC,wCAAwC,EAAE,4BAA4B,CAAC;YAAE,GAAG;YAC1F,8BAAM,SAAS,EAAC,4BAA4B,EAAC,KAAK,EAAE,aAAa,IAAG,aAAa,CAAQ,CACtF;QACN,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,iCAAS,SAAS,EAAC,gCAAgC;YACxE,qCAAU,SAAG,CAAC,QAAQ,CAAC,mDAAmD,EAAE,+BAA+B,EAAE,SAAS,CAAC,MAAM,CAAC,CAAW;YACzI,gCACK,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,4BAAI,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,IAAG,QAAQ,CAAM,CAAC,CAC9E,CACC;QACV,gCAAQ,IAAI,EAAC,QAAQ,EAAC,SAAS,EAAC,8BAA8B,IAAE,SAAG,CAAC,QAAQ,CAAC,wCAAwC,EAAE,4BAA4B,CAAC,CAAU,CAC/J,CAAC;AACR,CAAC,CAAC;AAhBW,QAAA,0BAA0B,8BAgBrC;AAEK,MAAM,gCAAgC,GAAG,CAAC,SAAmB,EAAU,EAAE,CAAC,IAAA,6BAAoB,EAAC,oBAAC,kCAA0B,IAAC,SAAS,EAAE,SAAS,GAAI,CAAC,CAAC;AAA/I,QAAA,gCAAgC,oCAA+G"}
@@ -0,0 +1,8 @@
1
+ import { ChatResponsePartRenderer } from '../chat-response-part-renderer';
2
+ import { ChatResponseContent, CompactionChatResponseContent } from '@theia/ai-chat/lib/common';
3
+ import { ReactNode } from '@theia/core/shared/react';
4
+ export declare class CompactionPartRenderer implements ChatResponsePartRenderer<CompactionChatResponseContent> {
5
+ canHandle(response: ChatResponseContent): number;
6
+ render(response: CompactionChatResponseContent): ReactNode;
7
+ }
8
+ //# sourceMappingURL=compaction-part-renderer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compaction-part-renderer.d.ts","sourceRoot":"","sources":["../../../src/browser/chat-response-renderer/compaction-part-renderer.tsx"],"names":[],"mappings":"AAgBA,OAAO,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAE1E,OAAO,EAAE,mBAAmB,EAAE,6BAA6B,EAAE,MAAM,2BAA2B,CAAC;AAC/F,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAIrD,qBACa,sBAAuB,YAAW,wBAAwB,CAAC,6BAA6B,CAAC;IAElG,SAAS,CAAC,QAAQ,EAAE,mBAAmB,GAAG,MAAM;IAOhD,MAAM,CAAC,QAAQ,EAAE,6BAA6B,GAAG,SAAS;CAkB7D"}
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ // *****************************************************************************
3
+ // Copyright (C) 2026 EclipseSource GmbH.
4
+ //
5
+ // This program and the accompanying materials are made available under the
6
+ // terms of the Eclipse Public License v. 2.0 which is available at
7
+ // http://www.eclipse.org/legal/epl-2.0.
8
+ //
9
+ // This Source Code may also be made available under the following Secondary
10
+ // Licenses when the conditions for such availability set forth in the Eclipse
11
+ // Public License v. 2.0 are satisfied: GNU General Public License, version 2
12
+ // with the GNU Classpath Exception which is available at
13
+ // https://www.gnu.org/software/classpath/license.html.
14
+ //
15
+ // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
+ // *****************************************************************************
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.CompactionPartRenderer = void 0;
19
+ const tslib_1 = require("tslib");
20
+ const inversify_1 = require("@theia/core/shared/inversify");
21
+ const common_1 = require("@theia/ai-chat/lib/common");
22
+ const nls_1 = require("@theia/core/lib/common/nls");
23
+ const React = require("@theia/core/shared/react");
24
+ let CompactionPartRenderer = class CompactionPartRenderer {
25
+ canHandle(response) {
26
+ if (common_1.CompactionChatResponseContent.is(response)) {
27
+ return 10;
28
+ }
29
+ return -1;
30
+ }
31
+ render(response) {
32
+ const label = nls_1.nls.localize('theia/ai/chat-ui/compaction-part-renderer/compactionMarker', 'Conversation compacted');
33
+ if (response.summary) {
34
+ return (React.createElement("div", { className: 'theia-ChatCompactionMarker' },
35
+ React.createElement("details", null,
36
+ React.createElement("summary", null, label),
37
+ React.createElement("div", { className: 'theia-ChatCompactionMarker-summary' }, response.summary))));
38
+ }
39
+ return (React.createElement("div", { className: 'theia-ChatCompactionMarker' },
40
+ React.createElement("span", { className: 'theia-ChatCompactionMarker-label' }, label)));
41
+ }
42
+ };
43
+ exports.CompactionPartRenderer = CompactionPartRenderer;
44
+ exports.CompactionPartRenderer = CompactionPartRenderer = tslib_1.__decorate([
45
+ (0, inversify_1.injectable)()
46
+ ], CompactionPartRenderer);
47
+ //# sourceMappingURL=compaction-part-renderer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compaction-part-renderer.js","sourceRoot":"","sources":["../../../src/browser/chat-response-renderer/compaction-part-renderer.tsx"],"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;;;;AAGhF,4DAA0D;AAC1D,sDAA+F;AAE/F,oDAAiD;AACjD,kDAAkD;AAG3C,IAAM,sBAAsB,GAA5B,MAAM,sBAAsB;IAE/B,SAAS,CAAC,QAA6B;QACnC,IAAI,sCAA6B,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC7C,OAAO,EAAE,CAAC;QACd,CAAC;QACD,OAAO,CAAC,CAAC,CAAC;IACd,CAAC;IAED,MAAM,CAAC,QAAuC;QAC1C,MAAM,KAAK,GAAG,SAAG,CAAC,QAAQ,CAAC,4DAA4D,EAAE,wBAAwB,CAAC,CAAC;QACnH,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;YACnB,OAAO,CACH,6BAAK,SAAS,EAAC,4BAA4B;gBACvC;oBACI,qCAAU,KAAK,CAAW;oBAC1B,6BAAK,SAAS,EAAC,oCAAoC,IAAE,QAAQ,CAAC,OAAO,CAAO,CACtE,CACR,CACT,CAAC;QACN,CAAC;QACD,OAAO,CACH,6BAAK,SAAS,EAAC,4BAA4B;YACvC,8BAAM,SAAS,EAAC,kCAAkC,IAAE,KAAK,CAAQ,CAC/D,CACT,CAAC;IACN,CAAC;CACJ,CAAA;AA3BY,wDAAsB;iCAAtB,sBAAsB;IADlC,IAAA,sBAAU,GAAE;GACA,sBAAsB,CA2BlC"}
@@ -255,7 +255,7 @@ class DelegatedChat extends React.Component {
255
255
  }
256
256
  else if (isError) {
257
257
  statusIcon = 'codicon-error';
258
- statusText = core_1.nls.localize('theia/ai/chat-ui/delegation-response-renderer/status/error', 'error');
258
+ statusText = core_1.nls.localizeByDefault('error');
259
259
  }
260
260
  else {
261
261
  statusIcon = 'codicon-loading';
@@ -1 +1 @@
1
- {"version":3,"file":"delegation-tool-renderer.js","sourceRoot":"","sources":["../../../src/browser/chat-response-renderer/delegation-tool-renderer.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"delegation-tool-renderer.js","sourceRoot":"","sources":["../../../src/browser/chat-response-renderer/delegation-tool-renderer.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import { FrontendApplicationContribution } from '@theia/core/lib/browser';
2
+ import { ChatViewPreferences } from '../chat-view-preferences';
3
+ /**
4
+ * Keeps the resource allowlist used by {@link blockExternalResources} in sync with the
5
+ * `ai-features.chat.allowedResourceUrls` preference.
6
+ */
7
+ export declare class ExternalResourceAllowlistContribution implements FrontendApplicationContribution {
8
+ protected readonly preferences: ChatViewPreferences;
9
+ onStart(): void;
10
+ }
11
+ //# sourceMappingURL=external-resource-allowlist-contribution.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"external-resource-allowlist-contribution.d.ts","sourceRoot":"","sources":["../../../src/browser/chat-response-renderer/external-resource-allowlist-contribution.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,+BAA+B,EAAE,MAAM,yBAAyB,CAAC;AAE1E,OAAO,EAAmC,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAGhG;;;GAGG;AACH,qBACa,qCAAsC,YAAW,+BAA+B;IAGzF,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,mBAAmB,CAAC;IAEpD,OAAO,IAAI,IAAI;CAUlB"}