import SpacedUpdate from "../../services/spaced_update.js"; import AbstractSearchAction from "./abstract_search_action.js"; const TPL = `
Rename relation from:
To:
`; export default class RenameRelationSearchAction extends AbstractSearchAction { static get actionName() { return "renameRelation"; } doRender() { const $action = $(TPL); const $oldRelationName = $action.find('.old-relation-name'); $oldRelationName.val(this.actionDef.oldRelationName || ""); const $newRelationName = $action.find('.new-relation-name'); $newRelationName.val(this.actionDef.newRelationName || ""); const spacedUpdate = new SpacedUpdate(async () => { await this.saveAction({ oldRelationName: $oldRelationName.val(), newRelationName: $newRelationName.val() }); }, 1000) $oldRelationName.on('input', () => spacedUpdate.scheduleUpdate()); $newRelationName.on('input', () => spacedUpdate.scheduleUpdate()); return $action; } }