@@ -10,7 +10,7 @@ import { getAuditingWizardPages } from "@/components/platformcapabilities/wizard
1010import { getMonitoringWizardPages } from " @/components/platformcapabilities/wizards/MonitoringWizardPages" ;
1111import { usePlatformCapabilitiesStore } from " @/stores/PlatformCapabilitiesStore" ;
1212import FAIcon from " @/components/FAIcon.vue" ;
13- import { faChevronDown , faChevronUp } from " @fortawesome/free-solid-svg-icons" ;
13+ import { faChevronRight } from " @fortawesome/free-solid-svg-icons" ;
1414
1515const platformCapabilitiesStore = usePlatformCapabilitiesStore ();
1616const { visibility } = storeToRefs (platformCapabilitiesStore );
@@ -30,15 +30,23 @@ const hasHiddenCards = computed(() => !visibility.value.showAuditingCard || !vis
3030 <div v-if =" visibility.showSection" class =" platform-capabilities" >
3131 <div class =" capabilities-header" >
3232 <div class =" capabilities-title-row" >
33- <div >
34- <h6 >Platform Capabilities</h6 >
35- <p class =" capabilities-description" >Discover and configure the capabilities of the Particular Service Platform</p >
33+ <div
34+ id =" collapse-capabilities-btn"
35+ class =" capabilities-toggle hide-section-btn"
36+ role =" button"
37+ tabindex =" 0"
38+ @click =" platformCapabilitiesStore.toggleSection()"
39+ @keydown.enter.prevent =" platformCapabilitiesStore.toggleSection()"
40+ @keydown.space.prevent =" platformCapabilitiesStore.toggleSection()"
41+ >
42+ <FAIcon :icon =" faChevronRight" class =" section-chevron expanded" />
43+ <div >
44+ <h6 >Platform Capabilities</h6 >
45+ <p class =" capabilities-description" >Discover and configure the capabilities of the Particular Service Platform</p >
46+ </div >
3647 </div >
3748 <div class =" capabilities-actions" >
3849 <button v-if =" hasHiddenCards" class =" btn-link restore-btn" @click =" platformCapabilitiesStore.showAll()" v-tippy =" 'Show all hidden cards'" >Show All</button >
39- <button class =" btn-icon hide-section-btn" @click =" platformCapabilitiesStore.toggleSection()" v-tippy =" 'Hide this section'" >
40- <FAIcon :icon =" faChevronUp" />
41- </button >
4250 </div >
4351 </div >
4452 </div >
@@ -87,10 +95,18 @@ const hasHiddenCards = computed(() => !visibility.value.showAuditingCard || !vis
8795 </div >
8896 </div >
8997 <div v-else class =" platform-capabilities-collapsed" >
90- <button class =" btn-link expand-btn" @click =" platformCapabilitiesStore.toggleSection()" >
91- <FAIcon :icon =" faChevronDown" />
92- <span >Show Platform Capabilities</span >
93- </button >
98+ <div
99+ id =" expand-capabilities-btn"
100+ class =" capabilities-toggle"
101+ role =" button"
102+ tabindex =" 0"
103+ @click =" platformCapabilitiesStore.toggleSection()"
104+ @keydown.enter.prevent =" platformCapabilitiesStore.toggleSection()"
105+ @keydown.space.prevent =" platformCapabilitiesStore.toggleSection()"
106+ >
107+ <FAIcon :icon =" faChevronRight" class =" section-chevron" />
108+ <h6 >Show Platform Capabilities</h6 >
109+ </div >
94110 </div >
95111</template >
96112
@@ -105,6 +121,42 @@ const hasHiddenCards = computed(() => !visibility.value.showAuditingCard || !vis
105121 align-items : flex-start ;
106122}
107123
124+ .capabilities-toggle {
125+ display : flex ;
126+ align-items : flex-start ;
127+ gap : 8px ;
128+ cursor : pointer ;
129+ padding : 4px 6px ;
130+ border-radius : 6px ;
131+ transition : background-color 0.15s ease ;
132+ user-select : none ;
133+ }
134+
135+ .capabilities-toggle :hover {
136+ background-color : var (--hover-bg , rgba (0 , 0 , 0 , 0.05 ));
137+ }
138+
139+ .capabilities-toggle :focus-visible {
140+ outline : 2px solid var (--primary-color , #007bff );
141+ outline-offset : 2px ;
142+ }
143+
144+ .capabilities-toggle h6 {
145+ margin : 0 ;
146+ }
147+
148+ .section-chevron {
149+ font-size : 12px ;
150+ color : var (--text-secondary , #888 );
151+ margin-top : 3px ;
152+ flex-shrink : 0 ;
153+ transition : transform 0.2s ease ;
154+ }
155+
156+ .section-chevron.expanded {
157+ transform : rotate (90deg );
158+ }
159+
108160.capabilities-description {
109161 font-size : 14px ;
110162 color : var (--text-secondary , #666 );
@@ -130,21 +182,6 @@ const hasHiddenCards = computed(() => !visibility.value.showAuditingCard || !vis
130182 text-decoration : underline ;
131183}
132184
133- .btn-icon {
134- background : none ;
135- border : none ;
136- color : var (--text-secondary , #666 );
137- cursor : pointer ;
138- padding : 4px 8px ;
139- border-radius : 4px ;
140- transition : all 0.2s ease ;
141- }
142-
143- .btn-icon :hover {
144- background-color : var (--hover-bg , #f0f0f0 );
145- color : var (--text-primary , #333 );
146- }
147-
148185.capabilities-list {
149186 display : flex ;
150187 gap : 16px ;
@@ -155,25 +192,6 @@ const hasHiddenCards = computed(() => !visibility.value.showAuditingCard || !vis
155192}
156193
157194.platform-capabilities-collapsed {
158- padding : 8px 0 ;
159- }
160-
161- .expand-btn {
162- display : flex ;
163- align-items : center ;
164- gap : 8px ;
165- background : none ;
166- border : none ;
167- color : var (--text-secondary , #666 );
168- cursor : pointer ;
169- font-size : 14px ;
170- padding : 8px 12px ;
171- border-radius : 4px ;
172- transition : all 0.2s ease ;
173- }
174-
175- .expand-btn :hover {
176- background-color : var (--hover-bg , #f0f0f0 );
177- color : var (--text-primary , #333 );
195+ padding : 4px 0 ;
178196}
179197 </style >
0 commit comments