Address PR #1214 code review feedback
- Fix template-expanded URIs not rendering: construct synthetic Resource from readState.uri when the URI is absent from the resources list - Fix non-image blob content rendering raw base64: show placeholder message; also handle audio blobs properly - Hide mimeType display when multiple content items to avoid confusion - Rename ResourceControls selectedTemplate → selectedTemplateUri for consistency with selectedUri and selectedResourceUri Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
d817c46911
commit
8c9aac6df1
2 changed files with 26 additions and 12 deletions
|
|
@ -22,7 +22,7 @@ export interface ResourceControlsProps {
|
|||
templates: ResourceTemplate[];
|
||||
subscriptions: InspectorResourceSubscription[];
|
||||
selectedUri?: string;
|
||||
selectedTemplate?: string;
|
||||
selectedTemplateUri?: string;
|
||||
listChanged: boolean;
|
||||
onRefreshList: () => void;
|
||||
onSelectUri: (uri: string) => void;
|
||||
|
|
@ -46,7 +46,7 @@ export function ResourceControls({
|
|||
templates,
|
||||
subscriptions,
|
||||
selectedUri,
|
||||
selectedTemplate,
|
||||
selectedTemplateUri,
|
||||
listChanged,
|
||||
onRefreshList,
|
||||
onSelectUri,
|
||||
|
|
@ -137,9 +137,9 @@ export function ResourceControls({
|
|||
<ResourceListItem
|
||||
key={template.uriTemplate}
|
||||
resource={template}
|
||||
selected={template.uriTemplate === selectedTemplate}
|
||||
selected={template.uriTemplate === selectedTemplateUri}
|
||||
onClick={() => {
|
||||
if (template.uriTemplate !== selectedTemplate)
|
||||
if (template.uriTemplate !== selectedTemplateUri)
|
||||
onSelectTemplate(template.uriTemplate);
|
||||
}}
|
||||
/>
|
||||
|
|
|
|||
|
|
@ -30,7 +30,13 @@ function toContentBlock(
|
|||
if (mimeType.startsWith("image/")) {
|
||||
return { type: "image", data: item.blob, mimeType };
|
||||
}
|
||||
return { type: "text", text: item.blob };
|
||||
if (mimeType.startsWith("audio/")) {
|
||||
return { type: "audio", data: item.blob, mimeType };
|
||||
}
|
||||
return {
|
||||
type: "text",
|
||||
text: `[Binary content (${mimeType}) — preview not supported]`,
|
||||
};
|
||||
}
|
||||
|
||||
function formatLastUpdated(date: Date): string {
|
||||
|
|
@ -113,7 +119,7 @@ export function ResourcePreviewPanel({
|
|||
) : (
|
||||
<Spacer />
|
||||
)}
|
||||
<MimeText>{mimeType}</MimeText>
|
||||
{contents.length <= 1 && <MimeText>{mimeType}</MimeText>}
|
||||
</MetaRow>
|
||||
<FooterRow>
|
||||
<AnnotationGroup>
|
||||
|
|
|
|||
Loading…
Reference in a new issue