@@ -152,3 +152,48 @@ index c3d2d8e..bc40d4f 100644
152152 const root = getElementRoot(baseEl);
153153 const contentEl = root.querySelector('.popover-content');
154154 const referenceSizeEl = trigger || ((_a = ev === null || ev === void 0 ? void 0 : ev.detail) === null || _a === void 0 ? void 0 : _a.ionShadowTarget) || (ev === null || ev === void 0 ? void 0 : ev.target);
155+ diff --git a/node_modules/@ionic/core/dist/esm/input-shims-0314bbe5.js b/node_modules/@ionic/core/dist/esm/input-shims-0314bbe5.js
156+ index dd9d410..846146f 100644
157+ --- a/node_modules/@ionic/core/dist/esm/input-shims-0314bbe5.js
158+ +++ b/node_modules/@ionic/core/dist/esm/input-shims-0314bbe5.js
159+ @@ -338,7 +338,8 @@ const enableScrollAssist = (componentEl, inputEl, contentEl, footerEl, keyboardH
160+ const focusOut = () => {
161+ hasKeyboardBeenPresentedForTextField = false;
162+ win === null || win === void 0 ? void 0 : win.removeEventListener('ionKeyboardDidShow', keyboardShow);
163+ - componentEl.removeEventListener('focusout', focusOut);
164+ + // Patched: Attach focusin/focusout events to inputEl instead of componentEl to allow focusing buttons inside <ion-input>.
165+ + inputEl.removeEventListener('focusout', focusOut);
166+ };
167+ /**
168+ * When the input is about to receive
169+ @@ -358,13 +358,15 @@ const enableScrollAssist = (componentEl, inputEl, contentEl, footerEl, keyboardH
170+ }
171+ jsSetFocus(componentEl, inputEl, contentEl, footerEl, keyboardHeight, addScrollPadding, disableClonedInput, platformHeight);
172+ win === null || win === void 0 ? void 0 : win.addEventListener('ionKeyboardDidShow', keyboardShow);
173+ - componentEl.addEventListener('focusout', focusOut);
174+ + // Patched: Attach focusin/focusout events to inputEl instead of componentEl to allow focusing buttons inside <ion-input>.
175+ + inputEl.addEventListener('focusout', focusOut);
176+ };
177+ - componentEl.addEventListener('focusin', focusIn);
178+ + // Patched: Attach focusin/focusout events to inputEl instead of componentEl to allow focusing buttons inside <ion-input>.
179+ + inputEl.addEventListener('focusin', focusIn);
180+ return () => {
181+ - componentEl.removeEventListener('focusin', focusIn);
182+ + inputEl.removeEventListener('focusin', focusIn);
183+ win === null || win === void 0 ? void 0 : win.removeEventListener('ionKeyboardDidShow', keyboardShow);
184+ - componentEl.removeEventListener('focusout', focusOut);
185+ + inputEl.removeEventListener('focusout', focusOut);
186+ };
187+ };
188+ /**
189+ --- a/node_modules/@ionic/core/dist/esm/ion-item_8.entry.js
190+ +++ b/node_modules/@ionic/core/dist/esm/ion-item_8.entry.js
191+ @@ -109,7 +109,7 @@ const Item = class {
192+ // inputs, then those need to individually get each click
193+ hasCover() {
194+ const inputs = this.el.querySelectorAll('ion-checkbox, ion-datetime, ion-select, ion-radio');
195+ - return inputs.length === 1 && !this.multipleInputs;
196+ + return inputs.length === 1;
197+ }
198+ // If the item has an href or button property it will render a native
199+ // anchor or button that is clickable
0 commit comments