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.
Files changed (393) hide show
  1. package/README.md +91 -91
  2. package/{scopedImports/@salesforce-gate-accordionCloseSingleSection.bc.ltng.js → external/flagStub.js} +1 -1
  3. package/{scopedImports/@salesforce-gate-bc.256.enableInputSearchCommitEvent.js → external/gateStub.js} +1 -1
  4. package/package.json +89 -77
  5. package/scopedImports/@salesforce-internal-core.appVersion.js +1 -1
  6. package/scopedImports/@salesforce-label-LightningMultiColumnSortingModal.modalTitle.js +1 -1
  7. package/scopedImports/{@salesforce-gate-assertContext.bc.ltng.js → @salesforce-label-LightningPrimitiveColumnSorter.deleteButtonAltText.js} +1 -1
  8. package/src/lightning/accordion/__docs__/accordion.md +2 -2
  9. package/src/lightning/accordion/accordion-section.slds.css +100 -107
  10. package/src/lightning/accordion/accordion.lbc.native.css +0 -1
  11. package/src/lightning/accordion/accordion.lbc.synthetic.css +0 -1
  12. package/src/lightning/accordion/accordion.slds.css +12 -12
  13. package/src/lightning/accordionSection/__docs__/accordionSection.md +1 -0
  14. package/src/lightning/accordionSection/accordion-section.slds.css +100 -107
  15. package/src/lightning/accordionSection/accordionSection.lbc.native.css +0 -2
  16. package/src/lightning/accordionSection/accordionSection.lbc.synthetic.css +1 -2
  17. package/src/lightning/accordionSection/button.slds.css +32 -17
  18. package/src/lightning/alert/__docs__/alert.md +13 -13
  19. package/src/lightning/alert/alert.css +1 -1
  20. package/src/lightning/ariaObserver/__docs__/ariaObserver.md +16 -10
  21. package/src/lightning/avatar/__docs__/avatar.md +2 -2
  22. package/src/lightning/avatar/avatar.css +1 -1
  23. package/src/lightning/avatar/avatar.slds.css +96 -97
  24. package/src/lightning/badge/__docs__/badge.md +3 -3
  25. package/src/lightning/badge/badge.css +1 -1
  26. package/src/lightning/badge/badge.slds.css +71 -56
  27. package/src/lightning/barcodeScanner/__docs__/barcodeScanner.md +9 -9
  28. package/src/lightning/baseCombobox/base-combobox.slds.css +171 -170
  29. package/src/lightning/baseCombobox/baseCombobox.lbc.synthetic.css +0 -1
  30. package/src/lightning/baseCombobox/dropdown.slds.css +405 -388
  31. package/src/lightning/baseCombobox/input-text.slds.css +172 -190
  32. package/src/lightning/baseCombobox/listbox.slds.css +181 -175
  33. package/src/lightning/baseCombobox/spinner.slds.css +327 -326
  34. package/src/lightning/baseComboboxItem/listbox.slds.css +181 -175
  35. package/src/lightning/breadcrumb/__docs__/breadcrumb.md +2 -2
  36. package/src/lightning/breadcrumb/breadcrumb.slds.css +13 -14
  37. package/src/lightning/breadcrumbs/__docs__/breadcrumbs.md +1 -1
  38. package/src/lightning/breadcrumbs/breadcrumbs.css +1 -1
  39. package/src/lightning/breadcrumbs/breadcrumbs.lbc.native.css +1 -1
  40. package/src/lightning/breadcrumbs/breadcrumbs.slds.css +27 -28
  41. package/src/lightning/button/__docs__/button.md +16 -16
  42. package/src/lightning/button/__examples__/accesskey/accesskey.css +5 -3
  43. package/src/lightning/button/__examples__/inverse/inverse.css +2 -2
  44. package/src/lightning/button/button.slds.css +32 -17
  45. package/src/lightning/buttonGroup/__docs__/buttonGroup.md +5 -5
  46. package/src/lightning/buttonGroup/button-group.slds.css +1 -2
  47. package/src/lightning/buttonGroup/buttonGroup.lbc.native.css +1 -1
  48. package/src/lightning/buttonIcon/__docs__/buttonIcon.md +20 -20
  49. package/src/lightning/buttonIcon/button-icon.slds.css +50 -31
  50. package/src/lightning/buttonIconStateful/__docs__/buttonIconStateful.md +12 -12
  51. package/src/lightning/buttonIconStateful/button-icon-stateful.slds.css +33 -40
  52. package/src/lightning/buttonIconStateful/button-icon.slds.css +50 -31
  53. package/src/lightning/buttonIconStateful/button.slds.css +32 -17
  54. package/src/lightning/buttonIconStateful/buttonIconStateful.lbc.synthetic.css +5 -1
  55. package/src/lightning/buttonMenu/__docs__/buttonMenu.md +22 -22
  56. package/src/lightning/buttonMenu/button-icon.slds.css +50 -31
  57. package/src/lightning/buttonMenu/button-menu.slds.css +113 -115
  58. package/src/lightning/buttonMenu/button.slds.css +32 -17
  59. package/src/lightning/buttonMenu/buttonMenu.css +4 -1
  60. package/src/lightning/buttonMenu/buttonMenu.lbc.synthetic.css +1 -3
  61. package/src/lightning/buttonMenu/dropdown.slds.css +405 -388
  62. package/src/lightning/buttonStateful/__docs__/buttonStateful.md +9 -9
  63. package/src/lightning/buttonStateful/button-stateful.slds.css +98 -102
  64. package/src/lightning/buttonStateful/button.slds.css +32 -17
  65. package/src/lightning/calendar/calendar.slds.css +188 -191
  66. package/src/lightning/calendar/dropdown.slds.css +405 -388
  67. package/src/lightning/card/__docs__/card.md +1 -1
  68. package/src/lightning/card/__examples__/custom/custom.css +2 -2
  69. package/src/lightning/card/card.slds.css +137 -175
  70. package/src/lightning/carousel/button-menu.slds.css +113 -115
  71. package/src/lightning/carousel/button.slds.css +32 -17
  72. package/src/lightning/carousel/carousel.js +11 -18
  73. package/src/lightning/carousel/carousel.slds.css +15 -6
  74. package/src/lightning/carouselImage/carouselImage.lbc.native.css +0 -1
  75. package/src/lightning/checkboxGroup/__docs__/checkboxGroup.md +7 -7
  76. package/src/lightning/checkboxGroup/checkbox-group.slds.css +94 -60
  77. package/src/lightning/checkboxGroup/form-element.slds.css +4 -4
  78. package/src/lightning/colorPickerCustom/color-picker-custom.slds.css +212 -211
  79. package/src/lightning/colorPickerCustom/input-text.slds.css +172 -190
  80. package/src/lightning/colorPickerPanel/color-picker-panel.slds.css +22 -23
  81. package/src/lightning/colorPickerPanel/colorPickerPanel.lbc.synthetic.css +4 -2
  82. package/src/lightning/colorPickerPanel/popover.slds.css +127 -128
  83. package/src/lightning/combobox/__docs__/combobox.md +4 -5
  84. package/src/lightning/combobox/combobox.css +1 -2
  85. package/src/lightning/combobox/combobox.lbc.synthetic.css +17 -4
  86. package/src/lightning/combobox/combobox.slds.css +9 -10
  87. package/src/lightning/combobox/form-element.slds.css +4 -4
  88. package/src/lightning/confirm/__docs__/confirm.md +14 -14
  89. package/src/lightning/context/README.md +13 -13
  90. package/src/lightning/datatable/README.md +2 -3
  91. package/src/lightning/datatable/__docs__/datatable.md +82 -77
  92. package/src/lightning/datatable/__docs__/multi-column-sorting.md +4 -4
  93. package/src/lightning/datatable/__requirements__/column_widths_requirements.md +68 -68
  94. package/src/lightning/datatable/__requirements__/requirements.md +1 -1
  95. package/src/lightning/datatable/button-icon.slds.css +50 -31
  96. package/src/lightning/datatable/columns.js +2 -2
  97. package/src/lightning/datatable/datagrid.slds.css +341 -267
  98. package/src/lightning/datatable/datatable.js +6 -1
  99. package/src/lightning/datatable/icon.slds.css +6 -2
  100. package/src/lightning/datatable/input-checkbox.slds.css +130 -124
  101. package/src/lightning/datatable/primitive-cell-factory.slds.css +0 -1
  102. package/src/lightning/datatable/rows.js +1 -3
  103. package/src/lightning/datatable/templates/div/div.css +33 -15
  104. package/src/lightning/datatable/templates/table/table.css +2 -1
  105. package/src/lightning/datepicker/form-element.slds.css +4 -4
  106. package/src/lightning/datepicker/input-text.slds.css +172 -190
  107. package/src/lightning/datetimepicker/form-element.slds.css +4 -4
  108. package/src/lightning/datetimepicker/input-text.slds.css +172 -190
  109. package/src/lightning/dialog/README.md +7 -6
  110. package/src/lightning/dialog/__requirements__/requirements.md +18 -18
  111. package/src/lightning/dualListbox/__docs__/dualListbox.md +24 -24
  112. package/src/lightning/dualListbox/dual-listbox.slds.css +192 -192
  113. package/src/lightning/dualListbox/dualListbox.lbc.native.css +1 -1
  114. package/src/lightning/dualListbox/form-element.slds.css +4 -4
  115. package/src/lightning/dualListbox/listbox.slds.css +181 -175
  116. package/src/lightning/dynamicIcon/__docs__/dynamicIcon.md +6 -6
  117. package/src/lightning/dynamicIcon/dynamic-icon-ellie.slds.css +0 -2
  118. package/src/lightning/dynamicIcon/dynamic-icon-eq.slds.css +0 -2
  119. package/src/lightning/dynamicIcon/dynamic-icon-score.slds.css +3 -5
  120. package/src/lightning/dynamicIcon/dynamic-icon-strength.slds.css +109 -108
  121. package/src/lightning/dynamicIcon/dynamic-icon-trend.slds.css +97 -99
  122. package/src/lightning/dynamicIcon/dynamic-icon-waffle.slds.css +0 -2
  123. package/src/lightning/features/gates/imports.js +6 -1
  124. package/src/lightning/focusTrap/__requirements__/requirements.md +26 -26
  125. package/src/lightning/formattedAddress/__docs__/formattedAddress.md +0 -1
  126. package/src/lightning/formattedAddress/formattedAddress.css +1 -1
  127. package/src/lightning/formattedAddress/formattedAddress.lbc.native.css +1 -1
  128. package/src/lightning/formattedDateTime/__docs__/formattedDateTime.md +11 -11
  129. package/src/lightning/formattedEmail/__docs__/formattedEmail.md +2 -2
  130. package/src/lightning/formattedEmail/formattedEmail.lbc.native.css +1 -2
  131. package/src/lightning/formattedPhone/__docs__/formattedPhone.md +2 -2
  132. package/src/lightning/formattedRichText/__docs__/formattedRichText.md +14 -14
  133. package/src/lightning/formattedRichText/formattedRichText.lbc.native.css +1 -1
  134. package/src/lightning/formattedRichTextRenderer/formattedRichTextRenderer.lbc.native.css +1 -1
  135. package/src/lightning/formattedText/formattedText.lbc.native.css +1 -1
  136. package/src/lightning/formattedTime/__docs__/formattedTime.md +3 -3
  137. package/src/lightning/formattedUrl/__docs__/formattedUrl.md +11 -11
  138. package/src/lightning/groupedCombobox/README.md +33 -34
  139. package/src/lightning/groupedCombobox/form-element.slds.css +4 -4
  140. package/src/lightning/groupedCombobox/grouped-combobox.slds.css +10 -10
  141. package/src/lightning/groupedCombobox/groupedCombobox.lbc.native.css +0 -1
  142. package/src/lightning/groupedCombobox/input-text.slds.css +172 -190
  143. package/src/lightning/helptext/__docs__/helptext.md +5 -5
  144. package/src/lightning/helptext/button-icon.slds.css +50 -31
  145. package/src/lightning/helptext/form-element.slds.css +4 -4
  146. package/src/lightning/helptext/help-text.slds.css +3 -4
  147. package/src/lightning/helptext/helptext.css +1 -1
  148. package/src/lightning/icon/__docs__/icon.md +10 -10
  149. package/src/lightning/icon/__examples__/variants/variants.css +3 -3
  150. package/src/lightning/icon/icon.slds.css +6 -2
  151. package/src/lightning/input/__docs__/input.md +47 -49
  152. package/src/lightning/input/__examples__/checkboxbutton/checkboxbutton.css +6 -6
  153. package/src/lightning/input/__requirements__/requirements.md +49 -49
  154. package/src/lightning/input/form-element.slds.css +4 -4
  155. package/src/lightning/input/input.lbc.synthetic.css +1 -1
  156. package/src/lightning/inputAddress/__docs__/inputAddress.md +26 -27
  157. package/src/lightning/inputAddress/form-element.slds.css +4 -4
  158. package/src/lightning/inputAddress/input-address.slds.css +6 -6
  159. package/src/lightning/inputAddress/input-text.slds.css +172 -190
  160. package/src/lightning/inputLocation/form-element.slds.css +4 -4
  161. package/src/lightning/inputLocation/input-location.slds.css +6 -6
  162. package/src/lightning/inputLocation/input-text.slds.css +172 -190
  163. package/src/lightning/inputName/__docs__/inputName.md +7 -7
  164. package/src/lightning/inputName/form-element.slds.css +4 -4
  165. package/src/lightning/inputName/input-text.slds.css +172 -190
  166. package/src/lightning/inputUtils/validity.js +37 -18
  167. package/src/lightning/interactiveDialogBase/button.slds.css +32 -17
  168. package/src/lightning/interactiveDialogBase/interactive-dialog-base.slds.css +9 -18
  169. package/src/lightning/interactiveDialogBase/interactiveDialogBase.lbc.native.css +1 -1
  170. package/src/lightning/interactiveDialogBase/modal-base.slds.css +198 -194
  171. package/src/lightning/interactiveDialogBase/modal-body.slds.css +33 -34
  172. package/src/lightning/interactiveDialogBase/modal-footer.slds.css +62 -64
  173. package/src/lightning/interactiveDialogBase/modal-header.slds.css +47 -48
  174. package/src/lightning/layout/__docs__/layout.md +13 -13
  175. package/src/lightning/layout/__examples__/pullToBoundary/pullToBoundary.css +1 -1
  176. package/src/lightning/layout/__examples__/simple/simple.css +2 -2
  177. package/src/lightning/layout/__examples__/verticalAlignCenter/verticalAlignCenter.css +3 -3
  178. package/src/lightning/layout/__examples__/verticalAlignStretch/verticalAlignStretch.css +3 -3
  179. package/src/lightning/layout/layout.css +1 -1
  180. package/src/lightning/layout/layout.lbc.native.css +1 -1
  181. package/src/lightning/layout/layout.lbc.synthetic.css +1 -2
  182. package/src/lightning/layoutItem/layoutItem.css +1 -1
  183. package/src/lightning/lookupAddress/form-element.slds.css +4 -4
  184. package/src/lightning/lookupAddress/listbox.slds.css +181 -175
  185. package/src/lightning/lookupAddress/lookup-address.slds.css +4 -4
  186. package/src/lightning/lookupAddress/lookupAddress.css +0 -1
  187. package/src/lightning/lookupAddress/lookupAddress.lbc.native.css +0 -1
  188. package/src/lightning/mediaUtils/__docs__/mediaUtils.md +20 -17
  189. package/src/lightning/menuDivider/menu-divider.slds.css +8 -8
  190. package/src/lightning/menuItem/menu-item.slds.css +94 -82
  191. package/src/lightning/menuItem/menuItem.lbc.synthetic.css +1 -1
  192. package/src/lightning/menuSubheader/menu-subheader.slds.css +13 -13
  193. package/src/lightning/modal/__docs__/migration.md +95 -91
  194. package/src/lightning/modal/__docs__/modal.md +28 -22
  195. package/src/lightning/modal/__modalUtils__/modalContainerTestMethods.js +14 -21
  196. package/src/lightning/modalBase/modal-base.slds.css +198 -194
  197. package/src/lightning/modalBase/modalBase.lbc.synthetic.css +2 -2
  198. package/src/lightning/modalBody/__docs__/modalBody.md +0 -1
  199. package/src/lightning/modalBody/modal-body.slds.css +33 -34
  200. package/src/lightning/modalFooter/__docs__/modalFooter.md +1 -2
  201. package/src/lightning/modalFooter/modal-footer.slds.css +62 -64
  202. package/src/lightning/modalHeader/__docs__/modalHeader.md +1 -0
  203. package/src/lightning/modalHeader/modal-header.slds.css +47 -48
  204. package/src/lightning/modalHeader/modalHeader.css +2 -1
  205. package/src/lightning/multiColumnSortingModal/multiColumnSortingModal.css +2 -3
  206. package/src/lightning/navigation/__docs__/navigation.md +2 -3
  207. package/src/lightning/overlay/__docs__/overlay.md +3 -3
  208. package/src/lightning/overlay/__examples__/basic/basic.css +2 -2
  209. package/src/lightning/picklist/README.md +9 -9
  210. package/src/lightning/pill/__docs__/pill.md +3 -3
  211. package/src/lightning/pill/avatar.slds.css +96 -97
  212. package/src/lightning/pill/link.css +1 -1
  213. package/src/lightning/pill/pill.slds.css +154 -153
  214. package/src/lightning/pill/plain.css +1 -1
  215. package/src/lightning/pill/plainLink.css +1 -1
  216. package/src/lightning/pillContainer/__docs__/pillContainer.md +16 -15
  217. package/src/lightning/pillContainer/barePillContainer.lbc.native.css +1 -1
  218. package/src/lightning/pillContainer/button.slds.css +32 -17
  219. package/src/lightning/pillContainer/listbox.slds.css +181 -175
  220. package/src/lightning/pillContainer/pill-container.slds.css +34 -34
  221. package/src/lightning/pillContainer/pill.slds.css +154 -153
  222. package/src/lightning/pillContainer/standardPillContainer.css +1 -1
  223. package/src/lightning/popup/README.md +3 -3
  224. package/src/lightning/popup/__requirements__/requirements.md +25 -25
  225. package/src/lightning/popup/popover.slds.css +127 -128
  226. package/src/lightning/primitiveBubble/tooltip.slds.css +105 -99
  227. package/src/lightning/primitiveButton/primitiveButton.js +0 -21
  228. package/src/lightning/primitiveCellButton/primitiveCellButton.js +6 -1
  229. package/src/lightning/primitiveCellCheckbox/checkbox.css +0 -1
  230. package/src/lightning/primitiveCellCheckbox/checkbox.lbc.native.css +1 -1
  231. package/src/lightning/primitiveCellCheckbox/input-checkbox.slds.css +130 -124
  232. package/src/lightning/primitiveCellCheckbox/input-radio-group.slds.css +6 -5
  233. package/src/lightning/primitiveCellCheckbox/primitiveCellCheckbox.js +13 -8
  234. package/src/lightning/primitiveCellCheckbox/radio.lbc.native.css +1 -1
  235. package/src/lightning/primitiveCellFactory/button-icon.slds.css +50 -31
  236. package/src/lightning/primitiveCellFactory/primitive-cell-factory.slds.css +0 -1
  237. package/src/lightning/primitiveCellFactory/primitiveCellFactory.js +7 -11
  238. package/src/lightning/primitiveColorpickerButton/color-picker-button.slds.css +69 -70
  239. package/src/lightning/primitiveColumnSorter/form-element.slds.css +4 -4
  240. package/src/lightning/primitiveColumnSorter/input-radio-group.slds.css +6 -5
  241. package/src/lightning/primitiveColumnSorter/primitive-column-sorter.slds.css +0 -1
  242. package/src/lightning/primitiveColumnSorter/primitiveColumnSorter.css +13 -7
  243. package/src/lightning/primitiveColumnSorter/primitiveColumnSorter.html +1 -1
  244. package/src/lightning/primitiveColumnSorter/primitiveColumnSorter.js +2 -0
  245. package/src/lightning/primitiveCoordinateItem/__examples__/basic/basic.js +1 -2
  246. package/src/lightning/primitiveCoordinateItem/button.slds.css +32 -17
  247. package/src/lightning/primitiveCoordinateItem/coordinate-item.slds.css +2 -1
  248. package/src/lightning/primitiveCoordinateItem/primitiveCoordinateItem.css +1 -1
  249. package/src/lightning/primitiveCustomCell/primitiveCustomCell.js +8 -7
  250. package/src/lightning/primitiveDatatableCell/primitiveDatatableCell.js +4 -2
  251. package/src/lightning/primitiveDatatableIeditPanel/popover.slds.css +127 -128
  252. package/src/lightning/primitiveDatatableStatusBar/button.slds.css +32 -17
  253. package/src/lightning/primitiveDatatableStatusBar/form-footer.slds.css +32 -32
  254. package/src/lightning/primitiveDatatableStatusBar/primitiveDatatableStatusBar.css +1 -1
  255. package/src/lightning/primitiveDatatableStatusBar/primitiveDatatableStatusBar.js +3 -1
  256. package/src/lightning/primitiveDatatableTooltip/button-icon.slds.css +50 -31
  257. package/src/lightning/primitiveDatatableTooltip/button.slds.css +32 -17
  258. package/src/lightning/primitiveDatatableTooltip/form-footer.slds.css +32 -32
  259. package/src/lightning/primitiveDatatableTooltip/primitiveDatatableTooltip.css +1 -1
  260. package/src/lightning/primitiveDatatableTooltip/primitiveDatatableTooltip.js +5 -6
  261. package/src/lightning/primitiveDatatableTooltip/primitiveDatatableTooltip.lbc.native.css +1 -1
  262. package/src/lightning/primitiveDatatableTooltipBubble/popover.slds.css +127 -128
  263. package/src/lightning/primitiveDatatableTooltipBubble/primitive-datatable-tooltip-bubble.slds.css +9 -7
  264. package/src/lightning/primitiveDatatableTooltipBubble/primitiveDatatableTooltipBubble.css +1 -1
  265. package/src/lightning/primitiveHeaderActions/primitiveHeaderActions.lbc.native.css +1 -1
  266. package/src/lightning/primitiveHeaderFactory/form-element.slds.css +4 -4
  267. package/src/lightning/primitiveHeaderFactory/input-checkbox.slds.css +130 -124
  268. package/src/lightning/primitiveHeaderFactory/primitive-header-factory.slds.css +9 -4
  269. package/src/lightning/primitiveHeaderFactory/selectableHeader.css +1 -1
  270. package/src/lightning/primitiveHeaderFactory/selectableHeader.lbc.native.css +1 -1
  271. package/src/lightning/primitiveHeaderFactory/sortableHeader.lbc.synthetic.css +9 -3
  272. package/src/lightning/primitiveHeaderFactory/sortingMenuHeader.lbc.native.css +0 -1
  273. package/src/lightning/primitiveIcon/icon.slds.css +6 -2
  274. package/src/lightning/primitiveIcon/primitiveIcon.js +10 -2
  275. package/src/lightning/primitiveInputCheckbox/form-element.slds.css +4 -4
  276. package/src/lightning/primitiveInputCheckbox/input-checkbox.slds.css +130 -124
  277. package/src/lightning/primitiveInputCheckboxButton/form-element.slds.css +4 -4
  278. package/src/lightning/primitiveInputCheckboxButton/input-checkbox-button.slds.css +90 -79
  279. package/src/lightning/primitiveInputColor/form-element.slds.css +4 -4
  280. package/src/lightning/primitiveInputColor/input-color.slds.css +27 -28
  281. package/src/lightning/primitiveInputColor/input-text.slds.css +172 -190
  282. package/src/lightning/primitiveInputColor/primitiveInputColor.css +1 -1
  283. package/src/lightning/primitiveInputFile/button.slds.css +32 -17
  284. package/src/lightning/primitiveInputFile/form-element.slds.css +4 -4
  285. package/src/lightning/primitiveInputFile/input-file.slds.css +58 -59
  286. package/src/lightning/primitiveInputSimple/form-element.slds.css +4 -4
  287. package/src/lightning/primitiveInputSimple/input-text.slds.css +172 -190
  288. package/src/lightning/primitiveInputSimple/primitiveInputSimple.lbc.synthetic.css +1 -1
  289. package/src/lightning/primitiveInputToggle/form-element.slds.css +4 -4
  290. package/src/lightning/primitiveInputToggle/input-toggle.slds.css +134 -118
  291. package/src/lightning/primitiveResizeHandler/primitive-resize-handler.slds.css +0 -1
  292. package/src/lightning/primitiveTreegridCellToggle/button-icon.slds.css +50 -31
  293. package/src/lightning/progressBar/progress-bar.slds.css +38 -39
  294. package/src/lightning/progressIndicator/__docs__/progressIndicator.md +2 -2
  295. package/src/lightning/progressIndicator/progress-indicator.slds.css +65 -65
  296. package/src/lightning/progressIndicator/progressIndicator.css +1 -1
  297. package/src/lightning/progressIndicator/progressIndicator.lbc.native.css +1 -1
  298. package/src/lightning/progressRing/progress-ring.slds.css +112 -112
  299. package/src/lightning/progressStep/progress-step.slds.css +223 -203
  300. package/src/lightning/prompt/__docs__/prompt.md +14 -14
  301. package/src/lightning/prompt/form-element.slds.css +4 -4
  302. package/src/lightning/prompt/input-text.slds.css +172 -190
  303. package/src/lightning/prompt/prompt.css +1 -1
  304. package/src/lightning/radioGroup/__docs__/radioGroup.md +6 -6
  305. package/src/lightning/radioGroup/form-element.slds.css +4 -4
  306. package/src/lightning/radioGroup/input-radio-group.slds.css +6 -5
  307. package/src/lightning/relativeDateTime/__docs__/relativeDateTime.md +10 -10
  308. package/src/lightning/select/__docs__/select.md +5 -5
  309. package/src/lightning/select/form-element.slds.css +4 -4
  310. package/src/lightning/select/select.css +1 -1
  311. package/src/lightning/select/select.html +6 -3
  312. package/src/lightning/select/select.lbc.native.css +2 -2
  313. package/src/lightning/select/select.slds.css +117 -115
  314. package/src/lightning/sldsCommon/sldsCommon.css +0 -1
  315. package/src/lightning/sldsFormElementUtils/sldsFormElementUtils.css +63 -29
  316. package/src/lightning/sldsMediaObject/sldsMediaObject.css +1 -3
  317. package/src/lightning/sldsUtilsAlignment/sldsUtilsAlignment.css +0 -1
  318. package/src/lightning/sldsUtilsBorders/sldsUtilsBorders.css +8 -5
  319. package/src/lightning/sldsUtilsBox/sldsUtilsBox.css +0 -1
  320. package/src/lightning/sldsUtilsFloats/sldsUtilsFloats.css +1 -2
  321. package/src/lightning/sldsUtilsGrid/sldsUtilsGrid.css +84 -85
  322. package/src/lightning/sldsUtilsHyphenation/sldsUtilsHyphenation.css +0 -1
  323. package/src/lightning/sldsUtilsLineClamp/sldsUtilsLineClamp.css +0 -1
  324. package/src/lightning/sldsUtilsMargin/sldsUtilsMargin.css +0 -1
  325. package/src/lightning/sldsUtilsPadding/sldsUtilsPadding.css +0 -1
  326. package/src/lightning/sldsUtilsPosition/sldsUtilsPosition.css +4 -5
  327. package/src/lightning/sldsUtilsSizing/sldsUtilsSizing.css +0 -1
  328. package/src/lightning/sldsUtilsThemes/sldsUtilsThemes.css +47 -23
  329. package/src/lightning/sldsUtilsTruncation/sldsUtilsTruncation.css +0 -1
  330. package/src/lightning/sldsUtilsVisibility/sldsUtilsVisibility.css +0 -1
  331. package/src/lightning/slider/README.md +4 -4
  332. package/src/lightning/slider/form-element.slds.css +4 -4
  333. package/src/lightning/slider/slider.slds.css +106 -92
  334. package/src/lightning/spinner/__examples__/if/if.css +1 -1
  335. package/src/lightning/spinner/__examples__/sizes/sizes.css +1 -1
  336. package/src/lightning/spinner/spinner.slds.css +327 -326
  337. package/src/lightning/stackedTab/stacked-tab.slds.css +8 -7
  338. package/src/lightning/stackedTab/stackedTab.css +1 -1
  339. package/src/lightning/stackedTab/stackedTab.lbc.native.css +1 -1
  340. package/src/lightning/stackedTabset/stacked-tabset.slds.css +8 -8
  341. package/src/lightning/stackedTabset/stackedTabset.css +1 -1
  342. package/src/lightning/stackedTabset/stackedTabset.lbc.native.css +1 -1
  343. package/src/lightning/tab/tab.css +1 -1
  344. package/src/lightning/tab/tab.slds.css +44 -51
  345. package/src/lightning/tabBar/tab-bar.slds.css +405 -284
  346. package/src/lightning/tabset/__docs__/tabset.md +4 -4
  347. package/src/lightning/tabset/tabset.slds.css +12 -12
  348. package/src/lightning/textarea/__docs__/textarea.md +7 -7
  349. package/src/lightning/textarea/form-element.slds.css +4 -4
  350. package/src/lightning/textarea/textarea.js +22 -0
  351. package/src/lightning/textarea/textarea.lbc.synthetic.css +0 -1
  352. package/src/lightning/textarea/textarea.slds.css +124 -99
  353. package/src/lightning/tile/tile.slds.css +0 -1
  354. package/src/lightning/timepicker/form-element.slds.css +4 -4
  355. package/src/lightning/timepicker/timepicker.slds.css +13 -14
  356. package/src/lightning/toast/__docs__/toast.md +19 -19
  357. package/src/lightning/toast/button-icon.slds.css +50 -31
  358. package/src/lightning/toast/icon.slds.css +6 -2
  359. package/src/lightning/toast/toast.lbc.synthetic.css +12 -6
  360. package/src/lightning/toast/toast.slds.css +90 -90
  361. package/src/lightning/toastContainer/__docs__/toastContainer.md +4 -1
  362. package/src/lightning/toastContainer/toast.slds.css +90 -90
  363. package/src/lightning/toastContainer/toastContainer.lbc.synthetic.css +6 -6
  364. package/src/lightning/tree/tree.slds.css +1 -1
  365. package/src/lightning/treeGrid/__docs__/treeGrid.md +128 -64
  366. package/src/lightning/treeGrid/treeGrid.js +3 -1
  367. package/src/lightning/treeItem/calendar.slds.css +188 -191
  368. package/src/lightning/verticalNavigation/__docs__/verticalNavigation.md +5 -5
  369. package/src/lightning/verticalNavigation/verticalNavigation.css +1 -1
  370. package/src/lightning/verticalNavigationItemBadge/badge.slds.css +71 -56
  371. package/src/lightning/verticalNavigationOverflow/button.slds.css +32 -17
  372. package/src/lightning/verticalNavigationOverflow/vertical-navigation-section.slds.css +8 -8
  373. package/src/lightning/verticalNavigationOverflow/verticalNavigationOverflow.css +1 -1
  374. package/src/lightning/verticalNavigationOverflow/verticalNavigationOverflow.lbc.synthetic.css +1 -1
  375. package/src/lightning/verticalNavigationSection/vertical-navigation-section.slds.css +8 -8
  376. package/src/lightning/verticalNavigationSection/verticalNavigationSection.css +1 -1
  377. package/src/lightning/verticalNavigationSection/verticalNavigationSection.lbc.synthetic.css +1 -1
  378. package/scopedImports/@salesforce-gate-bc.256.enableReactiveCarousel.js +0 -6
  379. package/scopedImports/@salesforce-gate-colorIconsMenuItem.bc.ltng.js +0 -6
  380. package/scopedImports/@salesforce-gate-datatableIconSrc.bc.ltng.js +0 -6
  381. package/scopedImports/@salesforce-gate-formattedDateTimeDateStyle.bc.ltng.js +0 -6
  382. package/scopedImports/@salesforce-gate-groupedComboboxVariants.bc.ltng.js +0 -6
  383. package/scopedImports/@salesforce-gate-inputErrorIcon.ce.ltng.js +0 -6
  384. package/scopedImports/@salesforce-gate-lookups.lookupMetadataLayoutServiceBased.js +0 -6
  385. package/scopedImports/@salesforce-gate-modalReduceMotionFix.bc.ltng.js +0 -6
  386. package/scopedImports/@salesforce-gate-overlaySldsScopeClass.bc.ltng.js +0 -6
  387. package/scopedImports/@salesforce-gate-primitiveThemeProviderDisabled.bc.ltng.js +0 -6
  388. package/scopedImports/@salesforce-gate-recordFormFieldCaching.bc.ltng.js +0 -6
  389. package/scopedImports/@salesforce-gate-regexCustomElementCheck.bc.ltng.js +0 -6
  390. package/scopedImports/@salesforce-gate-sanitizeURL.bc.ltng.js +0 -6
  391. package/scopedImports/@salesforce-gate-treeGridCustomTypes.bc.ltng.js +0 -6
  392. package/scopedImports/@salesforce-gate-treeGridStaticCustomTypes.bc.ltng.js +0 -6
  393. 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
- * `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
+ - `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
- * `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
+ - `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
- * `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
+ - `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
- * `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
+ - `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. 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.
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
- - 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.
595
- - 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).
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
- * When the modal header is present, the modal component places the focus on the title text in the header.
628
- * 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.
629
- * 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.
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
- - Usage: `element.modalHeader$('a')` Returns first link
726
+ - Usage: `element.modalHeader$('a')` Returns first link
721
727
  - `element.modalHeader$$()` - querySelectAll multiple nodes in `lightning-modal-header`
722
- - Usage:
723
- - `elem.modalHeader$$()` Returns all nodes in header
724
- - `elem.modalHeader$$('a')` Returns all links in header
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
- - Usage: `element.modalBody$('button')` Returns first button
732
+ - Usage: `element.modalBody$('button')` Returns first button
727
733
  - `element.modalBody$$()` - querySelectAll multiple nodes in `lightning-modal-body`
728
- - Usage:
729
- - `elem.modalBody$$()` Returns all nodes in body
730
- - `elem.modalBody$$('button, [data-button]')` Returns buttons in body
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
- - Usage: `element.modalFooter$('button')` Returns first button
738
+ - Usage: `element.modalFooter$('button')` Returns first button
733
739
  - `element.modalFooter$$()` - querySelectAll multiple nodes in `lightning-modal-footer`
734
- - Usage:
735
- - `elem.modalFooter$$()` Returns all nodes in footer
736
- - `elem.modalFooter$$('button, [data-button]')` Returns buttons in footer
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 = await modalBaseElem.shadow$(
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 = await modalCloseButton.getAttribute(
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 } = await getModalHeaderInternals(
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 } = await getModalFooterInternals(
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 } = await getModalFooterInternals(
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 } = await getModalHeaderInternals(
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 } = await getModalFooterInternals(
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
- :host([data-render-mode="shadow"]) [part='modal-backdrop'] {
11
- --slds-c-backdrop-color-background: var(--slds-c-modalbase-backdrop-color-background);
12
- }
13
-
14
- :host([data-render-mode="shadow"]) [part='modal'] {
15
- /* Map modal component hooks to single "shared" hooks from blueprint */
16
- /* stylelint-disable sds-stylelint-plugin/styling-hooks-pattern */
17
-
18
- /* '--slds-c-modal-shadow' is used in body/footer */
19
- --slds-c-modalbody-shadow: var(--slds-c-modal-shadow);
20
- --slds-c-modalfooter-shadow: var(--slds-c-modal-shadow);
21
-
22
- /* '--slds-c-modal-color-border' is used in header/footer */
23
- --slds-c-modalheader-color-border: var(--slds-c-modal-color-border);
24
- --slds-c-modalfooter-color-border: var(--slds-c-modal-color-border);
25
-
26
-
27
- /* '--slds-c-modal-radius-border' is used in header/body/footer */
28
- --slds-c-modalheader-radius-border: var(--slds-c-modal-radius-border);
29
- --slds-c-modalbody-radius-border: var(--slds-c-modal-radius-border);
30
- --slds-c-modalfooter-radius-border: var(--slds-c-modal-radius-border);
31
-
32
- /* '--slds-c-modal-sizing-border' is used in header/footer */
33
- --slds-c-modalheader-sizing-border: var(--slds-c-modal-sizing-border);
34
- --slds-c-modalfooter-sizing-border: var(--slds-c-modal-sizing-border);
35
-
36
- /* stylelint-enable sds-stylelint-plugin/styling-hooks-pattern */
37
-
38
- }
39
-
40
- :host([data-render-mode="shadow"]) .slds-backdrop {
41
- transition-duration: 0.4s;
42
- width: 100%;
43
- height: 100%;
44
- opacity: 0;
45
- visibility: hidden;
46
- position: fixed;
47
- inset-block-start: 0;
48
- inset-inline-end: 0;
49
- inset-block-end: 0;
50
- inset-inline-start: 0;
51
- background: var(--slds-c-modalbase-backdrop-color-background, var(--slds-g-color-neutral-10-opacity-50, rgba(8, 7, 7, 60%)));
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: transform 0.1s linear, opacity 0.1s;
65
- position: fixed;
66
- inset-block-start: 0;
67
- inset-inline-end: 0;
68
- inset-block-end: 0;
69
- inset-inline-start: 0;
70
- z-index: 9001
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
- position: relative;
75
- transform: translate(0, 0);
76
- transition: transform 0.1s linear, opacity 0.1s linear;
77
- display: flex;
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-modal__close {
87
- width: 2rem;
88
- height: 2rem;
89
- margin-inline-start: auto;
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-fade-in-open {
100
- opacity: 1;
101
- visibility: visible;
102
- transition: opacity 0.1s linear;
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-fade-in-open .slds-modal__container-reset {
106
- opacity: 1;
107
- visibility: visible;
108
- transform: translate(0, 0);
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
- /* Sizes: Small, Medium, Large */
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
- /* Sizes: Full */
146
+ /* .slds-modal_full {} */
141
147
 
142
- /* .slds-modal_full {} */
148
+ /* Behaves like large size when not in a small viewport */
143
149
 
144
- /* Behaves like large size when not in a small viewport */
145
-
146
- @media (width >= 48em) {
147
- :host([data-render-mode="shadow"]) .slds-modal_full .slds-modal__container {
148
- width: 90%;
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
- /* Original SLDS implementation was desktop-first. This is now mobile-first for <=480px */
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
- /* Override slds-modal's bottom: 0 so we can make the height dynamic. */
162
- inset-block-end: auto;
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
- /* Viewport may be dynamic, e.g., iOS Safari toolbar hiding behavior, so we use dvh. Safe areas may not be required here. */
165
- /* stylelint-disable-next-line unit-no-unknown */
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
- :host([data-render-mode="shadow"]) .slds-modal_full .slds-modal__container {
170
- width: 100%;
171
- max-width: none;
172
- min-width: 0;
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
- /* Establishes the main layout of the modal. Grid is defined by grid-template-areas
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
- display: grid;
182
- /* stylelint-disable-next-line unit-no-unknown */
183
- height: 100dvh;
184
- grid-template-columns: 1fr;
185
- grid-template-rows: min-content min-content 1fr min-content;
186
- grid-template-areas: "close" "header" "content" "footer";
187
- }
188
-
189
- :host([data-render-mode="shadow"]) .slds-modal_full .slds-modal__close {
190
- grid-area: close;
191
- inset-inline-end: var(--slds-g-spacing-4);
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
- --slds-c-button-color-background: var(--slds-g-color-surface-container-1, white);
203
- --slds-c-button-color-background-active: var(--slds-g-color-surface-container-1, white);
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
- color: var(--slds-g-color-on-surface-1);
206
- }
209
+ color: var(--slds-g-color-on-surface-1);
210
+ }
207
211
 
208
- :host([data-render-mode="shadow"]) .slds-modal_full .slds-modal__close:hover,:host([data-render-mode="shadow"])
209
- .slds-modal_full .slds-modal__close:focus {
210
- color: var(--slds-g-color-accent-3);
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
- :host([data-render-mode="shadow"]) .slds-modal_full lightning-button-icon+div,:host([data-render-mode="shadow"])
226
- .slds-modal_full lightning-modal {
227
- display: contents;
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
+ }