Files
my-v0-server/app/actions/delete.py
T

13 lines
516 B
Python

"""在大屏 JSON 副本上删除组件,用于后端校验,不删除共享数据源"""
from app.actions.base import BaseActionHandler
from app.schemas.actions import DeleteAction
from app.schemas.screen import Screen
class DeleteHandler(BaseActionHandler[DeleteAction]):
def apply(self, screen: Screen, action: DeleteAction) -> Screen:
result, target = self.copy_target(screen, action.target_id)
result.nodes = [node for node in result.nodes if node.id != target.id]
return result