loadRules function
Last updated: 2026-03-04T23:21:38.433Z
Location
Metrics
LOC: 48
Complexity: 7
Params: 0
Signature
loadRules(): : Promise<void>
Source Code
async function loadRules(): Promise<void> {
const rules = (await chrome.runtime.sendMessage({
type: "GET_RULES",
})) as FieldRule[];
const list = document.getElementById("rules-list");
if (!list) return;
list.innerHTML = "";
if (!Array.isArray(rules) || rules.length === 0) {
list.innerHTML = `<div class="empty">${t("noRules")}</div>`;
return;
}
for (const rule of rules) {
const item = document.createElement("div");
item.className = "rule-item";
item.innerHTML = `
<div class="rule-info">
<strong>${escapeHtml(rule.urlPattern)}</strong>
<span class="rule-selector">${escapeHtml(rule.fieldSelector)}</span>
<span class="badge">${escapeHtml(rule.fieldType)}</span>
${rule.fixedValue ? `<span class="badge badge-fixed">${t("fixedLabel", [escapeHtml(rule.fixedValue)])}</span>` : ""}
${rule.generatorParams ? `<span class="badge badge-params">⚙ ${t("paramSectionTitle")}</span>` : ""}
<span class="rule-priority">${t("rulePriority")} ${rule.priority}</span>
</div>
<div class="rule-actions">
<button class="btn btn-sm btn-edit" data-rule-id="${escapeHtml(rule.id)}">Editar</button>
<button class="btn btn-sm btn-delete" data-rule-id="${escapeHtml(rule.id)}">Excluir</button>
</div>
`;
item.querySelector(".btn-edit")?.addEventListener("click", () => {
editRule(rule);
});
item.querySelector(".btn-delete")?.addEventListener("click", async () => {
await chrome.runtime.sendMessage({
type: "DELETE_RULE",
payload: rule.id,
});
await loadRules();
showToast(t("toastRuleDeleted"));
});
list.appendChild(item);
}
}
Dependencies (Outgoing)
| Target | Type |
|---|---|
| FieldRule | uses |
| FieldType | uses |
| GeneratorParams | uses |
| escapeHtml | uses |
| generateId | uses |
| showToast | uses |
| t | uses |
| getGeneratorKey | uses |
| getGeneratorParamDefs | uses |
| GeneratorParamDef | uses |
| editRule | calls |
| loadRules | calls |
| click | dynamic_call |
Impact (Incoming)
| Source | Type |
|---|---|
| loadRules | calls |
| bindRulesEvents | calls |
| initRulesTab | calls |