feat(media): add reference-aware S3 image delivery
This commit is contained in:
@@ -27,6 +27,7 @@ import {
|
||||
} from "@/components/admin/admin-sidebar";
|
||||
import { BlockCanvas } from "@/components/admin/block-canvas";
|
||||
import { EditorInspector } from "@/components/admin/editor-inspector";
|
||||
import type { UploadedMedia } from "@/components/admin/media-uploader";
|
||||
import {
|
||||
AlertDialog,
|
||||
AlertDialogAction,
|
||||
@@ -173,6 +174,28 @@ export function EditorWorkspace({
|
||||
}
|
||||
}
|
||||
|
||||
function addUploadedMedia(media: UploadedMedia) {
|
||||
const block: SerializedBlock = {
|
||||
id: crypto.randomUUID(),
|
||||
type: "image",
|
||||
schemaVersion: 1,
|
||||
config: {
|
||||
mediaId: media.id,
|
||||
alt: media.fileName.replace(/\.[^.]+$/u, ""),
|
||||
fit: "cover",
|
||||
},
|
||||
responsiveLayout: {
|
||||
width: "wide",
|
||||
mobileSpan: 4,
|
||||
tabletSpan: 8,
|
||||
desktopSpan: 12,
|
||||
hideOnMobile: false,
|
||||
},
|
||||
sortOrder: draft.blocks.length,
|
||||
};
|
||||
insert(block);
|
||||
}
|
||||
|
||||
const inspector = (
|
||||
<EditorInspector
|
||||
snapshot={snapshot}
|
||||
@@ -183,6 +206,7 @@ export function EditorWorkspace({
|
||||
onDataSourceChange={(source) => setDataSources((current) => ({ ...current, [source.id]: source }))}
|
||||
onSaveDataSource={saveSource}
|
||||
sourceSaving={sourceSaving}
|
||||
onMediaReady={addUploadedMedia}
|
||||
/>
|
||||
);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user