import AbstractBulkAction, { ActionDefinition } from "../abstract_bulk_action.js"; import { t } from "../../../services/i18n.js"; import BulkAction, { BulkActionText } from "../BulkAction.jsx"; import FormTextBox from "../../react/FormTextBox.jsx"; import { useEffect, useState } from "preact/hooks"; import { useSpacedUpdate } from "../../react/hooks.jsx"; function RenameRelationBulkActionComponent({ bulkAction, actionDef }: { bulkAction: AbstractBulkAction, actionDef: ActionDefinition }) { const [ oldRelationName, setOldRelationName ] = useState(actionDef.oldRelationName); const [ newRelationName, setNewRelationName ] = useState(actionDef.newRelationName); const spacedUpdate = useSpacedUpdate(() => bulkAction.saveAction({ oldRelationName, newRelationName })); useEffect(() => spacedUpdate.scheduleUpdate(), [ oldRelationName, newRelationName ]); return ( ) } export default class RenameRelationBulkAction extends AbstractBulkAction { static get actionName() { return "renameRelation"; } static get actionTitle() { return t("rename_relation.rename_relation"); } doRender() { return } }