MOBILE-3814 course: Show highlighted border on section

main
Pau Ferrer Ocaña 2022-03-04 13:35:32 +01:00
parent fa81717ccf
commit feb4785ba0
2 changed files with 55 additions and 43 deletions

View File

@ -24,8 +24,8 @@
</ion-item>
<ng-container *ngIf="allSectionId != section.id">
<ion-item class="divider section" (click)="selectSectionOrModule($event, section.id)" button
[class.item-current]="selectedId === section.id" [class.item-dimmed]="section.visible === 0" detail="false"
sticky="true">
[class.item-current]="selectedId === section.id" [class.item-dimmed]="section.visible === 0"
[class.item-hightlighted]="section.highlighted" detail="false" sticky="true">
<ion-icon *ngIf="section.hasVisibleModules" name="fas-chevron-right" flip-rtl slot="start"
class="expandable-status-icon" (click)="toggleExpand($event, section)"
[attr.aria-label]="(section.expanded ? 'core.collapse' : 'core.expand') | translate"
@ -46,7 +46,7 @@
</ion-item>
<ng-container *ngIf="section.expanded">
<ng-container *ngFor="let module of section.modules">
<ion-item class="module" [class.item-dimmed]="!module.visible"
<ion-item class="module" [class.item-dimmed]="!module.visible" [class.item-hightlighted]="section.highlighted"
(click)="selectSectionOrModule($event, section.id, module.id)" button>
<ion-icon class="completioninfo completion_none" name="" *ngIf="module.completionStatus === undefined"
slot="start" aria-hidden="true"></ion-icon>

View File

@ -11,41 +11,24 @@ core-progress-bar {
}
}
ion-icon.completioninfo {
font-size: 10px;
width: 18px;
}
ion-item.module::part(native) {
--padding-start: 0;
}
ion-item.module ion-icon {
margin: 0;
@include padding(12px, 16px, 12px, 16px);
}
ion-item.core-course-index-all::part(native) {
ion-item.item {
&.core-course-index-all::part(native) {
--padding-start: 16px;
}
}
ion-item.item.item-current {
&.item-current {
--background: var(--primary-tint);
border: 0;
}
}
ion-icon.restricted {
font-size: 14px;
}
&.item-hightlighted {
@include safe-area-border-start(var(--selected-item-border-width), solid, var(--selected-item-color));
}
ion-item.item.divider.section {
&.divider.section {
--padding-start: 0px;
&.item-current {
ion-badge {
border: 1px solid var(--primary-contrast);
}
ion-icon.expandable-status-icon {
color: var(--primary-contrast);
@ -63,4 +46,33 @@ ion-item.item.divider.section {
background: var(--gray-300);
}
}
&.item-hightlighted ion-icon.expandable-status-icon {
@include margin-horizontal(-2px, null);
}
}
&.module {
&::part(native) {
--padding-start: 0;
}
&.item-hightlighted ion-icon.completioninfo {
@include padding-horizontal(11px, null);
}
}
ion-icon {
margin: 0;
padding: 12px 16px;
&.completioninfo {
font-size: 10px;
width: 18px;
}
&.restricted {
font-size: 14px;
}
}
}