fix: restore metric filter interactions

This commit is contained in:
wxs
2026-07-16 21:23:45 +08:00
parent 2e248fa9a3
commit 70c1de3a7e
2 changed files with 8 additions and 2 deletions
+3 -2
View File
@@ -879,6 +879,7 @@ function syncAllSpreadMetricRules(toolbar: PluginToolbarDom): void {
function syncSpreadMetricRuleState(rule: SpreadMetricRuleDom): void {
rule.root.hidden = !rule.enabledInput.checked;
rule.root.style.display = rule.enabledInput.checked ? "flex" : "none";
if (!rule.enabledInput.checked) {
applyDefaultSpreadMetricRuleState(rule);
clearSpreadMetricRuleValidation(rule);
@@ -1170,8 +1171,8 @@ function applyToolbarPanelStyles(panel: HTMLElement): void {
panel.style.flex = "1 1 auto";
panel.style.minWidth = "0";
panel.style.padding = "0";
panel.style.overflowX = "hidden";
panel.style.overflowY = "hidden";
panel.style.overflowX = "visible";
panel.style.overflowY = "visible";
}
function applyToolbarRowStyles(row: HTMLElement): void {
+5
View File
@@ -498,6 +498,8 @@ describe("market-content-entry", () => {
expect(primaryRow?.style.flexWrap).toBe("nowrap");
expect(thresholdRow?.style.flexWrap).toBe("nowrap");
expect(thresholdRow?.style.alignItems).toBe("center");
expect(panel?.style.overflowX).toBe("visible");
expect(panel?.style.overflowY).toBe("visible");
expect(dataGroup?.parentElement).toBe(primaryRow);
expect(csvExportGroup?.parentElement).toBe(dataGroup);
expect(selectedAudienceExportGroup?.parentElement).toBe(dataGroup);
@@ -1550,6 +1552,7 @@ describe("market-content-entry", () => {
expect(catalogPanel?.hidden).toBe(true);
expect(finishRule?.hidden).toBe(false);
expect(interactionRule?.hidden).toBe(true);
expect(interactionRule?.style.display).toBe("none");
expect(finishRateInput?.placeholder).toBe("");
expect(
document.querySelector('[data-plugin-spread-metric-selected-count="text"]')
@@ -1590,6 +1593,7 @@ describe("market-content-entry", () => {
expect(finishRule?.hidden).toBe(false);
expect(interactionRule?.hidden).toBe(false);
expect(interactionRule?.style.display).toBe("flex");
expect(finishAssignSelect.value).toBe("true");
expect(finishAssignSelect.disabled).toBe(false);
expect(finishFlowTypeSelect.value).toBe("1");
@@ -1602,6 +1606,7 @@ describe("market-content-entry", () => {
setInputValue('[data-plugin-spread-threshold="finishRate"]', "30");
click('[data-plugin-spread-rule-remove="finishRate"]');
expect(finishRule?.hidden).toBe(true);
expect(finishRule?.style.display).toBe("none");
catalogTrigger?.click();
click('[data-plugin-spread-metric-catalog-action="finishRate"]');