lightning-base-components 1.21.2-alpha → 1.21.4-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 +77 -1
- package/package.json +108 -15
- package/scopedImports/@salesforce-label-LightningDatatable.showActions.js +1 -1
- package/scopedImports/@salesforce-label-LightningForm.controllerFieldsMessage.js +1 -0
- package/scopedImports/@salesforce-label-LightningForm.dependentFieldsHeader.js +1 -0
- package/scopedImports/@salesforce-label-LightningForm.dependentFieldsListHeading.js +1 -0
- package/scopedImports/@salesforce-label-LightningForm.generalDependentFieldsMessage.js +1 -0
- package/scopedImports/@salesforce-label-LightningForm.learnMore.js +1 -0
- package/scopedImports/@salesforce-label-LightningForm.okButton.js +1 -0
- package/scopedImports/@salesforce-label-LightningLookup.modalCancel.js +1 -0
- package/scopedImports/@salesforce-label-LightningLookup.modalSelect.js +1 -0
- package/scopedImports/@salesforce-label-LightningProgressIndicator.currentStage.js +1 -1
- package/scopedImports/@salesforce-label-LightningProgressIndicator.errorStage.js +1 -0
- package/scopedImports/@salesforce-label-LightningProgressIndicator.stageComplete.js +1 -1
- package/scopedImports/@salesforce-label-LightningProgressIndicator.stageNotStarted.js +1 -1
- package/scopedImports/@salesforce-label-LightningRichTextEditor.colorPicker.js +1 -0
- package/src/lightning/accordion/accordion-section.slds.css +3 -3
- package/src/lightning/accordion/accordion.slds.css +1 -2
- package/src/lightning/accordionSection/accordion-section.slds.css +3 -3
- package/src/lightning/accordionSection/accordionSection.js +3 -1
- package/src/lightning/accordionSection/button.slds.css +1 -1
- package/src/lightning/avatar/avatar.html +1 -0
- package/src/lightning/badge/badge.html +3 -3
- package/src/lightning/badge/badge.js +1 -0
- package/src/lightning/badge/badge.js-meta.xml +3 -0
- package/src/lightning/baseCombobox/base-combobox.slds.css +11 -6
- package/src/lightning/baseCombobox/baseCombobox.html +5 -2
- package/src/lightning/baseCombobox/baseCombobox.js +5 -18
- package/src/lightning/baseCombobox/baseCombobox.js-meta.xml +6 -0
- package/src/lightning/baseCombobox/input-text.slds.css +41 -68
- package/src/lightning/baseCombobox/keyboard.js +12 -4
- package/src/lightning/baseCombobox/listbox.slds.css +51 -99
- package/src/lightning/baseCombobox/spinner.slds.css +62 -62
- package/src/lightning/baseComboboxFormattedText/baseComboboxFormattedText.js-meta.xml +6 -0
- package/src/lightning/baseComboboxItem/baseComboboxItem.js +10 -6
- package/src/lightning/baseComboboxItem/baseComboboxItem.js-meta.xml +6 -0
- package/src/lightning/baseComboboxItem/listbox.slds.css +51 -99
- package/src/lightning/baseFormattedText/baseFormattedText.js +2 -2
- package/src/lightning/button/__docs__/button.md +2 -1
- package/src/lightning/button/button.js +5 -5
- package/src/lightning/button/button.slds.css +1 -1
- package/src/lightning/buttonIcon/__docs__/buttonIcon.md +1 -0
- package/src/lightning/buttonIcon/button-icon.slds.css +1 -1
- package/src/lightning/buttonIcon/buttonIcon.html +1 -1
- package/src/lightning/buttonIcon/buttonIcon.js +18 -17
- package/src/lightning/buttonIconStateful/button-icon-stateful.slds.css +4 -2
- package/src/lightning/buttonIconStateful/button-icon.slds.css +1 -1
- package/src/lightning/buttonIconStateful/button.slds.css +1 -1
- package/src/lightning/buttonMenu/button-icon.slds.css +1 -1
- package/src/lightning/buttonMenu/button-menu.slds.css +8 -2
- package/src/lightning/buttonMenu/button.slds.css +1 -1
- package/src/lightning/buttonMenu/buttonMenu.css +5 -0
- package/src/lightning/buttonMenu/buttonMenu.js +2 -0
- package/src/lightning/buttonStateful/button-stateful.slds.css +6 -2
- package/src/lightning/buttonStateful/button.slds.css +1 -1
- package/src/lightning/buttonStateful/buttonStateful.js +4 -1
- package/src/lightning/calendar/calendar.js-meta.xml +6 -0
- package/src/lightning/calendar/calendar.slds.css +9 -2
- package/src/lightning/colorPickerCustom/color-picker-custom.slds.css +22 -23
- package/src/lightning/colorPickerCustom/colorPickerCustom.js +12 -0
- package/src/lightning/colorPickerCustom/input-text.slds.css +41 -68
- package/src/lightning/colorPickerPanel/color-picker-panel.slds.css +9 -10
- package/src/lightning/colorPickerPanel/colorPickerPanel.js +11 -1
- package/src/lightning/colorPickerPanel/popover.slds.css +0 -2
- package/src/lightning/combobox/combobox.html +1 -0
- package/src/lightning/combobox/combobox.slds.css +1 -2
- package/src/lightning/combobox/form-element.slds.css +54 -54
- package/src/lightning/datatable/__examples__disabled/customComponentWrapper/customComponentWrapper.html +11 -0
- package/src/lightning/datatable/__examples__disabled/customComponentWrapper/customComponentWrapper.js +25 -0
- package/src/lightning/datatable/__examples__disabled/customComponentWrapper/generateData.js +15 -0
- package/src/lightning/datatable/__examples__disabled/customDatatableWrapper/customDatatableWrapper.js +89 -0
- package/src/lightning/datatable/__examples__disabled/customDatatypeDeleteRowBtn/customDatatypeDeleteRowBtn.html +6 -0
- package/src/lightning/datatable/{__examples__ → __examples__disabled}/customDatatypeDeleteRowBtn/customDatatypeDeleteRowBtn.js +1 -16
- package/src/lightning/datatable/__examples__disabled/customDatatypeLink/customDatatypeLink.html +9 -0
- package/src/lightning/datatable/__examples__disabled/customDatatypeRowOrderingBtn/customDatatypeRowOrderingBtn.html +3 -0
- package/src/lightning/datatable/__examples__disabled/customDatatypeRowOrderingBtn/customDatatypeRowOrderingBtn.js +3 -0
- package/src/lightning/datatable/__examples__disabled/customDatatypeTable/customNumber.html +3 -0
- package/src/lightning/datatable/{__examples__ → __examples__disabled}/customDatatypeTable/customNumberEdit.html +2 -0
- package/src/lightning/datatable/{__examples__ → __examples__disabled}/customDatatypeTable/deleteRow.html +3 -2
- package/src/lightning/datatable/{__examples__ → __examples__disabled}/customDatatypeTable/iconPill.html +1 -1
- package/src/lightning/datatable/{__examples__/customDatatypeRowOrderingBtn/customDatatypeRowOrderingBtn.html → __examples__disabled/customNestedComponent/customNestedComponent.html} +2 -2
- package/src/lightning/datatable/__examples__disabled/customNestedComponent/customNestedComponent.js +12 -0
- package/src/lightning/datatable/__examples__disabled/myCustomTypeDatatable/customInput.html +4 -0
- package/src/lightning/datatable/__examples__disabled/myCustomTypeDatatable/myCustomTypeDatatable.js +17 -0
- package/src/lightning/datatable/__examples__disabled/myCustomTypeDatatable/nestedSimpleComponentParent.html +7 -0
- package/src/lightning/datatable/__examples__disabled/simpleComponentNested/simpleComponentNested.html +9 -0
- package/src/lightning/datatable/__examples__disabled/simpleComponentNested/simpleComponentNested.js +6 -0
- package/src/lightning/datatable/autoWidthStrategy.js +145 -217
- package/src/lightning/datatable/columnResizer.js +80 -190
- package/src/lightning/datatable/columnWidthManager.js +128 -243
- package/src/lightning/datatable/columns.js +192 -283
- package/src/lightning/datatable/datagrid.slds.css +187 -0
- package/src/lightning/datatable/datatable.js +647 -614
- package/src/lightning/datatable/errors.js +19 -28
- package/src/lightning/datatable/fixedWidthStrategy.js +27 -49
- package/src/lightning/datatable/headerActions.js +10 -42
- package/src/lightning/datatable/indexes.js +42 -0
- package/src/lightning/datatable/infiniteLoading.js +27 -46
- package/src/lightning/datatable/inlineEdit.js +311 -322
- package/src/lightning/datatable/keyboard.js +490 -510
- package/src/lightning/datatable/renderManager.js +10 -11
- package/src/lightning/datatable/resizeObserver.js +10 -67
- package/src/lightning/datatable/rowLevelActions.js +7 -6
- package/src/lightning/datatable/rowNumber.js +41 -79
- package/src/lightning/datatable/rowSelection.js +236 -291
- package/src/lightning/datatable/rowSelectionShared.js +26 -33
- package/src/lightning/datatable/rows.js +264 -476
- package/src/lightning/datatable/sort.js +27 -82
- package/src/lightning/datatable/templates/div/div.css +2 -57
- package/src/lightning/datatable/templates/div/div.html +25 -10
- package/src/lightning/datatable/templates/div/div.lbc.native.css +3 -0
- package/src/lightning/datatable/templates/div/div.lbc.synthetic.css +80 -0
- package/src/lightning/datatable/templates/table/table.html +16 -5
- package/src/lightning/datatable/tree.js +17 -35
- package/src/lightning/datatable/types.js +10 -31
- package/src/lightning/datatable/utils.js +54 -29
- package/src/lightning/datatable/virtualization.js +2 -5
- package/src/lightning/datatable/widthManagerShared.js +24 -41
- package/src/lightning/datatable/wrapText.js +45 -77
- package/src/lightning/datepicker/datepicker.js +32 -9
- package/src/lightning/datepicker/datepicker.js-meta.xml +6 -0
- package/src/lightning/datepicker/form-element.slds.css +54 -54
- package/src/lightning/datepicker/input-text.slds.css +41 -68
- package/src/lightning/datetimepicker/datetimepicker.js-meta.xml +6 -0
- package/src/lightning/datetimepicker/form-element.slds.css +54 -54
- package/src/lightning/datetimepicker/input-text.slds.css +41 -68
- package/src/lightning/dualListbox/dual-listbox.slds.css +7 -2
- package/src/lightning/dualListbox/dualListbox.js +7 -8
- package/src/lightning/dualListbox/form-element.slds.css +54 -54
- package/src/lightning/dualListbox/listbox.slds.css +51 -99
- package/src/lightning/dynamicIcon/dynamic-icon-strength.slds.css +1 -2
- package/src/lightning/dynamicIcon/dynamic-icon-trend.slds.css +1 -2
- package/src/lightning/formattedDateTime/formattedDateTime.js +7 -62
- package/src/lightning/formattedDateTime/formattedDateTime.js-meta.xml +3 -0
- package/src/lightning/formattedLocation/formattedLocation.html +1 -3
- package/src/lightning/formattedLocation/formattedLocation.js +3 -25
- package/src/lightning/formattedLookup/events.js +2 -4
- package/src/lightning/formattedName/formattedName.js +3 -2
- package/src/lightning/formattedName/formattedName.js-meta.xml +3 -0
- package/src/lightning/formattedNumber/formattedNumber.js +5 -51
- package/src/lightning/formattedNumber/formattedNumber.js-meta.xml +3 -0
- package/src/lightning/formattedRichText/formattedRichText.js +5 -5
- package/src/lightning/formattedRichText/linkTextNodes.js +58 -0
- package/src/lightning/formattedRichText/richTextConfig.js +1 -0
- package/src/lightning/groupedCombobox/form-element.slds.css +54 -54
- package/src/lightning/groupedCombobox/grouped-combobox.slds.css +0 -2
- package/src/lightning/groupedCombobox/groupedCombobox.js-meta.xml +1 -1
- package/src/lightning/groupedCombobox/input-text.slds.css +41 -68
- package/src/lightning/helptext/button-icon.slds.css +1 -1
- package/src/lightning/helptext/form-element.slds.css +54 -54
- package/src/lightning/helptext/helptext.css +7 -0
- package/src/lightning/helptext/helptext.js +3 -4
- package/src/lightning/icon/icon.html +1 -1
- package/src/lightning/icon/icon.slds.css +12 -25
- package/src/lightning/input/form-element.slds.css +54 -54
- package/src/lightning/input/input.html +5 -0
- package/src/lightning/inputAddress/addressFormat.js +31 -4
- package/src/lightning/inputAddress/fieldsLayout.js +6 -0
- package/src/lightning/inputAddress/form-element.slds.css +54 -54
- package/src/lightning/inputAddress/input-address.slds.css +1 -2
- package/src/lightning/inputAddress/input-text.slds.css +41 -68
- package/src/lightning/inputAddress/inputAddress.html +19 -1
- package/src/lightning/inputAddress/inputAddress.js +75 -3
- package/src/lightning/inputAddress/inputAddress.js-meta.xml +3 -0
- package/src/lightning/inputLocation/form-element.slds.css +54 -54
- package/src/lightning/inputLocation/input-location.slds.css +1 -2
- package/src/lightning/inputLocation/input-text.slds.css +41 -68
- package/src/lightning/inputName/form-element.slds.css +54 -54
- package/src/lightning/inputName/input-text.slds.css +41 -68
- package/src/lightning/interactiveDialogBase/interactive-dialog-base.slds.css +0 -3
- package/src/lightning/interactiveDialogBase/interactiveDialogBase.js-meta.xml +6 -0
- package/src/lightning/internationalizationLibrary/address/AddressFormat.js +553 -610
- package/src/lightning/lookupAddress/form-element.slds.css +54 -54
- package/src/lightning/lookupAddress/listbox.slds.css +51 -99
- package/src/lightning/lookupAddress/location.js +2 -0
- package/src/lightning/lookupAddress/lookup-address.slds.css +0 -2
- package/src/lightning/lookupAddress/lookupAddress.html +6 -1
- package/src/lightning/lookupAddress/lookupAddress.js +40 -10
- package/src/lightning/menuDivider/menu-divider.slds.css +0 -2
- package/src/lightning/menuItem/menu-item.slds.css +8 -2
- package/src/lightning/menuSubheader/menu-subheader.slds.css +1 -2
- package/src/lightning/modal/__docs__/modal.md +10 -1
- package/src/lightning/modal/__modalUtils__/modalContainerTestConstants.js +3 -7
- package/src/lightning/modal/__modalUtils__/modalContainerTestMethods.js +39 -133
- package/src/lightning/modal/__modalUtils__/modalContainerTestMockData.js +1 -1
- package/src/lightning/modal/modal.js +1 -1
- package/src/lightning/modalBase/modal-base.slds.css +3 -3
- package/src/lightning/modalBase/modalBase.html +15 -10
- package/src/lightning/modalBase/modalBase.js +131 -154
- package/src/lightning/modalBase/modalBase.js-meta.xml +6 -0
- package/src/lightning/modalBody/modal-body.slds.css +1 -2
- package/src/lightning/modalBody/modalBody.css +6 -0
- package/src/lightning/modalFooter/modal-footer.slds.css +2 -2
- package/src/lightning/modalFooter/modalFooter.js +0 -21
- package/src/lightning/modalHeader/modal-header.slds.css +1 -2
- package/src/lightning/modalHeader/modalHeader.html +16 -4
- package/src/lightning/modalHeader/modalHeader.js +61 -36
- package/src/lightning/overlay/overlay.js-meta.xml +6 -0
- package/src/lightning/pill/link.html +1 -0
- package/src/lightning/pill/pill.slds.css +32 -58
- package/src/lightning/pill/plain.html +1 -0
- package/src/lightning/pill/plainLink.html +1 -0
- package/src/lightning/pillContainer/button.slds.css +1 -1
- package/src/lightning/pillContainer/listbox.slds.css +51 -99
- package/src/lightning/pillContainer/pill-container.slds.css +6 -10
- package/src/lightning/pillContainer/pill.slds.css +32 -58
- package/src/lightning/popup/popover.slds.css +0 -2
- package/src/lightning/primitiveBubble/primitiveBubble.js +42 -0
- package/src/lightning/primitiveBubble/primitiveBubble.js-meta.xml +6 -0
- package/src/lightning/primitiveButton/primitiveButoon.js-meta.xml +6 -0
- package/src/lightning/primitiveCellCheckbox/checkbox.css +2 -0
- package/src/lightning/primitiveColorpickerButton/color-picker-button.slds.css +16 -38
- package/src/lightning/primitiveCustomCell/primitiveCustomCell.js +26 -1
- package/src/lightning/primitiveDatatableCell/primitiveDatatableCell.js +1 -1
- package/src/lightning/primitiveHeaderActions/primitiveHeaderActions.html +1 -1
- package/src/lightning/primitiveHeaderActions/primitiveHeaderActions.js +13 -0
- package/src/lightning/primitiveHeaderFactory/nonsortableHeader.css +1 -0
- package/src/lightning/primitiveHeaderFactory/nonsortableHeader.html +19 -6
- package/src/lightning/primitiveHeaderFactory/selectableHeader.css +2 -0
- package/src/lightning/primitiveHeaderFactory/sortableHeader.html +3 -1
- package/src/lightning/primitiveIcon/icon.slds.css +12 -25
- package/src/lightning/primitiveIcon/primitiveIcon.js-meta.xml +6 -0
- package/src/lightning/primitiveIframe/primitiveIframe.js +3 -1
- package/src/lightning/primitiveInputCheckbox/form-element.slds.css +54 -54
- package/src/lightning/primitiveInputCheckbox/primitiveInputCheckbox.js +5 -2
- package/src/lightning/primitiveInputCheckbox/primitiveInputCheckbox.js-meta.xml +6 -0
- package/src/lightning/primitiveInputCheckboxButton/form-element.slds.css +54 -54
- package/src/lightning/primitiveInputCheckboxButton/input-checkbox-button.slds.css +6 -4
- package/src/lightning/primitiveInputCheckboxButton/primitiveInputCheckboxButton.js +5 -2
- package/src/lightning/primitiveInputCheckboxButton/primitiveInputCheckboxButton.js-meta.xml +6 -0
- package/src/lightning/primitiveInputColor/form-element.slds.css +54 -54
- package/src/lightning/primitiveInputColor/input-color.slds.css +2 -3
- package/src/lightning/primitiveInputColor/input-text.slds.css +41 -68
- package/src/lightning/primitiveInputColor/primitiveInputColor.js +5 -2
- package/src/lightning/primitiveInputColor/primitiveInputColor.js-meta.xml +6 -0
- package/src/lightning/primitiveInputFile/button.slds.css +1 -1
- package/src/lightning/primitiveInputFile/form-element.slds.css +54 -54
- package/src/lightning/primitiveInputFile/input-file.slds.css +1 -4
- package/src/lightning/primitiveInputFile/primitiveInputFile.js +4 -2
- package/src/lightning/primitiveInputFile/primitiveInputFile.js-meta.xml +6 -0
- package/src/lightning/primitiveInputRadio/primitiveInputRadio.js +4 -2
- package/src/lightning/primitiveInputSimple/form-element.slds.css +54 -54
- package/src/lightning/primitiveInputSimple/input-text.slds.css +41 -68
- package/src/lightning/primitiveInputSimple/primitiveInputSimple.js-meta.xml +6 -0
- package/src/lightning/primitiveInputToggle/form-element.slds.css +54 -54
- package/src/lightning/primitiveInputToggle/input-toggle.slds.css +50 -27
- package/src/lightning/primitiveInputToggle/primitiveInputToggle.js +5 -2
- package/src/lightning/primitiveInputToggle/primitiveInputToggle.js-meta.xml +6 -0
- package/src/lightning/primitiveResizeHandler/primitiveResizeHandler.css +11 -0
- package/src/lightning/primitiveResizeHandler/primitiveResizeHandler.html +2 -1
- package/src/lightning/primitiveResizeHandler/primitiveResizeHandler.js +1 -0
- package/src/lightning/progressBar/progress-bar.slds.css +8 -10
- package/src/lightning/progressRing/progress-ring.slds.css +0 -23
- package/src/lightning/progressStep/base.html +5 -6
- package/src/lightning/progressStep/progressStep.js +15 -23
- package/src/lightning/prompt/__docs__/prompt.md +1 -1
- package/src/lightning/radioGroup/form-element.slds.css +54 -54
- package/src/lightning/radioGroup/radioGroup.html +1 -2
- package/src/lightning/radioGroup/radioGroup.js +1 -0
- package/src/lightning/routingService/routingService.js +31 -5
- package/src/lightning/select/form-element.slds.css +54 -54
- package/src/lightning/select/select.slds.css +4 -2
- package/src/lightning/shadowBaseClassPrivate/shadowBaseClassPrivate.js +0 -2
- package/src/lightning/sldsCommon/sldsCommon.css +134 -98
- package/src/lightning/sldsUtilsAlignment/sldsUtilsAlignment.css +1 -1
- package/src/lightning/sldsUtilsBox/sldsUtilsBox.css +14 -13
- package/src/lightning/sldsUtilsGrid/sldsUtilsGrid.css +95 -92
- package/src/lightning/sldsUtilsHyphenation/sldsUtilsHyphenation.css +1 -1
- package/src/lightning/sldsUtilsMargin/sldsUtilsMargin.css +77 -75
- package/src/lightning/sldsUtilsPadding/sldsUtilsPadding.css +73 -73
- package/src/lightning/sldsUtilsSizing/sldsUtilsSizing.css +552 -558
- package/src/lightning/sldsUtilsVisibility/sldsUtilsVisibility.css +5 -1
- package/src/lightning/spinner/spinner.slds.css +62 -62
- package/src/lightning/staticMap/staticMap.js +3 -2
- package/src/lightning/tab/tab.js +10 -5
- package/src/lightning/tab/tab.js-meta.xml +3 -0
- package/src/lightning/tab/tab.slds.css +14 -7
- package/src/lightning/tabBar/tab-bar.slds.css +16 -6
- package/src/lightning/tabBar/tabBar.js +10 -5
- package/src/lightning/tabset/__docs__/tabset.md +24 -1
- package/src/lightning/tabset/tabset.html +2 -0
- package/src/lightning/tabset/tabset.js +25 -38
- package/src/lightning/tabset/tabset.js-meta.xml +3 -0
- package/src/lightning/tabset/tabset.slds.css +0 -2
- package/src/lightning/textarea/form-element.slds.css +54 -54
- package/src/lightning/textarea/textarea.js +11 -2
- package/src/lightning/textarea/textarea.slds.css +22 -9
- package/src/lightning/timepicker/form-element.slds.css +54 -54
- package/src/lightning/timepicker/timepicker.js-meta.xml +6 -0
- package/src/lightning/timepicker/timepicker.slds.css +2 -2
- package/src/lightning/toast/__docs__/toast.md +20 -22
- package/src/lightning/toast/button-icon.slds.css +1 -1
- package/src/lightning/toast/icon.slds.css +12 -25
- package/src/lightning/toast/toast.js +15 -12
- package/src/lightning/toast/toast.slds.css +6 -18
- package/src/lightning/toastContainer/__docs__/toastContainer.md +3 -2
- package/src/lightning/toastContainer/toast.slds.css +6 -18
- package/src/lightning/toastContainer/toastContainer.js +25 -17
- package/src/lightning/tooltipLibrary/tooltipLibrary.js +36 -24
- package/src/lightning/tree/tree.js +2 -0
- package/src/lightning/utils/classSet.js +9 -3
- package/src/lightning/utilsPrivate/formatUtils.js +158 -0
- package/src/lightning/utilsPrivate/textUtils.js +16 -0
- package/src/lightning/utilsPrivate/utilsPrivate.js +56 -15
- package/src/lightning/utilsPrivate/validationUtils.js +59 -0
- package/src/lightning/verticalNavigation/vertical-navigation.slds.css +14 -0
- package/src/lightning/verticalNavigation/verticalNavigation.css +1 -1
- package/src/lightning/verticalNavigation/verticalNavigation.html +1 -1
- package/src/lightning/verticalNavigation/verticalNavigation.js +66 -28
- package/src/lightning/verticalNavigation/verticalNavigation.js-meta.xml +3 -0
- package/src/lightning/verticalNavigationItem/vertical-navigation-item.slds.css +63 -0
- package/src/lightning/verticalNavigationItem/verticalNavigationItem.css +2 -3
- package/src/lightning/verticalNavigationItem/verticalNavigationItem.js +29 -15
- package/src/lightning/verticalNavigationItem/verticalNavigationItem.js-meta.xml +3 -0
- package/src/lightning/verticalNavigationItem/verticalNavigationItem.lbc.native.css +2 -0
- package/src/lightning/verticalNavigationItem/verticalNavigationItem.lbc.synthetic.css +3 -0
- package/src/lightning/verticalNavigationItemBadge/badge.slds.css +76 -0
- package/src/lightning/verticalNavigationItemBadge/vertical-navigation-item.slds.css +63 -0
- package/src/lightning/verticalNavigationItemBadge/verticalNavigationItemBadge.css +2 -3
- package/src/lightning/verticalNavigationItemBadge/verticalNavigationItemBadge.html +1 -1
- package/src/lightning/verticalNavigationItemBadge/verticalNavigationItemBadge.js +28 -15
- package/src/lightning/verticalNavigationItemBadge/verticalNavigationItemBadge.js-meta.xml +3 -0
- package/src/lightning/verticalNavigationItemBadge/verticalNavigationItemBadge.lbc.native.css +5 -0
- package/src/lightning/verticalNavigationItemBadge/verticalNavigationItemBadge.lbc.synthetic.css +3 -0
- package/src/lightning/verticalNavigationItemIcon/vertical-navigation-item.slds.css +63 -0
- package/src/lightning/verticalNavigationItemIcon/verticalNavigationItemIcon.css +2 -3
- package/src/lightning/verticalNavigationItemIcon/verticalNavigationItemIcon.js +29 -15
- package/src/lightning/verticalNavigationItemIcon/verticalNavigationItemIcon.js-meta.xml +3 -0
- package/src/lightning/verticalNavigationItemIcon/verticalNavigationItemIcon.lbc.native.css +3 -0
- package/src/lightning/verticalNavigationItemIcon/verticalNavigationItemIcon.lbc.synthetic.css +3 -0
- package/src/lightning/verticalNavigationOverflow/button.slds.css +503 -0
- package/src/lightning/verticalNavigationOverflow/vertical-navigation-item.slds.css +63 -0
- package/src/lightning/verticalNavigationOverflow/vertical-navigation-section.slds.css +17 -0
- package/src/lightning/verticalNavigationOverflow/verticalNavigationOverflow.css +2 -1
- package/src/lightning/verticalNavigationOverflow/verticalNavigationOverflow.html +2 -0
- package/src/lightning/verticalNavigationOverflow/verticalNavigationOverflow.js +18 -13
- package/src/lightning/verticalNavigationOverflow/verticalNavigationOverflow.js-meta.xml +3 -0
- package/src/lightning/verticalNavigationOverflow/verticalNavigationOverflow.lbc.native.css +5 -0
- package/src/lightning/verticalNavigationSection/vertical-navigation-section.slds.css +13 -15
- package/src/lightning/verticalNavigationSection/verticalNavigationSection.js-meta.xml +3 -0
- package/src/lightning/datatable/__examples__/customDatatableWrapper/customDatatableWrapper.js +0 -158
- package/src/lightning/datatable/__examples__/customDatatypeDeleteRowBtn/customDatatypeDeleteRowBtn.html +0 -6
- package/src/lightning/datatable/__examples__/customDatatypeLink/customDatatypeLink.html +0 -9
- package/src/lightning/datatable/__examples__/customDatatypeRowOrderingBtn/customDatatypeRowOrderingBtn.js +0 -40
- package/src/lightning/datatable/__examples__/customDatatypeTable/customNumber.html +0 -3
- package/src/lightning/datatable/inlineEditShared.js +0 -26
- package/src/lightning/datatable/resizeSensor.js +0 -244
- package/src/lightning/formattedRichText/linkify.js +0 -43
- package/src/lightning/utilsPrivate/smartSetAttribute.js +0 -19
- /package/src/lightning/datatable/{__examples__ → __examples__disabled}/customDatatableWrapper/customDatatableWrapper.html +0 -0
- /package/src/lightning/datatable/{__examples__ → __examples__disabled}/customDatatypeLink/customDatatypeLink.js +0 -0
- /package/src/lightning/datatable/{__examples__ → __examples__disabled}/customDatatypeNumber/customDatatypeNumber.html +0 -0
- /package/src/lightning/datatable/{__examples__ → __examples__disabled}/customDatatypeNumber/customDatatypeNumber.js +0 -0
- /package/src/lightning/datatable/{__examples__ → __examples__disabled}/customDatatypeTable/customDatatypeTable.js +0 -0
- /package/src/lightning/datatable/{__examples__ → __examples__disabled}/customDatatypeTable/customLink.html +0 -0
- /package/src/lightning/datatable/{__examples__ → __examples__disabled}/customDatatypeTable/customName.html +0 -0
- /package/src/lightning/datatable/{__examples__ → __examples__disabled}/customDatatypeTable/orderingButtons.html +0 -0
|
@@ -1,275 +1,165 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import { clamp, normalizeNumberAttribute } from './utils';
|
|
4
|
-
import { buildCSSWidthStyle } from './widthManagerShared';
|
|
1
|
+
import { isRTL, normalizeBoolean } from 'lightning/utilsPrivate';
|
|
2
|
+
import { clamp, getScrollerY, normalizeNumberAttribute } from './utils';
|
|
5
3
|
|
|
6
4
|
/**
|
|
7
|
-
* Returns the default state/values of the resizer metadata
|
|
5
|
+
* Returns the default state/values of the resizer metadata.
|
|
6
|
+
*
|
|
8
7
|
* @returns {Object} - resizer default state
|
|
9
8
|
*/
|
|
10
9
|
export function getResizerDefaultState() {
|
|
11
10
|
return {
|
|
11
|
+
columnWidths: [],
|
|
12
|
+
columnWidthsMode: 'fixed',
|
|
13
|
+
maxColumnWidth: 1000,
|
|
14
|
+
minColumnWidth: 50,
|
|
12
15
|
resizeColumnDisabled: false,
|
|
13
16
|
resizeStep: 10,
|
|
14
|
-
columnWidths: [],
|
|
15
17
|
tableWidth: 0,
|
|
16
|
-
minColumnWidth: 50,
|
|
17
|
-
maxColumnWidth: 1000,
|
|
18
|
-
columnWidthsMode: 'fixed',
|
|
19
18
|
};
|
|
20
19
|
}
|
|
21
20
|
|
|
22
|
-
|
|
21
|
+
export const RESIZER_DEFAULT_STATE = getResizerDefaultState();
|
|
23
22
|
|
|
24
|
-
|
|
23
|
+
/***************** GETTERS / SETTERS *****************/
|
|
25
24
|
|
|
26
|
-
export function isResizeColumnDisabled(widthsData) {
|
|
27
|
-
return widthsData.resizeColumnDisabled;
|
|
28
|
-
}
|
|
29
25
|
export function setResizeColumnDisabled(widthsData, value) {
|
|
26
|
+
// Untracked state change.
|
|
30
27
|
widthsData.resizeColumnDisabled = normalizeBoolean(value);
|
|
31
28
|
}
|
|
32
29
|
|
|
33
|
-
/************* resizeStep *************/
|
|
34
|
-
|
|
35
|
-
export function getResizeStep(widthsData) {
|
|
36
|
-
return widthsData.resizeStep;
|
|
37
|
-
}
|
|
38
|
-
|
|
39
30
|
export function setResizeStep(widthsData, value) {
|
|
31
|
+
// Tracked state change.
|
|
40
32
|
widthsData.resizeStep = normalizeNumberAttribute(
|
|
41
33
|
'resizeStep',
|
|
42
34
|
value,
|
|
43
35
|
'non-negative',
|
|
44
|
-
|
|
36
|
+
RESIZER_DEFAULT_STATE.resizeStep
|
|
45
37
|
);
|
|
46
38
|
}
|
|
47
39
|
|
|
48
|
-
/************* columnWidths *************/
|
|
49
|
-
|
|
50
|
-
/**
|
|
51
|
-
* Returns the columnsWidths saved in the state
|
|
52
|
-
* @param {object} widthsData - data regarding column and table widths
|
|
53
|
-
* @returns {Array|*} - list of column widths
|
|
54
|
-
*/
|
|
55
|
-
export function getColumnsWidths(widthsData) {
|
|
56
|
-
return widthsData.columnWidths;
|
|
57
|
-
}
|
|
58
|
-
/**
|
|
59
|
-
* Sets columnWidths to empty array
|
|
60
|
-
* @param {object} widthsData - data regarding column and table widths
|
|
61
|
-
*/
|
|
62
|
-
export function resetColumnWidths(widthsData) {
|
|
63
|
-
widthsData.columnWidths = [];
|
|
64
|
-
}
|
|
65
|
-
/**
|
|
66
|
-
* Returns true if there are widths stored in the state
|
|
67
|
-
* @param {object} widthsData - data regarding column and table widths
|
|
68
|
-
* @returns {boolean} - true if there are widths store in the state
|
|
69
|
-
*/
|
|
70
|
-
export function hasDefinedColumnsWidths(widthsData) {
|
|
71
|
-
return widthsData.columnWidths.length > 0;
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
/************* tableWidth *************/
|
|
75
|
-
|
|
76
|
-
/**
|
|
77
|
-
* Get the full width of table
|
|
78
|
-
* @param {object} widthsData - data regarding column and table widths
|
|
79
|
-
* @returns {number} - table's width
|
|
80
|
-
*/
|
|
81
|
-
function getTableWidth(widthsData) {
|
|
82
|
-
return widthsData.tableWidth;
|
|
83
|
-
}
|
|
84
|
-
function setTableWidth(widthsData, tableWidth) {
|
|
85
|
-
widthsData.tableWidth = tableWidth;
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
/************* minColumnWidth *************/
|
|
89
|
-
|
|
90
|
-
export function getMinColumnWidth(widthsData) {
|
|
91
|
-
return widthsData.minColumnWidth;
|
|
92
|
-
}
|
|
93
|
-
|
|
94
40
|
export function setMinColumnWidth(columns, widthsData, value) {
|
|
41
|
+
// Untracked state changes.
|
|
95
42
|
widthsData.minColumnWidth = normalizeNumberAttribute(
|
|
96
43
|
'minColumnWidth',
|
|
97
44
|
value,
|
|
98
45
|
'non-negative',
|
|
99
|
-
|
|
46
|
+
RESIZER_DEFAULT_STATE.minColumnWidth
|
|
100
47
|
);
|
|
101
|
-
|
|
48
|
+
// Tracked state change.
|
|
102
49
|
updateColumnWidthsMetadata(columns, widthsData);
|
|
103
50
|
}
|
|
104
51
|
|
|
105
|
-
/************* maxColumnWidth *************/
|
|
106
|
-
|
|
107
|
-
export function getMaxColumnWidth(widthsData) {
|
|
108
|
-
return widthsData.maxColumnWidth;
|
|
109
|
-
}
|
|
110
52
|
export function setMaxColumnWidth(columns, widthsData, value) {
|
|
53
|
+
// Untracked state change.
|
|
111
54
|
widthsData.maxColumnWidth = normalizeNumberAttribute(
|
|
112
55
|
'maxColumnWidth',
|
|
113
56
|
value,
|
|
114
57
|
'non-negative',
|
|
115
|
-
|
|
58
|
+
RESIZER_DEFAULT_STATE.maxColumnWidth
|
|
116
59
|
);
|
|
117
|
-
|
|
60
|
+
// Tracked state change.
|
|
118
61
|
updateColumnWidthsMetadata(columns, widthsData);
|
|
119
62
|
}
|
|
120
63
|
|
|
121
64
|
/***************************** RESIZE LOGIC *****************************/
|
|
122
65
|
|
|
123
66
|
/**
|
|
124
|
-
*
|
|
125
|
-
* @param {object} widthsData - data regarding column and table widths
|
|
126
|
-
* @returns {string} - style string
|
|
127
|
-
*/
|
|
128
|
-
export function getCSSWidthStyleOfTable(widthsData) {
|
|
129
|
-
return buildCSSWidthStyle(getTableWidth(widthsData));
|
|
130
|
-
}
|
|
131
|
-
|
|
132
|
-
/**
|
|
133
|
-
* - It adjusts the columns widths from the state
|
|
134
|
-
* - It is used when there are columnwidths in state but the table is hidden with offsetwidth 0
|
|
135
|
-
* - In this case we reset the columns to the width in state
|
|
67
|
+
* Resizes a column width.
|
|
136
68
|
*
|
|
137
|
-
* @param {
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
let columnsWidthSum = 0;
|
|
142
|
-
const columns = getColumns(state);
|
|
143
|
-
for (let i = 0, { length } = columns; i < length; i += 1) {
|
|
144
|
-
const width = columnsWidths[i];
|
|
145
|
-
if (width !== undefined) {
|
|
146
|
-
const col = columns[i];
|
|
147
|
-
if (isRTL()) {
|
|
148
|
-
col.offset = columnsWidthSum;
|
|
149
|
-
}
|
|
150
|
-
columnsWidthSum += width;
|
|
151
|
-
col.columnWidth = width;
|
|
152
|
-
col.style = buildCSSWidthStyle(width);
|
|
153
|
-
}
|
|
154
|
-
}
|
|
155
|
-
setTableWidth(state, columnsWidthSum);
|
|
156
|
-
}
|
|
157
|
-
|
|
158
|
-
/**
|
|
159
|
-
* Resizes a column width
|
|
160
|
-
* @param {object} columns - all columns on the table
|
|
161
|
-
* @param {object} widthsData - object containing the resizer metadata
|
|
162
|
-
* @param {number} colIndex - the index of the column based on state.columns
|
|
163
|
-
* @param {number} width - the new width is gonna be applied
|
|
69
|
+
* @param {Object} columns - The column definitions
|
|
70
|
+
* @param {Object} widthsData - The widths data
|
|
71
|
+
* @param {number} colIndex - The index of the column based on state.columns
|
|
72
|
+
* @param {number} width - The new width is gonna be applied
|
|
164
73
|
*/
|
|
165
74
|
export function resizeColumn(columns, widthsData, colIndex, width) {
|
|
166
|
-
const
|
|
167
|
-
const
|
|
168
|
-
const currentWidth =
|
|
169
|
-
const { minWidth, maxWidth } =
|
|
170
|
-
|
|
75
|
+
const col = columns[colIndex];
|
|
76
|
+
const { columnWidths } = widthsData;
|
|
77
|
+
const currentWidth = columnWidths[colIndex];
|
|
78
|
+
const { minWidth, maxWidth } = col;
|
|
171
79
|
const newWidth = clamp(width, minWidth, maxWidth);
|
|
172
80
|
if (currentWidth !== newWidth) {
|
|
173
81
|
const newDelta = newWidth - currentWidth;
|
|
174
|
-
|
|
175
|
-
|
|
82
|
+
// Untracked state changes.
|
|
83
|
+
columnWidths[colIndex] = newWidth;
|
|
84
|
+
widthsData.tableWidth += newDelta;
|
|
85
|
+
// Tracked state changes.
|
|
86
|
+
col.columnWidth = newWidth;
|
|
87
|
+
col.style = newWidth ? `width: ${newWidth}px;` : '';
|
|
176
88
|
// Workaround for header positioning issues in RTL
|
|
177
|
-
|
|
178
|
-
|
|
89
|
+
if (isRTL()) {
|
|
90
|
+
// update column offsets
|
|
91
|
+
for (let i = colIndex + 1; i < columns.length; i += 1) {
|
|
92
|
+
// Tracked state change.
|
|
93
|
+
columns[i].offset += newDelta;
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
// Tracked state change.
|
|
97
|
+
col.isResized = true;
|
|
179
98
|
}
|
|
180
99
|
}
|
|
181
100
|
|
|
182
101
|
/**
|
|
183
|
-
* Resize a column width with an additional delta
|
|
184
|
-
*
|
|
185
|
-
* @param {object}
|
|
186
|
-
* @param {
|
|
187
|
-
* @param {number}
|
|
102
|
+
* Resize a column width with an additional delta.
|
|
103
|
+
*
|
|
104
|
+
* @param {object} columns - The column definitions
|
|
105
|
+
* @param {object} widthsData - The widths data
|
|
106
|
+
* @param {number} colIndex - The index of the column based on state.columns
|
|
107
|
+
* @param {number} delta - The delta that creates the new width
|
|
188
108
|
*/
|
|
189
|
-
export function resizeColumnWithDelta(
|
|
190
|
-
|
|
191
|
-
widthsData,
|
|
192
|
-
colIndex,
|
|
193
|
-
widthDelta
|
|
194
|
-
) {
|
|
195
|
-
const currentWidth = getColumnsWidths(widthsData)[colIndex];
|
|
196
|
-
resizeColumn(columns, widthsData, colIndex, currentWidth + widthDelta);
|
|
197
|
-
}
|
|
198
|
-
|
|
199
|
-
function updateColumnWidth(columns, widthsData, colIndex, newWidth) {
|
|
200
|
-
const columnsWidths = getColumnsWidths(widthsData);
|
|
201
|
-
columnsWidths[colIndex] = newWidth;
|
|
202
|
-
|
|
203
|
-
const column = columns[colIndex];
|
|
204
|
-
column.columnWidth = newWidth;
|
|
205
|
-
column.style = buildCSSWidthStyle(newWidth);
|
|
109
|
+
export function resizeColumnWithDelta(columns, widthsData, colIndex, delta) {
|
|
110
|
+
const currentWidth = widthsData.columnWidths[colIndex];
|
|
111
|
+
resizeColumn(columns, widthsData, colIndex, currentWidth + delta);
|
|
206
112
|
}
|
|
207
113
|
|
|
208
114
|
export function updateColumnWidthsMetadata(columns, widthsData) {
|
|
209
|
-
|
|
210
|
-
|
|
115
|
+
const { maxColumnWidth, minColumnWidth } = widthsData;
|
|
116
|
+
for (let colIndex = 0; colIndex < columns.length; colIndex += 1) {
|
|
117
|
+
const col = columns[colIndex];
|
|
211
118
|
if (!col.internal) {
|
|
212
|
-
col.
|
|
213
|
-
col.
|
|
119
|
+
col.maxWidth = maxColumnWidth;
|
|
120
|
+
col.minWidth = minColumnWidth;
|
|
214
121
|
}
|
|
215
|
-
|
|
216
|
-
if (
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
col.minWidth,
|
|
220
|
-
col.maxWidth
|
|
221
|
-
);
|
|
122
|
+
const { initialWidth } = col;
|
|
123
|
+
if (initialWidth) {
|
|
124
|
+
const { minWidth: min, maxWidth: max } = col;
|
|
125
|
+
col.initialWidth = clamp(initialWidth, min, max);
|
|
222
126
|
}
|
|
223
127
|
}
|
|
224
128
|
}
|
|
225
129
|
|
|
226
130
|
/**
|
|
227
|
-
*
|
|
228
|
-
* This is used to position the column headers properly in RTL.
|
|
131
|
+
* Returns the current widths for customer columns.
|
|
229
132
|
*
|
|
230
|
-
* @param {
|
|
231
|
-
* @param {
|
|
232
|
-
* @
|
|
233
|
-
*/
|
|
234
|
-
function updateColumnOffsets(columns, colIndex, newDelta) {
|
|
235
|
-
if (isRTL()) {
|
|
236
|
-
for (let i = colIndex, { length } = columns; i < length; i += 1) {
|
|
237
|
-
columns[i].offset += newDelta;
|
|
238
|
-
}
|
|
239
|
-
}
|
|
240
|
-
}
|
|
241
|
-
|
|
242
|
-
/**
|
|
243
|
-
* Returns the current widths for customer columns
|
|
244
|
-
* @param {object} columns - all columns of the table
|
|
245
|
-
* @param {object} widthsData - data regarding column and table widths
|
|
246
|
-
* @returns {Array} - the widths collection, every element
|
|
133
|
+
* @param {Object} columns - The columns of the table
|
|
134
|
+
* @param {Object} widthsData - The data regarding column and table widths
|
|
135
|
+
* @returns {Array} - The widths collection, every element
|
|
247
136
|
* belong to a column with the same index in column prop
|
|
248
137
|
*/
|
|
249
138
|
export function getCustomerColumnWidths(columns, widthsData) {
|
|
250
139
|
const widths = [];
|
|
251
140
|
const { columnWidths } = widthsData;
|
|
252
|
-
for (let
|
|
253
|
-
if (
|
|
254
|
-
widths.push(columnWidths[
|
|
141
|
+
for (let colIndex = 0; colIndex < columns.length; colIndex += 1) {
|
|
142
|
+
if (columns[colIndex].internal !== true) {
|
|
143
|
+
widths.push(columnWidths[colIndex]);
|
|
255
144
|
}
|
|
256
145
|
}
|
|
257
146
|
return widths;
|
|
258
147
|
}
|
|
259
148
|
|
|
260
149
|
/**
|
|
261
|
-
* It returns if table is rendered and not hidden
|
|
262
|
-
*
|
|
263
|
-
* @
|
|
150
|
+
* It returns if table is rendered and not hidden.
|
|
151
|
+
*
|
|
152
|
+
* @param {Node} template - The datatable template
|
|
153
|
+
* @returns {boolean} - Whether the datatable is rendered and not hidden on the page
|
|
264
154
|
*/
|
|
265
|
-
export function isTableRenderedVisible(
|
|
266
|
-
const
|
|
267
|
-
const elem = root.querySelector(CONTAINER_SEL);
|
|
155
|
+
export function isTableRenderedVisible(template) {
|
|
156
|
+
const scrollerY = getScrollerY(template);
|
|
268
157
|
return (
|
|
269
|
-
|
|
158
|
+
scrollerY &&
|
|
159
|
+
!!(
|
|
160
|
+
scrollerY.offsetParent ||
|
|
161
|
+
scrollerY.offsetHeight ||
|
|
162
|
+
scrollerY.offsetWidth
|
|
163
|
+
)
|
|
270
164
|
);
|
|
271
165
|
}
|
|
272
|
-
|
|
273
|
-
function getColumns(state) {
|
|
274
|
-
return state.columns;
|
|
275
|
-
}
|