lightning-base-components 1.17.7-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 (214) hide show
  1. package/metadata/raptor.json +5 -0
  2. package/package.json +43 -1
  3. package/src/lightning/accordion/accordion.css +12 -0
  4. package/src/lightning/accordion/accordion.html +3 -1
  5. package/src/lightning/accordion/accordion.js +4 -2
  6. package/src/lightning/accordion/accordion.slds.css +671 -0
  7. package/src/lightning/accordionSection/accordion-section.slds.css +647 -0
  8. package/src/lightning/accordionSection/accordionSection.css +14 -0
  9. package/src/lightning/accordionSection/accordionSection.html +23 -19
  10. package/src/lightning/accordionSection/accordionSection.js +29 -2
  11. package/src/lightning/ariaObserver/__docs__/ariaObserver.md +21 -9
  12. package/src/lightning/ariaObserver/ariaObserver.js +185 -154
  13. package/src/lightning/ariaObserver/polyfill.js +639 -0
  14. package/src/lightning/avatar/avatar.css +2 -0
  15. package/src/lightning/avatar/avatar.html +2 -0
  16. package/src/lightning/avatar/avatar.js +18 -15
  17. package/src/lightning/avatar/avatar.slds.css +272 -0
  18. package/src/lightning/baseCombobox/base-combobox.slds.css +1585 -0
  19. package/src/lightning/baseCombobox/baseCombobox.css +11 -1
  20. package/src/lightning/baseCombobox/baseCombobox.html +154 -146
  21. package/src/lightning/baseCombobox/baseCombobox.js +82 -46
  22. package/src/lightning/baseCombobox/spinner.slds.css +438 -0
  23. package/src/lightning/baseComboboxItem/baseComboboxItem.js +4 -2
  24. package/src/lightning/baseComboboxItem/inline.css +2 -0
  25. package/src/lightning/breadcrumb/breadcrumb.css +2 -2
  26. package/src/lightning/breadcrumb/breadcrumb.js +4 -2
  27. package/src/lightning/breadcrumb/breadcrumb.slds.css +2 -7
  28. package/src/lightning/breadcrumbs/breadcrumbs.css +2 -2
  29. package/src/lightning/breadcrumbs/breadcrumbs.js +3 -2
  30. package/src/lightning/breadcrumbs/breadcrumbs.slds.css +7 -1
  31. package/src/lightning/button/__examples__/inverse/inverse.css +8 -0
  32. package/src/lightning/button/__examples__/inverse/inverse.html +3 -2
  33. package/src/lightning/button/button.css +2 -0
  34. package/src/lightning/button/button.html +4 -2
  35. package/src/lightning/button/button.js +21 -0
  36. package/src/lightning/button/button.slds.css +527 -0
  37. package/src/lightning/buttonGroup/buttonGroup.css +2 -2
  38. package/src/lightning/buttonGroup/buttonGroup.js +3 -2
  39. package/src/lightning/buttonIcon/button-icon.slds.css +215 -453
  40. package/src/lightning/buttonIcon/buttonIcon.css +2 -2
  41. package/src/lightning/buttonIcon/buttonIcon.js +4 -0
  42. package/src/lightning/buttonIconStateful/button-icon-stateful.slds.css +215 -453
  43. package/src/lightning/buttonIconStateful/buttonIconStateful.css +2 -2
  44. package/src/lightning/buttonMenu/{dropdown.slds.css → button-menu.slds.css} +853 -217
  45. package/src/lightning/buttonMenu/buttonMenu.css +2 -2
  46. package/src/lightning/buttonMenu/buttonMenu.html +2 -2
  47. package/src/lightning/buttonMenu/buttonMenu.js +10 -14
  48. package/src/lightning/buttonStateful/button-stateful.slds.css +225 -457
  49. package/src/lightning/buttonStateful/buttonStateful.css +2 -2
  50. package/src/lightning/buttonStateful/buttonStateful.js +3 -2
  51. package/src/lightning/calendar/__examples__/basic/basic.html +7 -0
  52. package/src/lightning/calendar/__examples__/basic/basic.js +3 -0
  53. package/src/lightning/calendar/calendar.css +3 -0
  54. package/src/lightning/calendar/calendar.html +12 -9
  55. package/src/lightning/calendar/calendar.js +15 -1
  56. package/src/lightning/calendar/calendar.slds.css +2048 -0
  57. package/src/lightning/card/card.css +2 -2
  58. package/src/lightning/card/card.js +3 -2
  59. package/src/lightning/card/card.slds.css +141 -88
  60. package/src/lightning/colorPickerCustom/colorPickerCustom.css +2 -2
  61. package/src/lightning/colorPickerCustom/colorPickerCustom.js +3 -2
  62. package/src/lightning/colorPickerPanel/color-picker-panel.slds.css +11 -38
  63. package/src/lightning/colorPickerPanel/colorPickerPanel.css +3 -2
  64. package/src/lightning/colorPickerPanel/colorPickerPanel.js +4 -2
  65. package/src/lightning/colorPickerPanel/popover.slds.css +121 -0
  66. package/src/lightning/combobox/combobox.css +4 -0
  67. package/src/lightning/combobox/combobox.html +31 -29
  68. package/src/lightning/combobox/combobox.js +21 -4
  69. package/src/lightning/combobox/combobox.slds.css +13 -0
  70. package/src/lightning/combobox/form-element.slds.css +281 -0
  71. package/src/lightning/configProvider/defaultConfig.js +2 -1
  72. package/src/lightning/datepicker/datepicker.css +3 -0
  73. package/src/lightning/datepicker/datepicker.html +7 -4
  74. package/src/lightning/datepicker/datepicker.js +73 -19
  75. package/src/lightning/datepicker/form-element.slds.css +281 -0
  76. package/src/lightning/datepicker/input-text.slds.css +398 -0
  77. package/src/lightning/datetimepicker/datetimepicker.css +3 -0
  78. package/src/lightning/datetimepicker/datetimepicker.html +9 -3
  79. package/src/lightning/datetimepicker/datetimepicker.js +39 -35
  80. package/src/lightning/datetimepicker/form-element.slds.css +281 -0
  81. package/src/lightning/datetimepicker/input-text.slds.css +398 -0
  82. package/src/lightning/dualListbox/dualListbox.css +2 -2
  83. package/src/lightning/dualListbox/dualListbox.html +3 -3
  84. package/src/lightning/dualListbox/dualListbox.js +31 -6
  85. package/src/lightning/dualListbox/form-element.slds.css +83 -34
  86. package/src/lightning/dualListbox/keyboard.js +20 -1
  87. package/src/lightning/dynamicIcon/dynamicIcon.js +3 -2
  88. package/src/lightning/dynamicIcon/ellie.css +1 -1
  89. package/src/lightning/dynamicIcon/eq.css +1 -1
  90. package/src/lightning/dynamicIcon/score.css +1 -1
  91. package/src/lightning/dynamicIcon/strength.css +1 -1
  92. package/src/lightning/dynamicIcon/trend.css +1 -1
  93. package/src/lightning/dynamicIcon/waffle.css +1 -1
  94. package/src/lightning/formattedRichText/linkify.js +2 -2
  95. package/src/lightning/helptext/form-element.slds.css +83 -34
  96. package/src/lightning/helptext/help-text.slds.css +215 -453
  97. package/src/lightning/helptext/helptext.css +2 -2
  98. package/src/lightning/helptext/helptext.js +3 -2
  99. package/src/lightning/i18nCldrOptions/README.md +5 -0
  100. package/src/lightning/i18nService/README.md +5 -0
  101. package/src/lightning/icon/icon.css +2 -2
  102. package/src/lightning/icon/icon.js +16 -2
  103. package/src/lightning/icon/icon.slds.css +29 -17
  104. package/src/lightning/icon/iconColors.js +1 -0
  105. package/src/lightning/input/__examples__/text/text.html +0 -1
  106. package/src/lightning/input/form-element.slds.css +281 -0
  107. package/src/lightning/input/input-checkbox.slds.css +3 -12
  108. package/src/lightning/input/input-text.slds.css +239 -128
  109. package/src/lightning/input/input.css +2 -1
  110. package/src/lightning/input/input.html +8 -8
  111. package/src/lightning/input/input.js +107 -73
  112. package/src/lightning/internationalizationLibrary/README.md +24 -0
  113. package/src/lightning/internationalizationLibrary/utils.js +4 -1
  114. package/src/lightning/layout/__docs__/layout.md +1 -1
  115. package/src/lightning/layout/__examples__/simple/simple.css +1 -1
  116. package/src/lightning/layout/layout.css +5 -1
  117. package/src/lightning/layout/layout.js +4 -2
  118. package/src/lightning/layoutItem/__examples__/alignmentBump/alignmentBump.css +1 -1
  119. package/src/lightning/layoutItem/__examples__/sizePerDevice/sizePerDevice.css +0 -1
  120. package/src/lightning/layoutItem/layoutItem.css +5 -0
  121. package/src/lightning/layoutItem/layoutItem.js +4 -2
  122. package/src/lightning/menuDivider/menu-divider.slds.css +15 -0
  123. package/src/lightning/menuDivider/menuDivider.css +3 -0
  124. package/src/lightning/menuDivider/menuDivider.html +1 -1
  125. package/src/lightning/menuDivider/menuDivider.js +4 -2
  126. package/src/lightning/menuItem/menu-item.slds.css +140 -0
  127. package/src/lightning/menuItem/menuItem.css +3 -0
  128. package/src/lightning/menuItem/menuItem.html +43 -41
  129. package/src/lightning/menuItem/menuItem.js +4 -4
  130. package/src/lightning/menuSubheader/menu-subheader.slds.css +22 -0
  131. package/src/lightning/menuSubheader/menuSubheader.css +3 -0
  132. package/src/lightning/menuSubheader/menuSubheader.html +3 -1
  133. package/src/lightning/menuSubheader/menuSubheader.js +4 -6
  134. package/src/lightning/modal/__docs__/modal.md +3 -1
  135. package/src/lightning/modal/__modalUtils__/modalContainerTestConstants.js +267 -0
  136. package/src/lightning/modal/__modalUtils__/modalContainerTestMethods.js +1165 -0
  137. package/src/lightning/modal/__modalUtils__/modalContainerTestMockData.js +131 -0
  138. package/src/lightning/modal/modal.js +1 -1
  139. package/src/lightning/pill/avatar.slds.css +272 -0
  140. package/src/lightning/pill/link.css +3 -0
  141. package/src/lightning/pill/link.html +1 -1
  142. package/src/lightning/pill/pill.js +29 -9
  143. package/src/lightning/pill/pill.slds.css +168 -0
  144. package/src/lightning/pill/plain.css +3 -0
  145. package/src/lightning/pill/plain.html +1 -1
  146. package/src/lightning/pill/plainLink.css +3 -0
  147. package/src/lightning/pill/plainLink.html +1 -1
  148. package/src/lightning/pillContainer/barePillContainer.css +3 -0
  149. package/src/lightning/pillContainer/barePillContainer.html +1 -2
  150. package/src/lightning/pillContainer/listbox.slds.css +267 -0
  151. package/src/lightning/pillContainer/pill-container.slds.css +22 -0
  152. package/src/lightning/pillContainer/pill.slds.css +168 -0
  153. package/src/lightning/pillContainer/pillContainer.js +7 -3
  154. package/src/lightning/pillContainer/standardPillContainer.css +4 -0
  155. package/src/lightning/pillContainer/standardPillContainer.html +2 -2
  156. package/src/lightning/popup/popover.slds.css +119 -119
  157. package/src/lightning/popup/popup.css +1 -2
  158. package/src/lightning/popup/popup.js +3 -2
  159. package/src/lightning/positionLibrary/elementProxy.js +7 -2
  160. package/src/lightning/positionLibrary/util.js +8 -0
  161. package/src/lightning/primitiveBubble/primitiveBubble.css +2 -2
  162. package/src/lightning/primitiveBubble/primitiveBubble.js +4 -2
  163. package/src/lightning/primitiveButton/primitiveButton.js +5 -4
  164. package/src/lightning/primitiveCellFactory/cellWithStandardLayout.html +29 -21
  165. package/src/lightning/primitiveCellFactory/primitiveCellFactory.js +4 -0
  166. package/src/lightning/primitiveColorpickerButton/color-picker-button.slds.css +31 -19
  167. package/src/lightning/primitiveColorpickerButton/primitiveColorpickerButton.css +2 -2
  168. package/src/lightning/primitiveColorpickerButton/primitiveColorpickerButton.js +5 -3
  169. package/src/lightning/primitiveIcon/icon.slds.css +209 -0
  170. package/src/lightning/primitiveIcon/primitiveIcon.css +2 -1
  171. package/src/lightning/primitiveIcon/primitiveIcon.html +1 -1
  172. package/src/lightning/primitiveIcon/primitiveIcon.js +18 -11
  173. package/src/lightning/progressStep/progressStep.js +10 -13
  174. package/src/lightning/radioGroup/radioGroup.css +2 -1
  175. package/src/lightning/radioGroup/radioGroup.js +4 -2
  176. package/src/lightning/select/form-element.slds.css +83 -34
  177. package/src/lightning/select/select.css +2 -2
  178. package/src/lightning/select/select.js +4 -2
  179. package/src/lightning/select/select.slds.css +86 -34
  180. package/src/lightning/sldsCommon/sldsCommon.css +135 -75
  181. package/src/lightning/spinner/spinner.css +2 -2
  182. package/src/lightning/spinner/spinner.js +4 -2
  183. package/src/lightning/tabBar/tab-bar.slds.css +334 -0
  184. package/src/lightning/tabBar/tabBar.css +2 -0
  185. package/src/lightning/tabBar/tabBar.html +4 -3
  186. package/src/lightning/tabBar/tabBar.js +30 -3
  187. package/src/lightning/tabset/tabset.html +5 -4
  188. package/src/lightning/tabset/tabset.js +29 -11
  189. package/src/lightning/timepicker/form-element.slds.css +281 -0
  190. package/src/lightning/timepicker/timepicker.css +3 -0
  191. package/src/lightning/timepicker/timepicker.html +5 -1
  192. package/src/lightning/timepicker/timepicker.js +18 -15
  193. package/src/lightning/timepicker/timepicker.slds.css +18 -0
  194. package/src/lightning/tooltipLibrary/tooltipLibrary.js +21 -19
  195. package/src/lightning/utilsPrivate/browser.js +5 -3
  196. package/src/lightning/utilsPrivate/os.js +6 -4
  197. package/src/lightning/utilsPrivate/ssr.js +4 -0
  198. package/src/lightning/utilsPrivate/utilsPrivate.js +2 -0
  199. package/src/lightning/verticalNavigation/verticalNavigation.css +2 -1
  200. package/src/lightning/verticalNavigation/verticalNavigation.js +3 -2
  201. package/src/lightning/verticalNavigationSection/verticalNavigationSection.css +2 -1
  202. package/src/lightning/verticalNavigationSection/verticalNavigationSection.js +3 -2
  203. package/src/lightning/accordion/__perf__DISABLED/accordion-perf-utils.js +0 -76
  204. package/src/lightning/accordion/__perf__DISABLED/accordion10Multiple25SectionEach.perf.js +0 -57
  205. package/src/lightning/accordion/__perf__DISABLED/accordion10Simple25SectionEach.perf.js +0 -37
  206. package/src/lightning/accordion/__perf__DISABLED/accordionMultiple50Section.perf.js +0 -45
  207. package/src/lightning/accordion/__perf__DISABLED/accordionSimple50Section.perf.js +0 -35
  208. package/src/lightning/accordion/__perf__DISABLED/container/container.html +0 -15
  209. package/src/lightning/accordion/__perf__DISABLED/container/container.js +0 -7
  210. package/src/lightning/positionLibrary/__component__/positionLibraryBounding.spec.js +0 -319
  211. package/src/lightning/positionLibrary/__component__/x/bounding/bounding.css +0 -16
  212. package/src/lightning/positionLibrary/__component__/x/bounding/bounding.html +0 -36
  213. package/src/lightning/positionLibrary/__component__/x/bounding/bounding.js +0 -122
  214. /package/src/lightning/{baseCombobox → baseComboboxItem}/listbox.slds.css +0 -0
@@ -1,2 +1,2 @@
1
- /* @import 'lightning/sldsCommon';
2
- @import './card.slds.css'; */
1
+ @import 'lightning/sldsCommon';
2
+ @import './card.slds.css';
@@ -1,4 +1,5 @@
1
- import { LightningElement, api } from 'lwc';
1
+ import { api } from 'lwc';
2
+ import LightningShadowBaseClass from 'lightning/shadowBaseClassPrivate';
2
3
  import { classSet } from 'lightning/utils';
3
4
  import { isNarrow, isBase } from './utils';
4
5
  import { isHeadingLevelValid } from 'lightning/utilsPrivate';
@@ -14,7 +15,7 @@ import { isHeadingLevelValid } from 'lightning/utilsPrivate';
14
15
  * For example, the footer can display a "View All" link to navigate to a list view.
15
16
  * @slot default Placeholder for your content in the card body.
16
17
  */
17
- export default class LightningCard extends LightningElement {
18
+ export default class LightningCard extends LightningShadowBaseClass {
18
19
  /**
19
20
  * The title can include text, and is displayed in the header.
20
21
  * To include additional markup or another component, use the title slot.
@@ -49,76 +49,82 @@
49
49
  border-top-color: var(--sds-c-card-footer-color-border, transparent);
50
50
  }
51
51
 
52
- /**
53
- * @Note: Static fallbacks are in place until SLDS adopts SDS. Without static
54
- * fallbacks, styles will regress due to invalid CSS variables from
55
- * missing SLDS shared and globals—where applicable, sometimes we do
56
- * want the initial value, e.g. inherit.
57
- */
58
-
59
52
  @supports (--styling-hooks: '') {
60
- :host([data-render-mode="shadow"]) {
61
- --sds-c-card-text-color: var(--slds-c-card-text-color);
62
- --sds-c-card-color-background: var(--slds-c-card-color-background, var(--sds-g-color-neutral-base-1));
63
- --sds-c-card-color-border: var(--slds-c-card-color-border, var(--sds-g-color-neutral-base-4));
64
- --sds-c-card-radius-border: var(--slds-c-card-radius-border, var(--sds-g-radius-border-2, 0.25rem));
65
- --sds-c-card-shadow: var(--slds-c-card-shadow, var(--sds-g-shadow-1, 0 0 2px 0 #18181814, 0 2px 4px 1px #18181828));
66
- --sds-c-card-spacing-block: var(--slds-c-card-spacing-block);
67
- --sds-c-card-spacing-block-start: var(--slds-c-card-spacing-block-start);
68
- --sds-c-card-spacing-block-end: var(--slds-c-card-spacing-block-end);
69
- --sds-c-card-spacing-inline: var(--slds-c-card-spacing-inline);
70
- --sds-c-card-spacing-inline-start: var(--slds-c-card-spacing-inline-start);
71
- --sds-c-card-spacing-inline-end: var(--slds-c-card-spacing-inline-end);
72
- }
73
53
 
74
- :host([data-render-mode="shadow"][variant~='borderless']) {
75
- --slds-c-card-color-border: transparent;
76
- --slds-c-card-shadow: none;
77
- --slds-c-card-header-spacing-block-start: 0;
78
- --slds-c-card-header-spacing-inline: 0;
79
- --slds-c-card-body-spacing-inline: 0;
80
- --slds-c-card-footer-spacing-block-end: 0;
81
- }
54
+ :host([data-render-mode="shadow"]) [part~="card"] {
55
+ position: relative;
56
+ --sds-c-card-spacing-block-start:
57
+ var(--slds-c-card-spacing-block-start,
58
+ var(--slds-c-card-spacing-block, 0));
59
+ --sds-c-card-spacing-block-end:
60
+ var(--slds-c-card-spacing-block-end,
61
+ var(--slds-c-card-spacing-block, 0));
62
+ --sds-c-card-spacing-inline-start:
63
+ var(--slds-c-card-spacing-inline-start,
64
+ var(--slds-c-card-spacing-inline, 0));
65
+ --sds-c-card-spacing-inline-end:
66
+ var(--slds-c-card-spacing-inline-end,
67
+ var(--slds-c-card-spacing-inline, 0));
68
+ --sds-c-card-color-background:
69
+ var(--slds-c-card-color-background,
70
+ var(--slds-g-color-neutral-base-100));
71
+ --sds-c-card-sizing-border:
72
+ var(--slds-c-card-sizing-border,
73
+ var(--sds-g-sizing-border-1, 1px));
74
+ --sds-c-card-color-border:
75
+ var(--slds-c-card-color-border,
76
+ var(--slds-g-color-border-base-1,
77
+ var(--sds-g-color-neutral-base-80, #c9c9c9)));
78
+ --sds-c-card-radius-border:
79
+ var(--slds-c-card-radius-border,
80
+ var(--sds-g-radius-border-2, 0.25rem));
81
+ --sds-c-card-shadow:
82
+ var(--slds-c-card-shadow,
83
+ 0 2px 2px 0 var(--sds-g-color-neutral-base-90, #e5e5e5)); /* Note: remove sds color when slds color is implemented to subsystem */
84
+ --sds-c-card-text-color:
85
+ var(--slds-c-card-text-color);
86
+
87
+ border-style: solid;
88
+ background-clip: padding-box;
89
+ }
82
90
 
83
91
  :host([data-render-mode="shadow"]) [part~='header'] {
84
- /**
85
- * Provide layout control through the part API. See icon, title, and actions
86
- * parts below for more layout controls.
87
- */
88
92
  display: grid;
89
93
  grid-template-columns: auto minmax(0, 1fr) auto;
90
94
  grid-template-areas: 'icon title actions';
91
95
  align-items: center;
92
- --sds-c-card-header-spacing-block: var(--slds-c-card-header-spacing-block);
93
- --sds-c-card-header-spacing-block-start: var(
94
- --slds-c-card-header-spacing-block-start,
95
- var(--sds-g-spacing-3, 0.75rem)
96
- );
97
- --sds-c-card-header-spacing-block-end: var(--slds-c-card-header-spacing-block-end);
98
- --sds-c-card-header-spacing-inline: var(--slds-c-card-header-spacing-inline, var(--sds-g-spacing-3, 0.75rem));
99
- --sds-c-card-header-spacing-inline-start: var(--slds-c-card-header-spacing-inline-start);
100
- --sds-c-card-header-spacing-inline-end: var(--slds-c-card-header-spacing-inline-end);
96
+
97
+ /* Padding */
98
+ --sds-c-card-header-spacing-block-start:
99
+ var(--slds-c-card-header-spacing-block-start,
100
+ var(--slds-c-card-header-spacing-block,
101
+ var(--sds-g-spacing-3, 0.75rem)));
102
+ --sds-c-card-header-spacing-block-end:
103
+ var(--slds-c-card-header-spacing-block-end,
104
+ var(--slds-c-card-header-spacing-block, 0));
105
+ --sds-c-card-header-spacing-inline-start:
106
+ var(--slds-c-card-header-spacing-inline-start,
107
+ var(--slds-c-card-header-spacing-inline,
108
+ var(--sds-g-spacing-4, 1rem)));
109
+ --sds-c-card-header-spacing-inline-end:
110
+ var(--slds-c-card-header-spacing-inline-end,
111
+ var(--slds-c-card-header-spacing-inline,
112
+ var(--sds-g-spacing-4, 1rem)));
113
+
114
+ /* Margin */
115
+ margin-block-end: var(--slds-c-card-header-spacing-block-end,
116
+ var(--sds-g-spacing-3, 0.75rem));
101
117
 
102
118
  /**
103
119
  * These become reassignments once base headings get hooks.
104
120
  * See [part~='header'] h2 rule block for more info.
105
121
  */
106
122
  color: var(--slds-c-card-header-text-color);
107
- font-weight: var(--slds-g-font-weight-bold, var(--sds-g-font-weight-bold, bold));
108
- font-size: var(--slds-c-card-header-font-size);
109
-
110
- /*
111
- * Icon reassignments
112
- *
113
- * Scope the icon hook assignment to the 'header' part so icons passed
114
- * into other slots don't inadvertently pick up on these values.
115
- */
116
- --sds-c-icon-sizing: 1.5rem; /* @JB: may not need this after slds-icon is done */
117
- --sds-c-icon-spacing-inline-end: var(
118
- --slds-c-card-header-icon-spacing-inline-end,
119
- var(--sds-g-spacing-3, 0.75rem)
120
- );
121
- }
123
+ font-size: var(--slds-c-card-heading-font-size);
124
+ font-weight: var(--slds-g-font-weight-bold,
125
+ var(--sds-g-font-weight-bold, bold));
126
+ line-height: var(--sds-g-font-lineheight-2, 1.25);
127
+ }
122
128
 
123
129
  /*
124
130
  * Header's grid layout areas
@@ -126,66 +132,113 @@
126
132
  * The header sections utilize grid areas and 'part' apis to allow the header's
127
133
  * layout be modular (grid-area) and explicitly customized (part).
128
134
  */
129
- :host([data-render-mode="shadow"]) [part~='icon'] {
135
+ :host([data-render-mode="shadow"]) [part~="icon"] {
130
136
  grid-area: icon;
131
137
  line-height: 0;
132
138
  }
133
- :host([data-render-mode="shadow"]) [part~='title'] {
134
- grid-area: title;
135
- }
136
- :host([data-render-mode="shadow"]) [part~='actions'] {
139
+
140
+ :host([data-render-mode="shadow"]) [part~="title"] {
141
+ grid-area: title;
142
+ }
143
+
144
+ :host([data-render-mode="shadow"]) [part~="actions"] {
137
145
  grid-area: actions;
138
146
  }
139
147
 
140
- /**
148
+ /**
141
149
  * This would be a reassignment in :host if styling hooks existed for headings.
142
150
  * Until that exists, we have to do a hard reset here. This can be removed once
143
151
  * headings get hooks.
144
152
  *
145
153
  * :host { --sds-g-heading-font-size: var(--slds-c-card-heading-font-size); }
146
154
  */
147
- :host([data-render-mode="shadow"]) [part~='title'] h2 {
155
+
156
+ :host([data-render-mode="shadow"]) [part~="title"] h2 {
148
157
  font-weight: inherit;
149
158
  font-size: inherit;
150
159
  }
151
160
 
152
- /**
161
+ /**
153
162
  * Recreating truncation explicitly here so the behavior is consistent with
154
163
  * current SLDS.
155
164
  *
156
165
  * @TODO: Evaluate if this should be a utility or something similar.
157
166
  */
158
- :host([data-render-mode="shadow"]) [part~='title'] span {
167
+ :host([data-render-mode="shadow"]) [part~="title"] span {
159
168
  display: block;
160
169
  overflow: hidden;
161
170
  text-overflow: ellipsis;
162
171
  }
163
172
 
164
- /**
165
- * The body's default padding is none. LBC uses utilities to add padding through the slot content.
166
- */
167
- :host([data-render-mode="shadow"]) [part~='body'] {
168
- --sds-c-card-body-spacing-inline: var(--slds-c-card-body-spacing-inline);
169
- --sds-c-card-body-spacing-inline-start: var(--slds-c-card-body-spacing-inline-start);
170
- --sds-c-card-body-spacing-inline-end: var(--slds-c-card-body-spacing-inline-end);
171
- --sds-c-card-body-spacing-block: var(--slds-c-card-body-spacing-block);
172
- --sds-c-card-body-spacing-block-start: var(
173
- --slds-c-card-body-spacing-block-start,
174
- var(--sds-g-spacing-3, 0.75rem)
175
- );
176
- --sds-c-card-body-spacing-block-end: var(--slds-c-card-body-spacing-block-end, var(--sds-g-spacing-3, 0.75rem));
173
+ :host([data-render-mode="shadow"]) [part~="body"] {
174
+ --sds-c-card-body-spacing-block-start:
175
+ var(--slds-c-card-body-spacing-block-start,
176
+ var(--slds-c-card-body-spacing-block));
177
+ --sds-c-card-body-spacing-block-end:
178
+ var(--slds-c-card-body-spacing-block-end,
179
+ var(--slds-c-card-body-spacing-block));
180
+ --sds-c-card-body-spacing-inline-start:
181
+ var(--slds-c-card-body-spacing-inline-start,
182
+ var(--slds-c-card-body-spacing-inline));
183
+ --sds-c-card-body-spacing-inline-end:
184
+ var(--slds-c-card-body-spacing-inline-end,
185
+ var(--slds-c-card-body-spacing-inline));
186
+ --slds-c-card-color-border: transparent;
187
+ --slds-c-card-shadow: none;
177
188
  }
178
189
 
179
190
  :host([data-render-mode="shadow"]) [part~='footer'] {
180
- --sds-c-card-footer-spacing-inline: var(--slds-c-card-footer-spacing-inline, var(--sds-g-spacing-3, 0.75rem));
181
- --sds-c-card-footer-spacing-inline-start: var(--slds-c-card-footer-spacing-inline-start);
182
- --sds-c-card-footer-spacing-inline-end: var(--slds-c-card-footer-spacing-inline-end);
183
- --sds-c-card-footer-spacing-block: var(--slds-c-card-footer-spacing-block, var(--sds-g-spacing-3, 0.75rem));
184
- --sds-c-card-footer-spacing-block-start: var(--slds-c-card-footer-spacing-block-start);
185
- --sds-c-card-footer-spacing-block-end: var(--slds-c-card-footer-spacing-block-end);
186
- --sds-c-card-footer-color-border: var(
187
- --slds-c-card-footer-color-border,
188
- var(--sds-g-color-neutral-base-4)
189
- );
191
+ --sds-c-card-footer-spacing-block-start:
192
+ var(--slds-c-card-footer-spacing-block-start,
193
+ var(--slds-c-card-footer-spacing-block,
194
+ var(--sds-g-spacing-3, 0.75rem)));
195
+ --sds-c-card-footer-spacing-block-end:
196
+ var(--slds-c-card-footer-spacing-block-end,
197
+ var(--slds-c-card-footer-spacing-block,
198
+ var(--sds-g-spacing-3, 0.75rem)));
199
+ --sds-c-card-footer-spacing-inline-start:
200
+ var(--slds-c-card-footer-spacing-inline-start,
201
+ var(--slds-c-card-footer-spacing-inline,
202
+ var(--sds-g-spacing-4, 1rem)));
203
+ --sds-c-card-footer-spacing-inline-end:
204
+ var(--slds-c-card-footer-spacing-inline-end,
205
+ var(--slds-c-card-footer-spacing-inline,
206
+ var(--sds-g-spacing-4, 1rem)));
207
+ --sds-c-card-footer-sizing-border:
208
+ var(--slds-c-card-footer-sizing-border,
209
+ var(--sds-g-sizing-border-1, 1px));
210
+ --sds-c-card-footer-color-border:
211
+ var(--slds-c-card-footer-color-border,
212
+ var(--slds-g-color-border-base-1,
213
+ var(--sds-g-color-neutral-base-80, #c9c9c9)));
214
+
215
+ border-top-style: solid;
216
+ text-align: var(--slds-c-card-footer-font-align, center);
217
+ font-size: var(--slds-c-card-footer-font-size,
218
+ var(--sds-g-font-scale-neg-2, 0.8125rem));
219
+ }
220
+
221
+ :host([data-render-mode="shadow"]) .slds-card__body:empty,:host([data-render-mode="shadow"])
222
+ .slds-card__footer:empty {
223
+ display: none;
224
+ }
225
+
226
+ /* Note: Refactor the below. Utility classes that should be removed once utility implementation is completed. */
227
+ :host([data-render-mode="shadow"]) .slds-media__figure {
228
+ flex-shrink: 0;
229
+ margin-inline-end: var(--slds-c-card-icon-spacing-inline-end,
230
+ var(--sds-g-spacing-3, 0.75rem));
231
+ }
232
+
233
+ :host([data-render-mode="shadow"]) .slds-text-heading_small {
234
+ font-size: var(--sds-g-font-size-base, 1rem);
235
+ line-height: var(--sds-g-font-lineheight-2, 1.25);
236
+ }
237
+
238
+ :host([data-render-mode="shadow"]) .slds-truncate {
239
+ max-width: 100%;
240
+ overflow: hidden;
241
+ text-overflow: ellipsis;
242
+ white-space: nowrap;
190
243
  }
191
244
  }
@@ -1,2 +1,2 @@
1
- /* @import 'lightning/sldsCommon';
2
- @import './color-picker-custom.slds.css'; */
1
+ @import 'lightning/sldsCommon';
2
+ @import './color-picker-custom.slds.css';
@@ -9,7 +9,8 @@ import labelHueInput from '@salesforce/label/LightningColorPicker.hueInput';
9
9
  import labelRInput from '@salesforce/label/LightningColorPicker.rInput';
10
10
  import labelRedAbbr from '@salesforce/label/LightningColorPicker.redAbbr';
11
11
  import formFactorPropertyName from '@salesforce/client/formFactor';
12
- import { LightningElement, api, track } from 'lwc';
12
+ import { api, track } from 'lwc';
13
+ import LightningShadowBaseClass from 'lightning/shadowBaseClassPrivate';
13
14
  import { keyCodes } from 'lightning/utilsPrivate';
14
15
  import { generateUniqueId, getErrorMessage } from 'lightning/inputUtils';
15
16
  import {
@@ -36,7 +37,7 @@ const i18n = {
36
37
 
37
38
  const CANVAS = { x: 198, y: 80 };
38
39
 
39
- export default class LightningColorPickerCustom extends LightningElement {
40
+ export default class LightningColorPickerCustom extends LightningShadowBaseClass {
40
41
  @track _hueValue = null;
41
42
  @track
42
43
  _rgb = {
@@ -787,52 +787,25 @@ Licensed under BSD 3-Clause - see LICENSE.txt or git.io/sfdc-license */
787
787
  }
788
788
 
789
789
  @supports (--styling-hooks: '') {
790
- :host([data-render-mode="shadow"]) .slds-popover {
791
- position: relative;
792
- border-radius: var(--sds-g-radius-border-2, 0.25rem);
793
- width: 14rem;
794
- min-height: 2rem;
795
- z-index: 6000;
796
- background-color: var(--sds-g-color-neutral-base-100, #ffffff);
797
- display: inline-block;
798
- box-shadow: 0 2px 3px 0 rgba(0, 0, 0, 0.16);
799
- border: var(--sds-g-sizing-border-1, 1px) solid var(--sds-g-color-neutral-base-90, #e5e5e5);
800
- }
801
-
802
- :host([data-render-mode="shadow"]) .slds-popover *:last-child {
803
- margin-bottom: 0;
790
+ /* ToDo: swap out for Utility classes */
791
+ :host([data-render-mode="shadow"]) .slds-m-left_x-small {
792
+ margin-inline-start: var(--sds-g-spacing-2, 0.5rem);
804
793
  }
805
794
 
806
- :host([data-render-mode="shadow"]) .slds-popover__body {
807
- padding-block-start: var(--sds-g-spacing-2, 0.5rem);
808
- padding-block-end: var(--sds-g-spacing-2, 0.5rem);
809
- padding-inline-start: var(--sds-g-spacing-3, 0.75rem);
810
- padding-inline-end: var(--sds-g-spacing-3, 0.75rem);
795
+ :host([data-render-mode="shadow"]) .slds-color-picker__selector {
796
+ margin-block-start: var(--sds-g-spacing-2, 0.5rem);
811
797
  }
812
798
 
813
- :host([data-render-mode="shadow"]) .slds-popover__body,:host([data-render-mode="shadow"])
814
- .slds-popover__footer {
815
- position: relative;
816
- padding-block-start: var(--sds-g-spacing-2, 0.5rem);
817
- padding-block-end: var(--sds-g-spacing-2, 0.5rem);
818
- padding-inline-start: var(--sds-g-spacing-3, 0.75rem);
819
- padding-inline-end: var(--sds-g-spacing-3, 0.75rem);
820
- word-wrap: break-word;
799
+ :host([data-render-mode="shadow"]) .slds-color-picker__selector.slds-popover {
800
+ width: 14rem;
821
801
  }
822
802
 
823
- :host([data-render-mode="shadow"]) .slds-popover__footer {
824
- border-top: var(--sds-g-sizing-border-1, 1px) solid var(--sds-g-color-neutral-base-90, #e5e5e5);
825
- background-color: var(--sds-g-color-neutral-base-95, #f3f3f3);
826
- padding-block-start: var(--sds-g-spacing-2, 0.5rem);
827
- padding-block-end: var(--sds-g-spacing-2, 0.5rem);
828
- padding-inline-start: var(--sds-g-spacing-3, 0.75rem);
829
- padding-inline-end: var(--sds-g-spacing-3, 0.75rem);
803
+ :host([data-render-mode="shadow"]) .slds-color-picker__selector-footer {
804
+ display: flex;
830
805
  }
831
806
 
832
- :host([data-render-mode="shadow"]) .slds-color-picker__selector-footer {
833
- display: grid;
834
- grid-template-columns: repeat(2, 1fr);
835
- gap: var(--sds-g-spacing-1, 0.25rem);
807
+ :host([data-render-mode="shadow"]) .slds-color-picker__selector-footer lightning-button {
808
+ width: 100%;
836
809
  }
837
810
 
838
811
  :host([data-render-mode="shadow"]) .slds-is-absolute {
@@ -1,5 +1,6 @@
1
- /* @import 'lightning/sldsCommon';
2
- @import './color-picker-panel.slds.css'; */
1
+ @import 'lightning/sldsCommon';
2
+ @import './color-picker-panel.slds.css';
3
+ @import './popover.slds.css';
3
4
 
4
5
  /* Fix for footer button centering issue, for details see: W-11543875
5
6
  *
@@ -2,7 +2,8 @@ import labelCancelButton from '@salesforce/label/LightningColorPicker.cancelButt
2
2
  import labelCustomTab from '@salesforce/label/LightningColorPickerPanel.customTab';
3
3
  import labelDefaultTab from '@salesforce/label/LightningColorPickerPanel.defaultTab';
4
4
  import labelDoneButton from '@salesforce/label/LightningColorPicker.doneButton';
5
- import { LightningElement, api, track } from 'lwc';
5
+ import { api, track } from 'lwc';
6
+ import LightningShadowBaseClass from 'lightning/shadowBaseClassPrivate';
6
7
  import { classSet } from 'lightning/utils';
7
8
  import { keyCodes } from 'lightning/utilsPrivate';
8
9
 
@@ -14,13 +15,14 @@ const i18n = {
14
15
  };
15
16
 
16
17
  const DEFAULT_COLOR = '#000000';
17
- export default class LightningColorPickerPanel extends LightningElement {
18
+ export default class LightningColorPickerPanel extends LightningShadowBaseClass {
18
19
  @api currentColor;
19
20
 
20
21
  @track _isCustomTabActive = false;
21
22
  @track _selectedColor = null;
22
23
 
23
24
  connectedCallback() {
25
+ super.connectedCallback();
24
26
  this._selectedColor = this.currentColor || DEFAULT_COLOR;
25
27
  }
26
28
 
@@ -0,0 +1,121 @@
1
+
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
+ }
@@ -1,3 +1,7 @@
1
+ @import 'lightning/sldsCommon';
2
+ @import './form-element.slds.css';
3
+ @import './combobox.slds.css';
4
+
1
5
  :host {
2
6
  display: block;
3
7
  }
@@ -1,33 +1,35 @@
1
1
  <template>
2
- <label class={computedLabelClass}>
3
- <template if:true={required}>
4
- <abbr class="slds-required" title={i18n.required}>*</abbr>
5
- </template>
6
- {label}
7
- </label>
8
- <lightning-helptext if:true={_fieldLevelHelp} content={_fieldLevelHelp} alternative-text={helptextAlternativeText}></lightning-helptext>
2
+ <div part="combobox">
3
+ <label class={computedLabelClass}>
4
+ <template if:true={required}>
5
+ <abbr class="slds-required" title={i18n.required}>*</abbr>
6
+ </template>
7
+ {label}
8
+ </label>
9
+ <lightning-helptext if:true={_fieldLevelHelp} content={_fieldLevelHelp} alternative-text={helptextAlternativeText}></lightning-helptext>
9
10
 
10
- <div class="slds-form-element__control">
11
- <lightning-base-combobox name={name}
12
- autocomplete={autocomplete}
13
- required={required}
14
- disabled={disabled}
15
- placeholder={placeholder}
16
- items={_items}
17
- input-text={_selectedLabel}
18
- input-label={label}
19
- input-icon-size="xx-small"
20
- input-icon-name="utility:down"
21
- show-dropdown-activity-indicator={spinnerActive}
22
- dropdown-alignment={dropdownAlignment}
23
- ondropdownopen={handleDropdownOpen}
24
- onfocus={handleFocus}
25
- onblur={handleBlur}
26
- onready={handleComboboxReady}
27
- onselect={handleSelect}></lightning-base-combobox>
11
+ <div class="slds-form-element__control">
12
+ <lightning-base-combobox name={name}
13
+ autocomplete={autocomplete}
14
+ root-aria-node={templateRootNode}
15
+ required={required}
16
+ disabled={disabled}
17
+ placeholder={placeholder}
18
+ items={_items}
19
+ input-text={_selectedLabel}
20
+ input-label={label}
21
+ input-icon-size="xx-small"
22
+ input-icon-name="utility:down"
23
+ show-dropdown-activity-indicator={spinnerActive}
24
+ dropdown-alignment={dropdownAlignment}
25
+ ondropdownopen={handleDropdownOpen}
26
+ onfocus={handleFocus}
27
+ onblur={handleBlur}
28
+ onready={handleComboboxReady}
29
+ onselect={handleSelect}></lightning-base-combobox>
30
+ </div>
31
+ <template if:true={_helpMessage}>
32
+ <div id="help-text" data-help-text class="slds-form-element__help" aria-live="assertive">{_helpMessage}</div>
33
+ </template>
28
34
  </div>
29
- <template if:true={_helpMessage}>
30
- <div id="help-text" data-help-text class="slds-form-element__help" aria-live="assertive">{_helpMessage}</div>
31
- </template>
32
-
33
35
  </template>