lightning-base-components 1.22.1-alpha → 1.22.2-alpha
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/metadata/raptor.json +7 -0
- package/package.json +1 -1
- package/src/lightning/accordionSection/button.slds.css +8 -0
- package/src/lightning/baseCombobox/dropdown.slds.css +7 -7
- package/src/lightning/baseCombobox/input-text.slds.css +7 -6
- package/src/lightning/button/button.slds.css +8 -0
- package/src/lightning/buttonIcon/button-icon.slds.css +13 -5
- package/src/lightning/buttonIcon/buttonIcon.js +29 -26
- package/src/lightning/buttonIconStateful/button-icon.slds.css +13 -5
- package/src/lightning/buttonIconStateful/button.slds.css +8 -0
- package/src/lightning/buttonMenu/button-icon.slds.css +13 -5
- package/src/lightning/buttonMenu/button.slds.css +8 -0
- package/src/lightning/buttonMenu/dropdown.slds.css +7 -7
- package/src/lightning/buttonStateful/button.slds.css +8 -0
- package/src/lightning/calendar/calendar.lbc.native.css +1 -0
- package/src/lightning/calendar/calendar.slds.css +13 -10
- package/src/lightning/calendar/dropdown.slds.css +7 -7
- package/src/lightning/colorPickerCustom/input-text.slds.css +7 -6
- package/src/lightning/colorPickerPanel/colorPickerPanel.js +1 -11
- package/src/lightning/combobox/combobox.html +1 -1
- package/src/lightning/combobox/form-element.slds.css +1 -1
- package/src/lightning/datatable/autoWidthStrategy.js +32 -44
- package/src/lightning/datatable/columns.js +4 -1
- package/src/lightning/datatable/datatable.js +7 -8
- package/src/lightning/datatable/keyboard.js +2 -2
- package/src/lightning/datatable/rows.js +2 -1
- package/src/lightning/datepicker/form-element.slds.css +1 -1
- package/src/lightning/datepicker/input-text.slds.css +7 -6
- package/src/lightning/datetimepicker/form-element.slds.css +1 -1
- package/src/lightning/datetimepicker/input-text.slds.css +7 -6
- package/src/lightning/dualListbox/form-element.slds.css +1 -1
- package/src/lightning/groupedCombobox/form-element.slds.css +1 -1
- package/src/lightning/groupedCombobox/groupedCombobox.js +21 -28
- package/src/lightning/groupedCombobox/input-text.slds.css +7 -6
- package/src/lightning/helptext/button-icon.slds.css +13 -5
- package/src/lightning/helptext/form-element.slds.css +1 -1
- package/src/lightning/helptext/helptext.html +2 -1
- package/src/lightning/helptext/helptext.js +0 -12
- package/src/lightning/input/form-element.slds.css +1 -1
- package/src/lightning/inputAddress/form-element.slds.css +1 -1
- package/src/lightning/inputAddress/input-text.slds.css +7 -6
- package/src/lightning/inputLocation/form-element.slds.css +1 -1
- package/src/lightning/inputLocation/input-text.slds.css +7 -6
- package/src/lightning/inputName/form-element.slds.css +1 -1
- package/src/lightning/inputName/input-text.slds.css +7 -6
- package/src/lightning/interactiveDialogBase/button.slds.css +8 -0
- package/src/lightning/lookupAddress/form-element.slds.css +1 -1
- package/src/lightning/pillContainer/button.slds.css +8 -0
- package/src/lightning/primitiveBubble/primitiveBubble.js +9 -4
- package/src/lightning/primitiveColorpickerButton/color-picker-button.slds.css +1 -1
- package/src/lightning/primitiveHeaderActions/primitiveHeaderActions.html +1 -0
- package/src/lightning/primitiveInputCheckbox/form-element.slds.css +1 -1
- package/src/lightning/primitiveInputCheckboxButton/form-element.slds.css +1 -1
- package/src/lightning/primitiveInputColor/form-element.slds.css +1 -1
- package/src/lightning/primitiveInputColor/input-text.slds.css +7 -6
- package/src/lightning/primitiveInputFile/button.slds.css +8 -0
- package/src/lightning/primitiveInputFile/form-element.slds.css +1 -1
- package/src/lightning/primitiveInputSimple/form-element.slds.css +1 -1
- package/src/lightning/primitiveInputSimple/input-text.slds.css +7 -6
- package/src/lightning/primitiveInputToggle/form-element.slds.css +1 -1
- package/src/lightning/prompt/form-element.slds.css +1 -1
- package/src/lightning/prompt/input-text.slds.css +7 -6
- package/src/lightning/radioGroup/form-element.slds.css +1 -1
- package/src/lightning/select/form-element.slds.css +1 -1
- package/src/lightning/select/select.slds.css +1 -1
- package/src/lightning/sldsUtilsThemes/sldsUtilsThemes.css +6 -4
- package/src/lightning/tabBar/tab-bar.slds.css +17 -3
- package/src/lightning/textarea/form-element.slds.css +1 -1
- package/src/lightning/timepicker/form-element.slds.css +1 -1
- package/src/lightning/toast/button-icon.slds.css +13 -5
- package/src/lightning/tooltipLibrary/tooltipLibrary.js +15 -4
- package/src/lightning/utilsPrivate/utilsPrivate.js +4 -4
- package/src/lightning/verticalNavigationOverflow/button.slds.css +8 -0
|
@@ -5,7 +5,7 @@ import labelDoneButton from '@salesforce/label/LightningColorPicker.doneButton';
|
|
|
5
5
|
import { api, track } from 'lwc';
|
|
6
6
|
import LightningShadowBaseClass from 'lightning/shadowBaseClassPrivate';
|
|
7
7
|
import { classSet } from 'lightning/utils';
|
|
8
|
-
import { keyCodes
|
|
8
|
+
import { keyCodes } from 'lightning/utilsPrivate';
|
|
9
9
|
|
|
10
10
|
const i18n = {
|
|
11
11
|
cancelButton: labelCancelButton,
|
|
@@ -26,16 +26,6 @@ export default class LightningColorPickerPanel extends LightningShadowBaseClass
|
|
|
26
26
|
this._selectedColor = this.currentColor || DEFAULT_COLOR;
|
|
27
27
|
}
|
|
28
28
|
|
|
29
|
-
renderedCallback() {
|
|
30
|
-
// W-14600421 bug fix: prevent panel from falling outside user focus,
|
|
31
|
-
// like when viewports are too small
|
|
32
|
-
if (isCSR && typeof document.body.scrollIntoView === 'function') {
|
|
33
|
-
this.template
|
|
34
|
-
.querySelector('lightning-color-picker-custom')
|
|
35
|
-
.scrollIntoView();
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
|
|
39
29
|
get i18n() {
|
|
40
30
|
return i18n;
|
|
41
31
|
}
|
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
variant={variant}></lightning-base-combobox>
|
|
35
35
|
</div>
|
|
36
36
|
<template if:true={_helpMessage}>
|
|
37
|
-
<div id="help-text" data-help-text class="slds-form-element__help" aria-live="
|
|
37
|
+
<div id="help-text" data-help-text class="slds-form-element__help" aria-live="polite">{_helpMessage}</div>
|
|
38
38
|
</template>
|
|
39
39
|
</div>
|
|
40
40
|
</template>
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
hyphens: auto;
|
|
47
47
|
display: inline-block;
|
|
48
48
|
color: var(--slds-g-color-on-surface-2);
|
|
49
|
-
font-size: var(--slds-g-font-scale-neg-
|
|
49
|
+
font-size: var(--slds-s-label-font-size, var(--slds-g-font-scale-neg-2));
|
|
50
50
|
padding-inline-end: var(--slds-g-spacing-2);
|
|
51
51
|
padding-block-start: var(--slds-g-spacing-1);
|
|
52
52
|
margin-block-end: calc(var(--slds-g-spacing-1) / 2);
|
|
@@ -19,27 +19,27 @@ function getTotalColumnWidth(columnWidths) {
|
|
|
19
19
|
}
|
|
20
20
|
|
|
21
21
|
/**
|
|
22
|
-
* Determines
|
|
22
|
+
* Determines the new width of a column of after removing a set amount
|
|
23
23
|
*
|
|
24
24
|
* @param {Number} currentWidth The current width of the column in pixels
|
|
25
25
|
* @param {Number} widthToRemove The proposed amount of width to remove in pixels
|
|
26
26
|
* @param {Number} minColumnWidth The minimum width the column can be in pixels
|
|
27
|
-
* @returns {
|
|
27
|
+
* @returns {Number} The new width of the column in pixels
|
|
28
28
|
*/
|
|
29
|
-
function
|
|
30
|
-
return currentWidth - widthToRemove
|
|
29
|
+
function getReducedWidth(currentWidth, widthToRemove, minColumnWidth) {
|
|
30
|
+
return Math.max(currentWidth - widthToRemove, minColumnWidth);
|
|
31
31
|
}
|
|
32
32
|
|
|
33
33
|
/**
|
|
34
|
-
* Determines
|
|
34
|
+
* Determines the new width of a column of after adding a set amount
|
|
35
35
|
*
|
|
36
36
|
* @param {Number} currentWidth The current width of the column in pixels
|
|
37
|
-
* @param {Number}
|
|
37
|
+
* @param {Number} widthToRemove The proposed amount of width to add in pixels
|
|
38
38
|
* @param {Number} maxColumnWidth The maximum width the column can be in pixels
|
|
39
|
-
* @returns {
|
|
39
|
+
* @returns {Number} The new width of the column in pixels
|
|
40
40
|
*/
|
|
41
|
-
function
|
|
42
|
-
return currentWidth + widthToAdd
|
|
41
|
+
function getEnlargedWidth(currentWidth, widthToAdd, maxColumnWidth) {
|
|
42
|
+
return Math.min(currentWidth + widthToAdd, maxColumnWidth);
|
|
43
43
|
}
|
|
44
44
|
|
|
45
45
|
/**
|
|
@@ -397,17 +397,13 @@ export class AutoWidthStrategy {
|
|
|
397
397
|
for (let i = 0; i < colsWithMinWidthLength; i += 1) {
|
|
398
398
|
const colIndex = colsWithMinWidth[i];
|
|
399
399
|
const currentWidth = columnWidths[colIndex];
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
const newWidth = currentWidth + extraWidthPerColumn;
|
|
408
|
-
columnWidthsSum += extraWidthPerColumn;
|
|
409
|
-
columnWidths[colIndex] = newWidth;
|
|
410
|
-
}
|
|
400
|
+
const newWidth = getEnlargedWidth(
|
|
401
|
+
currentWidth,
|
|
402
|
+
extraWidthPerColumn,
|
|
403
|
+
maxColumnWidth
|
|
404
|
+
);
|
|
405
|
+
columnWidthsSum += newWidth - currentWidth;
|
|
406
|
+
columnWidths[colIndex] = newWidth;
|
|
411
407
|
}
|
|
412
408
|
}
|
|
413
409
|
|
|
@@ -428,16 +424,13 @@ export class AutoWidthStrategy {
|
|
|
428
424
|
for (let colIndex = 0; colIndex < colCount; colIndex += 1) {
|
|
429
425
|
const col = columns[colIndex];
|
|
430
426
|
const currentWidth = columnWidths[colIndex];
|
|
431
|
-
if (
|
|
432
|
-
|
|
433
|
-
canAddWidth(
|
|
427
|
+
if (!getColumnWidth(col)) {
|
|
428
|
+
const newWidth = getEnlargedWidth(
|
|
434
429
|
currentWidth,
|
|
435
430
|
extraWidthPerColumn,
|
|
436
431
|
maxColumnWidth
|
|
437
|
-
)
|
|
438
|
-
|
|
439
|
-
const newWidth = currentWidth + extraWidthPerColumn;
|
|
440
|
-
columnWidthsSum += extraWidthPerColumn;
|
|
432
|
+
);
|
|
433
|
+
columnWidthsSum += newWidth - currentWidth;
|
|
441
434
|
columnWidths[colIndex] = newWidth;
|
|
442
435
|
}
|
|
443
436
|
}
|
|
@@ -474,17 +467,13 @@ export class AutoWidthStrategy {
|
|
|
474
467
|
for (let i = 0, { length } = colsWithMaxWidth; i < length; i += 1) {
|
|
475
468
|
const colIndex = colsWithMaxWidth[i];
|
|
476
469
|
const currentWidth = columnWidths[colIndex];
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
const newWidth = currentWidth - extraWidthPerColumn;
|
|
485
|
-
columnWidthsSum -= extraWidthPerColumn;
|
|
486
|
-
columnWidths[colIndex] = newWidth;
|
|
487
|
-
}
|
|
470
|
+
const newWidth = getReducedWidth(
|
|
471
|
+
currentWidth,
|
|
472
|
+
extraWidthPerColumn,
|
|
473
|
+
minColumnWidth
|
|
474
|
+
);
|
|
475
|
+
columnWidthsSum -= currentWidth - newWidth;
|
|
476
|
+
columnWidths[colIndex] = newWidth;
|
|
488
477
|
}
|
|
489
478
|
}
|
|
490
479
|
|
|
@@ -508,15 +497,14 @@ export class AutoWidthStrategy {
|
|
|
508
497
|
const currentWidth = columnWidths[colIndex];
|
|
509
498
|
if (
|
|
510
499
|
!colsWithMinWidth.includes(colIndex) &&
|
|
511
|
-
!getColumnWidth(col)
|
|
512
|
-
|
|
500
|
+
!getColumnWidth(col)
|
|
501
|
+
) {
|
|
502
|
+
const newWidth = getReducedWidth(
|
|
513
503
|
currentWidth,
|
|
514
504
|
extraWidthPerColumn,
|
|
515
505
|
minColumnWidth
|
|
516
|
-
)
|
|
517
|
-
|
|
518
|
-
const newWidth = currentWidth - extraWidthPerColumn;
|
|
519
|
-
columnWidthsSum -= extraWidthPerColumn;
|
|
506
|
+
);
|
|
507
|
+
columnWidthsSum -= currentWidth - newWidth;
|
|
520
508
|
columnWidths[colIndex] = newWidth;
|
|
521
509
|
}
|
|
522
510
|
}
|
|
@@ -273,11 +273,14 @@ export function setColumns(state, rawColumns, types) {
|
|
|
273
273
|
}
|
|
274
274
|
|
|
275
275
|
// partially inline updateHeaderInternalActions from datatable/headerActions
|
|
276
|
+
// change alignment for last col and second-to-last col when last col is
|
|
277
|
+
// has a fixedWith under 100 (this includes action columns)
|
|
276
278
|
const { actions } = normCol;
|
|
277
279
|
normCol.actions = {
|
|
278
280
|
menuAlignment:
|
|
279
281
|
normCol.isLastCol ||
|
|
280
|
-
normalizedColumns[colIndex + 1].type === 'action'
|
|
282
|
+
normalizedColumns[colIndex + 1].type === 'action' ||
|
|
283
|
+
normalizedColumns[colIndex + 1].fixedWidth < 100
|
|
281
284
|
? 'auto-right'
|
|
282
285
|
: 'auto-left',
|
|
283
286
|
customerActions: Array.isArray(actions) ? actions : [],
|
|
@@ -622,14 +622,11 @@ export default class LightningDatatable extends LightningElement {
|
|
|
622
622
|
this.getWrapperHeight,
|
|
623
623
|
value
|
|
624
624
|
);
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
this.
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
true
|
|
631
|
-
);
|
|
632
|
-
}
|
|
625
|
+
this._renderManager.updateViewportRendering(
|
|
626
|
+
this.state,
|
|
627
|
+
this.gridContainer,
|
|
628
|
+
true
|
|
629
|
+
);
|
|
633
630
|
this._renderConfig = value;
|
|
634
631
|
}
|
|
635
632
|
}
|
|
@@ -1101,6 +1098,8 @@ export default class LightningDatatable extends LightningElement {
|
|
|
1101
1098
|
|
|
1102
1099
|
this._columnWidthManager = new ColumnWidthManager(this.widthsData);
|
|
1103
1100
|
this._privateTypes = new DatatableTypes(this.constructor.customTypes);
|
|
1101
|
+
this._hasSetInitialCustomTypes =
|
|
1102
|
+
!!this._privateTypes.privateCustomTypes.size;
|
|
1104
1103
|
|
|
1105
1104
|
this._renderManager = new RenderManager();
|
|
1106
1105
|
this.getWrapperHeight = () => getScrollerX(this.template).offsetHeight;
|
|
@@ -481,10 +481,10 @@ export function reactToKeyboardOnRow(dt, event) {
|
|
|
481
481
|
reactToArrowRightOnRow(dt, state, template, event);
|
|
482
482
|
break;
|
|
483
483
|
case ARROW_UP:
|
|
484
|
-
reactToArrowUpOnRow(
|
|
484
|
+
reactToArrowUpOnRow(state, template, event);
|
|
485
485
|
break;
|
|
486
486
|
case ARROW_DOWN:
|
|
487
|
-
reactToArrowDownOnRow(
|
|
487
|
+
reactToArrowDownOnRow(state, template, event);
|
|
488
488
|
break;
|
|
489
489
|
default:
|
|
490
490
|
break;
|
|
@@ -404,7 +404,8 @@ export function updateCell(state, rowIndex, colIndex) {
|
|
|
404
404
|
cell.typeAttribute0 = getRowNumberError(rowErrors, cell.scopeColValue);
|
|
405
405
|
}
|
|
406
406
|
|
|
407
|
-
|
|
407
|
+
const cellAttributes = getCellAttributesValues(col);
|
|
408
|
+
let cellClass = resolveAttributeValue(cellAttributes.class, rowData) || '';
|
|
408
409
|
if (cell.hasTreeData && !cellClass) {
|
|
409
410
|
cellClass += (cellClass.length ? ' ' : '') + TREE__ITEM_CLASS;
|
|
410
411
|
}
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
hyphens: auto;
|
|
47
47
|
display: inline-block;
|
|
48
48
|
color: var(--slds-g-color-on-surface-2);
|
|
49
|
-
font-size: var(--slds-g-font-scale-neg-
|
|
49
|
+
font-size: var(--slds-s-label-font-size, var(--slds-g-font-scale-neg-2));
|
|
50
50
|
padding-inline-end: var(--slds-g-spacing-2);
|
|
51
51
|
padding-block-start: var(--slds-g-spacing-1);
|
|
52
52
|
margin-block-end: calc(var(--slds-g-spacing-1) / 2);
|
|
@@ -246,7 +246,7 @@
|
|
|
246
246
|
--sds-c-inputtext-text-color: var(--slds-c-inputtext-text-color);
|
|
247
247
|
--sds-c-inputtext-font-size: var(
|
|
248
248
|
--slds-c-inputtext-font-size,
|
|
249
|
-
var(--slds-g-font-
|
|
249
|
+
var(--slds-g-font-size-base)
|
|
250
250
|
);
|
|
251
251
|
--sds-c-inputtext-text-color-placeholder: var(
|
|
252
252
|
--slds-c-inputtext-text-color-placeholder,
|
|
@@ -264,7 +264,7 @@
|
|
|
264
264
|
|
|
265
265
|
display: flex;
|
|
266
266
|
flex-wrap: wrap;
|
|
267
|
-
|
|
267
|
+
flex-direction: column;
|
|
268
268
|
}
|
|
269
269
|
/**
|
|
270
270
|
* Input Container
|
|
@@ -371,6 +371,10 @@
|
|
|
371
371
|
--sds-c-inputtext-color-border: var(--slds-g-color-border-disabled-1);
|
|
372
372
|
--sds-c-inputtext-text-color: var(--slds-g-color-on-disabled-2);
|
|
373
373
|
}
|
|
374
|
+
:host([data-render-mode="shadow"][disabled]) [part='input-text'] {
|
|
375
|
+
--sds-c-inputtext-text-color-placeholder:
|
|
376
|
+
var(--slds-g-color-on-disabled-2);
|
|
377
|
+
}
|
|
374
378
|
/**
|
|
375
379
|
* Label
|
|
376
380
|
*
|
|
@@ -384,10 +388,7 @@
|
|
|
384
388
|
--slds-c-inputtext-label-color,
|
|
385
389
|
var(--slds-g-color-on-surface-2)
|
|
386
390
|
);
|
|
387
|
-
font-size: var(
|
|
388
|
-
--slds-c-inputtext-label-font-size,
|
|
389
|
-
var(--slds-g-font-scale-neg-3)
|
|
390
|
-
);
|
|
391
|
+
font-size: var(--slds-s-label-font-size, var(--slds-g-font-scale-neg-2));
|
|
391
392
|
margin-block-end: var(--slds-g-sizing-1);
|
|
392
393
|
|
|
393
394
|
/* We inline flex to control the spacing between elements and not have to rely on whitespace characters */
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
hyphens: auto;
|
|
47
47
|
display: inline-block;
|
|
48
48
|
color: var(--slds-g-color-on-surface-2);
|
|
49
|
-
font-size: var(--slds-g-font-scale-neg-
|
|
49
|
+
font-size: var(--slds-s-label-font-size, var(--slds-g-font-scale-neg-2));
|
|
50
50
|
padding-inline-end: var(--slds-g-spacing-2);
|
|
51
51
|
padding-block-start: var(--slds-g-spacing-1);
|
|
52
52
|
margin-block-end: calc(var(--slds-g-spacing-1) / 2);
|
|
@@ -246,7 +246,7 @@
|
|
|
246
246
|
--sds-c-inputtext-text-color: var(--slds-c-inputtext-text-color);
|
|
247
247
|
--sds-c-inputtext-font-size: var(
|
|
248
248
|
--slds-c-inputtext-font-size,
|
|
249
|
-
var(--slds-g-font-
|
|
249
|
+
var(--slds-g-font-size-base)
|
|
250
250
|
);
|
|
251
251
|
--sds-c-inputtext-text-color-placeholder: var(
|
|
252
252
|
--slds-c-inputtext-text-color-placeholder,
|
|
@@ -264,7 +264,7 @@
|
|
|
264
264
|
|
|
265
265
|
display: flex;
|
|
266
266
|
flex-wrap: wrap;
|
|
267
|
-
|
|
267
|
+
flex-direction: column;
|
|
268
268
|
}
|
|
269
269
|
/**
|
|
270
270
|
* Input Container
|
|
@@ -371,6 +371,10 @@
|
|
|
371
371
|
--sds-c-inputtext-color-border: var(--slds-g-color-border-disabled-1);
|
|
372
372
|
--sds-c-inputtext-text-color: var(--slds-g-color-on-disabled-2);
|
|
373
373
|
}
|
|
374
|
+
:host([data-render-mode="shadow"][disabled]) [part='input-text'] {
|
|
375
|
+
--sds-c-inputtext-text-color-placeholder:
|
|
376
|
+
var(--slds-g-color-on-disabled-2);
|
|
377
|
+
}
|
|
374
378
|
/**
|
|
375
379
|
* Label
|
|
376
380
|
*
|
|
@@ -384,10 +388,7 @@
|
|
|
384
388
|
--slds-c-inputtext-label-color,
|
|
385
389
|
var(--slds-g-color-on-surface-2)
|
|
386
390
|
);
|
|
387
|
-
font-size: var(
|
|
388
|
-
--slds-c-inputtext-label-font-size,
|
|
389
|
-
var(--slds-g-font-scale-neg-3)
|
|
390
|
-
);
|
|
391
|
+
font-size: var(--slds-s-label-font-size, var(--slds-g-font-scale-neg-2));
|
|
391
392
|
margin-block-end: var(--slds-g-sizing-1);
|
|
392
393
|
|
|
393
394
|
/* We inline flex to control the spacing between elements and not have to rely on whitespace characters */
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
hyphens: auto;
|
|
47
47
|
display: inline-block;
|
|
48
48
|
color: var(--slds-g-color-on-surface-2);
|
|
49
|
-
font-size: var(--slds-g-font-scale-neg-
|
|
49
|
+
font-size: var(--slds-s-label-font-size, var(--slds-g-font-scale-neg-2));
|
|
50
50
|
padding-inline-end: var(--slds-g-spacing-2);
|
|
51
51
|
padding-block-start: var(--slds-g-spacing-1);
|
|
52
52
|
margin-block-end: calc(var(--slds-g-spacing-1) / 2);
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
hyphens: auto;
|
|
47
47
|
display: inline-block;
|
|
48
48
|
color: var(--slds-g-color-on-surface-2);
|
|
49
|
-
font-size: var(--slds-g-font-scale-neg-
|
|
49
|
+
font-size: var(--slds-s-label-font-size, var(--slds-g-font-scale-neg-2));
|
|
50
50
|
padding-inline-end: var(--slds-g-spacing-2);
|
|
51
51
|
padding-block-start: var(--slds-g-spacing-1);
|
|
52
52
|
margin-block-end: calc(var(--slds-g-spacing-1) / 2);
|
|
@@ -382,10 +382,7 @@ export default class LightningGroupedCombobox extends LightningShadowBaseClass {
|
|
|
382
382
|
this.interactingState.enter();
|
|
383
383
|
this._expandPillContainer = true;
|
|
384
384
|
|
|
385
|
-
|
|
386
|
-
this._hasFocus = true;
|
|
387
|
-
this.dispatchEvent(new CustomEvent('focus'));
|
|
388
|
-
}
|
|
385
|
+
this.dispatchEvent(new CustomEvent('focus'));
|
|
389
386
|
}
|
|
390
387
|
|
|
391
388
|
handlePillsFocus() {
|
|
@@ -401,36 +398,32 @@ export default class LightningGroupedCombobox extends LightningShadowBaseClass {
|
|
|
401
398
|
}
|
|
402
399
|
|
|
403
400
|
handleBlur() {
|
|
404
|
-
this._hasFocus = false;
|
|
405
|
-
|
|
406
401
|
// Once https://github.com/salesforce/lwc/issues/444 is fixed, consider switching to
|
|
407
402
|
// `onfocusout` and `event.relatedTarget` to determine whether the focus stayed in the component,
|
|
408
403
|
// this way the use of async blur can be avoided.
|
|
409
404
|
// eslint-disable-next-line @lwc/lwc/no-async-operation
|
|
410
405
|
requestAnimationFrame(() => {
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
pillContainer.scrollTop = 0;
|
|
430
|
-
}
|
|
406
|
+
this.interactingState.leave();
|
|
407
|
+
|
|
408
|
+
this.dispatchEvent(new CustomEvent('blur'));
|
|
409
|
+
if (this.pills && this.pills.length > 0) {
|
|
410
|
+
// Sometimes (involves focusing on lower pills) the pill container scrolls and the top
|
|
411
|
+
// line with the "+ n more" button does not show so we have to manually scroll to the top.
|
|
412
|
+
// We need to figure a better solution for this.
|
|
413
|
+
// eslint-disable-next-line @lwc/lwc/no-async-operation
|
|
414
|
+
requestAnimationFrame(() => {
|
|
415
|
+
if (this._connected) {
|
|
416
|
+
// If a new pill has been added but the markup-conditional hasn't had a chance to
|
|
417
|
+
// initialize the pill container, and causes a null gack. Adding a quick safety
|
|
418
|
+
// check here to avoid this case
|
|
419
|
+
const pillContainer = this.template.querySelector(
|
|
420
|
+
'lightning-pill-container'
|
|
421
|
+
);
|
|
422
|
+
if (pillContainer) {
|
|
423
|
+
pillContainer.scrollTop = 0;
|
|
431
424
|
}
|
|
432
|
-
}
|
|
433
|
-
}
|
|
425
|
+
}
|
|
426
|
+
});
|
|
434
427
|
}
|
|
435
428
|
});
|
|
436
429
|
}
|
|
@@ -246,7 +246,7 @@
|
|
|
246
246
|
--sds-c-inputtext-text-color: var(--slds-c-inputtext-text-color);
|
|
247
247
|
--sds-c-inputtext-font-size: var(
|
|
248
248
|
--slds-c-inputtext-font-size,
|
|
249
|
-
var(--slds-g-font-
|
|
249
|
+
var(--slds-g-font-size-base)
|
|
250
250
|
);
|
|
251
251
|
--sds-c-inputtext-text-color-placeholder: var(
|
|
252
252
|
--slds-c-inputtext-text-color-placeholder,
|
|
@@ -264,7 +264,7 @@
|
|
|
264
264
|
|
|
265
265
|
display: flex;
|
|
266
266
|
flex-wrap: wrap;
|
|
267
|
-
|
|
267
|
+
flex-direction: column;
|
|
268
268
|
}
|
|
269
269
|
/**
|
|
270
270
|
* Input Container
|
|
@@ -371,6 +371,10 @@
|
|
|
371
371
|
--sds-c-inputtext-color-border: var(--slds-g-color-border-disabled-1);
|
|
372
372
|
--sds-c-inputtext-text-color: var(--slds-g-color-on-disabled-2);
|
|
373
373
|
}
|
|
374
|
+
:host([data-render-mode="shadow"][disabled]) [part='input-text'] {
|
|
375
|
+
--sds-c-inputtext-text-color-placeholder:
|
|
376
|
+
var(--slds-g-color-on-disabled-2);
|
|
377
|
+
}
|
|
374
378
|
/**
|
|
375
379
|
* Label
|
|
376
380
|
*
|
|
@@ -384,10 +388,7 @@
|
|
|
384
388
|
--slds-c-inputtext-label-color,
|
|
385
389
|
var(--slds-g-color-on-surface-2)
|
|
386
390
|
);
|
|
387
|
-
font-size: var(
|
|
388
|
-
--slds-c-inputtext-label-font-size,
|
|
389
|
-
var(--slds-g-font-scale-neg-3)
|
|
390
|
-
);
|
|
391
|
+
font-size: var(--slds-s-label-font-size, var(--slds-g-font-scale-neg-2));
|
|
391
392
|
margin-block-end: var(--slds-g-sizing-1);
|
|
392
393
|
|
|
393
394
|
/* We inline flex to control the spacing between elements and not have to rely on whitespace characters */
|
|
@@ -299,6 +299,14 @@ Licensed under BSD 3-Clause - see LICENSE.txt or git.io/sfdc-license */
|
|
|
299
299
|
--sds-c-button-color-border-disabled: var(--slds-g-color-border-disabled-1);
|
|
300
300
|
--sds-c-button-text-color-disabled: var(--slds-g-color-on-disabled-1);
|
|
301
301
|
--sds-c-button-color-background-disabled: var(--slds-g-color-disabled-container-1);
|
|
302
|
+
|
|
303
|
+
/**
|
|
304
|
+
* Needed to override
|
|
305
|
+
* `pointer-event: none` coming from sds
|
|
306
|
+
* that prevent tooltip from showing
|
|
307
|
+
*/
|
|
308
|
+
pointer-events: auto;
|
|
309
|
+
cursor: default;
|
|
302
310
|
}
|
|
303
311
|
/**
|
|
304
312
|
* A note about fallbacks on the default variant:
|
|
@@ -545,19 +553,19 @@ Licensed under BSD 3-Clause - see LICENSE.txt or git.io/sfdc-license */
|
|
|
545
553
|
--sds-c-button-color-border-disabled: var(--slds-g-color-border-disabled-1);
|
|
546
554
|
}
|
|
547
555
|
/* slds-icon interaction states */
|
|
548
|
-
:host([data-render-mode="shadow"]) [part~='button-icon']:
|
|
556
|
+
:host([data-render-mode="shadow"]) [part~='button-icon']:hover {
|
|
549
557
|
--slds-c-icon-color-foreground: var(
|
|
550
|
-
--slds-c-buttonicon-color-foreground-hover,
|
|
558
|
+
--slds-c-buttonicon-color-foreground-hover,
|
|
551
559
|
var(--slds-g-color-accent-3)
|
|
552
560
|
);
|
|
553
561
|
}
|
|
554
|
-
:host([data-render-mode="shadow"]) [part~='button-icon']:
|
|
562
|
+
:host([data-render-mode="shadow"]) [part~='button-icon']:focus {
|
|
555
563
|
--slds-c-icon-color-foreground: var(
|
|
556
564
|
--slds-c-buttonicon-color-foreground-focus,
|
|
557
565
|
var(--slds-g-color-accent-3)
|
|
558
566
|
);
|
|
559
567
|
}
|
|
560
|
-
:host([data-render-mode="shadow"]) [part~='button-icon']:
|
|
568
|
+
:host([data-render-mode="shadow"]) [part~='button-icon']:active {
|
|
561
569
|
--slds-c-icon-color-foreground: var(
|
|
562
570
|
--slds-c-buttonicon-color-foreground-active,
|
|
563
571
|
var(--slds-g-color-accent-3)
|
|
@@ -635,7 +643,7 @@ Licensed under BSD 3-Clause - see LICENSE.txt or git.io/sfdc-license */
|
|
|
635
643
|
|
|
636
644
|
/* Icon */
|
|
637
645
|
--slds-c-buttonicon-color-foreground: var(--slds-g-color-neutral-base-100);
|
|
638
|
-
--slds-c-buttonicon-color-foreground-hover: var(--slds-g-color-
|
|
646
|
+
--slds-c-buttonicon-color-foreground-hover: color-mix(in oklab, var(--slds-g-color-on-surface-inverse-1), transparent 25%);
|
|
639
647
|
--slds-c-buttonicon-color-foreground-focus: var(--slds-g-color-neutral-base-95);
|
|
640
648
|
--slds-c-buttonicon-color-foreground-active: var(--slds-g-color-neutral-base-90);
|
|
641
649
|
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
hyphens: auto;
|
|
47
47
|
display: inline-block;
|
|
48
48
|
color: var(--slds-g-color-on-surface-2);
|
|
49
|
-
font-size: var(--slds-g-font-scale-neg-
|
|
49
|
+
font-size: var(--slds-s-label-font-size, var(--slds-g-font-scale-neg-2));
|
|
50
50
|
padding-inline-end: var(--slds-g-spacing-2);
|
|
51
51
|
padding-block-start: var(--slds-g-spacing-1);
|
|
52
52
|
margin-block-end: calc(var(--slds-g-spacing-1) / 2);
|
|
@@ -5,9 +5,10 @@
|
|
|
5
5
|
icon-class={computedIconClass}
|
|
6
6
|
variant={computedButtonVariant}
|
|
7
7
|
alternative-text={alternativeText}
|
|
8
|
+
disable-alternative-text-title
|
|
8
9
|
tooltip={content}
|
|
9
|
-
onprivatebuttoniconregister={handleButtonIconRegister}
|
|
10
10
|
tabindex={tabIndex}
|
|
11
|
+
tooltip-type="toggle"
|
|
11
12
|
></lightning-button-icon>
|
|
12
13
|
</div>
|
|
13
14
|
</template>
|
|
@@ -3,7 +3,6 @@ import { api, track } from 'lwc';
|
|
|
3
3
|
import LightningShadowBaseClass from 'lightning/shadowBaseClassPrivate';
|
|
4
4
|
import { isValidName } from 'lightning/iconUtils';
|
|
5
5
|
import { normalizeString } from 'lightning/utilsPrivate';
|
|
6
|
-
import { TooltipType } from 'lightning/tooltipLibrary';
|
|
7
6
|
|
|
8
7
|
const DEFAULT_BUTTON_ALT_TEXT = labelButtonAlternativeText;
|
|
9
8
|
const DEFAULT_ICON_NAME = 'utility:info';
|
|
@@ -145,15 +144,4 @@ export default class LightningHelptext extends LightningShadowBaseClass {
|
|
|
145
144
|
return '';
|
|
146
145
|
}
|
|
147
146
|
}
|
|
148
|
-
|
|
149
|
-
/**
|
|
150
|
-
* Set lightning-button-icon tooltips to be created with toggle events
|
|
151
|
-
* and without the title attribute computed from alternative text (see W-12496300)
|
|
152
|
-
* @param {*} event
|
|
153
|
-
*/
|
|
154
|
-
handleButtonIconRegister(event) {
|
|
155
|
-
event.stopPropagation();
|
|
156
|
-
event.detail.setTooltipType(TooltipType.Toggle);
|
|
157
|
-
event.detail.showTitle(false);
|
|
158
|
-
}
|
|
159
147
|
}
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
hyphens: auto;
|
|
47
47
|
display: inline-block;
|
|
48
48
|
color: var(--slds-g-color-on-surface-2);
|
|
49
|
-
font-size: var(--slds-g-font-scale-neg-
|
|
49
|
+
font-size: var(--slds-s-label-font-size, var(--slds-g-font-scale-neg-2));
|
|
50
50
|
padding-inline-end: var(--slds-g-spacing-2);
|
|
51
51
|
padding-block-start: var(--slds-g-spacing-1);
|
|
52
52
|
margin-block-end: calc(var(--slds-g-spacing-1) / 2);
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
hyphens: auto;
|
|
47
47
|
display: inline-block;
|
|
48
48
|
color: var(--slds-g-color-on-surface-2);
|
|
49
|
-
font-size: var(--slds-g-font-scale-neg-
|
|
49
|
+
font-size: var(--slds-s-label-font-size, var(--slds-g-font-scale-neg-2));
|
|
50
50
|
padding-inline-end: var(--slds-g-spacing-2);
|
|
51
51
|
padding-block-start: var(--slds-g-spacing-1);
|
|
52
52
|
margin-block-end: calc(var(--slds-g-spacing-1) / 2);
|
|
@@ -246,7 +246,7 @@
|
|
|
246
246
|
--sds-c-inputtext-text-color: var(--slds-c-inputtext-text-color);
|
|
247
247
|
--sds-c-inputtext-font-size: var(
|
|
248
248
|
--slds-c-inputtext-font-size,
|
|
249
|
-
var(--slds-g-font-
|
|
249
|
+
var(--slds-g-font-size-base)
|
|
250
250
|
);
|
|
251
251
|
--sds-c-inputtext-text-color-placeholder: var(
|
|
252
252
|
--slds-c-inputtext-text-color-placeholder,
|
|
@@ -264,7 +264,7 @@
|
|
|
264
264
|
|
|
265
265
|
display: flex;
|
|
266
266
|
flex-wrap: wrap;
|
|
267
|
-
|
|
267
|
+
flex-direction: column;
|
|
268
268
|
}
|
|
269
269
|
/**
|
|
270
270
|
* Input Container
|
|
@@ -371,6 +371,10 @@
|
|
|
371
371
|
--sds-c-inputtext-color-border: var(--slds-g-color-border-disabled-1);
|
|
372
372
|
--sds-c-inputtext-text-color: var(--slds-g-color-on-disabled-2);
|
|
373
373
|
}
|
|
374
|
+
:host([data-render-mode="shadow"][disabled]) [part='input-text'] {
|
|
375
|
+
--sds-c-inputtext-text-color-placeholder:
|
|
376
|
+
var(--slds-g-color-on-disabled-2);
|
|
377
|
+
}
|
|
374
378
|
/**
|
|
375
379
|
* Label
|
|
376
380
|
*
|
|
@@ -384,10 +388,7 @@
|
|
|
384
388
|
--slds-c-inputtext-label-color,
|
|
385
389
|
var(--slds-g-color-on-surface-2)
|
|
386
390
|
);
|
|
387
|
-
font-size: var(
|
|
388
|
-
--slds-c-inputtext-label-font-size,
|
|
389
|
-
var(--slds-g-font-scale-neg-3)
|
|
390
|
-
);
|
|
391
|
+
font-size: var(--slds-s-label-font-size, var(--slds-g-font-scale-neg-2));
|
|
391
392
|
margin-block-end: var(--slds-g-sizing-1);
|
|
392
393
|
|
|
393
394
|
/* We inline flex to control the spacing between elements and not have to rely on whitespace characters */
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
hyphens: auto;
|
|
47
47
|
display: inline-block;
|
|
48
48
|
color: var(--slds-g-color-on-surface-2);
|
|
49
|
-
font-size: var(--slds-g-font-scale-neg-
|
|
49
|
+
font-size: var(--slds-s-label-font-size, var(--slds-g-font-scale-neg-2));
|
|
50
50
|
padding-inline-end: var(--slds-g-spacing-2);
|
|
51
51
|
padding-block-start: var(--slds-g-spacing-1);
|
|
52
52
|
margin-block-end: calc(var(--slds-g-spacing-1) / 2);
|