fix: migration props:elements (#2889)

This commit is contained in:
regischen
2023-06-28 14:24:14 +08:00
committed by GitHub
parent da57fbeadd
commit fd0aa4a2ee
2 changed files with 12 additions and 4 deletions

View File

@@ -38,6 +38,10 @@ describe('subdoc', () => {
if (id === 'xyWNqindHH') { if (id === 'xyWNqindHH') {
return; return;
} }
if (blocks[id]['sys:flavour'] === 'affine:surface' && !blocks[id]['prop:elements']) {
blocks[id]['prop:elements'] = data[id]['prop:elements'];
}
expect(data[id]).toEqual(blocks[id]); expect(data[id]).toEqual(blocks[id]);
}); });
}); });

View File

@@ -90,10 +90,14 @@ function runBlockMigration(
data.set('sys:flavour', 'affine:note'); data.set('sys:flavour', 'affine:note');
return; return;
} }
if (flavour === 'affine:surface' && version <= 3 && data.has('elements')) { if (flavour === 'affine:surface' && version <= 3) {
const elements = data.get('elements') as Y.Map<unknown>; if(data.has('elements')){
data.set('prop:elements', elements.clone()); const elements = data.get('elements') as Y.Map<unknown>;
data.delete('elements'); data.set('prop:elements', elements.clone());
data.delete('elements');
} else {
data.set('prop:elements', new Y.Map())
}
} }
if (flavour === 'affine:embed') { if (flavour === 'affine:embed') {
data.set('sys:flavour', 'affine:image'); data.set('sys:flavour', 'affine:image');