mirror of
https://github.com/toeverything/AFFiNE.git
synced 2026-08-08 20:57:08 +08:00
18 lines
647 B
TypeScript
18 lines
647 B
TypeScript
import type { FromSnapshotPayload, SnapshotNode } from '@blocksuite/store';
|
|
import { BaseBlockTransformer } from '@blocksuite/store';
|
|
|
|
import type { AttachmentBlockProps } from './attachment-model.js';
|
|
|
|
export class AttachmentBlockTransformer extends BaseBlockTransformer<AttachmentBlockProps> {
|
|
override async fromSnapshot(
|
|
payload: FromSnapshotPayload
|
|
): Promise<SnapshotNode<AttachmentBlockProps>> {
|
|
const snapshotRet = await super.fromSnapshot(payload);
|
|
const sourceId = snapshotRet.props.sourceId;
|
|
if (!payload.assets.isEmpty() && sourceId)
|
|
await payload.assets.writeToBlob(sourceId);
|
|
|
|
return snapshotRet;
|
|
}
|
|
}
|