lightning-base-components 1.21.6-alpha → 1.21.8-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 (369) hide show
  1. package/metadata/raptor.json +45 -4
  2. package/package.json +125 -3
  3. package/scopedImports/@salesforce-label-LightningColorPicker.a11yDefaultText.js +1 -0
  4. package/scopedImports/@salesforce-label-LightningDatatable.multiColumnSortingToast.js +1 -0
  5. package/scopedImports/@salesforce-label-LightningDatatable.sortingMenuColumns.js +1 -0
  6. package/scopedImports/@salesforce-label-LightningDatatable.sortingMenuMultiColumnSort.js +1 -0
  7. package/scopedImports/@salesforce-label-LightningDatatable.sortingMenuRows.js +1 -0
  8. package/scopedImports/@salesforce-label-LightningDatatable.sortingMenuTooltip.js +1 -0
  9. package/scopedImports/@salesforce-label-LightningForm.dependentFieldsListHeading.js +1 -1
  10. package/scopedImports/@salesforce-label-LightningLookup.advancedSearchMobile.js +1 -1
  11. package/scopedImports/@salesforce-label-LightningLookup.modalTitle.js +1 -0
  12. package/scopedImports/@salesforce-label-LightningMultiColumnSortingModal.addRule.js +1 -0
  13. package/scopedImports/@salesforce-label-LightningMultiColumnSortingModal.applyButton.js +1 -0
  14. package/scopedImports/@salesforce-label-LightningMultiColumnSortingModal.cancelButton.js +1 -0
  15. package/scopedImports/@salesforce-label-LightningMultiColumnSortingModal.clearButton.js +1 -0
  16. package/scopedImports/@salesforce-label-LightningMultiColumnSortingModal.duplicateValueValidation.js +1 -0
  17. package/scopedImports/@salesforce-label-LightningMultiColumnSortingModal.firstRuleHeading.js +1 -0
  18. package/scopedImports/@salesforce-label-LightningMultiColumnSortingModal.modalTitle.js +1 -0
  19. package/scopedImports/@salesforce-label-LightningMultiColumnSortingModal.otherRuleHeading.js +1 -0
  20. package/scopedImports/@salesforce-label-LightningMultiColumnSortingModal.ruleLimit.js +1 -0
  21. package/scopedImports/@salesforce-label-LightningMultiColumnSortingModal.ruleLimitReached.js +1 -0
  22. package/scopedImports/@salesforce-label-LightningPrimitiveColumnSorter.ascending.js +1 -0
  23. package/scopedImports/@salesforce-label-LightningPrimitiveColumnSorter.descending.js +1 -0
  24. package/scopedImports/@salesforce-label-LightningPrimitiveColumnSorter.dropdownPlaceholder.js +1 -0
  25. package/scopedImports/@salesforce-label-LightningPrimitiveColumnSorter.missingValueValidation.js +1 -0
  26. package/scopedImports/@salesforce-label-LightningPrimitiveColumnSorter.moveDownTooltip.js +1 -0
  27. package/scopedImports/@salesforce-label-LightningPrimitiveColumnSorter.moveUpTooltip.js +1 -0
  28. package/scopedImports/@salesforce-label-LightningProgressIndicator.pathCurrentStage.js +1 -0
  29. package/scopedImports/@salesforce-label-LightningRecordPicker.emptyStateNoResultText.js +1 -0
  30. package/scopedImports/@salesforce-label-LightningRecordPicker.messageWhenSearchTermTooShort.js +1 -0
  31. package/scopedImports/@salesforce-label-LightningRecordPicker.resultCountDescriptionForMoreThanOneHundredRecords.js +1 -0
  32. package/scopedImports/@salesforce-label-LightningRecordPicker.resultCountDescriptionForMultipleRecords.js +1 -0
  33. package/scopedImports/@salesforce-label-LightningRecordPicker.resultCountDescriptionForOneRecord.js +1 -0
  34. package/scopedImports/@salesforce-label-LightningRecordPicker.resultsLoading.js +1 -0
  35. package/scopedImports/@salesforce-label-LightningRecordPicker.searchInputHelp.js +1 -0
  36. package/src/lightning/accordion/accordion.js +21 -14
  37. package/src/lightning/accordionSection/button.slds.css +16 -15
  38. package/src/lightning/alert/alert.js +10 -8
  39. package/src/lightning/ariaObserver/ariaObserver.js +19 -5
  40. package/src/lightning/baseCombobox/base-combobox.slds.css +1 -1
  41. package/src/lightning/baseCombobox/baseCombobox.html +2 -1
  42. package/src/lightning/baseCombobox/baseCombobox.js +21 -0
  43. package/src/lightning/baseCombobox/input-text.slds.css +5 -5
  44. package/src/lightning/breadcrumbs/breadcrumbs.slds.css +1 -1
  45. package/src/lightning/button/button.js +5 -0
  46. package/src/lightning/button/button.slds.css +16 -15
  47. package/src/lightning/buttonIcon/__docs__/buttonIcon.md +4 -0
  48. package/src/lightning/buttonIcon/__examples__/basic/basic.html +17 -1
  49. package/src/lightning/buttonIcon/button-icon.slds.css +41 -25
  50. package/src/lightning/buttonIconStateful/button-icon-stateful.slds.css +33 -229
  51. package/src/lightning/buttonIconStateful/button-icon.slds.css +41 -25
  52. package/src/lightning/buttonIconStateful/button.slds.css +16 -15
  53. package/src/lightning/buttonMenu/button-icon.slds.css +41 -25
  54. package/src/lightning/buttonMenu/button-menu.slds.css +41 -15
  55. package/src/lightning/buttonMenu/button.slds.css +16 -15
  56. package/src/lightning/buttonMenu/buttonMenu.css +1 -1
  57. package/src/lightning/buttonMenu/buttonMenu.html +1 -1
  58. package/src/lightning/buttonMenu/buttonMenu.js +44 -4
  59. package/src/lightning/buttonStateful/button-stateful.slds.css +1 -4
  60. package/src/lightning/buttonStateful/button.slds.css +16 -15
  61. package/src/lightning/calendar/calendar.html +3 -4
  62. package/src/lightning/card/card.html +1 -1
  63. package/src/lightning/colorPickerCustom/colorPickerCustom.html +1 -1
  64. package/src/lightning/colorPickerCustom/colorPickerCustom.js +0 -9
  65. package/src/lightning/colorPickerCustom/input-text.slds.css +5 -5
  66. package/src/lightning/combobox/form-element.slds.css +1 -0
  67. package/src/lightning/confirm/confirm.js +10 -8
  68. package/src/lightning/datatable/__docs__/datatable.md +0 -3
  69. package/src/lightning/datatable/__examples__disabled/customComponentPopupTableWrapper/README.md +17 -0
  70. package/src/lightning/datatable/__examples__disabled/customComponentPopupTableWrapper/customComponentPopupTableWrapper.html +11 -0
  71. package/src/lightning/datatable/__examples__disabled/customComponentPopupTableWrapper/customComponentPopupTableWrapper.js +25 -0
  72. package/src/lightning/datatable/__examples__disabled/customComponentPopupTableWrapper/generateData.js +15 -0
  73. package/src/lightning/datatable/__examples__disabled/myCustomTypePopupTable/customInput.html +4 -0
  74. package/src/lightning/datatable/__examples__disabled/myCustomTypePopupTable/myCustomTypePopupTable.js +17 -0
  75. package/src/lightning/datatable/__examples__disabled/myCustomTypePopupTable/nestedSimpleComponentParent.html +7 -0
  76. package/src/lightning/datatable/__examples__disabled/simpleComponentPopupNested/simpleComponentPopupNested.html +31 -0
  77. package/src/lightning/datatable/__examples__disabled/simpleComponentPopupNested/simpleComponentPopupNested.js +36 -0
  78. package/src/lightning/datatable/columnWidthManager.js +19 -16
  79. package/src/lightning/datatable/columns.js +74 -25
  80. package/src/lightning/datatable/datatable.js +493 -133
  81. package/src/lightning/datatable/errors.js +1 -1
  82. package/src/lightning/datatable/indexes.js +32 -19
  83. package/src/lightning/datatable/infiniteLoading.js +6 -5
  84. package/src/lightning/datatable/inlineEdit.js +45 -59
  85. package/src/lightning/datatable/keyboard.js +571 -160
  86. package/src/lightning/datatable/renderManager.js +12 -9
  87. package/src/lightning/datatable/rowLevelActions.js +5 -14
  88. package/src/lightning/datatable/rowSelection.js +36 -17
  89. package/src/lightning/datatable/rowSelectionShared.js +1 -0
  90. package/src/lightning/datatable/rows.js +132 -24
  91. package/src/lightning/datatable/rowsInlining.js +473 -0
  92. package/src/lightning/datatable/sort.js +8 -4
  93. package/src/lightning/datatable/state.js +12 -4
  94. package/src/lightning/datatable/templates/div/div.html +807 -91
  95. package/src/lightning/datatable/templates/div/div.lbc.synthetic.css +29 -3
  96. package/src/lightning/datatable/templates/table/table.css +29 -1
  97. package/src/lightning/datatable/templates/table/table.html +786 -87
  98. package/src/lightning/datatable/utils.js +39 -0
  99. package/src/lightning/datatable/virtualization.js +44 -19
  100. package/src/lightning/datatable/wrapText.js +7 -10
  101. package/src/lightning/datepicker/datepicker.html +3 -1
  102. package/src/lightning/datepicker/datepicker.js +31 -1
  103. package/src/lightning/datepicker/form-element.slds.css +1 -0
  104. package/src/lightning/datepicker/input-text.slds.css +5 -5
  105. package/src/lightning/datetimepicker/datetimepicker.html +7 -1
  106. package/src/lightning/datetimepicker/datetimepicker.js +30 -2
  107. package/src/lightning/datetimepicker/form-element.slds.css +1 -0
  108. package/src/lightning/datetimepicker/input-text.slds.css +5 -5
  109. package/src/lightning/dualListbox/form-element.slds.css +1 -0
  110. package/src/lightning/focusTrap/focusTrap.css +7 -0
  111. package/src/lightning/groupedCombobox/form-element.slds.css +1 -0
  112. package/src/lightning/groupedCombobox/input-text.slds.css +5 -5
  113. package/src/lightning/helptext/button-icon.slds.css +41 -25
  114. package/src/lightning/helptext/form-element.slds.css +1 -0
  115. package/src/lightning/icon/__docs__/icon.md +0 -2
  116. package/src/lightning/iconSvgTemplates/buildTemplates/standard/account_score.html +8 -0
  117. package/src/lightning/iconSvgTemplates/buildTemplates/standard/aggregate.html +8 -0
  118. package/src/lightning/iconSvgTemplates/buildTemplates/standard/app_form_participant.html +11 -0
  119. package/src/lightning/iconSvgTemplates/buildTemplates/standard/app_form_product_participant.html +12 -0
  120. package/src/lightning/iconSvgTemplates/buildTemplates/standard/cost_model.html +7 -0
  121. package/src/lightning/iconSvgTemplates/buildTemplates/standard/labels.html +8 -0
  122. package/src/lightning/iconSvgTemplates/buildTemplates/standard/list_fee.html +7 -0
  123. package/src/lightning/iconSvgTemplates/buildTemplates/standard/list_rate.html +7 -0
  124. package/src/lightning/iconSvgTemplates/buildTemplates/standard/party_profile.html +8 -0
  125. package/src/lightning/iconSvgTemplates/buildTemplates/standard/path_experiment.html +7 -0
  126. package/src/lightning/iconSvgTemplates/buildTemplates/standard/people_score.html +8 -0
  127. package/src/lightning/iconSvgTemplates/buildTemplates/standard/price_adjustment_schedule.html +8 -0
  128. package/src/lightning/iconSvgTemplates/buildTemplates/standard/price_adjustment_tier.html +7 -0
  129. package/src/lightning/iconSvgTemplates/buildTemplates/standard/program_cohort.html +7 -0
  130. package/src/lightning/iconSvgTemplates/buildTemplates/standard/program_cohort_member.html +7 -0
  131. package/src/lightning/iconSvgTemplates/buildTemplates/standard/rate_adjustment.html +7 -0
  132. package/src/lightning/iconSvgTemplates/buildTemplates/standard/record_consent.html +7 -0
  133. package/src/lightning/iconSvgTemplates/buildTemplates/standard/whatsapp.html +7 -0
  134. package/src/lightning/iconSvgTemplates/buildTemplates/templates.js +40 -1
  135. package/src/lightning/iconSvgTemplates/buildTemplates/utility/aggregate.html +8 -0
  136. package/src/lightning/iconSvgTemplates/buildTemplates/utility/array.html +7 -0
  137. package/src/lightning/iconSvgTemplates/buildTemplates/utility/bottom_group_alignment.html +7 -0
  138. package/src/lightning/iconSvgTemplates/buildTemplates/utility/cant_sync.html +7 -0
  139. package/src/lightning/iconSvgTemplates/buildTemplates/utility/center_group_alignment.html +8 -0
  140. package/src/lightning/iconSvgTemplates/buildTemplates/utility/columns.html +7 -0
  141. package/src/lightning/iconSvgTemplates/buildTemplates/utility/fully_synced.html +8 -0
  142. package/src/lightning/iconSvgTemplates/buildTemplates/utility/inner_join.html +7 -0
  143. package/src/lightning/iconSvgTemplates/buildTemplates/utility/join.html +8 -0
  144. package/src/lightning/iconSvgTemplates/buildTemplates/utility/left_join.html +14 -0
  145. package/src/lightning/iconSvgTemplates/buildTemplates/utility/macros.html +2 -2
  146. package/src/lightning/iconSvgTemplates/buildTemplates/utility/not_in_sync.html +7 -0
  147. package/src/lightning/iconSvgTemplates/buildTemplates/utility/not_saved.html +9 -0
  148. package/src/lightning/iconSvgTemplates/buildTemplates/utility/outer_join.html +7 -0
  149. package/src/lightning/iconSvgTemplates/buildTemplates/utility/path_experiment.html +7 -0
  150. package/src/lightning/iconSvgTemplates/buildTemplates/utility/program_cohort.html +7 -0
  151. package/src/lightning/iconSvgTemplates/buildTemplates/utility/program_cohort_member.html +7 -0
  152. package/src/lightning/iconSvgTemplates/buildTemplates/utility/record_consent.html +7 -0
  153. package/src/lightning/iconSvgTemplates/buildTemplates/utility/right_join.html +7 -0
  154. package/src/lightning/iconSvgTemplates/buildTemplates/utility/skill.html +8 -0
  155. package/src/lightning/iconSvgTemplates/buildTemplates/utility/sync_in_progress.html +7 -0
  156. package/src/lightning/iconSvgTemplates/buildTemplates/utility/top_group_alignment.html +7 -0
  157. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/account_score.html +8 -0
  158. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/aggregate.html +8 -0
  159. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/app_form_participant.html +11 -0
  160. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/app_form_product_participant.html +12 -0
  161. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/cost_model.html +7 -0
  162. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/labels.html +8 -0
  163. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/list_fee.html +7 -0
  164. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/list_rate.html +7 -0
  165. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/party_profile.html +8 -0
  166. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/path_experiment.html +7 -0
  167. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/people_score.html +8 -0
  168. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/price_adjustment_schedule.html +8 -0
  169. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/price_adjustment_tier.html +7 -0
  170. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/program_cohort.html +7 -0
  171. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/program_cohort_member.html +7 -0
  172. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/rate_adjustment.html +7 -0
  173. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/record_consent.html +7 -0
  174. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/whatsapp.html +7 -0
  175. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/templates.js +40 -1
  176. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/aggregate.html +8 -0
  177. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/array.html +7 -0
  178. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/bottom_group_alignment.html +7 -0
  179. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/cant_sync.html +7 -0
  180. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/center_group_alignment.html +8 -0
  181. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/columns.html +7 -0
  182. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/fully_synced.html +8 -0
  183. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/inner_join.html +7 -0
  184. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/join.html +8 -0
  185. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/left_join.html +14 -0
  186. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/macros.html +2 -2
  187. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/not_in_sync.html +7 -0
  188. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/not_saved.html +9 -0
  189. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/outer_join.html +7 -0
  190. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/path_experiment.html +7 -0
  191. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/program_cohort.html +7 -0
  192. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/program_cohort_member.html +7 -0
  193. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/record_consent.html +7 -0
  194. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/right_join.html +7 -0
  195. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/skill.html +8 -0
  196. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/sync_in_progress.html +7 -0
  197. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/top_group_alignment.html +7 -0
  198. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/account_score.html +8 -0
  199. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/aggregate.html +8 -0
  200. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/app_form_participant.html +11 -0
  201. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/app_form_product_participant.html +12 -0
  202. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/cost_model.html +7 -0
  203. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/labels.html +8 -0
  204. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/list_fee.html +7 -0
  205. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/list_rate.html +7 -0
  206. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/party_profile.html +8 -0
  207. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/path_experiment.html +7 -0
  208. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/people_score.html +8 -0
  209. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/price_adjustment_schedule.html +8 -0
  210. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/price_adjustment_tier.html +7 -0
  211. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/program_cohort.html +7 -0
  212. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/program_cohort_member.html +7 -0
  213. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/rate_adjustment.html +7 -0
  214. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/record_consent.html +7 -0
  215. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/whatsapp.html +7 -0
  216. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/templates.js +19 -1
  217. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/account_score.html +8 -0
  218. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/aggregate.html +8 -0
  219. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/app_form_participant.html +11 -0
  220. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/app_form_product_participant.html +12 -0
  221. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/cost_model.html +7 -0
  222. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/labels.html +8 -0
  223. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/list_fee.html +7 -0
  224. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/list_rate.html +7 -0
  225. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/party_profile.html +8 -0
  226. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/path_experiment.html +7 -0
  227. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/people_score.html +8 -0
  228. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/price_adjustment_schedule.html +8 -0
  229. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/price_adjustment_tier.html +7 -0
  230. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/program_cohort.html +7 -0
  231. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/program_cohort_member.html +7 -0
  232. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/rate_adjustment.html +7 -0
  233. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/record_consent.html +7 -0
  234. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/whatsapp.html +7 -0
  235. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/templates.js +19 -1
  236. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/templates.js +22 -1
  237. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/aggregate.html +8 -0
  238. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/array.html +7 -0
  239. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/bottom_group_alignment.html +7 -0
  240. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/cant_sync.html +7 -0
  241. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/center_group_alignment.html +8 -0
  242. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/columns.html +7 -0
  243. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/fully_synced.html +8 -0
  244. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/inner_join.html +7 -0
  245. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/join.html +8 -0
  246. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/left_join.html +14 -0
  247. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/macros.html +2 -2
  248. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/not_in_sync.html +7 -0
  249. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/not_saved.html +9 -0
  250. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/outer_join.html +7 -0
  251. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/path_experiment.html +7 -0
  252. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/program_cohort.html +7 -0
  253. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/program_cohort_member.html +7 -0
  254. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/record_consent.html +7 -0
  255. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/right_join.html +7 -0
  256. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/skill.html +8 -0
  257. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/sync_in_progress.html +7 -0
  258. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/top_group_alignment.html +7 -0
  259. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/templates.js +22 -1
  260. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/aggregate.html +8 -0
  261. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/array.html +7 -0
  262. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/bottom_group_alignment.html +7 -0
  263. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/cant_sync.html +7 -0
  264. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/center_group_alignment.html +8 -0
  265. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/columns.html +7 -0
  266. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/fully_synced.html +8 -0
  267. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/inner_join.html +7 -0
  268. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/join.html +8 -0
  269. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/left_join.html +14 -0
  270. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/macros.html +2 -2
  271. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/not_in_sync.html +7 -0
  272. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/not_saved.html +9 -0
  273. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/outer_join.html +7 -0
  274. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/path_experiment.html +7 -0
  275. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/program_cohort.html +7 -0
  276. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/program_cohort_member.html +7 -0
  277. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/record_consent.html +7 -0
  278. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/right_join.html +7 -0
  279. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/skill.html +8 -0
  280. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/sync_in_progress.html +7 -0
  281. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/top_group_alignment.html +7 -0
  282. package/src/lightning/iconUtils/iconColors.js +1 -1
  283. package/src/lightning/input/form-element.slds.css +1 -0
  284. package/src/lightning/input/input.html +16 -2
  285. package/src/lightning/input/input.js +91 -3
  286. package/src/lightning/input/input.js-meta.xml +3 -0
  287. package/src/lightning/inputAddress/addressFormat.js +25 -11
  288. package/src/lightning/inputAddress/fieldsLayout.js +3 -0
  289. package/src/lightning/inputAddress/form-element.slds.css +1 -0
  290. package/src/lightning/inputAddress/input-text.slds.css +5 -5
  291. package/src/lightning/inputAddress/inputAddress.html +1 -1
  292. package/src/lightning/inputAddress/inputAddress.js +27 -11
  293. package/src/lightning/inputLocation/form-element.slds.css +1 -0
  294. package/src/lightning/inputLocation/input-text.slds.css +5 -5
  295. package/src/lightning/inputName/form-element.slds.css +1 -0
  296. package/src/lightning/inputName/input-text.slds.css +5 -5
  297. package/src/lightning/internationalizationLibrary/address/AddressFormat.js +2 -0
  298. package/src/lightning/layout/__docs__/layout.md +0 -2
  299. package/src/lightning/lookupAddress/form-element.slds.css +1 -0
  300. package/src/lightning/menuItem/menu-item.slds.css +3 -1
  301. package/src/lightning/modal/__modalUtils__/modalContainerTestConstants.js +7 -3
  302. package/src/lightning/modal/__modalUtils__/modalContainerTestMethods.js +18 -11
  303. package/src/lightning/modal/__modalUtils__/modalContainerTestMockData.js +1 -1
  304. package/src/lightning/modalBase/modalBase.css +4 -0
  305. package/src/lightning/modalBase/modalBase.html +16 -21
  306. package/src/lightning/modalBase/modalBase.js +46 -65
  307. package/src/lightning/modalHeader/modalHeader.html +3 -15
  308. package/src/lightning/modalHeader/modalHeader.js +14 -61
  309. package/src/lightning/multiColumnSortingModal/multiColumnSortingModal.css +14 -0
  310. package/src/lightning/multiColumnSortingModal/multiColumnSortingModal.html +55 -0
  311. package/src/lightning/multiColumnSortingModal/multiColumnSortingModal.js +430 -0
  312. package/src/lightning/multiColumnSortingModal/multiColumnSortingModal.js-meta.xml +4 -0
  313. package/src/lightning/overlayManager/overlayManager.js +16 -0
  314. package/src/lightning/pill/pill.js +19 -13
  315. package/src/lightning/pillContainer/button.slds.css +16 -15
  316. package/src/lightning/pillContainer/pillContainer.js +2 -1
  317. package/src/lightning/pillContainer/standardPillContainer.html +6 -2
  318. package/src/lightning/positionLibrary/direction.js +19 -0
  319. package/src/lightning/primitiveBubble/primitiveBubble.js +7 -0
  320. package/src/lightning/primitiveColorpickerButton/primitiveColorpickerButton.html +2 -2
  321. package/src/lightning/primitiveColorpickerButton/primitiveColorpickerButton.js +8 -0
  322. package/src/lightning/primitiveColumnSorter/primitiveColumnSorter.css +34 -0
  323. package/src/lightning/primitiveColumnSorter/primitiveColumnSorter.html +60 -0
  324. package/src/lightning/primitiveColumnSorter/primitiveColumnSorter.js +107 -0
  325. package/src/lightning/primitiveHeaderFactory/primitiveHeaderFactory.js +36 -3
  326. package/src/lightning/primitiveHeaderFactory/sortingMenuHeader.css +5 -0
  327. package/src/lightning/primitiveHeaderFactory/sortingMenuHeader.html +9 -0
  328. package/src/lightning/primitiveInputCheckbox/form-element.slds.css +1 -0
  329. package/src/lightning/primitiveInputCheckbox/input-checkbox.slds.css +3 -3
  330. package/src/lightning/primitiveInputCheckbox/primitiveInputCheckbox.html +1 -1
  331. package/src/lightning/primitiveInputCheckboxButton/form-element.slds.css +1 -0
  332. package/src/lightning/primitiveInputCheckboxButton/input-checkbox-button.slds.css +6 -5
  333. package/src/lightning/primitiveInputCheckboxButton/primitiveInputCheckboxButton.html +1 -1
  334. package/src/lightning/primitiveInputColor/form-element.slds.css +1 -0
  335. package/src/lightning/primitiveInputColor/input-text.slds.css +5 -5
  336. package/src/lightning/primitiveInputColor/primitiveInputColor.html +5 -2
  337. package/src/lightning/primitiveInputColor/primitiveInputColor.js +2 -0
  338. package/src/lightning/primitiveInputFile/button.slds.css +16 -15
  339. package/src/lightning/primitiveInputFile/form-element.slds.css +1 -0
  340. package/src/lightning/primitiveInputFile/primitiveInputFile.html +1 -1
  341. package/src/lightning/primitiveInputRadio/primitiveInputRadio.html +1 -1
  342. package/src/lightning/primitiveInputSimple/form-element.slds.css +1 -0
  343. package/src/lightning/primitiveInputSimple/input-text.slds.css +5 -5
  344. package/src/lightning/primitiveInputSimple/primitiveInputSimple.html +3 -2
  345. package/src/lightning/primitiveInputSimple/primitiveInputSimple.js +15 -0
  346. package/src/lightning/primitiveInputToggle/form-element.slds.css +1 -0
  347. package/src/lightning/primitiveInputToggle/input-toggle.slds.css +16 -14
  348. package/src/lightning/primitiveInputToggle/primitiveInputToggle.html +1 -1
  349. package/src/lightning/progressIndicator/path.html +8 -2
  350. package/src/lightning/progressIndicator/progressIndicator.js +26 -2
  351. package/src/lightning/progressRing/progress-ring.slds.css +1 -1
  352. package/src/lightning/progressStep/progressStep.js +2 -1
  353. package/src/lightning/prompt/prompt.js +11 -9
  354. package/src/lightning/radioGroup/form-element.slds.css +1 -0
  355. package/src/lightning/radioGroup/input-radio-group.slds.css +4 -10
  356. package/src/lightning/select/form-element.slds.css +1 -0
  357. package/src/lightning/select/select.js +89 -7
  358. package/src/lightning/tabBar/tab-bar.slds.css +11 -0
  359. package/src/lightning/tabset/tabset.slds.css +1 -1
  360. package/src/lightning/textarea/form-element.slds.css +1 -0
  361. package/src/lightning/textarea/textarea.html +1 -0
  362. package/src/lightning/textarea/textarea.slds.css +2 -2
  363. package/src/lightning/timepicker/form-element.slds.css +1 -0
  364. package/src/lightning/timepicker/timepicker.html +4 -1
  365. package/src/lightning/timepicker/timepicker.js +3 -0
  366. package/src/lightning/toast/button-icon.slds.css +41 -25
  367. package/src/lightning/tooltipLibrary/tooltipLibrary.js +4 -15
  368. package/src/lightning/verticalNavigationOverflow/button.slds.css +16 -15
  369. package/scopedImports/@salesforce-label-LightningLookup.messageWhenSearchTermTooShort.js +0 -1
@@ -8,7 +8,7 @@
8
8
  * comes from parent button styles.
9
9
  */
10
10
 
11
- :host([data-render-mode="shadow"]) [part='button-icon'] {
11
+ :host([data-render-mode="shadow"]) [part~='button-icon'] {
12
12
  gap: var(--slds-g-spacing-1);
13
13
  }
14
14
 
@@ -27,6 +27,9 @@
27
27
  --slds-c-buttonicon-color-background-hover: var(--slds-g-color-surface-container-1);
28
28
  --slds-c-buttonicon-color-background-focus: var(--slds-g-color-surface-container-1);
29
29
  --slds-c-buttonicon-color-background-active: var(--slds-g-color-surface-container-1);
30
+ --sds-c-button-spacing-inline: var(--slds-g-sizing-3);
31
+ --sds-c-button-spacing-block: var(--slds-g-sizing-3);
32
+ --sds-c-button-sizing-width: auto;
30
33
  }
31
34
 
32
35
  /**
@@ -42,29 +45,46 @@
42
45
  * Sizing hacks
43
46
  */
44
47
 
45
- :host([data-render-mode="shadow"]) .slds-button_icon-xx-small {
46
- /* No hook for the value we need, so we calc to get it and keep things relative */
47
- --slds-c-buttonicon-spacing-block: calc(var(--slds-g-spacing-1) / 1.5);
48
- --slds-c-buttonicon-spacing-inline: var(--slds-g-spacing-2);
49
- --slds-c-buttonicon-sizing: var(--slds-g-sizing-3);
48
+ :host([data-render-mode="shadow"]) .slds-button_icon-xx-small {
49
+ --slds-c-icon-sizing: var(--slds-g-sizing-3);
50
+ --sds-c-button-sizing-height: var(--slds-g-sizing-5);
51
+ --sds-c-button-sizing-width: var(--slds-g-sizing-5);
50
52
  }
51
53
 
52
54
  :host([data-render-mode="shadow"]) .slds-button_icon-x-small {
53
- --slds-c-buttonicon-spacing-block: var(--slds-g-spacing-1);
54
- --slds-c-buttonicon-spacing-inline: var(--slds-g-spacing-2);
55
- --slds-c-buttonicon-sizing: var(--slds-g-sizing-4);
55
+ --slds-c-icon-sizing: var(--slds-g-sizing-4);
56
+ --sds-c-button-sizing-height: var(--slds-g-sizing-6);
57
+ --sds-c-button-sizing-width: var(--slds-g-sizing-6);
56
58
  }
57
59
 
58
60
  :host([data-render-mode="shadow"]) .slds-button_icon-small {
59
- --slds-c-buttonicon-spacing-block: var(--slds-g-spacing-1);
60
- --slds-c-buttonicon-spacing-inline: var(--slds-g-spacing-2);
61
- --slds-c-buttonicon-sizing: 0.875rem;
61
+ --sds-c-button-sizing-height: var(--slds-g-sizing-7);
62
+ --sds-c-button-sizing-width: var(--slds-g-sizing-7);
62
63
  }
63
64
 
64
65
  :host([data-render-mode="shadow"]) .slds-button_icon-large {
65
- --slds-c-buttonicon-spacing-block: var(--slds-g-spacing-3);
66
- --slds-c-buttonicon-spacing-inline: var(--slds-g-spacing-2);
67
- --slds-c-buttonicon-sizing: var(--slds-g-sizing-7);
66
+ --slds-c-icon-sizing: var(--slds-g-sizing-7);
67
+ --sds-c-button-sizing-height: var(--slds-g-sizing-10);
68
+ --sds-c-button-sizing-width: var(--slds-g-sizing-10);
69
+ }
70
+
71
+ /**
72
+ * Note: Styling below for bare and bare-inverse sizes
73
+ * are not yet supported but should be used once
74
+ * the fixes are in. Additional styles would need to
75
+ * be added as well.
76
+ */
77
+
78
+ :host([data-render-mode="shadow"][variant='bare']) .slds-button_icon-x-small,:host([data-render-mode="shadow"][variant='bare-inverse']) .slds-button_icon-x-small {
79
+ --slds-c-icon-sizing: var(--slds-g-sizing-3);
80
+ }
81
+
82
+ :host([data-render-mode="shadow"][variant='bare']) .slds-button_icon-small,:host([data-render-mode="shadow"][variant='bare-inverse']) .slds-button_icon-small {
83
+ --slds-c-icon-sizing: var(--slds-g-sizing-4);
84
+ }
85
+
86
+ :host([data-render-mode="shadow"][variant='bare']) .slds-button_icon-large,:host([data-render-mode="shadow"][variant='bare-inverse']) .slds-button_icon-large {
87
+ --slds-c-icon-sizing: var(--slds-g-sizing-7);
68
88
  }
69
89
 
70
90
  /**
@@ -153,3 +173,9 @@
153
173
  /* Disabled */
154
174
  --slds-c-buttonicon-color-border-disabled: transparent;
155
175
  }
176
+
177
+ :host([data-render-mode="shadow"]) [part~='button-icon'][label] {
178
+ --sds-c-button-sizing-height: auto;
179
+ --sds-c-button-sizing-width: auto;
180
+ }
181
+
@@ -194,7 +194,7 @@ Licensed under BSD 3-Clause - see LICENSE.txt or git.io/sfdc-license */
194
194
  );
195
195
  --sds-c-button-spacing-inline: var(
196
196
  --slds-c-button-neutral-spacing-inline,
197
- var(--slds-s-button-spacing-inline, var(--slds-g-spacing-4))
197
+ var(--slds-s-button-spacing-inline, var(--slds-g-spacing-4));
198
198
  );
199
199
  --sds-c-button-spacing-block: var(--slds-c-button-neutral-spacing-block);
200
200
 
@@ -255,27 +255,27 @@ Licensed under BSD 3-Clause - see LICENSE.txt or git.io/sfdc-license */
255
255
  );
256
256
  --sds-c-button-color-background-hover: var(
257
257
  --slds-c-button-neutral-color-background-hover,
258
- var(--slds-g-color-surface-container-1)
258
+ var(--slds-g-color-surface-container-2)
259
259
  );
260
- --sds-c-button-color-background-focus: var(--slds-c-button-neutral-color-background-focus, var(--slds-g-color-surface-container-1));
260
+ --sds-c-button-color-background-focus: var(--slds-c-button-neutral-color-background-focus, var(--slds-g-color-surface-container-2));
261
261
  --sds-c-button-color-background-active: var(
262
262
  --slds-c-button-neutral-color-background-active,
263
- var(--slds-g-color-surface-container-1)
263
+ var(--slds-g-color-surface-container-2)
264
264
  );
265
265
 
266
266
  /* Border color */
267
- --sds-c-button-color-border: var(--slds-c-button-neutral-color-border, var(--slds-g-color-border-1));
267
+ --sds-c-button-color-border: var(--slds-c-button-neutral-color-border, var(--slds-g-color-border-2));
268
268
  --sds-c-button-color-border-hover: var(
269
269
  --slds-c-button-neutral-color-border-hover,
270
- var(--slds-g-color-border-accent-1)
270
+ var(--slds-g-color-border-2)
271
271
  );
272
272
  --sds-c-button-color-border-focus: var(
273
273
  --slds-c-button-neutral-color-border-focus,
274
- var(--slds-g-color-border-accent-1)
274
+ var(--slds-g-color-border-2)
275
275
  );
276
276
  --sds-c-button-color-border-active: var(
277
277
  --slds-c-button-neutral-color-border-active,
278
- var(--slds-g-color-border-accent-1)
278
+ var(--slds-g-color-border-2)
279
279
  );
280
280
 
281
281
  /* Text color */
@@ -290,11 +290,12 @@ Licensed under BSD 3-Clause - see LICENSE.txt or git.io/sfdc-license */
290
290
  /* Shadow */
291
291
  --sds-c-button-shadow: var(--slds-c-button-neutral-shadow);
292
292
  --sds-c-button-shadow-focus: var(--slds-c-button-neutral-shadow-focus);
293
-
294
- /* Disabled */
295
- --sds-c-button-color-background-disabled: var(--slds-g-color-surface-container-1);
296
- --sds-c-button-color-border-disabled: var(--slds-g-color-border-disabled-1);
297
- --sds-c-button-text-color-disabled: var(--slds-g-color-disabled-1);
293
+ }
294
+ /* Overriding primitiveBaseButton */
295
+ :host([data-render-mode="shadow"]) [part~='button']:disabled {
296
+ --sds-c-button-color-border-disabled: var(--slds-g-color-border-disabled-1);
297
+ --sds-c-button-text-color-disabled: var(--slds-g-color-on-disabled-1);
298
+ --sds-c-button-color-background-disabled: var(--slds-g-color-disabled-container-1);
298
299
  }
299
300
  /**
300
301
  * A note about fallbacks on the default variant:
@@ -410,9 +411,9 @@ Licensed under BSD 3-Clause - see LICENSE.txt or git.io/sfdc-license */
410
411
  --slds-c-button-neutral-color-border-active: var(--slds-c-button-neutral-color-border, var(--slds-g-color-border-1));
411
412
  }
412
413
  :host([data-render-mode="shadow"][variant='brand']) [part~='button']:disabled,:host([data-render-mode="shadow"][variant='success']) [part~='button']:disabled,:host([data-render-mode="shadow"][variant='destructive']) [part~='button']:disabled {
413
- --sds-c-button-color-background: var(--slds-g-color-disabled-container-1);
414
+ --sds-c-button-color-background: var(--slds-g-color-disabled-container-2);
414
415
  --sds-c-button-color-border: var(--slds-g-color-border-disabled-1);
415
- --sds-c-button-text-color: var(--slds-g-color-on-disabled-1);
416
+ --sds-c-button-text-color: var(--slds-g-color-on-disabled-2);
416
417
  }
417
418
  /**
418
419
  * 'base' variant is not the default in LBC. It is the default in the light
@@ -3,4 +3,4 @@
3
3
  .fix-slds-button_icon-border-filled {
4
4
  height: unset;
5
5
  line-height: var(--slds-c-button-line-height, var(--sds-c-button-line-height, 1.875rem));
6
- }
6
+ }
@@ -13,7 +13,7 @@
13
13
  type="button"
14
14
  onmousedown={handleButtonMouseDown}
15
15
  tabindex={tabIndex}
16
- part="button button-icon">
16
+ part={buttonParts}>
17
17
 
18
18
  <abbr if:true={isDraft} class="slds-indicator_unsaved slds-p-right_xx-small" title={draftAlternativeText}>*</abbr>
19
19
  {label}
@@ -11,6 +11,7 @@ import {
11
11
  timeout,
12
12
  buttonGroupOrderClass,
13
13
  isCSR,
14
+ reflectAttribute,
14
15
  } from 'lightning/utilsPrivate';
15
16
  import {
16
17
  handleKeyDownOnMenuItem,
@@ -47,6 +48,9 @@ const validMenuAlignments = [
47
48
  // remove-next-line-for-c-namespace
48
49
  validMenuAlignments.push(...['auto', 'auto-right', 'auto-left']);
49
50
 
51
+ const buttonPartsLabel = 'button';
52
+ const buttonPartsNoLabel = 'button button-icon';
53
+
50
54
  /**
51
55
  * Represents a dropdown menu with a list of actions or functions.
52
56
  * @slot default Placeholder for menu-item
@@ -55,6 +59,15 @@ export default class LightningButtonMenu extends LightningShadowBaseClass {
55
59
  static validationOptOut = ['class'];
56
60
  static delegatesFocus = true;
57
61
 
62
+ /**
63
+ * For internal use only
64
+ * If this is present, then the button-menu is being used on the datatable
65
+ * it will remove the dropdown arrow for when 'utility:threedots' is used
66
+ * @type {boolean}
67
+ * @default false
68
+ */
69
+ @api internalDatatableActionsMenu = false;
70
+
58
71
  /**
59
72
  * The size of the icon.
60
73
  * Options include xx-small, x-small, small, medium, or large.
@@ -74,7 +87,15 @@ export default class LightningButtonMenu extends LightningShadowBaseClass {
74
87
  * @type {string}
75
88
  * @default utility:down
76
89
  */
77
- @api iconName = 'utility:down';
90
+ @api
91
+ get iconName() {
92
+ return this._iconName;
93
+ }
94
+
95
+ set iconName(iconName) {
96
+ this._iconName = iconName;
97
+ reflectAttribute(this, 'icon-name', this._iconName);
98
+ }
78
99
 
79
100
  /**
80
101
  * The value for the button element.
@@ -103,7 +124,17 @@ export default class LightningButtonMenu extends LightningShadowBaseClass {
103
124
  *
104
125
  * @type {string}
105
126
  */
106
- @api label;
127
+ @api
128
+ get label() {
129
+ return this._label;
130
+ }
131
+
132
+ set label(label) {
133
+ this._label = label;
134
+ this.buttonParts = label ? buttonPartsLabel : buttonPartsNoLabel;
135
+
136
+ reflectAttribute(this, 'label', this._label);
137
+ }
107
138
 
108
139
  /**
109
140
  * Describes the reason for showing the draft indicator.
@@ -141,6 +172,9 @@ export default class LightningButtonMenu extends LightningShadowBaseClass {
141
172
 
142
173
  @track _order = null;
143
174
  @track _variant = 'border';
175
+ @track _iconName = 'utility:down';
176
+ @track _label = null;
177
+ @track buttonParts = buttonPartsNoLabel;
144
178
 
145
179
  _positioning = false;
146
180
  _menuAlignment = 'left';
@@ -215,6 +249,8 @@ export default class LightningButtonMenu extends LightningShadowBaseClass {
215
249
  'container',
216
250
  ],
217
251
  });
252
+
253
+ reflectAttribute(this, 'variant', this._variant);
218
254
  }
219
255
 
220
256
  /**
@@ -492,8 +528,12 @@ export default class LightningButtonMenu extends LightningShadowBaseClass {
492
528
 
493
529
  get computedShowDownIcon() {
494
530
  return !(
495
- this.iconName === 'utility:down' ||
496
- this.iconName === 'utility:chevrondown'
531
+ (
532
+ this.iconName === 'utility:down' ||
533
+ this.iconName === 'utility:chevrondown' ||
534
+ (this.internalDatatableActionsMenu &&
535
+ this.iconName === 'utility:threedots')
536
+ ) // 'utility:threedots' is used for actions menu in `lightning-datatable`
497
537
  );
498
538
  }
499
539
 
@@ -13,10 +13,7 @@
13
13
  --slds-c-button-neutral-color-background: var(--slds-c-buttonstateful-color-background);
14
14
  --slds-c-button-neutral-color-background-hover: var(--slds-c-buttonstateful-color-background-hover);
15
15
  --slds-c-button-neutral-color-background-active: var(--slds-c-buttonstateful-color-background-active);
16
- --slds-c-button-neutral-color-background-focus: var(
17
- --slds-c-buttonstateful-color-background-focus,
18
- var(--slds-g-color-surface-container-2)
19
- );
16
+ --slds-c-button-neutral-color-background-focus: var(--slds-c-buttonstateful-color-background-focus);
20
17
 
21
18
  /* button border */
22
19
  --slds-c-button-neutral-color-border: var(--slds-c-buttonstateful-color-border);
@@ -194,7 +194,7 @@ Licensed under BSD 3-Clause - see LICENSE.txt or git.io/sfdc-license */
194
194
  );
195
195
  --sds-c-button-spacing-inline: var(
196
196
  --slds-c-button-neutral-spacing-inline,
197
- var(--slds-s-button-spacing-inline, var(--slds-g-spacing-4))
197
+ var(--slds-s-button-spacing-inline, var(--slds-g-spacing-4));
198
198
  );
199
199
  --sds-c-button-spacing-block: var(--slds-c-button-neutral-spacing-block);
200
200
 
@@ -255,27 +255,27 @@ Licensed under BSD 3-Clause - see LICENSE.txt or git.io/sfdc-license */
255
255
  );
256
256
  --sds-c-button-color-background-hover: var(
257
257
  --slds-c-button-neutral-color-background-hover,
258
- var(--slds-g-color-surface-container-1)
258
+ var(--slds-g-color-surface-container-2)
259
259
  );
260
- --sds-c-button-color-background-focus: var(--slds-c-button-neutral-color-background-focus, var(--slds-g-color-surface-container-1));
260
+ --sds-c-button-color-background-focus: var(--slds-c-button-neutral-color-background-focus, var(--slds-g-color-surface-container-2));
261
261
  --sds-c-button-color-background-active: var(
262
262
  --slds-c-button-neutral-color-background-active,
263
- var(--slds-g-color-surface-container-1)
263
+ var(--slds-g-color-surface-container-2)
264
264
  );
265
265
 
266
266
  /* Border color */
267
- --sds-c-button-color-border: var(--slds-c-button-neutral-color-border, var(--slds-g-color-border-1));
267
+ --sds-c-button-color-border: var(--slds-c-button-neutral-color-border, var(--slds-g-color-border-2));
268
268
  --sds-c-button-color-border-hover: var(
269
269
  --slds-c-button-neutral-color-border-hover,
270
- var(--slds-g-color-border-accent-1)
270
+ var(--slds-g-color-border-2)
271
271
  );
272
272
  --sds-c-button-color-border-focus: var(
273
273
  --slds-c-button-neutral-color-border-focus,
274
- var(--slds-g-color-border-accent-1)
274
+ var(--slds-g-color-border-2)
275
275
  );
276
276
  --sds-c-button-color-border-active: var(
277
277
  --slds-c-button-neutral-color-border-active,
278
- var(--slds-g-color-border-accent-1)
278
+ var(--slds-g-color-border-2)
279
279
  );
280
280
 
281
281
  /* Text color */
@@ -290,11 +290,12 @@ Licensed under BSD 3-Clause - see LICENSE.txt or git.io/sfdc-license */
290
290
  /* Shadow */
291
291
  --sds-c-button-shadow: var(--slds-c-button-neutral-shadow);
292
292
  --sds-c-button-shadow-focus: var(--slds-c-button-neutral-shadow-focus);
293
-
294
- /* Disabled */
295
- --sds-c-button-color-background-disabled: var(--slds-g-color-surface-container-1);
296
- --sds-c-button-color-border-disabled: var(--slds-g-color-border-disabled-1);
297
- --sds-c-button-text-color-disabled: var(--slds-g-color-disabled-1);
293
+ }
294
+ /* Overriding primitiveBaseButton */
295
+ :host([data-render-mode="shadow"]) [part~='button']:disabled {
296
+ --sds-c-button-color-border-disabled: var(--slds-g-color-border-disabled-1);
297
+ --sds-c-button-text-color-disabled: var(--slds-g-color-on-disabled-1);
298
+ --sds-c-button-color-background-disabled: var(--slds-g-color-disabled-container-1);
298
299
  }
299
300
  /**
300
301
  * A note about fallbacks on the default variant:
@@ -410,9 +411,9 @@ Licensed under BSD 3-Clause - see LICENSE.txt or git.io/sfdc-license */
410
411
  --slds-c-button-neutral-color-border-active: var(--slds-c-button-neutral-color-border, var(--slds-g-color-border-1));
411
412
  }
412
413
  :host([data-render-mode="shadow"][variant='brand']) [part~='button']:disabled,:host([data-render-mode="shadow"][variant='success']) [part~='button']:disabled,:host([data-render-mode="shadow"][variant='destructive']) [part~='button']:disabled {
413
- --sds-c-button-color-background: var(--slds-g-color-disabled-container-1);
414
+ --sds-c-button-color-background: var(--slds-g-color-disabled-container-2);
414
415
  --sds-c-button-color-border: var(--slds-g-color-border-disabled-1);
415
- --sds-c-button-text-color: var(--slds-g-color-on-disabled-1);
416
+ --sds-c-button-text-color: var(--slds-g-color-on-disabled-2);
416
417
  }
417
418
  /**
418
419
  * 'base' variant is not the default in LBC. It is the default in the light
@@ -16,9 +16,8 @@
16
16
  onclick={goToPreviousMonth}>
17
17
  </lightning-button-icon>
18
18
  </div>
19
- <h2 aria-atomic="true"
20
- aria-live="assertive"
21
- role="alert"
19
+ <h2 aria-atomic="false"
20
+ aria-live="polite"
22
21
  class="slds-align-middle"
23
22
  id="month-title"
24
23
  data-index={monthIndex}>
@@ -44,7 +43,7 @@
44
43
  ></lightning-select>
45
44
  </div>
46
45
  </div>
47
- <table aria-labelledby="month-title" class="slds-datepicker__month" role="grid">
46
+ <table class="slds-datepicker__month" role="grid">
48
47
  <thead>
49
48
  <tr id="weekdays-element">
50
49
  <template for:each={computedWeekdayLabels} for:item="weekday">
@@ -11,7 +11,7 @@
11
11
  <div class="slds-media__body" part="title">
12
12
  <template if:true={_hasTitle}>
13
13
  <h2 aria-level={_privateHeadingAriaLevel} class="slds-card__header-title">
14
- <span class="slds-text-heading_small slds-truncate">
14
+ <span class="slds-truncate">
15
15
  <template if:true={hasStringTitle}>
16
16
  {title}
17
17
  </template>
@@ -16,7 +16,7 @@
16
16
  onmousedown={handlePreventDefault}
17
17
  onkeydown={handleKeydown}
18
18
  >
19
- <span class="slds-assistive-text">{computedSaturationAndBrightness}</span>
19
+ <span class="slds-assistive-text">{_hex}</span>
20
20
  </a>
21
21
  </div>
22
22
  <!--Slider & thumbnail -->
@@ -19,7 +19,6 @@ import {
19
19
  rgbToHex,
20
20
  rgbToHsl,
21
21
  rgbToPosition,
22
- rgbToHsv,
23
22
  } from './colorUtil';
24
23
 
25
24
  const i18n = {
@@ -142,14 +141,6 @@ export default class LightningColorPickerCustom extends LightningShadowBaseClass
142
141
  return this.template.querySelector('*[data-id="color-gradient"]');
143
142
  }
144
143
 
145
- get computedSaturationAndBrightness() {
146
- const rgb = this._rgb;
147
- const saturation = rgbToHsv(rgb).saturation || 0;
148
- const brightness = rgbToHsv(rgb).brightness || 0;
149
-
150
- return `Saturation: ${saturation.toFixed()}%. Brightness: ${brightness.toFixed()}%.`;
151
- }
152
-
153
144
  handlePreventDefault(event) {
154
145
  event.preventDefault();
155
146
  }
@@ -254,7 +254,7 @@
254
254
  );
255
255
  --sds-c-inputtext-color-border: var(
256
256
  --slds-c-inputtext-color-border,
257
- var(--slds-g-color-border-1)
257
+ var(--slds-g-color-border-2)
258
258
  );
259
259
  --sds-c-inputtext-sizing-border: var(--slds-c-inputtext-sizing-border);
260
260
  --sds-c-inputtext-radius-border: var(
@@ -330,7 +330,7 @@
330
330
  }
331
331
  :host([data-render-mode="shadow"][readonly]) [part="input-container"]:focus-within,:host([data-render-mode="shadow"][readonly]) [part="input-container"]:active {
332
332
  --sds-c-inputtext-color-border: var(--slds-g-color-disabled-container-2);
333
- --sds-c-inputtext-shadow: 0 0 var(--slds-g-sizing-border-3) var(--slds-g-color-accent-1);
333
+ --sds-c-inputtext-shadow: 0 0 var(--slds-g-sizing-border-3) var(--slds-g-color-accent-2);
334
334
  --sds-c-inputtext-color-background: transparent;
335
335
 
336
336
  outline: 0;
@@ -367,9 +367,9 @@
367
367
  */
368
368
  :host([data-render-mode="shadow"][disabled]) [part='input-container'],:host([data-render-mode="shadow"][disabled]) [part='input'] {
369
369
  cursor: not-allowed;
370
- --sds-c-inputtext-color-background: var(--slds-g-color-disabled-container-1);
371
- --sds-c-inputtext-color-border: var(--slds-g-color-border-1);
372
- --sds-c-inputtext-text-color: var(--slds-g-color-on-surface-1);
370
+ --sds-c-inputtext-color-background: var(--slds-s-input-color-background-disabled, var(--slds-g-color-disabled-container-1));
371
+ --sds-c-inputtext-color-border: var(--slds-g-color-border-disabled-1);
372
+ --sds-c-inputtext-text-color: var(--slds-g-color-on-disabled-2);
373
373
  }
374
374
  /**
375
375
  * Label
@@ -245,6 +245,7 @@
245
245
 
246
246
  @media (width >= 48em) {
247
247
  :host([data-render-mode="shadow"][variant='label-inline']) .slds-form-element__label {
248
+ float: left;
248
249
  max-width: calc(33% - var(--slds-g-sizing-6)); /* Removing icon width for when the help-text icon is present */
249
250
  flex-basis: calc(33% - var(--slds-g-sizing-6)); /* Some form element controls are set to display:flex */
250
251
  flex-grow: 1; /* For IE and Safari which didn't auto expand to the available space */
@@ -15,28 +15,30 @@ export default class LightningConfirm extends LightningOverlay {
15
15
  static [parent] = LightningInteractiveDialogBase;
16
16
 
17
17
  /**
18
- * value to use for header text in "header" variant
19
- * or aria-label in "headerless" variant
18
+ * Value to use for header text in "header" variant
19
+ * or aria-label in "headerless" variant.
20
20
  * @type {string}
21
21
  * @default "Confirm" (translated accordingly)
22
22
  */
23
23
  @api label = labelDefault;
24
24
 
25
25
  /**
26
- * text to display in body of modal
26
+ * Text to display in the confirm modal.
27
27
  */
28
28
  @api message = '';
29
29
 
30
30
  /**
31
- * variant to use for alert; may be
32
- * set to "header" or "headerless"
31
+ * Variant to use for the confirm modal. Valid
32
+ * values are "header" and "headerless".
33
33
  */
34
34
  @api variant = 'header';
35
35
 
36
36
  /**
37
- * theme to use when variant is "header"
38
- * valid values are based on SLDS themes and are
39
- * listed in "themeOptions" of interactiveDialogBase.js
37
+ * Theme to use when variant is "header".
38
+ * Valid values are "default", "shade",
39
+ * "inverse", "alt-inverse", "success",
40
+ * "success", "info", "warning", "error",
41
+ * and "offline".
40
42
  */
41
43
  @api theme = 'default';
42
44
 
@@ -1251,9 +1251,6 @@ This example displays three lines of text and hides the rest; the text on line 3
1251
1251
  </lightning-datatable>
1252
1252
  ```
1253
1253
 
1254
- `wrap-text-max-lines` isn't supported for Internet Explorer 11.
1255
- The entire text in a column appears if `wrapText` is true.
1256
-
1257
1254
  Handle the selection of **Wrap text** or **Clip text** on the column header using the `onheaderaction` handler.
1258
1255
  To return the name of the action, use the `event.target.action.name` property.
1259
1256
 
@@ -0,0 +1,17 @@
1
+ # Accessibility for Custom Types Utilizing Popups
2
+
3
+ ## Background
4
+
5
+ Lightning-datatable hijacks traditional tabindex based focusing to utilize a [two level mode of navigation](https://www.lightningdesignsystem.com/components/data-tables/#Accessibility-2). Standard Cell types already follow necessary patterns such that they properly function in both modes.
6
+
7
+ With custom types, you might need to do extra work if your custom type uses focus trappable elements (elements that keep focus in the cell until a point).
8
+
9
+ For any components that use some form of popup, you must ensure the components function properly in Navigation and Action mode.
10
+
11
+ ## Process/Rationale
12
+
13
+ To accomplish full keyboard accessibility with popups:
14
+ - Ensure the popup is only open while focused
15
+ - Ensure that on the popup we stop propogation on key down
16
+ - This is to prevent the focus from moving to other cells when pressing tab/arrow keys
17
+ - Ensure elements inside the popup are focusable with keyboard navigation (up to consuming team)
@@ -0,0 +1,11 @@
1
+ <template>
2
+ <!-- Move this component to __examples__ -->
3
+ <!-- In playground add <datatable-custom-component-popup-table-wrapper></datatable-custom-component-popup-table-wrapper> -->
4
+ <datatable-my-custom-type-popup-table
5
+ key-field="Id"
6
+ data={data}
7
+ columns={columns}
8
+ show-row-number-column
9
+ >
10
+ </datatable-my-custom-type-popup-table>
11
+ </template>
@@ -0,0 +1,25 @@
1
+ import { LightningElement } from 'lwc';
2
+ import generateData from './generateData.js';
3
+ const columns = [
4
+ {
5
+ label: 'Custom input',
6
+ type: 'customInput',
7
+ },
8
+ {
9
+ label: 'Popup Component',
10
+ type: 'customComponent',
11
+ },
12
+ { label: 'Label', fieldName: 'name' },
13
+ { label: 'Website', fieldName: 'website', type: 'url' },
14
+ { label: 'Phone', fieldName: 'phone', type: 'phone' },
15
+ { label: 'Balance', fieldName: 'amount', type: 'currency' },
16
+ ];
17
+ export default class MyDatatable extends LightningElement {
18
+ data = [];
19
+ columns = columns;
20
+ rowOffset = 0;
21
+
22
+ connectedCallback() {
23
+ this.data = generateData({ amountOfRecords: 5 });
24
+ }
25
+ }
@@ -0,0 +1,15 @@
1
+ export default function generateData({ amountOfRecords }) {
2
+ return [...Array(amountOfRecords)].map((_, index) => {
3
+ return {
4
+ name: `Name (${index})`,
5
+ website: 'www.salesforce.com',
6
+ amount: Math.floor(Math.random() * 100),
7
+ phone: `${
8
+ Math.floor(Math.random() * 900 + 100) * 10000000 + 5551212
9
+ }`,
10
+ closeAt: new Date(
11
+ Date.now() + 86400000 * Math.ceil(Math.random() * 20)
12
+ ),
13
+ };
14
+ });
15
+ }
@@ -0,0 +1,4 @@
1
+ <template>
2
+ <!-- Since this is a top level component we don't need to pass tabindex down through shadowroots -->
3
+ <lightning-input type="text" label="Enter some text" tabindex={internalTabIndex} data-navigation="enable"></lightning-input>
4
+ </template>
@@ -0,0 +1,17 @@
1
+ //myCustomTypeDatatable.js
2
+ import LightningDatatable from 'lightning/datatable';
3
+ import customInputTemplate from './customInput.html';
4
+ import customComponentTemplate from './nestedSimpleComponentParent.html';
5
+
6
+ export default class MyCustomTypePopupTable extends LightningDatatable {
7
+ static customTypes = {
8
+ customInput: {
9
+ template: customInputTemplate,
10
+ standardCellLayout: true,
11
+ },
12
+ customComponent: {
13
+ template: customComponentTemplate,
14
+ standardCellLayout: false,
15
+ },
16
+ };
17
+ }
@@ -0,0 +1,7 @@
1
+ <template>
2
+ <!-- We add an internal component here so that we can garner access to a full LWC component including access to a JS file. -->
3
+ <!-- This is common if a custom component needs some kind of wiring up. -->
4
+ <!-- We pass tabindex down as we don't want this component to be shown as accessible in the dom, but we want children of it to be -->
5
+ <!-- We set data-navigation here as this component has children that are navigable -->
6
+ <datatable-simple-component-popup-nested internal-tab-index={internalTabIndex} data-navigation="enable"></datatable-simple-component-popup-nested>
7
+ </template>