Skip to content

Tags Property Editor: Remove tags with keyboard backspace/delete - #19892

Merged
leekelleher merged 13 commits into
mainfrom
v16/bugfix/tags-deletion-with-keyboard
Sep 18, 2025
Merged

Tags Property Editor: Remove tags with keyboard backspace/delete#19892
leekelleher merged 13 commits into
mainfrom
v16/bugfix/tags-deletion-with-keyboard

Uses `UmbChangeEvent`

8373e1c
Select commit
Loading
Failed to load commit list.
CodeScene Delta Analysis / CodeScene Cloud Delta Analysis (main) failed Sep 18, 2025 in 39s

CodeScene PR Check

Quality Gate Failed

Gates Failed
Enforce critical code health rules (1 file with Bumpy Road Ahead)
Enforce advisory code health rules (1 file with Complex Method, Complex Conditional)

Gates Passed
2 Quality Gates Passed

See analysis details in CodeScene

Reason for failure
Enforce critical code health rules Violations Code Health Impact
tags-input.element.ts 1 critical rule 9.01 → 8.58 Suppress
Enforce advisory code health rules Violations Code Health Impact
tags-input.element.ts 2 advisory rules 9.01 → 8.58 Suppress

Quality Gate Profile: Clean Code Collective
Want more control? Customize Code Health rules or catch issues early with our IDE extension and CLI tool.

Details

🚩 Declining Code Health (highest to lowest):

  • Complex Conditional tags-input.element.ts: UmbTagsInputElement.onInputKeydown
  • Complex Conditional tags-input.element.ts: UmbTagsInputElement.onTagsWrapperKeydown
  • Complex Method tags-input.element.ts: UmbTagsInputElement.onInputKeydown
  • Bumpy Road Ahead tags-input.element.ts: UmbTagsInputElement.onTagKeydown

✅ Improving Code Health:

  • Complex Conditional tags-input.element.ts: UmbTagsInputElement.onKeydown
  • Complex Method tags-input.element.ts: UmbTagsInputElement.onKeydown

Annotations

Check notice on line 107 in src/Umbraco.Web.UI.Client/src/packages/tags/components/tags-input/tags-input.element.ts

See this annotation in the file changed.

@codescene-delta-analysis codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)

✅ No longer an issue: Complex Method

UmbTagsInputElement.onKeydown is no longer above the threshold for cyclomatic complexity. This function has many conditional statements (e.g. if, for, while), leading to lower code health. Avoid adding more conditionals and code to it without refactoring.

Check warning on line 107 in src/Umbraco.Web.UI.Client/src/packages/tags/components/tags-input/tags-input.element.ts

See this annotation in the file changed.

@codescene-delta-analysis codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)

❌ New issue: Complex Method

UmbTagsInputElement.onInputKeydown has a cyclomatic complexity of 12, threshold = 9. This function has many conditional statements (e.g. if, for, while), leading to lower code health. Avoid adding more conditionals and code to it without refactoring.

Check notice on line 89 in src/Umbraco.Web.UI.Client/src/packages/tags/components/tags-input/tags-input.element.ts

See this annotation in the file changed.

@codescene-delta-analysis codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)

✅ No longer an issue: Complex Conditional

UmbTagsInputElement.onKeydown no longer has a complex conditional. A complex conditional is an expression inside a branch (e.g. if, for, while) which consists of multiple, logical operators such as AND/OR. The more logical operators in an expression, the more severe the code smell.

Check warning on line 89 in src/Umbraco.Web.UI.Client/src/packages/tags/components/tags-input/tags-input.element.ts

See this annotation in the file changed.

@codescene-delta-analysis codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)

❌ New issue: Complex Conditional

UmbTagsInputElement.onInputKeydown has 1 complex conditionals with 2 branches, threshold = 2. A complex conditional is an expression inside a branch (e.g. if, for, while) which consists of multiple, logical operators such as AND/OR. The more logical operators in an expression, the more severe the code smell.

Check warning on line 133 in src/Umbraco.Web.UI.Client/src/packages/tags/components/tags-input/tags-input.element.ts

See this annotation in the file changed.

@codescene-delta-analysis codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)

❌ New issue: Complex Conditional

UmbTagsInputElement.onTagsWrapperKeydown has 1 complex conditionals with 2 branches, threshold = 2. A complex conditional is an expression inside a branch (e.g. if, for, while) which consists of multiple, logical operators such as AND/OR. The more logical operators in an expression, the more severe the code smell.

Check warning on line 162 in src/Umbraco.Web.UI.Client/src/packages/tags/components/tags-input/tags-input.element.ts

See this annotation in the file changed.

@codescene-delta-analysis codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)

❌ New issue: Bumpy Road Ahead

UmbTagsInputElement.onTagKeydown has 3 blocks with nested conditional logic. Any nesting of 2 or deeper is considered. Threshold is one single, nested block per function. The Bumpy Road code smell is a function that contains multiple chunks of nested conditional logic. The deeper the nesting and the more bumps, the lower the code health.