mirror of
https://github.com/siyuan-note/siyuan.git
synced 2025-12-17 15:10:12 +01:00
🎨 Improve av https://github.com/siyuan-note/siyuan/issues/15508
This commit is contained in:
parent
ae3f6b906f
commit
73b80d3c82
1 changed files with 19 additions and 32 deletions
|
|
@ -3960,41 +3960,28 @@ func replaceAttributeViewBlock0(attrView *av.AttributeView, oldBlockID, newBlock
|
||||||
}
|
}
|
||||||
|
|
||||||
var changedAvIDs []string
|
var changedAvIDs []string
|
||||||
for _, keyValues := range attrView.KeyValues {
|
for _, blockVal := range attrView.GetBlockKeyValues().Values {
|
||||||
for _, value := range keyValues.Values {
|
if blockVal.BlockID != oldBlockID {
|
||||||
if av.KeyTypeRelation == value.Type {
|
continue
|
||||||
if nil != value.Relation {
|
}
|
||||||
for i, relBlockID := range value.Relation.BlockIDs {
|
|
||||||
if relBlockID == oldBlockID {
|
if av.KeyTypeBlock == blockVal.Type {
|
||||||
value.Relation.BlockIDs[i] = newBlockID
|
blockVal.IsDetached = isDetached
|
||||||
changedAvIDs = append(changedAvIDs, attrView.ID)
|
if !isDetached {
|
||||||
}
|
if "" != blockVal.Block.ID && blockVal.Block.ID != newBlockID {
|
||||||
}
|
unbindBlockAv(tx, avID, blockVal.Block.ID)
|
||||||
}
|
}
|
||||||
}
|
bindBlockAv(tx, avID, newBlockID)
|
||||||
|
|
||||||
if value.BlockID != oldBlockID {
|
blockVal.Block.ID = newBlockID
|
||||||
continue
|
icon, content := getNodeAvBlockText(node)
|
||||||
}
|
content = util.UnescapeHTML(content)
|
||||||
|
blockVal.Block.Icon, blockVal.Block.Content = icon, content
|
||||||
|
|
||||||
if av.KeyTypeBlock == value.Type {
|
avIDs := replaceRelationAvValues(avID, oldBlockID, newBlockID)
|
||||||
value.IsDetached = isDetached
|
changedAvIDs = append(changedAvIDs, avIDs...)
|
||||||
if !isDetached {
|
} else {
|
||||||
if "" != value.Block.ID && value.Block.ID != newBlockID {
|
blockVal.Block.ID = ""
|
||||||
unbindBlockAv(tx, avID, value.Block.ID)
|
|
||||||
}
|
|
||||||
bindBlockAv(tx, avID, newBlockID)
|
|
||||||
|
|
||||||
value.Block.ID = newBlockID
|
|
||||||
icon, content := getNodeAvBlockText(node)
|
|
||||||
content = util.UnescapeHTML(content)
|
|
||||||
value.Block.Icon, value.Block.Content = icon, content
|
|
||||||
|
|
||||||
avIDs := replaceRelationAvValues(avID, oldBlockID, newBlockID)
|
|
||||||
changedAvIDs = append(changedAvIDs, avIDs...)
|
|
||||||
} else {
|
|
||||||
value.Block.ID = ""
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue