@angular/material 18.2.0-next.1 → 18.2.0-next.2

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 (155) hide show
  1. package/button/_button-base.scss +0 -6
  2. package/checkbox/_checkbox-common.scss +38 -4
  3. package/checkbox/index.d.ts +6 -1
  4. package/core/_core.scss +15 -18
  5. package/core/m2/_typography.scss +129 -2
  6. package/core/style/_elevation.scss +116 -27
  7. package/core/tokens/_m3-tokens.scss +13 -13
  8. package/core/tokens/_token-utils.scss +65 -2
  9. package/core/tokens/m2/mat/_fab-small.scss +1 -2
  10. package/core/tokens/m2/mat/_fab.scss +1 -2
  11. package/core/tokens/m2/mat/_filled-button.scss +1 -2
  12. package/core/tokens/m2/mat/_form-field.scss +0 -2
  13. package/core/tokens/m2/mat/_protected-button.scss +1 -2
  14. package/core/tokens/m2/mdc/_checkbox.scss +1 -2
  15. package/core/tokens/m2/mdc/_filled-button.scss +1 -2
  16. package/core/tokens/m2/mdc/_protected-button.scss +1 -2
  17. package/core/tokens/m3/definitions/_index.scss +94 -0
  18. package/core/tokens/m3/definitions/_md-comp-checkbox.scss +120 -0
  19. package/core/tokens/m3/definitions/_md-comp-circular-progress-indicator.scss +27 -0
  20. package/core/tokens/m3/definitions/_md-comp-data-table.scss +90 -0
  21. package/core/tokens/m3/definitions/_md-comp-dialog.scss +123 -0
  22. package/core/tokens/m3/definitions/_md-comp-elevated-button.scss +87 -0
  23. package/core/tokens/m3/definitions/_md-comp-elevated-card.scss +53 -0
  24. package/core/tokens/m3/definitions/_md-comp-extended-fab-primary.scss +90 -0
  25. package/core/tokens/m3/definitions/_md-comp-extended-fab-secondary.scss +91 -0
  26. package/core/tokens/m3/definitions/_md-comp-extended-fab-tertiary.scss +91 -0
  27. package/core/tokens/m3/definitions/_md-comp-fab-primary-small.scss +59 -0
  28. package/core/tokens/m3/definitions/_md-comp-fab-primary.scss +59 -0
  29. package/core/tokens/m3/definitions/_md-comp-fab-secondary-small.scss +60 -0
  30. package/core/tokens/m3/definitions/_md-comp-fab-secondary.scss +60 -0
  31. package/core/tokens/m3/definitions/_md-comp-fab-tertiary-small.scss +60 -0
  32. package/core/tokens/m3/definitions/_md-comp-fab-tertiary.scss +60 -0
  33. package/core/tokens/m3/definitions/_md-comp-filled-button.scss +85 -0
  34. package/core/tokens/m3/definitions/_md-comp-filled-card.scss +52 -0
  35. package/core/tokens/m3/definitions/_md-comp-filled-icon-button.scss +73 -0
  36. package/core/tokens/m3/definitions/_md-comp-filled-text-field.scss +189 -0
  37. package/core/tokens/m3/definitions/_md-comp-icon-button.scss +64 -0
  38. package/core/tokens/m3/definitions/_md-comp-linear-progress-indicator.scss +29 -0
  39. package/core/tokens/m3/definitions/_md-comp-list.scss +252 -0
  40. package/core/tokens/m3/definitions/_md-comp-outlined-button.scss +80 -0
  41. package/core/tokens/m3/definitions/_md-comp-outlined-card.scss +59 -0
  42. package/core/tokens/m3/definitions/_md-comp-outlined-icon-button.scss +73 -0
  43. package/core/tokens/m3/definitions/_md-comp-outlined-text-field.scss +171 -0
  44. package/core/tokens/m3/definitions/_md-comp-plain-tooltip.scss +51 -0
  45. package/core/tokens/m3/definitions/_md-comp-radio-button.scss +62 -0
  46. package/core/tokens/m3/definitions/_md-comp-secondary-navigation-tab.scss +80 -0
  47. package/core/tokens/m3/definitions/_md-comp-slider.scss +110 -0
  48. package/core/tokens/m3/definitions/_md-comp-snackbar.scss +125 -0
  49. package/core/tokens/m3/definitions/_md-comp-switch.scss +130 -0
  50. package/core/tokens/m3/definitions/_md-comp-text-button.scss +73 -0
  51. package/core/tokens/m3/definitions/_md-ref-palette.scss +100 -0
  52. package/core/tokens/m3/definitions/_md-ref-typeface.scss +14 -0
  53. package/core/tokens/m3/definitions/_md-sys-color.scss +126 -0
  54. package/core/tokens/m3/definitions/_md-sys-elevation.scss +15 -0
  55. package/core/tokens/m3/definitions/_md-sys-motion.scss +46 -0
  56. package/core/tokens/m3/definitions/_md-sys-shape.scss +24 -0
  57. package/core/tokens/m3/definitions/_md-sys-state.scss +13 -0
  58. package/core/tokens/m3/definitions/_md-sys-typescale.scss +308 -0
  59. package/core/tokens/m3/definitions/unused/_md-comp-assist-chip.scss +105 -0
  60. package/core/tokens/m3/definitions/unused/_md-comp-badge.scss +54 -0
  61. package/core/tokens/m3/definitions/unused/_md-comp-banner.scss +71 -0
  62. package/core/tokens/m3/definitions/unused/_md-comp-bottom-app-bar.scss +29 -0
  63. package/core/tokens/m3/definitions/unused/_md-comp-carousel-item.scss +59 -0
  64. package/core/tokens/m3/definitions/unused/_md-comp-date-input-modal.scss +87 -0
  65. package/core/tokens/m3/definitions/unused/_md-comp-date-picker-docked.scss +248 -0
  66. package/core/tokens/m3/definitions/unused/_md-comp-date-picker-modal.scss +313 -0
  67. package/core/tokens/m3/definitions/unused/_md-comp-divider.scss +19 -0
  68. package/core/tokens/m3/definitions/unused/_md-comp-extended-fab-branded.scss +82 -0
  69. package/core/tokens/m3/definitions/unused/_md-comp-extended-fab-surface.scss +86 -0
  70. package/core/tokens/m3/definitions/unused/_md-comp-fab-branded-large.scss +54 -0
  71. package/core/tokens/m3/definitions/unused/_md-comp-fab-branded.scss +54 -0
  72. package/core/tokens/m3/definitions/unused/_md-comp-fab-primary-large.scss +59 -0
  73. package/core/tokens/m3/definitions/unused/_md-comp-fab-secondary-large.scss +60 -0
  74. package/core/tokens/m3/definitions/unused/_md-comp-fab-surface-large.scss +58 -0
  75. package/core/tokens/m3/definitions/unused/_md-comp-fab-surface-small.scss +58 -0
  76. package/core/tokens/m3/definitions/unused/_md-comp-fab-surface.scss +58 -0
  77. package/core/tokens/m3/definitions/unused/_md-comp-fab-tertiary-large.scss +60 -0
  78. package/core/tokens/m3/definitions/unused/_md-comp-filled-autocomplete.scss +269 -0
  79. package/core/tokens/m3/definitions/unused/_md-comp-filled-menu-button.scss +94 -0
  80. package/core/tokens/m3/definitions/unused/_md-comp-filled-select.scss +274 -0
  81. package/core/tokens/m3/definitions/unused/_md-comp-filled-tonal-button.scss +95 -0
  82. package/core/tokens/m3/definitions/unused/_md-comp-filled-tonal-icon-button.scss +80 -0
  83. package/core/tokens/m3/definitions/unused/_md-comp-filter-chip.scss +205 -0
  84. package/core/tokens/m3/definitions/unused/_md-comp-full-screen-dialog.scss +109 -0
  85. package/core/tokens/m3/definitions/unused/_md-comp-input-chip.scss +180 -0
  86. package/core/tokens/m3/definitions/unused/_md-comp-menu.scss +31 -0
  87. package/core/tokens/m3/definitions/unused/_md-comp-navigation-bar.scss +110 -0
  88. package/core/tokens/m3/definitions/unused/_md-comp-navigation-drawer.scss +162 -0
  89. package/core/tokens/m3/definitions/unused/_md-comp-navigation-rail.scss +127 -0
  90. package/core/tokens/m3/definitions/unused/_md-comp-outlined-autocomplete.scss +259 -0
  91. package/core/tokens/m3/definitions/unused/_md-comp-outlined-menu-button.scss +90 -0
  92. package/core/tokens/m3/definitions/unused/_md-comp-outlined-segmented-button.scss +108 -0
  93. package/core/tokens/m3/definitions/unused/_md-comp-outlined-select.scss +264 -0
  94. package/core/tokens/m3/definitions/unused/_md-comp-primary-navigation-tab.scss +117 -0
  95. package/core/tokens/m3/definitions/unused/_md-comp-rich-tooltip.scss +121 -0
  96. package/core/tokens/m3/definitions/unused/_md-comp-scrim.scss +19 -0
  97. package/core/tokens/m3/definitions/unused/_md-comp-search-bar.scss +97 -0
  98. package/core/tokens/m3/definitions/unused/_md-comp-search-view.scss +91 -0
  99. package/core/tokens/m3/definitions/unused/_md-comp-sheet-bottom.scss +39 -0
  100. package/core/tokens/m3/definitions/unused/_md-comp-sheet-floating.scss +28 -0
  101. package/core/tokens/m3/definitions/unused/_md-comp-sheet-side.scss +87 -0
  102. package/core/tokens/m3/definitions/unused/_md-comp-standard-menu-button.scss +94 -0
  103. package/core/tokens/m3/definitions/unused/_md-comp-suggestion-chip.scss +121 -0
  104. package/core/tokens/m3/definitions/unused/_md-comp-time-input.scss +222 -0
  105. package/core/tokens/m3/definitions/unused/_md-comp-time-picker.scss +268 -0
  106. package/core/tokens/m3/definitions/unused/_md-comp-top-app-bar-large.scss +59 -0
  107. package/core/tokens/m3/definitions/unused/_md-comp-top-app-bar-medium.scss +59 -0
  108. package/core/tokens/m3/definitions/unused/_md-comp-top-app-bar-small-centered.scss +62 -0
  109. package/core/tokens/m3/definitions/unused/_md-comp-top-app-bar-small.scss +60 -0
  110. package/esm2022/autocomplete/animations.mjs +1 -2
  111. package/esm2022/checkbox/checkbox-config.mjs +2 -1
  112. package/esm2022/checkbox/checkbox.mjs +11 -5
  113. package/esm2022/core/version.mjs +1 -1
  114. package/esm2022/dialog/dialog-container.mjs +1 -4
  115. package/esm2022/form-field/form-field.mjs +4 -1
  116. package/esm2022/input/input.mjs +36 -3
  117. package/esm2022/list/list-option.mjs +3 -3
  118. package/esm2022/list/testing/selection-list-harness.mjs +2 -2
  119. package/esm2022/tabs/testing/tab-harness.mjs +2 -2
  120. package/esm2022/tooltip/tooltip.mjs +4 -1
  121. package/fesm2022/autocomplete.mjs +0 -1
  122. package/fesm2022/autocomplete.mjs.map +1 -1
  123. package/fesm2022/checkbox.mjs +11 -4
  124. package/fesm2022/checkbox.mjs.map +1 -1
  125. package/fesm2022/core.mjs +1 -1
  126. package/fesm2022/core.mjs.map +1 -1
  127. package/fesm2022/dialog.mjs +0 -3
  128. package/fesm2022/dialog.mjs.map +1 -1
  129. package/fesm2022/form-field.mjs +3 -0
  130. package/fesm2022/form-field.mjs.map +1 -1
  131. package/fesm2022/input.mjs +35 -2
  132. package/fesm2022/input.mjs.map +1 -1
  133. package/fesm2022/list/testing.mjs +1 -1
  134. package/fesm2022/list/testing.mjs.map +1 -1
  135. package/fesm2022/list.mjs +2 -2
  136. package/fesm2022/list.mjs.map +1 -1
  137. package/fesm2022/tabs/testing.mjs +1 -1
  138. package/fesm2022/tabs/testing.mjs.map +1 -1
  139. package/fesm2022/tooltip.mjs +3 -0
  140. package/fesm2022/tooltip.mjs.map +1 -1
  141. package/form-field/_form-field-focus-overlay.scss +1 -1
  142. package/input/index.d.ts +13 -1
  143. package/list/testing/index.d.ts +1 -1
  144. package/package.json +3 -51
  145. package/prebuilt-themes/azure-blue.css +1 -1
  146. package/prebuilt-themes/cyan-orange.css +1 -1
  147. package/prebuilt-themes/magenta-violet.css +1 -1
  148. package/prebuilt-themes/rose-red.css +1 -1
  149. package/schematics/ng-add/index.js +1 -1
  150. package/schematics/ng-add/index.mjs +1 -1
  151. package/schematics/ng-generate/m3-theme/index_bundled.js +2 -2
  152. package/schematics/ng-update/index_bundled.js +31 -31
  153. package/tabs/testing/index.d.ts +1 -1
  154. package/tooltip/index.d.ts +5 -0
  155. package/core/mdc-helpers/_mdc-helpers.scss +0 -60
@@ -0,0 +1,105 @@
1
+ //
2
+ // Design system display name: Material 3
3
+ // Design system version: v0.161
4
+ //
5
+
6
+ @use 'sass:map';
7
+
8
+ @use './md-sys-color';
9
+
10
+ @use './md-sys-elevation';
11
+
12
+ @use './md-sys-shape';
13
+
14
+ @use './md-sys-state';
15
+
16
+ @use './md-sys-typescale';
17
+
18
+ $_default: (
19
+ 'md-sys-color': md-sys-color.values-light(),
20
+ 'md-sys-elevation': md-sys-elevation.values(),
21
+ 'md-sys-shape': md-sys-shape.values(),
22
+ 'md-sys-state': md-sys-state.values(),
23
+ 'md-sys-typescale': md-sys-typescale.values(),
24
+ );
25
+
26
+ @function values($deps: $_default, $exclude-hardcoded-values: false) {
27
+ @return (
28
+ 'container-height': if($exclude-hardcoded-values, null, 32px),
29
+ 'container-shape': map.get($deps, 'md-sys-shape', 'corner-small'),
30
+ 'container-surface-tint-layer-color':
31
+ map.get($deps, 'md-sys-color', 'surface-tint'),
32
+ 'disabled-label-text-color': map.get($deps, 'md-sys-color', 'on-surface'),
33
+ 'disabled-label-text-opacity': if($exclude-hardcoded-values, null, 0.38),
34
+ 'dragged-container-elevation': map.get($deps, 'md-sys-elevation', 'level4'),
35
+ 'dragged-label-text-color': map.get($deps, 'md-sys-color', 'on-surface'),
36
+ 'dragged-state-layer-color': map.get($deps, 'md-sys-color', 'on-surface'),
37
+ 'dragged-state-layer-opacity':
38
+ map.get($deps, 'md-sys-state', 'dragged-state-layer-opacity'),
39
+ 'elevated-container-color': map.get($deps, 'md-sys-color', 'surface'),
40
+ 'elevated-container-elevation': map.get($deps, 'md-sys-elevation', 'level1'),
41
+ 'elevated-container-shadow-color': map.get($deps, 'md-sys-color', 'shadow'),
42
+ 'elevated-disabled-container-color':
43
+ map.get($deps, 'md-sys-color', 'on-surface'),
44
+ 'elevated-disabled-container-elevation':
45
+ map.get($deps, 'md-sys-elevation', 'level0'),
46
+ 'elevated-disabled-container-opacity':
47
+ if($exclude-hardcoded-values, null, 0.12),
48
+ 'elevated-focus-container-elevation':
49
+ map.get($deps, 'md-sys-elevation', 'level1'),
50
+ 'elevated-hover-container-elevation':
51
+ map.get($deps, 'md-sys-elevation', 'level2'),
52
+ 'elevated-pressed-container-elevation':
53
+ map.get($deps, 'md-sys-elevation', 'level1'),
54
+ 'flat-container-elevation': map.get($deps, 'md-sys-elevation', 'level0'),
55
+ 'flat-disabled-outline-color': map.get($deps, 'md-sys-color', 'on-surface'),
56
+ 'flat-disabled-outline-opacity': if($exclude-hardcoded-values, null, 0.12),
57
+ 'flat-focus-outline-color': map.get($deps, 'md-sys-color', 'on-surface'),
58
+ 'flat-outline-color': map.get($deps, 'md-sys-color', 'outline'),
59
+ 'flat-outline-width': if($exclude-hardcoded-values, null, 1px),
60
+ 'focus-label-text-color': map.get($deps, 'md-sys-color', 'on-surface'),
61
+ 'focus-state-layer-color': map.get($deps, 'md-sys-color', 'on-surface'),
62
+ 'focus-state-layer-opacity':
63
+ map.get($deps, 'md-sys-state', 'focus-state-layer-opacity'),
64
+ 'hover-label-text-color': map.get($deps, 'md-sys-color', 'on-surface'),
65
+ 'hover-state-layer-color': map.get($deps, 'md-sys-color', 'on-surface'),
66
+ 'hover-state-layer-opacity':
67
+ map.get($deps, 'md-sys-state', 'hover-state-layer-opacity'),
68
+ 'label-text-color': map.get($deps, 'md-sys-color', 'on-surface'),
69
+ 'label-text-font': map.get($deps, 'md-sys-typescale', 'label-large-font'),
70
+ 'label-text-line-height':
71
+ map.get($deps, 'md-sys-typescale', 'label-large-line-height'),
72
+ 'label-text-size': map.get($deps, 'md-sys-typescale', 'label-large-size'),
73
+ 'label-text-tracking':
74
+ map.get($deps, 'md-sys-typescale', 'label-large-tracking'),
75
+ // Warning: risk of reduced fidelity from using this composite typography token.
76
+ // Tokens md.comp.assist-chip.label-text.tracking cannot be represented in the "font"
77
+ // property shorthand. Consider using the discrete properties instead.
78
+ 'label-text-type':
79
+ if(
80
+ $exclude-hardcoded-values,
81
+ null,
82
+ map.get($deps, 'md-sys-typescale', 'label-large-weight')
83
+ map.get($deps, 'md-sys-typescale', 'label-large-size') #{'/'} map.get(
84
+ $deps,
85
+ 'md-sys-typescale',
86
+ 'label-large-line-height'
87
+ ) map.get($deps, 'md-sys-typescale', 'label-large-font')
88
+ ),
89
+ 'label-text-weight':
90
+ map.get($deps, 'md-sys-typescale', 'label-large-weight'),
91
+ 'pressed-label-text-color': map.get($deps, 'md-sys-color', 'on-surface'),
92
+ 'pressed-state-layer-color': map.get($deps, 'md-sys-color', 'on-surface'),
93
+ 'pressed-state-layer-opacity':
94
+ map.get($deps, 'md-sys-state', 'pressed-state-layer-opacity'),
95
+ 'with-icon-disabled-icon-color':
96
+ map.get($deps, 'md-sys-color', 'on-surface'),
97
+ 'with-icon-disabled-icon-opacity': if($exclude-hardcoded-values, null, 0.38),
98
+ 'with-icon-dragged-icon-color': map.get($deps, 'md-sys-color', 'primary'),
99
+ 'with-icon-focus-icon-color': map.get($deps, 'md-sys-color', 'primary'),
100
+ 'with-icon-hover-icon-color': map.get($deps, 'md-sys-color', 'primary'),
101
+ 'with-icon-icon-color': map.get($deps, 'md-sys-color', 'primary'),
102
+ 'with-icon-icon-size': if($exclude-hardcoded-values, null, 18px),
103
+ 'with-icon-pressed-icon-color': map.get($deps, 'md-sys-color', 'primary')
104
+ );
105
+ }
@@ -0,0 +1,54 @@
1
+ //
2
+ // Design system display name: Material 3
3
+ // Design system version: v0.161
4
+ //
5
+
6
+ @use 'sass:map';
7
+
8
+ @use './md-sys-color';
9
+
10
+ @use './md-sys-shape';
11
+
12
+ @use './md-sys-typescale';
13
+
14
+ $_default: (
15
+ 'md-sys-color': md-sys-color.values-light(),
16
+ 'md-sys-shape': md-sys-shape.values(),
17
+ 'md-sys-typescale': md-sys-typescale.values(),
18
+ );
19
+
20
+ @function values($deps: $_default, $exclude-hardcoded-values: false) {
21
+ @return (
22
+ 'color': map.get($deps, 'md-sys-color', 'error'),
23
+ 'large-color': map.get($deps, 'md-sys-color', 'error'),
24
+ 'large-label-text-color': map.get($deps, 'md-sys-color', 'on-error'),
25
+ 'large-label-text-font':
26
+ map.get($deps, 'md-sys-typescale', 'label-small-font'),
27
+ 'large-label-text-line-height':
28
+ map.get($deps, 'md-sys-typescale', 'label-small-line-height'),
29
+ 'large-label-text-size':
30
+ map.get($deps, 'md-sys-typescale', 'label-small-size'),
31
+ 'large-label-text-tracking':
32
+ map.get($deps, 'md-sys-typescale', 'label-small-tracking'),
33
+ // Warning: risk of reduced fidelity from using this composite typography token.
34
+ // Tokens md.comp.badge.large.label-text.tracking cannot be represented in the "font"
35
+ // property shorthand. Consider using the discrete properties instead.
36
+ 'large-label-text-type':
37
+ if(
38
+ $exclude-hardcoded-values,
39
+ null,
40
+ map.get($deps, 'md-sys-typescale', 'label-small-weight')
41
+ map.get($deps, 'md-sys-typescale', 'label-small-size') #{'/'} map.get(
42
+ $deps,
43
+ 'md-sys-typescale',
44
+ 'label-small-line-height'
45
+ ) map.get($deps, 'md-sys-typescale', 'label-small-font')
46
+ ),
47
+ 'large-label-text-weight':
48
+ map.get($deps, 'md-sys-typescale', 'label-small-weight'),
49
+ 'large-shape': map.get($deps, 'md-sys-shape', 'corner-full'),
50
+ 'large-size': if($exclude-hardcoded-values, null, 16px),
51
+ 'shape': map.get($deps, 'md-sys-shape', 'corner-full'),
52
+ 'size': if($exclude-hardcoded-values, null, 6px)
53
+ );
54
+ }
@@ -0,0 +1,71 @@
1
+ //
2
+ // Design system display name: Material 3
3
+ // Design system version: v0.161
4
+ //
5
+
6
+ @use 'sass:map';
7
+
8
+ @use './md-sys-color';
9
+
10
+ @use './md-sys-elevation';
11
+
12
+ @use './md-sys-shape';
13
+
14
+ @use './md-sys-typescale';
15
+
16
+ $_default: (
17
+ 'md-sys-color': md-sys-color.values-light(),
18
+ 'md-sys-elevation': md-sys-elevation.values(),
19
+ 'md-sys-shape': md-sys-shape.values(),
20
+ 'md-sys-typescale': md-sys-typescale.values(),
21
+ );
22
+
23
+ @function values($deps: $_default, $exclude-hardcoded-values: false) {
24
+ @return (
25
+ 'container-color': map.get($deps, 'md-sys-color', 'surface'),
26
+ 'container-elevation': map.get($deps, 'md-sys-elevation', 'level1'),
27
+ 'container-shape': map.get($deps, 'md-sys-shape', 'corner-none'),
28
+ 'container-surface-tint-layer-color':
29
+ map.get($deps, 'md-sys-color', 'surface-tint'),
30
+ 'desktop-with-single-line-container-height':
31
+ if($exclude-hardcoded-values, null, 52px),
32
+ 'desktop-with-three-lines-container-height':
33
+ if($exclude-hardcoded-values, null, 90px),
34
+ 'desktop-with-two-lines-with-image-container-height':
35
+ if($exclude-hardcoded-values, null, 72px),
36
+ 'mobile-with-single-line-container-height':
37
+ if($exclude-hardcoded-values, null, 54px),
38
+ 'mobile-with-two-lines-container-height':
39
+ if($exclude-hardcoded-values, null, 112px),
40
+ 'mobile-with-two-lines-with-image-container-height':
41
+ if($exclude-hardcoded-values, null, 120px),
42
+ 'supporting-text-color':
43
+ map.get($deps, 'md-sys-color', 'on-surface-variant'),
44
+ 'supporting-text-font':
45
+ map.get($deps, 'md-sys-typescale', 'body-medium-font'),
46
+ 'supporting-text-line-height':
47
+ map.get($deps, 'md-sys-typescale', 'body-medium-line-height'),
48
+ 'supporting-text-size':
49
+ map.get($deps, 'md-sys-typescale', 'body-medium-size'),
50
+ 'supporting-text-tracking':
51
+ map.get($deps, 'md-sys-typescale', 'body-medium-tracking'),
52
+ // Warning: risk of reduced fidelity from using this composite typography token.
53
+ // Tokens md.comp.banner.supporting-text.tracking cannot be represented in the "font"
54
+ // property shorthand. Consider using the discrete properties instead.
55
+ 'supporting-text-type':
56
+ if(
57
+ $exclude-hardcoded-values,
58
+ null,
59
+ map.get($deps, 'md-sys-typescale', 'body-medium-weight')
60
+ map.get($deps, 'md-sys-typescale', 'body-medium-size') #{'/'} map.get(
61
+ $deps,
62
+ 'md-sys-typescale',
63
+ 'body-medium-line-height'
64
+ ) map.get($deps, 'md-sys-typescale', 'body-medium-font')
65
+ ),
66
+ 'supporting-text-weight':
67
+ map.get($deps, 'md-sys-typescale', 'body-medium-weight'),
68
+ 'with-image-image-shape': map.get($deps, 'md-sys-shape', 'corner-full'),
69
+ 'with-image-image-size': if($exclude-hardcoded-values, null, 40px)
70
+ );
71
+ }
@@ -0,0 +1,29 @@
1
+ //
2
+ // Design system display name: Material 3
3
+ // Design system version: v0.161
4
+ //
5
+
6
+ @use 'sass:map';
7
+
8
+ @use './md-sys-color';
9
+
10
+ @use './md-sys-elevation';
11
+
12
+ @use './md-sys-shape';
13
+
14
+ $_default: (
15
+ 'md-sys-color': md-sys-color.values-light(),
16
+ 'md-sys-elevation': md-sys-elevation.values(),
17
+ 'md-sys-shape': md-sys-shape.values(),
18
+ );
19
+
20
+ @function values($deps: $_default, $exclude-hardcoded-values: false) {
21
+ @return (
22
+ 'container-color': map.get($deps, 'md-sys-color', 'surface'),
23
+ 'container-elevation': map.get($deps, 'md-sys-elevation', 'level2'),
24
+ 'container-height': if($exclude-hardcoded-values, null, 80px),
25
+ 'container-shape': map.get($deps, 'md-sys-shape', 'corner-none'),
26
+ 'container-surface-tint-layer-color':
27
+ map.get($deps, 'md-sys-color', 'surface-tint')
28
+ );
29
+ }
@@ -0,0 +1,59 @@
1
+ //
2
+ // Design system display name: Material 3
3
+ // Design system version: v0.161
4
+ //
5
+
6
+ @use 'sass:map';
7
+
8
+ @use './md-sys-color';
9
+
10
+ @use './md-sys-elevation';
11
+
12
+ @use './md-sys-shape';
13
+
14
+ @use './md-sys-state';
15
+
16
+ $_default: (
17
+ 'md-sys-color': md-sys-color.values-light(),
18
+ 'md-sys-elevation': md-sys-elevation.values(),
19
+ 'md-sys-shape': md-sys-shape.values(),
20
+ 'md-sys-state': md-sys-state.values(),
21
+ );
22
+
23
+ @function values($deps: $_default, $exclude-hardcoded-values: false) {
24
+ @return (
25
+ 'container-color': map.get($deps, 'md-sys-color', 'surface'),
26
+ 'container-elevation': map.get($deps, 'md-sys-elevation', 'level0'),
27
+ 'container-shadow-color': map.get($deps, 'md-sys-color', 'shadow'),
28
+ 'container-shape': map.get($deps, 'md-sys-shape', 'corner-extra-large'),
29
+ 'container-surface-tint-layer-color':
30
+ map.get($deps, 'md-sys-color', 'surface-tint'),
31
+ 'disabled-container-color': map.get($deps, 'md-sys-color', 'surface'),
32
+ 'disabled-container-elevation': map.get($deps, 'md-sys-elevation', 'level0'),
33
+ 'disabled-container-opacity': if($exclude-hardcoded-values, null, 0.38),
34
+ 'focus-container-elevation': map.get($deps, 'md-sys-elevation', 'level0'),
35
+ 'focus-state-layer-color': map.get($deps, 'md-sys-color', 'on-surface'),
36
+ 'focus-state-layer-opacity':
37
+ map.get($deps, 'md-sys-state', 'focus-state-layer-opacity'),
38
+ 'hover-container-elevation': map.get($deps, 'md-sys-elevation', 'level1'),
39
+ 'hover-state-layer-color': map.get($deps, 'md-sys-color', 'on-surface'),
40
+ 'hover-state-layer-opacity':
41
+ map.get($deps, 'md-sys-state', 'hover-state-layer-opacity'),
42
+ 'pressed-container-elevation': map.get($deps, 'md-sys-elevation', 'level0'),
43
+ 'pressed-state-layer-color': map.get($deps, 'md-sys-color', 'on-surface'),
44
+ 'pressed-state-layer-opacity':
45
+ map.get($deps, 'md-sys-state', 'pressed-state-layer-opacity'),
46
+ 'with-outline-disabled-outline-color':
47
+ map.get($deps, 'md-sys-color', 'outline'),
48
+ 'with-outline-disabled-outline-opacity':
49
+ if($exclude-hardcoded-values, null, 0.12),
50
+ 'with-outline-focus-outline-color':
51
+ map.get($deps, 'md-sys-color', 'on-surface'),
52
+ 'with-outline-hover-outline-color':
53
+ map.get($deps, 'md-sys-color', 'outline'),
54
+ 'with-outline-outline-color': map.get($deps, 'md-sys-color', 'outline'),
55
+ 'with-outline-outline-width': if($exclude-hardcoded-values, null, 1),
56
+ 'with-outline-pressed-outline-color':
57
+ map.get($deps, 'md-sys-color', 'outline')
58
+ );
59
+ }
@@ -0,0 +1,87 @@
1
+ //
2
+ // Design system display name: Material 3
3
+ // Design system version: v0.161
4
+ //
5
+
6
+ @use 'sass:map';
7
+
8
+ @use './md-sys-color';
9
+
10
+ @use './md-sys-elevation';
11
+
12
+ @use './md-sys-shape';
13
+
14
+ @use './md-sys-typescale';
15
+
16
+ $_default: (
17
+ 'md-sys-color': md-sys-color.values-light(),
18
+ 'md-sys-elevation': md-sys-elevation.values(),
19
+ 'md-sys-shape': md-sys-shape.values(),
20
+ 'md-sys-typescale': md-sys-typescale.values(),
21
+ );
22
+
23
+ @function values($deps: $_default, $exclude-hardcoded-values: false) {
24
+ @return (
25
+ 'container-color': map.get($deps, 'md-sys-color', 'surface'),
26
+ 'container-elevation': map.get($deps, 'md-sys-elevation', 'level3'),
27
+ 'container-height': if($exclude-hardcoded-values, null, 512px),
28
+ 'container-shape': map.get($deps, 'md-sys-shape', 'corner-extra-large'),
29
+ 'container-surface-tint-layer-color':
30
+ map.get($deps, 'md-sys-color', 'surface-tint'),
31
+ 'container-width': if($exclude-hardcoded-values, null, 328px),
32
+ 'header-container-height': if($exclude-hardcoded-values, null, 120px),
33
+ 'header-container-width': if($exclude-hardcoded-values, null, 328px),
34
+ 'header-headline-color':
35
+ map.get($deps, 'md-sys-color', 'on-surface-variant'),
36
+ 'header-headline-font':
37
+ map.get($deps, 'md-sys-typescale', 'headline-large-font'),
38
+ 'header-headline-line-height':
39
+ map.get($deps, 'md-sys-typescale', 'headline-large-line-height'),
40
+ 'header-headline-size':
41
+ map.get($deps, 'md-sys-typescale', 'headline-large-size'),
42
+ 'header-headline-tracking':
43
+ map.get($deps, 'md-sys-typescale', 'headline-large-tracking'),
44
+ // Warning: risk of reduced fidelity from using this composite typography token.
45
+ // Tokens md.comp.date-input.modal.header.headline.tracking cannot be represented
46
+ // in the "font" property shorthand. Consider using the discrete properties instead.
47
+ 'header-headline-type':
48
+ if(
49
+ $exclude-hardcoded-values,
50
+ null,
51
+ map.get($deps, 'md-sys-typescale', 'headline-large-weight')
52
+ map.get($deps, 'md-sys-typescale', 'headline-large-size') #{'/'} map.get(
53
+ $deps,
54
+ 'md-sys-typescale',
55
+ 'headline-large-line-height'
56
+ ) map.get($deps, 'md-sys-typescale', 'headline-large-font')
57
+ ),
58
+ 'header-headline-weight':
59
+ map.get($deps, 'md-sys-typescale', 'headline-large-weight'),
60
+ 'header-supporting-text-color':
61
+ map.get($deps, 'md-sys-color', 'on-surface-variant'),
62
+ 'header-supporting-text-font':
63
+ map.get($deps, 'md-sys-typescale', 'label-large-font'),
64
+ 'header-supporting-text-line-height':
65
+ map.get($deps, 'md-sys-typescale', 'label-large-line-height'),
66
+ 'header-supporting-text-size':
67
+ map.get($deps, 'md-sys-typescale', 'label-large-size'),
68
+ 'header-supporting-text-tracking':
69
+ map.get($deps, 'md-sys-typescale', 'label-large-tracking'),
70
+ // Warning: risk of reduced fidelity from using this composite typography token.
71
+ // Tokens md.comp.date-input.modal.header.supporting-text.tracking cannot be represented
72
+ // in the "font" property shorthand. Consider using the discrete properties instead.
73
+ 'header-supporting-text-type':
74
+ if(
75
+ $exclude-hardcoded-values,
76
+ null,
77
+ map.get($deps, 'md-sys-typescale', 'label-large-weight')
78
+ map.get($deps, 'md-sys-typescale', 'label-large-size') #{'/'} map.get(
79
+ $deps,
80
+ 'md-sys-typescale',
81
+ 'label-large-line-height'
82
+ ) map.get($deps, 'md-sys-typescale', 'label-large-font')
83
+ ),
84
+ 'header-supporting-text-weight':
85
+ map.get($deps, 'md-sys-typescale', 'label-large-weight')
86
+ );
87
+ }
@@ -0,0 +1,248 @@
1
+ //
2
+ // Design system display name: Material 3
3
+ // Design system version: v0.161
4
+ //
5
+
6
+ @use 'sass:map';
7
+
8
+ @use './md-sys-color';
9
+
10
+ @use './md-sys-elevation';
11
+
12
+ @use './md-sys-shape';
13
+
14
+ @use './md-sys-state';
15
+
16
+ @use './md-sys-typescale';
17
+
18
+ $_default: (
19
+ 'md-sys-color': md-sys-color.values-light(),
20
+ 'md-sys-elevation': md-sys-elevation.values(),
21
+ 'md-sys-shape': md-sys-shape.values(),
22
+ 'md-sys-state': md-sys-state.values(),
23
+ 'md-sys-typescale': md-sys-typescale.values(),
24
+ );
25
+
26
+ @function values($deps: $_default, $exclude-hardcoded-values: false) {
27
+ @return (
28
+ 'container-color': map.get($deps, 'md-sys-color', 'surface'),
29
+ 'container-elevation': map.get($deps, 'md-sys-elevation', 'level3'),
30
+ 'container-height': if($exclude-hardcoded-values, null, 456px),
31
+ 'container-shape': map.get($deps, 'md-sys-shape', 'corner-large'),
32
+ 'container-surface-tint-layer-color':
33
+ map.get($deps, 'md-sys-color', 'surface-tint'),
34
+ 'container-width': if($exclude-hardcoded-values, null, 360px),
35
+ 'date-container-height': if($exclude-hardcoded-values, null, 48px),
36
+ 'date-container-shape': map.get($deps, 'md-sys-shape', 'corner-full'),
37
+ 'date-container-width': if($exclude-hardcoded-values, null, 48px),
38
+ 'date-focus-state-layer-opacity':
39
+ map.get($deps, 'md-sys-state', 'focus-state-layer-opacity'),
40
+ 'date-hover-state-layer-opacity':
41
+ map.get($deps, 'md-sys-state', 'hover-state-layer-opacity'),
42
+ 'date-label-text-font':
43
+ map.get($deps, 'md-sys-typescale', 'body-large-font'),
44
+ 'date-label-text-line-height':
45
+ map.get($deps, 'md-sys-typescale', 'body-large-line-height'),
46
+ 'date-label-text-size':
47
+ map.get($deps, 'md-sys-typescale', 'body-large-size'),
48
+ 'date-label-text-tracking':
49
+ map.get($deps, 'md-sys-typescale', 'body-large-tracking'),
50
+ // Warning: risk of reduced fidelity from using this composite typography token.
51
+ // Tokens md.comp.date-picker.docked.date.label-text.tracking cannot be represented
52
+ // in the "font" property shorthand. Consider using the discrete properties instead.
53
+ 'date-label-text-type':
54
+ if(
55
+ $exclude-hardcoded-values,
56
+ null,
57
+ map.get($deps, 'md-sys-typescale', 'body-large-weight')
58
+ map.get($deps, 'md-sys-typescale', 'body-large-size') #{'/'} map.get(
59
+ $deps,
60
+ 'md-sys-typescale',
61
+ 'body-large-line-height'
62
+ ) map.get($deps, 'md-sys-typescale', 'body-large-font')
63
+ ),
64
+ 'date-label-text-weight':
65
+ map.get($deps, 'md-sys-typescale', 'body-large-weight'),
66
+ 'date-pressed-state-layer-opacity':
67
+ map.get($deps, 'md-sys-state', 'pressed-state-layer-opacity'),
68
+ 'date-selected-container-color': map.get($deps, 'md-sys-color', 'primary'),
69
+ 'date-selected-focus-state-layer-color':
70
+ map.get($deps, 'md-sys-color', 'on-primary'),
71
+ 'date-selected-hover-state-layer-color':
72
+ map.get($deps, 'md-sys-color', 'on-primary'),
73
+ 'date-selected-label-text-color':
74
+ map.get($deps, 'md-sys-color', 'on-primary'),
75
+ 'date-selected-pressed-state-layer-color':
76
+ map.get($deps, 'md-sys-color', 'on-primary'),
77
+ 'date-state-layer-height': if($exclude-hardcoded-values, null, 40px),
78
+ 'date-state-layer-shape': map.get($deps, 'md-sys-shape', 'corner-full'),
79
+ 'date-state-layer-width': if($exclude-hardcoded-values, null, 40px),
80
+ 'date-today-container-outline-color':
81
+ map.get($deps, 'md-sys-color', 'primary'),
82
+ 'date-today-container-outline-width':
83
+ if($exclude-hardcoded-values, null, 1px),
84
+ 'date-today-focus-state-layer-color':
85
+ map.get($deps, 'md-sys-color', 'primary'),
86
+ 'date-today-hover-state-layer-color':
87
+ map.get($deps, 'md-sys-color', 'primary'),
88
+ 'date-today-label-text-color': map.get($deps, 'md-sys-color', 'primary'),
89
+ 'date-today-pressed-state-layer-color':
90
+ map.get($deps, 'md-sys-color', 'primary'),
91
+ 'date-unselected-focus-state-layer-color':
92
+ map.get($deps, 'md-sys-color', 'on-surface-variant'),
93
+ 'date-unselected-hover-state-layer-color':
94
+ map.get($deps, 'md-sys-color', 'on-surface-variant'),
95
+ 'date-unselected-label-text-color':
96
+ map.get($deps, 'md-sys-color', 'on-surface'),
97
+ 'date-unselected-outside-month-label-text-color':
98
+ map.get($deps, 'md-sys-color', 'on-surface-variant'),
99
+ 'date-unselected-pressed-state-layer-color':
100
+ map.get($deps, 'md-sys-color', 'on-surface-variant'),
101
+ 'header-height': if($exclude-hardcoded-values, null, 64px),
102
+ 'menu-button-container-height': if($exclude-hardcoded-values, null, 40px),
103
+ 'menu-button-container-shape': map.get($deps, 'md-sys-shape', 'corner-full'),
104
+ 'menu-button-disabled-icon-color':
105
+ map.get($deps, 'md-sys-color', 'on-surface'),
106
+ 'menu-button-disabled-icon-opacity':
107
+ if($exclude-hardcoded-values, null, 0.38),
108
+ 'menu-button-disabled-label-text-color':
109
+ map.get($deps, 'md-sys-color', 'on-surface'),
110
+ 'menu-button-disabled-label-text-opacity':
111
+ if($exclude-hardcoded-values, null, 0.38),
112
+ 'menu-button-focus-icon-color':
113
+ map.get($deps, 'md-sys-color', 'on-surface-variant'),
114
+ 'menu-button-focus-label-text-color':
115
+ map.get($deps, 'md-sys-color', 'on-surface-variant'),
116
+ 'menu-button-focus-state-layer-color':
117
+ map.get($deps, 'md-sys-color', 'on-surface-variant'),
118
+ 'menu-button-focus-state-layer-opacity':
119
+ map.get($deps, 'md-sys-state', 'focus-state-layer-opacity'),
120
+ 'menu-button-hover-icon-color':
121
+ map.get($deps, 'md-sys-color', 'on-surface-variant'),
122
+ 'menu-button-hover-label-text-color':
123
+ map.get($deps, 'md-sys-color', 'on-surface-variant'),
124
+ 'menu-button-hover-state-layer-color':
125
+ map.get($deps, 'md-sys-color', 'on-surface-variant'),
126
+ 'menu-button-hover-state-layer-opacity':
127
+ map.get($deps, 'md-sys-state', 'hover-state-layer-opacity'),
128
+ 'menu-button-icon-color':
129
+ map.get($deps, 'md-sys-color', 'on-surface-variant'),
130
+ 'menu-button-icon-size': if($exclude-hardcoded-values, null, 18px),
131
+ 'menu-button-label-text-color':
132
+ map.get($deps, 'md-sys-color', 'on-surface-variant'),
133
+ 'menu-button-label-text-font':
134
+ map.get($deps, 'md-sys-typescale', 'label-large-font'),
135
+ 'menu-button-label-text-line-height':
136
+ map.get($deps, 'md-sys-typescale', 'label-large-line-height'),
137
+ 'menu-button-label-text-size':
138
+ map.get($deps, 'md-sys-typescale', 'label-large-size'),
139
+ 'menu-button-label-text-tracking':
140
+ map.get($deps, 'md-sys-typescale', 'label-large-tracking'),
141
+ // Warning: risk of reduced fidelity from using this composite typography token.
142
+ // Tokens md.comp.date-picker.docked.menu-button.label-text.tracking cannot be represented
143
+ // in the "font" property shorthand. Consider using the discrete properties instead.
144
+ 'menu-button-label-text-type':
145
+ if(
146
+ $exclude-hardcoded-values,
147
+ null,
148
+ map.get($deps, 'md-sys-typescale', 'label-large-weight')
149
+ map.get($deps, 'md-sys-typescale', 'label-large-size') #{'/'} map.get(
150
+ $deps,
151
+ 'md-sys-typescale',
152
+ 'label-large-line-height'
153
+ ) map.get($deps, 'md-sys-typescale', 'label-large-font')
154
+ ),
155
+ 'menu-button-label-text-weight':
156
+ map.get($deps, 'md-sys-typescale', 'label-large-weight'),
157
+ 'menu-button-pressed-icon-color':
158
+ map.get($deps, 'md-sys-color', 'on-surface-variant'),
159
+ 'menu-button-pressed-label-text-color':
160
+ map.get($deps, 'md-sys-color', 'on-surface-variant'),
161
+ 'menu-button-pressed-state-layer-color':
162
+ map.get($deps, 'md-sys-color', 'on-surface-variant'),
163
+ 'menu-button-pressed-state-layer-opacity':
164
+ map.get($deps, 'md-sys-state', 'pressed-state-layer-opacity'),
165
+ 'menu-list-item-container-height': if($exclude-hardcoded-values, null, 48px),
166
+ 'menu-list-item-focus-label-text-color':
167
+ map.get($deps, 'md-sys-color', 'on-surface'),
168
+ 'menu-list-item-focus-state-layer-color':
169
+ map.get($deps, 'md-sys-color', 'on-surface'),
170
+ 'menu-list-item-focus-state-layer-opacity':
171
+ map.get($deps, 'md-sys-state', 'focus-state-layer-opacity'),
172
+ 'menu-list-item-hover-label-text-color':
173
+ map.get($deps, 'md-sys-color', 'on-surface'),
174
+ 'menu-list-item-hover-state-layer-color':
175
+ map.get($deps, 'md-sys-color', 'on-surface'),
176
+ 'menu-list-item-hover-state-layer-opacity':
177
+ map.get($deps, 'md-sys-state', 'hover-state-layer-opacity'),
178
+ 'menu-list-item-label-text-color':
179
+ map.get($deps, 'md-sys-color', 'on-surface'),
180
+ 'menu-list-item-label-text-font':
181
+ map.get($deps, 'md-sys-typescale', 'body-large-font'),
182
+ 'menu-list-item-label-text-line-height':
183
+ map.get($deps, 'md-sys-typescale', 'body-large-line-height'),
184
+ 'menu-list-item-label-text-size':
185
+ map.get($deps, 'md-sys-typescale', 'body-large-size'),
186
+ 'menu-list-item-label-text-tracking':
187
+ map.get($deps, 'md-sys-typescale', 'body-large-tracking'),
188
+ // Warning: risk of reduced fidelity from using this composite typography token.
189
+ // Tokens md.comp.date-picker.docked.menu.list-item.label-text.tracking cannot be
190
+ // represented in the "font" property shorthand. Consider using the discrete properties instead.
191
+ 'menu-list-item-label-text-type':
192
+ if(
193
+ $exclude-hardcoded-values,
194
+ null,
195
+ map.get($deps, 'md-sys-typescale', 'body-large-weight')
196
+ map.get($deps, 'md-sys-typescale', 'body-large-size') #{'/'} map.get(
197
+ $deps,
198
+ 'md-sys-typescale',
199
+ 'body-large-line-height'
200
+ ) map.get($deps, 'md-sys-typescale', 'body-large-font')
201
+ ),
202
+ 'menu-list-item-label-text-weight':
203
+ map.get($deps, 'md-sys-typescale', 'body-large-weight'),
204
+ 'menu-list-item-pressed-label-text-color':
205
+ map.get($deps, 'md-sys-color', 'on-surface'),
206
+ 'menu-list-item-pressed-state-layer-color':
207
+ map.get($deps, 'md-sys-color', 'on-surface'),
208
+ 'menu-list-item-pressed-state-layer-opacity':
209
+ map.get($deps, 'md-sys-state', 'pressed-state-layer-opacity'),
210
+ 'menu-list-item-selected-container-color':
211
+ map.get($deps, 'md-sys-color', 'surface-variant'),
212
+ 'menu-list-item-selected-focus-leading-icon-color':
213
+ map.get($deps, 'md-sys-color', 'on-surface-variant'),
214
+ 'menu-list-item-selected-hover-leading-icon-color':
215
+ map.get($deps, 'md-sys-color', 'on-surface-variant'),
216
+ 'menu-list-item-selected-leading-icon-color':
217
+ map.get($deps, 'md-sys-color', 'on-surface'),
218
+ 'menu-list-item-selected-leading-icon-size':
219
+ if($exclude-hardcoded-values, null, 24px),
220
+ 'menu-list-item-selected-pressed-leading-icon-color':
221
+ map.get($deps, 'md-sys-color', 'on-surface-variant'),
222
+ 'weekdays-label-text-color': map.get($deps, 'md-sys-color', 'on-surface'),
223
+ 'weekdays-label-text-font':
224
+ map.get($deps, 'md-sys-typescale', 'body-large-font'),
225
+ 'weekdays-label-text-line-height':
226
+ map.get($deps, 'md-sys-typescale', 'body-large-line-height'),
227
+ 'weekdays-label-text-size':
228
+ map.get($deps, 'md-sys-typescale', 'body-large-size'),
229
+ 'weekdays-label-text-tracking':
230
+ map.get($deps, 'md-sys-typescale', 'body-large-tracking'),
231
+ // Warning: risk of reduced fidelity from using this composite typography token.
232
+ // Tokens md.comp.date-picker.docked.weekdays.label-text.tracking cannot be represented
233
+ // in the "font" property shorthand. Consider using the discrete properties instead.
234
+ 'weekdays-label-text-type':
235
+ if(
236
+ $exclude-hardcoded-values,
237
+ null,
238
+ map.get($deps, 'md-sys-typescale', 'body-large-weight')
239
+ map.get($deps, 'md-sys-typescale', 'body-large-size') #{'/'} map.get(
240
+ $deps,
241
+ 'md-sys-typescale',
242
+ 'body-large-line-height'
243
+ ) map.get($deps, 'md-sys-typescale', 'body-large-font')
244
+ ),
245
+ 'weekdays-label-text-weight':
246
+ map.get($deps, 'md-sys-typescale', 'body-large-weight')
247
+ );
248
+ }