@lucca-front/scss 21.2.0 → 21.2.1-rc.1

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lucca-front/scss",
3
- "version": "21.2.0",
3
+ "version": "21.2.1-rc.1",
4
4
  "description": "A Sass framework for Lucca products.",
5
5
  "main": "src/main.scss",
6
6
  "scripts": {},
@@ -23,7 +23,7 @@
23
23
  "normalize.css": "^8.0.0"
24
24
  },
25
25
  "peerDependencies": {
26
- "@lucca-front/icons": "21.2.0",
27
- "@lucca/prisme": "21.2.0"
26
+ "@lucca-front/icons": "21.2.1-rc.1",
27
+ "@lucca/prisme": "21.2.1-rc.1"
28
28
  }
29
29
  }
@@ -3,7 +3,7 @@
3
3
 
4
4
  @use '@lucca-front/scss/src/commons/function';
5
5
 
6
- $layers: 'reset, base, components, mods, product, utils' !default;
6
+ $layers: 'reset, base, components, mods, product, utils';
7
7
 
8
8
  $isNamespaced: false !default;
9
9
  $deprecatedSpacings: false !default;
@@ -30,8 +30,11 @@
30
30
  // Lists
31
31
  .chip,
32
32
  .indexTable,
33
+ .indexTable-body-row,
33
34
  .sortableList,
34
35
  .listing,
36
+ .activityFeed,
37
+ .activityFeed-step,
35
38
 
36
39
  // Forms
37
40
  .calendar,
@@ -48,7 +51,6 @@
48
51
  .fieldset,
49
52
  .fileUpload,
50
53
  .fileEntry,
51
- .fileToolbar,
52
54
  .formLabel,
53
55
  .inlineMessage,
54
56
  .inputFramed,
@@ -72,17 +74,15 @@
72
74
  .mobileNavigation,
73
75
  .navside,
74
76
  .pagination,
77
+ .progressStepper,
75
78
  .segmentedControl,
76
79
  .skipLinks,
77
- .horizontalNavigation,
78
80
  .timeline,
79
81
  .tableOfContent,
80
- .verticalNavigation,
81
82
 
82
83
  // Overlays
83
84
  .popover,
84
85
  .dropdown,
85
- .dialog,
86
86
  .tooltip,
87
87
 
88
88
  // Structure
@@ -94,7 +94,6 @@
94
94
  .fancyBox,
95
95
  .filterPill,
96
96
  .filterBar,
97
- .footer,
98
97
  .grid,
99
98
  .highlightData,
100
99
  .mobileHeader,
@@ -111,7 +110,6 @@
111
110
  // Loaders
112
111
  .loading,
113
112
  .progress,
114
- .skeleton,
115
113
 
116
114
  // Misc & oldies
117
115
  .scrollBox,
@@ -126,19 +124,25 @@
126
124
 
127
125
  // HTML COMPONENTS INSIDE
128
126
 
129
- .dataTable {
127
+ .dialog,
128
+ .dataTable-head-row,
129
+ .dataTable-body-row,
130
+ .dataTable-foot-row,
131
+ .footer,
132
+ .horizontalNavigation,
133
+ .verticalNavigation {
130
134
  outline: 2px dashed springgreen;
131
135
  outline-offset: -3px;
132
136
  }
133
137
 
134
- // ANGULAR COMPONENTS
138
+ // ANGULAR COMPONENTS OUTSIDE
135
139
 
136
140
  [luButton],
137
141
  [luLink],
138
142
 
139
143
  // Icons
140
- lu-bubble-illustration,
141
- lu-bubble-icon,
144
+ lu-bubble-illustration .bubbleIllustration,
145
+ lu-bubble-icon .bubbleIcon,
142
146
  lu-software-icon .softwareIcon,
143
147
  lu-icon .lucca-icon,
144
148
 
@@ -147,7 +151,7 @@
147
151
  lu-comment,
148
152
  lu-new-badge,
149
153
  lu-numeric-badge,
150
- lu-plg-push,
154
+ lu-plg-push .plgPush,
151
155
  lu-read-more,
152
156
  lu-status-badge,
153
157
  lu-tag .tag,
@@ -158,15 +162,19 @@
158
162
  // Lists
159
163
  lu-chip,
160
164
  [luChip],
161
- lu-data-table .dataTable,
162
165
  lu-index-table,
166
+ [luindextablerow],
163
167
  lu-sortable-list .sortableList,
164
168
  lu-listing-item,
169
+ lu-activity-feed,
170
+ lu-activity-feed-step,
165
171
 
166
172
  // Forms
173
+ [luFormLabel],
167
174
  lu-form-field,
175
+ [luFormLabel],
168
176
  lu-color-input,
169
- lu-text-input,
177
+ lu-text-input .textField,
170
178
  lu-checkbox-input,
171
179
  lu-switch-input,
172
180
  lu-radio-input,
@@ -177,9 +185,9 @@
177
185
  lu-duration-picker,
178
186
  [luForm],
179
187
  lu-fieldset,
180
- lu-single-file-upload,
181
- lu-multi-file-upload,
182
- lu-file-entry,
188
+ lu-single-file-upload .fileUpload,
189
+ lu-multi-file-upload .fileUpload,
190
+ lu-file-entry .fileEntry,
183
191
  lu-inline-message,
184
192
  lu-input-framed,
185
193
  lu-rich-text-input,
@@ -192,6 +200,7 @@
192
200
  lu-callout-disclosure,
193
201
  lu-callout-popover,
194
202
  lu-callout-feedback-list,
203
+ lu-error-page,
195
204
  lu-gauge .gauge,
196
205
  lu-toasts,
197
206
 
@@ -199,19 +208,15 @@
199
208
  lu-breadcrumbs,
200
209
  lu-mobile-navigation,
201
210
  lu-pagination,
211
+ lu-progress-stepper,
202
212
  lu-segmented-control,
203
213
  lu-skip-links,
204
- lu-horizontal-navigation,
205
214
  lu-table-of-content,
206
- lu-vertical-navigation,
207
215
 
208
216
  // Overlays
209
217
  lu-popover-content,
218
+ lu-dropdown-menu .dropdown,
210
219
  lu-dropdown-item,
211
- lu-dialog,
212
- lu-dialog-header,
213
- lu-dialog-content,
214
- lu-dialog-footer,
215
220
  lu-tooltip-panel,
216
221
 
217
222
  // Structure
@@ -219,11 +224,10 @@
219
224
  lu-container,
220
225
  lu-divider,
221
226
  lu-empty-state-page,
222
- lu-empty-state-section,
227
+ lu-empty-state-section .emptyState,
223
228
  lu-fancy-box,
224
229
  lu-filter-pill,
225
230
  lu-filter-bar,
226
- lu-footer,
227
231
  lu-grid,
228
232
  lu-highlight-data,
229
233
  lu-mobile-header,
@@ -251,6 +255,20 @@
251
255
  outline-offset: 3px;
252
256
  }
253
257
 
258
+ // ANGULAR COMPONENTS INSIDE
259
+
260
+ lu-dialog,
261
+ lu-dialog-header,
262
+ lu-dialog-content,
263
+ lu-dialog-footer,
264
+ lu-footer .footer,
265
+ lu-horizontal-navigation,
266
+ lu-vertical-navigation,
267
+ [luDataTableRow] {
268
+ outline: 2px solid springgreen;
269
+ outline-offset: -4px;
270
+ }
271
+
254
272
  // DEPRECATED COMPONENTS
255
273
 
256
274
  .checkbox,
@@ -49,6 +49,7 @@
49
49
  display: flex;
50
50
  gap: var(--pr-t-spacings-75);
51
51
  margin-block-start: var(--components-callout-content-description-action-marginBlockStart);
52
+ margin-block-end: var(--components-callout-content-description-action-marginBlockEnd);
52
53
  padding-block: var(--components-callout-content-description-action-paddingBlock);
53
54
  padding-inline: 0;
54
55
  }
@@ -21,6 +21,10 @@
21
21
 
22
22
  &:has(.callout-content-description-actions.mod-inline) {
23
23
  @include actionsInline;
24
+
25
+ &.mod-S {
26
+ @include actionsInlineS;
27
+ }
24
28
  }
25
29
  }
26
30
  }
@@ -1,5 +1,6 @@
1
1
  @use '@lucca-front/icons/src/icon/exports' as icons;
2
2
  @use '@lucca-front/scss/src/commons/utils/color';
3
+ @use '@lucca-front/scss/src/commons/utils/a11y';
3
4
  @use '@lucca-front/scss/src/components/button/exports' as button;
4
5
 
5
6
  @mixin S {
@@ -47,6 +48,13 @@
47
48
  @include color.palette('neutral');
48
49
  @include button.S;
49
50
 
51
+ &.mod-outlined,
52
+ &.mod-ghost {
53
+ &:focus-visible {
54
+ @include a11y.focusVisible($offset: 3px, $color: var(--palettes-product-700));
55
+ }
56
+ }
57
+
50
58
  &.mod-onlyIcon {
51
59
  @include button.onlyIconS;
52
60
  }
@@ -66,3 +74,8 @@
66
74
  }
67
75
  }
68
76
  }
77
+
78
+ @mixin actionsInlineS {
79
+ --components-callout-content-description-action-marginBlockStart: calc(var(--pr-t-spacings-25) * -1);
80
+ --components-callout-content-description-action-marginBlockEnd: calc(var(--pr-t-spacings-25) * -1);
81
+ }
@@ -8,6 +8,7 @@
8
8
  --components-callout-backgroundColor: var(--palettes-50, var(--palettes-neutral-50));
9
9
  --components-callout-content-description-display: block;
10
10
  --components-callout-content-description-action-marginBlockStart: var(--pr-t-spacings-50);
11
+ --components-callout-content-description-action-marginBlockEnd: 0;
11
12
  --components-callout-content-description-action-paddingBlock: var(--pr-t-spacings-50);
12
13
 
13
14
  // Deprecated
@@ -40,7 +40,7 @@
40
40
  }
41
41
 
42
42
  &.mod-start {
43
- --components-dateRangeField-content-width: calc(50% - var(--pr-t-spacings-250));
43
+ --components-dateRangeField-content-width: calc(50% - var(--pr-t-spacings-300) - var(--pr-t-spacings-50));
44
44
  --components-dateRangeField-content-inlineEnd: var(--pr-t-spacings-250);
45
45
  }
46
46
  }
@@ -145,7 +145,7 @@
145
145
  .dialog-inside-content {
146
146
  background-color: var(--components-dialog-insideContent-background);
147
147
  padding-block: var(--components-dialog-insideContent-paddingBlock);
148
- padding-inline: var(--pr-t-spacings-300);
148
+ padding-inline: var(--components-dialog-insideContent-paddingInline);
149
149
  grid-area: overflow;
150
150
  overflow: auto;
151
151
  outline: none;
@@ -98,23 +98,29 @@
98
98
  @mixin fancy {
99
99
  // padding and minimum height are in pixels because they correspond to the size of the image
100
100
  --components-dialog-inside-paddingInlineEnd: 224px;
101
- --components-dialog-minBlockSize: 288px;
101
+ --components-dialog-minBlockSize: calc(288px + var(--pr-t-spacings-400));
102
102
  --components-dialog-inside-gridTemplateRows: auto auto auto;
103
103
  --components-dialog-inside-alignContent: center;
104
104
  --components-dialog-inside-header-boxShadow: none;
105
105
  --components-dialog-inside-header-position: static;
106
106
  --components-dialog-inside-header-paddingBlock: var(--pr-t-spacings-200) 0;
107
- --components-dialog-insideContent-paddingBlock: var(--pr-t-spacings-50) var(--pr-t-spacings-200);
108
107
  --components-dialog-inside-header-button-position: absolute;
109
108
  --components-dialog-inside-header-button-insetBlockStart: var(--pr-t-spacings-100);
110
109
  --components-dialog-inside-header-button-insetInlineEnd: var(--pr-t-spacings-100);
110
+ --components-dialog-insideContent-paddingBlock: var(--pr-t-spacings-50) var(--pr-t-spacings-200);
111
+ --components-dialog-inside-header-paddingInline: var(--pr-t-spacings-700) var(--pr-t-spacings-400);
112
+ --components-dialog-insideContent-paddingInline: var(--pr-t-spacings-700) var(--pr-t-spacings-400);
111
113
 
112
114
  .dialog-inside-footer {
113
- @include footer.fancy;
115
+ --components-footer-actions-margin: 0;
116
+ --components-footer-boxShadow: none;
117
+ --components-footer-paddingBlock: 0 var(--pr-t-spacings-150);
118
+ --components-footer-overflow: visible;
119
+ --components-footer-paddingInline: var(--pr-t-spacings-700) var(--pr-t-spacings-400);
114
120
  }
115
121
 
116
122
  .dialog-inside-header {
117
- @include header.fancy;
123
+ --components-header-position: static;
118
124
  }
119
125
 
120
126
  .dialog-inside-header-button.button {
@@ -126,12 +132,19 @@
126
132
  @mixin fancySmall {
127
133
  // padding and minimum height are in pixels because they correspond to the size of the image
128
134
  --components-dialog-inside-paddingInlineEnd: 168px;
129
- --components-dialog-minBlockSize: 216px;
135
+ --components-dialog-minBlockSize: calc(216px + var(--pr-t-spacings-400));
130
136
  }
131
137
 
132
138
  @mixin fancyNarrow {
133
139
  --components-dialog-inside-header-paddingBlock: var(--pr-t-spacings-200);
134
- --components-dialog-inside-header-paddingInline: var(--pr-t-spacings-300) calc(var(--pr-t-spacings-800) + var(--pr-t-spacings-250));
140
+ --components-dialog-inside-header-paddingInline: var(--pr-t-spacings-150) calc(var(--pr-t-spacings-800) + var(--pr-t-spacings-250));
135
141
  --components-dialog-inside-paddingInlineEnd: 0px;
136
142
  --components-dialog-minBlockSize: 0px;
143
+ --components-dialog-insideContent-paddingInline: var(--pr-t-spacings-150);
144
+ --components-dialog-inside-header-button-insetBlockStart: calc(var(--pr-t-spacings-150) + var(--pr-t-spacings-25));
145
+ --components-dialog-inside-header-button-insetInlineEnd: var(--pr-t-spacings-150);
146
+
147
+ .dialog-inside-footer {
148
+ --components-footer-paddingInline: var(--pr-t-spacings-150);
149
+ }
137
150
  }
@@ -15,6 +15,8 @@
15
15
  --components-dialog-insideHeaderLinkDisplay: none;
16
16
  --components-dialog-insideHeaderColumns: 1fr auto;
17
17
  --components-dialog-insideContent-background: transparent;
18
+ --components-dialog-insideContent-paddingInline: var(--pr-t-spacings-300);
19
+ --components-dialog-insideContent-paddingBlock: var(--pr-t-spacings-200);
18
20
  --components-dialog-level: 0;
19
21
  --components-dialog-translate-spacing: var(--pr-t-spacings-500);
20
22
  --components-dialog-translate: calc(var(--components-dialog-translate-spacing) * var(--components-dialog-level) * -1);
@@ -25,7 +27,6 @@
25
27
  --components-dialog-inside-header-position: relative;
26
28
  --components-dialog-inside-header-paddingBlock: var(--pr-t-spacings-200);
27
29
  --components-dialog-inside-header-paddingInline: var(--pr-t-spacings-300);
28
- --components-dialog-insideContent-paddingBlock: var(--pr-t-spacings-200);
29
30
  --components-dialog-inside-header-button-position: static;
30
31
  --components-dialog-inside-backgroundImage: none;
31
32
  --components-dialog-minBlockSize: 0px;
@@ -10,13 +10,6 @@
10
10
  --components-footer-actions-margin: 0;
11
11
  }
12
12
 
13
- @mixin fancy {
14
- --components-footer-actions-margin: 0;
15
- --components-footer-boxShadow: none;
16
- --components-footer-paddingBlock: 0 var(--pr-t-spacings-150);
17
- --components-footer-overflow: visible;
18
- }
19
-
20
13
  @mixin insideDialog {
21
14
  --components-footer-paddingInline: var(--pr-t-spacings-300);
22
15
  --commons-container-padding: 0;
@@ -24,8 +24,3 @@
24
24
  inset-block-start: var(--commons-navSide-mobile-toggle-height);
25
25
  }
26
26
  }
27
-
28
- @mixin fancy {
29
- --components-header-position: static;
30
- --components-header-padding: var(--pr-t-spacings-100) var(--pr-t-spacings-200) 0;
31
- }
@@ -263,11 +263,11 @@
263
263
  margin-inline-end: var(--pr-t-spacings-100);
264
264
  }
265
265
  }
266
- }
267
266
 
268
- .indexTableWrapper-pagination {
269
- &:empty {
270
- display: none;
267
+ .indexTableWrapper-pagination {
268
+ &:empty {
269
+ display: none;
270
+ }
271
271
  }
272
272
  }
273
273
 
@@ -124,6 +124,7 @@
124
124
  .richTextField-content-placeholder {
125
125
  position: absolute;
126
126
  pointer-events: none;
127
+ inset-block-start: 0;
127
128
  padding: var(--pr-t-spacings-100);
128
129
  user-select: none;
129
130
  color: var(--components-richTextField-placeholder-color);