@igo2/core 1.15.4 → 16.0.0-rc.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (241) hide show
  1. package/_index.scss +8 -0
  2. package/assets/icons/mdi.svg +1 -1
  3. package/core-theme.scss +5 -0
  4. package/{esm2020 → esm2022}/igo2-core.mjs +4 -4
  5. package/{esm2020 → esm2022}/lib/activity/activity.interceptor.mjs +32 -30
  6. package/{esm2020 → esm2022}/lib/activity/activity.module.mjs +30 -30
  7. package/esm2022/lib/activity/activity.service.mjs +32 -0
  8. package/{esm2020 → esm2022}/lib/activity/index.mjs +3 -3
  9. package/{esm2020 → esm2022}/lib/analytics/index.mjs +2 -2
  10. package/{esm2020 → esm2022}/lib/analytics/shared/analytics.interface.mjs +2 -2
  11. package/esm2022/lib/analytics/shared/analytics.service.mjs +84 -0
  12. package/{esm2020 → esm2022}/lib/analytics/shared/index.mjs +3 -3
  13. package/{esm2020 → esm2022}/lib/compression/compressedData.interface.mjs +2 -2
  14. package/esm2022/lib/compression/compression.service.mjs +142 -0
  15. package/{esm2020 → esm2022}/lib/compression/index.mjs +3 -3
  16. package/{esm2020 → esm2022}/lib/config/config.interface.mjs +1 -1
  17. package/{esm2020 → esm2022}/lib/config/config.module.mjs +23 -23
  18. package/{esm2020 → esm2022}/lib/config/config.provider.mjs +21 -21
  19. package/esm2022/lib/config/config.service.mjs +53 -0
  20. package/{esm2020 → esm2022}/lib/config/index.mjs +4 -4
  21. package/esm2022/lib/config/version.mjs +5 -0
  22. package/esm2022/lib/core.module.mjs +104 -0
  23. package/{esm2020 → esm2022}/lib/gesture/gesture.module.mjs +30 -30
  24. package/{esm2020 → esm2022}/lib/gesture/gesture.provider.mjs +16 -16
  25. package/{esm2020 → esm2022}/lib/language/index.mjs +2 -2
  26. package/esm2022/lib/language/language.module.mjs +39 -0
  27. package/{esm2020 → esm2022}/lib/language/shared/index.mjs +5 -5
  28. package/{esm2020 → esm2022}/lib/language/shared/language.interface.mjs +2 -2
  29. package/esm2022/lib/language/shared/language.loader.mjs +31 -0
  30. package/esm2022/lib/language/shared/language.provider.mjs +22 -0
  31. package/esm2022/lib/language/shared/language.service.mjs +38 -0
  32. package/{esm2020 → esm2022}/lib/language/shared/missing-translation.guard.mjs +16 -16
  33. package/{esm2020 → esm2022}/lib/media/index.mjs +3 -3
  34. package/{esm2020 → esm2022}/lib/media/media.enum.mjs +12 -12
  35. package/esm2022/lib/media/media.service.mjs +82 -0
  36. package/{esm2020 → esm2022}/lib/message/index.mjs +2 -2
  37. package/esm2022/lib/message/message.module.mjs +60 -0
  38. package/{esm2020 → esm2022}/lib/message/shared/index.mjs +4 -4
  39. package/{esm2020 → esm2022}/lib/message/shared/message.enum.mjs +10 -10
  40. package/{esm2020 → esm2022}/lib/message/shared/message.interface.mjs +2 -2
  41. package/esm2022/lib/message/shared/message.service.mjs +218 -0
  42. package/{esm2020 → esm2022}/lib/network/index.mjs +3 -3
  43. package/{esm2020 → esm2022}/lib/network/network.interfaces.mjs +2 -2
  44. package/esm2022/lib/network/network.service.mjs +66 -0
  45. package/{esm2020 → esm2022}/lib/regex/index.mjs +3 -3
  46. package/{esm2020 → esm2022}/lib/regex/regex.interface.mjs +2 -2
  47. package/esm2022/lib/regex/regex.service.mjs +30 -0
  48. package/esm2022/lib/request/error.interceptor.mjs +67 -0
  49. package/esm2022/lib/request/error.module.mjs +39 -0
  50. package/{esm2020 → esm2022}/lib/request/index.mjs +3 -3
  51. package/esm2022/lib/request/logging.interceptor.mjs +29 -0
  52. package/{esm2020 → esm2022}/lib/request/logging.module.mjs +30 -30
  53. package/esm2022/lib/route/route.interface.mjs +2 -0
  54. package/esm2022/lib/route/route.service.mjs +75 -0
  55. package/esm2022/lib/storage/index.mjs +4 -0
  56. package/{esm2020 → esm2022}/lib/storage/storage.interface.mjs +13 -13
  57. package/esm2022/lib/storage/storage.mjs +76 -0
  58. package/esm2022/lib/storage/storage.service.mjs +21 -0
  59. package/{esm2020 → esm2022}/public_api.mjs +27 -27
  60. package/{fesm2020 → fesm2022}/igo2-core.mjs +1364 -1288
  61. package/fesm2022/igo2-core.mjs.map +1 -0
  62. package/index.d.ts +5 -5
  63. package/lib/activity/activity.interceptor.d.ts +11 -11
  64. package/lib/activity/activity.module.d.ts +8 -8
  65. package/lib/activity/activity.service.d.ts +11 -11
  66. package/lib/activity/index.d.ts +2 -2
  67. package/lib/analytics/index.d.ts +1 -1
  68. package/lib/analytics/shared/analytics.interface.d.ts +6 -6
  69. package/lib/analytics/shared/analytics.service.d.ts +23 -23
  70. package/lib/analytics/shared/index.d.ts +2 -2
  71. package/lib/compression/compressedData.interface.d.ts +5 -5
  72. package/lib/compression/compression.service.d.ts +15 -15
  73. package/lib/compression/index.d.ts +2 -2
  74. package/lib/config/config.interface.d.ts +6 -6
  75. package/lib/config/config.module.d.ts +8 -8
  76. package/lib/config/config.provider.d.ts +15 -15
  77. package/lib/config/config.service.d.ts +18 -18
  78. package/lib/config/index.d.ts +3 -3
  79. package/lib/config/version.d.ts +5 -5
  80. package/lib/core.module.d.ts +19 -19
  81. package/lib/gesture/gesture.module.d.ts +9 -9
  82. package/lib/gesture/gesture.provider.d.ts +7 -7
  83. package/lib/language/index.d.ts +1 -1
  84. package/lib/language/language.module.d.ts +9 -9
  85. package/lib/language/shared/index.d.ts +4 -4
  86. package/lib/language/shared/language.interface.d.ts +3 -3
  87. package/lib/language/shared/language.loader.d.ts +11 -11
  88. package/lib/language/shared/language.provider.d.ts +15 -15
  89. package/lib/language/shared/language.service.d.ts +13 -13
  90. package/lib/language/shared/missing-translation.guard.d.ts +4 -4
  91. package/lib/media/index.d.ts +2 -2
  92. package/lib/media/media.enum.d.ts +9 -9
  93. package/lib/media/media.service.d.ts +16 -16
  94. package/lib/message/index.d.ts +1 -1
  95. package/lib/message/message.module.d.ts +10 -10
  96. package/lib/message/message.theming.scss +26 -0
  97. package/lib/message/shared/index.d.ts +4 -4
  98. package/lib/message/shared/message.enum.d.ts +8 -8
  99. package/lib/message/shared/message.interface.d.ts +21 -21
  100. package/lib/message/shared/message.service.d.ts +31 -31
  101. package/lib/network/index.d.ts +2 -2
  102. package/lib/network/network.interfaces.d.ts +3 -3
  103. package/lib/network/network.service.d.ts +21 -21
  104. package/lib/regex/index.d.ts +2 -2
  105. package/lib/regex/regex.interface.d.ts +3 -3
  106. package/lib/regex/regex.service.d.ts +12 -12
  107. package/lib/request/error.interceptor.d.ts +14 -14
  108. package/lib/request/error.module.d.ts +9 -9
  109. package/lib/request/index.d.ts +2 -2
  110. package/lib/request/logging.interceptor.d.ts +8 -8
  111. package/lib/request/logging.module.d.ts +8 -8
  112. package/lib/route/route.interface.d.ts +23 -23
  113. package/lib/route/route.service.d.ts +19 -19
  114. package/lib/storage/index.d.ts +3 -2
  115. package/lib/storage/storage.d.ts +15 -0
  116. package/lib/storage/storage.interface.d.ts +20 -20
  117. package/lib/storage/storage.service.d.ts +10 -19
  118. package/locale/en.core.json +1 -2
  119. package/locale/en.json +1 -1205
  120. package/locale/fr.core.json +1 -2
  121. package/locale/fr.json +1 -1210
  122. package/package.json +40 -30
  123. package/packages.import.scss +4 -0
  124. package/public_api.d.ts +24 -24
  125. package/style/all-style.css +793 -0
  126. package/style/all-style.scss +3 -0
  127. package/style/layout.scss +163 -0
  128. package/style/partial/core-utils.scss +5 -0
  129. package/style/partial/core.variables.scss +1 -1
  130. package/style/partial/media.scss +80 -80
  131. package/style/style.css +237 -0
  132. package/style/style.scss +19 -0
  133. package/theming/all-theme.scss +14 -0
  134. package/theming/material-theme-override.scss +39 -0
  135. package/theming/prebuilt-themes/blue-theme.css +2986 -0
  136. package/theming/prebuilt-themes/blue-theme.scss +34 -0
  137. package/theming/prebuilt-themes/bluedark-theme.css +2986 -0
  138. package/theming/prebuilt-themes/bluedark-theme.scss +67 -0
  139. package/theming/prebuilt-themes/bluedq-theme.css +2986 -0
  140. package/theming/prebuilt-themes/bluedq-theme.scss +66 -0
  141. package/theming/prebuilt-themes/bluegrey-theme.css +2986 -0
  142. package/theming/prebuilt-themes/bluegrey-theme.scss +25 -0
  143. package/theming/prebuilt-themes/dark-theme.css +2993 -0
  144. package/theming/prebuilt-themes/dark-theme.scss +25 -0
  145. package/theming/prebuilt-themes/deeppurple-theme.css +2986 -0
  146. package/theming/prebuilt-themes/deeppurple-theme.scss +25 -0
  147. package/theming/prebuilt-themes/indigo-theme.css +2986 -0
  148. package/theming/prebuilt-themes/indigo-theme.scss +25 -0
  149. package/theming/prebuilt-themes/orange-theme.css +2986 -0
  150. package/theming/prebuilt-themes/orange-theme.scss +25 -0
  151. package/theming/prebuilt-themes/qcca/_index.scss +2 -0
  152. package/theming/prebuilt-themes/qcca/base/_index.scss +4 -0
  153. package/theming/prebuilt-themes/qcca/base/breakpoints.scss +57 -0
  154. package/theming/prebuilt-themes/qcca/base/colors.scss +40 -0
  155. package/theming/prebuilt-themes/qcca/base/palette.scss +50 -0
  156. package/theming/prebuilt-themes/qcca/base/typography/_index.scss +2 -0
  157. package/theming/prebuilt-themes/qcca/base/typography/typography.scss +138 -0
  158. package/theming/prebuilt-themes/qcca/base/typography/typography.utils.scss +18 -0
  159. package/theming/prebuilt-themes/qcca/components/_index.scss +9 -0
  160. package/theming/prebuilt-themes/qcca/components/_index.theme.scss +5 -0
  161. package/theming/prebuilt-themes/qcca/components/button.scss +24 -0
  162. package/theming/prebuilt-themes/qcca/components/dialog.scss +36 -0
  163. package/theming/prebuilt-themes/qcca/components/form-field.scss +5 -0
  164. package/theming/prebuilt-themes/qcca/components/input.scss +6 -0
  165. package/theming/prebuilt-themes/qcca/components/list.scss +24 -0
  166. package/theming/prebuilt-themes/qcca/components/panel.scss +8 -0
  167. package/theming/prebuilt-themes/qcca/components/search-bar.scss +41 -0
  168. package/theming/prebuilt-themes/qcca/components/search-bar.theme.scss +29 -0
  169. package/theming/prebuilt-themes/qcca-theme.css +3373 -0
  170. package/theming/prebuilt-themes/qcca-theme.scss +47 -0
  171. package/theming/prebuilt-themes/teal-theme.css +2986 -0
  172. package/theming/prebuilt-themes/teal-theme.scss +25 -0
  173. package/theming/typography.scss +28 -0
  174. package/theming/utils/_foreground.scss +22 -0
  175. package/__ivy_ngcc__/locale/en.auth.json +0 -29
  176. package/__ivy_ngcc__/locale/en.common.json +0 -43
  177. package/__ivy_ngcc__/locale/en.context.json +0 -199
  178. package/__ivy_ngcc__/locale/en.core.json +0 -29
  179. package/__ivy_ngcc__/locale/en.geo.json +0 -805
  180. package/__ivy_ngcc__/locale/en.integration.json +0 -124
  181. package/__ivy_ngcc__/locale/en.json +0 -1205
  182. package/__ivy_ngcc__/locale/fr.auth.json +0 -32
  183. package/__ivy_ngcc__/locale/fr.common.json +0 -43
  184. package/__ivy_ngcc__/locale/fr.context.json +0 -199
  185. package/__ivy_ngcc__/locale/fr.core.json +0 -29
  186. package/__ivy_ngcc__/locale/fr.geo.json +0 -805
  187. package/__ivy_ngcc__/locale/fr.integration.json +0 -125
  188. package/__ivy_ngcc__/locale/fr.json +0 -1210
  189. package/esm2020/lib/activity/activity.service.mjs +0 -33
  190. package/esm2020/lib/analytics/shared/analytics.service.mjs +0 -81
  191. package/esm2020/lib/compression/compression.service.mjs +0 -140
  192. package/esm2020/lib/config/config.service.mjs +0 -52
  193. package/esm2020/lib/config/version.mjs +0 -5
  194. package/esm2020/lib/core.module.mjs +0 -92
  195. package/esm2020/lib/language/language.module.mjs +0 -39
  196. package/esm2020/lib/language/shared/language.loader.mjs +0 -26
  197. package/esm2020/lib/language/shared/language.provider.mjs +0 -22
  198. package/esm2020/lib/language/shared/language.service.mjs +0 -32
  199. package/esm2020/lib/media/media.service.mjs +0 -76
  200. package/esm2020/lib/message/message.module.mjs +0 -56
  201. package/esm2020/lib/message/shared/message.service.mjs +0 -201
  202. package/esm2020/lib/network/network.service.mjs +0 -60
  203. package/esm2020/lib/regex/regex.service.mjs +0 -27
  204. package/esm2020/lib/request/error.interceptor.mjs +0 -66
  205. package/esm2020/lib/request/error.module.mjs +0 -39
  206. package/esm2020/lib/request/logging.interceptor.mjs +0 -29
  207. package/esm2020/lib/route/route.interface.mjs +0 -2
  208. package/esm2020/lib/route/route.service.mjs +0 -71
  209. package/esm2020/lib/storage/index.mjs +0 -3
  210. package/esm2020/lib/storage/storage.service.mjs +0 -79
  211. package/fesm2015/igo2-core.mjs +0 -1418
  212. package/fesm2015/igo2-core.mjs.map +0 -1
  213. package/fesm2020/igo2-core.mjs.map +0 -1
  214. package/locale/en.auth.json +0 -29
  215. package/locale/en.common.json +0 -43
  216. package/locale/en.context.json +0 -199
  217. package/locale/en.geo.json +0 -805
  218. package/locale/en.integration.json +0 -124
  219. package/locale/fr.auth.json +0 -32
  220. package/locale/fr.common.json +0 -43
  221. package/locale/fr.context.json +0 -199
  222. package/locale/fr.geo.json +0 -805
  223. package/locale/fr.integration.json +0 -125
  224. package/style/all.theming.scss +0 -5
  225. package/style/core.theming.scss +0 -9
  226. package/style/foreground.scss +0 -20
  227. package/style/index.theming.scss +0 -1465
  228. package/style/material.font.scss +0 -10
  229. package/style/setup.scss +0 -2
  230. package/style/themes/blue.theme.scss +0 -19
  231. package/style/themes/bluedark.theme.scss +0 -52
  232. package/style/themes/bluedq.theme.scss +0 -52
  233. package/style/themes/bluegrey.theme.scss +0 -16
  234. package/style/themes/dark.theme.scss +0 -16
  235. package/style/themes/deeppurple.theme.scss +0 -16
  236. package/style/themes/indigo.theme.scss +0 -16
  237. package/style/themes/orange.theme.scss +0 -16
  238. package/style/themes/qcca.theme.scss +0 -98
  239. package/style/themes/teal.theme.scss +0 -16
  240. package/style/theming.scss +0 -5
  241. package/style/typography.scss +0 -17
@@ -0,0 +1,25 @@
1
+ @use '@angular/material' as mat;
2
+ @use '../../index' as igo;
3
+
4
+ $primary: mat.define-palette(mat.$orange-palette, 800);
5
+ $accent: mat.define-palette(mat.$light-blue-palette, 600, 100, 800);
6
+ $warn: mat.define-palette(mat.$red-palette, 600);
7
+ $typography: igo.$igo-typography;
8
+
9
+ $theme: mat.define-light-theme(
10
+ (
11
+ color: (
12
+ primary: $primary,
13
+ accent: $accent,
14
+ warn: $warn
15
+ ),
16
+ typography: $typography,
17
+ density: 0
18
+ )
19
+ );
20
+
21
+ @include mat.core();
22
+ @include mat.typography-hierarchy($typography);
23
+ @include mat.all-component-themes($theme);
24
+
25
+ @include igo.all-component-themes($theme);
@@ -0,0 +1,2 @@
1
+ @forward './base';
2
+ @forward './components';
@@ -0,0 +1,4 @@
1
+ @forward './breakpoints';
2
+ @forward './colors' as colors-*;
3
+ @forward './palette';
4
+ @forward './typography';
@@ -0,0 +1,57 @@
1
+ @use 'sass:map';
2
+
3
+ // There is no standard for breakpoints for the Quebec.ca theme
4
+ // This is the Material breakpoint design by devices
5
+ $device-breakpoints: (
6
+ mobile: (
7
+ max: 599px
8
+ ),
9
+ tablet: (
10
+ min: 600px,
11
+ max: 1239px
12
+ ),
13
+ laptop: (
14
+ min: 1240px,
15
+ max: 1439px
16
+ ),
17
+ desktop: (
18
+ min: 1440px
19
+ )
20
+ );
21
+
22
+ // Source: https://github.com/twbs/bootstrap/blob/main/scss/mixins/_breakpoints.scss
23
+ @function breakpoint-min($name, $breakpoints: $device-breakpoints) {
24
+ $min: map.get($breakpoints, $name, min);
25
+ @return if($min != 0, $min, null);
26
+ }
27
+
28
+ @function breakpoint-max($name, $breakpoints: $device-breakpoints) {
29
+ $max: map.get($breakpoints, $name, max);
30
+ @return if($max and $max > 0, $max, null);
31
+ }
32
+
33
+ // Media of at least the minimum breakpoint width. No query for the smallest breakpoint.
34
+ // Makes the @content apply to the given breakpoint and wider.
35
+ @mixin media-breakpoint-up($name, $breakpoints: $device-breakpoints) {
36
+ $min: breakpoint-min($name, $breakpoints);
37
+ @if $min {
38
+ @media (min-width: $min) {
39
+ @content;
40
+ }
41
+ } @else {
42
+ @content;
43
+ }
44
+ }
45
+
46
+ // Media of at most the maximum breakpoint width. No query for the largest breakpoint.
47
+ // Makes the @content apply to the given breakpoint and narrower.
48
+ @mixin media-breakpoint-down($name, $breakpoints: $device-breakpoints) {
49
+ $max: breakpoint-max($name, $breakpoints);
50
+ @if $max {
51
+ @media (max-width: $max) {
52
+ @content;
53
+ }
54
+ } @else {
55
+ @content;
56
+ }
57
+ }
@@ -0,0 +1,40 @@
1
+ @use 'sass:map';
2
+
3
+ // https://design.quebec.ca/bases/couleurs#c118192
4
+ $colors: (
5
+ blue: (
6
+ light: #dae6f0,
7
+ light-2: #4a98d9,
8
+ normal: #1472bf,
9
+ normal-piv: #095797,
10
+ medium: #19406c,
11
+ dark: #223654
12
+ ),
13
+ grey: (
14
+ light: #f1f1f2,
15
+ light-2: #c5cad2,
16
+ normal: #8893a2,
17
+ medium: #6b778a,
18
+ dark: #4e5662
19
+ ),
20
+ red: (
21
+ pink-light: #ffdbd6,
22
+ pink: #e58271,
23
+ normal: #cb381f,
24
+ dark: #692519
25
+ ),
26
+ green: (
27
+ light: #d7f0bb,
28
+ normal: #4f813d,
29
+ dark: #2c4024
30
+ ),
31
+ yellow: (
32
+ light: #f8e69a,
33
+ normal: #e0ad03,
34
+ dark: #ad781c
35
+ )
36
+ );
37
+
38
+ @function get($color, $name) {
39
+ @return map.get($colors, $color, $name);
40
+ }
@@ -0,0 +1,50 @@
1
+ @use 'sass:map';
2
+ @use 'sass:color';
3
+ @use './colors';
4
+
5
+ $blue-light: colors.get(blue, light);
6
+ $blue-light-2: colors.get(blue, light-2);
7
+ $blue-normal: colors.get(blue, normal);
8
+ $blue-normal-piv: colors.get(blue, normal-piv);
9
+ $blue-medium: colors.get(blue, medium);
10
+ $blue-dark: colors.get(blue, dark);
11
+
12
+ // Design Quebec colors
13
+ $primary: $blue-normal-piv;
14
+ $accent: colors.get(red, pink);
15
+
16
+ $dark-primary-text: $blue-dark;
17
+ $light-primary-text: white;
18
+
19
+ $palette: (
20
+ 50: $blue-light,
21
+ 100: color.adjust($blue-light-2, $lightness: 20%),
22
+ 200: color.adjust($blue-light-2, $lightness: 10%),
23
+ 300: $blue-light-2,
24
+ 400: $blue-normal,
25
+ 500: $primary,
26
+ 600: color.adjust($primary, $lightness: -10%),
27
+ 700: $blue-medium,
28
+ 800: color.adjust($blue-medium, $lightness: -10%),
29
+ 900: $blue-dark,
30
+ A100: $blue-normal,
31
+ A200: color.adjust($blue-normal, $lightness: 10%),
32
+ A400: colors.get(grey, light-2),
33
+ A700: colors.get(grey, light),
34
+ contrast: (
35
+ 50: $dark-primary-text,
36
+ 100: $dark-primary-text,
37
+ 200: $dark-primary-text,
38
+ 300: $dark-primary-text,
39
+ 400: $dark-primary-text,
40
+ 500: $light-primary-text,
41
+ 600: $light-primary-text,
42
+ 700: $light-primary-text,
43
+ 800: $light-primary-text,
44
+ 900: $light-primary-text,
45
+ A100: $dark-primary-text,
46
+ A200: $light-primary-text,
47
+ A400: $light-primary-text,
48
+ A700: $light-primary-text
49
+ )
50
+ );
@@ -0,0 +1,2 @@
1
+ @forward './typography' as typo-*;
2
+ @forward './typography.utils';
@@ -0,0 +1,138 @@
1
+ @use 'sass:map';
2
+ @use '@angular/material' as mat;
3
+ @use '../palette';
4
+ @use '../breakpoints';
5
+ @use './typography.utils' as typo-utils;
6
+
7
+ // https://design.quebec.ca/bases/polices-caracteres
8
+ // https://design.quebec.ca/bases/niveaux-titres
9
+ // https://material.angular.io/guide/typography
10
+ $typography: mat.define-typography-config(
11
+ $font-family: '"Open Sans", sans-serif',
12
+ $headline-1: mat.define-typography-level(110px, 110px, 500),
13
+ $headline-2: mat.define-typography-level(54px, 54px, 500),
14
+ $headline-3: mat.define-typography-level(43px, 46px, 500),
15
+ $headline-4: mat.define-typography-level(32px, 38px, 500),
16
+ // h1
17
+ $headline-5: mat.define-typography-level(48px, 56px, bold),
18
+ // h2
19
+ $headline-6: mat.define-typography-level(36px, 40px, bold),
20
+ // h3
21
+ $subtitle-1: mat.define-typography-level(28px, 32px, bold),
22
+ // h4
23
+ $subtitle-2: mat.define-typography-level(21px, 24px, bold),
24
+ $body-1: mat.define-typography-level(16px, 24px, 400),
25
+ $body-2: mat.define-typography-level(12px, 18px, 400),
26
+ $caption: mat.define-typography-level(12px, 18px, 400),
27
+ $button: mat.define-typography-level(13px, 13px, 500)
28
+ );
29
+
30
+ $typography-mobile: mat.define-typography-config(
31
+ // h1
32
+ $headline-5: mat.define-typography-level(36px, 40px, bold),
33
+ // h2
34
+ $headline-6: mat.define-typography-level(28px, 32px, bold),
35
+ // h3
36
+ $subtitle-1: mat.define-typography-level(25px, 32px, bold)
37
+ );
38
+
39
+ $font-color: map.get(palette.$palette, 900);
40
+
41
+ @mixin set-base-styles {
42
+ body {
43
+ color: $font-color;
44
+ }
45
+
46
+ a {
47
+ word-break: break-word;
48
+ overflow-wrap: break-word;
49
+ cursor: pointer;
50
+ color: palette.$primary;
51
+ text-decoration: underline;
52
+ background-color: transparent;
53
+ }
54
+
55
+ p,
56
+ ul,
57
+ li,
58
+ u,
59
+ .text {
60
+ color: $font-color;
61
+ font-size: 16px;
62
+ line-height: 24px;
63
+ }
64
+
65
+ p {
66
+ margin-bottom: 24px;
67
+ }
68
+
69
+ strong {
70
+ font-weight: 600;
71
+ }
72
+
73
+ h1,
74
+ h2,
75
+ h3,
76
+ h4,
77
+ h5,
78
+ h6,
79
+ .h1,
80
+ .h2,
81
+ .h3,
82
+ .h4,
83
+ .h5,
84
+ .h6 {
85
+ font-family: Roboto, sans-serif !important;
86
+ color: $font-color;
87
+ }
88
+
89
+ h1 {
90
+ margin-top: 72px !important;
91
+ margin-bottom: 32px !important;
92
+
93
+ @include typo-utils.title-border;
94
+
95
+ @include breakpoints.media-breakpoint-down(tablet) {
96
+ margin-top: 48px !important;
97
+ margin-bottom: 16px !important;
98
+ }
99
+ }
100
+
101
+ h2 {
102
+ margin-top: 48px !important;
103
+ margin-bottom: 16px !important;
104
+ }
105
+
106
+ h3 {
107
+ margin-top: 24px !important;
108
+ margin-bottom: 16px !important;
109
+ }
110
+
111
+ // WORKAROUND, mat-typography area of intersection h4 is using mat-body-1
112
+ // https://github.com/angular/components/issues/26351
113
+ h4 {
114
+ @include typo-utils.title-level-4;
115
+ }
116
+
117
+ h4 {
118
+ margin-top: 24px !important;
119
+ margin-bottom: 8px !important;
120
+ }
121
+
122
+ h5 {
123
+ font-size: 19px !important;
124
+ line-height: 24px !important;
125
+ }
126
+
127
+ h6 {
128
+ font-size: 16px !important;
129
+ line-height: 20px !important;
130
+ }
131
+
132
+ h5,
133
+ h6 {
134
+ font-weight: bold !important;
135
+ margin-top: 16px !important;
136
+ margin-bottom: 0px !important;
137
+ }
138
+ }
@@ -0,0 +1,18 @@
1
+ @use '../palette';
2
+
3
+ @mixin title-border {
4
+ &:after {
5
+ content: '';
6
+ display: block;
7
+ margin: 0;
8
+ width: 48px;
9
+ padding-top: 4px;
10
+ border-bottom: 4px solid palette.$accent;
11
+ }
12
+ }
13
+
14
+ @mixin title-level-4 {
15
+ font-size: 21px !important;
16
+ line-height: 24px !important;
17
+ font-weight: bold !important;
18
+ }
@@ -0,0 +1,9 @@
1
+ @use './button';
2
+ @use './dialog';
3
+ @use './form-field';
4
+ @use './input';
5
+ @use './list';
6
+ @use './panel';
7
+ @use './search-bar';
8
+
9
+ @forward './_index.theme' as all-component-*;
@@ -0,0 +1,5 @@
1
+ @use './search-bar.theme' as search-bar;
2
+
3
+ @mixin themes($theme) {
4
+ @include search-bar.theme($theme);
5
+ }
@@ -0,0 +1,24 @@
1
+ @use 'sass:map';
2
+ @use '@angular/material' as mat;
3
+ @use '../base';
4
+
5
+ $color-500: map.get(base.$palette, 500);
6
+
7
+ .mdc-button {
8
+ font-size: mat.font-size(base.$typo-typography, body-1) !important;
9
+ line-height: mat.line-height(base.$typo-typography, body-1) !important;
10
+ font-weight: bold !important;
11
+ }
12
+
13
+ .mat-mdc-outlined-button {
14
+ border: 2px solid currentColor;
15
+ }
16
+
17
+ .mat-mdc-button-base {
18
+ border-radius: 0 !important;
19
+ }
20
+
21
+ .mat-mdc-raised-button {
22
+ color: $color-500 !important;
23
+ border-color: $color-500 !important;
24
+ }
@@ -0,0 +1,36 @@
1
+ @use '../base';
2
+
3
+ .mdc-dialog {
4
+ max-width: 600px;
5
+
6
+ &__surface {
7
+ border-radius: 0 !important;
8
+ }
9
+
10
+ &__title {
11
+ padding-top: 8px !important; // Workaround, this should be 32px but Material apply a default height for the title.
12
+ padding-bottom: 24px !important;
13
+
14
+ @include base.title-level-4;
15
+ @include base.title-border;
16
+ }
17
+
18
+ &__tile,
19
+ &__content,
20
+ &__actions {
21
+ padding-left: 32px !important;
22
+ padding-right: 32px !important;
23
+ }
24
+
25
+ &__actions {
26
+ padding-top: 24px !important;
27
+ padding-bottom: 32px !important;
28
+ }
29
+
30
+ .close-button {
31
+ $iconButtonPadding: 8px;
32
+ position: absolute;
33
+ top: 16px - $iconButtonPadding;
34
+ right: 16px - $iconButtonPadding;
35
+ }
36
+ }
@@ -0,0 +1,5 @@
1
+ .mat-mdc-text-field-wrapper,
2
+ .mdc-notched-outline__leading,
3
+ .mdc-notched-outline__trailing {
4
+ border-radius: 0 !important;
5
+ }
@@ -0,0 +1,6 @@
1
+ @use 'sass:map';
2
+ @use '../base';
3
+
4
+ .mat-mdc-input-element {
5
+ color: base.colors-get(grey, medium) !important;
6
+ }
@@ -0,0 +1,24 @@
1
+ @use 'sass:map';
2
+ @use '@angular/material' as mat;
3
+ @use '../base';
4
+
5
+ // TODO rework this style to be more generic
6
+
7
+ igo-search-results-item {
8
+ .mdc-list-item__primary-text {
9
+ white-space: normal;
10
+ overflow: hidden;
11
+ text-overflow: ellipsis;
12
+ max-height: unset !important;
13
+ line-height: 18px !important;
14
+ }
15
+ }
16
+
17
+ igo-list [igolistitem][color='accent'].igo-list-item-selected > mat-list-item {
18
+ background-color: map.get(base.$palette, 400);
19
+
20
+ h4,
21
+ small {
22
+ color: map.get(base.$palette, contrast, 500) !important;
23
+ }
24
+ }
@@ -0,0 +1,8 @@
1
+ @use 'sass:map';
2
+ @use '../base';
3
+
4
+ .igo-panel-header,
5
+ .igo-panel-header button,
6
+ .igo-panel-title {
7
+ color: map.get(base.$palette, contrast, 500) !important;
8
+ }
@@ -0,0 +1,41 @@
1
+ @use 'sass:map';
2
+ @use '@angular/material' as mat;
3
+ @use '../base';
4
+
5
+ igo-search-bar {
6
+ // Workaroung, OPEN SANS font add a mysterious 1px for the height
7
+ .mat-mdc-form-field-infix {
8
+ max-height: 40px;
9
+ }
10
+
11
+ button[mat-icon-button] {
12
+ background-color: map.get(base.$palette, 500);
13
+
14
+ &:hover {
15
+ background-color: map.get(base.$palette, 400);
16
+ }
17
+ }
18
+
19
+ mat-icon {
20
+ color: map.get(base.$palette, contrast, 500);
21
+ }
22
+ }
23
+
24
+ igo-search-results {
25
+ igo-collapsible {
26
+ .mdc-list-item__primary-text {
27
+ color: base.$blue-dark;
28
+ font-weight: bold;
29
+ }
30
+ }
31
+
32
+ igo-search-results-item {
33
+ .mdc-list-item__primary-text {
34
+ font-weight: normal;
35
+ }
36
+ }
37
+
38
+ .mdc-list-item--with-leading-icon .mdc-list-item__start {
39
+ color: base.$blue-dark;
40
+ }
41
+ }
@@ -0,0 +1,29 @@
1
+ @use 'sass:map';
2
+ @use '@angular/material' as mat;
3
+
4
+ @mixin theme($theme) {
5
+ @include density($theme);
6
+ }
7
+
8
+ @mixin density($theme) {
9
+ $density: mat.get-density-config($theme);
10
+
11
+ $theme4: map.merge(
12
+ $theme,
13
+ (
14
+ density: $density - 4
15
+ )
16
+ );
17
+
18
+ $theme2: map.merge(
19
+ $theme,
20
+ (
21
+ density: $density - 2
22
+ )
23
+ );
24
+
25
+ igo-search-bar {
26
+ @include mat.form-field-density($theme4);
27
+ @include mat.icon-button-density($theme2);
28
+ }
29
+ }