@carbon/ibm-products 2.15.1 → 2.16.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (112) hide show
  1. package/css/index-full-carbon.css +217 -9
  2. package/css/index-full-carbon.css.map +1 -1
  3. package/css/index-full-carbon.min.css +1 -1
  4. package/css/index-full-carbon.min.css.map +1 -1
  5. package/css/index-without-carbon-released-only.css +1 -1
  6. package/css/index-without-carbon-released-only.css.map +1 -1
  7. package/css/index-without-carbon-released-only.min.css +1 -1
  8. package/css/index-without-carbon-released-only.min.css.map +1 -1
  9. package/css/index-without-carbon.css +217 -9
  10. package/css/index-without-carbon.css.map +1 -1
  11. package/css/index-without-carbon.min.css +1 -1
  12. package/css/index-without-carbon.min.css.map +1 -1
  13. package/css/index.css +27 -9
  14. package/css/index.css.map +1 -1
  15. package/css/index.min.css +1 -1
  16. package/css/index.min.css.map +1 -1
  17. package/es/components/Datagrid/Datagrid/DatagridContent.js +12 -9
  18. package/es/components/Datagrid/Datagrid/DatagridExpandedRow.js +4 -4
  19. package/es/components/Datagrid/Datagrid/DatagridHeaderRow.js +40 -25
  20. package/es/components/Datagrid/Datagrid/DatagridRefBody.js +4 -1
  21. package/es/components/Datagrid/Datagrid/DatagridRow.js +5 -2
  22. package/es/components/Datagrid/Datagrid/DatagridSelectAll.js +12 -11
  23. package/es/components/Datagrid/Datagrid/DatagridSimpleBody.js +4 -1
  24. package/es/components/Datagrid/Datagrid/DatagridVirtualBody.js +35 -28
  25. package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/DraggableItemsList.js +2 -2
  26. package/es/components/Datagrid/Datagrid/addons/stateReducer.js +50 -14
  27. package/es/components/Datagrid/Datagrid.docs-page.js +8 -2
  28. package/es/components/Datagrid/useActionsColumn.js +7 -5
  29. package/es/components/Datagrid/useDatagrid.js +13 -1
  30. package/es/components/Datagrid/useInfiniteScroll.js +10 -9
  31. package/es/components/Datagrid/useOnRowClick.js +6 -7
  32. package/es/components/Datagrid/useParentDimensions.js +6 -6
  33. package/es/components/Datagrid/useResizeTable.js +7 -7
  34. package/es/components/Datagrid/useSelectRows.js +8 -5
  35. package/es/components/Datagrid/useSkeletonRows.js +6 -6
  36. package/es/components/Datagrid/useSortableColumns.js +5 -7
  37. package/es/components/Datagrid/useStickyColumn.js +13 -6
  38. package/es/components/EmptyStates/ErrorEmptyState/ErrorEmptyState.js +2 -1
  39. package/es/components/EmptyStates/NoTagsEmptyState/NoTagsEmptyState.js +2 -1
  40. package/es/components/EmptyStates/NotFoundEmptyState/NotFoundEmptyState.js +2 -1
  41. package/es/components/EmptyStates/NotificationsEmptyState/NotificationsEmptyState.js +2 -1
  42. package/es/components/EmptyStates/UnauthorizedEmptyState/UnauthorizedEmptyState.js +2 -1
  43. package/es/components/EmptyStates/assets/ErrorIllustration.js +5 -3
  44. package/es/components/EmptyStates/assets/NoDataIllustration.js +5 -3
  45. package/es/components/EmptyStates/assets/NoTagsIllustration.js +5 -3
  46. package/es/components/EmptyStates/assets/NotFoundIllustration.js +5 -3
  47. package/es/components/EmptyStates/assets/NotificationsIllustration.js +5 -3
  48. package/es/components/EmptyStates/assets/UnauthorizedIllustration.js +5 -3
  49. package/es/components/InlineTip/InlineTip.docs-page.js +13 -0
  50. package/es/components/InlineTip/InlineTip.js +217 -0
  51. package/es/components/InlineTip/InlineTipButton.js +53 -0
  52. package/es/components/InlineTip/InlineTipLink.js +57 -0
  53. package/es/components/InlineTip/index.js +10 -0
  54. package/es/components/InlineTip/utils.js +36 -0
  55. package/es/components/SteppedAnimatedMedia/SteppedAnimatedMedia.docs-page.js +11 -0
  56. package/es/components/SteppedAnimatedMedia/SteppedAnimatedMedia.js +140 -0
  57. package/es/components/SteppedAnimatedMedia/assets/index.js +4 -0
  58. package/es/components/SteppedAnimatedMedia/index.js +8 -0
  59. package/es/global/js/package-settings.js +2 -1
  60. package/lib/components/Datagrid/Datagrid/DatagridContent.js +12 -9
  61. package/lib/components/Datagrid/Datagrid/DatagridExpandedRow.js +4 -4
  62. package/lib/components/Datagrid/Datagrid/DatagridHeaderRow.js +45 -32
  63. package/lib/components/Datagrid/Datagrid/DatagridRefBody.js +4 -1
  64. package/lib/components/Datagrid/Datagrid/DatagridRow.js +5 -2
  65. package/lib/components/Datagrid/Datagrid/DatagridSelectAll.js +11 -11
  66. package/lib/components/Datagrid/Datagrid/DatagridSimpleBody.js +4 -1
  67. package/lib/components/Datagrid/Datagrid/DatagridVirtualBody.js +33 -27
  68. package/lib/components/Datagrid/Datagrid/addons/CustomizeColumns/DraggableItemsList.js +2 -2
  69. package/lib/components/Datagrid/Datagrid/addons/stateReducer.js +51 -15
  70. package/lib/components/Datagrid/Datagrid.docs-page.js +8 -2
  71. package/lib/components/Datagrid/useActionsColumn.js +7 -5
  72. package/lib/components/Datagrid/useDatagrid.js +13 -1
  73. package/lib/components/Datagrid/useInfiniteScroll.js +9 -9
  74. package/lib/components/Datagrid/useOnRowClick.js +6 -7
  75. package/lib/components/Datagrid/useParentDimensions.js +5 -6
  76. package/lib/components/Datagrid/useResizeTable.js +6 -7
  77. package/lib/components/Datagrid/useSelectRows.js +8 -5
  78. package/lib/components/Datagrid/useSkeletonRows.js +6 -6
  79. package/lib/components/Datagrid/useSortableColumns.js +5 -7
  80. package/lib/components/Datagrid/useStickyColumn.js +13 -6
  81. package/lib/components/EmptyStates/ErrorEmptyState/ErrorEmptyState.js +2 -1
  82. package/lib/components/EmptyStates/NoTagsEmptyState/NoTagsEmptyState.js +2 -1
  83. package/lib/components/EmptyStates/NotFoundEmptyState/NotFoundEmptyState.js +2 -1
  84. package/lib/components/EmptyStates/NotificationsEmptyState/NotificationsEmptyState.js +2 -1
  85. package/lib/components/EmptyStates/UnauthorizedEmptyState/UnauthorizedEmptyState.js +2 -1
  86. package/lib/components/EmptyStates/assets/ErrorIllustration.js +5 -3
  87. package/lib/components/EmptyStates/assets/NoDataIllustration.js +5 -3
  88. package/lib/components/EmptyStates/assets/NoTagsIllustration.js +5 -3
  89. package/lib/components/EmptyStates/assets/NotFoundIllustration.js +5 -3
  90. package/lib/components/EmptyStates/assets/NotificationsIllustration.js +5 -3
  91. package/lib/components/EmptyStates/assets/UnauthorizedIllustration.js +5 -3
  92. package/lib/components/InlineTip/InlineTip.docs-page.js +23 -0
  93. package/lib/components/InlineTip/InlineTip.js +224 -0
  94. package/lib/components/InlineTip/InlineTipButton.js +57 -0
  95. package/lib/components/InlineTip/InlineTipLink.js +61 -0
  96. package/lib/components/InlineTip/index.js +26 -0
  97. package/lib/components/InlineTip/utils.js +43 -0
  98. package/lib/components/SteppedAnimatedMedia/SteppedAnimatedMedia.docs-page.js +21 -0
  99. package/lib/components/SteppedAnimatedMedia/SteppedAnimatedMedia.js +148 -0
  100. package/lib/components/SteppedAnimatedMedia/assets/index.js +9 -0
  101. package/lib/components/SteppedAnimatedMedia/index.js +12 -0
  102. package/lib/global/js/package-settings.js +2 -1
  103. package/package.json +2 -2
  104. package/scss/components/Datagrid/styles/_datagrid.scss +31 -5
  105. package/scss/components/InlineTip/_index.scss +8 -0
  106. package/scss/components/InlineTip/_inline-tip.scss +229 -0
  107. package/scss/components/InlineTip/_storybook-styles.scss +20 -0
  108. package/scss/components/SidePanel/_side-panel.scss +1 -4
  109. package/scss/components/SteppedAnimatedMedia/_index.scss +8 -0
  110. package/scss/components/SteppedAnimatedMedia/_stepped-animated-media.scss +6 -0
  111. package/scss/components/SteppedAnimatedMedia/_storybook-styles.scss +13 -0
  112. package/scss/components/_index.scss +1 -0
@@ -81,7 +81,6 @@
81
81
  }
82
82
 
83
83
  &.#{$block-class}__variable-row-height {
84
- &.#{c4p-settings.$carbon-prefix}--data-table--compact,
85
84
  &.#{c4p-settings.$carbon-prefix}--data-table--xs {
86
85
  .#{$block-class}__cell {
87
86
  padding-top: $spacing-01;
@@ -89,7 +88,6 @@
89
88
  }
90
89
  }
91
90
 
92
- &.#{c4p-settings.$carbon-prefix}--data-table--short,
93
91
  &.#{c4p-settings.$carbon-prefix}--data-table--sm,
94
92
  &.#{c4p-settings.$carbon-prefix}--data-table--md {
95
93
  .#{$block-class}__cell {
@@ -100,7 +98,6 @@
100
98
  }
101
99
  }
102
100
 
103
- &.#{c4p-settings.$carbon-prefix}--data-table--tall,
104
101
  &.#{c4p-settings.$carbon-prefix}--data-table--lg,
105
102
  &.#{c4p-settings.$carbon-prefix}--data-table--xl {
106
103
  .#{$block-class}__cell {
@@ -112,7 +109,6 @@
112
109
  }
113
110
 
114
111
  &.#{$block-class}__vertical-align-top {
115
- &.#{c4p-settings.$carbon-prefix}--data-table--tall,
116
112
  &.#{c4p-settings.$carbon-prefix}--data-table--lg,
117
113
  &.#{c4p-settings.$carbon-prefix}--data-table--xl {
118
114
  .#{$block-class}__cell {
@@ -130,7 +126,6 @@
130
126
  }
131
127
 
132
128
  &.#{$block-class}__variable-row-height {
133
- &.#{c4p-settings.$carbon-prefix}--data-table--tall,
134
129
  &.#{c4p-settings.$carbon-prefix}--data-table--lg,
135
130
  &.#{c4p-settings.$carbon-prefix}--data-table--xl {
136
131
  .#{$block-class}__cell {
@@ -326,6 +321,11 @@
326
321
  background-color: $background-selected-hover;
327
322
  }
328
323
 
324
+ .#{$block-class}__grid-container
325
+ table.#{$block-class}__table-simple.#{c4p-settings.$carbon-prefix}--data-table.#{$block-class}__table-is-resizing {
326
+ overflow-y: hidden;
327
+ }
328
+
329
329
  .#{$block-class}__resizableColumn {
330
330
  &.#{$block-class}__isResizing {
331
331
  .#{$block-class}__resizer {
@@ -347,6 +347,32 @@
347
347
  }
348
348
  }
349
349
 
350
+ .#{$block-class}__header-actions-column:hover {
351
+ background-color: $layer-accent;
352
+ }
353
+
354
+ .#{$block-class}
355
+ .#{$block-class}__carbon-row
356
+ .#{$block-class}__actions-column-cell-non-sticky
357
+ .#{c4p-settings.$carbon-prefix}--btn--icon-only {
358
+ opacity: 0;
359
+ }
360
+
361
+ .#{$block-class}
362
+ .#{$block-class}__carbon-row:hover
363
+ .#{$block-class}__actions-column-cell-non-sticky
364
+ .#{c4p-settings.$carbon-prefix}--btn--icon-only,
365
+ .#{$block-class}
366
+ .#{$block-class}__carbon-row
367
+ .#{$block-class}__actions-column-cell-non-sticky
368
+ .#{c4p-settings.$carbon-prefix}--btn--icon-only:focus,
369
+ .#{$block-class}
370
+ .#{$block-class}__carbon-row
371
+ .#{$block-class}__actions-column-cell-non-sticky
372
+ .#{c4p-settings.$carbon-prefix}--btn--icon-only[aria-expanded='true'] {
373
+ opacity: 1;
374
+ }
375
+
350
376
  .#{$block-class}__head-hidden-select-all {
351
377
  padding-right: $spacing-09;
352
378
  &.#{$block-class}__select-all-sticky-left {
@@ -0,0 +1,8 @@
1
+ //
2
+ // Copyright IBM Corp. 2023, 2023
3
+ //
4
+ // This source code is licensed under the Apache-2.0 license found in the
5
+ // LICENSE file in the root directory of this source tree.
6
+ //
7
+
8
+ @use './inline-tip';
@@ -0,0 +1,229 @@
1
+ //
2
+ // Copyright IBM Corp. 2023, 2023
3
+ //
4
+ // This source code is licensed under the Apache-2.0 license found in the
5
+ // LICENSE file in the root directory of this source tree.
6
+ //
7
+
8
+ /**
9
+ * The InlineTip specifically is theme-agnostic, and so we have to
10
+ * use color tokens to keep the colors static instead of theme tokens
11
+ * that will change depending on the selected theme.
12
+ *
13
+ * We are triggering a *large* amount of linting errors.
14
+ * So, we're using the following "disable" rules for the entire file
15
+ * instead of many individual rules.
16
+ */
17
+
18
+ /* stylelint-disable carbon/layout-token-use */
19
+ /* stylelint-disable carbon/theme-token-use */
20
+ /* stylelint-disable declaration-no-important */
21
+ /* stylelint-disable function-no-unknown */
22
+ /* stylelint-disable max-nesting-depth */
23
+
24
+ // Standard imports.
25
+ @use '../../global/styles/project-settings' as c4p-settings;
26
+ @use '@carbon/react/scss/colors' as *;
27
+ @use '@carbon/layout/scss/convert' as *;
28
+ @use '@carbon/styles/scss/spacing' as *;
29
+ @use '@carbon/styles/scss/theme' as *;
30
+ @use '@carbon/styles/scss/type' as *;
31
+
32
+ $block-class: #{c4p-settings.$pkg-prefix}--inline-tip;
33
+ // Images and animation are the same fixed size
34
+ $media-height: to-rem(118px);
35
+ $media-width: calc(#{$media-height} * 2);
36
+ $purple: #7f3ae7;
37
+
38
+ .#{$block-class} {
39
+ position: relative;
40
+ display: flex;
41
+ background: linear-gradient(90deg, $blue-90 0%, $purple-70 100%);
42
+ }
43
+ // layout only: wide
44
+ .#{$block-class}__wide {
45
+ padding: $spacing-05 $spacing-10 $spacing-05 $spacing-09;
46
+ }
47
+ // layout: wide, with image
48
+ .#{$block-class}__wide.#{$block-class}__has-media {
49
+ padding-right: $spacing-09;
50
+ }
51
+
52
+ .#{$block-class}__wide.#{$block-class}__has-media .#{$block-class}__media {
53
+ padding-left: $spacing-10;
54
+ }
55
+
56
+ .#{$block-class}__wide.#{$block-class}__has-media .#{$block-class}__media img {
57
+ display: block;
58
+ height: $media-height;
59
+ }
60
+
61
+ .#{$block-class}__wide.#{$block-class}__has-media .#{$block-class}__media svg {
62
+ // Overrides the inline CSS of "100%".
63
+ width: $media-width !important;
64
+ height: $media-height !important;
65
+ }
66
+
67
+ // layout only: narrow
68
+ .#{$block-class}__narrow {
69
+ flex-direction: column-reverse;
70
+ padding: to-rem(52px) $spacing-07 $spacing-05 $spacing-05;
71
+ }
72
+ // layout: narrow, with image
73
+ .#{$block-class}__narrow.#{$block-class}__has-media {
74
+ padding-top: $spacing-07;
75
+ padding-right: $spacing-05;
76
+ }
77
+
78
+ .#{$block-class}__narrow.#{$block-class}__has-media .#{$block-class}__media {
79
+ padding-bottom: $spacing-05;
80
+
81
+ img {
82
+ width: 100%;
83
+ }
84
+ }
85
+
86
+ .#{$block-class}__narrow.#{$block-class}__has-media .#{$block-class}__content {
87
+ padding-right: $spacing-05;
88
+ }
89
+
90
+ .#{$block-class}__narrow.#{$block-class}__has-media .#{$block-class}__footer {
91
+ justify-content: space-between;
92
+ }
93
+ .#{$block-class}__narrow.#{$block-class}__has-media
94
+ .#{$block-class}__footer
95
+ .#{$block-class}__close-btn {
96
+ margin-right: calc(-1 * $spacing-05);
97
+ }
98
+
99
+ // All links in use by this component and provided by the user must reflect the 'dark' theme.
100
+ .#{$block-class} a {
101
+ color: $blue-30;
102
+
103
+ &:visited,
104
+ &:hover,
105
+ &:visited:hover {
106
+ color: $blue-30;
107
+ }
108
+ }
109
+
110
+ .#{$block-class}__title {
111
+ @include type-style('productive-heading-01');
112
+
113
+ color: $white-0;
114
+ }
115
+
116
+ .#{$block-class}__body {
117
+ @include type-style('body-short-01');
118
+
119
+ color: $gray-10;
120
+ }
121
+ .#{$block-class}__body p {
122
+ @include type-style('body-short-01');
123
+
124
+ margin-bottom: $spacing-03;
125
+ font-size: inherit;
126
+ line-height: inherit;
127
+
128
+ &:last-of-type {
129
+ margin-bottom: 0;
130
+ }
131
+ }
132
+
133
+ .#{$block-class}__body .#{$block-class}__secondary-btn {
134
+ margin-top: $spacing-03;
135
+ }
136
+ .#{$block-class}__body
137
+ .#{$block-class}__secondary-btn
138
+ .#{$block-class}__button {
139
+ margin-left: calc(-1 * $spacing-05);
140
+ color: $blue-30;
141
+
142
+ &:active,
143
+ &:hover {
144
+ background-color: $purple;
145
+ color: $gray-10;
146
+ }
147
+ }
148
+
149
+ .#{$block-class}__footer {
150
+ display: flex;
151
+ padding-top: $spacing-05;
152
+
153
+ &:empty {
154
+ display: none;
155
+ }
156
+ }
157
+
158
+ // When 'collapsed', a text-only preview with ellipsis is shown.
159
+ .#{$block-class}__preview-text {
160
+ display: -webkit-box;
161
+ overflow: hidden;
162
+ -webkit-box-orient: vertical;
163
+ -webkit-line-clamp: 1;
164
+ }
165
+
166
+ .#{$block-class}__icon-idea {
167
+ position: absolute;
168
+ width: to-rem(20px);
169
+ color: $white-0;
170
+ inset: $spacing-05 0 0 $spacing-05;
171
+ }
172
+
173
+ .#{$block-class}__close-icon-wrapper {
174
+ position: absolute;
175
+ top: 0;
176
+ right: 0;
177
+ }
178
+
179
+ .#{$block-class} .#{$block-class}__close-icon {
180
+ padding: to-rem(6px) 0 0 0;
181
+ block-size: $spacing-07;
182
+ color: $white-0;
183
+ inline-size: $spacing-07;
184
+ min-block-size: $spacing-07;
185
+
186
+ &:active,
187
+ &:hover {
188
+ background-color: $purple;
189
+ color: $text-primary;
190
+ }
191
+
192
+ path {
193
+ margin: 0;
194
+ fill: $white-0;
195
+ }
196
+ }
197
+
198
+ .#{$block-class} .#{$block-class}__toggle-btn {
199
+ border: none;
200
+ margin: 0 $spacing-05 0 calc(-1 * $spacing-05);
201
+ color: $blue-30;
202
+
203
+ &:hover {
204
+ background-color: $purple-70-hover;
205
+ color: $gray-10;
206
+ }
207
+ }
208
+
209
+ .#{$block-class} .#{$block-class}__close-btn {
210
+ border: to-rem(1px) solid $white-0;
211
+ color: $white-0;
212
+
213
+ &:active,
214
+ &:hover {
215
+ background-color: $gray-10;
216
+ color: $gray-100;
217
+ }
218
+
219
+ // The "render icon" CSS seems to be missing in the latest Carbon button.
220
+ // Specifically, getting the icon to move to right-hand side of the content area.
221
+ // Repeating here.
222
+ svg {
223
+ position: absolute;
224
+ right: 1rem;
225
+ width: 1rem;
226
+ height: 1rem;
227
+ flex-shrink: 0;
228
+ }
229
+ }
@@ -0,0 +1,20 @@
1
+ //
2
+ // Copyright IBM Corp. 2023, 2023
3
+ //
4
+ // This source code is licensed under the Apache-2.0 license found in the
5
+ // LICENSE file in the root directory of this source tree.
6
+ //
7
+
8
+ @use '@carbon/styles/scss/spacing' as *;
9
+ @use '../../global/styles/project-settings';
10
+
11
+ .storybook--inline-tip-wide {
12
+ max-width: 784px;
13
+ // Allow enough space above the component to show the "X" tooltip.
14
+ margin-top: $spacing-07;
15
+ }
16
+
17
+ .storybook--inline-tip-narrow {
18
+ max-width: 348px;
19
+ margin-top: $spacing-07;
20
+ }
@@ -110,10 +110,6 @@ $action-set-block-class: #{c4p-settings.$pkg-prefix}--action-set;
110
110
  position: sticky;
111
111
  z-index: 4;
112
112
  top: 0;
113
- height: calc(
114
- var(--#{$block-class}--title-container-height) -
115
- var(--#{$block-class}--label-text-height)
116
- );
117
113
  padding: $spacing-05 $spacing-05 $spacing-03 $spacing-05;
118
114
  background-color: $layer-01;
119
115
 
@@ -169,6 +165,7 @@ $action-set-block-class: #{c4p-settings.$pkg-prefix}--action-set;
169
165
 
170
166
  position: inherit;
171
167
  z-index: 4;
168
+ margin-bottom: calc(-1 * var(--#{$block-class}--label-text-height));
172
169
  background-color: $layer-01;
173
170
  opacity: var(--#{$block-class}--subtitle-opacity);
174
171
  transform: translateY(var(--#{$block-class}--title-y-position));
@@ -0,0 +1,8 @@
1
+ //
2
+ // Copyright IBM Corp. 2023, 2023
3
+ //
4
+ // This source code is licensed under the Apache-2.0 license found in the
5
+ // LICENSE file in the root directory of this source tree.
6
+ //
7
+
8
+ @import './stepped-animated-media';
@@ -0,0 +1,6 @@
1
+ //
2
+ // Copyright IBM Corp. 2023, 2023
3
+ //
4
+ // This source code is licensed under the Apache-2.0 license found in the
5
+ // LICENSE file in the root directory of this source tree.
6
+ //
@@ -0,0 +1,13 @@
1
+ //
2
+ // Copyright IBM Corp. 2023, 2023
3
+ //
4
+ // This source code is licensed under the Apache-2.0 license found in the
5
+ // LICENSE file in the root directory of this source tree.
6
+ //
7
+
8
+ @use '@carbon/layout/scss/convert' as *;
9
+
10
+ .stepped-animated-media-stories__viewport {
11
+ /* stylelint-disable-next-line function-no-unknown */
12
+ width: to-rem(50px);
13
+ }
@@ -51,3 +51,4 @@
51
51
  @use './EditFullPage';
52
52
  @use './EditUpdateCards';
53
53
  @use './Checklist';
54
+ @use './InlineTip';