lightning-base-components 1.18.1-alpha → 1.18.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 (215) hide show
  1. package/metadata/raptor.json +5 -0
  2. package/package.json +43 -1
  3. package/scopedImports/@salesforce-internal-core.appVersion.js +1 -1
  4. package/src/lightning/accordion/accordion.css +12 -0
  5. package/src/lightning/accordion/accordion.html +3 -1
  6. package/src/lightning/accordion/accordion.js +4 -2
  7. package/src/lightning/accordion/accordion.slds.css +671 -0
  8. package/src/lightning/accordionSection/accordion-section.slds.css +647 -0
  9. package/src/lightning/accordionSection/accordionSection.css +14 -0
  10. package/src/lightning/accordionSection/accordionSection.html +23 -19
  11. package/src/lightning/accordionSection/accordionSection.js +29 -2
  12. package/src/lightning/ariaObserver/__docs__/ariaObserver.md +21 -9
  13. package/src/lightning/ariaObserver/ariaObserver.js +185 -154
  14. package/src/lightning/ariaObserver/polyfill.js +639 -0
  15. package/src/lightning/avatar/avatar.css +2 -0
  16. package/src/lightning/avatar/avatar.html +2 -0
  17. package/src/lightning/avatar/avatar.js +18 -15
  18. package/src/lightning/avatar/avatar.slds.css +272 -0
  19. package/src/lightning/baseCombobox/base-combobox.slds.css +1585 -0
  20. package/src/lightning/baseCombobox/baseCombobox.css +11 -1
  21. package/src/lightning/baseCombobox/baseCombobox.html +154 -146
  22. package/src/lightning/baseCombobox/baseCombobox.js +82 -46
  23. package/src/lightning/baseCombobox/spinner.slds.css +438 -0
  24. package/src/lightning/baseComboboxItem/baseComboboxItem.js +4 -2
  25. package/src/lightning/baseComboboxItem/inline.css +2 -0
  26. package/src/lightning/breadcrumb/breadcrumb.css +2 -2
  27. package/src/lightning/breadcrumb/breadcrumb.js +4 -2
  28. package/src/lightning/breadcrumb/breadcrumb.slds.css +2 -7
  29. package/src/lightning/breadcrumbs/breadcrumbs.css +2 -2
  30. package/src/lightning/breadcrumbs/breadcrumbs.js +3 -2
  31. package/src/lightning/breadcrumbs/breadcrumbs.slds.css +7 -1
  32. package/src/lightning/button/__examples__/inverse/inverse.css +8 -0
  33. package/src/lightning/button/__examples__/inverse/inverse.html +3 -2
  34. package/src/lightning/button/button.css +2 -0
  35. package/src/lightning/button/button.html +4 -2
  36. package/src/lightning/button/button.js +21 -0
  37. package/src/lightning/button/button.slds.css +527 -0
  38. package/src/lightning/buttonGroup/buttonGroup.css +2 -2
  39. package/src/lightning/buttonGroup/buttonGroup.js +3 -2
  40. package/src/lightning/buttonIcon/button-icon.slds.css +215 -453
  41. package/src/lightning/buttonIcon/buttonIcon.css +2 -2
  42. package/src/lightning/buttonIcon/buttonIcon.js +4 -0
  43. package/src/lightning/buttonIconStateful/button-icon-stateful.slds.css +215 -453
  44. package/src/lightning/buttonIconStateful/buttonIconStateful.css +2 -2
  45. package/src/lightning/buttonMenu/{dropdown.slds.css → button-menu.slds.css} +853 -217
  46. package/src/lightning/buttonMenu/buttonMenu.css +2 -2
  47. package/src/lightning/buttonMenu/buttonMenu.html +2 -2
  48. package/src/lightning/buttonMenu/buttonMenu.js +10 -14
  49. package/src/lightning/buttonStateful/button-stateful.slds.css +225 -457
  50. package/src/lightning/buttonStateful/buttonStateful.css +2 -2
  51. package/src/lightning/buttonStateful/buttonStateful.js +3 -2
  52. package/src/lightning/calendar/__examples__/basic/basic.html +7 -0
  53. package/src/lightning/calendar/__examples__/basic/basic.js +3 -0
  54. package/src/lightning/calendar/calendar.css +3 -0
  55. package/src/lightning/calendar/calendar.html +12 -9
  56. package/src/lightning/calendar/calendar.js +15 -1
  57. package/src/lightning/calendar/calendar.slds.css +2048 -0
  58. package/src/lightning/card/card.css +2 -2
  59. package/src/lightning/card/card.js +3 -2
  60. package/src/lightning/card/card.slds.css +141 -88
  61. package/src/lightning/colorPickerCustom/colorPickerCustom.css +2 -2
  62. package/src/lightning/colorPickerCustom/colorPickerCustom.js +3 -2
  63. package/src/lightning/colorPickerPanel/color-picker-panel.slds.css +11 -38
  64. package/src/lightning/colorPickerPanel/colorPickerPanel.css +3 -2
  65. package/src/lightning/colorPickerPanel/colorPickerPanel.js +4 -2
  66. package/src/lightning/colorPickerPanel/popover.slds.css +121 -0
  67. package/src/lightning/combobox/combobox.css +4 -0
  68. package/src/lightning/combobox/combobox.html +31 -29
  69. package/src/lightning/combobox/combobox.js +21 -4
  70. package/src/lightning/combobox/combobox.slds.css +13 -0
  71. package/src/lightning/combobox/form-element.slds.css +281 -0
  72. package/src/lightning/configProvider/defaultConfig.js +2 -1
  73. package/src/lightning/datepicker/datepicker.css +3 -0
  74. package/src/lightning/datepicker/datepicker.html +7 -4
  75. package/src/lightning/datepicker/datepicker.js +73 -19
  76. package/src/lightning/datepicker/form-element.slds.css +281 -0
  77. package/src/lightning/datepicker/input-text.slds.css +398 -0
  78. package/src/lightning/datetimepicker/datetimepicker.css +3 -0
  79. package/src/lightning/datetimepicker/datetimepicker.html +9 -3
  80. package/src/lightning/datetimepicker/datetimepicker.js +39 -35
  81. package/src/lightning/datetimepicker/form-element.slds.css +281 -0
  82. package/src/lightning/datetimepicker/input-text.slds.css +398 -0
  83. package/src/lightning/dualListbox/dualListbox.css +2 -2
  84. package/src/lightning/dualListbox/dualListbox.html +3 -3
  85. package/src/lightning/dualListbox/dualListbox.js +31 -6
  86. package/src/lightning/dualListbox/form-element.slds.css +83 -34
  87. package/src/lightning/dualListbox/keyboard.js +20 -1
  88. package/src/lightning/dynamicIcon/dynamicIcon.js +3 -2
  89. package/src/lightning/dynamicIcon/ellie.css +1 -1
  90. package/src/lightning/dynamicIcon/eq.css +1 -1
  91. package/src/lightning/dynamicIcon/score.css +1 -1
  92. package/src/lightning/dynamicIcon/strength.css +1 -1
  93. package/src/lightning/dynamicIcon/trend.css +1 -1
  94. package/src/lightning/dynamicIcon/waffle.css +1 -1
  95. package/src/lightning/formattedRichText/linkify.js +2 -2
  96. package/src/lightning/helptext/form-element.slds.css +83 -34
  97. package/src/lightning/helptext/help-text.slds.css +215 -453
  98. package/src/lightning/helptext/helptext.css +2 -2
  99. package/src/lightning/helptext/helptext.js +3 -2
  100. package/src/lightning/i18nCldrOptions/README.md +5 -0
  101. package/src/lightning/i18nService/README.md +5 -0
  102. package/src/lightning/icon/icon.css +2 -2
  103. package/src/lightning/icon/icon.js +16 -2
  104. package/src/lightning/icon/icon.slds.css +29 -17
  105. package/src/lightning/icon/iconColors.js +1 -0
  106. package/src/lightning/input/__examples__/text/text.html +0 -1
  107. package/src/lightning/input/form-element.slds.css +281 -0
  108. package/src/lightning/input/input-checkbox.slds.css +3 -12
  109. package/src/lightning/input/input-text.slds.css +239 -128
  110. package/src/lightning/input/input.css +2 -1
  111. package/src/lightning/input/input.html +8 -8
  112. package/src/lightning/input/input.js +107 -73
  113. package/src/lightning/internationalizationLibrary/README.md +24 -0
  114. package/src/lightning/internationalizationLibrary/utils.js +4 -1
  115. package/src/lightning/layout/__docs__/layout.md +1 -1
  116. package/src/lightning/layout/__examples__/simple/simple.css +1 -1
  117. package/src/lightning/layout/layout.css +5 -1
  118. package/src/lightning/layout/layout.js +4 -2
  119. package/src/lightning/layoutItem/__examples__/alignmentBump/alignmentBump.css +1 -1
  120. package/src/lightning/layoutItem/__examples__/sizePerDevice/sizePerDevice.css +0 -1
  121. package/src/lightning/layoutItem/layoutItem.css +5 -0
  122. package/src/lightning/layoutItem/layoutItem.js +4 -2
  123. package/src/lightning/menuDivider/menu-divider.slds.css +15 -0
  124. package/src/lightning/menuDivider/menuDivider.css +3 -0
  125. package/src/lightning/menuDivider/menuDivider.html +1 -1
  126. package/src/lightning/menuDivider/menuDivider.js +4 -2
  127. package/src/lightning/menuItem/menu-item.slds.css +140 -0
  128. package/src/lightning/menuItem/menuItem.css +3 -0
  129. package/src/lightning/menuItem/menuItem.html +43 -41
  130. package/src/lightning/menuItem/menuItem.js +4 -4
  131. package/src/lightning/menuSubheader/menu-subheader.slds.css +22 -0
  132. package/src/lightning/menuSubheader/menuSubheader.css +3 -0
  133. package/src/lightning/menuSubheader/menuSubheader.html +3 -1
  134. package/src/lightning/menuSubheader/menuSubheader.js +4 -6
  135. package/src/lightning/modal/__docs__/modal.md +3 -1
  136. package/src/lightning/modal/__modalUtils__/modalContainerTestConstants.js +267 -0
  137. package/src/lightning/modal/__modalUtils__/modalContainerTestMethods.js +1165 -0
  138. package/src/lightning/modal/__modalUtils__/modalContainerTestMockData.js +131 -0
  139. package/src/lightning/modal/modal.js +1 -1
  140. package/src/lightning/pill/avatar.slds.css +272 -0
  141. package/src/lightning/pill/link.css +3 -0
  142. package/src/lightning/pill/link.html +1 -1
  143. package/src/lightning/pill/pill.js +29 -9
  144. package/src/lightning/pill/pill.slds.css +168 -0
  145. package/src/lightning/pill/plain.css +3 -0
  146. package/src/lightning/pill/plain.html +1 -1
  147. package/src/lightning/pill/plainLink.css +3 -0
  148. package/src/lightning/pill/plainLink.html +1 -1
  149. package/src/lightning/pillContainer/barePillContainer.css +3 -0
  150. package/src/lightning/pillContainer/barePillContainer.html +1 -2
  151. package/src/lightning/pillContainer/listbox.slds.css +267 -0
  152. package/src/lightning/pillContainer/pill-container.slds.css +22 -0
  153. package/src/lightning/pillContainer/pill.slds.css +168 -0
  154. package/src/lightning/pillContainer/pillContainer.js +7 -3
  155. package/src/lightning/pillContainer/standardPillContainer.css +4 -0
  156. package/src/lightning/pillContainer/standardPillContainer.html +2 -2
  157. package/src/lightning/popup/popover.slds.css +119 -119
  158. package/src/lightning/popup/popup.css +1 -2
  159. package/src/lightning/popup/popup.js +3 -2
  160. package/src/lightning/positionLibrary/elementProxy.js +7 -2
  161. package/src/lightning/positionLibrary/util.js +8 -0
  162. package/src/lightning/primitiveBubble/primitiveBubble.css +2 -2
  163. package/src/lightning/primitiveBubble/primitiveBubble.js +4 -2
  164. package/src/lightning/primitiveButton/primitiveButton.js +5 -4
  165. package/src/lightning/primitiveCellFactory/cellWithStandardLayout.html +29 -21
  166. package/src/lightning/primitiveCellFactory/primitiveCellFactory.js +4 -0
  167. package/src/lightning/primitiveColorpickerButton/color-picker-button.slds.css +31 -19
  168. package/src/lightning/primitiveColorpickerButton/primitiveColorpickerButton.css +2 -2
  169. package/src/lightning/primitiveColorpickerButton/primitiveColorpickerButton.js +5 -3
  170. package/src/lightning/primitiveIcon/icon.slds.css +209 -0
  171. package/src/lightning/primitiveIcon/primitiveIcon.css +2 -1
  172. package/src/lightning/primitiveIcon/primitiveIcon.html +1 -1
  173. package/src/lightning/primitiveIcon/primitiveIcon.js +18 -11
  174. package/src/lightning/progressStep/progressStep.js +10 -13
  175. package/src/lightning/radioGroup/radioGroup.css +2 -1
  176. package/src/lightning/radioGroup/radioGroup.js +4 -2
  177. package/src/lightning/select/form-element.slds.css +83 -34
  178. package/src/lightning/select/select.css +2 -2
  179. package/src/lightning/select/select.js +4 -2
  180. package/src/lightning/select/select.slds.css +86 -34
  181. package/src/lightning/sldsCommon/sldsCommon.css +135 -75
  182. package/src/lightning/spinner/spinner.css +2 -2
  183. package/src/lightning/spinner/spinner.js +4 -2
  184. package/src/lightning/tabBar/tab-bar.slds.css +334 -0
  185. package/src/lightning/tabBar/tabBar.css +2 -0
  186. package/src/lightning/tabBar/tabBar.html +4 -3
  187. package/src/lightning/tabBar/tabBar.js +30 -3
  188. package/src/lightning/tabset/tabset.html +5 -4
  189. package/src/lightning/tabset/tabset.js +29 -11
  190. package/src/lightning/timepicker/form-element.slds.css +281 -0
  191. package/src/lightning/timepicker/timepicker.css +3 -0
  192. package/src/lightning/timepicker/timepicker.html +5 -1
  193. package/src/lightning/timepicker/timepicker.js +18 -15
  194. package/src/lightning/timepicker/timepicker.slds.css +18 -0
  195. package/src/lightning/tooltipLibrary/tooltipLibrary.js +21 -19
  196. package/src/lightning/utilsPrivate/browser.js +5 -3
  197. package/src/lightning/utilsPrivate/os.js +6 -4
  198. package/src/lightning/utilsPrivate/ssr.js +4 -0
  199. package/src/lightning/utilsPrivate/utilsPrivate.js +2 -0
  200. package/src/lightning/verticalNavigation/verticalNavigation.css +2 -1
  201. package/src/lightning/verticalNavigation/verticalNavigation.js +3 -2
  202. package/src/lightning/verticalNavigationSection/verticalNavigationSection.css +2 -1
  203. package/src/lightning/verticalNavigationSection/verticalNavigationSection.js +3 -2
  204. package/src/lightning/accordion/__perf__DISABLED/accordion-perf-utils.js +0 -76
  205. package/src/lightning/accordion/__perf__DISABLED/accordion10Multiple25SectionEach.perf.js +0 -57
  206. package/src/lightning/accordion/__perf__DISABLED/accordion10Simple25SectionEach.perf.js +0 -37
  207. package/src/lightning/accordion/__perf__DISABLED/accordionMultiple50Section.perf.js +0 -45
  208. package/src/lightning/accordion/__perf__DISABLED/accordionSimple50Section.perf.js +0 -35
  209. package/src/lightning/accordion/__perf__DISABLED/container/container.html +0 -15
  210. package/src/lightning/accordion/__perf__DISABLED/container/container.js +0 -7
  211. package/src/lightning/positionLibrary/__component__/positionLibraryBounding.spec.js +0 -319
  212. package/src/lightning/positionLibrary/__component__/x/bounding/bounding.css +0 -16
  213. package/src/lightning/positionLibrary/__component__/x/bounding/bounding.html +0 -36
  214. package/src/lightning/positionLibrary/__component__/x/bounding/bounding.js +0 -122
  215. /package/src/lightning/{baseCombobox → baseComboboxItem}/listbox.slds.css +0 -0
@@ -1,121 +1,121 @@
1
1
 
2
2
  @supports (--styling-hooks: '') {
3
- :host([data-render-mode="shadow"]) .slds-popover {
4
- position: relative;
5
- border-radius: var(--sds-g-radius-border-2, 0.25rem);
6
- width: var(--sds-g-sizing-15, 20rem);
7
- min-height: calc(var(--sds-g-sizing-5, 1rem) * 2);
8
- z-index: var(--slds-c-popover-position-zindex, 6000);
9
- background-color: var(--slds-c-popover-color-background,
10
- var(--slds-g-color-neutral-base-100,
11
- var(--sds-g-color-neutral-base-100, #ffffff)));
12
- display: inline-block;
13
- box-shadow: 0 2px 3px 0 rgba(0, 0, 0, 0.16);
14
- border: var(--sds-g-sizing-border-1, 1px) solid var(--slds-g-color-border-base-1, var(--sds-g-color-border-base-1, #c9c9c9));
15
- }
16
-
17
- :host([data-render-mode="shadow"]) .slds-popover__meta {
18
- margin-block-end: var(--sds-g-sizing-4, 0.75rem);
19
- }
20
-
21
- :host([data-render-mode="shadow"]) .slds-popover__body {
22
- padding-block: var(--sds-g-spacing-2, 0.5rem);
23
- padding-inline: var(--sds-g-spacing-3, 0.75rem);
24
- }
25
-
26
- :host([data-render-mode="shadow"]) .slds-popover__body .slds-popover__header {
27
- padding-block: 0 var(--sds-g-sizing-3, 0.5rem);
28
- padding-inline: 0;
29
- }
30
-
31
- :host([data-render-mode="shadow"]) .slds-popover__body,:host([data-render-mode="shadow"])
32
- .slds-popover__header,:host([data-render-mode="shadow"])
33
- .slds-popover__footer {
34
- position: relative;
35
- padding-block: var(--sds-g-spacing-2, 0.5rem);
36
- padding-inline: var(--sds-g-spacing-3, 0.75rem);
37
- word-wrap: break-word;
38
- }
39
-
40
- :host([data-render-mode="shadow"]) .slds-popover__header {
41
- border-bottom: 0;
42
- }
43
-
44
- :host([data-render-mode="shadow"]) .slds-popover__footer {
45
- border-block-start: var(--sds-g-sizing-border-1, 1px) solid var(--slds-g-color-border-base-1, var(--sds-g-color-border-base-1, #c9c9c9));
46
- background-color: var(--slds-g-color-neutral-base-95, var(--sds-g-color-neutral-base-95, #f3f3f3));
47
- border-end-start-radius: inherit;
48
- border-end-end-radius: inherit;
49
- padding-block: var(--sds-g-spacing-2, 0.5rem);
50
- padding-inline: var(--sds-g-spacing-3, 0.75rem);
51
- }
52
-
53
- :host([data-render-mode="shadow"]) .slds-popover__footer_form {
54
- text-align: center;
55
- background: var(--slds-g-color-neutral-base-95, var(--sds-g-color-neutral-base-95, #f3f3f3));
56
- border-radius: 0 0 var(--sds-g-radius-border-2, 0.25rem) var(--sds-g-radius-border-2, 0.25rem);
57
- }
58
-
59
- :host([data-render-mode="shadow"]) .slds-popover__body_small {
60
- max-height: var(--sds-g-sizing-14, 15rem);
61
- overflow-y: auto;
62
- }
63
-
64
- :host([data-render-mode="shadow"]) .slds-popover__close {
65
- position: relative;
66
- margin-block: var(--sds-g-spacing-1, 0.25rem);
67
- margin-inline: var(--sds-g-spacing-1, 0.25rem);
68
- z-index: calc(var(--slds-c-popover-position-zindex, 6000) + 1);
69
- }
70
-
71
- :host([data-render-mode="shadow"]) .slds-popover_small {
72
- max-width: var(--sds-g-sizing-14, 15rem);
73
- }
74
-
75
- :host([data-render-mode="shadow"]) .slds-popover_medium {
76
- min-width: var(--sds-g-sizing-15, 20rem);
77
- }
78
-
79
- :host([data-render-mode="shadow"]) .slds-popover_large {
80
- min-width: 25rem;
81
- max-width: 512px;
82
- }
83
-
84
- :host([data-render-mode="shadow"]) .slds-popover[class*="theme_"] {
85
- border: 0;
86
- }
87
-
88
- :host([data-render-mode="shadow"]) .slds-popover *:last-child {
89
- margin-bottom: 0;
90
- }
91
-
92
- :host([data-render-mode="shadow"]) .slds-popover_full-width {
93
- width: 100%;
94
- }
95
-
96
- :host([data-render-mode="shadow"]) .slds-popover_hide {
97
- display: none;
98
- }
99
-
100
- :host([data-render-mode="shadow"]) .slds-popover_dark {
101
- background-color: var(--slds-g-color-brand-base-30, var(--sds-g-color-brand-base-30, #014486));
102
- color: var(--slds-g-color-neutral-base-100, var(--sds-g-color-neutral-base-100, #ffffff));
103
- }
104
-
105
- :host([data-render-mode="shadow"]) .slds-popover_dark .slds-badge {
106
- background-color: var(--slds-g-color-neutral-base-100, var(--sds-g-color-neutral-base-100, #ffffff));
107
- }
108
-
109
- :host([data-render-mode="shadow"]) .slds-popover_dark .slds-popover__close {
110
- color: var(--slds-g-color-neutral-base-100, var(--sds-g-color-neutral-base-100, #ffffff));
111
- }
112
-
113
- :host([data-render-mode="shadow"]) .slds-popover_dark .slds-icon-text-default {
114
- fill: var(--slds-g-color-neutral-base-100, var(--sds-g-color-neutral-base-100, #ffffff));
115
- }
116
-
117
- :host([data-render-mode="shadow"]) .slds-popover_dark .slds-popover__footer {
118
- border-top-color: var(--slds-g-color-brand-base-10, var(--sds-g-color-brand-base-10, #001639));
119
- background-color: var(--slds-g-color-brand-base-20, var(--sds-g-color-brand-base-20, #032d60));
120
- }
121
- }
3
+ :host([data-render-mode="shadow"]) .slds-popover {
4
+ position: relative;
5
+ border-radius: var(--sds-g-radius-border-2, 0.25rem);
6
+ width: var(--sds-g-sizing-15, 20rem);
7
+ min-height: calc(var(--sds-g-sizing-5, 1rem) * 2);
8
+ z-index: var(--slds-c-popover-position-zindex, 6000);
9
+ background-color: var(--slds-c-popover-color-background,
10
+ var(--slds-g-color-neutral-base-100,
11
+ var(--sds-g-color-neutral-base-100, #ffffff)));
12
+ display: inline-block;
13
+ box-shadow: 0 2px 3px 0 rgba(0, 0, 0, 0.16);
14
+ border: var(--sds-g-sizing-border-1, 1px) solid var(--slds-g-color-border-base-1, var(--sds-g-color-border-base-1, #c9c9c9));
15
+ }
16
+
17
+ :host([data-render-mode="shadow"]) .slds-popover__meta {
18
+ margin-block-end: var(--sds-g-sizing-4, 0.75rem);
19
+ }
20
+
21
+ :host([data-render-mode="shadow"]) .slds-popover__body {
22
+ padding-block: var(--sds-g-spacing-2, 0.5rem);
23
+ padding-inline: var(--sds-g-spacing-3, 0.75rem);
24
+ }
25
+
26
+ :host([data-render-mode="shadow"]) .slds-popover__body .slds-popover__header {
27
+ padding-block: 0 var(--sds-g-sizing-3, 0.5rem);
28
+ padding-inline: 0;
29
+ }
30
+
31
+ :host([data-render-mode="shadow"]) .slds-popover__body,:host([data-render-mode="shadow"])
32
+ .slds-popover__header,:host([data-render-mode="shadow"])
33
+ .slds-popover__footer {
34
+ position: relative;
35
+ padding-block: var(--sds-g-spacing-2, 0.5rem);
36
+ padding-inline: var(--sds-g-spacing-3, 0.75rem);
37
+ word-wrap: break-word;
38
+ }
39
+
40
+ :host([data-render-mode="shadow"]) .slds-popover__header {
41
+ border-bottom: 0;
42
+ }
43
+
44
+ :host([data-render-mode="shadow"]) .slds-popover__footer {
45
+ border-block-start: var(--sds-g-sizing-border-1, 1px) solid var(--slds-g-color-border-base-1, var(--sds-g-color-border-base-1, #c9c9c9));
46
+ background-color: var(--slds-g-color-neutral-base-95, var(--sds-g-color-neutral-base-95, #f3f3f3));
47
+ border-end-start-radius: inherit;
48
+ border-end-end-radius: inherit;
49
+ padding-block: var(--sds-g-spacing-2, 0.5rem);
50
+ padding-inline: var(--sds-g-spacing-3, 0.75rem);
51
+ }
52
+
53
+ :host([data-render-mode="shadow"]) .slds-popover__footer_form {
54
+ text-align: center;
55
+ background: var(--slds-g-color-neutral-base-95, var(--sds-g-color-neutral-base-95, #f3f3f3));
56
+ border-radius: 0 0 var(--sds-g-radius-border-2, 0.25rem) var(--sds-g-radius-border-2, 0.25rem);
57
+ }
58
+
59
+ :host([data-render-mode="shadow"]) .slds-popover__body_small {
60
+ max-height: var(--sds-g-sizing-14, 15rem);
61
+ overflow-y: auto;
62
+ }
63
+
64
+ :host([data-render-mode="shadow"]) .slds-popover__close {
65
+ position: relative;
66
+ margin-block: var(--sds-g-spacing-1, 0.25rem);
67
+ margin-inline: var(--sds-g-spacing-1, 0.25rem);
68
+ z-index: calc(var(--slds-c-popover-position-zindex, 6000) + 1);
69
+ }
70
+
71
+ :host([data-render-mode="shadow"]) .slds-popover_small {
72
+ max-width: var(--sds-g-sizing-14, 15rem);
73
+ }
74
+
75
+ :host([data-render-mode="shadow"]) .slds-popover_medium {
76
+ min-width: var(--sds-g-sizing-15, 20rem);
77
+ }
78
+
79
+ :host([data-render-mode="shadow"]) .slds-popover_large {
80
+ min-width: 25rem;
81
+ max-width: 512px;
82
+ }
83
+
84
+ :host([data-render-mode="shadow"]) .slds-popover[class*="theme_"] {
85
+ border: 0;
86
+ }
87
+
88
+ :host([data-render-mode="shadow"]) .slds-popover *:last-child {
89
+ margin-bottom: 0;
90
+ }
91
+
92
+ :host([data-render-mode="shadow"]) .slds-popover_full-width {
93
+ width: 100%;
94
+ }
95
+
96
+ :host([data-render-mode="shadow"]) .slds-popover_hide {
97
+ display: none;
98
+ }
99
+
100
+ :host([data-render-mode="shadow"]) .slds-popover_dark {
101
+ background-color: var(--slds-g-color-brand-base-30, var(--sds-g-color-brand-base-30, #014486));
102
+ color: var(--slds-g-color-neutral-base-100, var(--sds-g-color-neutral-base-100, #ffffff));
103
+ }
104
+
105
+ :host([data-render-mode="shadow"]) .slds-popover_dark .slds-badge {
106
+ background-color: var(--slds-g-color-neutral-base-100, var(--sds-g-color-neutral-base-100, #ffffff));
107
+ }
108
+
109
+ :host([data-render-mode="shadow"]) .slds-popover_dark .slds-popover__close {
110
+ color: var(--slds-g-color-neutral-base-100, var(--sds-g-color-neutral-base-100, #ffffff));
111
+ }
112
+
113
+ :host([data-render-mode="shadow"]) .slds-popover_dark .slds-icon-text-default {
114
+ fill: var(--slds-g-color-neutral-base-100, var(--sds-g-color-neutral-base-100, #ffffff));
115
+ }
116
+
117
+ :host([data-render-mode="shadow"]) .slds-popover_dark .slds-popover__footer {
118
+ border-top-color: var(--slds-g-color-brand-base-10, var(--sds-g-color-brand-base-10, #001639));
119
+ background-color: var(--slds-g-color-brand-base-20, var(--sds-g-color-brand-base-20, #032d60));
120
+ }
121
+ }
@@ -1,3 +1,2 @@
1
- /* @import 'lightning/sldsCommon';
1
+ @import 'lightning/sldsCommon';
2
2
  @import './popover.slds.css';
3
- */
@@ -1,4 +1,5 @@
1
- import { api, LightningElement, track } from 'lwc';
1
+ import { api, track } from 'lwc';
2
+ import LightningShadowBaseClass from 'lightning/shadowBaseClassPrivate';
2
3
  import { AutoPosition } from 'lightning/positionLibrary';
3
4
  import {
4
5
  createAlignmentConfiguration,
@@ -7,7 +8,7 @@ import {
7
8
  import { getElementWithFocus } from 'lightning/focusUtils';
8
9
  import { isUndefinedOrNull, normalizeBoolean } from 'lightning/utilsPrivate';
9
10
 
10
- export default class LightningPopup extends LightningElement {
11
+ export default class LightningPopup extends LightningShadowBaseClass {
11
12
  @track _visible;
12
13
  @track _queueShow;
13
14
  @track _ariaLabelledBy;
@@ -1,4 +1,4 @@
1
- import { isInDom, WindowManager } from './util';
1
+ import { isInDom, WindowManager, pxToInt } from './util';
2
2
 
3
3
  export class ElementProxy {
4
4
  constructor(el, id) {
@@ -142,8 +142,13 @@ export class ElementProxy {
142
142
  ? '0'
143
143
  : parseInt(style.top.replace('px', ''), 10);
144
144
 
145
+ const marginOffset =
146
+ this.top < absPos.top
147
+ ? pxToInt(style.marginBottom)
148
+ : pxToInt(style.marginTop) * -1;
149
+
145
150
  let leftDif = Math.round(this.left - (absPos.left + scrollLeft));
146
- const topDif = this.top - (absPos.top + scrollTop);
151
+ const topDif = this.top - (absPos.top + marginOffset + scrollTop);
147
152
 
148
153
  const viewPortWidth = w.innerWidth || document.body.clientWidth;
149
154
  let rightPos = parseInt(style.right, 10);
@@ -239,3 +239,11 @@ export function requestAnimationFrameAsPromise() {
239
239
  requestAnimationFrame(() => resolve());
240
240
  });
241
241
  }
242
+
243
+ function isPx(value) {
244
+ return value.slice(-2) === 'px';
245
+ }
246
+
247
+ export function pxToInt(value) {
248
+ return value && isPx(value) ? parseInt(value, 10) : 0;
249
+ }
@@ -1,5 +1,5 @@
1
- /* @import 'lightning/sldsCommon';
2
- @import './tooltip.slds.css'; */
1
+ @import 'lightning/sldsCommon';
2
+ @import './tooltip.slds.css';
3
3
 
4
4
  /* Fix for tooltip alignment issue, for details see: W-11677142
5
5
  *
@@ -1,6 +1,7 @@
1
1
  /* eslint-disable @lwc/lwc/no-api-reassignments */
2
2
 
3
- import { LightningElement, api, track } from 'lwc';
3
+ import { api, track } from 'lwc';
4
+ import LightningShadowBaseClass from 'lightning/shadowBaseClassPrivate';
4
5
  import { classSet } from 'lightning/utils';
5
6
 
6
7
  const DEFAULT_ALIGN = {
@@ -8,7 +9,7 @@ const DEFAULT_ALIGN = {
8
9
  vertical: 'bottom',
9
10
  };
10
11
 
11
- export default class LightningPrimitiveBubble extends LightningElement {
12
+ export default class LightningPrimitiveBubble extends LightningShadowBaseClass {
12
13
  @track
13
14
  state = {
14
15
  // tracks the `visibility` of the tooltip
@@ -39,6 +40,7 @@ export default class LightningPrimitiveBubble extends LightningElement {
39
40
  }
40
41
 
41
42
  connectedCallback() {
43
+ super.connectedCallback();
42
44
  this.setAttribute('role', 'tooltip');
43
45
  this.state.inDOM = true;
44
46
  }
@@ -1,4 +1,5 @@
1
- import { LightningElement, api, track } from 'lwc';
1
+ import { api, track } from 'lwc';
2
+ import LightningShadowBaseClass from 'lightning/shadowBaseClassPrivate';
2
3
  import {
3
4
  isIE11,
4
5
  normalizeBoolean,
@@ -25,7 +26,7 @@ const ROLE = 'role';
25
26
  * - aria-labelledby: Role that depeneds on AriaObserver for native shadow.
26
27
  * - aria-owns: Abstracts the logic of setting the id-reference on the host element.
27
28
  */
28
- export default class LightningPrimitiveButton extends LightningElement {
29
+ export default class LightningPrimitiveButton extends LightningShadowBaseClass {
29
30
  /**** COMPONENT PRIVATE PROPERTIES ****/
30
31
  _initialized = false;
31
32
 
@@ -113,7 +114,7 @@ export default class LightningPrimitiveButton extends LightningElement {
113
114
  this.ariaObserver.connect({
114
115
  targetSelector: 'button',
115
116
  attribute: 'aria-labelledby',
116
- id: value,
117
+ relatedNodeIds: value,
117
118
  });
118
119
  }
119
120
 
@@ -132,7 +133,7 @@ export default class LightningPrimitiveButton extends LightningElement {
132
133
  this.ariaObserver.connect({
133
134
  targetSelector: 'button',
134
135
  attribute: 'aria-describedby',
135
- id: value,
136
+ relatedNodeIds: value,
136
137
  });
137
138
  }
138
139
 
@@ -19,17 +19,15 @@
19
19
 
20
20
  <!-- left icon -->
21
21
  <template if:true={hasLeftIcon}>
22
- <lightning-icon icon-name={iconName} size="x-small" alternative-text={iconAlternativeText}></lightning-icon>
23
- &nbsp;
22
+ <lightning-icon icon-name={iconName} size="x-small" class="slds-m-right_x-small" alternative-text={iconAlternativeText}></lightning-icon>
24
23
  {iconLabel}
25
- &nbsp;
26
24
  </template>
27
25
 
28
26
  <!-- *************** PREFIX ICONS END *************** -->
29
27
 
30
28
  <!-- action -->
31
29
  <template if:true={isAction}>
32
- <lightning-primitive-cell-actions data-navigation="enable"
30
+ <lightning-primitive-cell-actions class={computedMarginClassWhenLeftIconExists} data-navigation="enable"
33
31
  data-action-triggers="enter,space"
34
32
  row-key-value={rowKeyValue}
35
33
  col-key-value={colKeyValue}
@@ -42,7 +40,7 @@
42
40
 
43
41
  <!-- button -->
44
42
  <template if:true={isButton}>
45
- <lightning-primitive-cell-button data-navigation="enable"
43
+ <lightning-primitive-cell-button class={computedMarginClassWhenLeftIconExists} data-navigation="enable"
46
44
  data-action-triggers="enter,space"
47
45
  row-key-value={rowKeyValue}
48
46
  col-key-value={colKeyValue}
@@ -61,7 +59,7 @@
61
59
 
62
60
  <!-- button-icon-->
63
61
  <template if:true={isButtonIcon}>
64
- <lightning-primitive-cell-button data-navigation="enable"
62
+ <lightning-primitive-cell-button class={computedMarginClassWhenLeftIconExists} data-navigation="enable"
65
63
  data-action-triggers="enter,space"
66
64
  type="button-icon"
67
65
  row-key-value={rowKeyValue}
@@ -92,7 +90,7 @@
92
90
 
93
91
  <!-- currency -->
94
92
  <template if:true={isCurrency}>
95
- <lightning-formatted-number value={value} format-style="currency"
93
+ <lightning-formatted-number class={computedMarginClassWhenLeftIconExists} value={value} format-style="currency"
96
94
  currency-code={typeAttribute0}
97
95
  currency-display-as={typeAttribute1}
98
96
  minimum-integer-digits={typeAttribute2}
@@ -106,6 +104,7 @@
106
104
  <!-- custom type -->
107
105
  <template if:true={isCustomType}>
108
106
  <lightning-primitive-custom-cell
107
+ class={computedMarginClassWhenLeftIconExists}
109
108
  types={types}
110
109
  keyboard-mode={keyboardMode}
111
110
  column-type={columnType}
@@ -133,7 +132,8 @@
133
132
 
134
133
  <!-- datetime -->
135
134
  <template if:true={isDateTime}>
136
- <lightning-formatted-date-time value={dateValue}
135
+ <lightning-formatted-date-time class={computedMarginClassWhenLeftIconExists}
136
+ value={dateValue}
137
137
  day={typeAttribute0}
138
138
  era={typeAttribute1}
139
139
  hour={typeAttribute2}
@@ -150,7 +150,8 @@
150
150
 
151
151
  <!-- datetime -->
152
152
  <template if:true={isDateLocal}>
153
- <lightning-formatted-date-time value={value}
153
+ <lightning-formatted-date-time class={computedMarginClassWhenLeftIconExists}
154
+ value={value}
154
155
  day={computedDateLocalDay}
155
156
  month={computedDateLocalMonth}
156
157
  year={computedDateLocalYear}
@@ -160,7 +161,8 @@
160
161
 
161
162
  <!-- email -->
162
163
  <template if:true={isEmail}>
163
- <lightning-formatted-email data-navigation="enable"
164
+ <lightning-formatted-email class={computedMarginClassWhenLeftIconExists}
165
+ data-navigation="enable"
164
166
  data-action-triggers="enter"
165
167
  value={value}
166
168
  tabindex={internalTabIndex}>
@@ -169,14 +171,16 @@
169
171
 
170
172
  <!-- location -->
171
173
  <template if:true={isLocation}>
172
- <lightning-formatted-location latitude={value.latitude}
174
+ <lightning-formatted-location class={computedMarginClassWhenLeftIconExists}
175
+ latitude={value.latitude}
173
176
  longitude={value.longitude}>
174
177
  </lightning-formatted-location>
175
178
  </template>
176
179
 
177
180
  <!-- number -->
178
181
  <template if:true={isNumber}>
179
- <lightning-formatted-number value={value}
182
+ <lightning-formatted-number class={computedMarginClassWhenLeftIconExists}
183
+ value={value}
180
184
  minimum-integer-digits={typeAttribute0}
181
185
  minimum-fraction-digits={typeAttribute1}
182
186
  maximum-fraction-digits={typeAttribute2}
@@ -187,7 +191,8 @@
187
191
 
188
192
  <!-- percent -->
189
193
  <template if:true={isPercent}>
190
- <lightning-formatted-number value={value} format-style="percent"
194
+ <lightning-formatted-number class={computedMarginClassWhenLeftIconExists}
195
+ value={value} format-style="percent"
191
196
  minimum-integer-digits={typeAttribute0}
192
197
  minimum-fraction-digits={typeAttribute1}
193
198
  maximum-fraction-digits={typeAttribute2}
@@ -198,7 +203,8 @@
198
203
 
199
204
  <!-- phone -->
200
205
  <template if:true={isPhone}>
201
- <lightning-formatted-phone data-navigation="enable"
206
+ <lightning-formatted-phone class={computedMarginClassWhenLeftIconExists}
207
+ data-navigation="enable"
202
208
  data-action-triggers="enter"
203
209
  value={value}
204
210
  tabindex={internalTabIndex}>
@@ -207,7 +213,8 @@
207
213
 
208
214
  <!-- Reference (Lookup) -->
209
215
  <template if:true={isReference}>
210
- <lightning-formatted-lookup data-navigation="enable"
216
+ <lightning-formatted-lookup class={computedMarginClassWhenLeftIconExists}
217
+ data-navigation="enable"
211
218
  data-action-triggers="enter"
212
219
  record-id={value}
213
220
  tabindex={internalTabIndex}
@@ -218,7 +225,8 @@
218
225
  <!-- row number -->
219
226
  <template if:true={isRowNumber}>
220
227
  <template if:true={_rowHasError}>
221
- <lightning-primitive-datatable-tooltip data-navigation="enable"
228
+ <lightning-primitive-datatable-tooltip
229
+ data-navigation="enable"
222
230
  data-action-triggers="enter,space"
223
231
  class="slds-m-horizontal_xxx-small"
224
232
  size="xx-small"
@@ -235,14 +243,16 @@
235
243
 
236
244
  <!-- text -->
237
245
  <template if:true={isText}>
238
- <lightning-base-formatted-text value={value}
246
+ <lightning-base-formatted-text class={computedMarginClassWhenLeftIconExists}
247
+ value={value}
239
248
  linkify={typeAttribute0}>
240
249
  </lightning-base-formatted-text>
241
250
  </template>
242
251
 
243
252
  <!-- url -->
244
253
  <template if:true={isUrl}>
245
- <lightning-formatted-url data-navigation="enable"
254
+ <lightning-formatted-url class={computedMarginClassWhenLeftIconExists}
255
+ data-navigation="enable"
246
256
  data-action-triggers="enter"
247
257
  value={value}
248
258
  tooltip={urlTooltip}
@@ -254,9 +264,7 @@
254
264
 
255
265
  <!-- *************** SUFFIX ICONS ADD ALL TYPES BEFORE THIS *************** -->
256
266
  <template if:true={hasRightIcon}>
257
- &nbsp;
258
- <lightning-icon icon-name={iconName} size="x-small" alternative-text={iconAlternativeText}></lightning-icon>
259
- &nbsp;
267
+ <lightning-icon icon-name={iconName} class="slds-m-left_x-small slds-m-right_x-small" size="x-small" alternative-text={iconAlternativeText}></lightning-icon>
260
268
  {iconLabel}
261
269
  </template>
262
270
  <!-- *************** SUFFIX ICONS END *************** -->
@@ -283,6 +283,10 @@ export default class PrivateCellFactory extends PrimitiveDatatableCell {
283
283
  .toString();
284
284
  }
285
285
 
286
+ get computedMarginClassWhenLeftIconExists() {
287
+ return this.hasLeftIcon ? 'slds-m-left_x-small' : '';
288
+ }
289
+
286
290
  get computedWrapperClass() {
287
291
  const alignment = this.computedAlignment;
288
292