1
0
mirror of https://github.com/mattermost/focalboard.git synced 2025-02-07 19:30:18 +02:00

Notify changes to root blocks (empty parentID)

This commit is contained in:
Chen-I Lim 2020-10-26 10:54:37 -07:00
parent 983ba4b6eb
commit 972b621d12
4 changed files with 10 additions and 12 deletions

View File

@ -221,14 +221,12 @@ func (a *API) handleImport(w http.ResponseWriter, r *http.Request) {
return return
} }
for _, block := range blocks { err = a.app().InsertBlocks(blocks)
err := a.app().InsertBlock(block) if err != nil {
if err != nil { log.Printf(`ERROR: %v`, r)
log.Printf(`ERROR: %v`, r) errorResponse(w, http.StatusInternalServerError, nil)
errorResponse(w, http.StatusInternalServerError, nil)
return return
}
} }
log.Printf("IMPORT Blocks %d block(s)", len(blocks)) log.Printf("IMPORT Blocks %d block(s)", len(blocks))

View File

@ -34,7 +34,8 @@ func (a *App) InsertBlocks(blocks []model.Block) error {
blockIDsToNotify = append(blockIDsToNotify, block.ID) blockIDsToNotify = append(blockIDsToNotify, block.ID)
} }
if len(block.ParentID) > 0 && !uniqueBlockIDs[block.ParentID] { // ParentID as empty string denotes a block at the root
if !uniqueBlockIDs[block.ParentID] {
blockIDsToNotify = append(blockIDsToNotify, block.ParentID) blockIDsToNotify = append(blockIDsToNotify, block.ParentID)
} }

View File

@ -186,9 +186,7 @@ class Sidebar extends React.Component<Props, State> {
<Menu.Text <Menu.Text
id='import' id='import'
name={text} name={text}
onClick={async () => Archiver.importFullArchive(() => { onClick={async () => Archiver.importFullArchive()}
this.forceUpdate()
})}
/> />
)} )}
</FormattedMessage> </FormattedMessage>

View File

@ -149,7 +149,8 @@ export default class BoardPage extends React.Component<Props, State> {
await workspaceTree.sync() await workspaceTree.sync()
const boardIds = workspaceTree.boards.map((o) => o.id) const boardIds = workspaceTree.boards.map((o) => o.id)
this.workspaceListener.open(boardIds, async (blockId) => { // Listen to boards plus all blocks at root (Empty string for parentId)
this.workspaceListener.open(['', ...boardIds], async (blockId) => {
Utils.log(`workspaceListener.onChanged: ${blockId}`) Utils.log(`workspaceListener.onChanged: ${blockId}`)
this.sync() this.sync()
}) })