lightning-base-components 1.26.4-alpha → 1.27.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/README.md +91 -91
- package/{scopedImports/@salesforce-gate-accordionCloseSingleSection.bc.ltng.js → external/flagStub.js} +1 -1
- package/{scopedImports/@salesforce-gate-bc.256.enableInputSearchCommitEvent.js → external/gateStub.js} +1 -1
- package/package.json +89 -77
- package/scopedImports/@salesforce-internal-core.appVersion.js +1 -1
- package/scopedImports/@salesforce-label-LightningMultiColumnSortingModal.modalTitle.js +1 -1
- package/scopedImports/{@salesforce-gate-assertContext.bc.ltng.js → @salesforce-label-LightningPrimitiveColumnSorter.deleteButtonAltText.js} +1 -1
- package/src/lightning/accordion/__docs__/accordion.md +2 -2
- package/src/lightning/accordion/accordion-section.slds.css +100 -107
- package/src/lightning/accordion/accordion.lbc.native.css +0 -1
- package/src/lightning/accordion/accordion.lbc.synthetic.css +0 -1
- package/src/lightning/accordion/accordion.slds.css +12 -12
- package/src/lightning/accordionSection/__docs__/accordionSection.md +1 -0
- package/src/lightning/accordionSection/accordion-section.slds.css +100 -107
- package/src/lightning/accordionSection/accordionSection.lbc.native.css +0 -2
- package/src/lightning/accordionSection/accordionSection.lbc.synthetic.css +1 -2
- package/src/lightning/accordionSection/button.slds.css +32 -17
- package/src/lightning/alert/__docs__/alert.md +13 -13
- package/src/lightning/alert/alert.css +1 -1
- package/src/lightning/ariaObserver/__docs__/ariaObserver.md +16 -10
- package/src/lightning/avatar/__docs__/avatar.md +2 -2
- package/src/lightning/avatar/avatar.css +1 -1
- package/src/lightning/avatar/avatar.slds.css +96 -97
- package/src/lightning/badge/__docs__/badge.md +3 -3
- package/src/lightning/badge/badge.css +1 -1
- package/src/lightning/badge/badge.slds.css +71 -56
- package/src/lightning/barcodeScanner/__docs__/barcodeScanner.md +9 -9
- package/src/lightning/baseCombobox/base-combobox.slds.css +171 -170
- package/src/lightning/baseCombobox/baseCombobox.lbc.synthetic.css +0 -1
- package/src/lightning/baseCombobox/dropdown.slds.css +405 -388
- package/src/lightning/baseCombobox/input-text.slds.css +172 -190
- package/src/lightning/baseCombobox/listbox.slds.css +181 -175
- package/src/lightning/baseCombobox/spinner.slds.css +327 -326
- package/src/lightning/baseComboboxItem/listbox.slds.css +181 -175
- package/src/lightning/breadcrumb/__docs__/breadcrumb.md +2 -2
- package/src/lightning/breadcrumb/breadcrumb.slds.css +13 -14
- package/src/lightning/breadcrumbs/__docs__/breadcrumbs.md +1 -1
- package/src/lightning/breadcrumbs/breadcrumbs.css +1 -1
- package/src/lightning/breadcrumbs/breadcrumbs.lbc.native.css +1 -1
- package/src/lightning/breadcrumbs/breadcrumbs.slds.css +27 -28
- package/src/lightning/button/__docs__/button.md +16 -16
- package/src/lightning/button/__examples__/accesskey/accesskey.css +5 -3
- package/src/lightning/button/__examples__/inverse/inverse.css +2 -2
- package/src/lightning/button/button.slds.css +32 -17
- package/src/lightning/buttonGroup/__docs__/buttonGroup.md +5 -5
- package/src/lightning/buttonGroup/button-group.slds.css +1 -2
- package/src/lightning/buttonGroup/buttonGroup.lbc.native.css +1 -1
- package/src/lightning/buttonIcon/__docs__/buttonIcon.md +20 -20
- package/src/lightning/buttonIcon/button-icon.slds.css +50 -31
- package/src/lightning/buttonIconStateful/__docs__/buttonIconStateful.md +12 -12
- package/src/lightning/buttonIconStateful/button-icon-stateful.slds.css +33 -40
- package/src/lightning/buttonIconStateful/button-icon.slds.css +50 -31
- package/src/lightning/buttonIconStateful/button.slds.css +32 -17
- package/src/lightning/buttonIconStateful/buttonIconStateful.lbc.synthetic.css +5 -1
- package/src/lightning/buttonMenu/__docs__/buttonMenu.md +22 -22
- package/src/lightning/buttonMenu/button-icon.slds.css +50 -31
- package/src/lightning/buttonMenu/button-menu.slds.css +113 -115
- package/src/lightning/buttonMenu/button.slds.css +32 -17
- package/src/lightning/buttonMenu/buttonMenu.css +4 -1
- package/src/lightning/buttonMenu/buttonMenu.lbc.synthetic.css +1 -3
- package/src/lightning/buttonMenu/dropdown.slds.css +405 -388
- package/src/lightning/buttonStateful/__docs__/buttonStateful.md +9 -9
- package/src/lightning/buttonStateful/button-stateful.slds.css +98 -102
- package/src/lightning/buttonStateful/button.slds.css +32 -17
- package/src/lightning/calendar/calendar.slds.css +188 -191
- package/src/lightning/calendar/dropdown.slds.css +405 -388
- package/src/lightning/card/__docs__/card.md +1 -1
- package/src/lightning/card/__examples__/custom/custom.css +2 -2
- package/src/lightning/card/card.slds.css +137 -175
- package/src/lightning/carousel/button-menu.slds.css +113 -115
- package/src/lightning/carousel/button.slds.css +32 -17
- package/src/lightning/carousel/carousel.js +11 -18
- package/src/lightning/carousel/carousel.slds.css +15 -6
- package/src/lightning/carouselImage/carouselImage.lbc.native.css +0 -1
- package/src/lightning/checkboxGroup/__docs__/checkboxGroup.md +7 -7
- package/src/lightning/checkboxGroup/checkbox-group.slds.css +94 -60
- package/src/lightning/checkboxGroup/form-element.slds.css +4 -4
- package/src/lightning/colorPickerCustom/color-picker-custom.slds.css +212 -211
- package/src/lightning/colorPickerCustom/input-text.slds.css +172 -190
- package/src/lightning/colorPickerPanel/color-picker-panel.slds.css +22 -23
- package/src/lightning/colorPickerPanel/colorPickerPanel.lbc.synthetic.css +4 -2
- package/src/lightning/colorPickerPanel/popover.slds.css +127 -128
- package/src/lightning/combobox/__docs__/combobox.md +4 -5
- package/src/lightning/combobox/combobox.css +1 -2
- package/src/lightning/combobox/combobox.lbc.synthetic.css +17 -4
- package/src/lightning/combobox/combobox.slds.css +9 -10
- package/src/lightning/combobox/form-element.slds.css +4 -4
- package/src/lightning/confirm/__docs__/confirm.md +14 -14
- package/src/lightning/context/README.md +13 -13
- package/src/lightning/datatable/README.md +2 -3
- package/src/lightning/datatable/__docs__/datatable.md +82 -77
- package/src/lightning/datatable/__docs__/multi-column-sorting.md +4 -4
- package/src/lightning/datatable/__requirements__/column_widths_requirements.md +68 -68
- package/src/lightning/datatable/__requirements__/requirements.md +1 -1
- package/src/lightning/datatable/button-icon.slds.css +50 -31
- package/src/lightning/datatable/columns.js +2 -2
- package/src/lightning/datatable/datagrid.slds.css +341 -267
- package/src/lightning/datatable/datatable.js +6 -1
- package/src/lightning/datatable/icon.slds.css +6 -2
- package/src/lightning/datatable/input-checkbox.slds.css +130 -124
- package/src/lightning/datatable/primitive-cell-factory.slds.css +0 -1
- package/src/lightning/datatable/rows.js +1 -3
- package/src/lightning/datatable/templates/div/div.css +33 -15
- package/src/lightning/datatable/templates/table/table.css +2 -1
- package/src/lightning/datepicker/form-element.slds.css +4 -4
- package/src/lightning/datepicker/input-text.slds.css +172 -190
- package/src/lightning/datetimepicker/form-element.slds.css +4 -4
- package/src/lightning/datetimepicker/input-text.slds.css +172 -190
- package/src/lightning/dialog/README.md +7 -6
- package/src/lightning/dialog/__requirements__/requirements.md +18 -18
- package/src/lightning/dualListbox/__docs__/dualListbox.md +24 -24
- package/src/lightning/dualListbox/dual-listbox.slds.css +192 -192
- package/src/lightning/dualListbox/dualListbox.lbc.native.css +1 -1
- package/src/lightning/dualListbox/form-element.slds.css +4 -4
- package/src/lightning/dualListbox/listbox.slds.css +181 -175
- package/src/lightning/dynamicIcon/__docs__/dynamicIcon.md +6 -6
- package/src/lightning/dynamicIcon/dynamic-icon-ellie.slds.css +0 -2
- package/src/lightning/dynamicIcon/dynamic-icon-eq.slds.css +0 -2
- package/src/lightning/dynamicIcon/dynamic-icon-score.slds.css +3 -5
- package/src/lightning/dynamicIcon/dynamic-icon-strength.slds.css +109 -108
- package/src/lightning/dynamicIcon/dynamic-icon-trend.slds.css +97 -99
- package/src/lightning/dynamicIcon/dynamic-icon-waffle.slds.css +0 -2
- package/src/lightning/features/gates/imports.js +6 -1
- package/src/lightning/focusTrap/__requirements__/requirements.md +26 -26
- package/src/lightning/formattedAddress/__docs__/formattedAddress.md +0 -1
- package/src/lightning/formattedAddress/formattedAddress.css +1 -1
- package/src/lightning/formattedAddress/formattedAddress.lbc.native.css +1 -1
- package/src/lightning/formattedDateTime/__docs__/formattedDateTime.md +11 -11
- package/src/lightning/formattedEmail/__docs__/formattedEmail.md +2 -2
- package/src/lightning/formattedEmail/formattedEmail.lbc.native.css +1 -2
- package/src/lightning/formattedPhone/__docs__/formattedPhone.md +2 -2
- package/src/lightning/formattedRichText/__docs__/formattedRichText.md +14 -14
- package/src/lightning/formattedRichText/formattedRichText.lbc.native.css +1 -1
- package/src/lightning/formattedRichTextRenderer/formattedRichTextRenderer.lbc.native.css +1 -1
- package/src/lightning/formattedText/formattedText.lbc.native.css +1 -1
- package/src/lightning/formattedTime/__docs__/formattedTime.md +3 -3
- package/src/lightning/formattedUrl/__docs__/formattedUrl.md +11 -11
- package/src/lightning/groupedCombobox/README.md +33 -34
- package/src/lightning/groupedCombobox/form-element.slds.css +4 -4
- package/src/lightning/groupedCombobox/grouped-combobox.slds.css +10 -10
- package/src/lightning/groupedCombobox/groupedCombobox.lbc.native.css +0 -1
- package/src/lightning/groupedCombobox/input-text.slds.css +172 -190
- package/src/lightning/helptext/__docs__/helptext.md +5 -5
- package/src/lightning/helptext/button-icon.slds.css +50 -31
- package/src/lightning/helptext/form-element.slds.css +4 -4
- package/src/lightning/helptext/help-text.slds.css +3 -4
- package/src/lightning/helptext/helptext.css +1 -1
- package/src/lightning/icon/__docs__/icon.md +10 -10
- package/src/lightning/icon/__examples__/variants/variants.css +3 -3
- package/src/lightning/icon/icon.slds.css +6 -2
- package/src/lightning/input/__docs__/input.md +47 -49
- package/src/lightning/input/__examples__/checkboxbutton/checkboxbutton.css +6 -6
- package/src/lightning/input/__requirements__/requirements.md +49 -49
- package/src/lightning/input/form-element.slds.css +4 -4
- package/src/lightning/input/input.lbc.synthetic.css +1 -1
- package/src/lightning/inputAddress/__docs__/inputAddress.md +26 -27
- package/src/lightning/inputAddress/form-element.slds.css +4 -4
- package/src/lightning/inputAddress/input-address.slds.css +6 -6
- package/src/lightning/inputAddress/input-text.slds.css +172 -190
- package/src/lightning/inputLocation/form-element.slds.css +4 -4
- package/src/lightning/inputLocation/input-location.slds.css +6 -6
- package/src/lightning/inputLocation/input-text.slds.css +172 -190
- package/src/lightning/inputName/__docs__/inputName.md +7 -7
- package/src/lightning/inputName/form-element.slds.css +4 -4
- package/src/lightning/inputName/input-text.slds.css +172 -190
- package/src/lightning/inputUtils/validity.js +37 -18
- package/src/lightning/interactiveDialogBase/button.slds.css +32 -17
- package/src/lightning/interactiveDialogBase/interactive-dialog-base.slds.css +9 -18
- package/src/lightning/interactiveDialogBase/interactiveDialogBase.lbc.native.css +1 -1
- package/src/lightning/interactiveDialogBase/modal-base.slds.css +198 -194
- package/src/lightning/interactiveDialogBase/modal-body.slds.css +33 -34
- package/src/lightning/interactiveDialogBase/modal-footer.slds.css +62 -64
- package/src/lightning/interactiveDialogBase/modal-header.slds.css +47 -48
- package/src/lightning/layout/__docs__/layout.md +13 -13
- package/src/lightning/layout/__examples__/pullToBoundary/pullToBoundary.css +1 -1
- package/src/lightning/layout/__examples__/simple/simple.css +2 -2
- package/src/lightning/layout/__examples__/verticalAlignCenter/verticalAlignCenter.css +3 -3
- package/src/lightning/layout/__examples__/verticalAlignStretch/verticalAlignStretch.css +3 -3
- package/src/lightning/layout/layout.css +1 -1
- package/src/lightning/layout/layout.lbc.native.css +1 -1
- package/src/lightning/layout/layout.lbc.synthetic.css +1 -2
- package/src/lightning/layoutItem/layoutItem.css +1 -1
- package/src/lightning/lookupAddress/form-element.slds.css +4 -4
- package/src/lightning/lookupAddress/listbox.slds.css +181 -175
- package/src/lightning/lookupAddress/lookup-address.slds.css +4 -4
- package/src/lightning/lookupAddress/lookupAddress.css +0 -1
- package/src/lightning/lookupAddress/lookupAddress.lbc.native.css +0 -1
- package/src/lightning/mediaUtils/__docs__/mediaUtils.md +20 -17
- package/src/lightning/menuDivider/menu-divider.slds.css +8 -8
- package/src/lightning/menuItem/menu-item.slds.css +94 -82
- package/src/lightning/menuItem/menuItem.lbc.synthetic.css +1 -1
- package/src/lightning/menuSubheader/menu-subheader.slds.css +13 -13
- package/src/lightning/modal/__docs__/migration.md +95 -91
- package/src/lightning/modal/__docs__/modal.md +28 -22
- package/src/lightning/modal/__modalUtils__/modalContainerTestMethods.js +14 -21
- package/src/lightning/modalBase/modal-base.slds.css +198 -194
- package/src/lightning/modalBase/modalBase.lbc.synthetic.css +2 -2
- package/src/lightning/modalBody/__docs__/modalBody.md +0 -1
- package/src/lightning/modalBody/modal-body.slds.css +33 -34
- package/src/lightning/modalFooter/__docs__/modalFooter.md +1 -2
- package/src/lightning/modalFooter/modal-footer.slds.css +62 -64
- package/src/lightning/modalHeader/__docs__/modalHeader.md +1 -0
- package/src/lightning/modalHeader/modal-header.slds.css +47 -48
- package/src/lightning/modalHeader/modalHeader.css +2 -1
- package/src/lightning/multiColumnSortingModal/multiColumnSortingModal.css +2 -3
- package/src/lightning/navigation/__docs__/navigation.md +2 -3
- package/src/lightning/overlay/__docs__/overlay.md +3 -3
- package/src/lightning/overlay/__examples__/basic/basic.css +2 -2
- package/src/lightning/picklist/README.md +9 -9
- package/src/lightning/pill/__docs__/pill.md +3 -3
- package/src/lightning/pill/avatar.slds.css +96 -97
- package/src/lightning/pill/link.css +1 -1
- package/src/lightning/pill/pill.slds.css +154 -153
- package/src/lightning/pill/plain.css +1 -1
- package/src/lightning/pill/plainLink.css +1 -1
- package/src/lightning/pillContainer/__docs__/pillContainer.md +16 -15
- package/src/lightning/pillContainer/barePillContainer.lbc.native.css +1 -1
- package/src/lightning/pillContainer/button.slds.css +32 -17
- package/src/lightning/pillContainer/listbox.slds.css +181 -175
- package/src/lightning/pillContainer/pill-container.slds.css +34 -34
- package/src/lightning/pillContainer/pill.slds.css +154 -153
- package/src/lightning/pillContainer/standardPillContainer.css +1 -1
- package/src/lightning/popup/README.md +3 -3
- package/src/lightning/popup/__requirements__/requirements.md +25 -25
- package/src/lightning/popup/popover.slds.css +127 -128
- package/src/lightning/primitiveBubble/tooltip.slds.css +105 -99
- package/src/lightning/primitiveButton/primitiveButton.js +0 -21
- package/src/lightning/primitiveCellButton/primitiveCellButton.js +6 -1
- package/src/lightning/primitiveCellCheckbox/checkbox.css +0 -1
- package/src/lightning/primitiveCellCheckbox/checkbox.lbc.native.css +1 -1
- package/src/lightning/primitiveCellCheckbox/input-checkbox.slds.css +130 -124
- package/src/lightning/primitiveCellCheckbox/input-radio-group.slds.css +6 -5
- package/src/lightning/primitiveCellCheckbox/primitiveCellCheckbox.js +13 -8
- package/src/lightning/primitiveCellCheckbox/radio.lbc.native.css +1 -1
- package/src/lightning/primitiveCellFactory/button-icon.slds.css +50 -31
- package/src/lightning/primitiveCellFactory/primitive-cell-factory.slds.css +0 -1
- package/src/lightning/primitiveCellFactory/primitiveCellFactory.js +7 -11
- package/src/lightning/primitiveColorpickerButton/color-picker-button.slds.css +69 -70
- package/src/lightning/primitiveColumnSorter/form-element.slds.css +4 -4
- package/src/lightning/primitiveColumnSorter/input-radio-group.slds.css +6 -5
- package/src/lightning/primitiveColumnSorter/primitive-column-sorter.slds.css +0 -1
- package/src/lightning/primitiveColumnSorter/primitiveColumnSorter.css +13 -7
- package/src/lightning/primitiveColumnSorter/primitiveColumnSorter.html +1 -1
- package/src/lightning/primitiveColumnSorter/primitiveColumnSorter.js +2 -0
- package/src/lightning/primitiveCoordinateItem/__examples__/basic/basic.js +1 -2
- package/src/lightning/primitiveCoordinateItem/button.slds.css +32 -17
- package/src/lightning/primitiveCoordinateItem/coordinate-item.slds.css +2 -1
- package/src/lightning/primitiveCoordinateItem/primitiveCoordinateItem.css +1 -1
- package/src/lightning/primitiveCustomCell/primitiveCustomCell.js +8 -7
- package/src/lightning/primitiveDatatableCell/primitiveDatatableCell.js +4 -2
- package/src/lightning/primitiveDatatableIeditPanel/popover.slds.css +127 -128
- package/src/lightning/primitiveDatatableStatusBar/button.slds.css +32 -17
- package/src/lightning/primitiveDatatableStatusBar/form-footer.slds.css +32 -32
- package/src/lightning/primitiveDatatableStatusBar/primitiveDatatableStatusBar.css +1 -1
- package/src/lightning/primitiveDatatableStatusBar/primitiveDatatableStatusBar.js +3 -1
- package/src/lightning/primitiveDatatableTooltip/button-icon.slds.css +50 -31
- package/src/lightning/primitiveDatatableTooltip/button.slds.css +32 -17
- package/src/lightning/primitiveDatatableTooltip/form-footer.slds.css +32 -32
- package/src/lightning/primitiveDatatableTooltip/primitiveDatatableTooltip.css +1 -1
- package/src/lightning/primitiveDatatableTooltip/primitiveDatatableTooltip.js +5 -6
- package/src/lightning/primitiveDatatableTooltip/primitiveDatatableTooltip.lbc.native.css +1 -1
- package/src/lightning/primitiveDatatableTooltipBubble/popover.slds.css +127 -128
- package/src/lightning/primitiveDatatableTooltipBubble/primitive-datatable-tooltip-bubble.slds.css +9 -7
- package/src/lightning/primitiveDatatableTooltipBubble/primitiveDatatableTooltipBubble.css +1 -1
- package/src/lightning/primitiveHeaderActions/primitiveHeaderActions.lbc.native.css +1 -1
- package/src/lightning/primitiveHeaderFactory/form-element.slds.css +4 -4
- package/src/lightning/primitiveHeaderFactory/input-checkbox.slds.css +130 -124
- package/src/lightning/primitiveHeaderFactory/primitive-header-factory.slds.css +9 -4
- package/src/lightning/primitiveHeaderFactory/selectableHeader.css +1 -1
- package/src/lightning/primitiveHeaderFactory/selectableHeader.lbc.native.css +1 -1
- package/src/lightning/primitiveHeaderFactory/sortableHeader.lbc.synthetic.css +9 -3
- package/src/lightning/primitiveHeaderFactory/sortingMenuHeader.lbc.native.css +0 -1
- package/src/lightning/primitiveIcon/icon.slds.css +6 -2
- package/src/lightning/primitiveIcon/primitiveIcon.js +10 -2
- package/src/lightning/primitiveInputCheckbox/form-element.slds.css +4 -4
- package/src/lightning/primitiveInputCheckbox/input-checkbox.slds.css +130 -124
- package/src/lightning/primitiveInputCheckboxButton/form-element.slds.css +4 -4
- package/src/lightning/primitiveInputCheckboxButton/input-checkbox-button.slds.css +90 -79
- package/src/lightning/primitiveInputColor/form-element.slds.css +4 -4
- package/src/lightning/primitiveInputColor/input-color.slds.css +27 -28
- package/src/lightning/primitiveInputColor/input-text.slds.css +172 -190
- package/src/lightning/primitiveInputColor/primitiveInputColor.css +1 -1
- package/src/lightning/primitiveInputFile/button.slds.css +32 -17
- package/src/lightning/primitiveInputFile/form-element.slds.css +4 -4
- package/src/lightning/primitiveInputFile/input-file.slds.css +58 -59
- package/src/lightning/primitiveInputSimple/form-element.slds.css +4 -4
- package/src/lightning/primitiveInputSimple/input-text.slds.css +172 -190
- package/src/lightning/primitiveInputSimple/primitiveInputSimple.lbc.synthetic.css +1 -1
- package/src/lightning/primitiveInputToggle/form-element.slds.css +4 -4
- package/src/lightning/primitiveInputToggle/input-toggle.slds.css +134 -118
- package/src/lightning/primitiveResizeHandler/primitive-resize-handler.slds.css +0 -1
- package/src/lightning/primitiveTreegridCellToggle/button-icon.slds.css +50 -31
- package/src/lightning/progressBar/progress-bar.slds.css +38 -39
- package/src/lightning/progressIndicator/__docs__/progressIndicator.md +2 -2
- package/src/lightning/progressIndicator/progress-indicator.slds.css +65 -65
- package/src/lightning/progressIndicator/progressIndicator.css +1 -1
- package/src/lightning/progressIndicator/progressIndicator.lbc.native.css +1 -1
- package/src/lightning/progressRing/progress-ring.slds.css +112 -112
- package/src/lightning/progressStep/progress-step.slds.css +223 -203
- package/src/lightning/prompt/__docs__/prompt.md +14 -14
- package/src/lightning/prompt/form-element.slds.css +4 -4
- package/src/lightning/prompt/input-text.slds.css +172 -190
- package/src/lightning/prompt/prompt.css +1 -1
- package/src/lightning/radioGroup/__docs__/radioGroup.md +6 -6
- package/src/lightning/radioGroup/form-element.slds.css +4 -4
- package/src/lightning/radioGroup/input-radio-group.slds.css +6 -5
- package/src/lightning/relativeDateTime/__docs__/relativeDateTime.md +10 -10
- package/src/lightning/select/__docs__/select.md +5 -5
- package/src/lightning/select/form-element.slds.css +4 -4
- package/src/lightning/select/select.css +1 -1
- package/src/lightning/select/select.html +6 -3
- package/src/lightning/select/select.lbc.native.css +2 -2
- package/src/lightning/select/select.slds.css +117 -115
- package/src/lightning/sldsCommon/sldsCommon.css +0 -1
- package/src/lightning/sldsFormElementUtils/sldsFormElementUtils.css +63 -29
- package/src/lightning/sldsMediaObject/sldsMediaObject.css +1 -3
- package/src/lightning/sldsUtilsAlignment/sldsUtilsAlignment.css +0 -1
- package/src/lightning/sldsUtilsBorders/sldsUtilsBorders.css +8 -5
- package/src/lightning/sldsUtilsBox/sldsUtilsBox.css +0 -1
- package/src/lightning/sldsUtilsFloats/sldsUtilsFloats.css +1 -2
- package/src/lightning/sldsUtilsGrid/sldsUtilsGrid.css +84 -85
- package/src/lightning/sldsUtilsHyphenation/sldsUtilsHyphenation.css +0 -1
- package/src/lightning/sldsUtilsLineClamp/sldsUtilsLineClamp.css +0 -1
- package/src/lightning/sldsUtilsMargin/sldsUtilsMargin.css +0 -1
- package/src/lightning/sldsUtilsPadding/sldsUtilsPadding.css +0 -1
- package/src/lightning/sldsUtilsPosition/sldsUtilsPosition.css +4 -5
- package/src/lightning/sldsUtilsSizing/sldsUtilsSizing.css +0 -1
- package/src/lightning/sldsUtilsThemes/sldsUtilsThemes.css +47 -23
- package/src/lightning/sldsUtilsTruncation/sldsUtilsTruncation.css +0 -1
- package/src/lightning/sldsUtilsVisibility/sldsUtilsVisibility.css +0 -1
- package/src/lightning/slider/README.md +4 -4
- package/src/lightning/slider/form-element.slds.css +4 -4
- package/src/lightning/slider/slider.slds.css +106 -92
- package/src/lightning/spinner/__examples__/if/if.css +1 -1
- package/src/lightning/spinner/__examples__/sizes/sizes.css +1 -1
- package/src/lightning/spinner/spinner.slds.css +327 -326
- package/src/lightning/stackedTab/stacked-tab.slds.css +8 -7
- package/src/lightning/stackedTab/stackedTab.css +1 -1
- package/src/lightning/stackedTab/stackedTab.lbc.native.css +1 -1
- package/src/lightning/stackedTabset/stacked-tabset.slds.css +8 -8
- package/src/lightning/stackedTabset/stackedTabset.css +1 -1
- package/src/lightning/stackedTabset/stackedTabset.lbc.native.css +1 -1
- package/src/lightning/tab/tab.css +1 -1
- package/src/lightning/tab/tab.slds.css +44 -51
- package/src/lightning/tabBar/tab-bar.slds.css +405 -284
- package/src/lightning/tabset/__docs__/tabset.md +4 -4
- package/src/lightning/tabset/tabset.slds.css +12 -12
- package/src/lightning/textarea/__docs__/textarea.md +7 -7
- package/src/lightning/textarea/form-element.slds.css +4 -4
- package/src/lightning/textarea/textarea.js +22 -0
- package/src/lightning/textarea/textarea.lbc.synthetic.css +0 -1
- package/src/lightning/textarea/textarea.slds.css +124 -99
- package/src/lightning/tile/tile.slds.css +0 -1
- package/src/lightning/timepicker/form-element.slds.css +4 -4
- package/src/lightning/timepicker/timepicker.slds.css +13 -14
- package/src/lightning/toast/__docs__/toast.md +19 -19
- package/src/lightning/toast/button-icon.slds.css +50 -31
- package/src/lightning/toast/icon.slds.css +6 -2
- package/src/lightning/toast/toast.lbc.synthetic.css +12 -6
- package/src/lightning/toast/toast.slds.css +90 -90
- package/src/lightning/toastContainer/__docs__/toastContainer.md +4 -1
- package/src/lightning/toastContainer/toast.slds.css +90 -90
- package/src/lightning/toastContainer/toastContainer.lbc.synthetic.css +6 -6
- package/src/lightning/tree/tree.slds.css +1 -1
- package/src/lightning/treeGrid/__docs__/treeGrid.md +128 -64
- package/src/lightning/treeGrid/treeGrid.js +3 -1
- package/src/lightning/treeItem/calendar.slds.css +188 -191
- package/src/lightning/verticalNavigation/__docs__/verticalNavigation.md +5 -5
- package/src/lightning/verticalNavigation/verticalNavigation.css +1 -1
- package/src/lightning/verticalNavigationItemBadge/badge.slds.css +71 -56
- package/src/lightning/verticalNavigationOverflow/button.slds.css +32 -17
- package/src/lightning/verticalNavigationOverflow/vertical-navigation-section.slds.css +8 -8
- package/src/lightning/verticalNavigationOverflow/verticalNavigationOverflow.css +1 -1
- package/src/lightning/verticalNavigationOverflow/verticalNavigationOverflow.lbc.synthetic.css +1 -1
- package/src/lightning/verticalNavigationSection/vertical-navigation-section.slds.css +8 -8
- package/src/lightning/verticalNavigationSection/verticalNavigationSection.css +1 -1
- package/src/lightning/verticalNavigationSection/verticalNavigationSection.lbc.synthetic.css +1 -1
- package/scopedImports/@salesforce-gate-bc.256.enableReactiveCarousel.js +0 -6
- package/scopedImports/@salesforce-gate-colorIconsMenuItem.bc.ltng.js +0 -6
- package/scopedImports/@salesforce-gate-datatableIconSrc.bc.ltng.js +0 -6
- package/scopedImports/@salesforce-gate-formattedDateTimeDateStyle.bc.ltng.js +0 -6
- package/scopedImports/@salesforce-gate-groupedComboboxVariants.bc.ltng.js +0 -6
- package/scopedImports/@salesforce-gate-inputErrorIcon.ce.ltng.js +0 -6
- package/scopedImports/@salesforce-gate-lookups.lookupMetadataLayoutServiceBased.js +0 -6
- package/scopedImports/@salesforce-gate-modalReduceMotionFix.bc.ltng.js +0 -6
- package/scopedImports/@salesforce-gate-overlaySldsScopeClass.bc.ltng.js +0 -6
- package/scopedImports/@salesforce-gate-primitiveThemeProviderDisabled.bc.ltng.js +0 -6
- package/scopedImports/@salesforce-gate-recordFormFieldCaching.bc.ltng.js +0 -6
- package/scopedImports/@salesforce-gate-regexCustomElementCheck.bc.ltng.js +0 -6
- package/scopedImports/@salesforce-gate-sanitizeURL.bc.ltng.js +0 -6
- package/scopedImports/@salesforce-gate-treeGridCustomTypes.bc.ltng.js +0 -6
- package/scopedImports/@salesforce-gate-treeGridStaticCustomTypes.bc.ltng.js +0 -6
- package/scopedImports/@salesforce-gate-treeItemEndIcon.bc.ltng.js +0 -6
|
@@ -5,6 +5,7 @@ The `lightning/modal` module provides the `LightningModal` component to create a
|
|
|
5
5
|
Create a modal component in response to a user action, such as clicking a button or link. The modal blocks interaction with everything else on the page until the user acts upon or dismisses the modal.
|
|
6
6
|
|
|
7
7
|
Unlike other components, this component doesn't use a `lightning-modal` tag or extend `LightningElement`. There is no `lightning-modal` component. Instead, you create a modal by extending `LightningModal` and using these helper `lightning-modal-*` components to provide a header, footer and the body of the modal.
|
|
8
|
+
|
|
8
9
|
- `lightning-modal-body`
|
|
9
10
|
- `lightning-modal-header`
|
|
10
11
|
- `lightning-modal-footer`
|
|
@@ -56,13 +57,13 @@ When you close a modal, the modal instance is destroyed, not hidden. On close, t
|
|
|
56
57
|
|
|
57
58
|
The `.open()` method lets you assign values to the modal's properties. `LightningModal` provides these properties.
|
|
58
59
|
|
|
59
|
-
|
|
60
|
+
- `label` - Required. Sets the modal's title and assistive device label. If the modal has a header, set `label` in the `lightning-modal-header` component. If the modal doesn't have a header, set the `label` property when opening the modal.
|
|
60
61
|
|
|
61
|
-
|
|
62
|
+
- `size` - Determines how much of the viewport width the modal uses. Supported values are `small`, `medium`, `large`, and `full`. You can set the `size` attribute when you open the modal. Default value is `medium`. The height of the modal is determined by the amount of content in the `lightning-modal-body` component, and the `size` value. For more information on the `full` variant, see the **Styling Variants** section.
|
|
62
63
|
|
|
63
|
-
|
|
64
|
+
- `description` - Sets the modal's accessible description. It uses the `aria-description` attribute where supported, or falls back to `aria-describedby`. If you set a custom description value, include the label name at the beginning of your description, because some screen readers only read the description, and not the label.
|
|
64
65
|
|
|
65
|
-
|
|
66
|
+
- `disableClose` - Prevents closing the modal by normal means like the ESC key, the close button, or `.close()`. For example, you could briefly set `disableClose` to true while a completed form is saving, so the user doesn't dismiss the modal early. See [**Use the `disableClose` Attribute**](#use-the-disableclose-attribute).
|
|
66
67
|
|
|
67
68
|
In this example, the app opens the `myModal` component. It invokes the `.open()` method in a `handleClick()` function bound to the app button’s `onclick` attribute, and uses `async` and `await` keywords to handle the promise returned by `.open()`. This example overrides the `size` value by setting it to `large` and sets the modal’s user-defined property `content`.
|
|
68
69
|
|
|
@@ -87,6 +88,7 @@ export default class MyApp extends LightningElement {
|
|
|
87
88
|
}
|
|
88
89
|
}
|
|
89
90
|
```
|
|
91
|
+
|
|
90
92
|
The HTML template for this app contains a button that opens the modal and displays the result returned when the modal closes.
|
|
91
93
|
|
|
92
94
|
```html
|
|
@@ -126,6 +128,7 @@ export default class MyPage extends LightningElement {
|
|
|
126
128
|
}
|
|
127
129
|
}
|
|
128
130
|
```
|
|
131
|
+
|
|
129
132
|
The modal dialog can then use this property. In this case, the modal creates buttons whose labels are provided in the `options` array.
|
|
130
133
|
|
|
131
134
|
```js
|
|
@@ -558,10 +561,11 @@ handleRowButtonClick(event) {
|
|
|
558
561
|
#### Styling Forms in Native Shadow
|
|
559
562
|
|
|
560
563
|
NOTE:
|
|
564
|
+
|
|
561
565
|
- Due to the intentional changes introduced with Native Shadow, it is important to understand that styles outside of your modal's code will not be able to style elements within your modal.
|
|
562
566
|
- Don't import SLDS styles your web UI doesn't actually use. Adding extra CSS files will cause the performance of your web UI to be lowered
|
|
563
567
|
|
|
564
|
-
A common use case for `LightningModal` is to include a form and form elements with common SLDS layouts.
|
|
568
|
+
A common use case for `LightningModal` is to include a form and form elements with common SLDS layouts. While the individual Lightning Base Components will contain their own styles in Native Shadow, [Lightning Design System form element styling](https://www.lightningdesignsystem.com/components/form-element/#Stacked) for form layouts like the form element variants [Stacked](https://www.lightningdesignsystem.com/components/form-element/#Stacked), [Horizontal](https://www.lightningdesignsystem.com/components/form-element/#Horizontal) and [Compound](https://www.lightningdesignsystem.com/components/form-element/#Compound) aren't present in Native Shadow, but still needed.
|
|
565
569
|
|
|
566
570
|
In order to address this, you can import the form element layout library, `lightning/sldsFormElementUtils`, into your `LightningModal`'s implementation code, along with other commonly needed libaries.
|
|
567
571
|
|
|
@@ -590,9 +594,10 @@ Following the previous `c/myModalWithTreeGridNavigation` implementation example,
|
|
|
590
594
|
The `lightning-modal-header` and `lightning-modal-footer` child components are optional, and you can choose to not include one or the other in your modal.
|
|
591
595
|
|
|
592
596
|
The headerless variant of `LightningModal` has these additional requirements.
|
|
597
|
+
|
|
593
598
|
- Must set a descriptive modal title with the `label` property using `Modal.open({ label })` or you’ll get a console error.
|
|
594
|
-
-
|
|
595
|
-
-
|
|
599
|
+
- The `label` property is required for all variants of `LightningModal`. Assistive devices read the `label` value, even though the headerless modal variant doesn't display the label.
|
|
600
|
+
- Because this variant doesn't use `lightning-modal-header`, you have to manually create an `<h1>` heading in `lightning-modal-body`. Provide accessible structure by starting with heading level `<h1>` and using levels up to `<h6>` appropriately. For more information, see [Semantic Structure, Headings on WebAim.org](https://webaim.org/techniques/semanticstructure/#headings).
|
|
596
601
|
|
|
597
602
|
You can also create a full-screen modal component by setting the `size` attribute to `full`. This variant resizes the modal to the full width and height of the viewport on screens up to 30em (~480 pixels or less), like mobile phone devices. On screens larger than 30em (~481 pixels or larger), like desktop monitors or tablets, a `size=full` modal has the same behavior as a modal with `size=large` set.
|
|
598
603
|
|
|
@@ -624,9 +629,9 @@ Component styling hooks use the `--slds-c-*` prefix and change styling for speci
|
|
|
624
629
|
|
|
625
630
|
Upon opening, the modal determines where to place focus as follows.
|
|
626
631
|
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
|
|
632
|
+
- When the modal header is present, the modal component places the focus on the title text in the header.
|
|
633
|
+
- When a modal header isn’t present, the modal component places the focus on the first interactive element in the modal body, such as a link, button, or input field.
|
|
634
|
+
- When the modal body doesn’t have interactive elements, or the only interactive element is a tooltip, the modal component places focus on the close button.
|
|
630
635
|
|
|
631
636
|
The focus is determined according to
|
|
632
637
|
the [Global Focus Guidelines](https://www.lightningdesignsystem.com/accessibility/guidelines/global-focus/#dialogs) for Lightning Design System.
|
|
@@ -638,6 +643,7 @@ To include tagline text or link content for the header section, add it between t
|
|
|
638
643
|
#### Unit Testing
|
|
639
644
|
|
|
640
645
|
Writing unit tests for `LightningModal` requires two sets of tests.
|
|
646
|
+
|
|
641
647
|
1. Parent components that use `c/myModal` define a mocked result when `.open()` is called during a test run. This mock speeds up testing and prevents repetition while testing actions that trigger modals.
|
|
642
648
|
2. The unit tests for `c/myModal` test the end-to-end functionality of the modal as a self contained component.
|
|
643
649
|
|
|
@@ -717,20 +723,20 @@ The stubs for `LightningModal` have shorthand selectors to make unit testing mor
|
|
|
717
723
|
|
|
718
724
|
- `element.closeValue` - Value passed into `this.close(value)`
|
|
719
725
|
- `element.modalHeader$()` - querySelect a single node in `lightning-modal-header`
|
|
720
|
-
|
|
726
|
+
- Usage: `element.modalHeader$('a')` Returns first link
|
|
721
727
|
- `element.modalHeader$$()` - querySelectAll multiple nodes in `lightning-modal-header`
|
|
722
|
-
|
|
723
|
-
|
|
724
|
-
|
|
728
|
+
- Usage:
|
|
729
|
+
- `elem.modalHeader$$()` Returns all nodes in header
|
|
730
|
+
- `elem.modalHeader$$('a')` Returns all links in header
|
|
725
731
|
- `element.modalBody$()` - querySelect a single node in `lightning-modal-body`
|
|
726
|
-
|
|
732
|
+
- Usage: `element.modalBody$('button')` Returns first button
|
|
727
733
|
- `element.modalBody$$()` - querySelectAll multiple nodes in `lightning-modal-body`
|
|
728
|
-
|
|
729
|
-
|
|
730
|
-
|
|
734
|
+
- Usage:
|
|
735
|
+
- `elem.modalBody$$()` Returns all nodes in body
|
|
736
|
+
- `elem.modalBody$$('button, [data-button]')` Returns buttons in body
|
|
731
737
|
- `element.modalFooter$()` - querySelect a single node in `lightning-modal-footer`
|
|
732
|
-
|
|
738
|
+
- Usage: `element.modalFooter$('button')` Returns first button
|
|
733
739
|
- `element.modalFooter$$()` - querySelectAll multiple nodes in `lightning-modal-footer`
|
|
734
|
-
|
|
735
|
-
|
|
736
|
-
|
|
740
|
+
- Usage:
|
|
741
|
+
- `elem.modalFooter$$()` Returns all nodes in footer
|
|
742
|
+
- `elem.modalFooter$$('button, [data-button]')` Returns buttons in footer
|
|
@@ -140,9 +140,8 @@ async function getModalInternals(config, modalIndex = 0) {
|
|
|
140
140
|
// if modal base exists, continue getting modal internals
|
|
141
141
|
if (modalBaseExists) {
|
|
142
142
|
// get modal base element backdrop
|
|
143
|
-
modalBaseBackdropElem =
|
|
144
|
-
MODAL_BODY_BACKDROP
|
|
145
|
-
);
|
|
143
|
+
modalBaseBackdropElem =
|
|
144
|
+
await modalBaseElem.shadow$(MODAL_BODY_BACKDROP);
|
|
146
145
|
|
|
147
146
|
// get focus trap element
|
|
148
147
|
focusTrapElem = await modalBaseElem.shadow$(FOCUS_TRAP);
|
|
@@ -324,9 +323,8 @@ async function validateModalCloseButtonAttributes(config) {
|
|
|
324
323
|
let modalCloseButtonCssClass = null;
|
|
325
324
|
const { modalCloseButton } = await getModalInternals(config);
|
|
326
325
|
if (modalCloseButton) {
|
|
327
|
-
modalCloseButtonVariant =
|
|
328
|
-
'variant'
|
|
329
|
-
);
|
|
326
|
+
modalCloseButtonVariant =
|
|
327
|
+
await modalCloseButton.getAttribute('variant');
|
|
330
328
|
modalCloseButtonCssClass = await modalCloseButton.getAttribute('class');
|
|
331
329
|
}
|
|
332
330
|
|
|
@@ -451,9 +449,8 @@ async function validateModalHeightBehavior(config) {
|
|
|
451
449
|
|
|
452
450
|
// modalHeader is not always present in the examples
|
|
453
451
|
if (!isVariantHeadless) {
|
|
454
|
-
const { headerOuterDiv } =
|
|
455
|
-
modalHeaderElem
|
|
456
|
-
);
|
|
452
|
+
const { headerOuterDiv } =
|
|
453
|
+
await getModalHeaderInternals(modalHeaderElem);
|
|
457
454
|
const heightHdr = await headerOuterDiv.getSize('height');
|
|
458
455
|
if (heightHdr > 0) {
|
|
459
456
|
totalModalElemHeight += heightHdr;
|
|
@@ -462,9 +459,8 @@ async function validateModalHeightBehavior(config) {
|
|
|
462
459
|
|
|
463
460
|
// modalFooter is not always present in the examples
|
|
464
461
|
if (!isVariantFootless) {
|
|
465
|
-
const { footerOuterDiv } =
|
|
466
|
-
modalFooterElem
|
|
467
|
-
);
|
|
462
|
+
const { footerOuterDiv } =
|
|
463
|
+
await getModalFooterInternals(modalFooterElem);
|
|
468
464
|
const heightFtr = await footerOuterDiv.getSize('height');
|
|
469
465
|
if (heightFtr > 0) {
|
|
470
466
|
totalModalElemHeight += heightFtr;
|
|
@@ -476,9 +472,8 @@ async function validateModalHeightBehavior(config) {
|
|
|
476
472
|
|
|
477
473
|
// modalFooter is not always present in the examples
|
|
478
474
|
if (!isVariantFootless) {
|
|
479
|
-
const { footerOuterDiv } =
|
|
480
|
-
modalFooterElem
|
|
481
|
-
);
|
|
475
|
+
const { footerOuterDiv } =
|
|
476
|
+
await getModalFooterInternals(modalFooterElem);
|
|
482
477
|
const heightFtr = await footerOuterDiv.getSize('height');
|
|
483
478
|
if (heightFtr > 0) {
|
|
484
479
|
totalModalElemHeight += heightFtr;
|
|
@@ -573,9 +568,8 @@ async function validateModalWidthBehavior(config) {
|
|
|
573
568
|
|
|
574
569
|
// modalHeader is not always present in the examples
|
|
575
570
|
if (!isVariantHeadless) {
|
|
576
|
-
const { headerOuterDiv } =
|
|
577
|
-
modalHeaderElem
|
|
578
|
-
);
|
|
571
|
+
const { headerOuterDiv } =
|
|
572
|
+
await getModalHeaderInternals(modalHeaderElem);
|
|
579
573
|
const locHeader = await headerOuterDiv.getLocation();
|
|
580
574
|
if (locHeader) {
|
|
581
575
|
locHeaderX = locHeader.x;
|
|
@@ -583,9 +577,8 @@ async function validateModalWidthBehavior(config) {
|
|
|
583
577
|
}
|
|
584
578
|
// modalFooter is not always present in the examples
|
|
585
579
|
if (!isVariantFootless) {
|
|
586
|
-
const { footerOuterDiv } =
|
|
587
|
-
modalFooterElem
|
|
588
|
-
);
|
|
580
|
+
const { footerOuterDiv } =
|
|
581
|
+
await getModalFooterInternals(modalFooterElem);
|
|
589
582
|
const locFooter = await footerOuterDiv.getLocation();
|
|
590
583
|
if (locFooter) {
|
|
591
584
|
locFooterX = locFooter.x;
|
|
@@ -1,196 +1,200 @@
|
|
|
1
1
|
|
|
2
|
-
|
|
3
|
-
/**
|
|
2
|
+
/**
|
|
4
3
|
* Remap to SLDS blueprint hooks for parity
|
|
5
4
|
* https://www.lightningdesignsystem.com/components/modals/#Styling-Hooks-Overview
|
|
6
5
|
*
|
|
7
6
|
* "Shared" Styling Hooks for modal base/header/body/footer
|
|
8
7
|
*/
|
|
9
8
|
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
:
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
9
|
+
:host([data-render-mode="shadow"]) [part='modal-backdrop'] {
|
|
10
|
+
--slds-c-backdrop-color-background: var(--slds-c-modalbase-backdrop-color-background);
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
:host([data-render-mode="shadow"]) [part='modal'] {
|
|
14
|
+
/* Map modal component hooks to single "shared" hooks from blueprint */
|
|
15
|
+
/* stylelint-disable sds-stylelint-plugin/styling-hooks-pattern */
|
|
16
|
+
|
|
17
|
+
/* '--slds-c-modal-shadow' is used in body/footer */
|
|
18
|
+
--slds-c-modalbody-shadow: var(--slds-c-modal-shadow);
|
|
19
|
+
--slds-c-modalfooter-shadow: var(--slds-c-modal-shadow);
|
|
20
|
+
|
|
21
|
+
/* '--slds-c-modal-color-border' is used in header/footer */
|
|
22
|
+
--slds-c-modalheader-color-border: var(--slds-c-modal-color-border);
|
|
23
|
+
--slds-c-modalfooter-color-border: var(--slds-c-modal-color-border);
|
|
24
|
+
|
|
25
|
+
/* '--slds-c-modal-radius-border' is used in header/body/footer */
|
|
26
|
+
--slds-c-modalheader-radius-border: var(--slds-c-modal-radius-border);
|
|
27
|
+
--slds-c-modalbody-radius-border: var(--slds-c-modal-radius-border);
|
|
28
|
+
--slds-c-modalfooter-radius-border: var(--slds-c-modal-radius-border);
|
|
29
|
+
|
|
30
|
+
/* '--slds-c-modal-sizing-border' is used in header/footer */
|
|
31
|
+
--slds-c-modalheader-sizing-border: var(--slds-c-modal-sizing-border);
|
|
32
|
+
--slds-c-modalfooter-sizing-border: var(--slds-c-modal-sizing-border);
|
|
33
|
+
|
|
34
|
+
/* stylelint-enable sds-stylelint-plugin/styling-hooks-pattern */
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
:host([data-render-mode="shadow"]) .slds-backdrop {
|
|
38
|
+
transition-duration: 0.4s;
|
|
39
|
+
width: 100%;
|
|
40
|
+
height: 100%;
|
|
41
|
+
opacity: 0;
|
|
42
|
+
visibility: hidden;
|
|
43
|
+
position: fixed;
|
|
44
|
+
inset-block-start: 0;
|
|
45
|
+
inset-inline-end: 0;
|
|
46
|
+
inset-block-end: 0;
|
|
47
|
+
inset-inline-start: 0;
|
|
48
|
+
background: var(
|
|
49
|
+
--slds-c-modalbase-backdrop-color-background,
|
|
50
|
+
var(--slds-g-color-neutral-10-opacity-50, rgba(8, 7, 7, 60%))
|
|
51
|
+
);
|
|
52
|
+
z-index: 9000;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
:host([data-render-mode="shadow"]) .slds-backdrop_open {
|
|
56
|
+
visibility: visible;
|
|
57
|
+
opacity: 1;
|
|
58
|
+
transition: opacity 0.4s linear;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
:host([data-render-mode="shadow"]) .slds-modal {
|
|
62
|
+
opacity: 0;
|
|
63
|
+
visibility: hidden;
|
|
64
|
+
transition:
|
|
65
|
+
transform 0.1s linear,
|
|
66
|
+
opacity 0.1s;
|
|
67
|
+
position: fixed;
|
|
68
|
+
inset-block-start: 0;
|
|
69
|
+
inset-inline-end: 0;
|
|
70
|
+
inset-block-end: 0;
|
|
71
|
+
inset-inline-start: 0;
|
|
72
|
+
z-index: 9001;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
:host([data-render-mode="shadow"]) .slds-modal__container {
|
|
76
|
+
position: relative;
|
|
77
|
+
transform: translate(0, 0);
|
|
78
|
+
transition:
|
|
79
|
+
transform 0.1s linear,
|
|
80
|
+
opacity 0.1s linear;
|
|
81
|
+
display: flex;
|
|
82
|
+
flex-direction: column;
|
|
83
|
+
justify-content: center;
|
|
84
|
+
margin: 0 var(--slds-g-spacing-6);
|
|
85
|
+
height: 100%;
|
|
86
|
+
padding: var(--slds-g-spacing-8) 0 var(--slds-g-spacing-12) 0;
|
|
87
|
+
border-radius: var(--slds-g-spacing-1);
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
:host([data-render-mode="shadow"]) .slds-modal__close {
|
|
91
|
+
width: 2rem;
|
|
92
|
+
height: 2rem;
|
|
93
|
+
margin-inline-start: auto;
|
|
94
|
+
position: relative;
|
|
95
|
+
background-color: var(--slds-g-color-neutral-base-100);
|
|
96
|
+
border-radius: 0.25rem;
|
|
97
|
+
bottom: 0.5rem;
|
|
98
|
+
flex-shrink: 0;
|
|
99
|
+
justify-content: center;
|
|
100
|
+
display: inline-flex;
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
:host([data-render-mode="shadow"]) .slds-fade-in-open {
|
|
104
|
+
opacity: 1;
|
|
105
|
+
visibility: visible;
|
|
106
|
+
transition: opacity 0.1s linear;
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
:host([data-render-mode="shadow"]) .slds-fade-in-open .slds-modal__container-reset {
|
|
110
|
+
opacity: 1;
|
|
111
|
+
visibility: visible;
|
|
112
|
+
transform: translate(0, 0);
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
/* Sizes: Small, Medium, Large */
|
|
116
|
+
|
|
117
|
+
@media (width >= 48em) {
|
|
73
118
|
:host([data-render-mode="shadow"]) .slds-modal__container {
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
flex-direction: column;
|
|
79
|
-
justify-content: center;
|
|
80
|
-
margin: 0 var(--slds-g-spacing-6);
|
|
81
|
-
height: 100%;
|
|
82
|
-
padding: var(--slds-g-spacing-8) 0 var(--slds-g-spacing-12) 0;
|
|
83
|
-
border-radius: var(--slds-g-spacing-1);
|
|
119
|
+
margin: 0 auto;
|
|
120
|
+
width: 50%;
|
|
121
|
+
max-width: 40rem;
|
|
122
|
+
min-width: 20rem;
|
|
84
123
|
}
|
|
85
124
|
|
|
86
|
-
:host([data-render-mode="shadow"]) .slds-
|
|
87
|
-
width:
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
position: relative;
|
|
91
|
-
background-color: var(--slds-g-color-neutral-base-100);
|
|
92
|
-
border-radius: 0.25rem;
|
|
93
|
-
bottom: 0.5rem;
|
|
94
|
-
flex-shrink: 0;
|
|
95
|
-
justify-content: center;
|
|
96
|
-
display: inline-flex;
|
|
125
|
+
:host([data-render-mode="shadow"]) .slds-modal_small .slds-modal__container {
|
|
126
|
+
width: 60%;
|
|
127
|
+
max-width: 52.0625rem;
|
|
128
|
+
min-width: 40rem;
|
|
97
129
|
}
|
|
98
130
|
|
|
99
|
-
:host([data-render-mode="shadow"]) .slds-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
131
|
+
:host([data-render-mode="shadow"]) .slds-modal_medium .slds-modal__container {
|
|
132
|
+
width: 70%;
|
|
133
|
+
max-width: 75rem;
|
|
134
|
+
min-width: 40rem;
|
|
103
135
|
}
|
|
104
136
|
|
|
105
|
-
:host([data-render-mode="shadow"]) .slds-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
137
|
+
:host([data-render-mode="shadow"]) .slds-modal_large .slds-modal__container {
|
|
138
|
+
width: 90%;
|
|
139
|
+
max-width: none;
|
|
140
|
+
min-width: 40rem;
|
|
109
141
|
}
|
|
142
|
+
}
|
|
110
143
|
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
@media (width >= 48em) {
|
|
114
|
-
:host([data-render-mode="shadow"]) .slds-modal__container {
|
|
115
|
-
margin: 0 auto;
|
|
116
|
-
width: 50%;
|
|
117
|
-
max-width: 40rem;
|
|
118
|
-
min-width: 20rem;
|
|
119
|
-
}
|
|
120
|
-
|
|
121
|
-
:host([data-render-mode="shadow"]) .slds-modal_small .slds-modal__container {
|
|
122
|
-
width: 60%;
|
|
123
|
-
max-width: 52.0625rem;
|
|
124
|
-
min-width: 40rem;
|
|
125
|
-
}
|
|
126
|
-
|
|
127
|
-
:host([data-render-mode="shadow"]) .slds-modal_medium .slds-modal__container {
|
|
128
|
-
width: 70%;
|
|
129
|
-
max-width: 75rem;
|
|
130
|
-
min-width: 40rem;
|
|
131
|
-
}
|
|
132
|
-
|
|
133
|
-
:host([data-render-mode="shadow"]) .slds-modal_large .slds-modal__container {
|
|
134
|
-
width: 90%;
|
|
135
|
-
max-width: none;
|
|
136
|
-
min-width: 40rem;
|
|
137
|
-
}
|
|
138
|
-
}
|
|
144
|
+
/* Sizes: Full */
|
|
139
145
|
|
|
140
|
-
|
|
146
|
+
/* .slds-modal_full {} */
|
|
141
147
|
|
|
142
|
-
|
|
148
|
+
/* Behaves like large size when not in a small viewport */
|
|
143
149
|
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
:
|
|
148
|
-
|
|
149
|
-
max-width: none;
|
|
150
|
-
min-width: 40rem;
|
|
151
|
-
}
|
|
150
|
+
@media (width >= 48em) {
|
|
151
|
+
:host([data-render-mode="shadow"]) .slds-modal_full .slds-modal__container {
|
|
152
|
+
width: 90%;
|
|
153
|
+
max-width: none;
|
|
154
|
+
min-width: 40rem;
|
|
152
155
|
}
|
|
156
|
+
}
|
|
153
157
|
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
@media (width <= 30em) {
|
|
157
|
-
:host([data-render-mode="shadow"]) .slds-modal_full {
|
|
158
|
-
/* Account for iOS safe areas so our modal doesn't load underneath iOS elements. */
|
|
159
|
-
inset-block-start: env(safe-area-inset-top, 0);
|
|
158
|
+
/* Original SLDS implementation was desktop-first. This is now mobile-first for <=480px */
|
|
160
159
|
|
|
161
|
-
|
|
162
|
-
|
|
160
|
+
@media (width <= 30em) {
|
|
161
|
+
:host([data-render-mode="shadow"]) .slds-modal_full {
|
|
162
|
+
/* Account for iOS safe areas so our modal doesn't load underneath iOS elements. */
|
|
163
|
+
inset-block-start: env(safe-area-inset-top, 0);
|
|
163
164
|
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
height: calc(100dvh - env(safe-area-inset-top) - env(safe-area-inset-bottom));
|
|
167
|
-
}
|
|
165
|
+
/* Override slds-modal's bottom: 0 so we can make the height dynamic. */
|
|
166
|
+
inset-block-end: auto;
|
|
168
167
|
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
margin: 0;
|
|
174
|
-
padding: var(--slds-g-spacing-4) 0 0 0;
|
|
175
|
-
background-color: var(--slds-c-modalbase-color-background, var(--slds-g-color-surface-1));
|
|
176
|
-
border-radius: 0;
|
|
168
|
+
/* Viewport may be dynamic, e.g., iOS Safari toolbar hiding behavior, so we use dvh. Safe areas may not be required here. */
|
|
169
|
+
/* stylelint-disable-next-line unit-no-unknown */
|
|
170
|
+
height: calc(100dvh - env(safe-area-inset-top) - env(safe-area-inset-bottom));
|
|
171
|
+
}
|
|
177
172
|
|
|
178
|
-
|
|
173
|
+
:host([data-render-mode="shadow"]) .slds-modal_full .slds-modal__container {
|
|
174
|
+
width: 100%;
|
|
175
|
+
max-width: none;
|
|
176
|
+
min-width: 0;
|
|
177
|
+
margin: 0;
|
|
178
|
+
padding: var(--slds-g-spacing-4) 0 0 0;
|
|
179
|
+
background-color: var(--slds-c-modalbase-color-background, var(--slds-g-color-surface-1));
|
|
180
|
+
border-radius: 0;
|
|
181
|
+
|
|
182
|
+
/* Establishes the main layout of the modal. Grid is defined by grid-template-areas
|
|
179
183
|
which explicitly defines the grid and allows optional elements to be omitted like
|
|
180
184
|
the header or footer. */
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
185
|
+
display: grid;
|
|
186
|
+
/* stylelint-disable-next-line unit-no-unknown */
|
|
187
|
+
height: 100dvh;
|
|
188
|
+
grid-template-columns: 1fr;
|
|
189
|
+
grid-template-rows: min-content min-content 1fr min-content;
|
|
190
|
+
grid-template-areas: 'close' 'header' 'content' 'footer';
|
|
191
|
+
}
|
|
192
|
+
|
|
193
|
+
:host([data-render-mode="shadow"]) .slds-modal_full .slds-modal__close {
|
|
194
|
+
grid-area: close;
|
|
195
|
+
inset-inline-end: var(--slds-g-spacing-4);
|
|
196
|
+
|
|
197
|
+
/**
|
|
194
198
|
* A few things going on here:
|
|
195
199
|
* - We want to avoid a markup change for a single modifier so we reassign/override.
|
|
196
200
|
* - Button icon doesn't have component level hooks (yet), so we don't include them here
|
|
@@ -199,18 +203,18 @@
|
|
|
199
203
|
* so the values of empty hooks default to initial values. In the case
|
|
200
204
|
* of background colors, the background will disappear (initial = transparent).
|
|
201
205
|
*/
|
|
202
|
-
|
|
203
|
-
|
|
206
|
+
--slds-c-button-color-background: var(--slds-g-color-surface-container-1, white);
|
|
207
|
+
--slds-c-button-color-background-active: var(--slds-g-color-surface-container-1, white);
|
|
204
208
|
|
|
205
|
-
|
|
206
|
-
|
|
209
|
+
color: var(--slds-g-color-on-surface-1);
|
|
210
|
+
}
|
|
207
211
|
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
+
:host([data-render-mode="shadow"]) .slds-modal_full .slds-modal__close:hover,:host([data-render-mode="shadow"])
|
|
213
|
+
.slds-modal_full .slds-modal__close:focus {
|
|
214
|
+
color: var(--slds-g-color-accent-3);
|
|
215
|
+
}
|
|
212
216
|
|
|
213
|
-
|
|
217
|
+
/**
|
|
214
218
|
* INTERNAL USE ONLY - SUBJECT TO CHANGE AND REMOVAL
|
|
215
219
|
*
|
|
216
220
|
* SLDS Blueprint <> LBC Parity Patch
|
|
@@ -222,23 +226,23 @@
|
|
|
222
226
|
* makes this not feasible. Not ideal, but this is the best solution for now.
|
|
223
227
|
* Selectors are scoped to lightning-* to avoid any potential outside conflicts.
|
|
224
228
|
*/
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
}
|
|
229
|
-
}
|
|
230
|
-
|
|
231
|
-
/* TODO W-12674349: remove after assistive text util is added */
|
|
232
|
-
|
|
233
|
-
:host([data-render-mode="shadow"]) .slds-assistive-text {
|
|
234
|
-
position: absolute !important;
|
|
235
|
-
margin: -1px !important;
|
|
236
|
-
border: 0 !important;
|
|
237
|
-
padding: 0 !important;
|
|
238
|
-
width: 1px !important;
|
|
239
|
-
height: 1px !important;
|
|
240
|
-
overflow: hidden !important;
|
|
241
|
-
clip: rect(0 0 0 0) !important;
|
|
242
|
-
text-transform: none !important;
|
|
243
|
-
white-space: nowrap !important;
|
|
229
|
+
:host([data-render-mode="shadow"]) .slds-modal_full lightning-button-icon + div,:host([data-render-mode="shadow"])
|
|
230
|
+
.slds-modal_full lightning-modal {
|
|
231
|
+
display: contents;
|
|
244
232
|
}
|
|
233
|
+
}
|
|
234
|
+
|
|
235
|
+
/* TODO W-12674349: remove after assistive text util is added */
|
|
236
|
+
|
|
237
|
+
:host([data-render-mode="shadow"]) .slds-assistive-text {
|
|
238
|
+
position: absolute !important;
|
|
239
|
+
margin: -1px !important;
|
|
240
|
+
border: 0 !important;
|
|
241
|
+
padding: 0 !important;
|
|
242
|
+
width: 1px !important;
|
|
243
|
+
height: 1px !important;
|
|
244
|
+
overflow: hidden !important;
|
|
245
|
+
clip: rect(0 0 0 0) !important;
|
|
246
|
+
text-transform: none !important;
|
|
247
|
+
white-space: nowrap !important;
|
|
248
|
+
}
|