import { t } from "../../../services/i18n.js"; import SpacedUpdate from "../../../services/spaced_update.js"; import AbstractBulkAction from "../abstract_bulk_action.js"; const TPL = `
${t("add_label.add_label")}
${t("add_label.to_value")}
`; export default class AddLabelBulkAction extends AbstractBulkAction { static get actionName() { return "addLabel"; } static get actionTitle() { return t("add_label.add_label"); } doRender() { const $action = $(TPL); const $labelName = $action.find('.label-name'); $labelName.val(this.actionDef.labelName || ""); const $labelValue = $action.find('.label-value'); $labelValue.val(this.actionDef.labelValue || ""); const spacedUpdate = new SpacedUpdate(async () => { await this.saveAction({ labelName: $labelName.val(), labelValue: $labelValue.val() }); }, 1000); $labelName.on('input', () => spacedUpdate.scheduleUpdate()); $labelValue.on('input', () => spacedUpdate.scheduleUpdate()); return $action; } }