collectRuleParams function
Last updated: 2026-03-04T23:21:38.433Z
Location
Metrics
LOC: 39
Complexity: 10
Params: 0
Signature
collectRuleParams(): : GeneratorParams | undefined
Source Code
function collectRuleParams(): GeneratorParams | undefined {
const fieldsDiv = document.getElementById("rule-params-fields");
if (!fieldsDiv) return undefined;
const inputs = fieldsDiv.querySelectorAll<HTMLInputElement>(
"input[data-param-key]",
);
const selects = fieldsDiv.querySelectorAll<HTMLSelectElement>(
"select[data-param-key]",
);
if (inputs.length === 0 && selects.length === 0) return undefined;
const params: Record<string, unknown> = {};
let hasAny = false;
inputs.forEach((input) => {
const key = input.dataset.paramKey!;
if (input.type === "checkbox") {
params[key] = input.checked;
hasAny = true;
} else if (input.type === "number") {
const val = parseFloat(input.value);
if (!isNaN(val)) {
params[key] = val;
hasAny = true;
}
}
});
selects.forEach((select) => {
const key = select.dataset.paramKey!;
if (select.value) {
params[key] = select.value;
hasAny = true;
}
});
return hasAny ? (params as GeneratorParams) : undefined;
}
No outgoing dependencies.
Impact (Incoming)
| Source | Type |
|---|---|
| bindRulesEvents | calls |