@carbon/ibm-products 1.8.0 → 1.9.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (52) hide show
  1. package/css/index-full-carbon.css +82 -9
  2. package/css/index-full-carbon.css.map +1 -1
  3. package/css/index-full-carbon.min.css +3 -3
  4. package/css/index-full-carbon.min.css.map +1 -1
  5. package/css/index-without-carbon-released-only.css +1 -2
  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 +82 -9
  10. package/css/index-without-carbon.css.map +1 -1
  11. package/css/index-without-carbon.min.css +3 -3
  12. package/css/index-without-carbon.min.css.map +1 -1
  13. package/css/index.css +82 -9
  14. package/css/index.css.map +1 -1
  15. package/css/index.min.css +3 -3
  16. package/css/index.min.css.map +1 -1
  17. package/es/components/AddSelect/AddSelect.js +104 -16
  18. package/es/components/AddSelect/AddSelectBreadcrumbs.js +4 -4
  19. package/es/components/AddSelect/AddSelectColumn.js +21 -0
  20. package/es/components/AddSelect/AddSelectList.js +67 -8
  21. package/es/components/AddSelect/AddSelectSidebar.js +7 -1
  22. package/es/components/DataSpreadsheet/DataSpreadsheet.js +42 -2
  23. package/es/components/DataSpreadsheet/DataSpreadsheetBody.js +194 -10
  24. package/es/components/DataSpreadsheet/createActiveCellFn.js +1 -1
  25. package/es/components/DataSpreadsheet/createCellSelectionArea.js +45 -0
  26. package/es/components/InlineEdit/InlineEdit.js +23 -13
  27. package/es/global/js/utils/DisplayBox.js +31 -0
  28. package/es/global/js/utils/deepCloneObject.js +26 -0
  29. package/lib/components/AddSelect/AddSelect.js +102 -15
  30. package/lib/components/AddSelect/AddSelectBreadcrumbs.js +2 -3
  31. package/lib/components/AddSelect/AddSelectColumn.js +37 -0
  32. package/lib/components/AddSelect/AddSelectList.js +65 -8
  33. package/lib/components/AddSelect/AddSelectSidebar.js +7 -1
  34. package/lib/components/DataSpreadsheet/DataSpreadsheet.js +42 -2
  35. package/lib/components/DataSpreadsheet/DataSpreadsheetBody.js +198 -10
  36. package/lib/components/DataSpreadsheet/createActiveCellFn.js +1 -1
  37. package/lib/components/DataSpreadsheet/createCellSelectionArea.js +56 -0
  38. package/lib/components/InlineEdit/InlineEdit.js +23 -13
  39. package/lib/global/js/utils/DisplayBox.js +46 -0
  40. package/lib/global/js/utils/deepCloneObject.js +37 -0
  41. package/package.json +8 -8
  42. package/scss/components/ActionBar/_storybook-styles.scss +8 -0
  43. package/scss/components/ActionSet/_storybook-styles.scss +1 -3
  44. package/scss/components/AddSelect/_add-select.scss +58 -2
  45. package/scss/components/BreadcrumbWithOverflow/_storybook-styles.scss +8 -0
  46. package/scss/components/ButtonSetWithOverflow/_storybook-styles.scss +8 -0
  47. package/scss/components/DataSpreadsheet/_data-spreadsheet.scss +18 -0
  48. package/scss/components/InlineEdit/_inline-edit.scss +11 -4
  49. package/scss/components/InlineEdit/_storybook-styles.scss +1 -0
  50. package/scss/components/TagSet/_storybook-styles.scss +8 -0
  51. package/scss/components/Tearsheet/_tearsheet.scss +1 -2
  52. package/scss/global/styles/_display-box.scss +62 -0
@@ -47,6 +47,18 @@
47
47
  align-items: center;
48
48
  justify-content: space-between;
49
49
  }
50
+
51
+ &-cell-title {
52
+ display: block;
53
+ color: $text-01;
54
+ }
55
+
56
+ &-cell-subtitle {
57
+ @include carbon--type-style('label-01');
58
+
59
+ display: block;
60
+ color: $text-02;
61
+ }
50
62
  }
51
63
 
52
64
  // sidebar
@@ -65,18 +77,33 @@
65
77
  margin-right: $spacing-03;
66
78
  }
67
79
 
80
+ .#{$block-class}__sidebar-selected-item {
81
+ &-title {
82
+ color: $text-01;
83
+ }
84
+
85
+ &-subtitle {
86
+ @include carbon--type-style('label-01');
87
+
88
+ color: $text-02;
89
+ }
90
+ }
91
+
68
92
  .#{$block-class}__sidebar-body {
69
93
  padding: $spacing-05;
70
94
  }
71
95
 
72
96
  .#{$block-class} .#{$block-class}__sidebar-item-header {
73
97
  @include carbon--type-style('label-01');
98
+
99
+ margin-bottom: $spacing-03;
100
+ color: $text-02;
74
101
  }
75
102
 
76
103
  .#{$block-class} .#{$block-class}__sidebar-item-body {
77
104
  @include carbon--type-style('body-long-01');
78
105
 
79
- margin-bottom: $spacing-03;
106
+ margin-bottom: $spacing-05;
80
107
  }
81
108
 
82
109
  .#{$block-class} .#{$block-class}__sidebar-item-remove-button:hover {
@@ -89,6 +116,23 @@
89
116
  justify-content: space-between;
90
117
  }
91
118
 
119
+ // columns
120
+
121
+ .#{$block-class}__columns {
122
+ display: flex;
123
+ flex-direction: row;
124
+ }
125
+
126
+ .#{$block-class}__columns .#{$block-class}__selections-cell {
127
+ // stylelint-disable-next-line
128
+ padding: 0 $spacing-05 !important;
129
+ }
130
+
131
+ .#{$block-class}__column {
132
+ padding: $spacing-05;
133
+ border-right: $ui-03;
134
+ }
135
+
92
136
  // overrides
93
137
 
94
138
  // the influencer sidebar needs to be even with the buttons
@@ -97,6 +141,10 @@
97
141
  flex: 0 0 50%;
98
142
  }
99
143
 
144
+ .#{$block-class} .#{$tearsheet-class}__header-description {
145
+ color: $text-02;
146
+ }
147
+
100
148
  .#{$block-class} .#{$block-class}__items-label {
101
149
  @include carbon--type-style('productive-heading-01');
102
150
  }
@@ -112,6 +160,10 @@
112
160
  padding-bottom: $spacing-05;
113
161
  }
114
162
 
163
+ .#{$block-class} .#{$carbon-prefix}--radio-button__appearance {
164
+ margin: 0 $spacing-05 0 0;
165
+ }
166
+
115
167
  .#{$block-class}
116
168
  .#{$carbon-prefix}--radio-button-wrapper
117
169
  .#{$carbon-prefix}--radio-button__label {
@@ -122,7 +174,7 @@
122
174
  cursor: pointer;
123
175
  }
124
176
 
125
- .#{$carbon-prefix}--accordion__item {
177
+ .#{$block-class} .#{$carbon-prefix}--accordion__item {
126
178
  &:hover .#{$block-class}__sidebar-accordion-title button {
127
179
  opacity: 1;
128
180
  }
@@ -131,6 +183,10 @@
131
183
  opacity: 0;
132
184
  }
133
185
  }
186
+
187
+ .#{$block-class} .#{$carbon-prefix}--checkbox-label-text {
188
+ padding-left: $spacing-05;
189
+ }
134
190
  }
135
191
 
136
192
  @include exports('add-select') {
@@ -0,0 +1,8 @@
1
+ //
2
+ // Copyright IBM Corp. 2022, 2022
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/display-box';
@@ -0,0 +1,8 @@
1
+ //
2
+ // Copyright IBM Corp. 2022, 2022
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/display-box';
@@ -87,6 +87,7 @@
87
87
  }
88
88
  .#{$block-class}__active-cell--highlight {
89
89
  position: absolute;
90
+ z-index: 2;
90
91
  border: $spacing-01 solid $interactive-01;
91
92
  background-color: transparent;
92
93
  &:focus {
@@ -94,6 +95,23 @@
94
95
  outline: 0;
95
96
  }
96
97
  }
98
+ .#{$block-class}__selection-area--element {
99
+ position: absolute;
100
+ z-index: 2;
101
+ border: 1px solid $interactive-01;
102
+ pointer-events: none;
103
+ &::before {
104
+ position: absolute;
105
+ top: 0;
106
+ left: 0;
107
+ display: block;
108
+ width: 100%;
109
+ height: 100%;
110
+ background-color: $interactive-01;
111
+ content: '';
112
+ opacity: 0.25;
113
+ }
114
+ }
97
115
  }
98
116
  }
99
117
 
@@ -289,12 +289,19 @@
289
289
  }
290
290
  }
291
291
 
292
- .#{$block-class}__edit--hover-visible {
293
- opacity: 0;
294
- transition: opacity $duration--fast-01 motion(entrance, productive);
292
+ @media (hover: hover) {
293
+ // if hover is the primary input mechanism hide edit button
294
+ .#{$block-class}__edit {
295
+ opacity: 0;
296
+ transition: opacity $duration--fast-01 motion(entrance, productive);
297
+ }
298
+
299
+ &:hover .#{$block-class}__edit {
300
+ opacity: 1;
301
+ }
295
302
  }
296
303
 
297
- &:hover .#{$block-class}__edit--hover-visible {
304
+ .#{$block-class}__edit--always-visible {
298
305
  opacity: 1;
299
306
  }
300
307
 
@@ -6,6 +6,7 @@
6
6
  //
7
7
 
8
8
  @import '../../global/styles/project-settings';
9
+ @import '../../global/styles/display-box';
9
10
 
10
11
  .inline-edit-stories__viewport {
11
12
  // width: 300px; // larger than standard size needed by text input at standard font size (html input attribute size)
@@ -0,0 +1,8 @@
1
+ //
2
+ // Copyright IBM Corp. 2022, 2022
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/display-box';
@@ -152,8 +152,7 @@
152
152
  }
153
153
 
154
154
  &.#{$block-class}--wide .#{$block-class}__header--with-close-icon {
155
- padding-right: $spacing-05;
156
- margin-right: $spacing-09;
155
+ padding-right: $spacing-10;
157
156
  }
158
157
 
159
158
  .#{$block-class}__header-content {
@@ -0,0 +1,62 @@
1
+ //
2
+ // Copyright IBM Corp. 2022, 2022
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
+ @import '../../global/styles/project-settings';
8
+
9
+ $block-class: 'ccs-sb--display-box';
10
+
11
+ $indicator-width: $spacing-02;
12
+ $indicator-height: $spacing-04;
13
+
14
+ /**
15
+ Adds a box indicating the extent of the available space to the displayed component
16
+ */
17
+ .#{$block-class} {
18
+ position: relative;
19
+ display: inline-block;
20
+ padding-top: $spacing-05; // space for the indicators
21
+ color: $text-05;
22
+ }
23
+
24
+ .#{$block-class}__indicator {
25
+ position: absolute;
26
+ top: 0;
27
+ width: 100%;
28
+ border-bottom: 1px solid $text-05;
29
+ white-space: nowrap;
30
+ @include carbon--type-style('helper-text-01');
31
+ }
32
+
33
+ .#{$block-class}__message {
34
+ position: absolute;
35
+ bottom: $spacing-02;
36
+ }
37
+
38
+ .sb-main-centered .#{$block-class}__message {
39
+ left: 50%;
40
+ min-width: 100vh;
41
+ text-align: center;
42
+ transform: translateX(-50%);
43
+ }
44
+
45
+ .#{$block-class}__indicator--left,
46
+ .#{$block-class}__indicator--right {
47
+ position: absolute;
48
+ bottom: calc(-1 * $indicator-height);
49
+ width: 0;
50
+ height: 0;
51
+ border-top: $indicator-height solid $text-05;
52
+ border-right: $indicator-width solid transparent;
53
+ border-left: $indicator-width solid transparent;
54
+ }
55
+
56
+ .#{$block-class}__indicator--left {
57
+ left: calc(-1 * $indicator-width);
58
+ }
59
+
60
+ .#{$block-class}__indicator--right {
61
+ right: calc(-1 * $indicator-width);
62
+ }