From 04f3d88e2c1376458a747d1443e8827271663704 Mon Sep 17 00:00:00 2001 From: EYHN Date: Fri, 13 Jun 2025 19:30:57 +0900 Subject: [PATCH] feat(nbstore): add more data to indexer (#12815) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## Summary by CodeRabbit - **Bug Fixes** - Improved display of image and attachment blocks by ensuring image captions are shown as content for images, while attachment names remain as content for attachments. #### PR Dependency Tree * **PR #12815** 👈 This tree was auto-generated by [Charcoal](https://github.com/danerwilliams/charcoal) --------- Co-authored-by: fengmk2 --- .../__snapshots__/blocksute.spec.ts.md | 6 ++++++ .../__snapshots__/blocksute.spec.ts.snap | Bin 6692 -> 6717 bytes .../__snapshots__/reader.spec.ts.snap | 6 ++++++ packages/common/reader/src/reader.ts | 14 +++++++++++++- 4 files changed, 25 insertions(+), 1 deletion(-) diff --git a/packages/backend/server/src/core/utils/__tests__/__snapshots__/blocksute.spec.ts.md b/packages/backend/server/src/core/utils/__tests__/__snapshots__/blocksute.spec.ts.md index b10017f90e..cc8182962e 100644 --- a/packages/backend/server/src/core/utils/__tests__/__snapshots__/blocksute.spec.ts.md +++ b/packages/backend/server/src/core/utils/__tests__/__snapshots__/blocksute.spec.ts.md @@ -605,6 +605,7 @@ Generated by [AVA](https://avajs.dev). 'BFZk3c2ERp-sliRvA7MQ_p3NdkdCLt2Ze0DQ9i21dpA=', ], blockId: 'lcZphIJe63', + content: '', docId: 'doc-0', flavour: 'affine:image', parentBlockId: '6x7ALjUDjj', @@ -619,6 +620,7 @@ Generated by [AVA](https://avajs.dev). 'HWvCItS78DzPGbwcuaGcfkpVDUvL98IvH5SIK8-AcL8=', ], blockId: 'JlgVJdWU12', + content: '', docId: 'doc-0', flavour: 'affine:image', parentBlockId: '6x7ALjUDjj', @@ -633,6 +635,7 @@ Generated by [AVA](https://avajs.dev). 'ZRKpsBoC88qEMmeiXKXqywfA1rLvWoLa5rpEh9x9Oj0=', ], blockId: 'lht7AqBqnF', + content: '', docId: 'doc-0', flavour: 'affine:image', parentBlockId: '6x7ALjUDjj', @@ -1236,6 +1239,7 @@ Generated by [AVA](https://avajs.dev). 'BFZk3c2ERp-sliRvA7MQ_p3NdkdCLt2Ze0DQ9i21dpA=', ], blockId: 'lcZphIJe63', + content: '', docId: 'doc-0', flavour: 'affine:image', parentBlockId: '6x7ALjUDjj', @@ -1250,6 +1254,7 @@ Generated by [AVA](https://avajs.dev). 'HWvCItS78DzPGbwcuaGcfkpVDUvL98IvH5SIK8-AcL8=', ], blockId: 'JlgVJdWU12', + content: '', docId: 'doc-0', flavour: 'affine:image', parentBlockId: '6x7ALjUDjj', @@ -1264,6 +1269,7 @@ Generated by [AVA](https://avajs.dev). 'ZRKpsBoC88qEMmeiXKXqywfA1rLvWoLa5rpEh9x9Oj0=', ], blockId: 'lht7AqBqnF', + content: '', docId: 'doc-0', flavour: 'affine:image', parentBlockId: '6x7ALjUDjj', diff --git a/packages/backend/server/src/core/utils/__tests__/__snapshots__/blocksute.spec.ts.snap b/packages/backend/server/src/core/utils/__tests__/__snapshots__/blocksute.spec.ts.snap index 676184bedb5896d2c137aad8a78b089b172c81af..3d84ff9c2dc34069fba8532cfcdd468403615bdb 100644 GIT binary patch literal 6717 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 literal 6692 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 R7rU>xh%tYuK?pZ){1*%9KEVJ0 diff --git a/packages/common/reader/__tests__/__snapshots__/reader.spec.ts.snap b/packages/common/reader/__tests__/__snapshots__/reader.spec.ts.snap index 89c5d6d8b8..610f6353a6 100644 --- a/packages/common/reader/__tests__/__snapshots__/reader.spec.ts.snap +++ b/packages/common/reader/__tests__/__snapshots__/reader.spec.ts.snap @@ -1673,6 +1673,7 @@ exports[`should read doc blocks work 1`] = ` "BFZk3c2ERp-sliRvA7MQ_p3NdkdCLt2Ze0DQ9i21dpA=", ], "blockId": "lcZphIJe63", + "content": "", "docId": "test-doc", "flavour": "affine:image", "parentBlockId": "6x7ALjUDjj", @@ -1702,6 +1703,7 @@ exports[`should read doc blocks work 1`] = ` "HWvCItS78DzPGbwcuaGcfkpVDUvL98IvH5SIK8-AcL8=", ], "blockId": "JlgVJdWU12", + "content": "", "docId": "test-doc", "flavour": "affine:image", "parentBlockId": "6x7ALjUDjj", @@ -1731,6 +1733,7 @@ exports[`should read doc blocks work 1`] = ` "ZRKpsBoC88qEMmeiXKXqywfA1rLvWoLa5rpEh9x9Oj0=", ], "blockId": "lht7AqBqnF", + "content": "", "docId": "test-doc", "flavour": "affine:image", "parentBlockId": "6x7ALjUDjj", @@ -3361,6 +3364,7 @@ exports[`should read doc blocks work without root doc 1`] = ` "BFZk3c2ERp-sliRvA7MQ_p3NdkdCLt2Ze0DQ9i21dpA=", ], "blockId": "lcZphIJe63", + "content": "", "docId": "test-doc", "flavour": "affine:image", "parentBlockId": "6x7ALjUDjj", @@ -3390,6 +3394,7 @@ exports[`should read doc blocks work without root doc 1`] = ` "HWvCItS78DzPGbwcuaGcfkpVDUvL98IvH5SIK8-AcL8=", ], "blockId": "JlgVJdWU12", + "content": "", "docId": "test-doc", "flavour": "affine:image", "parentBlockId": "6x7ALjUDjj", @@ -3419,6 +3424,7 @@ exports[`should read doc blocks work without root doc 1`] = ` "ZRKpsBoC88qEMmeiXKXqywfA1rLvWoLa5rpEh9x9Oj0=", ], "blockId": "lht7AqBqnF", + "content": "", "docId": "test-doc", "flavour": "affine:image", "parentBlockId": "6x7ALjUDjj", diff --git a/packages/common/reader/src/reader.ts b/packages/common/reader/src/reader.ts index dd2973f754..e15ca701f6 100644 --- a/packages/common/reader/src/reader.ts +++ b/packages/common/reader/src/reader.ts @@ -648,12 +648,24 @@ export async function readAllBlocksFromDoc({ parentBlockId, }); } - } else if (flavour === 'affine:attachment' || flavour === 'affine:image') { + } else if (flavour === 'affine:attachment') { const blobId = block.get('prop:sourceId'); if (typeof blobId === 'string') { blockDocuments.push({ ...commonBlockProps, blob: [blobId], + content: block.get('prop:name')?.toString() ?? '', + parentFlavour, + parentBlockId, + }); + } + } else if (flavour === 'affine:image') { + const blobId = block.get('prop:sourceId'); + if (typeof blobId === 'string') { + blockDocuments.push({ + ...commonBlockProps, + blob: [blobId], + content: block.get('prop:caption')?.toString() ?? '', parentFlavour, parentBlockId, });