@carbon/ibm-products 1.47.0 → 1.49.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (77) hide show
  1. package/css/index-full-carbon.css +1424 -29
  2. package/css/index-full-carbon.css.map +1 -1
  3. package/css/index-full-carbon.min.css +5 -5
  4. package/css/index-full-carbon.min.css.map +1 -1
  5. package/css/index-without-carbon-released-only.css +37 -15
  6. package/css/index-without-carbon-released-only.css.map +1 -1
  7. package/css/index-without-carbon-released-only.min.css +2 -2
  8. package/css/index-without-carbon-released-only.min.css.map +1 -1
  9. package/css/index-without-carbon.css +1424 -29
  10. package/css/index-without-carbon.css.map +1 -1
  11. package/css/index-without-carbon.min.css +5 -5
  12. package/css/index-without-carbon.min.css.map +1 -1
  13. package/css/index.css +1424 -29
  14. package/css/index.css.map +1 -1
  15. package/css/index.min.css +5 -5
  16. package/css/index.min.css.map +1 -1
  17. package/es/components/AddSelect/AddSelectBreadcrumbs.js +6 -4
  18. package/es/components/AddSelect/AddSelectList.js +15 -26
  19. package/es/components/CreateFullPage/CreateFullPage.js +3 -2
  20. package/es/components/Datagrid/Datagrid/DatagridContent.js +1 -1
  21. package/es/components/Datagrid/Datagrid/DatagridToolbar.js +1 -1
  22. package/es/components/Datagrid/Datagrid/DatagridVirtualBody.js +14 -5
  23. package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/ButtonWrapper.js +6 -3
  24. package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/Columns.js +15 -56
  25. package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/CustomizeColumnsTearsheet.js +5 -8
  26. package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/DraggableItemsList.js +105 -0
  27. package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/TearsheetWrapper.js +1 -0
  28. package/es/components/Datagrid/Datagrid/addons/Filtering/FilterPanel.js +17 -5
  29. package/es/components/Datagrid/Datagrid/addons/Filtering/hooks/useFilters.js +11 -0
  30. package/es/components/Datagrid/Datagrid/addons/RowSize/RowSizeDropdown.js +8 -8
  31. package/es/components/Datagrid/index.js +8 -7
  32. package/es/components/Datagrid/useOnRowClick.js +3 -3
  33. package/es/components/Datagrid/useSortableColumns.js +26 -9
  34. package/es/components/Datagrid/utils/getAutoSizedColumnWidth.js +27 -0
  35. package/es/components/InlineEditV2/InlineEditV2.js +6 -3
  36. package/es/components/NonLinearReading/NonLinearReading.js +87 -0
  37. package/es/components/NonLinearReading/index.js +8 -0
  38. package/es/components/SidePanel/SidePanel.js +3 -4
  39. package/es/components/index.js +3 -2
  40. package/es/global/js/package-settings.js +3 -1
  41. package/es/global/js/utils/story-helper.js +9 -0
  42. package/lib/components/AddSelect/AddSelectBreadcrumbs.js +6 -4
  43. package/lib/components/AddSelect/AddSelectList.js +14 -25
  44. package/lib/components/CreateFullPage/CreateFullPage.js +2 -1
  45. package/lib/components/Datagrid/Datagrid/DatagridContent.js +1 -1
  46. package/lib/components/Datagrid/Datagrid/DatagridToolbar.js +1 -1
  47. package/lib/components/Datagrid/Datagrid/DatagridVirtualBody.js +13 -4
  48. package/lib/components/Datagrid/Datagrid/addons/CustomizeColumns/ButtonWrapper.js +6 -3
  49. package/lib/components/Datagrid/Datagrid/addons/CustomizeColumns/Columns.js +15 -56
  50. package/lib/components/Datagrid/Datagrid/addons/CustomizeColumns/CustomizeColumnsTearsheet.js +5 -8
  51. package/lib/components/Datagrid/Datagrid/addons/CustomizeColumns/DraggableItemsList.js +113 -0
  52. package/lib/components/Datagrid/Datagrid/addons/CustomizeColumns/TearsheetWrapper.js +1 -0
  53. package/lib/components/Datagrid/Datagrid/addons/Filtering/FilterPanel.js +17 -5
  54. package/lib/components/Datagrid/Datagrid/addons/Filtering/hooks/useFilters.js +11 -0
  55. package/lib/components/Datagrid/Datagrid/addons/RowSize/RowSizeDropdown.js +3 -1
  56. package/lib/components/Datagrid/index.js +8 -1
  57. package/lib/components/Datagrid/useOnRowClick.js +3 -3
  58. package/lib/components/Datagrid/useSortableColumns.js +26 -9
  59. package/lib/components/Datagrid/utils/getAutoSizedColumnWidth.js +35 -0
  60. package/lib/components/InlineEditV2/InlineEditV2.js +6 -3
  61. package/lib/components/NonLinearReading/NonLinearReading.js +90 -0
  62. package/lib/components/NonLinearReading/index.js +12 -0
  63. package/lib/components/SidePanel/SidePanel.js +2 -3
  64. package/lib/components/index.js +14 -1
  65. package/lib/global/js/package-settings.js +3 -1
  66. package/lib/global/js/utils/story-helper.js +12 -2
  67. package/package.json +2 -2
  68. package/scss/components/AddSelect/_add-select.scss +0 -10
  69. package/scss/components/Datagrid/styles/_datagrid.scss +5 -1
  70. package/scss/components/Datagrid/styles/_useSortableColumns.scss +8 -4
  71. package/scss/components/InlineEditV1/_inline-edit-v1.scss +1 -5
  72. package/scss/components/InlineEditV2/_inline-edit-v2.scss +41 -3
  73. package/scss/components/NonLinearReading/_index.scss +8 -0
  74. package/scss/components/NonLinearReading/_non-linear-reading.scss +157 -0
  75. package/scss/components/NonLinearReading/_storybook-styles.scss +13 -0
  76. package/scss/components/SidePanel/_side-panel.scss +7 -15
  77. package/scss/components/_index.scss +1 -0
@@ -72,16 +72,6 @@
72
72
  justify-content: center;
73
73
  }
74
74
 
75
- &-cell:hover .#{$block-class}__selections-hidden-hover,
76
- .#{$carbon-prefix}--structured-list-row:focus-within
77
- .#{$block-class}__selections-hidden-hover {
78
- visibility: visible;
79
- }
80
-
81
- &-hidden-hover {
82
- visibility: hidden;
83
- }
84
-
85
75
  &-row--selected.#{$carbon-prefix}--structured-list-row {
86
76
  border-bottom: 1px solid $selected-ui;
87
77
  background-color: $selected-ui;
@@ -428,7 +428,7 @@
428
428
  position: relative;
429
429
  width: 100%;
430
430
  max-height: 100%;
431
- overflow-y: scroll;
431
+ overflow-y: auto;
432
432
  }
433
433
 
434
434
  .#{$block-class}__carbon-row-expanded {
@@ -613,3 +613,7 @@
613
613
  padding: 0 $spacing-03;
614
614
  }
615
615
  }
616
+
617
+ .#{$block-class} .#{$pkg-prefix}--datagrid__head-wrap {
618
+ background-color: $ui-03;
619
+ }
@@ -21,7 +21,7 @@
21
21
  .#{$carbon-prefix}--table-header-label .#{$carbon-prefix}--table-sort:active,
22
22
  .#{$carbon-prefix}--table-header-label
23
23
  .#{$carbon-prefix}--table-sort:focus
24
- svg {
24
+ .#{$block-class}__sortable-icon {
25
25
  /* stylelint-disable-next-line declaration-no-important */
26
26
  background: none !important;
27
27
  /* stylelint-disable-next-line declaration-no-important */
@@ -44,7 +44,9 @@
44
44
  color: $text-01 !important;
45
45
  font: inherit;
46
46
  }
47
- .#{$carbon-prefix}--table-header-label .#{$carbon-prefix}--table-sort svg {
47
+ .#{$carbon-prefix}--table-header-label
48
+ .#{$carbon-prefix}--table-sort
49
+ .#{$block-class}__sortable-icon {
48
50
  fill: $text-01;
49
51
  opacity: 0;
50
52
  transition: transform $duration--fast-02 motion(standard, productive);
@@ -60,12 +62,14 @@
60
62
  .#{$block-class}__sortableColumn:hover,
61
63
  .#{$block-class}__sortableColumn:focus-within,
62
64
  .#{$block-class}__sortableColumn.#{$block-class}__isSorted {
63
- .#{$carbon-prefix}--table-header-label svg {
65
+ .#{$carbon-prefix}--table-header-label .#{$block-class}__sortable-icon {
64
66
  opacity: 1;
65
67
  visibility: visible;
66
68
  }
67
69
  }
68
70
 
69
- .#{$block-class}__sortableColumn .#{$block-class}--table-sort--desc svg {
71
+ .#{$block-class}__sortableColumn
72
+ .#{$block-class}--table-sort--desc
73
+ .#{$block-class}__sortable-icon {
70
74
  transform: rotate(180deg);
71
75
  }
@@ -60,7 +60,6 @@
60
60
 
61
61
  &:hover {
62
62
  --#{$block-class}--background-color: #{$hover-field};
63
- // background-color: $background-color;
64
63
  }
65
64
 
66
65
  position: relative;
@@ -116,6 +115,7 @@
116
115
  margin-right: var(--#{$block-class}--toolbar-width);
117
116
  // room for toolbar
118
117
  margin-left: $spacing-05;
118
+ color: $text-01;
119
119
  // stylelint-disable-next-line carbon/type-token-use
120
120
  line-height: var(--#{$block-class}--size);
121
121
 
@@ -206,10 +206,6 @@
206
206
  --#{$block-class}--toolbar-width: calc(3 * var(--#{$block-class}--size));
207
207
  }
208
208
 
209
- .#{$block-class}__toolbar--animation {
210
- // width: ;
211
- }
212
-
213
209
  &.#{$block-class}--editing .#{$block-class}__toolbar::after {
214
210
  // cover top and bottom when focus within block
215
211
  // doing the same on the buttons is problematic when animating
@@ -36,7 +36,7 @@
36
36
  visibility: hidden;
37
37
  }
38
38
 
39
- &-focused {
39
+ &--focused {
40
40
  background: $field-01;
41
41
  outline: 2px solid $focus;
42
42
  }
@@ -50,8 +50,7 @@
50
50
  }
51
51
 
52
52
  &__warning-icon {
53
- /* stylelint-disable-next-line carbon/layout-token-use */
54
- margin-right: 0.4375rem;
53
+ margin: $spacing-03;
55
54
  color: $support-01;
56
55
  }
57
56
 
@@ -81,6 +80,45 @@
81
80
  .#{$block-class}__text-input.#{$carbon-input}:active {
82
81
  outline: none;
83
82
  }
83
+
84
+ .#{$block-class}__toolbar {
85
+ --toolbar-width: #{$spacing-07};
86
+ --toolbar-width-focussed: #{$spacing-10};
87
+
88
+ // animation div
89
+ display: inline-flex;
90
+ overflow: hidden;
91
+ width: var(--toolbar-width);
92
+ }
93
+
94
+ .#{$block-class}--invalid .#{$block-class}__toolbar {
95
+ --toolbar-width: #{$spacing-07};
96
+ --toolbar-width-focussed: #{$spacing-12};
97
+ }
98
+
99
+ @keyframes slide-in {
100
+ 0% {
101
+ overflow: hidden;
102
+ width: var(--toolbar-width);
103
+ }
104
+
105
+ 99% {
106
+ overflow: hidden;
107
+ width: var(--toolbar-width-focussed);
108
+ }
109
+
110
+ 100% {
111
+ overflow: visible;
112
+ width: var(--toolbar-width-focussed);
113
+ }
114
+ }
115
+
116
+ .#{$block-class}--focused .#{$block-class}__toolbar {
117
+ overflow: initial;
118
+ width: var(--toolbar-width-focussed);
119
+
120
+ animation: slide-in $duration--moderate-01 motion(entrance, productive);
121
+ }
84
122
  }
85
123
 
86
124
  @include exports('inline-edit-v2') {
@@ -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 './non-linear-reading';
@@ -0,0 +1,157 @@
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
+ // Standard imports.
9
+ @import '../../global/styles/project-settings';
10
+
11
+ @mixin term-closed-defaults {
12
+ // stylelint-disable-next-line carbon/layout-token-use
13
+ padding: rem(1px) $spacing-03 rem(1px) $spacing-03;
14
+ border: none;
15
+ border-radius: $spacing-04;
16
+ background-color: $interactive-02;
17
+ white-space: nowrap;
18
+
19
+ &:hover {
20
+ background-color: $hover-secondary;
21
+ cursor: pointer;
22
+ }
23
+ }
24
+ @mixin term-open-defaults {
25
+ @include term-closed-defaults();
26
+
27
+ padding-right: 0;
28
+
29
+ svg {
30
+ // stylelint-disable-next-line carbon/layout-token-use
31
+ padding-top: rem(1px);
32
+ margin: 0 $spacing-02 0 $spacing-01;
33
+ vertical-align: text-top;
34
+ }
35
+ }
36
+ @mixin body-defaults {
37
+ @include carbon--type-style('body-long-01');
38
+
39
+ display: block;
40
+ padding: $spacing-03 $spacing-04;
41
+ border-left-width: rem(1.25px);
42
+ border-left-style: solid;
43
+ margin: $spacing-02 0;
44
+ // Novice to pro does not always use Carbon defaults/tokens
45
+ // stylelint-disable-next-line carbon/motion-duration-use, carbon/motion-easing-use
46
+ animation: fade 600ms;
47
+ }
48
+
49
+ // Other Carbon settings.
50
+ // TODO: @import 'carbon-components/scss/globals/grid/grid'; if needed
51
+ // NonLinearReading uses the following Carbon components:
52
+ // TODO: @import(s) of Carbon component styles used by NonLinearReading
53
+ // NonLinearReading uses the following Carbon for IBM Products components:
54
+ // TODO: @import(s) of IBM Products component styles used by NonLinearReading
55
+ // Define all component styles in a mixin which is then exported using
56
+ // the Carbon import-once mechanism.
57
+ @mixin non-linear-reading {
58
+ // The block part of our conventional BEM class names (blockClass__E--M).
59
+ $block-class: #{$pkg-prefix}--non-linear-reading;
60
+
61
+ @keyframes fade {
62
+ 0% {
63
+ opacity: 0;
64
+ }
65
+
66
+ 15% {
67
+ opacity: 0;
68
+ }
69
+
70
+ 100% {
71
+ opacity: 1;
72
+ }
73
+ }
74
+
75
+ .#{$block-class} {
76
+ &__term {
77
+ &-light {
78
+ &--closed {
79
+ @include term-closed-defaults();
80
+
81
+ background-color: $interactive-02;
82
+ color: $inverse-01;
83
+
84
+ &:hover {
85
+ background-color: $hover-secondary;
86
+ }
87
+ }
88
+
89
+ &--open {
90
+ @include term-open-defaults();
91
+
92
+ // Novice to pro does not always use Carbon defaults/tokens
93
+ // stylelint-disable-next-line carbon/theme-token-use
94
+ background-color: $purple-20;
95
+ color: $text-01;
96
+
97
+ &:hover {
98
+ // stylelint-disable-next-line carbon/theme-token-use
99
+ background-color: #dcc7ff;
100
+ }
101
+ }
102
+ }
103
+
104
+ &-dark {
105
+ &--closed {
106
+ @include carbon--theme($carbon--theme--g100, true);
107
+ @include term-closed-defaults();
108
+
109
+ background-color: $interactive-02;
110
+ color: $text-04;
111
+
112
+ &:hover {
113
+ background-color: $hover-secondary;
114
+ }
115
+ }
116
+
117
+ &--open {
118
+ @include carbon--theme($carbon--theme--g100, true);
119
+ @include term-open-defaults();
120
+
121
+ // stylelint-disable-next-line carbon/theme-token-use
122
+ background-color: #491d8b;
123
+ color: $text-04;
124
+
125
+ &:hover {
126
+ // stylelint-disable-next-line carbon/theme-token-use
127
+ background-color: #7f3ae7;
128
+ }
129
+ }
130
+ }
131
+ }
132
+
133
+ &--body {
134
+ &-light {
135
+ @include body-defaults();
136
+
137
+ // stylelint-disable-next-line carbon/theme-token-use
138
+ border-left-color: #6929c4;
139
+ // stylelint-disable-next-line carbon/theme-token-use
140
+ color: #6929c4;
141
+ }
142
+
143
+ &-dark {
144
+ @include carbon--theme($carbon--theme--g100, true);
145
+ @include body-defaults();
146
+
147
+ // stylelint-disable-next-line carbon/theme-token-use
148
+ border-left-color: #d4bbff;
149
+ // stylelint-disable-next-line carbon/theme-token-use
150
+ color: #d4bbff;
151
+ }
152
+ }
153
+ }
154
+ }
155
+ @include exports('non-linear-reading') {
156
+ @include non-linear-reading;
157
+ }
@@ -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
+ @import '../../global/styles/project-settings';
9
+
10
+ // For demo purposes, have text surrounding component match styling in component.
11
+ #root {
12
+ @include carbon--type-style('body-long-01');
13
+ }
@@ -1,5 +1,5 @@
1
1
  //
2
- // Copyright IBM Corp. 2020, 2021
2
+ // Copyright IBM Corp. 2020, 2023
3
3
  //
4
4
  // This source code is licensed under the Apache-2.0 license found in the
5
5
  // LICENSE file in the root directory of this source tree.
@@ -309,19 +309,10 @@ $action-set-block-class: #{$pkg-prefix}--action-set;
309
309
  margin-bottom: $spacing-03;
310
310
  background-color: $ui-01;
311
311
  transition: transform $duration--moderate-01 carbon--motion(standard);
312
- .#{$block-class}__action-toolbar-button {
313
- min-width: 2rem;
314
- &.#{$block-class}__action-toolbar-icon-only-button {
315
- padding: 0;
316
- color: $text-01;
317
- }
318
- &.#{$block-class}__action-toolbar-icon-only-button svg {
319
- margin-left: $spacing-03;
320
- }
321
- &.#{$block-class}__action-toolbar-leading-button {
322
- margin-right: $spacing-03;
323
- }
324
- }
312
+ }
313
+
314
+ .#{$block-class}__action-toolbar-leading-button {
315
+ margin-right: $spacing-03;
325
316
  }
326
317
 
327
318
  .#{$carbon-prefix}--btn.#{$block-class}__navigation-back-button {
@@ -336,6 +327,7 @@ $action-set-block-class: #{$pkg-prefix}--action-set;
336
327
  padding: 0;
337
328
  color: $text-01;
338
329
  }
330
+
339
331
  .#{$carbon-prefix}--btn.#{$block-class}__close-button {
340
332
  position: absolute;
341
333
  z-index: 5;
@@ -344,8 +336,8 @@ $action-set-block-class: #{$pkg-prefix}--action-set;
344
336
  display: flex;
345
337
  align-items: center;
346
338
  justify-content: center;
347
- background-color: $ui-01;
348
339
  }
340
+
349
341
  .#{$carbon-prefix}--btn.#{$block-class}__close-button
350
342
  .#{$carbon-prefix}--btn__icon {
351
343
  margin: 0;
@@ -52,3 +52,4 @@
52
52
 
53
53
  @import './InlineEditV1/index';
54
54
  @import './InlineEditV2/index';
55
+ @import './NonLinearReading/index';