Skip to content

Commit f3b95ee

Browse files
authored
Merge pull request #1735 from Infineon/1730-ifx-select-search-field-click-should-not-close-the-menu
ifx-select: prevents dropdown menu from closing on search-field click
2 parents 10b565e + 3115d64 commit f3b95ee

File tree

10 files changed

+33
-63
lines changed

10 files changed

+33
-63
lines changed

examples/wrapper-components/react-vite-js/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
"test:local": "run-p preview:link watch:library"
1919
},
2020
"dependencies": {
21-
"@infineon/infineon-design-system-react": "32.1.3--canary.1732.d3813f209f738a14784b9c29ce072ceb36068e2f.0",
21+
"@infineon/infineon-design-system-react": "32.3.0--canary.1735.caab07de0687d0c12e1cd3ff61f282de3445523b.0",
2222
"path": "^0.12.7",
2323
"react": "^18.3.1",
2424
"react-dom": "^18.3.1"

examples/wrapper-components/vue-javascript/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
"test:local": "run-p preview:link watch:library"
1616
},
1717
"dependencies": {
18-
"@infineon/infineon-design-system-vue": "32.1.3--canary.1732.d3813f209f738a14784b9c29ce072ceb36068e2f.0",
18+
"@infineon/infineon-design-system-vue": "32.3.0--canary.1735.caab07de0687d0c12e1cd3ff61f282de3445523b.0",
1919
"@vitejs/plugin-vue": "^4.0.0",
2020
"@vitejs/plugin-vue-jsx": "^4.0.0",
2121
"vite": "^5.0.12",

lerna.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"$schema": "node_modules/lerna/schemas/lerna-schema.json",
3-
"version": "32.1.3--canary.1732.d3813f209f738a14784b9c29ce072ceb36068e2f.0",
3+
"version": "32.3.0--canary.1735.caab07de0687d0c12e1cd3ff61f282de3445523b.0",
44
"command": {
55
"publish": {
66
"verifyAccess": false

package-lock.json

Lines changed: 9 additions & 50 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

packages/components-angular/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "components-angular",
3-
"version": "32.1.3--canary.1732.d3813f209f738a14784b9c29ce072ceb36068e2f.0",
3+
"version": "32.3.0--canary.1735.caab07de0687d0c12e1cd3ff61f282de3445523b.0",
44
"scripts": {
55
"ng": "ng",
66
"start": "ng serve",
@@ -26,7 +26,7 @@
2626
"@angular/platform-browser": "^18.0.0",
2727
"@angular/platform-browser-dynamic": "^18.0.0",
2828
"@angular/router": "^18.0.0",
29-
"@infineon/infineon-design-system-angular": "^32.1.3--canary.1732.d3813f209f738a14784b9c29ce072ceb36068e2f.0",
29+
"@infineon/infineon-design-system-angular": "^32.3.0--canary.1735.caab07de0687d0c12e1cd3ff61f282de3445523b.0",
3030
"rxjs": "~7.8.0",
3131
"tslib": "^2.3.0",
3232
"typescript": "~5.4.4",

packages/components-angular/projects/component-library/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@infineon/infineon-design-system-angular",
3-
"version": "32.1.3--canary.1732.d3813f209f738a14784b9c29ce072ceb36068e2f.0",
3+
"version": "32.3.0--canary.1735.caab07de0687d0c12e1cd3ff61f282de3445523b.0",
44
"description": "Infineon design system Stencil web components for Angular",
55
"author": "Verena Lechner",
66
"license": "MIT",
@@ -11,7 +11,7 @@
1111
"@angular/common": "^18.0.0",
1212
"@angular/core": "^18.0.0",
1313
"@infineon/design-system-tokens": "3.3.4",
14-
"@infineon/infineon-design-system-stencil": "32.1.3--canary.1732.d3813f209f738a14784b9c29ce072ceb36068e2f.0"
14+
"@infineon/infineon-design-system-stencil": "32.3.0--canary.1735.caab07de0687d0c12e1cd3ff61f282de3445523b.0"
1515
},
1616
"dependencies": {
1717
"tslib": "^2.3.0"

packages/components-react/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@infineon/infineon-design-system-react",
3-
"version": "32.1.3--canary.1732.d3813f209f738a14784b9c29ce072ceb36068e2f.0",
3+
"version": "32.3.0--canary.1735.caab07de0687d0c12e1cd3ff61f282de3445523b.0",
44
"description": "Infineon design system Stencil web components for React",
55
"main": "./dist/index.js",
66
"types": "./dist/types/index.d.ts",
@@ -28,7 +28,7 @@
2828
},
2929
"dependencies": {
3030
"@infineon/design-system-tokens": "3.3.4",
31-
"@infineon/infineon-design-system-stencil": "^32.1.3--canary.1732.d3813f209f738a14784b9c29ce072ceb36068e2f.0",
31+
"@infineon/infineon-design-system-stencil": "^32.3.0--canary.1735.caab07de0687d0c12e1cd3ff61f282de3445523b.0",
3232
"@stencil/react-output-target": "^0.7.1"
3333
},
3434
"auto": {

packages/components-vue/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@infineon/infineon-design-system-vue",
3-
"version": "32.1.3--canary.1732.d3813f209f738a14784b9c29ce072ceb36068e2f.0",
3+
"version": "32.3.0--canary.1735.caab07de0687d0c12e1cd3ff61f282de3445523b.0",
44
"description": "Infineon design system Stencil web components for Vue",
55
"main": "./dist/index.js",
66
"types": "./dist/index.d.ts",
@@ -30,7 +30,7 @@
3030
},
3131
"dependencies": {
3232
"@infineon/design-system-tokens": "3.3.4",
33-
"@infineon/infineon-design-system-stencil": "^32.1.3--canary.1732.d3813f209f738a14784b9c29ce072ceb36068e2f.0"
33+
"@infineon/infineon-design-system-stencil": "^32.3.0--canary.1735.caab07de0687d0c12e1cd3ff61f282de3445523b.0"
3434
},
3535
"auto": {
3636
"plugins": [

packages/components/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@infineon/infineon-design-system-stencil",
3-
"version": "32.1.3--canary.1732.d3813f209f738a14784b9c29ce072ceb36068e2f.0",
3+
"version": "32.3.0--canary.1735.caab07de0687d0c12e1cd3ff61f282de3445523b.0",
44
"private": false,
55
"description": "Infineon design system Stencil web components",
66
"homepage": "https://infineon.github.io/infineon-design-system-stencil",

packages/components/src/components/select/single-select/select.tsx

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -335,6 +335,17 @@ export class Choices implements IChoicesProps, IChoicesMethods {
335335
}
336336
}
337337

338+
private handleWrapperClick(event: MouseEvent) {
339+
const target = event.target as HTMLElement;
340+
const isSearchInput = target.classList.contains('choices__input') || target.closest('.choices__input');
341+
const isDropdownItem = target.closest('.choices__list--dropdown .choices__item');
342+
343+
// Only toggle dropdown if clicking on wrapper itself
344+
if (!isSearchInput && !isDropdownItem) {
345+
this.toggleDropdown();
346+
}
347+
}
348+
338349
protected render(): any {
339350
const attributes = {
340351
'data-selector': 'root',
@@ -358,7 +369,7 @@ export class Choices implements IChoicesProps, IChoicesMethods {
358369
class={`${choicesWrapperClass}
359370
${this.disabled ? 'disabled' : ''}
360371
${this.error ? 'error' : ''}`}
361-
onClick={this.disabled ? undefined : () => this.toggleDropdown()}
372+
onClick={this.disabled ? undefined : (e) => this.handleWrapperClick(e)}
362373
onKeyDown={event => this.handleKeyDown(event)}
363374
>
364375
<select class='single__select-input-field' disabled = {this.disabled} {...attributes} data-trigger onChange={() => this.handleChange()}>

0 commit comments

Comments
 (0)