@cloudscape-design/components-themeable 3.0.211 → 3.0.213

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 (89) hide show
  1. package/lib/internal/manifest.json +1 -1
  2. package/lib/internal/scss/app-layout/notifications/styles.scss +9 -1
  3. package/lib/internal/scss/app-layout/styles.scss +1 -2
  4. package/lib/internal/scss/app-layout/visual-refresh/navigation.scss +5 -5
  5. package/lib/internal/scss/app-layout/visual-refresh/notifications.scss +7 -7
  6. package/lib/internal/scss/app-layout/visual-refresh/split-panel.scss +15 -15
  7. package/lib/internal/scss/app-layout/visual-refresh/tools.scss +11 -11
  8. package/lib/internal/scss/collection-preferences/styles.scss +1 -0
  9. package/lib/internal/scss/flashbar/collapsible.scss +122 -42
  10. package/lib/internal/scss/internal/generated/custom-css-properties/index.scss +29 -28
  11. package/lib/internal/scss/split-panel/styles.scss +2 -2
  12. package/lib/internal/template/annotation-context/annotation/styles.css.js +24 -24
  13. package/lib/internal/template/annotation-context/annotation/styles.scoped.css +30 -30
  14. package/lib/internal/template/annotation-context/annotation/styles.selectors.js +24 -24
  15. package/lib/internal/template/app-layout/index.d.ts.map +1 -1
  16. package/lib/internal/template/app-layout/index.js +1 -1
  17. package/lib/internal/template/app-layout/index.js.map +1 -1
  18. package/lib/internal/template/app-layout/notifications/index.d.ts +1 -0
  19. package/lib/internal/template/app-layout/notifications/index.d.ts.map +1 -1
  20. package/lib/internal/template/app-layout/notifications/index.js +2 -2
  21. package/lib/internal/template/app-layout/notifications/index.js.map +1 -1
  22. package/lib/internal/template/app-layout/notifications/styles.css.js +3 -2
  23. package/lib/internal/template/app-layout/notifications/styles.scoped.css +14 -6
  24. package/lib/internal/template/app-layout/notifications/styles.selectors.js +3 -2
  25. package/lib/internal/template/app-layout/styles.css.js +26 -26
  26. package/lib/internal/template/app-layout/styles.scoped.css +35 -35
  27. package/lib/internal/template/app-layout/styles.selectors.js +26 -26
  28. package/lib/internal/template/app-layout/visual-refresh/notifications.d.ts.map +1 -1
  29. package/lib/internal/template/app-layout/visual-refresh/notifications.js +6 -1
  30. package/lib/internal/template/app-layout/visual-refresh/notifications.js.map +1 -1
  31. package/lib/internal/template/app-layout/visual-refresh/styles.css.js +60 -60
  32. package/lib/internal/template/app-layout/visual-refresh/styles.scoped.css +260 -260
  33. package/lib/internal/template/app-layout/visual-refresh/styles.selectors.js +60 -60
  34. package/lib/internal/template/collection-preferences/index.d.ts +1 -1
  35. package/lib/internal/template/collection-preferences/index.d.ts.map +1 -1
  36. package/lib/internal/template/collection-preferences/index.js +6 -4
  37. package/lib/internal/template/collection-preferences/index.js.map +1 -1
  38. package/lib/internal/template/collection-preferences/interfaces.d.ts +17 -0
  39. package/lib/internal/template/collection-preferences/interfaces.d.ts.map +1 -1
  40. package/lib/internal/template/collection-preferences/interfaces.js.map +1 -1
  41. package/lib/internal/template/collection-preferences/styles.css.js +21 -20
  42. package/lib/internal/template/collection-preferences/styles.scoped.css +22 -21
  43. package/lib/internal/template/collection-preferences/styles.selectors.js +21 -20
  44. package/lib/internal/template/collection-preferences/utils.d.ts +6 -1
  45. package/lib/internal/template/collection-preferences/utils.d.ts.map +1 -1
  46. package/lib/internal/template/collection-preferences/utils.js +10 -1
  47. package/lib/internal/template/collection-preferences/utils.js.map +1 -1
  48. package/lib/internal/template/flashbar/collapsible-flashbar.d.ts.map +1 -1
  49. package/lib/internal/template/flashbar/collapsible-flashbar.js +4 -4
  50. package/lib/internal/template/flashbar/collapsible-flashbar.js.map +1 -1
  51. package/lib/internal/template/flashbar/styles.css.js +45 -43
  52. package/lib/internal/template/flashbar/styles.scoped.css +289 -176
  53. package/lib/internal/template/flashbar/styles.selectors.js +45 -43
  54. package/lib/internal/template/internal/base-component/styles.scoped.css +66 -0
  55. package/lib/internal/template/internal/components/dropdown/index.d.ts.map +1 -1
  56. package/lib/internal/template/internal/components/dropdown/index.js +2 -1
  57. package/lib/internal/template/internal/components/dropdown/index.js.map +1 -1
  58. package/lib/internal/template/internal/environment.js +1 -1
  59. package/lib/internal/template/internal/generated/custom-css-properties/index.d.ts.map +1 -1
  60. package/lib/internal/template/internal/generated/custom-css-properties/index.js +29 -28
  61. package/lib/internal/template/internal/generated/custom-css-properties/index.js.map +1 -1
  62. package/lib/internal/template/internal/generated/theming/index.cjs +358 -0
  63. package/lib/internal/template/internal/generated/theming/index.cjs.d.ts +165 -0
  64. package/lib/internal/template/internal/generated/theming/index.d.ts +165 -0
  65. package/lib/internal/template/internal/generated/theming/index.js +358 -0
  66. package/lib/internal/template/split-panel/styles.css.js +59 -59
  67. package/lib/internal/template/split-panel/styles.scoped.css +83 -83
  68. package/lib/internal/template/split-panel/styles.selectors.js +59 -59
  69. package/lib/internal/template/table/index.d.ts.map +1 -1
  70. package/lib/internal/template/table/index.js +2 -2
  71. package/lib/internal/template/table/index.js.map +1 -1
  72. package/lib/internal/template/table/interfaces.d.ts +4 -0
  73. package/lib/internal/template/table/interfaces.d.ts.map +1 -1
  74. package/lib/internal/template/table/interfaces.js.map +1 -1
  75. package/lib/internal/template/table/internal.d.ts.map +1 -1
  76. package/lib/internal/template/table/internal.js +4 -3
  77. package/lib/internal/template/table/internal.js.map +1 -1
  78. package/lib/internal/template/table/sticky-header.d.ts +1 -0
  79. package/lib/internal/template/table/sticky-header.d.ts.map +1 -1
  80. package/lib/internal/template/table/sticky-header.js +3 -2
  81. package/lib/internal/template/table/sticky-header.js.map +1 -1
  82. package/lib/internal/template/test-utils/dom/collection-preferences/index.d.ts +1 -0
  83. package/lib/internal/template/test-utils/dom/collection-preferences/index.js +3 -0
  84. package/lib/internal/template/test-utils/dom/collection-preferences/index.js.map +1 -1
  85. package/lib/internal/template/test-utils/selectors/collection-preferences/index.d.ts +1 -0
  86. package/lib/internal/template/test-utils/selectors/collection-preferences/index.js +3 -0
  87. package/lib/internal/template/test-utils/selectors/collection-preferences/index.js.map +1 -1
  88. package/lib/internal/template/test-utils/tsconfig.tsbuildinfo +1 -1
  89. package/package.json +1 -1
@@ -1,3 +1,3 @@
1
1
  {
2
- "commit": "fc49ae884ccfbb8632240c6b82cbd323ce29fddf"
2
+ "commit": "d5de5982718ba1b1d1c7ec3b00ae205a732ab0c7"
3
3
  }
@@ -8,7 +8,7 @@
8
8
 
9
9
  .notifications,
10
10
  .notifications-sticky {
11
- z-index: 825;
11
+ z-index: 850;
12
12
  }
13
13
 
14
14
  .notifications {
@@ -21,3 +21,11 @@
21
21
  position: sticky;
22
22
  #{custom-props.$flashbarStickyBottomMargin}: #{awsui.$space-xxl};
23
23
  }
24
+
25
+ .no-content-paddings {
26
+ /*
27
+ When using the disableContentPaddings option, the Flashbar will use this custom property to add additional space
28
+ when the notification bar is rendered, to prevent it from overlapping the content.
29
+ */
30
+ #{custom-props.$stackedNotificationsBottomMargin}: #{awsui.$space-scaled-l};
31
+ }
@@ -7,8 +7,7 @@
7
7
  @use '../internal/styles/tokens' as awsui;
8
8
  @use './constants' as constants;
9
9
 
10
- // should be above sticky notifications
11
- $drawer-z-index: 850;
10
+ $drawer-z-index: 830;
12
11
  // should be above mobile toolbar
13
12
  $drawer-z-index-mobile: 1001;
14
13
 
@@ -15,13 +15,13 @@
15
15
  height: var(#{custom-props.$contentHeight});
16
16
  position: sticky;
17
17
  top: var(#{custom-props.$offsetTop});
18
- z-index: 850;
18
+ z-index: 830;
19
19
 
20
20
  /*
21
21
  The navigation and tools containers (that contain the toggle buttons)
22
22
  stretch the full height of the app layout. Normally, this wouldn't be an
23
23
  issue because they sit above the app layout's content padding.
24
-
24
+
25
25
  But if disableContentPaddings is set to true and there are buttons on the
26
26
  left/right edges of the screen, they will be covered by the containers. So
27
27
  we need to disable pointer events in the container and re-enable them in
@@ -60,7 +60,7 @@ nav.show-navigation {
60
60
  }
61
61
 
62
62
  /*
63
- Apply the animation only in desktop viewports because the AppBar will
63
+ Apply the animation only in desktop viewports because the AppBar will
64
64
  take control in responsive viewports.
65
65
  */
66
66
  @include styles.media-breakpoint-up(styles.$breakpoint-x-small) {
@@ -117,8 +117,8 @@ nav.navigation {
117
117
  }
118
118
 
119
119
  /*
120
- A non-semantic node is added with a fixed width equal to the final Navigation
121
- width. This will create the visual appearance of horizontal movement and
120
+ A non-semantic node is added with a fixed width equal to the final Navigation
121
+ width. This will create the visual appearance of horizontal movement and
122
122
  prevent unwanted text wrapping.
123
123
  */
124
124
  > .animated-content {
@@ -10,11 +10,11 @@
10
10
  .notifications {
11
11
  grid-column: 3;
12
12
  grid-row: 1;
13
- z-index: 825;
13
+ z-index: 850;
14
14
 
15
15
  /*
16
- In desktop viewports the notifications will always be the first
17
- slot rendered in the center column. The padding should create
16
+ In desktop viewports the notifications will always be the first
17
+ slot rendered in the center column. The padding should create
18
18
  a centered vertical alignment with the circular buttons for the
19
19
  navigation and tools drawers.
20
20
  */
@@ -22,8 +22,8 @@
22
22
  margin: awsui.$space-xs 0;
23
23
 
24
24
  /*
25
- #{awsui.$space-xs} token needs to align with the $offsetTopWithNotifications
26
- calculation in the layout CSS.
25
+ #{awsui.$space-xs} token needs to align with the $offsetTopWithNotifications
26
+ calculation in the layout CSS.
27
27
  */
28
28
  &.sticky-notifications {
29
29
  position: sticky;
@@ -37,8 +37,8 @@
37
37
  }
38
38
 
39
39
  /*
40
- In mobile viewports the notifications should never be sticky even
41
- if the property is set. Padding is added to give adequate
40
+ In mobile viewports the notifications should never be sticky even
41
+ if the property is set. Padding is added to give adequate
42
42
  vertical space from the sticky AppBar the subsequent adjacent sibling.
43
43
  */
44
44
  @include styles.media-breakpoint-down(styles.$breakpoint-x-small) {
@@ -8,9 +8,9 @@
8
8
  @use '../../internal/generated/custom-css-properties/index.scss' as custom-props;
9
9
 
10
10
  /*
11
- When the Split Panel is in the bottom position it was share the same row
12
- as the content area. This row is defined as 1 fractional unit which will
13
- consume the remaining vertical space in the grid after the notifications
11
+ When the Split Panel is in the bottom position it was share the same row
12
+ as the content area. This row is defined as 1 fractional unit which will
13
+ consume the remaining vertical space in the grid after the notifications
14
14
  and breadcrumbs.
15
15
  */
16
16
  section.split-panel-bottom {
@@ -24,13 +24,13 @@ section.split-panel-bottom {
24
24
  grid-column: 1 / 6;
25
25
  grid-row: 5;
26
26
  height: auto;
27
- /*
27
+ /*
28
28
  The position sticky will work in conjunction with the align self: end; property.
29
- If the grid row scrolls beyond the viewport, the sticky bottom position
29
+ If the grid row scrolls beyond the viewport, the sticky bottom position
30
30
  will lift it up above the footer so it is always visible.
31
31
  */
32
32
  position: sticky;
33
- z-index: 851;
33
+ z-index: 840;
34
34
 
35
35
  // Animation for the height when opening the split panel
36
36
  @keyframes openSplitPanelBottom {
@@ -57,7 +57,7 @@ section.split-panel-bottom {
57
57
  }
58
58
 
59
59
  /*
60
- Unlike the side position the Split Panel is persistent in the DOM
60
+ Unlike the side position the Split Panel is persistent in the DOM
61
61
  when in the bottom position.
62
62
  */
63
63
  &.position-bottom {
@@ -65,11 +65,11 @@ section.split-panel-bottom {
65
65
  }
66
66
 
67
67
  /*
68
- Warning! This is a hack! The existing design token for the split panel
68
+ Warning! This is a hack! The existing design token for the split panel
69
69
  shadow in the bottom position does not render in the refactored code.
70
- It appears to be related to the fact that the legacy split panel element
71
- has a height equal to the expanded height and a corresponding translation
72
- of the Y position so it is moved off the screen. This will need to be
70
+ It appears to be related to the fact that the legacy split panel element
71
+ has a height equal to the expanded height and a corresponding translation
72
+ of the Y position so it is moved off the screen. This will need to be
73
73
  refactored with an adjustment to the split panel design token.
74
74
  */
75
75
  &:not(.is-split-panel-open).position-bottom {
@@ -114,8 +114,8 @@ section.split-panel-side {
114
114
  }
115
115
 
116
116
  /*
117
- The min and max widths are applied when the Split Panel is opened otherwise
118
- it would not be possible to animate the width and the box shadow would
117
+ The min and max widths are applied when the Split Panel is opened otherwise
118
+ it would not be possible to animate the width and the box shadow would
119
119
  be persistent in the DOM when closed.
120
120
  */
121
121
  &.is-split-panel-open.position-side {
@@ -130,8 +130,8 @@ section.split-panel-side {
130
130
  }
131
131
 
132
132
  /*
133
- A non-semantic node is added with a fixed width equal to the final Split Panel
134
- width. This will create the visual appearance of horizontal movement and
133
+ A non-semantic node is added with a fixed width equal to the final Split Panel
134
+ width. This will create the visual appearance of horizontal movement and
135
135
  prevent unwanted text wrapping.
136
136
  */
137
137
  > .animated-content {
@@ -8,12 +8,12 @@
8
8
  @use '../../internal/generated/custom-css-properties/index.scss' as custom-props;
9
9
 
10
10
  /*
11
- The Tools component container has a max width calculation that depends on the
11
+ The Tools component container has a max width calculation that depends on the
12
12
  state of the other siblings within the Layout grid definition. The layout width
13
- is set in the resize observer in the Layout component. The main offset left
14
- will calculate the distance from the start of the Layout component. The minimum
13
+ is set in the resize observer in the Layout component. The main offset left
14
+ will calculate the distance from the start of the Layout component. The minimum
15
15
  content width has a default value that can be set directly with the minContentWidth
16
- property. The content gap right is computed in the Layout styles based on the
16
+ property. The content gap right is computed in the Layout styles based on the
17
17
  viewport size and state of the Tools drawer.
18
18
  */
19
19
  .tools-container {
@@ -31,7 +31,7 @@ viewport size and state of the Tools drawer.
31
31
  max-width: var(#{custom-props.$toolsMaxWidth});
32
32
  position: sticky;
33
33
  top: var(#{custom-props.$offsetTop});
34
- z-index: 850;
34
+ z-index: 830;
35
35
 
36
36
  pointer-events: none;
37
37
 
@@ -91,8 +91,8 @@ viewport size and state of the Tools drawer.
91
91
  }
92
92
 
93
93
  /*
94
- A non-semantic node is added with a fixed width equal to the final Tools
95
- width. This will create the visual appearance of horizontal movement and
94
+ A non-semantic node is added with a fixed width equal to the final Tools
95
+ width. This will create the visual appearance of horizontal movement and
96
96
  prevent unwanted text wrapping.
97
97
  */
98
98
  > .animated-content {
@@ -101,7 +101,7 @@ viewport size and state of the Tools drawer.
101
101
 
102
102
  /*
103
103
  A right border is needed if the Tools is open and the buttons are persistent in
104
- the DOM. This creates a visual vertical boundary between the Tools and the Buttons
104
+ the DOM. This creates a visual vertical boundary between the Tools and the Buttons
105
105
  only when they are both present. This is the circumstance when there is a Split Panel
106
106
  in the side position.
107
107
  */
@@ -125,8 +125,8 @@ viewport size and state of the Tools drawer.
125
125
  }
126
126
 
127
127
  /*
128
- Warning! If these design tokens for padding change it will adversely impact
129
- the calculation used to determine the Split Panel maximum width in the
128
+ Warning! If these design tokens for padding change it will adversely impact
129
+ the calculation used to determine the Split Panel maximum width in the
130
130
  handleSplitPanelMaxWidth function in the context.
131
131
  */
132
132
  .show-tools {
@@ -149,7 +149,7 @@ handleSplitPanelMaxWidth function in the context.
149
149
  }
150
150
 
151
151
  /*
152
- Apply the animation only in desktop viewports because the AppBar will
152
+ Apply the animation only in desktop viewports because the AppBar will
153
153
  take control in responsive viewports.
154
154
  */
155
155
  @include styles.media-breakpoint-up(styles.$breakpoint-x-small) {
@@ -22,6 +22,7 @@
22
22
 
23
23
  .wrap-lines,
24
24
  .striped-rows,
25
+ .content-density,
25
26
  .page-size,
26
27
  .page-size-form-field,
27
28
  .page-size-radio-group {
@@ -2,6 +2,7 @@
2
2
  Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
3
  SPDX-License-Identifier: Apache-2.0
4
4
  */
5
+ @use 'sass:map';
5
6
  @use '../internal/generated/custom-css-properties/index.scss' as custom-props;
6
7
  @use '../internal/hooks/focus-visible' as focus-visible;
7
8
  @use '../internal/styles/tokens' as awsui;
@@ -9,9 +10,25 @@
9
10
  @use '../internal/styles/typography' as typography;
10
11
  @use './collapsible.motion';
11
12
 
13
+ $notification-bar-top-overlap: (
14
+ 'collapsed': calc(#{awsui.$space-scaled-xl} + 3px),
15
+ 'expanded': awsui.$space-scaled-s,
16
+ );
17
+ $notification-bar-line-height: awsui.$font-body-m-line-height;
18
+ $notification-bar-padding-vertical: styles.$control-padding-vertical;
19
+ $notification-bar-collapsed-item-overflow: (
20
+ 'x': 10px,
21
+ 'y': 8px,
22
+ );
23
+ $notification-bar-border-width: (
24
+ 'classic': 1px,
25
+ 'visual-refresh': 3px,
26
+ );
27
+
12
28
  .stack {
29
+ $notification-bar-horizontal-margin: 3 * map.get($notification-bar-collapsed-item-overflow, 'x');
13
30
  display: grid;
14
- grid-template-columns: 1fr minmax(70px, auto) 1fr;
31
+ grid-template-columns: $notification-bar-horizontal-margin 1fr $notification-bar-horizontal-margin;
15
32
  }
16
33
 
17
34
  .stack > .expanded {
@@ -33,14 +50,15 @@ the grid layout will be:
33
50
  [10px] [item 2 start] [10px] [fractional unit] [10px] [item 2 end] [10px]
34
51
  [10px] [10px] [item 3 start] [fractional unit] [item 3 end] [10px] [10px]
35
52
  */
53
+
36
54
  .stack > .collapsed {
37
55
  display: grid;
38
56
  grid-column: 1 / 4;
39
57
  grid-template-columns:
40
- repeat(var(#{custom-props.$flashbarStackDepth}), 10px)
58
+ repeat(var(#{custom-props.$flashbarStackDepth}), map.get($notification-bar-collapsed-item-overflow, 'x'))
41
59
  1fr
42
- repeat(var(#{custom-props.$flashbarStackDepth}), 10px);
43
- row-gap: 8px;
60
+ repeat(var(#{custom-props.$flashbarStackDepth}), map.get($notification-bar-collapsed-item-overflow, 'x'));
61
+ row-gap: map.get($notification-bar-collapsed-item-overflow, 'y');
44
62
  z-index: 0;
45
63
 
46
64
  > .item {
@@ -83,27 +101,88 @@ the grid layout will be:
83
101
  @include stacked-flash-z-index;
84
102
  }
85
103
 
86
- @mixin toggle-button-layout($top-overlap-collapsed, $border-width) {
87
- $margin-top-when-collapsed: -$top-overlap-collapsed;
88
- $line-height: awsui.$font-body-m-line-height;
89
- $padding-vertical: styles.$control-padding-vertical;
90
- $margin-top-when-expanded: -12px;
91
-
92
- padding-top: $padding-vertical;
93
- padding-bottom: $padding-vertical;
104
+ @mixin vertical-spacing($top-overlap, $border-width, $buffer-bottom: 0px, $offset-bottom: 0px) {
105
+ $notification-bar-full-height: calc(
106
+ #{$notification-bar-line-height} + 2 * (#{$notification-bar-padding-vertical} + #{$border-width})
107
+ );
108
+
109
+ /*
110
+ The default bottom margin ($default-margin-bottom) is just enough to prevent the notification bar from overlapping the
111
+ elements below. But if using disableContentPaddings, $stackedNotificationsBottomMargin will be set at the App Layout
112
+ level so that this distance is increased to prevent the main area from touching the notifications area.
113
+ */
114
+ $default-margin-bottom: calc(#{$notification-bar-full-height} - #{$top-overlap});
115
+ margin-bottom: calc(
116
+ var(#{custom-props.$stackedNotificationsBottomMargin}, #{$default-margin-bottom}) + #{$buffer-bottom} + #{$offset-bottom}
117
+ );
118
+
119
+ > .notification-bar {
120
+ margin-top: calc(-1 * #{$top-overlap} + #{$offset-bottom});
121
+ margin-bottom: calc(#{$top-overlap} - #{$notification-bar-full-height} - #{$offset-bottom});
122
+ padding-top: $notification-bar-padding-vertical;
123
+ padding-bottom: $notification-bar-padding-vertical;
124
+ }
125
+ }
94
126
 
127
+ .stack.collapsible {
95
128
  &:not(.expanded) {
96
- margin-top: #{$margin-top-when-collapsed};
97
- margin-bottom: calc(
98
- #{-$margin-top-when-collapsed} - (#{$line-height} + 2 * (#{$padding-vertical} + #{$border-width}))
99
- );
129
+ &:not(.short-list) {
130
+ &:not(.visual-refresh) {
131
+ @include vertical-spacing(
132
+ map.get($notification-bar-top-overlap, 'collapsed'),
133
+ map.get($notification-bar-border-width, 'classic')
134
+ );
135
+ }
136
+ &.visual-refresh {
137
+ @include vertical-spacing(
138
+ map.get($notification-bar-top-overlap, 'collapsed'),
139
+ map.get($notification-bar-border-width, 'visual-refresh')
140
+ );
141
+ }
142
+ }
143
+
144
+ /*
145
+ Since the notification bar is anchored to the bottom of the Flashbar, we need to push it up to account for the
146
+ missing third item when there are only 2 items in the stack.
147
+ */
148
+ &.short-list {
149
+ &:not(.visual-refresh) {
150
+ @include vertical-spacing(
151
+ map.get($notification-bar-top-overlap, 'collapsed'),
152
+ map.get($notification-bar-border-width, 'classic'),
153
+ 0px,
154
+ map.get($notification-bar-collapsed-item-overflow, 'y')
155
+ );
156
+ }
157
+ &.visual-refresh {
158
+ @include vertical-spacing(
159
+ map.get($notification-bar-top-overlap, 'collapsed'),
160
+ map.get($notification-bar-border-width, 'visual-refresh'),
161
+ 0px,
162
+ map.get($notification-bar-collapsed-item-overflow, 'y')
163
+ );
164
+ }
165
+ }
100
166
  }
101
167
 
102
168
  &.expanded {
103
- margin-top: #{$margin-top-when-expanded};
104
- margin-bottom: calc(
105
- #{-$margin-top-when-expanded} - (#{$line-height} + 2 * (#{$padding-vertical} + #{$border-width}))
106
- );
169
+ &:not(.visual-refresh) {
170
+ /*
171
+ Give a bit more bottom margin when expanded, but only in Classic because in Visual Refresh the margin around the
172
+ notifications slot already gives it enough space.
173
+ */
174
+ @include vertical-spacing(
175
+ map.get($notification-bar-top-overlap, 'expanded'),
176
+ map.get($notification-bar-border-width, 'classic'),
177
+ awsui.$space-scaled-m
178
+ );
179
+ }
180
+ &.visual-refresh {
181
+ @include vertical-spacing(
182
+ map.get($notification-bar-top-overlap, 'expanded'),
183
+ map.get($notification-bar-border-width, 'visual-refresh')
184
+ );
185
+ }
107
186
  }
108
187
  }
109
188
 
@@ -118,13 +197,16 @@ the grid layout will be:
118
197
  color: awsui.$color-text-layout-toggle;
119
198
  cursor: pointer;
120
199
  display: flex;
200
+ flex-direction: row;
121
201
  flex-wrap: wrap;
122
202
  grid-column: 2;
123
203
  grid-row: 2;
124
- gap: awsui.$space-xxs;
204
+ column-gap: calc(#{awsui.$space-m} + #{awsui.$space-xxs});
205
+ justify-content: center;
125
206
  letter-spacing: awsui.$font-button-letter-spacing;
126
207
  margin-left: auto;
127
208
  margin-right: auto;
209
+ row-gap: 0;
128
210
  text-align: center;
129
211
  text-decoration: none;
130
212
  z-index: 1;
@@ -142,7 +224,12 @@ the grid layout will be:
142
224
  }
143
225
 
144
226
  > .status {
145
- display: inline-block;
227
+ display: flex;
228
+ flex-direction: row;
229
+ flex-wrap: wrap;
230
+ column-gap: awsui.$space-m;
231
+ justify-content: center;
232
+ row-gap: 0;
146
233
 
147
234
  > .header {
148
235
  font-weight: awsui.$font-button-weight;
@@ -150,18 +237,15 @@ the grid layout will be:
150
237
  }
151
238
 
152
239
  > .item-count {
153
- margin-left: awsui.$space-m;
154
- margin-right: awsui.$space-m;
155
- white-space: nowrap;
156
-
157
- > .type-count {
158
- > .count-number {
159
- margin-left: awsui.$space-xxs;
160
- }
161
-
162
- &:not(:last-child) {
163
- margin-right: awsui.$space-s;
164
- }
240
+ column-gap: awsui.$space-s;
241
+ display: flex;
242
+ flex-direction: row;
243
+ flex-wrap: wrap;
244
+ justify-content: center;
245
+ row-gap: 0;
246
+
247
+ > .type-count > .count-number {
248
+ margin-left: awsui.$space-xxs;
165
249
  }
166
250
  }
167
251
  }
@@ -176,20 +260,14 @@ the grid layout will be:
176
260
  }
177
261
 
178
262
  &.visual-refresh {
179
- $border-width: 2px;
180
- // Amount of pixels that the element is pushed up to overlap the Flashbar (when collapsed)
181
- $top-overlap-collapsed: 27px;
182
- @include toggle-button-layout($top-overlap-collapsed, $border-width);
263
+ $border-width: map.get($notification-bar-border-width, 'visual-refresh');
183
264
  border-width: $border-width;
184
265
  padding-left: awsui.$space-l;
185
266
  padding-right: awsui.$space-l;
186
267
  }
187
268
 
188
269
  &:not(.visual-refresh) {
189
- $border-width: 1px;
190
- // Amount of pixels that the element is pushed up to overlap the Flashbar (when collapsed)
191
- $top-overlap-collapsed: 24px;
192
- @include toggle-button-layout($top-overlap-collapsed, $border-width);
270
+ $border-width: map.get($notification-bar-border-width, 'classic');
193
271
  border-width: $border-width;
194
272
  padding-left: awsui.$space-s;
195
273
  padding-right: awsui.$space-s;
@@ -208,6 +286,8 @@ the grid layout will be:
208
286
  flex-grow: 1;
209
287
  background: none;
210
288
  border: 0 none;
289
+ padding-top: 0;
290
+ padding-bottom: 0;
211
291
 
212
292
  > .icon {
213
293
  @include styles.with-motion {
@@ -1,30 +1,31 @@
1
1
 
2
- $offsetTop: --awsui-offset-top-20d8jh;
3
- $offsetTopWithNotifications: --awsui-offset-top-with-notifications-20d8jh;
4
- $contentGapLeft: --awsui-content-gap-left-20d8jh;
5
- $contentGapRight: --awsui-content-gap-right-20d8jh;
6
- $contentHeight: --awsui-content-height-20d8jh;
7
- $defaultMaxContentWidth: --awsui-default-max-content-width-20d8jh;
8
- $defaultMinContentWidth: --awsui-default-min-content-width-20d8jh;
9
- $footerHeight: --awsui-footer-height-20d8jh;
10
- $headerHeight: --awsui-header-height-20d8jh;
11
- $layoutWidth: --awsui-layout-width-20d8jh;
12
- $mainOffsetLeft: --awsui-main-offset-left-20d8jh;
13
- $maxContentWidth: --awsui-max-content-width-20d8jh;
14
- $minContentWidth: --awsui-min-content-width-20d8jh;
15
- $notificationsHeight: --awsui-notifications-height-20d8jh;
16
- $overlapHeight: --awsui-overlap-height-20d8jh;
17
- $navigationWidth: --awsui-navigation-width-20d8jh;
18
- $splitPanelReportedHeaderSize: --awsui-split-panel-reported-header-size-20d8jh;
19
- $splitPanelReportedSize: --awsui-split-panel-reported-size-20d8jh;
20
- $splitPanelHeight: --awsui-split-panel-height-20d8jh;
21
- $splitPanelMinWidth: --awsui-split-panel-min-width-20d8jh;
22
- $splitPanelMaxWidth: --awsui-split-panel-max-width-20d8jh;
23
- $toolsMaxWidth: --awsui-tools-max-width-20d8jh;
24
- $toolsWidth: --awsui-tools-width-20d8jh;
25
- $toolsAnimationStartingOpacity: --awsui-tools-animation-starting-opacity-20d8jh;
26
- $contentScrollMargin: --awsui-content-scroll-margin-20d8jh;
27
- $flashbarStackDepth: --awsui-flashbar-stack-depth-20d8jh;
28
- $flashbarStackIndex: --awsui-flashbar-stack-index-20d8jh;
29
- $flashbarStickyBottomMargin: --awsui-flashbar-sticky-bottom-margin-20d8jh;
2
+ $offsetTop: --awsui-offset-top-k2tw0m;
3
+ $offsetTopWithNotifications: --awsui-offset-top-with-notifications-k2tw0m;
4
+ $contentGapLeft: --awsui-content-gap-left-k2tw0m;
5
+ $contentGapRight: --awsui-content-gap-right-k2tw0m;
6
+ $contentHeight: --awsui-content-height-k2tw0m;
7
+ $defaultMaxContentWidth: --awsui-default-max-content-width-k2tw0m;
8
+ $defaultMinContentWidth: --awsui-default-min-content-width-k2tw0m;
9
+ $footerHeight: --awsui-footer-height-k2tw0m;
10
+ $headerHeight: --awsui-header-height-k2tw0m;
11
+ $layoutWidth: --awsui-layout-width-k2tw0m;
12
+ $mainOffsetLeft: --awsui-main-offset-left-k2tw0m;
13
+ $maxContentWidth: --awsui-max-content-width-k2tw0m;
14
+ $minContentWidth: --awsui-min-content-width-k2tw0m;
15
+ $notificationsHeight: --awsui-notifications-height-k2tw0m;
16
+ $overlapHeight: --awsui-overlap-height-k2tw0m;
17
+ $navigationWidth: --awsui-navigation-width-k2tw0m;
18
+ $splitPanelReportedHeaderSize: --awsui-split-panel-reported-header-size-k2tw0m;
19
+ $splitPanelReportedSize: --awsui-split-panel-reported-size-k2tw0m;
20
+ $splitPanelHeight: --awsui-split-panel-height-k2tw0m;
21
+ $splitPanelMinWidth: --awsui-split-panel-min-width-k2tw0m;
22
+ $splitPanelMaxWidth: --awsui-split-panel-max-width-k2tw0m;
23
+ $toolsMaxWidth: --awsui-tools-max-width-k2tw0m;
24
+ $toolsWidth: --awsui-tools-width-k2tw0m;
25
+ $toolsAnimationStartingOpacity: --awsui-tools-animation-starting-opacity-k2tw0m;
26
+ $contentScrollMargin: --awsui-content-scroll-margin-k2tw0m;
27
+ $flashbarStackDepth: --awsui-flashbar-stack-depth-k2tw0m;
28
+ $flashbarStackIndex: --awsui-flashbar-stack-index-k2tw0m;
29
+ $flashbarStickyBottomMargin: --awsui-flashbar-sticky-bottom-margin-k2tw0m;
30
+ $stackedNotificationsBottomMargin: --awsui-stacked-notifications-bottom-margin-k2tw0m;
30
31
 
@@ -52,7 +52,7 @@ $app-layout-drawer-width: calc(#{awsui.$space-layout-toggle-diameter} + 2 * #{aw
52
52
  word-wrap: break-word;
53
53
  background-color: awsui.$color-background-layout-panel-content;
54
54
  // should be above tools and navigation panels to avoid their shadows
55
- z-index: 851;
55
+ z-index: 840;
56
56
  &-closed {
57
57
  cursor: pointer;
58
58
  min-width: constants.$sidebar-size-closed;
@@ -114,7 +114,7 @@ $app-layout-drawer-width: calc(#{awsui.$space-layout-toggle-diameter} + 2 * #{aw
114
114
  }
115
115
 
116
116
  /*
117
- Removed the position fixed with the AppLayout refactor because the
117
+ Removed the position fixed with the AppLayout refactor because the
118
118
  SplitPanel is no longer in fixed position in the DOM.
119
119
  */
120
120
  &.refresh {
@@ -1,29 +1,29 @@
1
1
 
2
2
  import './styles.scoped.css';
3
3
  export default {
4
- "arrow": "awsui_arrow_1hpp3_1pskf_93",
5
- "arrow-outer": "awsui_arrow-outer_1hpp3_1pskf_97",
6
- "arrow-inner": "awsui_arrow-inner_1hpp3_1pskf_97",
7
- "arrow-position-right-top": "awsui_arrow-position-right-top_1hpp3_1pskf_128",
8
- "arrow-position-right-bottom": "awsui_arrow-position-right-bottom_1hpp3_1pskf_128",
9
- "arrow-position-left-top": "awsui_arrow-position-left-top_1hpp3_1pskf_131",
10
- "arrow-position-left-bottom": "awsui_arrow-position-left-bottom_1hpp3_1pskf_131",
11
- "arrow-position-top-center": "awsui_arrow-position-top-center_1hpp3_1pskf_134",
12
- "arrow-position-top-responsive": "awsui_arrow-position-top-responsive_1hpp3_1pskf_134",
13
- "arrow-position-bottom-center": "awsui_arrow-position-bottom-center_1hpp3_1pskf_137",
14
- "arrow-position-bottom-responsive": "awsui_arrow-position-bottom-responsive_1hpp3_1pskf_137",
15
- "annotation": "awsui_annotation_1hpp3_1pskf_145",
16
- "next-button": "awsui_next-button_1hpp3_1pskf_146",
17
- "previous-button": "awsui_previous-button_1hpp3_1pskf_147",
18
- "finish-button": "awsui_finish-button_1hpp3_1pskf_148",
19
- "header": "awsui_header_1hpp3_1pskf_149",
20
- "step-counter-content": "awsui_step-counter-content_1hpp3_1pskf_150",
21
- "content": "awsui_content_1hpp3_1pskf_151",
22
- "description": "awsui_description_1hpp3_1pskf_155",
23
- "actionBar": "awsui_actionBar_1hpp3_1pskf_160",
24
- "stepCounter": "awsui_stepCounter_1hpp3_1pskf_167",
25
- "divider": "awsui_divider_1hpp3_1pskf_171",
26
- "hotspot": "awsui_hotspot_1hpp3_1pskf_175",
27
- "icon": "awsui_icon_1hpp3_1pskf_215"
4
+ "arrow": "awsui_arrow_1hpp3_16fbp_93",
5
+ "arrow-outer": "awsui_arrow-outer_1hpp3_16fbp_97",
6
+ "arrow-inner": "awsui_arrow-inner_1hpp3_16fbp_97",
7
+ "arrow-position-right-top": "awsui_arrow-position-right-top_1hpp3_16fbp_128",
8
+ "arrow-position-right-bottom": "awsui_arrow-position-right-bottom_1hpp3_16fbp_128",
9
+ "arrow-position-left-top": "awsui_arrow-position-left-top_1hpp3_16fbp_131",
10
+ "arrow-position-left-bottom": "awsui_arrow-position-left-bottom_1hpp3_16fbp_131",
11
+ "arrow-position-top-center": "awsui_arrow-position-top-center_1hpp3_16fbp_134",
12
+ "arrow-position-top-responsive": "awsui_arrow-position-top-responsive_1hpp3_16fbp_134",
13
+ "arrow-position-bottom-center": "awsui_arrow-position-bottom-center_1hpp3_16fbp_137",
14
+ "arrow-position-bottom-responsive": "awsui_arrow-position-bottom-responsive_1hpp3_16fbp_137",
15
+ "annotation": "awsui_annotation_1hpp3_16fbp_145",
16
+ "next-button": "awsui_next-button_1hpp3_16fbp_146",
17
+ "previous-button": "awsui_previous-button_1hpp3_16fbp_147",
18
+ "finish-button": "awsui_finish-button_1hpp3_16fbp_148",
19
+ "header": "awsui_header_1hpp3_16fbp_149",
20
+ "step-counter-content": "awsui_step-counter-content_1hpp3_16fbp_150",
21
+ "content": "awsui_content_1hpp3_16fbp_151",
22
+ "description": "awsui_description_1hpp3_16fbp_155",
23
+ "actionBar": "awsui_actionBar_1hpp3_16fbp_160",
24
+ "stepCounter": "awsui_stepCounter_1hpp3_16fbp_167",
25
+ "divider": "awsui_divider_1hpp3_16fbp_171",
26
+ "hotspot": "awsui_hotspot_1hpp3_16fbp_175",
27
+ "icon": "awsui_icon_1hpp3_16fbp_215"
28
28
  };
29
29