Skip to content

Commit 29415a7

Browse files
authored
Merge pull request #4499 from crazyserver/MOBILE-4196
Mobile 4196
2 parents ab61286 + 399f285 commit 29415a7

File tree

130 files changed

+11041
-1969
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

130 files changed

+11041
-1969
lines changed

.github/workflows/testing.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ jobs:
7979
# In order to support Chrome 93 and iOS 15 we need to find Static initialization blocks are not present in the code.
8080
# See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Classes/Static_initialization_blocks
8181
# acorn is used by es-check but cannot check for this feature only, so we need to check it manually.
82-
if grep -qE 'static[ ]*\{' www/*.js cordova-plugin-moodleapp/www/*.js; then
82+
if grep -qE '(^|[^-])\bstatic[ ]*\{' www/*.js cordova-plugin-moodleapp/www/*.js; then
8383
echo "::error::Static initialization blocks are not supported in Chrome 93 and iOS 15."
8484
exit 1
8585
fi
272 Bytes
Loading

src/addons/mod/data/data.scss

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@ $grid-column-paddings: (
2323
padding: 16px;
2424

2525
::ng-deep {
26-
@import "theme/components/moodle";
2726
@import "theme/components/bootstrap/bootstrap";
2827

2928
table {
Lines changed: 153 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,153 @@
1+
//
2+
// Base styles
3+
//
4+
5+
.accordion {
6+
// scss-docs-start accordion-css-vars
7+
--#{$prefix}accordion-color: #{$accordion-color};
8+
--#{$prefix}accordion-bg: #{$accordion-bg};
9+
--#{$prefix}accordion-transition: #{$accordion-transition};
10+
--#{$prefix}accordion-border-color: #{$accordion-border-color};
11+
--#{$prefix}accordion-border-width: #{$accordion-border-width};
12+
--#{$prefix}accordion-border-radius: #{$accordion-border-radius};
13+
--#{$prefix}accordion-inner-border-radius: #{$accordion-inner-border-radius};
14+
--#{$prefix}accordion-btn-padding-x: #{$accordion-button-padding-x};
15+
--#{$prefix}accordion-btn-padding-y: #{$accordion-button-padding-y};
16+
--#{$prefix}accordion-btn-color: #{$accordion-button-color};
17+
--#{$prefix}accordion-btn-bg: #{$accordion-button-bg};
18+
--#{$prefix}accordion-btn-icon: #{escape-svg($accordion-button-icon)};
19+
--#{$prefix}accordion-btn-icon-width: #{$accordion-icon-width};
20+
--#{$prefix}accordion-btn-icon-transform: #{$accordion-icon-transform};
21+
--#{$prefix}accordion-btn-icon-transition: #{$accordion-icon-transition};
22+
--#{$prefix}accordion-btn-active-icon: #{escape-svg($accordion-button-active-icon)};
23+
--#{$prefix}accordion-btn-focus-box-shadow: #{$accordion-button-focus-box-shadow};
24+
--#{$prefix}accordion-body-padding-x: #{$accordion-body-padding-x};
25+
--#{$prefix}accordion-body-padding-y: #{$accordion-body-padding-y};
26+
--#{$prefix}accordion-active-color: #{$accordion-button-active-color};
27+
--#{$prefix}accordion-active-bg: #{$accordion-button-active-bg};
28+
// scss-docs-end accordion-css-vars
29+
}
30+
31+
.accordion-button {
32+
position: relative;
33+
display: flex;
34+
align-items: center;
35+
width: 100%;
36+
padding: var(--#{$prefix}accordion-btn-padding-y) var(--#{$prefix}accordion-btn-padding-x);
37+
@include font-size($font-size-base);
38+
color: var(--#{$prefix}accordion-btn-color);
39+
text-align: left; // Reset button style
40+
background-color: var(--#{$prefix}accordion-btn-bg);
41+
border: 0;
42+
@include border-radius(0);
43+
overflow-anchor: none;
44+
@include transition(var(--#{$prefix}accordion-transition));
45+
46+
&:not(.collapsed) {
47+
color: var(--#{$prefix}accordion-active-color);
48+
background-color: var(--#{$prefix}accordion-active-bg);
49+
box-shadow: inset 0 calc(-1 * var(--#{$prefix}accordion-border-width)) 0 var(--#{$prefix}accordion-border-color); // stylelint-disable-line function-disallowed-list
50+
51+
&::after {
52+
background-image: var(--#{$prefix}accordion-btn-active-icon);
53+
transform: var(--#{$prefix}accordion-btn-icon-transform);
54+
}
55+
}
56+
57+
// Accordion icon
58+
&::after {
59+
flex-shrink: 0;
60+
width: var(--#{$prefix}accordion-btn-icon-width);
61+
height: var(--#{$prefix}accordion-btn-icon-width);
62+
margin-left: auto;
63+
content: "";
64+
background-image: var(--#{$prefix}accordion-btn-icon);
65+
background-repeat: no-repeat;
66+
background-size: var(--#{$prefix}accordion-btn-icon-width);
67+
@include transition(var(--#{$prefix}accordion-btn-icon-transition));
68+
}
69+
70+
&:hover {
71+
z-index: 2;
72+
}
73+
74+
&:focus {
75+
z-index: 3;
76+
outline: 0;
77+
box-shadow: var(--#{$prefix}accordion-btn-focus-box-shadow);
78+
}
79+
}
80+
81+
.accordion-header {
82+
margin-bottom: 0;
83+
}
84+
85+
.accordion-item {
86+
color: var(--#{$prefix}accordion-color);
87+
background-color: var(--#{$prefix}accordion-bg);
88+
border: var(--#{$prefix}accordion-border-width) solid var(--#{$prefix}accordion-border-color);
89+
90+
&:first-of-type {
91+
@include border-top-radius(var(--#{$prefix}accordion-border-radius));
92+
93+
> .accordion-header .accordion-button {
94+
@include border-top-radius(var(--#{$prefix}accordion-inner-border-radius));
95+
}
96+
}
97+
98+
&:not(:first-of-type) {
99+
border-top: 0;
100+
}
101+
102+
// Only set a border-radius on the last item if the accordion is collapsed
103+
&:last-of-type {
104+
@include border-bottom-radius(var(--#{$prefix}accordion-border-radius));
105+
106+
> .accordion-header .accordion-button {
107+
&.collapsed {
108+
@include border-bottom-radius(var(--#{$prefix}accordion-inner-border-radius));
109+
}
110+
}
111+
112+
> .accordion-collapse {
113+
@include border-bottom-radius(var(--#{$prefix}accordion-border-radius));
114+
}
115+
}
116+
}
117+
118+
.accordion-body {
119+
padding: var(--#{$prefix}accordion-body-padding-y) var(--#{$prefix}accordion-body-padding-x);
120+
}
121+
122+
123+
// Flush accordion items
124+
//
125+
// Remove borders and border-radius to keep accordion items edge-to-edge.
126+
127+
.accordion-flush {
128+
> .accordion-item {
129+
border-right: 0;
130+
border-left: 0;
131+
@include border-radius(0);
132+
133+
&:first-child { border-top: 0; }
134+
&:last-child { border-bottom: 0; }
135+
136+
// stylelint-disable selector-max-class
137+
> .accordion-collapse,
138+
> .accordion-header .accordion-button,
139+
> .accordion-header .accordion-button.collapsed {
140+
@include border-radius(0);
141+
}
142+
// stylelint-enable selector-max-class
143+
}
144+
}
145+
146+
@if $enable-dark-mode {
147+
@include color-mode(dark) {
148+
.accordion-button::after {
149+
--#{$prefix}accordion-btn-icon: #{escape-svg($accordion-button-icon-dark)};
150+
--#{$prefix}accordion-btn-active-icon: #{escape-svg($accordion-button-active-icon-dark)};
151+
}
152+
}
153+
}
Lines changed: 56 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,34 +1,68 @@
1+
//
2+
// Base styles
3+
//
4+
15
.alert {
2-
position: relative;
3-
padding: .75rem 1.25rem;
4-
margin-bottom: 1rem;
5-
border: 0 solid transparent;
6-
border-radius: .5rem;
6+
// scss-docs-start alert-css-vars
7+
--#{$prefix}alert-bg: transparent;
8+
--#{$prefix}alert-padding-x: #{$alert-padding-x};
9+
--#{$prefix}alert-padding-y: #{$alert-padding-y};
10+
--#{$prefix}alert-margin-bottom: #{$alert-margin-bottom};
11+
--#{$prefix}alert-color: inherit;
12+
--#{$prefix}alert-border-color: transparent;
13+
--#{$prefix}alert-border: #{$alert-border-width} solid var(--#{$prefix}alert-border-color);
14+
--#{$prefix}alert-border-radius: #{$alert-border-radius};
15+
--#{$prefix}alert-link-color: inherit;
16+
// scss-docs-end alert-css-vars
17+
18+
position: relative;
19+
padding: var(--#{$prefix}alert-padding-y) var(--#{$prefix}alert-padding-x);
20+
margin-bottom: var(--#{$prefix}alert-margin-bottom);
21+
color: var(--#{$prefix}alert-color);
22+
background-color: var(--#{$prefix}alert-bg);
23+
border: var(--#{$prefix}alert-border);
24+
@include border-radius(var(--#{$prefix}alert-border-radius));
725
}
826

927
// Headings for larger alerts
1028
.alert-heading {
11-
// Specified to prevent conflicts of changing headings-color
12-
color: inherit;
29+
// Specified to prevent conflicts of changing $headings-color
30+
color: inherit;
1331
}
1432

1533
// Provide class for links that match alerts
1634
.alert-link {
17-
font-weight: 400;
35+
font-weight: $alert-link-font-weight;
36+
color: var(--#{$prefix}alert-link-color);
37+
}
38+
39+
40+
// Dismissible alerts
41+
//
42+
// Expand the right padding and account for the close button's positioning.
43+
44+
.alert-dismissible {
45+
padding-right: $alert-dismissible-padding-r;
46+
47+
// Adjust close link position
48+
.btn-close {
49+
position: absolute;
50+
top: 0;
51+
right: 0;
52+
z-index: $stretched-link-z-index + 1;
53+
padding: $alert-padding-y * 1.25 $alert-padding-x;
54+
}
1855
}
1956

20-
@each $color-name, $unused in global.$colors {
21-
.alert-#{$color-name} {
22-
--color-base: var(--#{$color-name});
23-
color: var(--#{$color-name}-shade);
24-
border-color: var(--color-base);
25-
background-color: var(--#{$color-name}-tint);
26-
27-
.alert-link, a {
28-
color: var(--#{$color-name}-shade);
29-
}
30-
}
31-
.alert-#{$color-name} p {
32-
color: var(--color-base);
33-
}
57+
58+
// scss-docs-start alert-modifiers
59+
// Generate contextual modifier classes for colorizing the alert
60+
@each $state in map-keys($theme-colors) {
61+
.alert-#{$state} {
62+
--#{$prefix}alert-color: var(--#{$prefix}#{$state}-text-emphasis);
63+
--#{$prefix}alert-bg: var(--#{$prefix}#{$state}-bg-subtle);
64+
--#{$prefix}alert-border-color: var(--#{$prefix}#{$state}-border-subtle);
65+
--#{$prefix}alert-link-color: var(--#{$prefix}#{$state}-text-emphasis);
66+
}
3467
}
68+
// scss-docs-end alert-modifiers

src/theme/components/bootstrap/_badge.scss

Lines changed: 15 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -4,22 +4,26 @@
44
// `background-color`.
55

66
.badge {
7+
// scss-docs-start badge-css-vars
8+
--#{$prefix}badge-padding-x: #{$badge-padding-x};
9+
--#{$prefix}badge-padding-y: #{$badge-padding-y};
10+
@include rfs($badge-font-size, --#{$prefix}badge-font-size);
11+
--#{$prefix}badge-font-weight: #{$badge-font-weight};
12+
--#{$prefix}badge-color: #{$badge-color};
13+
--#{$prefix}badge-border-radius: #{$badge-border-radius};
14+
// scss-docs-end badge-css-vars
15+
716
display: inline-block;
8-
padding: $badge-padding-y $badge-padding-x;
9-
@include font-size($badge-font-size);
10-
font-weight: $badge-font-weight;
17+
padding: var(--#{$prefix}badge-padding-y) var(--#{$prefix}badge-padding-x);
18+
@include font-size(var(--#{$prefix}badge-font-size));
19+
font-weight: var(--#{$prefix}badge-font-weight);
1120
line-height: 1;
21+
color: var(--#{$prefix}badge-color);
1222
text-align: center;
1323
white-space: nowrap;
1424
vertical-align: baseline;
15-
@include border-radius($badge-border-radius);
16-
@include transition($badge-transition);
17-
18-
@at-root a#{&} {
19-
@include hover-focus() {
20-
text-decoration: none;
21-
}
22-
}
25+
@include border-radius(var(--#{$prefix}badge-border-radius));
26+
@include gradient-bg();
2327

2428
// Empty badges collapse automatically
2529
&:empty {
@@ -32,23 +36,3 @@
3236
position: relative;
3337
top: -1px;
3438
}
35-
36-
// Pill badges
37-
//
38-
// Make them extra rounded with a modifier to replace v3's badges.
39-
40-
.badge-pill {
41-
padding-right: $badge-pill-padding-x;
42-
padding-left: $badge-pill-padding-x;
43-
@include border-radius($badge-pill-border-radius);
44-
}
45-
46-
// Colors
47-
//
48-
// Contextual variations (linked badges get darker on :hover).
49-
50-
@each $color, $value in $theme-colors {
51-
.badge-#{$color} {
52-
@include badge-variant($value);
53-
}
54-
}
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
.breadcrumb {
2+
// scss-docs-start breadcrumb-css-vars
3+
--#{$prefix}breadcrumb-padding-x: #{$breadcrumb-padding-x};
4+
--#{$prefix}breadcrumb-padding-y: #{$breadcrumb-padding-y};
5+
--#{$prefix}breadcrumb-margin-bottom: #{$breadcrumb-margin-bottom};
6+
@include rfs($breadcrumb-font-size, --#{$prefix}breadcrumb-font-size);
7+
--#{$prefix}breadcrumb-bg: #{$breadcrumb-bg};
8+
--#{$prefix}breadcrumb-border-radius: #{$breadcrumb-border-radius};
9+
--#{$prefix}breadcrumb-divider-color: #{$breadcrumb-divider-color};
10+
--#{$prefix}breadcrumb-item-padding-x: #{$breadcrumb-item-padding-x};
11+
--#{$prefix}breadcrumb-item-active-color: #{$breadcrumb-active-color};
12+
// scss-docs-end breadcrumb-css-vars
13+
14+
display: flex;
15+
flex-wrap: wrap;
16+
padding: var(--#{$prefix}breadcrumb-padding-y) var(--#{$prefix}breadcrumb-padding-x);
17+
margin-bottom: var(--#{$prefix}breadcrumb-margin-bottom);
18+
@include font-size(var(--#{$prefix}breadcrumb-font-size));
19+
list-style: none;
20+
background-color: var(--#{$prefix}breadcrumb-bg);
21+
@include border-radius(var(--#{$prefix}breadcrumb-border-radius));
22+
}
23+
24+
.breadcrumb-item {
25+
// The separator between breadcrumbs (by default, a forward-slash: "/")
26+
+ .breadcrumb-item {
27+
padding-left: var(--#{$prefix}breadcrumb-item-padding-x);
28+
29+
&::before {
30+
float: left; // Suppress inline spacings and underlining of the separator
31+
padding-right: var(--#{$prefix}breadcrumb-item-padding-x);
32+
color: var(--#{$prefix}breadcrumb-divider-color);
33+
content: var(--#{$prefix}breadcrumb-divider, escape-svg($breadcrumb-divider)) #{"/* rtl:"} var(--#{$prefix}breadcrumb-divider, escape-svg($breadcrumb-divider-flipped)) #{"*/"};
34+
}
35+
}
36+
37+
&.active {
38+
color: var(--#{$prefix}breadcrumb-item-active-color);
39+
}
40+
}

0 commit comments

Comments
 (0)