lightning-base-components 1.17.3-alpha → 1.17.6-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 (249) hide show
  1. package/metadata/raptor.json +125 -2
  2. package/package.json +17 -1
  3. package/scopedImports/@salesforce-label-LightningInput.mailingAddressFieldsUpdateText.js +1 -0
  4. package/scopedImports/@salesforce-label-LightningToast.genericNavigationAssistiveText.js +1 -0
  5. package/scopedImports/@salesforce-label-LightningToast.macNavigationAssistiveText.js +1 -0
  6. package/src/lightning/ariaObserver/__examples__/connect/connect.html +19 -0
  7. package/src/lightning/ariaObserver/__examples__/connect/connect.js +9 -0
  8. package/src/lightning/ariaObserver/__examples__/connectChild/connectChild.html +3 -0
  9. package/src/lightning/ariaObserver/__examples__/connectChild/connectChild.js +43 -0
  10. package/src/lightning/ariaObserver/ariaObserver.js +16 -2
  11. package/src/lightning/baseCombobox/baseCombobox.js +11 -3
  12. package/src/lightning/baseCombobox/keyboard.js +3 -0
  13. package/src/lightning/breadcrumb/breadcrumb.css +3 -0
  14. package/src/lightning/breadcrumb/breadcrumb.html +1 -1
  15. package/src/lightning/breadcrumb/breadcrumb.slds.css +25 -0
  16. package/src/lightning/breadcrumbs/breadcrumbs.css +3 -0
  17. package/src/lightning/breadcrumbs/breadcrumbs.html +1 -1
  18. package/src/lightning/breadcrumbs/breadcrumbs.slds.css +33 -0
  19. package/src/lightning/button/button.html +2 -1
  20. package/src/lightning/button/button.js +9 -0
  21. package/src/lightning/buttonIcon/button-icon.slds.css +5 -1
  22. package/src/lightning/buttonIcon/buttonIcon.html +2 -1
  23. package/src/lightning/buttonIcon/buttonIcon.js +10 -1
  24. package/src/lightning/buttonIconStateful/button-icon-stateful.slds.css +5 -1
  25. package/src/lightning/dualListbox/dual-listbox.slds.css +200 -0
  26. package/src/lightning/dualListbox/dualListbox.css +3 -1
  27. package/src/lightning/dualListbox/dualListbox.html +2 -2
  28. package/src/lightning/dualListbox/dualListbox.js +2 -0
  29. package/src/lightning/dualListbox/form-element.slds.css +232 -0
  30. package/src/lightning/dynamicIcon/dynamic-icon-ellie.slds.css +180 -0
  31. package/src/lightning/dynamicIcon/dynamic-icon-eq.slds.css +63 -0
  32. package/src/lightning/dynamicIcon/dynamic-icon-score.slds.css +46 -0
  33. package/src/lightning/dynamicIcon/dynamic-icon-strength.slds.css +122 -0
  34. package/src/lightning/dynamicIcon/dynamic-icon-trend.slds.css +117 -0
  35. package/src/lightning/dynamicIcon/dynamic-icon-waffle.slds.css +177 -0
  36. package/src/lightning/dynamicIcon/ellie.css +1 -0
  37. package/src/lightning/dynamicIcon/eq.css +1 -0
  38. package/src/lightning/dynamicIcon/score.css +1 -0
  39. package/src/lightning/dynamicIcon/strength.css +1 -0
  40. package/src/lightning/dynamicIcon/trend.css +1 -0
  41. package/src/lightning/dynamicIcon/waffle.css +1 -0
  42. package/src/lightning/f6Controller/f6Controller.js +382 -0
  43. package/src/lightning/f6Controller/f6Controller.js-meta.xml +4 -0
  44. package/src/lightning/formattedRichText/formattedRichText.js +4 -3
  45. package/src/lightning/helptext/form-element.slds.css +232 -0
  46. package/src/lightning/helptext/help-text.slds.css +5 -1
  47. package/src/lightning/helptext/helptext.css +2 -1
  48. package/src/lightning/helptext/helptext.html +1 -0
  49. package/src/lightning/helptext/helptext.js +9 -0
  50. package/src/lightning/iconSvgTemplates/buildTemplates/standard/bill_of_materials.html +7 -0
  51. package/src/lightning/iconSvgTemplates/buildTemplates/standard/buyer_group_qualifier.html +8 -0
  52. package/src/lightning/iconSvgTemplates/buildTemplates/standard/datashare_target.html +9 -0
  53. package/src/lightning/iconSvgTemplates/buildTemplates/standard/datashares.html +7 -0
  54. package/src/lightning/iconSvgTemplates/buildTemplates/standard/disclosure_and_compliance.html +8 -0
  55. package/src/lightning/iconSvgTemplates/buildTemplates/standard/document_preview.html +7 -0
  56. package/src/lightning/iconSvgTemplates/buildTemplates/standard/facility_bed.html +7 -0
  57. package/src/lightning/iconSvgTemplates/buildTemplates/standard/market.html +8 -0
  58. package/src/lightning/iconSvgTemplates/buildTemplates/standard/mulesoft.html +8 -0
  59. package/src/lightning/iconSvgTemplates/buildTemplates/standard/price_sheet.html +7 -0
  60. package/src/lightning/iconSvgTemplates/buildTemplates/standard/travel_mode.html +2 -2
  61. package/src/lightning/iconSvgTemplates/buildTemplates/templates.js +34 -1
  62. package/src/lightning/iconSvgTemplates/buildTemplates/utility/add_source.html +7 -0
  63. package/src/lightning/iconSvgTemplates/buildTemplates/utility/app_web_messaging.html +7 -0
  64. package/src/lightning/iconSvgTemplates/buildTemplates/utility/bookmark_stroke.html +7 -0
  65. package/src/lightning/iconSvgTemplates/buildTemplates/utility/buyer_group_qualifier.html +8 -0
  66. package/src/lightning/iconSvgTemplates/buildTemplates/utility/document_preview.html +7 -0
  67. package/src/lightning/iconSvgTemplates/buildTemplates/utility/expired.html +7 -0
  68. package/src/lightning/iconSvgTemplates/buildTemplates/utility/favorite_alt.html +7 -0
  69. package/src/lightning/iconSvgTemplates/buildTemplates/utility/heart.html +7 -0
  70. package/src/lightning/iconSvgTemplates/buildTemplates/utility/hourglass.html +7 -0
  71. package/src/lightning/iconSvgTemplates/buildTemplates/utility/integration.html +8 -0
  72. package/src/lightning/iconSvgTemplates/buildTemplates/utility/market.html +8 -0
  73. package/src/lightning/iconSvgTemplates/buildTemplates/utility/more.html +7 -0
  74. package/src/lightning/iconSvgTemplates/buildTemplates/utility/mulesoft.html +8 -0
  75. package/src/lightning/iconSvgTemplates/buildTemplates/utility/notification_off.html +7 -0
  76. package/src/lightning/iconSvgTemplates/buildTemplates/utility/notification_snoozed.html +9 -0
  77. package/src/lightning/iconSvgTemplates/buildTemplates/utility/profile_alt.html +7 -0
  78. package/src/lightning/iconSvgTemplates/buildTemplates/utility/promotion_tiers.html +10 -0
  79. package/src/lightning/iconSvgTemplates/buildTemplates/utility/sender_email.html +7 -0
  80. package/src/lightning/iconSvgTemplates/buildTemplates/utility/service_appointment.html +13 -0
  81. package/src/lightning/iconSvgTemplates/buildTemplates/utility/service_report.html +8 -0
  82. package/src/lightning/iconSvgTemplates/buildTemplates/utility/toggle_off.html +7 -0
  83. package/src/lightning/iconSvgTemplates/buildTemplates/utility/toggle_on.html +7 -0
  84. package/src/lightning/iconSvgTemplates/buildTemplates/utility/your_account.html +10 -0
  85. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/bill_of_materials.html +7 -0
  86. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/buyer_group_qualifier.html +8 -0
  87. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/datashare_target.html +9 -0
  88. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/datashares.html +7 -0
  89. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/disclosure_and_compliance.html +8 -0
  90. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/document_preview.html +7 -0
  91. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/facility_bed.html +7 -0
  92. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/market.html +8 -0
  93. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/mulesoft.html +8 -0
  94. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/price_sheet.html +7 -0
  95. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/standard/travel_mode.html +2 -2
  96. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/templates.js +34 -1
  97. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/add_source.html +7 -0
  98. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/app_web_messaging.html +7 -0
  99. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/bookmark_stroke.html +7 -0
  100. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/buyer_group_qualifier.html +8 -0
  101. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/document_preview.html +7 -0
  102. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/expired.html +7 -0
  103. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/favorite_alt.html +7 -0
  104. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/heart.html +7 -0
  105. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/hourglass.html +7 -0
  106. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/integration.html +8 -0
  107. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/market.html +8 -0
  108. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/more.html +7 -0
  109. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/mulesoft.html +8 -0
  110. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/notification_off.html +7 -0
  111. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/notification_snoozed.html +9 -0
  112. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/profile_alt.html +7 -0
  113. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/promotion_tiers.html +10 -0
  114. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/sender_email.html +7 -0
  115. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/service_appointment.html +13 -0
  116. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/service_report.html +8 -0
  117. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/toggle_off.html +7 -0
  118. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/toggle_on.html +7 -0
  119. package/src/lightning/iconSvgTemplatesRtl/buildTemplates/utility/your_account.html +10 -0
  120. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/bill_of_materials.html +7 -0
  121. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/buyer_group_qualifier.html +8 -0
  122. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/datashare_target.html +9 -0
  123. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/datashares.html +7 -0
  124. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/disclosure_and_compliance.html +8 -0
  125. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/document_preview.html +7 -0
  126. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/facility_bed.html +7 -0
  127. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/market.html +8 -0
  128. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/mulesoft.html +8 -0
  129. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/price_sheet.html +7 -0
  130. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/standard/travel_mode.html +2 -2
  131. package/src/lightning/iconSvgTemplatesStandard/buildTemplates/templates.js +11 -1
  132. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/bill_of_materials.html +7 -0
  133. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/buyer_group_qualifier.html +8 -0
  134. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/datashare_target.html +9 -0
  135. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/datashares.html +7 -0
  136. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/disclosure_and_compliance.html +8 -0
  137. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/document_preview.html +7 -0
  138. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/facility_bed.html +7 -0
  139. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/market.html +8 -0
  140. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/mulesoft.html +8 -0
  141. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/price_sheet.html +7 -0
  142. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/standard/travel_mode.html +2 -2
  143. package/src/lightning/iconSvgTemplatesStandardRtl/buildTemplates/templates.js +11 -1
  144. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/templates.js +24 -1
  145. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/add_source.html +7 -0
  146. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/app_web_messaging.html +7 -0
  147. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/bookmark_stroke.html +7 -0
  148. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/buyer_group_qualifier.html +8 -0
  149. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/document_preview.html +7 -0
  150. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/expired.html +7 -0
  151. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/favorite_alt.html +7 -0
  152. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/heart.html +7 -0
  153. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/hourglass.html +7 -0
  154. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/integration.html +8 -0
  155. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/market.html +8 -0
  156. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/more.html +7 -0
  157. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/mulesoft.html +8 -0
  158. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/notification_off.html +7 -0
  159. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/notification_snoozed.html +9 -0
  160. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/profile_alt.html +7 -0
  161. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/promotion_tiers.html +10 -0
  162. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/sender_email.html +7 -0
  163. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/service_appointment.html +13 -0
  164. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/service_report.html +8 -0
  165. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/toggle_off.html +7 -0
  166. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/toggle_on.html +7 -0
  167. package/src/lightning/iconSvgTemplatesUtility/buildTemplates/utility/your_account.html +10 -0
  168. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/templates.js +24 -1
  169. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/add_source.html +7 -0
  170. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/app_web_messaging.html +7 -0
  171. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/bookmark_stroke.html +7 -0
  172. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/buyer_group_qualifier.html +8 -0
  173. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/document_preview.html +7 -0
  174. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/expired.html +7 -0
  175. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/favorite_alt.html +7 -0
  176. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/heart.html +7 -0
  177. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/hourglass.html +7 -0
  178. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/integration.html +8 -0
  179. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/market.html +8 -0
  180. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/more.html +7 -0
  181. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/mulesoft.html +8 -0
  182. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/notification_off.html +7 -0
  183. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/notification_snoozed.html +9 -0
  184. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/profile_alt.html +7 -0
  185. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/promotion_tiers.html +10 -0
  186. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/sender_email.html +7 -0
  187. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/service_appointment.html +13 -0
  188. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/service_report.html +8 -0
  189. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/toggle_off.html +7 -0
  190. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/toggle_on.html +7 -0
  191. package/src/lightning/iconSvgTemplatesUtilityRtl/buildTemplates/utility/your_account.html +10 -0
  192. package/src/lightning/input/input-text.slds.css +1 -1
  193. package/src/lightning/input/input.html +3 -3
  194. package/src/lightning/input/input.js +38 -2
  195. package/src/lightning/inputAddress/__docs__/inputAddress.md +3 -0
  196. package/src/lightning/inputAddress/inputAddress.html +1 -0
  197. package/src/lightning/inputAddress/inputAddress.js +6 -0
  198. package/src/lightning/modal/__examples__disabled/allform/allform.html +1 -1
  199. package/src/lightning/modal/__examples__disabled/allform/allform.js +1 -1
  200. package/src/lightning/modal/__examples__disabled/allformfull/allformfull.css +7 -0
  201. package/src/lightning/modal/__examples__disabled/allformfull/allformfull.html +9 -0
  202. package/src/lightning/modal/__examples__disabled/allformfull/allformfull.js +49 -0
  203. package/src/lightning/modal/__examples__disabled/demoallformfull/demoallformfull.css +3 -0
  204. package/src/lightning/modal/__examples__disabled/demoallformfull/demoallformfull.html +146 -0
  205. package/src/lightning/modal/__examples__disabled/demoallformfull/demoallformfull.js +240 -0
  206. package/src/lightning/modalBase/modalBase.css +1 -1
  207. package/src/lightning/modalBase/modalBase.html +2 -2
  208. package/src/lightning/modalBase/modalBase.js +199 -45
  209. package/src/lightning/modalBody/modalBody.js +133 -18
  210. package/src/lightning/modalFooter/modalFooter.js +57 -1
  211. package/src/lightning/navigation/__docs__/navigation.md +1 -1
  212. package/src/lightning/popup/popover.slds.css +121 -0
  213. package/src/lightning/popup/popup.css +3 -0
  214. package/src/lightning/positionLibrary/direction.js +10 -17
  215. package/src/lightning/primitiveBubble/primitiveBubble.js +16 -1
  216. package/src/lightning/select/__docs__/select.md +9 -0
  217. package/src/lightning/select/__examples__/disabled/disabled.html +10 -0
  218. package/src/lightning/select/__examples__/disabled/disabled.js +27 -0
  219. package/src/lightning/select/__examples__/hidden/hidden.html +10 -0
  220. package/src/lightning/select/__examples__/hidden/hidden.js +27 -0
  221. package/src/lightning/select/__examples__/inline/inline.html +10 -0
  222. package/src/lightning/select/__examples__/inline/inline.js +27 -0
  223. package/src/lightning/select/form-element.slds.css +232 -0
  224. package/src/lightning/select/select.css +3 -0
  225. package/src/lightning/select/select.html +2 -2
  226. package/src/lightning/select/select.js +3 -0
  227. package/src/lightning/select/select.slds.css +398 -0
  228. package/src/lightning/showToastEvent/showToastEvent.js +21 -0
  229. package/src/lightning/showToastEvent/showToastEvent.js-meta.xml +4 -0
  230. package/src/lightning/sldsCommon/sldsCommon.css +21 -4
  231. package/src/lightning/toast/__docs__/toast.md +103 -0
  232. package/src/lightning/toast/toast.css +52 -0
  233. package/src/lightning/toast/toast.html +70 -0
  234. package/src/lightning/toast/toast.js +608 -0
  235. package/src/lightning/toast/toast.js-meta.xml +4 -0
  236. package/src/lightning/toastContainer/__docs__/toastContainer.md +59 -0
  237. package/src/lightning/toastContainer/toastContainer.css +32 -0
  238. package/src/lightning/toastContainer/toastContainer.html +9 -0
  239. package/src/lightning/toastContainer/toastContainer.js +471 -0
  240. package/src/lightning/toastContainer/toastContainer.js-meta.xml +6 -0
  241. package/src/lightning/tooltipLibrary/tooltipLibrary.js +82 -19
  242. package/src/lightning/treeGrid/__docs__/treeGrid.md +4 -3
  243. package/src/lightning/utilsPrivate/url.js +2 -1
  244. package/src/lightning/verticalNavigation/vertical-navigation.slds.css +4 -0
  245. package/src/lightning/verticalNavigation/verticalNavigation.css +1 -0
  246. package/src/lightning/verticalNavigation/verticalNavigation.html +1 -1
  247. package/src/lightning/verticalNavigationSection/vertical-navigation-section.slds.css +19 -0
  248. package/src/lightning/verticalNavigationSection/verticalNavigationSection.css +2 -0
  249. package/src/lightning/verticalNavigationSection/verticalNavigationSection.html +1 -1
@@ -16,16 +16,6 @@ function isResizeObserverSupported() {
16
16
  return window.ResizeObserver != null;
17
17
  }
18
18
 
19
- function buildResizeObserver(callback) {
20
- if (isResizeObserverSupported()) {
21
- return new ResizeObserver(callback);
22
- }
23
- return {
24
- observe() {},
25
-
26
- unobserve() {},
27
- };
28
- }
29
19
  /**
30
20
  * Shared instance of a primitive bubble used as a tooltip by most components. This was originally
31
21
  * defined in the helptext component which is where the minWidth style came from.
@@ -33,6 +23,8 @@ function buildResizeObserver(callback) {
33
23
  */
34
24
  let CACHED_BUBBLE_ELEMENT;
35
25
 
26
+ let activeTooltip;
27
+
36
28
  function getCachedBubbleElement() {
37
29
  if (!CACHED_BUBBLE_ELEMENT) {
38
30
  CACHED_BUBBLE_ELEMENT = createElement('lightning-primitive-bubble', {
@@ -41,6 +33,7 @@ function getCachedBubbleElement() {
41
33
  CACHED_BUBBLE_ELEMENT.contentId = BUBBLE_ID;
42
34
  CACHED_BUBBLE_ELEMENT.style.position = 'absolute';
43
35
  CACHED_BUBBLE_ELEMENT.style.minWidth = '75px';
36
+ CACHED_BUBBLE_ELEMENT.disableVisibilityChangeOnLeave = true;
44
37
  }
45
38
 
46
39
  return CACHED_BUBBLE_ELEMENT;
@@ -86,6 +79,7 @@ export class Tooltip {
86
79
  _initialized = false;
87
80
  _visible = false;
88
81
  _isFocusEvent = false;
82
+ _initialResize = true;
89
83
 
90
84
  _config = {};
91
85
 
@@ -123,6 +117,7 @@ export class Tooltip {
123
117
  }
124
118
  this.handleDocumentTouch = this.handleDocumentTouch.bind(this);
125
119
  this.handleEscape = this.handleEscape.bind(this);
120
+ this.hide = this.hide.bind(this);
126
121
  }
127
122
 
128
123
  /**
@@ -167,6 +162,7 @@ export class Tooltip {
167
162
 
168
163
  addInfoListeners() {
169
164
  const target = this._target();
165
+
170
166
  if (!this._initialized && target) {
171
167
  ['mouseenter', 'focus'].forEach((name) =>
172
168
  target.addEventListener(name, () => this.show())
@@ -181,6 +177,13 @@ export class Tooltip {
181
177
  }
182
178
 
183
179
  hideIfNotSelfCover(event) {
180
+ /*
181
+ If the tooltip is already hidden, do not try to hide it. The primitive bubble is shared and we don't want to
182
+ hide a tooltip that does not belong to this instance.
183
+ */
184
+ if (!this._visible) {
185
+ return;
186
+ }
184
187
  if (event.type === 'mouseleave' && event.clientX && event.clientY) {
185
188
  // In any chance, if mouseleave is caused by tooltip itself, it would means
186
189
  // tooltip cover the target which mostly caused by dynamic resize of tooltip by CSS or JS.
@@ -209,6 +212,7 @@ export class Tooltip {
209
212
 
210
213
  addToggleListeners() {
211
214
  const target = this._target();
215
+
212
216
  if (!this._initialized && target) {
213
217
  target.addEventListener('touchstart', (e) => {
214
218
  e.stopPropagation();
@@ -222,10 +226,11 @@ export class Tooltip {
222
226
  this.hideIfNotSelfCover(event)
223
227
  )
224
228
  );
229
+
225
230
  target.addEventListener('keydown', (event) => {
226
231
  if (event.keyCode === 13 && !this._visible) {
227
232
  this.toggle();
228
- } else {
233
+ } else if (this._visible) {
229
234
  this.hide();
230
235
  }
231
236
  });
@@ -240,9 +245,31 @@ export class Tooltip {
240
245
 
241
246
  get resizeObserver() {
242
247
  if (!this._resizeObserver) {
243
- this._resizeObserver = buildResizeObserver(() => {
248
+ this._resizeObserver = this._buildResizeObserver(() => {
244
249
  if (this._visible && this._autoPosition) {
245
- this.startPositioning();
250
+ const tooltip = this._element();
251
+ /**
252
+ * There are some cases where the tooltip hide event does not trigger. For example,
253
+ * if a tab triggers a focus event on element A and then a pointer triggers mouseenter on element B.
254
+ * In this case, the content of the cached tooltip does not match the value of this Tooltip object and
255
+ * we know that this tooltip should be hidden. See @W-12512833
256
+ */
257
+ if (activeTooltip !== this) {
258
+ this.hide(false);
259
+ return;
260
+ }
261
+ this.startPositioning().then(() => {
262
+ /*
263
+ * Once positioning is complete, add the listener to react when the mouse leaves the tooltip.
264
+ * Cannot be added before, or the tooltip will flicker and hide if the mouse is in the same
265
+ * position as the tooltip and the user tabs onto the tooltip. This cannot be managed inside
266
+ * the primitive-bubble, or the ResizeObserver will not be reset correctly.
267
+ */
268
+ if (this._initialResize) {
269
+ tooltip.addEventListener('mouseleave', this.hide);
270
+ this._initialResize = false;
271
+ }
272
+ });
246
273
  }
247
274
  });
248
275
  }
@@ -250,15 +277,29 @@ export class Tooltip {
250
277
  }
251
278
 
252
279
  show(ev) {
253
- if (this._disabled) {
280
+ if (this._disabled || this._visible) {
254
281
  return;
255
282
  }
283
+
284
+ if (activeTooltip && activeTooltip !== this && activeTooltip._visible) {
285
+ activeTooltip.hide(false);
286
+ }
287
+ activeTooltip = this;
288
+
256
289
  this._isFocusEvent = ev && (ev.type === 'focus' ? true : false);
257
290
 
258
291
  this._visible = true;
292
+ this._initialResize = true;
259
293
  const tooltip = this._element();
260
- tooltip.visible = this._visible;
261
- tooltip.content = this._value;
294
+
295
+ /*
296
+ When tabbing, populating the tooltip and making it visible too early can lead to bad interactions
297
+ when the mouse is hovering over a tooltip. W-12559092
298
+ */
299
+ if (!this._isFocusEvent) {
300
+ tooltip.content = this._value;
301
+ tooltip.visible = this._visible;
302
+ }
262
303
 
263
304
  this.startPositioning();
264
305
  document.addEventListener('keydown', this.handleEscape);
@@ -266,17 +307,28 @@ export class Tooltip {
266
307
  this.resizeObserver.observe(tooltip);
267
308
  }
268
309
 
269
- hide() {
310
+ /**
311
+ * Hides the tooltip
312
+ *
313
+ * @param {*} hideBubble the primitive bubble is a shared instance, it may not be desirable to hide it
314
+ * if the current tooltip is no longer using it.
315
+ */
316
+ hide(hideBubble = true) {
270
317
  this._visible = false;
271
318
  const tooltip = this._element();
272
- tooltip.visible = this._visible;
319
+
320
+ if (hideBubble) {
321
+ tooltip.visible = this._visible;
322
+ }
273
323
 
274
324
  this.stopPositioning();
275
325
 
276
326
  document.removeEventListener('touchstart', this.handleDocumentTouch);
277
327
  document.removeEventListener('keydown', this.handleEscape);
328
+ tooltip.removeEventListener('mouseleave', this.hide);
278
329
 
279
330
  this.resizeObserver.unobserve(tooltip);
331
+ activeTooltip = null;
280
332
  }
281
333
 
282
334
  toggle() {
@@ -323,7 +375,7 @@ export class Tooltip {
323
375
  const targetBox = this._target().getBoundingClientRect();
324
376
  const padLeft = targetBox.width * 0.5 - NUBBIN_OFFSET;
325
377
 
326
- this._autoPosition
378
+ return this._autoPosition
327
379
  .start({
328
380
  target: this._target,
329
381
  element: this._element,
@@ -350,4 +402,15 @@ export class Tooltip {
350
402
  this._autoPosition.stop();
351
403
  }
352
404
  }
405
+
406
+ _buildResizeObserver(callback) {
407
+ if (isResizeObserverSupported()) {
408
+ return new ResizeObserver(callback);
409
+ }
410
+ return {
411
+ observe() {},
412
+
413
+ unobserve() {},
414
+ };
415
+ }
353
416
  }
@@ -39,8 +39,8 @@ include:
39
39
  This component provides styling for up to 20 nested levels. For tree grids that require more than 20 nested levels,
40
40
  build your own component.
41
41
 
42
- A checkbox is displayed by default in the first column. The `hide-checkbox-column` attribute
43
- removes the checkbox.
42
+ A checkbox is displayed by default in the first column. Set the `hide-checkbox-column` attribute
43
+ to `true` to remove the checkbox.
44
44
 
45
45
  Initialize your tree grid data using the `data`, `columns`, and `key-field` attributes
46
46
  and define their values in JavaScript. Note that `key-field` is required.
@@ -49,7 +49,8 @@ This example creates a tree grid with 5 columns, where the
49
49
  first column displays a checkbox for row selection. Selecting the checkbox
50
50
  enables you to select the entire row of data and triggers the `onrowselection`
51
51
  event handler. The `expanded-rows` attribute is optional, and expands nested
52
- items on a row when provided.
52
+ items on a row when provided. Selecting a row using the checkbox does not select
53
+ the rows nested below it.
53
54
 
54
55
  The example includes two buttons whose handlers call `lightning-tree-grid` methods
55
56
  to collapse all rows and to show which rows are expanded.
@@ -9,7 +9,8 @@ export function makeAbsoluteUrl(url) {
9
9
  return isAbsoluteUrl(url) ? url : `${protocol}//${url}`;
10
10
  }
11
11
 
12
- export const FALLBACK_URL = 'about:blank';
12
+ // eslint-disable-next-line no-script-url
13
+ export const FALLBACK_URL = 'javascript:void(0)';
13
14
  const IS_SCRIPT_OR_DATA = /^(?:\w+script|data):/i;
14
15
  const IS_HTML_ENTITY = /&#(\w+)(^\w|;)?/g;
15
16
  const htmlCtrlEntityRegex = /&(newline|tab);/gi;
@@ -0,0 +1,4 @@
1
+
2
+ :host([data-render-mode="shadow"]) [part~='vertical-navigation'] {
3
+ position: relative;
4
+ }
@@ -0,0 +1 @@
1
+ /* @import './vertical-navigation.slds.css'; */
@@ -1,5 +1,5 @@
1
1
  <template>
2
- <nav class={computedClass} onprivateitemselect={handleItemSelect} onprivateitemregister={handleItemRegister} aria-label={ariaLabel}>
2
+ <nav class={computedClass} onprivateitemselect={handleItemSelect} onprivateitemregister={handleItemRegister} aria-label={ariaLabel} part="vertical-navigation">
3
3
  <slot></slot>
4
4
  </nav>
5
5
  </template>
@@ -0,0 +1,19 @@
1
+
2
+ @supports (--styling-hooks: '') {
3
+ :host([data-render-mode="shadow"]) .slds-nav-vertical__title {
4
+ padding-block-start: var(--sds-g-spacing-2, 0.5rem);
5
+ padding-block-end: var(--sds-g-spacing-2, 0.5rem);
6
+ padding-inline-start: var(--sds-g-spacing-5, 1.5rem);
7
+ padding-inline-end: var(--sds-g-spacing-4, 1rem);
8
+ font-size: var(--sds-g-font-size-base, 1rem);
9
+ font-weight: var(--sds-g-font-weight-7, 700);
10
+ }
11
+
12
+ :host([data-render-mode="shadow"]) .slds-nav-vertical__section:not(:first-of-type) {
13
+ margin-block-start: var(--sds-g-spacing-2, 0.5rem);
14
+ }
15
+
16
+ :host([data-render-mode="shadow"]) .slds-nav-vertical__title:not(:first-of-type) {
17
+ margin-block-start: var(--sds-g-spacing-2, 0.5rem);
18
+ }
19
+ }
@@ -1,3 +1,5 @@
1
+ /* @import './vertical-navigation-section.slds.css'; */
2
+
1
3
  div[role="list"] {
2
4
  list-style: none;
3
5
  }
@@ -1,5 +1,5 @@
1
1
  <template>
2
- <div class="slds-nav-vertical__section" onprivateoverflowregister={handleOverflowRegister}>
2
+ <div class="slds-nav-vertical__section" onprivateoverflowregister={handleOverflowRegister} part="vertical-navigation-section">
3
3
  <h2 id="vertical-navigation-section-heading" class="slds-nav-vertical__title" aria-level={_privateHeadingAriaLevel}>{label}</h2>
4
4
  <div role="list" aria-describedby="vertical-navigation-section-heading">
5
5
  <slot></slot>