we upgraded our websites to 10.2 and angular 21. we noticed that advanced filters is not opening up. we use AI to track it down and it came back with:
Bug: ABP's AdvancedEntityFiltersToggleComponent (in @volo/abp.commercial.ng.ui@10.2.0) declares both:
- expanded = model(false) — a model signal with implicit output "expandedChange"
- expandedChange = output() — an explicit output with the same name
Angular's parseAndConvertOutputsForDefinition inverts the outputs map { classProperty: alias } → {
alias: classProperty }. When two class properties map to the same alias, the last one wins. So
def.outputs["expandedChange"] resolves to the explicit output() property (which is never emitted)
instead of the model signal (which toggle() updates). The two-way binding [(expanded)] never receives
events, filtersHidden never changes, and ngbCollapse stays closed.
Fix: The patch-package patch removes the redundant expandedChange = output() declaration, allowing
the model signal's implicit output to work correctly. The patch is in
angular/patches/@volo+abp.commercial.ng.ui+10.2.0.patch and will be auto-applied on yarn install via
the postinstall script.
there are no errors in the console. can u replicate?
2 Answer(s)
-
0
Hi,
This issue has been fixed in PR https://github.com/volosoft/volo/pull/22075. In version 10.2.0, the
AdvancedEntityFiltersToggleComponenthad bothexpanded = model(false)and an explicitexpandedChange = output<boolean>(), which caused a conflict — Angular's output resolution picked the explicit (never-emitted) output over the model signal's implicit one, breaking the two-way binding.Please upgrade to version 10.2.1 to resolve this issue, and you can remove the patch-package patch after upgrading.
Thanks
Markdown supported.Copy, paste, or drag & drop images and files (max 100 MB per file, 100 MB total per post)