From eb2d127973c05171015ecb3e563410f9ab93f718 Mon Sep 17 00:00:00 2001 From: rdlabo Date: Thu, 27 Aug 2026 21:04:11 +0900 Subject: [PATCH 1/5] fix: apply inset styles to all list groups --- src/styles/components/ion-list.scss | 4 +--- src/styles/md-ion-list-inset.scss | 2 +- src/styles/utils/structured-list.scss | 8 ++++---- 3 files changed, 6 insertions(+), 8 deletions(-) diff --git a/src/styles/components/ion-list.scss b/src/styles/components/ion-list.scss index da546b4..64abf06 100644 --- a/src/styles/components/ion-list.scss +++ b/src/styles/components/ion-list.scss @@ -16,9 +16,7 @@ ion-list.list-inset.ios:not(.ios26-disabled) { display: block; } - $groups: ion-item-group, ion-reorder-group, ion-accordion-group, ion-radio-group; - - :is(#{$groups}):not(:is(#{$groups}) :is(#{$groups})) { + :is(#{structured-list.$groups}):not(:is(#{structured-list.$groups}) :is(#{structured-list.$groups})) { ion-item { // To draw lines inside --inner-padding-end: 0; diff --git a/src/styles/md-ion-list-inset.scss b/src/styles/md-ion-list-inset.scss index 08acc4f..371a447 100644 --- a/src/styles/md-ion-list-inset.scss +++ b/src/styles/md-ion-list-inset.scss @@ -5,7 +5,7 @@ ion-list.md { &.list-inset { @include structured-list.layout(8px, 16px); - ion-item-group > ion-item { + :is(#{structured-list.$groups}) ion-item { & > ion-input[labelplacement='floating'] { transition: transform 200ms ease; diff --git a/src/styles/utils/structured-list.scss b/src/styles/utils/structured-list.scss index bdabc9a..0e34300 100644 --- a/src/styles/utils/structured-list.scss +++ b/src/styles/utils/structured-list.scss @@ -1,3 +1,5 @@ +$groups: ion-item-group, ion-reorder-group, ion-accordion-group, ion-radio-group; + @mixin support-text() { ion-item { &:has(ion-input.input-fill-outline), @@ -74,8 +76,6 @@ } } - $groups: ion-item-group, ion-reorder-group, ion-accordion-group, ion-radio-group; - :is(#{$groups}):not(:is(#{$groups}) :is(#{$groups})) { border-radius: $group-border-radius; overflow: hidden; @@ -90,8 +90,8 @@ order: 1; font-size: 0.9rem; padding-block-start: 8px; - padding-inline-start: calc(var(--ion-safe-area-left, 0) + 20px); - padding-inline-end: calc(var(--ion-safe-area-right, 0) + 20px); + padding-inline-start: calc(var(--ion-safe-area-left, 0) + #{$outer-note-inset}); + padding-inline-end: calc(var(--ion-safe-area-right, 0) + #{$outer-note-inset}); } > ion-item:first-of-type { From 6cb69dd886a6fb53f209388c764e83e9bba8a07d Mon Sep 17 00:00:00 2001 From: rdlabo Date: Thu, 27 Aug 2026 21:25:28 +0900 Subject: [PATCH 2/5] fix: clip inset radio group corners --- src/styles/utils/structured-list.scss | 1 + 1 file changed, 1 insertion(+) diff --git a/src/styles/utils/structured-list.scss b/src/styles/utils/structured-list.scss index 0e34300..5e12fc8 100644 --- a/src/styles/utils/structured-list.scss +++ b/src/styles/utils/structured-list.scss @@ -77,6 +77,7 @@ $groups: ion-item-group, ion-reorder-group, ion-accordion-group, ion-radio-group } :is(#{$groups}):not(:is(#{$groups}) :is(#{$groups})) { + display: block; border-radius: $group-border-radius; overflow: hidden; From 89c7edf903e121c7b00ea4f584dce6eb565e6512 Mon Sep 17 00:00:00 2001 From: rdlabo Date: Thu, 27 Aug 2026 22:21:23 +0900 Subject: [PATCH 3/5] fix: remove ineffective select support styles --- src/styles/utils/structured-list.scss | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/styles/utils/structured-list.scss b/src/styles/utils/structured-list.scss index 5e12fc8..e6c6741 100644 --- a/src/styles/utils/structured-list.scss +++ b/src/styles/utils/structured-list.scss @@ -4,14 +4,12 @@ $groups: ion-item-group, ion-reorder-group, ion-accordion-group, ion-radio-group ion-item { &:has(ion-input.input-fill-outline), &:has(ion-textarea.textarea-fill-outline), - &:has(ion-select:is([helpertext]:not([helpertext='']), [errortext]:not([errortext='']))), &:has(ion-input .input-bottom > :is(.helper-text:not(:empty), .error-text:not(:empty))), &:has(ion-textarea .textarea-bottom > :is(.helper-text:not(:empty), .error-text:not(:empty))) { --inner-border-width: 0; --inner-padding-bottom: 4px; } - ion-select .select-bottom:not(:has(> :is(.helper-text:not(:empty), .error-text:not(:empty)))), ion-input .input-bottom:not(:has(> :is(.helper-text:not(:empty), .error-text:not(:empty)))), ion-textarea .textarea-bottom:not(:has(> :is(.helper-text:not(:empty), .error-text:not(:empty)))) { display: none; From c79cfd5f01e0df68bbc27d21487772c7cda308f7 Mon Sep 17 00:00:00 2001 From: rdlabo Date: Thu, 27 Aug 2026 22:30:57 +0900 Subject: [PATCH 4/5] fix: preserve radio support text spacing --- src/styles/components/ion-list.scss | 5 +++++ src/styles/utils/structured-list.scss | 2 -- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/styles/components/ion-list.scss b/src/styles/components/ion-list.scss index 64abf06..2733e31 100644 --- a/src/styles/components/ion-list.scss +++ b/src/styles/components/ion-list.scss @@ -16,6 +16,11 @@ ion-list.list-inset.ios:not(.ios26-disabled) { display: block; } + ion-radio-group > .radio-group-top { + padding-inline-start: calc(var(--ion-safe-area-left, 0) + 20px); + padding-inline-end: calc(var(--ion-safe-area-right, 0) + 20px); + } + :is(#{structured-list.$groups}):not(:is(#{structured-list.$groups}) :is(#{structured-list.$groups})) { ion-item { // To draw lines inside diff --git a/src/styles/utils/structured-list.scss b/src/styles/utils/structured-list.scss index e6c6741..ee0da40 100644 --- a/src/styles/utils/structured-list.scss +++ b/src/styles/utils/structured-list.scss @@ -89,8 +89,6 @@ $groups: ion-item-group, ion-reorder-group, ion-accordion-group, ion-radio-group order: 1; font-size: 0.9rem; padding-block-start: 8px; - padding-inline-start: calc(var(--ion-safe-area-left, 0) + #{$outer-note-inset}); - padding-inline-end: calc(var(--ion-safe-area-right, 0) + #{$outer-note-inset}); } > ion-item:first-of-type { From 4187b56b6e8c6d0043fb471eef515a3ca7bde84a Mon Sep 17 00:00:00 2001 From: rdlabo Date: Thu, 27 Aug 2026 22:40:45 +0900 Subject: [PATCH 5/5] fix: preserve select support text spacing --- src/styles/utils/structured-list.scss | 1 + 1 file changed, 1 insertion(+) diff --git a/src/styles/utils/structured-list.scss b/src/styles/utils/structured-list.scss index ee0da40..b3867e2 100644 --- a/src/styles/utils/structured-list.scss +++ b/src/styles/utils/structured-list.scss @@ -4,6 +4,7 @@ $groups: ion-item-group, ion-reorder-group, ion-accordion-group, ion-radio-group ion-item { &:has(ion-input.input-fill-outline), &:has(ion-textarea.textarea-fill-outline), + &:has(ion-select:is([helpertext]:not([helpertext='']), [errortext]:not([errortext='']))), &:has(ion-input .input-bottom > :is(.helper-text:not(:empty), .error-text:not(:empty))), &:has(ion-textarea .textarea-bottom > :is(.helper-text:not(:empty), .error-text:not(:empty))) { --inner-border-width: 0;