mumuki-laboratory 9.0.2 → 9.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (173) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/mumuki_laboratory/application/codemirror.js +10 -2
  3. data/app/assets/javascripts/mumuki_laboratory/application/discussions.js +49 -8
  4. data/app/assets/javascripts/mumuki_laboratory/application/faqs.js +14 -4
  5. data/app/assets/javascripts/mumuki_laboratory/application/gamification.js +3 -3
  6. data/app/assets/javascripts/mumuki_laboratory/application/kids.js +11 -7
  7. data/app/assets/javascripts/mumuki_laboratory/application/kindergarten.js +3 -3
  8. data/app/assets/javascripts/mumuki_laboratory/application/messages.js +3 -3
  9. data/app/assets/javascripts/mumuki_laboratory/application/mu-modal-carrousel.js +4 -4
  10. data/app/assets/javascripts/mumuki_laboratory/application/multiple-files.js +18 -5
  11. data/app/assets/javascripts/mumuki_laboratory/application/multiple-scenarios.js +1 -1
  12. data/app/assets/javascripts/mumuki_laboratory/application/organization.js +32 -0
  13. data/app/assets/javascripts/mumuki_laboratory/application/primary.js +4 -4
  14. data/app/assets/javascripts/mumuki_laboratory/application/profile.js +0 -6
  15. data/app/assets/javascripts/mumuki_laboratory/application/progress.js +1 -1
  16. data/app/assets/javascripts/mumuki_laboratory/application/speech-bubble-renderer.js +1 -1
  17. data/app/assets/javascripts/mumuki_laboratory/application/submission.js +4 -3
  18. data/app/assets/javascripts/mumuki_laboratory/application/submissions-store.js +1 -1
  19. data/app/assets/javascripts/mumuki_laboratory/application/toast.js +3 -0
  20. data/app/assets/javascripts/mumuki_laboratory/application/tooltip.js +1 -1
  21. data/app/assets/javascripts/mumuki_laboratory/application/upload.js +2 -2
  22. data/app/assets/javascripts/mumuki_laboratory/application/user.js +49 -5
  23. data/app/assets/stylesheets/mumuki_laboratory/application.scss +0 -1
  24. data/app/assets/stylesheets/mumuki_laboratory/application/_errors.scss +1 -1
  25. data/app/assets/stylesheets/mumuki_laboratory/application/_layout.scss +1 -27
  26. data/app/assets/stylesheets/mumuki_laboratory/application/_modules.scss +1 -2
  27. data/app/assets/stylesheets/mumuki_laboratory/application/modules/_activity.scss +14 -0
  28. data/app/assets/stylesheets/mumuki_laboratory/application/modules/_avatar.scss +5 -0
  29. data/app/assets/stylesheets/mumuki_laboratory/application/modules/_breadcrumb.scss +2 -2
  30. data/app/assets/stylesheets/mumuki_laboratory/application/modules/_datepicker.scss +0 -4
  31. data/app/assets/stylesheets/mumuki_laboratory/application/modules/_discussion.scss +49 -59
  32. data/app/assets/stylesheets/mumuki_laboratory/application/modules/_editor.scss +16 -18
  33. data/app/assets/stylesheets/mumuki_laboratory/application/modules/_exercise_assignment.scss +2 -11
  34. data/app/assets/stylesheets/mumuki_laboratory/application/modules/_exercise_results.scss +1 -7
  35. data/app/assets/stylesheets/mumuki_laboratory/application/modules/_faqs.scss +30 -8
  36. data/app/assets/stylesheets/mumuki_laboratory/application/modules/_flash.scss +7 -46
  37. data/app/assets/stylesheets/mumuki_laboratory/application/modules/_kids.scss +19 -4
  38. data/app/assets/stylesheets/mumuki_laboratory/application/modules/_kids_results.scss +18 -23
  39. data/app/assets/stylesheets/mumuki_laboratory/application/modules/_kindergarten.scss +1 -9
  40. data/app/assets/stylesheets/mumuki_laboratory/application/modules/_overlap.scss +1 -1
  41. data/app/assets/stylesheets/mumuki_laboratory/application/modules/_progress_bar.scss +5 -5
  42. data/app/assets/stylesheets/mumuki_laboratory/application/modules/_terms.scss +3 -2
  43. data/app/assets/stylesheets/mumuki_laboratory/application/modules/_timer.scss +1 -3
  44. data/app/assets/stylesheets/mumuki_laboratory/application/modules/_user_menu.scss +38 -3
  45. data/app/assets/stylesheets/mumuki_laboratory/application/modules/_user_profile.scss +1 -2
  46. data/app/controllers/application_controller.rb +4 -2
  47. data/app/controllers/discussions_messages_controller.rb +9 -3
  48. data/app/controllers/users_controller.rb +13 -0
  49. data/app/helpers/application_helper.rb +5 -5
  50. data/app/helpers/assignment_result_helper.rb +3 -2
  51. data/app/helpers/assistance_box_helper.rb +1 -1
  52. data/app/helpers/concerns/with_student_path_navigation.rb +8 -3
  53. data/app/helpers/concerns/with_student_path_navigation/continue_navigation.rb +1 -1
  54. data/app/helpers/concerns/with_student_path_navigation/finish_navigation.rb +1 -1
  55. data/app/helpers/concerns/with_student_path_navigation/next_parent_navigation.rb +7 -0
  56. data/app/helpers/concerns/with_student_path_navigation/revisit_navigation.rb +1 -1
  57. data/app/helpers/discussions_helper.rb +64 -23
  58. data/app/helpers/editor_tabs_helper.rb +10 -6
  59. data/app/helpers/email_helper.rb +2 -2
  60. data/app/helpers/exercise_input_helper.rb +2 -3
  61. data/app/helpers/links_helper.rb +12 -9
  62. data/app/helpers/menu_bar_helper.rb +1 -1
  63. data/app/helpers/messages_helper.rb +1 -1
  64. data/app/helpers/multiple_file_editor_helper.rb +2 -1
  65. data/app/helpers/overlapped_buttons_helper.rb +22 -12
  66. data/app/helpers/profile_helper.rb +3 -3
  67. data/app/helpers/toast_helper.rb +27 -0
  68. data/app/helpers/user_activity_helper.rb +48 -0
  69. data/app/helpers/user_menu_helper.rb +24 -6
  70. data/app/views/book/show.html.erb +2 -2
  71. data/app/views/certificates/verify.html.erb +1 -1
  72. data/app/views/chapters/show.html.erb +2 -2
  73. data/app/views/discussions/_description_message.html.erb +1 -1
  74. data/app/views/discussions/_message.html.erb +32 -7
  75. data/app/views/discussions/_new_message.html.erb +13 -2
  76. data/app/views/discussions/index.html.erb +8 -10
  77. data/app/views/discussions/new.html.erb +2 -2
  78. data/app/views/discussions/show.html.erb +20 -12
  79. data/app/views/exam_registrations/show.html.erb +10 -11
  80. data/app/views/exercise_solutions/_assistant_rules_box.html.erb +1 -1
  81. data/app/views/exercise_solutions/_contextualization_results_body.html.erb +1 -1
  82. data/app/views/exercise_solutions/_contextualization_results_container.html.erb +1 -1
  83. data/app/views/exercise_solutions/_kids_results_button.html.erb +2 -2
  84. data/app/views/exercise_solutions/_results.html.erb +1 -1
  85. data/app/views/exercises/_exercise_assignment.html.erb +2 -2
  86. data/app/views/exercises/_exercise_skipped.html.erb +1 -1
  87. data/app/views/exercises/_read_only.html.erb +108 -105
  88. data/app/views/exercises/show.html.erb +7 -7
  89. data/app/views/faqs/index.html.erb +5 -1
  90. data/app/views/guides/_guide.html.erb +1 -1
  91. data/app/views/guides/_guide_container.html.erb +4 -4
  92. data/app/views/invitations/_invitation_form.html.erb +5 -4
  93. data/app/views/layouts/_authoring.html.erb +1 -1
  94. data/app/views/layouts/_discussions.html.erb +7 -7
  95. data/app/views/layouts/_kids.html.erb +5 -5
  96. data/app/views/layouts/_kindergarten.html.erb +10 -6
  97. data/app/views/layouts/_main.html.erb +10 -10
  98. data/app/views/layouts/_organizations_listing.html.erb +2 -2
  99. data/app/views/layouts/_progress_bar.html.erb +2 -0
  100. data/app/views/layouts/_submission_result_error.html.erb +1 -1
  101. data/app/views/layouts/_test_results.html.erb +1 -1
  102. data/app/views/layouts/_timer.html.erb +1 -1
  103. data/app/views/layouts/_user_menu.html.erb +13 -20
  104. data/app/views/layouts/application.html.erb +39 -42
  105. data/app/views/layouts/exercise_inputs/editors/_code.html.erb +4 -4
  106. data/app/views/layouts/exercise_inputs/editors/_free_form.html.erb +1 -1
  107. data/app/views/layouts/exercise_inputs/editors/_multiple_choice.html.erb +7 -9
  108. data/app/views/layouts/exercise_inputs/editors/_multiple_files.html.erb +10 -10
  109. data/app/views/layouts/exercise_inputs/editors/_single_choice.html.erb +6 -8
  110. data/app/views/layouts/exercise_inputs/editors/_text.html.erb +2 -3
  111. data/app/views/layouts/exercise_inputs/editors/_upload.html.erb +5 -5
  112. data/app/views/layouts/exercise_inputs/forms/_form.html.erb +1 -1
  113. data/app/views/layouts/exercise_inputs/forms/_interactive_form.html.erb +2 -2
  114. data/app/views/layouts/exercise_inputs/forms/_kids_form.html.erb +1 -1
  115. data/app/views/layouts/exercise_inputs/forms/_playground_form.html.erb +2 -2
  116. data/app/views/layouts/exercise_inputs/forms/_problem_form.html.erb +13 -9
  117. data/app/views/layouts/exercise_inputs/layouts/_input_primary.html.erb +2 -2
  118. data/app/views/layouts/exercise_inputs/layouts/_input_right.html.erb +2 -2
  119. data/app/views/layouts/exercise_inputs/read_only_editors/_code.html.erb +1 -1
  120. data/app/views/layouts/exercise_inputs/read_only_editors/_free_form.html.erb +1 -1
  121. data/app/views/layouts/exercise_inputs/read_only_editors/_multiple_choice.html.erb +4 -4
  122. data/app/views/layouts/exercise_inputs/read_only_editors/_multiple_files.html.erb +2 -2
  123. data/app/views/layouts/exercise_inputs/read_only_editors/_single_choice.html.erb +4 -4
  124. data/app/views/layouts/exercise_inputs/read_only_editors/_text.erb +1 -1
  125. data/app/views/layouts/modals/_avatar_picker.html.erb +2 -5
  126. data/app/views/layouts/modals/_guide_corollary.html.erb +4 -8
  127. data/app/views/layouts/modals/_kids_context.html.erb +7 -5
  128. data/app/views/layouts/modals/_kids_results.html.erb +2 -2
  129. data/app/views/layouts/modals/_kids_results_aborted.html.erb +2 -2
  130. data/app/views/layouts/modals/_kindergarten_context.html.erb +3 -3
  131. data/app/views/layouts/modals/_kindergarten_results.html.erb +3 -3
  132. data/app/views/layouts/modals/_kindergarten_results_aborted.html.erb +2 -2
  133. data/app/views/layouts/modals/_level_up.html.erb +2 -5
  134. data/app/views/layouts/modals/_new_message.html.erb +5 -5
  135. data/app/views/notifications/_dropdown.html.erb +3 -3
  136. data/app/views/users/_activity_indicator.html.erb +17 -0
  137. data/app/views/users/_edit_user_form.html.erb +6 -6
  138. data/app/views/users/_profile_fields.html.erb +6 -6
  139. data/app/views/users/_user_form.html.erb +2 -2
  140. data/app/views/users/activity.html.erb +37 -0
  141. data/app/views/users/certificates.html.erb +26 -24
  142. data/app/views/users/discussions.html.erb +23 -21
  143. data/app/views/users/messages.html.erb +22 -20
  144. data/app/views/users/show.html.erb +5 -3
  145. data/app/views/users/terms.html.erb +4 -2
  146. data/config/initializers/inflections.rb +3 -0
  147. data/config/routes.rb +3 -0
  148. data/lib/mumuki/laboratory.rb +1 -1
  149. data/lib/mumuki/laboratory/extensions.rb +1 -0
  150. data/lib/mumuki/laboratory/extensions/date_and_time.rb +11 -0
  151. data/lib/mumuki/laboratory/locales/en.yml +28 -2
  152. data/lib/mumuki/laboratory/locales/es-CL.yml +33 -4
  153. data/lib/mumuki/laboratory/locales/es.yml +33 -4
  154. data/lib/mumuki/laboratory/locales/pt.yml +34 -3
  155. data/lib/mumuki/laboratory/version.rb +1 -1
  156. data/spec/capybara_helper.rb +1 -0
  157. data/spec/controllers/discussions_messages_controller_spec.rb +84 -3
  158. data/spec/dummy/db/schema.rb +23 -3
  159. data/spec/features/discussion_flow_spec.rb +22 -2
  160. data/spec/features/exercise_flow_spec.rb +1 -1
  161. data/spec/features/guide_reset_spec.rb +1 -1
  162. data/spec/features/terms_flow_spec.rb +1 -2
  163. data/spec/features/user_activity_flow_spec.rb +65 -0
  164. data/spec/helpers/breadcrumbs_helper_spec.rb +2 -2
  165. data/spec/helpers/user_activity_helper_spec.rb +32 -0
  166. data/spec/helpers/with_navigation_spec.rb +36 -13
  167. data/spec/javascripts/editors-spec.js +3 -3
  168. data/spec/javascripts/kids-button-spec.js +2 -2
  169. data/spec/javascripts/upload-spec.js +8 -8
  170. metadata +133 -123
  171. data/app/assets/stylesheets/mumuki_laboratory/application/hovers.scss +0 -12
  172. data/app/assets/stylesheets/mumuki_laboratory/application/modules/_checkboxes.scss +0 -34
  173. data/app/assets/stylesheets/mumuki_laboratory/application/modules/_guide_corollary.scss +0 -9
@@ -59,25 +59,23 @@ body.fullscreen {
59
59
 
60
60
  .files-tabs {
61
61
  display: flex;
62
- justify-content: space-between;
63
62
  align-items: center;
64
- margin-bottom: -6px;
65
- margin-left: 30px;
66
63
 
67
64
  .nav-tabs {
68
- display: flex;
69
- justify-content: space-between;
70
- align-items: center;
71
- width: 100%;
72
- margin-bottom: 0;
65
+ flex-grow: 1;
66
+ margin-left: 30px;
67
+ margin-bottom: -6px;
68
+ border-bottom: 0;
73
69
  z-index: 1;
74
70
 
75
- li {
71
+ .file-tab {
76
72
  position: relative;
77
- width: 100%;
73
+ flex-grow: 1;
74
+ flex-basis: 0;
78
75
  white-space: nowrap;
79
76
  overflow: hidden;
80
77
  text-overflow: ellipsis;
78
+
81
79
  a {
82
80
  white-space: nowrap;
83
81
  overflow: hidden;
@@ -85,24 +83,24 @@ body.fullscreen {
85
83
  margin-right: 0;
86
84
  padding: 5px 10px;
87
85
  }
86
+
88
87
  .delete-file-button {
89
88
  position: absolute;
90
89
  right: 16px;
91
90
  top: 12px;
92
91
  cursor: pointer;
93
92
  }
94
- &.active {
95
- a {
96
- background-color: $multifile-active-tab-background-color;
97
- border: 1px solid $multifile-active-tab-border-color;
98
- border-bottom: none;
99
- }
93
+
94
+ > a.active {
95
+ background-color: $multifile-active-tab-background-color;
96
+ border: 1px solid $multifile-active-tab-border-color;
97
+ border-bottom: 2px solid transparent;
100
98
  }
101
- &:not(.active) > a {
99
+
100
+ > a:not(.active) {
102
101
  background-color: $multifile-inactive-tab-background-color;
103
102
  border: 1px solid $multifile-inactive-tab-border-color;
104
103
  border-bottom: 1px solid $multifile-active-tab-border-color;
105
- cursor: pointer;
106
104
  &:hover {
107
105
  background-color: $multifile-inactive-tab-border-color;
108
106
  }
@@ -1,7 +1,7 @@
1
1
  .exercise-assignment blockquote {
2
2
  @include border-radius(4px);
3
- background-color: $brand-info-light;
4
- border-left: 8px solid $brand-info;
3
+ background-color: $info-light;
4
+ border-left: 8px solid $info;
5
5
  font-size: 15px;
6
6
  margin: 10px 0;
7
7
  }
@@ -16,15 +16,6 @@
16
16
  }
17
17
 
18
18
  .mu-editor {
19
- .form-group {
20
- margin: 10px 0;
21
- }
22
- input[type=radio] {
23
- margin: 4px;
24
- & + label {
25
- font-weight: normal;
26
- }
27
- }
28
19
  label p {
29
20
  margin: 0;
30
21
  }
@@ -19,13 +19,7 @@ ul.results-list {
19
19
  margin-left: 15px;
20
20
  }
21
21
 
22
- .example-see-more {
23
- font-size: $font-size-base * 0.65;
24
- background: lighten($brand-complementary, 10%);
25
- border-radius: 6px;
26
- padding: 2px 5px;
27
- color: white;
28
-
22
+ .mu-view-details {
29
23
  &:hover, &:focus {
30
24
  color: white;
31
25
  }
@@ -1,11 +1,14 @@
1
1
  .mu-faqs-container {
2
2
  position: relative;
3
3
  display: table;
4
+ width: 100%;
4
5
 
5
6
  .mu-faqs-content {
6
7
  padding-top: 50px;
7
8
 
8
- @media (min-width: $container-sm) {
9
+ width: 100%;
10
+
11
+ @media (min-width: 768px) {
9
12
  width: 75%;
10
13
  float: right;
11
14
  }
@@ -14,14 +17,37 @@
14
17
  padding: 32px;
15
18
  box-shadow: 0 0.375em 2.8125em 0 #d2d5d9;
16
19
  margin-bottom: 32px;
20
+
21
+ @media (max-width: 767px) {
22
+ &:not(.active) {
23
+ h3, p {
24
+ display: none
25
+ }
26
+ h2 {
27
+ margin-bottom: 0px;
28
+ }
29
+ }
30
+ }
31
+
17
32
  h2 {
18
33
  margin-top: 0;
19
34
  margin-bottom: 20px;
20
35
  }
36
+
21
37
  h3 {
22
38
  color: #1A94A3; // should be $brand-secondary
23
39
  margin-top: 40px;
24
40
  }
41
+
42
+ .mu-faqs-group-icon {
43
+ float: right;
44
+ margin-top: 10px;
45
+ cursor: pointer;
46
+ display: none;
47
+ @media (max-width: 767px) {
48
+ display: unset;
49
+ }
50
+ }
25
51
  }
26
52
  }
27
53
 
@@ -31,10 +57,6 @@
31
57
  width: 25%;
32
58
  padding-top: 50px;
33
59
 
34
- @media (min-width: $container-sm) {
35
- display: hidden;
36
- }
37
-
38
60
  ul {
39
61
  border-left: 1px solid $mu-color-disabled;
40
62
  list-style: none;
@@ -44,15 +66,15 @@
44
66
  cursor: pointer;
45
67
  &.active {
46
68
  border-left: 3px solid transparent;
47
- border-color: darken($brand-primary, 5%);
69
+ border-color: darken($primary, 5%);
48
70
  margin-left: -3px;
49
71
  }
50
72
  a {
51
- color: $brand-primary;
73
+ color: $primary;
52
74
  &:hover {
53
75
  text-decoration: none;
54
76
  }
55
- @media (min-width: $container-lg) {
77
+ @include media-breakpoint-up(xl) {
56
78
  font-size: 1.1em;
57
79
  }
58
80
  }
@@ -1,57 +1,18 @@
1
- #toast-container {
1
+ .toast-container {
2
2
  position: fixed;
3
- bottom: 12px;
4
- left: 15px;
3
+ color: white;
5
4
  z-index: 9999;
6
- * {
7
- -moz-box-sizing: border-box;
8
- -webkit-box-sizing: border-box;
9
- box-sizing: border-box;
10
- }
11
- .toast {
12
- position: relative;
13
- overflow: hidden;
14
- margin: 0 0 6px;
15
- padding: 15px 15px 15px 50px;
16
- width: 300px;
17
- -moz-border-radius: 3px 3px 3px 3px;
18
- -webkit-border-radius: 3px 3px 3px 3px;
19
- border-radius: 3px 3px 3px 3px;
20
- background-color: $mu-color-info;
21
- background-position: 15px center;
22
- background-repeat: no-repeat;
23
- -moz-box-shadow: 0 0 12px #999999;
24
- -webkit-box-shadow: 0 0 12px #999999;
25
- box-shadow: 0 0 12px #999999;
26
- color: #FFFFFF;
27
- opacity: 0.8;
28
- &:hover {
29
- -moz-box-shadow: 0 0 12px #000000;
30
- -webkit-box-shadow: 0 0 12px #000000;
31
- box-shadow: 0 0 12px #000000;
32
- opacity: 1;
33
- cursor: pointer;
34
- }
35
- }
36
- .toast-info {
37
- background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAGwSURBVEhLtZa9SgNBEMc9sUxxRcoUKSzSWIhXpFMhhYWFhaBg4yPYiWCXZxBLERsLRS3EQkEfwCKdjWJAwSKCgoKCcudv4O5YLrt7EzgXhiU3/4+b2ckmwVjJSpKkQ6wAi4gwhT+z3wRBcEz0yjSseUTrcRyfsHsXmD0AmbHOC9Ii8VImnuXBPglHpQ5wwSVM7sNnTG7Za4JwDdCjxyAiH3nyA2mtaTJufiDZ5dCaqlItILh1NHatfN5skvjx9Z38m69CgzuXmZgVrPIGE763Jx9qKsRozWYw6xOHdER+nn2KkO+Bb+UV5CBN6WC6QtBgbRVozrahAbmm6HtUsgtPC19tFdxXZYBOfkbmFJ1VaHA1VAHjd0pp70oTZzvR+EVrx2Ygfdsq6eu55BHYR8hlcki+n+kERUFG8BrA0BwjeAv2M8WLQBtcy+SD6fNsmnB3AlBLrgTtVW1c2QN4bVWLATaIS60J2Du5y1TiJgjSBvFVZgTmwCU+dAZFoPxGEEs8nyHC9Bwe2GvEJv2WXZb0vjdyFT4Cxk3e/kIqlOGoVLwwPevpYHT+00T+hWwXDf4AJAOUqWcDhbwAAAAASUVORK5CYII=") !important;
5
+
6
+ .mu-toast-info {
38
7
  background-color: $mu-color-info;
39
8
  }
40
- .toast-error {
41
- background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAHOSURBVEhLrZa/SgNBEMZzh0WKCClSCKaIYOED+AAKeQQLG8HWztLCImBrYadgIdY+gIKNYkBFSwu7CAoqCgkkoGBI/E28PdbLZmeDLgzZzcx83/zZ2SSXC1j9fr+I1Hq93g2yxH4iwM1vkoBWAdxCmpzTxfkN2RcyZNaHFIkSo10+8kgxkXIURV5HGxTmFuc75B2RfQkpxHG8aAgaAFa0tAHqYFfQ7Iwe2yhODk8+J4C7yAoRTWI3w/4klGRgR4lO7Rpn9+gvMyWp+uxFh8+H+ARlgN1nJuJuQAYvNkEnwGFck18Er4q3egEc/oO+mhLdKgRyhdNFiacC0rlOCbhNVz4H9FnAYgDBvU3QIioZlJFLJtsoHYRDfiZoUyIxqCtRpVlANq0EU4dApjrtgezPFad5S19Wgjkc0hNVnuF4HjVA6C7QrSIbylB+oZe3aHgBsqlNqKYH48jXyJKMuAbiyVJ8KzaB3eRc0pg9VwQ4niFryI68qiOi3AbjwdsfnAtk0bCjTLJKr6mrD9g8iq/S/B81hguOMlQTnVyG40wAcjnmgsCNESDrjme7wfftP4P7SP4N3CJZdvzoNyGq2c/HWOXJGsvVg+RA/k2MC/wN6I2YA2Pt8GkAAAAASUVORK5CYII=") !important;
9
+ .mu-toast-error {
42
10
  background-color: $mu-color-danger;
43
11
  }
44
- .toast-success {
45
- background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAADsSURBVEhLY2AYBfQMgf///3P8+/evAIgvA/FsIF+BavYDDWMBGroaSMMBiE8VC7AZDrIFaMFnii3AZTjUgsUUWUDA8OdAH6iQbQEhw4HyGsPEcKBXBIC4ARhex4G4BsjmweU1soIFaGg/WtoFZRIZdEvIMhxkCCjXIVsATV6gFGACs4Rsw0EGgIIH3QJYJgHSARQZDrWAB+jawzgs+Q2UO49D7jnRSRGoEFRILcdmEMWGI0cm0JJ2QpYA1RDvcmzJEWhABhD/pqrL0S0CWuABKgnRki9lLseS7g2AlqwHWQSKH4oKLrILpRGhEQCw2LiRUIa4lwAAAABJRU5ErkJggg==") !important;
12
+ .mu-toast-success {
46
13
  background-color: $mu-color-success;
47
14
  }
48
- .toast-warning {
49
- background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAGYSURBVEhL5ZSvTsNQFMbXZGICMYGYmJhAQIJAICYQPAACiSDB8AiICQQJT4CqQEwgJvYASAQCiZiYmJhAIBATCARJy+9rTsldd8sKu1M0+dLb057v6/lbq/2rK0mS/TRNj9cWNAKPYIJII7gIxCcQ51cvqID+GIEX8ASG4B1bK5gIZFeQfoJdEXOfgX4QAQg7kH2A65yQ87lyxb27sggkAzAuFhbbg1K2kgCkB1bVwyIR9m2L7PRPIhDUIXgGtyKw575yz3lTNs6X4JXnjV+LKM/m3MydnTbtOKIjtz6VhCBq4vSm3ncdrD2lk0VgUXSVKjVDJXJzijW1RQdsU7F77He8u68koNZTz8Oz5yGa6J3H3lZ0xYgXBK2QymlWWA+RWnYhskLBv2vmE+hBMCtbA7KX5drWyRT/2JsqZ2IvfB9Y4bWDNMFbJRFmC9E74SoS0CqulwjkC0+5bpcV1CZ8NMej4pjy0U+doDQsGyo1hzVJttIjhQ7GnBtRFN1UarUlH8F3xict+HY07rEzoUGPlWcjRFRr4/gChZgc3ZL2d8oAAAAASUVORK5CYII=") !important;
15
+ .mu-toast-warning {
50
16
  background-color: $mu-color-warning;
51
17
  }
52
- .toast-bottom-left {
53
- bottom: 15px;
54
- left: 15px;
55
- z-index: 999999;
56
- }
57
18
  }
@@ -1,4 +1,4 @@
1
- $kids-height: calc(100vh - 80px - 30px) !default;
1
+ $kids-height: calc(100vh - 100px - 30px) !default;
2
2
 
3
3
  $kids-characters-height: 120px;
4
4
  $kids-speech-arrow-size: 10px;
@@ -18,6 +18,12 @@ $kids-speech-tabs-width: 40px;
18
18
  height: $kids-height;
19
19
  min-height: $kids-height;
20
20
  max-height: $kids-height;
21
+ @include media-breakpoint-down(lg) {
22
+ //slightly larger navbar on lg, xl, xxl
23
+ height: calc(#{$kids-height} + 30px);
24
+ min-height: calc(#{$kids-height} + 30px);
25
+ max-height: calc(#{$kids-height} + 30px);
26
+ }
21
27
 
22
28
  display: flex;
23
29
  flex-direction: row;
@@ -34,6 +40,10 @@ $kids-speech-tabs-width: 40px;
34
40
  .mu-kids-states {
35
41
  padding-bottom: 15px;
36
42
  height: $kids-height;
43
+ @include media-breakpoint-down(lg) {
44
+ //slightly larger navbar on lg, xl, xxl
45
+ height: calc(#{$kids-height} + 30px);
46
+ }
37
47
  }
38
48
  .mu-kids-character {
39
49
  padding: 15px;
@@ -52,6 +62,11 @@ $kids-speech-tabs-width: 40px;
52
62
  }
53
63
  .mu-kids-blocks {
54
64
  height: calc(#{$kids-height} - #{$kids-characters-height} - 30px);
65
+ @include media-breakpoint-down(lg) {
66
+ //slightly larger navbar on lg, xl, xxl
67
+ height: calc(#{$kids-height} - #{$kids-characters-height});
68
+ }
69
+
55
70
  margin-left: 0;
56
71
  margin-right: 0;
57
72
  position: relative;
@@ -127,7 +142,7 @@ $kids-speech-tabs-width: 40px;
127
142
 
128
143
  }
129
144
 
130
- @media screen and (max-width: $screen-sm-max) {
145
+ @include media-breakpoint-only(md) {
131
146
  h4 {
132
147
  &.text-warning {
133
148
  font-size: 18px;
@@ -142,7 +157,7 @@ $kids-speech-tabs-width: 40px;
142
157
  }
143
158
  }
144
159
 
145
- @media screen and (max-width: $screen-xs-max) {
160
+ @include media-breakpoint-down(sm) {
146
161
  h4 {
147
162
  font-size: 20px;
148
163
  &.text-warning {
@@ -500,7 +515,7 @@ $statuses-glow-animation: (
500
515
  }
501
516
  }
502
517
 
503
- @media screen and (max-height: $screen-xs-min) {
518
+ @media screen and (max-height: map_get($grid-breakpoints, sm)) {
504
519
  .mu-kids-exercise {
505
520
  height: 100vh;
506
521
  min-height: 100vh;
@@ -58,29 +58,16 @@ $capital-animation-width: 135px;
58
58
  }
59
59
  }
60
60
 
61
- .mu-kids-modal-border {
62
-
61
+ .mu-kids-modal {
63
62
  .modal-dialog {
63
+ @extend .modal-lg;
64
+ @extend .modal-dialog-centered;
64
65
 
65
- height: 100vh;
66
- width: 100vw;
67
- margin: 0;
66
+ .modal-header {
67
+ @extend .justify-content-center;
68
+ }
68
69
 
69
70
  .modal-content {
70
-
71
- position: absolute;
72
-
73
- $width-lg: 800px;
74
-
75
- width: $width-lg;
76
-
77
- top: 60px;
78
- left: calc(50% - #{$width-lg} / 2);
79
-
80
- @media (max-width: $width-lg + 30px) {
81
- width: calc(100vw - 30px);
82
- }
83
-
84
71
  $border-width: 16px;
85
72
  border-width: $border-width;
86
73
  border-style: solid;
@@ -132,7 +119,6 @@ $capital-animation-width: 135px;
132
119
  'warning': $mu-color-warning,
133
120
  'passed': $mu-color-success,
134
121
  'passed_with_warnings': $mu-color-warning,
135
- 'passed-with-warnings': $mu-color-warning,
136
122
  'failed': $mu-color-danger,
137
123
  'errored': $mu-color-broken,
138
124
  'aborted': $mu-color-broken,
@@ -147,18 +133,27 @@ $capital-animation-width: 135px;
147
133
  }
148
134
  }
149
135
  .mu-kids-character.kindergarten {
150
- @include full-size-character;
136
+ img {
137
+ width: 100%;
138
+ height: 100%;
139
+ object-position: center;
140
+ object-fit: contain;
141
+ }
151
142
  }
152
143
 
153
144
  .submission-results.kindergarten {
154
145
  width: 100%;
155
- height: 100%;
156
146
  .mu-kids-callout-#{$class},
157
147
  p {
158
148
  display: none;
159
149
  }
160
150
  .mu-kids-default-#{$class} {
161
- @include full-size-character;
151
+ img {
152
+ flex-grow: 1;
153
+ margin: 0;
154
+ width: 100%;
155
+ object-fit: contain;
156
+ }
162
157
  }
163
158
  }
164
159
  }
@@ -94,28 +94,20 @@ $modal-footer-height: 95px;
94
94
  width: $width-lg;
95
95
  height: $height-lg;
96
96
 
97
- top: calc(50vh - #{$height-lg} / 2);
98
-
99
97
  @media (orientation: landscape) and (max-height: $height-lg + 50px) {
100
98
  $height-sm: 85vh;
101
99
  $width-sm: $height-sm / 0.625;
102
100
 
103
101
  width: $width-sm;
104
102
  height: $height-sm;
105
-
106
- top: calc(50vh - #{$height-sm} / 2);
107
- left: calc(50vw - #{$width-sm} / 2);
108
103
  }
109
104
 
110
105
  @media (orientation: portrait) {
111
- $height-sm: 85vh;
106
+ $height-sm: 75vh;
112
107
  $width-sm: 85vw;
113
108
 
114
109
  width: $width-sm;
115
110
  height: $height-sm;
116
-
117
- top: calc(50vh - #{$height-sm} / 2);
118
- left: calc(50vw - #{$width-sm} / 2);
119
111
  }
120
112
 
121
113
  .modal-header,
@@ -11,7 +11,7 @@
11
11
  flex-direction: column;
12
12
  a {
13
13
  cursor: pointer;
14
- padding: 5px;
14
+ margin: 5px;
15
15
  }
16
16
  &.multiple-files {
17
17
  top: 43px;
@@ -8,7 +8,7 @@
8
8
  border-style: solid;
9
9
  width: 100%;
10
10
  height: 10px;
11
- background-color: $gray-lighter;
11
+ background-color: $gray-200;
12
12
  &:hover {
13
13
  text-decoration: none;
14
14
  }
@@ -17,15 +17,15 @@
17
17
  }
18
18
  }
19
19
  .success {
20
- background-color: $brand-success;
20
+ background-color: $success;
21
21
  }
22
22
  .warning {
23
- background-color: $brand-warning;
23
+ background-color: $warning;
24
24
  }
25
25
  .danger {
26
- background-color: $brand-danger;
26
+ background-color: $danger;
27
27
  }
28
28
  .info {
29
- background-color: $brand-info;
29
+ background-color: $info;
30
30
  }
31
31
  }