+ {/* Event */}
+
+
+ (
+
+ )} />
+
+
+ {/* Handler type */}
+
+
+
(
+
+ {(["command", "http", "prompt"] as const).map((ht) => {
+ const disabled = ht === "command" && !IS_LITE_EDITION;
+ const radio = (
+
+
+
+
+ );
+ if (disabled) {
+ return (
+
+
+ {radio}
+ {t("form.commandDisabledTooltip")}
+
+
+ );
+ }
+ return radio;
+ })}
+
+ )} />
+
+
+ {/* Scope */}
+
+
+ (
+
+ )} />
+
+
+ {/* Matcher */}
+
+
+
+ {errors.matcher
+ ?
{errors.matcher.message}
+ :
{t("form.matcherHint")}
+ }
+
+
+ {/* if_expr */}
+
+
+
+
{t("form.ifExprHint")}
+
+
+ {/* Handler-specific sub-forms */}
+ {handlerType === "command" && (
+
+ )}
+
+ {handlerType === "http" && (
+
+
+
+
+ {errors.url &&
{errors.url.message}
}
+
+
+
+ (
+
+ )} />
+
+
+
+
+
+
+ )}
+
+ {handlerType === "prompt" && (
+
+
+
+
+ {errors.prompt_template && (
+
{errors.prompt_template.message}
+ )}
+
+
+
+ (
+
+ )} />
+
+
+
+
+
+
+ )}
+
+ {/* Timeout + on_timeout */}
+
+
+
+
+
+
+
+ (
+
+ )} />
+
+
+
+ {/* Priority + enabled */}
+
+
+
+
+
+
+
+
+ (
+
+ )} />
+
+
+
+
+
+