@carbon/ibm-products 2.43.2-canary.102 → 2.43.2-canary.104

Sign up to get free protection for your applications and to get access to all the features.
Files changed (50) hide show
  1. package/css/index-full-carbon.css +1147 -95
  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.css +1147 -95
  6. package/css/index-without-carbon.css.map +1 -1
  7. package/css/index-without-carbon.min.css +1 -1
  8. package/css/index-without-carbon.min.css.map +1 -1
  9. package/css/index.css +1147 -95
  10. package/css/index.css.map +1 -1
  11. package/css/index.min.css +1 -1
  12. package/css/index.min.css.map +1 -1
  13. package/es/components/ConditionBuilder/ConditionBlock/ConditionBlock.d.ts +1 -0
  14. package/es/components/ConditionBuilder/ConditionBlock/ConditionBlock.js +17 -4
  15. package/es/components/ConditionBuilder/ConditionBuilderAdd/ConditionBuilderAdd.js +2 -2
  16. package/es/components/ConditionBuilder/ConditionBuilderButton/ConditionBuilderButton.js +6 -4
  17. package/es/components/ConditionBuilder/ConditionBuilderConnector/ConditionConnector.js +4 -1
  18. package/es/components/ConditionBuilder/ConditionBuilderContent/ConditionBuilderContent.js +8 -2
  19. package/es/components/ConditionBuilder/ConditionBuilderContext/translationObject.d.ts +3 -0
  20. package/es/components/ConditionBuilder/ConditionBuilderContext/translationObject.js +5 -2
  21. package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItem.js +20 -4
  22. package/es/components/ConditionBuilder/ConditionGroupBuilder/ConditionGroupBuilder.js +15 -7
  23. package/es/components/ConditionBuilder/ConditionPreview/ConditionPreview.d.ts +3 -1
  24. package/es/components/ConditionBuilder/ConditionPreview/ConditionPreview.js +9 -3
  25. package/es/components/ConditionBuilder/utils/handleKeyboardEvents.js +19 -6
  26. package/es/components/EmptyStates/EmptyState.d.ts +72 -5
  27. package/es/components/EmptyStates/EmptyState.js +8 -5
  28. package/es/components/EmptyStates/EmptyStateV2.d.ts +2 -2
  29. package/es/components/EmptyStates/EmptyStateV2.js +1 -1
  30. package/lib/components/ConditionBuilder/ConditionBlock/ConditionBlock.d.ts +1 -0
  31. package/lib/components/ConditionBuilder/ConditionBlock/ConditionBlock.js +16 -3
  32. package/lib/components/ConditionBuilder/ConditionBuilderAdd/ConditionBuilderAdd.js +2 -2
  33. package/lib/components/ConditionBuilder/ConditionBuilderButton/ConditionBuilderButton.js +5 -3
  34. package/lib/components/ConditionBuilder/ConditionBuilderConnector/ConditionConnector.js +4 -1
  35. package/lib/components/ConditionBuilder/ConditionBuilderContent/ConditionBuilderContent.js +8 -2
  36. package/lib/components/ConditionBuilder/ConditionBuilderContext/translationObject.d.ts +3 -0
  37. package/lib/components/ConditionBuilder/ConditionBuilderContext/translationObject.js +5 -2
  38. package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItem.js +20 -4
  39. package/lib/components/ConditionBuilder/ConditionGroupBuilder/ConditionGroupBuilder.js +15 -7
  40. package/lib/components/ConditionBuilder/ConditionPreview/ConditionPreview.d.ts +3 -1
  41. package/lib/components/ConditionBuilder/ConditionPreview/ConditionPreview.js +9 -3
  42. package/lib/components/ConditionBuilder/utils/handleKeyboardEvents.js +19 -6
  43. package/lib/components/EmptyStates/EmptyState.d.ts +72 -5
  44. package/lib/components/EmptyStates/EmptyState.js +8 -5
  45. package/lib/components/EmptyStates/EmptyStateV2.d.ts +2 -2
  46. package/lib/components/EmptyStates/EmptyStateV2.js +1 -1
  47. package/package.json +3 -3
  48. package/scss/components/ConditionBuilder/_condition-builder.scss +3 -0
  49. package/scss/components/ConditionBuilder/styles/_conditionBuilderCondition.scss +11 -2
  50. package/scss/components/ConditionBuilder/styles/_conditionBuilderItem.scss +41 -31
@@ -1,4 +1,5 @@
1
1
  @use 'sass:list';
2
+ @use 'sass:math';
2
3
  @use 'sass:string';
3
4
  @use '@carbon/react/scss/theme' as *;
4
5
  @use '../../../global/styles/project-settings' as c4p-settings;
@@ -167,21 +168,11 @@ $block-class: #{c4p-settings.$pkg-prefix}--condition-builder;
167
168
  }
168
169
  //need to revamp to a simpler logic
169
170
  $colors: (
170
- ($purple-70, $purple-60, $purple-50, $purple-40, $purple-30, $purple-20),
171
- ($cyan-70, $cyan-60, $cyan-50, $cyan-40, $cyan-30, $cyan-20),
172
- ($teal-70, $teal-60, $teal-50, $teal-40, $teal-30, $teal-20),
173
- (
174
- $magenta-70,
175
- $magenta-60,
176
- $magenta-50,
177
- $magenta-40,
178
- $magenta-30,
179
- $magenta-20
180
- ),
181
- ($red-70, $red-60, $red-50, $red-40, $red-30, $red-20),
182
- ($orange-70, $orange-60, $orange-50, $orange-40, $orange-30, $orange-20),
183
- ($yellow-70, $yellow-60, $yellow-50, $yellow-40, $yellow-30, $yellow-20),
184
- ($green-70, $green-60, $green-50, $green-40, $green-30, $green-20)
171
+ ($purple-70, $purple-60, $purple-50, $purple-40, $purple-30),
172
+ ($blue-70, $blue-60, $blue-50, $blue-40, $blue-30),
173
+ ($cyan-70, $cyan-60, $cyan-50, $cyan-40, $cyan-30),
174
+ ($teal-70, $teal-60, $teal-50, $teal-40, $teal-30),
175
+ ($green-70, $green-60, $green-50, $green-40, $green-30)
185
176
  );
186
177
 
187
178
  @for $i from 1 through list.length($colors) {
@@ -191,10 +182,30 @@ $colors: (
191
182
  )
192
183
  );
193
184
  $group-colors: list.nth($colors, $i);
194
- @each $color in $group-colors {
185
+ $group-colors-length: list.length($group-colors);
186
+
187
+ //this is to select and add color to the new group preview
188
+ .#{$block-class}__group-preview[data-color-index='#{($i%list.length($colors))}']
189
+ button {
190
+ /* stylelint-disable-next-line carbon/theme-token-use */
191
+ $next-group-color: list.nth($colors, ($i%list.length($colors)) +1);
192
+ /* stylelint-disable-next-line carbon/theme-token-use */
193
+ box-shadow: inset 0 #{$spacing-01} 0 0 list.nth($next-group-color, 1);
194
+ }
195
+
196
+ //we need to select the group color from the $colors array and need to repeat the colors after $colors.length subgroups
197
+ @for $el-index from 1 through 50 {
198
+ $item-index: $el-index;
199
+ /* stylelint-disable-next-line carbon/theme-token-use */
200
+ $item-index: ((($item-index - 1) % $group-colors-length) +1);
195
201
  #{$selector} {
196
- /* stylelint-disable-next-line carbon/theme-token-use */
197
- --#{$block-class}__condition-wrapper-color: #{$color};
202
+ @if $item-index != 1 {
203
+ /* stylelint-disable-next-line carbon/theme-token-use */
204
+ --#{$block-class}__condition-wrapper-color: #{list.nth(
205
+ $group-colors,
206
+ $item-index
207
+ )}; // stylelint-disable-line carbon/theme-token-use
208
+ }
198
209
  }
199
210
 
200
211
  $selector: list.append(
@@ -211,13 +222,12 @@ $colors: (
211
222
  .#{$block-class}__groupConnector {
212
223
  background-color: $layer;
213
224
  }
214
- .#{$block-class}__condition-wrapper > :nth-child(1) .#{$block-class}__button,
215
- .#{$block-class}__condition-wrapper
225
+ .#{$block-class}__condition-wrapper:not(.#{$block-class}__group-preview)
226
+ > :nth-child(1)
227
+ .#{$block-class}__button,
228
+ .#{$block-class}__condition-wrapper:not(.#{$block-class}__group-preview)
216
229
  > :nth-child(2)
217
- .#{$block-class}__button:not(
218
- .#{$block-class}__add-button,
219
- .#{$block-class}__add-condition-sub-group
220
- ) {
230
+ .#{$block-class}__button {
221
231
  /* stylelint-disable-next-line carbon/theme-token-use */
222
232
  box-shadow: inset 0 #{$spacing-01} 0 0 var(--#{$block-class}__condition-wrapper-color);
223
233
  }
@@ -237,24 +247,24 @@ $colors: (
237
247
  .#{$block-class}__add-condition-sub-group-wrapper {
238
248
  z-index: -1;
239
249
  width: 0;
240
- margin-left: -50%;
241
- opacity: 0;
242
250
  pointer-events: none;
251
+ transform: translateX(-100%);
243
252
  // stylelint-disable-next-line carbon/motion-duration-use, carbon/motion-easing-use
244
- transition: all linear $duration-fast-02;
253
+ transition: transform motion(exit, productive) $duration-fast-02;
245
254
  }
246
255
  .#{$block-class}__add-condition-sub-group-wrapper--show {
247
256
  z-index: 0;
248
257
  width: auto;
249
- margin-left: 0;
250
- opacity: 1;
251
258
  pointer-events: all;
252
- // stylelint-disable-next-line carbon/motion-duration-use, carbon/motion-easing-use
253
- transition: all linear $duration-fast-02;
259
+ transform: translateX(0);
254
260
  }
255
261
  .#{$block-class}__invalid-input {
256
262
  display: flex;
257
263
  }
258
264
  .#{$block-class}__invalid-input > svg {
259
265
  color: $support-warning;
266
+ /* stylelint-disable max-nesting-depth */
267
+ > path:first-child {
268
+ fill: $icon-primary;
269
+ }
260
270
  }