@lucca-front/scss 22.0.0-rc.2 → 22.0.0-rc.4

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 (123) hide show
  1. package/dist/lucca-front.min.css +1 -1
  2. package/package.json +3 -3
  3. package/src/commons/config.scss +26 -27
  4. package/src/commons/utils/a11y.scss +2 -2
  5. package/src/commons/utils/color.scss +15 -6
  6. package/src/commons/utils/highlight-prisme.scss +6 -2
  7. package/src/commons/utils/index.scss +4 -0
  8. package/src/commons/vars.scss +20 -5
  9. package/src/components/activityFeed/component.scss +33 -6
  10. package/src/components/activityFeed/index.scss +4 -4
  11. package/src/components/activityFeed/states.scss +2 -2
  12. package/src/components/activityFeed/vars.scss +2 -2
  13. package/src/components/appLayout/component.scss +6 -3
  14. package/src/components/avatar/component.scss +2 -0
  15. package/src/components/avatar/index.scss +31 -3
  16. package/src/components/avatar/mods.scss +28 -0
  17. package/src/components/box/index.scss +1 -3
  18. package/src/components/box/mods.scss +1 -3
  19. package/src/components/bubbleIcon/index.scss +4 -0
  20. package/src/components/bubbleIcon/mods.scss +9 -1
  21. package/src/components/button/mods.scss +8 -6
  22. package/src/components/button/states.scss +5 -1
  23. package/src/components/calendar/component.scss +33 -20
  24. package/src/components/calendar/index.scss +48 -0
  25. package/src/components/calendar/mods.scss +6 -0
  26. package/src/components/calendar/states.scss +77 -0
  27. package/src/components/calendar/vars.scss +4 -1
  28. package/src/components/callout/mods.scss +1 -1
  29. package/src/components/card/index.scss +1 -3
  30. package/src/components/checkbox/states.scss +1 -1
  31. package/src/components/checkboxField/states.scss +1 -1
  32. package/src/components/code/component.scss +1 -0
  33. package/src/components/color/component.scss +3 -1
  34. package/src/components/color/index.scss +1 -2
  35. package/src/components/comment/component.scss +1 -1
  36. package/src/components/dataTable/component.scss +6 -1
  37. package/src/components/dataTable/index.scss +6 -0
  38. package/src/components/dataTable/mods.scss +4 -0
  39. package/src/components/dateField/index.scss +8 -0
  40. package/src/components/dateField/mods.scss +8 -0
  41. package/src/components/dateField/vars.scss +2 -0
  42. package/src/components/dialog/component.scss +7 -4
  43. package/src/components/dialog/index.scss +8 -2
  44. package/src/components/dialog/mods.scss +11 -3
  45. package/src/components/dialog/vars.scss +3 -0
  46. package/src/components/fieldset/index.scss +4 -0
  47. package/src/components/fieldset/mods.scss +10 -0
  48. package/src/components/fieldset/vars.scss +1 -1
  49. package/src/components/fileEntry/component.scss +2 -2
  50. package/src/components/fileUpload/component.scss +1 -1
  51. package/src/components/filterPill/component.scss +29 -5
  52. package/src/components/filterPill/index.scss +14 -11
  53. package/src/components/filterPill/states.scss +7 -8
  54. package/src/components/filterPill/vars.scss +2 -1
  55. package/src/components/footer/component.scss +1 -0
  56. package/src/components/footer/mods.scss +1 -0
  57. package/src/components/footer/vars.scss +1 -0
  58. package/src/components/form/component.scss +6 -0
  59. package/src/components/form/mods.scss +1 -1
  60. package/src/components/form/vars.scss +1 -1
  61. package/src/components/grid/mods.scss +1 -1
  62. package/src/components/highlightText/component.scss +30 -0
  63. package/src/components/highlightText/exports.scss +4 -0
  64. package/src/components/highlightText/index.scss +8 -0
  65. package/src/components/highlightText/mods.scss +0 -0
  66. package/src/components/highlightText/states.scss +0 -0
  67. package/src/components/highlightText/vars.scss +9 -0
  68. package/src/components/horizontalNavigation/component.scss +23 -1
  69. package/src/components/horizontalNavigation/index.scss +27 -1
  70. package/src/components/horizontalNavigation/mods.scss +14 -0
  71. package/src/components/horizontalNavigation/vars.scss +7 -0
  72. package/src/components/impersonation/component.scss +58 -0
  73. package/src/components/impersonation/exports.scss +4 -0
  74. package/src/components/impersonation/index.scss +22 -0
  75. package/src/components/impersonation/mods.scss +0 -0
  76. package/src/components/impersonation/states.scss +18 -0
  77. package/src/components/impersonation/vars.scss +10 -0
  78. package/src/components/index.scss +2 -0
  79. package/src/components/indexTable/component.scss +4 -0
  80. package/src/components/link/component.scss +3 -0
  81. package/src/components/link/index.scss +9 -0
  82. package/src/components/link/mods.scss +4 -0
  83. package/src/components/link/vars.scss +1 -0
  84. package/src/components/listing/component.scss +2 -2
  85. package/src/components/mobilePush/component.scss +1 -1
  86. package/src/components/multiSelect/component.scss +11 -0
  87. package/src/components/multiSelect/index.scss +8 -2
  88. package/src/components/multiSelect/mods.scss +2 -0
  89. package/src/components/multiSelect/states.scss +10 -2
  90. package/src/components/multiSelect/vars.scss +1 -0
  91. package/src/components/numericBadge/component.scss +0 -2
  92. package/src/components/numericBadge/mods.scss +0 -12
  93. package/src/components/numericBadge/vars.scss +0 -4
  94. package/src/components/popover/component.scss +10 -0
  95. package/src/components/popover/vars.scss +2 -0
  96. package/src/components/presentation/component.scss +1 -0
  97. package/src/components/radio/states.scss +3 -3
  98. package/src/components/radioField/states.scss +3 -3
  99. package/src/components/richText/vars.scss +1 -1
  100. package/src/components/scrollBox/component.scss +2 -0
  101. package/src/components/section/index.scss +1 -3
  102. package/src/components/simpleSelect/index.scss +1 -0
  103. package/src/components/skeleton/component.scss +30 -0
  104. package/src/components/skeleton/mods.scss +2 -2
  105. package/src/components/skeleton/states.scss +3 -3
  106. package/src/components/skeleton/vars.scss +2 -2
  107. package/src/components/skipLinks/component.scss +9 -0
  108. package/src/components/statusBadge/component.scss +1 -1
  109. package/src/components/tableStickedDeprecated/mods.scss +3 -3
  110. package/src/components/tag/component.scss +6 -0
  111. package/src/components/tag/index.scss +5 -0
  112. package/src/components/tag/mods.scss +9 -1
  113. package/src/components/tag/vars.scss +1 -0
  114. package/src/components/textField/component.scss +16 -0
  115. package/src/components/textField/index.scss +12 -0
  116. package/src/components/textField/mods.scss +23 -0
  117. package/src/components/textField/states.scss +6 -0
  118. package/src/components/textFlow/component.scss +2 -0
  119. package/src/components/timepicker/component.scss +32 -8
  120. package/src/components/timepicker/mods.scss +24 -3
  121. package/src/components/timepicker/vars.scss +6 -3
  122. package/src/components/toast/component.scss +1 -0
  123. package/src/components/userPopover/component.scss +1 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lucca-front/scss",
3
- "version": "22.0.0-rc.2",
3
+ "version": "22.0.0-rc.4",
4
4
  "description": "A Sass framework for Lucca products.",
5
5
  "main": "src/main.scss",
6
6
  "scripts": {},
@@ -24,7 +24,7 @@
24
24
  "normalize.css": "^8.0.0"
25
25
  },
26
26
  "peerDependencies": {
27
- "@lucca-front/icons": "22.0.0-rc.2",
28
- "@lucca/prisme": "22.0.0-rc.2"
27
+ "@lucca-front/icons": "22.0.0-rc.4",
28
+ "@lucca/prisme": "22.0.0-rc.4"
29
29
  }
30
30
  }
@@ -109,18 +109,29 @@ $borderRadiusTokens: (
109
109
  'input': var(--pr-t-border-radius-default),
110
110
  );
111
111
 
112
+ $colorAI: orchid, brand;
113
+
114
+ $paletteAI: (
115
+ angle: 'to bottom right',
116
+ color1stop: 0%,
117
+ color2stop: 80%,
118
+ );
119
+
120
+ $tokenAI: (
121
+ border: var(--palettes-ai-300),
122
+ background: var(--palettes-ai-50),
123
+ icon: var(--palettes-ai-600),
124
+ );
125
+
112
126
  $product: 'brand' !default;
113
127
  $palettesShades: text, 0, 25, 50, 100, 200, 300, 400, 500, 600, 700, 800, 900; // text is deprecated
114
128
  $palettesStates: 'critical', 'error', 'warning', 'success', 'successContrasted', 'warningContrasted';
115
- $palettesDefault: 'brand', 'brandContrasted', 'neutral', 'navigation', 'AI';
129
+ $palettesDefault: 'brand', 'brandContrasted', 'neutral', 'navigation', 'orchid';
116
130
  $palettesProduct: 'product';
117
131
  $palettesOtherProduct: () !default;
118
132
  $palettesDecorative: 'kiwi', 'cucumber', 'mint', 'lagoon', 'blueberry', 'lavender', 'watermelon', 'pumpkin' !default;
119
133
  $palettesDecorativeMandatory: 'pineapple', 'lime', 'grape', 'glacier', 'pineappleContrasted';
120
134
 
121
- // pineapple, lime, grape, glacier
122
- $palettesDeprecated: ('lucca', 'grey', 'primary', 'secondary') !default;
123
-
124
135
  @if $palettesOtherProduct == 'all' {
125
136
  $palettesOtherProduct: ('pagga', 'poplee', 'coreHR', 'timmi', 'cleemy', 'cc');
126
137
  }
@@ -132,7 +143,6 @@ $palettesAll: function.flatMap(
132
143
  $palettesOtherProduct,
133
144
  $palettesDecorative,
134
145
  $palettesDecorativeMandatory,
135
- $palettesDeprecated
136
146
  );
137
147
 
138
148
  $palettesAssets: (
@@ -149,9 +159,17 @@ $fieldsWidth: 20, 30, 40, 50, 60 !default;
149
159
 
150
160
  // Palettes
151
161
 
152
- $ai: (
153
- 500: #bc6fdd,
162
+ $orchid: (
163
+ 50: #f9ebff,
164
+ 100: #f3d6ff,
165
+ 200: #edc2ff,
166
+ 300: #de9ff9,
167
+ 400: #cc7ded,
168
+ 500: #b95ae2,
154
169
  600: #a440cf,
170
+ 700: #8133a3,
171
+ 800: #680094,
172
+ 900: #4c006b,
155
173
  );
156
174
 
157
175
  $brand: (
@@ -572,16 +590,12 @@ $productsInterpolation: (
572
590
  );
573
591
 
574
592
  $palettesInterpolation: (
575
- 'AI': $ai,
576
- 'lucca': $brand,
577
593
  'brand': $brand,
578
594
  'brandContrasted': $brandContrasted,
579
- 'grey': $neutral,
580
595
  'neutral': $neutral,
581
- 'primary': map.get($productsInterpolation, $product),
582
- 'secondary': map.get($productsInterpolation, $product),
583
596
  'product': map.get($productsInterpolation, $product),
584
597
  'navigation': $navigation,
598
+ 'orchid': $orchid,
585
599
  'success': $success,
586
600
  'successContrasted': $successContrasted,
587
601
  'error': $critical,
@@ -767,21 +781,6 @@ $textLink: (
767
781
 
768
782
  // Deprecated
769
783
 
770
- // $colors are deprecated
771
- $colors: (
772
- 'white': #ffffff,
773
- 'black': #121212,
774
- );
775
-
776
- // $colorsRgb are deprecated
777
- $colorsRgb: (
778
- 'white': '255, 255, 255',
779
- 'neutral-400': '172, 187, 215',
780
- 'neutral-900': '19, 29, 53',
781
- 'grey-400': '172, 187, 215',
782
- 'grey-900': '19, 29, 53',
783
- ) !default;
784
-
785
784
  // $borderRadius are deprecated
786
785
  $borderRadius: (
787
786
  'M': 4px,
@@ -11,8 +11,8 @@
11
11
  contain: paint #{$suffix};
12
12
  }
13
13
 
14
- @mixin focusVisible($offset: 2px, $borderRadius: false, $color: var(--palettes-700, var(--palettes-product-700))) {
15
- outline: 2px solid $color;
14
+ @mixin focusVisible($offset: 2px, $borderRadius: false, $color: var(--palettes-700, var(--palettes-product-700)), $width: 2px) {
15
+ outline: $width solid $color;
16
16
  outline-offset: $offset;
17
17
 
18
18
  @if $borderRadius != false {
@@ -12,14 +12,18 @@
12
12
  @return color-mix(in $space, $color $amount, transparent);
13
13
  }
14
14
 
15
- @mixin palette($name, $shades: config.$palettesShades, $palette: false) {
15
+ @mixin palette($name: '', $shades: config.$palettesShades, $palette: false) {
16
+ @if $name != '' {
17
+ $name: '-' + $name;
18
+ }
19
+
16
20
  @each $shade in $shades {
17
21
  @if $palette {
18
22
  @if map.get($palette, $shade) {
19
- --palettes-#{$shade}: var(--palettes-#{$name}-#{$shade});
23
+ --palettes-#{$shade}: var(--palettes#{$name}-#{$shade});
20
24
  }
21
25
  } @else {
22
- --palettes-#{$shade}: var(--palettes-#{$name}-#{$shade});
26
+ --palettes-#{$shade}: var(--palettes#{$name}-#{$shade});
23
27
  }
24
28
  }
25
29
  }
@@ -32,14 +36,19 @@
32
36
  @include core.rosetta('--palettes-pineapple', '--palettes-pineappleContrasted', config.$palettesShades);
33
37
  }
34
38
 
35
- @mixin borderGradient($angle: 0, $color1: var(--palettes-neutral-0) , $color2: var(--palettes-neutral-900), $radius: var(--pr-t-border-radius-default), $width: var(--commons-divider-width)) {
36
- &::before {
39
+ @mixin borderGradient(
40
+ $gradient: linear-gradient(to bottom right, var(--palettes-neutral-0), var(--palettes-neutral-900)),
41
+ $radius: var(--pr-t-border-radius-default),
42
+ $width: var(--commons-divider-width),
43
+ $pseudo: '::before',
44
+ ) {
45
+ &#{$pseudo} {
37
46
  content: '';
38
47
  pointer-events: none;
39
48
  position: absolute;
40
49
  inset: calc(#{$width} * -1);
41
50
  padding: #{$width};
42
- background-image: conic-gradient(from #{$angle}, #{$color1}, #{$color2}, #{$color1});
51
+ background-image: #{$gradient};
43
52
  border-radius: calc(#{$radius} + #{$width});
44
53
  mask: linear-gradient(var(--palettes-neutral-0)) content-box, linear-gradient(var(--palettes-neutral-0));
45
54
  mask-composite: exclude;
@@ -26,6 +26,7 @@
26
26
  .textFlow,
27
27
  .mobilePush,
28
28
  .presentation,
29
+ .highlightText,
29
30
 
30
31
  // Lists
31
32
  .chip,
@@ -106,6 +107,7 @@
106
107
  .avatar,
107
108
  .userPopover,
108
109
  .userTile,
110
+ .impersonation,
109
111
 
110
112
  // Loaders
111
113
  .loading,
@@ -142,7 +144,7 @@
142
144
 
143
145
  // Icons
144
146
  lu-bubble-illustration .bubbleIllustration,
145
- lu-bubble-icon .bubbleIcon,
147
+ lu-bubble-icon,
146
148
  lu-software-icon .softwareIcon,
147
149
  lu-icon .lucca-icon,
148
150
 
@@ -158,6 +160,7 @@
158
160
  lu-text-flow,
159
161
  lu-mobile-push,
160
162
  lu-data-presentation,
163
+ lu-highlight-text,
161
164
 
162
165
  // Lists
163
166
  lu-chip,
@@ -239,6 +242,7 @@
239
242
  // Users
240
243
  lu-user-picture,
241
244
  lu-user-tile,
245
+ lu-impersonation,
242
246
 
243
247
  // Loaders
244
248
  lu-loading,
@@ -262,7 +266,7 @@
262
266
  lu-dialog-content,
263
267
  lu-dialog-footer,
264
268
  lu-footer .footer,
265
- lu-horizontal-navigation,
269
+ lu-horizontal-navigation .horizontalNavigation,
266
270
  lu-vertical-navigation,
267
271
  [luDataTableRow] {
268
272
  outline: 2px solid springgreen;
@@ -580,6 +580,10 @@
580
580
  @include core.classes('text-decoration', core.$decoration);
581
581
  @include core.classes('overflow', core.$overflow);
582
582
 
583
+ .pr-u-overflowWrapAnywhere {
584
+ overflow-wrap: anywhere !important;
585
+ }
586
+
583
587
  @media (prefers-reduced-motion: no-preference) {
584
588
  @include core.classes('scroll-behavior', core.$scrollBehavior);
585
589
  }
@@ -69,9 +69,9 @@
69
69
  }
70
70
 
71
71
  // stylelint-disable custom-property-pattern
72
- --palettes-assets-primary-lighter: var(--palettes-#{config.$product}-50, var(--palettes-50));
73
- --palettes-assets-primary-light: var(--palettes-#{config.$product}-100, var(--palettes-100));
74
- --palettes-assets-primary-dark: var(--palettes-#{config.$product}-200, var(--palettes-200));
72
+ --palettes-assets-primary-lighter: var(--palettes-product-50);
73
+ --palettes-assets-primary-light: var(--palettes-product-100);
74
+ --palettes-assets-primary-dark: var(--palettes-product-200);
75
75
  --palettes-assets-brand-lighter: var(--palettes-#{map.get(map.get(config.$palettesAssets, config.$product), 'brand')}-50);
76
76
  --palettes-assets-brand-light: var(--palettes-#{map.get(map.get(config.$palettesAssets, config.$product), 'brand')}-100);
77
77
  --palettes-assets-brand-dark: var(--palettes-#{map.get(map.get(config.$palettesAssets, config.$product), 'brand')}-200);
@@ -79,8 +79,19 @@
79
79
  --palettes-assets-secondary-light: var(--palettes-#{map.get(map.get(config.$palettesAssets, config.$product), 'secondary')}-100);
80
80
  // stylelint-enable custom-property-pattern
81
81
 
82
- @include core.cssvars('colors', config.$colors, '-color');
83
- @include core.cssvars('colors', config.$colorsRgb, '-rgb');
82
+ @include core.cssvars('palettes-ai', config.$paletteAI);
83
+ @include core.cssvars('pr-t-color', config.$tokenAI, '-ai');
84
+
85
+ @each $shade in config.$palettesShades {
86
+ @if $shade != text and $shade != 0 and $shade != 25 {
87
+ --palettes-ai-#{$shade}:
88
+ linear-gradient(
89
+ var(--palettes-ai-angle),
90
+ var(#{'--palettes-'}#{list.nth(config.$colorAI, 1)}-#{$shade}) var(--palettes-ai-color1stop),
91
+ var(#{'--palettes-'}#{list.nth(config.$colorAI, 2)}-#{max($shade - 100, 50)}) var(--palettes-ai-color2stop)
92
+ );
93
+ }
94
+ }
84
95
 
85
96
  --commons-banner-height: 50px;
86
97
  --commons-divider-width: 1px;
@@ -159,4 +170,8 @@
159
170
  @extend %prefersContrastMore;
160
171
  }
161
172
  }
173
+
174
+ body:has(.lucca-banner-wrapper.pr-u-prefersContrastMore) {
175
+ @extend %prefersContrastMore;
176
+ }
162
177
  }
@@ -1,4 +1,5 @@
1
1
  @use '@lucca-front/scss/src/commons/utils/namespace';
2
+ @use '@lucca-front/scss/src/commons/utils/reset';
2
3
 
3
4
  @mixin component($atRoot: namespace.$defaultAtRoot) {
4
5
  list-style-type: '';
@@ -65,18 +66,44 @@
65
66
  display: block;
66
67
  }
67
68
 
68
- .activityFeed-content-update-icon {
69
- display: var(--components-activityFeed-content-update-icon-display);
69
+ .activityFeed-content-update-item-icon {
70
+ display: var(--components-activityFeed-content-update-item-icon-display);
70
71
  }
71
72
 
72
73
  .activityFeed-content-update {
73
- display: var(--components-activityFeed-content-update-display);
74
+ @include reset.list;
75
+
76
+ padding: var(--pr-t-spacings-100) var(--pr-t-spacings-150);
77
+ border-radius: var(--pr-t-border-radius-structure);
78
+ border: 1px solid var(--pr-t-color-input-border);
79
+ display: flex;
80
+ flex-direction: column;
81
+ gap: var(--pr-t-spacings-50);
82
+ }
83
+
84
+ .activityFeed-content-update-item {
85
+ display: var(--components-activityFeed-content-update-item-display);
74
86
  align-items: center;
75
- gap: var(--pr-t-spacings-100);
87
+ gap: var(--pr-t-spacings-75);
88
+ min-block-size: var(--pr-t-spacings-300);
89
+ }
90
+
91
+ .activityFeed-content-update-item-object {
92
+ margin-inline-end: calc(var(--pr-t-spacings-75) * -1);
93
+ color: var(--pr-t-color-text-subtle);
94
+ display: flex;
95
+
96
+ &::after {
97
+ content: ' ';
98
+ }
99
+
100
+ &:empty {
101
+ display: none;
102
+ }
76
103
  }
77
104
 
78
- .activityFeed-content-update-before,
79
- .activityFeed-content-update-after {
105
+ .activityFeed-content-update-item-before,
106
+ .activityFeed-content-update-item-after {
80
107
  display: flex;
81
108
 
82
109
  &:empty {
@@ -34,13 +34,13 @@
34
34
  @include critical;
35
35
  }
36
36
 
37
- .activityFeed-content-update {
38
- &:has(.activityFeed-content-update-before:empty, .activityFeed-content-update-after:empty) {
37
+ .activityFeed-content-update-item {
38
+ &:has(.activityFeed-content-update-item-before:empty, .activityFeed-content-update-item-after:empty) {
39
39
  @include single;
40
40
  }
41
41
 
42
- &:has(.activityFeed-content-update-before:empty) {
43
- &:has(.activityFeed-content-update-after:empty) {
42
+ &:has(.activityFeed-content-update-item-before:empty) {
43
+ &:has(.activityFeed-content-update-item-after:empty) {
44
44
  @include empty;
45
45
  }
46
46
  }
@@ -2,11 +2,11 @@
2
2
  @use '@lucca-front/icons/src/commons/utils/icon';
3
3
 
4
4
  @mixin empty {
5
- --components-activityFeed-content-update-display: none;
5
+ --components-activityFeed-content-update-item-display: none;
6
6
  }
7
7
 
8
8
  @mixin single {
9
- --components-activityFeed-content-update-icon-display: none;
9
+ --components-activityFeed-content-update-item-icon-display: none;
10
10
  }
11
11
 
12
12
  @mixin success {
@@ -1,6 +1,6 @@
1
1
  @mixin vars {
2
- --components-activityFeed-content-update-display: flex;
3
- --components-activityFeed-content-update-icon-display: flex;
2
+ --components-activityFeed-content-update-item-display: flex;
3
+ --components-activityFeed-content-update-item-icon-display: flex;
4
4
  --components-activityFeed-step-description-alignSelf: auto;
5
5
  --components-activityFeed-step-description-fontStyle: normal;
6
6
  --components-activityFeed-step-description-color: inherit;
@@ -2,7 +2,10 @@
2
2
  @use '@lucca-front/scss/src/commons/utils/a11y';
3
3
 
4
4
  @mixin component($atRoot: namespace.$defaultAtRoot) {
5
- block-size: var(--components-appLayout-blockSize);
5
+ @media screen {
6
+ block-size: var(--components-appLayout-blockSize);
7
+ }
8
+
6
9
  inline-size: var(--components-appLayout-inlineSize);
7
10
  grid-template: var(--components-appLayout-gridTemplate);
8
11
  display: grid;
@@ -20,8 +23,8 @@
20
23
  .appLayout-navSide {
21
24
  min-inline-size: 0;
22
25
  grid-area: navSide;
23
- overflow-y: var(--components-appLayout-navSide-overflowX);
24
- overflow-x: var(--components-appLayout-navSide-overflowY);
26
+ overflow-x: var(--components-appLayout-navSide-overflowX);
27
+ overflow-y: var(--components-appLayout-navSide-overflowY);
25
28
 
26
29
  &:focus-visible {
27
30
  @include a11y.focusVisible($offset: -4px);
@@ -80,6 +80,8 @@
80
80
  inline-size: var(--components-avatar-size);
81
81
  block-size: var(--components-avatar-size);
82
82
  font-size: var(--components-avatarWrapper-fontSize);
83
+ border-radius: var(--pr-t-border-radius-full);
84
+ background-color: var(--palettes-neutral-200);
83
85
  }
84
86
  }
85
87
  }
@@ -36,10 +36,38 @@
36
36
  &.mod-placeholder {
37
37
  @include placeholder;
38
38
  }
39
- }
40
39
 
41
- &.mod-AI {
42
- @include AI;
40
+ &.mod-AI {
41
+ @include AI;
42
+ }
43
+
44
+ &.mod-softRounded {
45
+ &.mod-XS {
46
+ @include softRoundedXS;
47
+ }
48
+
49
+ &.mod-S {
50
+ @include softRoundedS;
51
+ }
52
+
53
+ @include softRounded;
54
+
55
+ &.mod-L {
56
+ @include softRoundedL;
57
+ }
58
+
59
+ &.mod-XL {
60
+ @include softRoundedXL;
61
+ }
62
+
63
+ &.mod-XXL {
64
+ @include softRoundedXXL;
65
+ }
66
+
67
+ &.mod-XXXL {
68
+ @include softRoundedXXXL;
69
+ }
70
+ }
43
71
  }
44
72
  }
45
73
 
@@ -102,3 +102,31 @@
102
102
  }
103
103
  }
104
104
  }
105
+
106
+ @mixin softRoundedXXXL {
107
+ --components-avatar-borderRadius: var(--pr-t-border-radius-400);
108
+ }
109
+
110
+ @mixin softRoundedXXL {
111
+ --components-avatar-borderRadius: var(--pr-t-border-radius-300);
112
+ }
113
+
114
+ @mixin softRoundedXL {
115
+ --components-avatar-borderRadius: var(--pr-t-border-radius-300);
116
+ }
117
+
118
+ @mixin softRoundedL {
119
+ --components-avatar-borderRadius: var(--pr-t-border-radius-200);
120
+ }
121
+
122
+ @mixin softRounded {
123
+ --components-avatar-borderRadius: var(--pr-t-border-radius-200);
124
+ }
125
+
126
+ @mixin softRoundedS {
127
+ --components-avatar-borderRadius: var(--pr-t-border-radius-150);
128
+ }
129
+
130
+ @mixin softRoundedXS {
131
+ --components-avatar-borderRadius: var(--pr-t-border-radius-100);
132
+ }
@@ -7,9 +7,7 @@
7
7
  }
8
8
 
9
9
  @layer mods {
10
- // .mod-grey is deprecated
11
- &.mod-neutral,
12
- &.mod-grey {
10
+ &.mod-neutral {
13
11
  @include neutral;
14
12
  }
15
13
 
@@ -35,9 +35,7 @@
35
35
  inset-block-end: var(--components-box-arrow-bottom);
36
36
  inset-inline-start: var(--components-box-arrow-left);
37
37
 
38
- // .mod-grey is deprecated
39
- &.mod-neutral,
40
- &.mod-grey {
38
+ &.mod-neutral {
41
39
  --components-box-arrow-background: var(--palettes-neutral-25);
42
40
  }
43
41
  }
@@ -7,6 +7,10 @@
7
7
  }
8
8
 
9
9
  @layer mods {
10
+ &.mod-XS {
11
+ @include XS;
12
+ }
13
+
10
14
  &.mod-S {
11
15
  @include S;
12
16
  }
@@ -1,10 +1,18 @@
1
1
  @use '@lucca-front/icons/src/icon/exports' as icon;
2
2
 
3
+ @mixin XS {
4
+ --components-bubbleIcon-size: var(--pr-t-spacings-300);
5
+
6
+ .lucca-icon {
7
+ @include icon.XS;
8
+ }
9
+ }
10
+
3
11
  @mixin S {
4
12
  --components-bubbleIcon-size: var(--pr-t-spacings-400);
5
13
 
6
14
  .lucca-icon {
7
- @include icon.XS;
15
+ @include icon.S;
8
16
  }
9
17
  }
10
18
 
@@ -280,10 +280,12 @@
280
280
  @include outlined;
281
281
 
282
282
  &:not(:disabled) {
283
- @include color.borderGradient(135deg, var(--palettes-brand-400), var(--palettes-AI-500));
283
+ @include color.borderGradient($gradient: var(--pr-t-color-border-ai));
284
284
 
285
- &:not(.mod-invert) .lucca-icon {
286
- @include icons.AI;
285
+ &:not(.mod-invert) {
286
+ .lucca-icon {
287
+ @include icons.AI;
288
+ }
287
289
  }
288
290
  }
289
291
  }
@@ -294,9 +296,9 @@
294
296
 
295
297
  background-image:
296
298
  linear-gradient(
297
- 225deg,
298
- color-mix(in srgb, var(--palettes-AI-500) var(--components-button-AI-background-opacity), transparent),
299
- color-mix(in srgb, var(--palettes-brand-400) var(--components-button-AI-background-opacity), transparent)
299
+ var(--palettes-ai-angle),
300
+ color-mix(in srgb, var(--palettes-orchid-300) var(--components-button-AI-background-opacity), transparent),
301
+ color-mix(in srgb, var(--palettes-brand-200) var(--components-button-AI-background-opacity), transparent)
300
302
  );
301
303
 
302
304
  &:hover,
@@ -21,7 +21,6 @@
21
21
 
22
22
  @mixin loading {
23
23
  --components-button-pointerEvents: none;
24
- --components-button-color: transparent;
25
24
  --components-button-userSelect: none;
26
25
  --components-button-boxShadow: none;
27
26
  --components-button-backgroundColor: var(--palettes-500, var(--palettes-product-500));
@@ -29,6 +28,11 @@
29
28
 
30
29
  @include loading.spinner(var(--pr-t-font-body-M-lineHeight));
31
30
 
31
+ &,
32
+ &:disabled {
33
+ --components-button-color: transparent;
34
+ }
35
+
32
36
  .numericBadge {
33
37
  @include numericBadge.state;
34
38
  }