lightning-base-components 1.16.3-alpha → 1.16.5-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 (111) hide show
  1. package/README.md +7 -0
  2. package/metadata/raptor.json +110 -0
  3. package/package.json +59 -2
  4. package/scopedImports/@salesforce-label-LightningForm.cancel.js +1 -0
  5. package/scopedImports/@salesforce-label-LightningForm.closeError.js +1 -0
  6. package/scopedImports/@salesforce-label-LightningForm.edit.js +1 -0
  7. package/scopedImports/@salesforce-label-LightningForm.editErrorHelp.js +1 -0
  8. package/scopedImports/@salesforce-label-LightningForm.error.js +1 -0
  9. package/scopedImports/@salesforce-label-LightningForm.errorPopoverHeading.js +1 -0
  10. package/scopedImports/@salesforce-label-LightningForm.preview.js +1 -0
  11. package/scopedImports/@salesforce-label-LightningForm.previewHeader.js +1 -0
  12. package/scopedImports/@salesforce-label-LightningForm.reload.js +1 -0
  13. package/scopedImports/@salesforce-label-LightningForm.save.js +1 -0
  14. package/scopedImports/@salesforce-label-LightningForm.saveFieldErrorSummary.js +1 -0
  15. package/scopedImports/@salesforce-label-LightningForm.undo.js +1 -0
  16. package/scopedImports/@salesforce-label-LightningLookup.messageWhenMissingInformation.js +1 -0
  17. package/src/lightning/button/__docs__/button.md +13 -0
  18. package/src/lightning/button/button.slds.css +155 -11
  19. package/src/lightning/buttonGroup/button-group.slds.css +35 -59
  20. package/src/lightning/buttonIcon/button-icon.slds.css +287 -122
  21. package/src/lightning/buttonIconStateful/button-icon-stateful.slds.css +224 -39
  22. package/src/lightning/buttonStateful/button-stateful.slds.css +3269 -0
  23. package/src/lightning/card/card.slds.css +50 -0
  24. package/src/lightning/colorPickerCustom/color-picker-custom.slds.css +180 -364
  25. package/src/lightning/colorPickerPanel/color-picker-panel.slds.css +46 -413
  26. package/src/lightning/datatable/datatable.js +2 -2
  27. package/src/lightning/datatable/rowSelection.js +21 -4
  28. package/src/lightning/datetimepicker/datetimepicker.html +1 -3
  29. package/src/lightning/datetimepicker/datetimepicker.js +5 -0
  30. package/src/lightning/fileDownload/__docs__/fileDownload.md +41 -0
  31. package/src/lightning/helptext/help-text.slds.css +184 -39
  32. package/src/lightning/icon/icon.slds.css +823 -3
  33. package/src/lightning/input/input-checkbox.slds.css +291 -32
  34. package/src/lightning/input/input-text.slds.css +70 -7
  35. package/src/lightning/inputAddress/__docs__/inputAddress.md +1 -1
  36. package/src/lightning/inputAddress/inputAddress.js +2 -1
  37. package/src/lightning/internationalizationLibrary/datetime/intlFormat.js +20 -2
  38. package/src/lightning/iso8601Utils/iso8601Utils.js +2 -3
  39. package/src/lightning/mediaUtils/__docs__/mediaUtils.md +87 -0
  40. package/src/lightning/mediaUtils/mediaUtils.js +321 -0
  41. package/src/lightning/mediaUtils/mediaUtils.js-meta.xml +6 -0
  42. package/src/lightning/modal/__docs__/migration.md +158 -0
  43. package/src/lightning/modal/__docs__/modal.md +414 -0
  44. package/src/lightning/modal/__examples__disabled/all/all.css +7 -0
  45. package/src/lightning/modal/__examples__disabled/all/all.html +9 -0
  46. package/src/lightning/modal/__examples__disabled/all/all.js +25 -0
  47. package/src/lightning/modal/__examples__disabled/allform/allform.css +7 -0
  48. package/src/lightning/modal/__examples__disabled/allform/allform.html +9 -0
  49. package/src/lightning/modal/__examples__disabled/allform/allform.js +49 -0
  50. package/src/lightning/modal/__examples__disabled/allmulti/allmulti.html +24 -0
  51. package/src/lightning/modal/__examples__disabled/allmulti/allmulti.js +12 -0
  52. package/src/lightning/modal/__examples__disabled/basic/basic.css +7 -0
  53. package/src/lightning/modal/__examples__disabled/basic/basic.html +9 -0
  54. package/src/lightning/modal/__examples__disabled/basic/basic.js +27 -0
  55. package/src/lightning/modal/__examples__disabled/demo/demo.html +15 -0
  56. package/src/lightning/modal/__examples__disabled/demo/demo.js +13 -0
  57. package/src/lightning/modal/__examples__disabled/demoall/demoall.html +26 -0
  58. package/src/lightning/modal/__examples__disabled/demoall/demoall.js +13 -0
  59. package/src/lightning/modal/__examples__disabled/demoallform/demoallform.css +3 -0
  60. package/src/lightning/modal/__examples__disabled/demoallform/demoallform.html +146 -0
  61. package/src/lightning/modal/__examples__disabled/demoallform/demoallform.js +240 -0
  62. package/src/lightning/modal/__examples__disabled/demofootless/demofootless.html +17 -0
  63. package/src/lightning/modal/__examples__disabled/demofootless/demofootless.js +11 -0
  64. package/src/lightning/modal/__examples__disabled/demoheadless/demoheadless.html +20 -0
  65. package/src/lightning/modal/__examples__disabled/demoheadless/demoheadless.js +12 -0
  66. package/src/lightning/modal/__examples__disabled/footless/footless.css +7 -0
  67. package/src/lightning/modal/__examples__disabled/footless/footless.html +9 -0
  68. package/src/lightning/modal/__examples__disabled/footless/footless.js +19 -0
  69. package/src/lightning/modal/__examples__disabled/headless/headless.css +7 -0
  70. package/src/lightning/modal/__examples__disabled/headless/headless.html +9 -0
  71. package/src/lightning/modal/__examples__disabled/headless/headless.js +27 -0
  72. package/src/lightning/modal/modal.html +3 -0
  73. package/src/lightning/modal/modal.js +93 -0
  74. package/src/lightning/modal/modal.js-meta.xml +6 -0
  75. package/src/lightning/modalBody/__docs__/modalBody.md +61 -0
  76. package/src/lightning/modalBody/modalBody.html +13 -0
  77. package/src/lightning/modalBody/modalBody.js +203 -0
  78. package/src/lightning/modalBody/modalBody.js-meta.xml +6 -0
  79. package/src/lightning/modalFooter/__docs__/modalFooter.md +72 -0
  80. package/src/lightning/modalFooter/modalFooter.html +8 -0
  81. package/src/lightning/modalFooter/modalFooter.js +161 -0
  82. package/src/lightning/modalFooter/modalFooter.js-meta.xml +6 -0
  83. package/src/lightning/modalHeader/__docs__/modalHeader.md +64 -0
  84. package/src/lightning/modalHeader/modalHeader.html +16 -0
  85. package/src/lightning/modalHeader/modalHeader.js +204 -0
  86. package/src/lightning/modalHeader/modalHeader.js-meta.xml +6 -0
  87. package/src/lightning/primitiveBubble/tooltip.slds.css +45 -1
  88. package/src/lightning/primitiveCellFactory/primitiveCellFactory.js +4 -12
  89. package/src/lightning/primitiveColorpickerButton/color-picker-button.slds.css +2994 -319
  90. package/src/lightning/primitiveDatatableIeditPanel/primitiveDatatableIeditPanel.html +14 -11
  91. package/src/lightning/primitiveDatatableIeditPanel/primitiveDatatableIeditPanel.js +1 -0
  92. package/src/lightning/primitiveIcon/icon.slds.css +823 -3
  93. package/src/lightning/progressStep/base.html +1 -0
  94. package/src/lightning/progressStep/path.html +1 -1
  95. package/src/lightning/radioGroup/input-radio-group.slds.css +168 -379
  96. package/src/lightning/spinner/spinner.slds.css +8 -2
  97. package/src/lightning/timepicker/timepicker.html +1 -4
  98. package/src/lightning/timepicker/timepicker.js +9 -5
  99. package/src/lightning/treeGrid/treeGrid.js +66 -1
  100. package/src/lightning/utilsPrivate/linkUtils.js +1 -1
  101. package/src/lightning/formattedAddress/__component__/formattedAddress.spec.js +0 -61
  102. package/src/lightning/formattedAddress/__component__/formattedAddressDisabled.spec.js +0 -20
  103. package/src/lightning/formattedAddress/__component__/x/basic/basic.html +0 -10
  104. package/src/lightning/formattedAddress/__component__/x/basic/basic.js +0 -17
  105. package/src/lightning/input/__component__/inputCheckbox.spec.js +0 -60
  106. package/src/lightning/input/__component__/inputDateTimePicker.spec.js +0 -60
  107. package/src/lightning/input/__component__/inputNumber.spec.js +0 -75
  108. package/src/lightning/input/__component__/inputSelection.spec.js +0 -83
  109. package/src/lightning/input/__component__/x/tall/tall.css +0 -5
  110. package/src/lightning/input/__component__/x/tall/tall.html +0 -5
  111. package/src/lightning/input/__component__/x/tall/tall.js +0 -7
package/README.md CHANGED
@@ -76,6 +76,7 @@ The npm package includes these components, along with any utilities and librarie
76
76
 
77
77
  - lightning-accordion
78
78
  - lightning-accordion-section
79
+ - LightningAlert
79
80
  - lightning-avatar
80
81
  - lightning-badge
81
82
  - lightning-breadcrumb
@@ -91,6 +92,7 @@ The npm package includes these components, along with any utilities and librarie
91
92
  - lightning-carousel-image
92
93
  - lightning-checkbox-group
93
94
  - lightning-combobox
95
+ - LightningConfirm
94
96
  - lightning-datatable
95
97
  - lightning-dual-listbox
96
98
  - lightning-dynamic-icon
@@ -116,6 +118,10 @@ The npm package includes these components, along with any utilities and librarie
116
118
  - lightning-menu-divider
117
119
  - lightning-menu-item
118
120
  - lightning-menu-subheader
121
+ - LightningModal
122
+ - lightning-modal-header
123
+ - lightning-modal-body
124
+ - lightning-modal-footer
119
125
  - lightning-navigation
120
126
  - lightning-pill
121
127
  - lightning-pill-container
@@ -123,6 +129,7 @@ The npm package includes these components, along with any utilities and librarie
123
129
  - lightning-progress-indicator
124
130
  - lightning-progress-ring
125
131
  - lightning-progress-step
132
+ - LightningPrompt
126
133
  - lightning-radio-group
127
134
  - lightning-relative-date-time
128
135
  - lightning-slider
@@ -906,11 +906,112 @@
906
906
  }
907
907
  ]
908
908
  },
909
+ "form": {
910
+ "slotNames": [
911
+ "",
912
+ "footer"
913
+ ],
914
+ "properties": [
915
+ {
916
+ "name": "contexts"
917
+ },
918
+ {
919
+ "name": "editing"
920
+ },
921
+ {
922
+ "name": "errors"
923
+ },
924
+ {
925
+ "name": "extraData"
926
+ },
927
+ {
928
+ "name": "metadata"
929
+ },
930
+ {
931
+ "name": "values"
932
+ }
933
+ ],
934
+ "methods": [
935
+ {
936
+ "name": "getFieldsWithErrors"
937
+ },
938
+ {
939
+ "name": "getFormDraft"
940
+ },
941
+ {
942
+ "name": "reset"
943
+ }
944
+ ]
945
+ },
909
946
  "formElement": {
910
947
  "slotNames": [
911
948
  ""
912
949
  ]
913
950
  },
951
+ "formField": {
952
+ "slotNames": [
953
+ "input",
954
+ "output"
955
+ ],
956
+ "properties": [
957
+ {
958
+ "name": "computedLabel"
959
+ },
960
+ {
961
+ "name": "contextName"
962
+ },
963
+ {
964
+ "name": "editing"
965
+ },
966
+ {
967
+ "name": "extraData"
968
+ },
969
+ {
970
+ "name": "fieldName"
971
+ },
972
+ {
973
+ "name": "label"
974
+ },
975
+ {
976
+ "name": "options"
977
+ },
978
+ {
979
+ "name": "readOnly"
980
+ },
981
+ {
982
+ "name": "required"
983
+ },
984
+ {
985
+ "name": "type"
986
+ },
987
+ {
988
+ "name": "variant"
989
+ }
990
+ ],
991
+ "methods": [
992
+ {
993
+ "name": "focus"
994
+ }
995
+ ]
996
+ },
997
+ "formFooter": {
998
+ "slotNames": [
999
+ ""
1000
+ ],
1001
+ "properties": [
1002
+ {
1003
+ "name": "errors"
1004
+ },
1005
+ {
1006
+ "name": "showErrorIcon"
1007
+ }
1008
+ ],
1009
+ "methods": [
1010
+ {
1011
+ "name": "openErrorPopover"
1012
+ }
1013
+ ]
1014
+ },
914
1015
  "formattedAddress": {
915
1016
  "minVersion": "42.0",
916
1017
  "slotNames": [],
@@ -2275,6 +2376,9 @@
2275
2376
  ]
2276
2377
  },
2277
2378
  "marketingAssetcreationApi": {},
2379
+ "mediaUtils": {
2380
+ "minVersion": "0.0"
2381
+ },
2278
2382
  "menuDivider": {
2279
2383
  "minVersion": "0.0",
2280
2384
  "slotNames": [],
@@ -2402,6 +2506,7 @@
2402
2506
  ]
2403
2507
  },
2404
2508
  "modal": {
2509
+ "minVersion": "55.0",
2405
2510
  "slotNames": [],
2406
2511
  "properties": [
2407
2512
  {
@@ -2424,16 +2529,19 @@
2424
2529
  ]
2425
2530
  },
2426
2531
  "modalBody": {
2532
+ "minVersion": "55.0",
2427
2533
  "slotNames": [
2428
2534
  ""
2429
2535
  ]
2430
2536
  },
2431
2537
  "modalFooter": {
2538
+ "minVersion": "55.0",
2432
2539
  "slotNames": [
2433
2540
  ""
2434
2541
  ]
2435
2542
  },
2436
2543
  "modalHeader": {
2544
+ "minVersion": "55.0",
2437
2545
  "slotNames": [
2438
2546
  ""
2439
2547
  ],
@@ -2609,6 +2717,7 @@
2609
2717
  }
2610
2718
  ]
2611
2719
  },
2720
+ "platformExternalServicesApi": {},
2612
2721
  "platformNamedCredentialApi": {},
2613
2722
  "platformNotificationUtils": {},
2614
2723
  "platformOverlayUtils": {},
@@ -3041,6 +3150,7 @@
3041
3150
  },
3042
3151
  "routingService": {},
3043
3152
  "salesEnablementProgramApi": {},
3153
+ "salesPeopleApi": {},
3044
3154
  "select": {
3045
3155
  "slotNames": [],
3046
3156
  "properties": [
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lightning-base-components",
3
- "version": "1.16.3-alpha",
3
+ "version": "1.16.5-alpha",
4
4
  "engines": {
5
5
  "node": ">=14.18.2"
6
6
  },
@@ -21,6 +21,54 @@
21
21
  "name": "assert",
22
22
  "path": "external/assert.js"
23
23
  },
24
+ {
25
+ "name": "@salesforce/label/LightningForm.edit",
26
+ "path": "scopedImports/@salesforce-label-LightningForm.edit.js"
27
+ },
28
+ {
29
+ "name": "@salesforce/label/LightningForm.undo",
30
+ "path": "scopedImports/@salesforce-label-LightningForm.undo.js"
31
+ },
32
+ {
33
+ "name": "@salesforce/label/LightningForm.saveFieldErrorSummary",
34
+ "path": "scopedImports/@salesforce-label-LightningForm.saveFieldErrorSummary.js"
35
+ },
36
+ {
37
+ "name": "@salesforce/label/LightningForm.preview",
38
+ "path": "scopedImports/@salesforce-label-LightningForm.preview.js"
39
+ },
40
+ {
41
+ "name": "@salesforce/label/LightningForm.previewHeader",
42
+ "path": "scopedImports/@salesforce-label-LightningForm.previewHeader.js"
43
+ },
44
+ {
45
+ "name": "@salesforce/label/LightningForm.save",
46
+ "path": "scopedImports/@salesforce-label-LightningForm.save.js"
47
+ },
48
+ {
49
+ "name": "@salesforce/label/LightningForm.cancel",
50
+ "path": "scopedImports/@salesforce-label-LightningForm.cancel.js"
51
+ },
52
+ {
53
+ "name": "@salesforce/label/LightningForm.error",
54
+ "path": "scopedImports/@salesforce-label-LightningForm.error.js"
55
+ },
56
+ {
57
+ "name": "@salesforce/label/LightningForm.editErrorHelp",
58
+ "path": "scopedImports/@salesforce-label-LightningForm.editErrorHelp.js"
59
+ },
60
+ {
61
+ "name": "@salesforce/label/LightningForm.errorPopoverHeading",
62
+ "path": "scopedImports/@salesforce-label-LightningForm.errorPopoverHeading.js"
63
+ },
64
+ {
65
+ "name": "@salesforce/label/LightningForm.closeError",
66
+ "path": "scopedImports/@salesforce-label-LightningForm.closeError.js"
67
+ },
68
+ {
69
+ "name": "@salesforce/label/LightningForm.reload",
70
+ "path": "scopedImports/@salesforce-label-LightningForm.reload.js"
71
+ },
24
72
  {
25
73
  "name": "@salesforce/label/LightningErrorMessage.validityBadInput",
26
74
  "path": "scopedImports/@salesforce-label-LightningErrorMessage.validityBadInput.js"
@@ -853,6 +901,10 @@
853
901
  "name": "@salesforce/label/LightningLookup.none",
854
902
  "path": "scopedImports/@salesforce-label-LightningLookup.none.js"
855
903
  },
904
+ {
905
+ "name": "@salesforce/label/LightningLookup.messageWhenMissingInformation",
906
+ "path": "scopedImports/@salesforce-label-LightningLookup.messageWhenMissingInformation.js"
907
+ },
856
908
  {
857
909
  "name": "@salesforce/label/LightningPicklist.available",
858
910
  "path": "scopedImports/@salesforce-label-LightningPicklist.available.js"
@@ -1230,10 +1282,15 @@
1230
1282
  "lightning/layout",
1231
1283
  "lightning/layoutItem",
1232
1284
  "lightning/lookupAddress",
1285
+ "lightning/mediaUtils",
1233
1286
  "lightning/menuDivider",
1234
1287
  "lightning/menuItem",
1235
1288
  "lightning/menuSubheader",
1236
1289
  "lightning/messageDispatcher",
1290
+ "lightning/modal",
1291
+ "lightning/modalBody",
1292
+ "lightning/modalFooter",
1293
+ "lightning/modalHeader",
1237
1294
  "lightning/navigation",
1238
1295
  "lightning/overlayManager",
1239
1296
  "lightning/picklist",
@@ -1270,4 +1327,4 @@
1270
1327
  ]
1271
1328
  },
1272
1329
  "license": "MIT"
1273
- }
1330
+ }
@@ -0,0 +1 @@
1
+ export default 'Cancel';
@@ -0,0 +1 @@
1
+ export default 'Close';
@@ -0,0 +1 @@
1
+ export default 'Edit {0}';
@@ -0,0 +1 @@
1
+ export default 'Errors';
@@ -0,0 +1 @@
1
+ export default 'Error';
@@ -0,0 +1 @@
1
+ export default 'Errors';
@@ -0,0 +1 @@
1
+ export default 'Preview {0}';
@@ -0,0 +1 @@
1
+ export default 'Preview {0}';
@@ -0,0 +1 @@
1
+ export default 'Reload';
@@ -0,0 +1 @@
1
+ export default 'Save';
@@ -0,0 +1 @@
1
+ export default 'Page Errors';
@@ -0,0 +1 @@
1
+ export default 'Undo {0}';
@@ -0,0 +1 @@
1
+ export default 'The lookup field cannot be edited because of missing information.';
@@ -120,6 +120,19 @@ This example adds a margin to the left of the second button using an SLDS class.
120
120
  ></lightning-button>
121
121
  ```
122
122
 
123
+ You can also use the `stretch` attribute to expand the button to the full available width. In this example, the button stretches horizontally to fit the full `<div>` container.
124
+
125
+ ```html
126
+ <div>
127
+ <lightning-button
128
+ variant="brand"
129
+ label="Get Started"
130
+ title="Get Started"
131
+ stretch
132
+ ></lightning-button>
133
+ </div>
134
+ ```
135
+
123
136
  To apply custom styling, use the `:host` selector or define a custom class using the `class` attribute.
124
137
 
125
138
  ```html
@@ -1,3 +1,147 @@
1
+ /* Copyright (c) 2015-present, salesforce.com, inc. All rights reserved
2
+ Licensed under BSD 3-Clause - see LICENSE.txt or git.io/sfdc-license */
3
+
4
+ :host([data-render-mode="shadow"]:focus) {
5
+ outline: 0;
6
+ }
7
+
8
+ :host([data-render-mode="shadow"]) [part~='button'] {
9
+ display: inline-flex;
10
+ position: relative;
11
+ background: none;
12
+ background-color: var(--sds-c-button-color-background, var(--sds-s-button-color-background, transparent));
13
+ background-clip: border-box;
14
+ color: var(--sds-c-button-text-color, var(--sds-s-button-text-color, inherit));
15
+ padding-left: var(
16
+ --sds-c-button-spacing-inline-start,
17
+ var(--sds-c-button-spacing-inline, var(--sds-s-button-spacing-inline))
18
+ );
19
+ padding-right: var(
20
+ --sds-c-button-spacing-inline-end,
21
+ var(--sds-c-button-spacing-inline, var(--sds-s-button-spacing-inline))
22
+ );
23
+ padding-top: var(
24
+ --sds-c-button-spacing-block-start,
25
+ var(--sds-c-button-spacing-block, var(--sds-s-button-spacing-block))
26
+ );
27
+ padding-bottom: var(
28
+ --sds-c-button-spacing-block-start,
29
+ var(--sds-c-button-spacing-block, var(--sds-s-button-spacing-block))
30
+ );
31
+ border-width: var(--sds-c-button-sizing-border, var(--sds-s-button-sizing-border, 1px));
32
+ border-style: solid;
33
+ border-color: var(--sds-c-button-color-border, var(--sds-s-button-color-border, transparent));
34
+ border-start-start-radius: var(
35
+ --sds-c-button-radius-border-startstart,
36
+ var(
37
+ --sds-c-button-radius-border,
38
+ var(
39
+ --sds-s-button-radius-border-startstart,
40
+ var(--sds-s-button-radius-border, var(--sds-g-radius-border-2, 0.25rem))
41
+ )
42
+ )
43
+ );
44
+ border-start-end-radius: var(
45
+ --sds-c-button-radius-border-startend,
46
+ var(
47
+ --sds-c-button-radius-border,
48
+ var(
49
+ --sds-s-button-radius-border-startend,
50
+ var(--sds-s-button-radius-border, var(--sds-g-radius-border-2, 0.25rem))
51
+ )
52
+ )
53
+ );
54
+ border-end-start-radius: var(
55
+ --sds-c-button-radius-border-endstart,
56
+ var(
57
+ --sds-c-button-radius-border,
58
+ var(
59
+ --sds-s-button-radius-border-endstart,
60
+ var(--sds-s-button-radius-border, var(--sds-g-radius-border-2, 0.25rem))
61
+ )
62
+ )
63
+ );
64
+ border-end-end-radius: var(
65
+ --sds-c-button-radius-border-endend,
66
+ var(
67
+ --sds-c-button-radius-border,
68
+ var(
69
+ --sds-s-button-radius-border-endend,
70
+ var(--sds-s-button-radius-border, var(--sds-g-radius-border-2, 0.25rem))
71
+ )
72
+ )
73
+ );
74
+ box-shadow: var(--sds-c-button-shadow, var(--sds-s-button-shadow));
75
+ width: var(--sds-c-button-sizing-width);
76
+
77
+ /* this line height hook is incorrect but is used in core - need to get teams to change */
78
+ /* stylelint-disable-next-line sds-stylelint-plugin/styling-hooks-pattern */
79
+ line-height: var(--sds-c-button-line-height);
80
+ white-space: normal;
81
+ user-select: none;
82
+ align-items: center;
83
+ text-decoration: var(--sds-c-button-font-decoration, none);
84
+ appearance: none;
85
+ }
86
+
87
+ :host([data-render-mode="shadow"]) [part~='button']:hover {
88
+ --sds-c-button-text-color: var(
89
+ --sds-c-button-text-color-hover,
90
+ var(--sds-s-button-text-color-hover, #0176d3)
91
+ );
92
+ --sds-c-button-color-background: var(
93
+ --sds-c-button-color-background-hover,
94
+ var(--sds-s-button-color-background-hover)
95
+ );
96
+ --sds-c-button-color-border: var(--sds-c-button-color-border-hover, var(--sds-s-button-color-border-hover));
97
+
98
+ cursor: pointer;
99
+ }
100
+
101
+ :host([data-render-mode="shadow"]) [part~='button']:focus {
102
+ --sds-c-button-color-background: var(
103
+ --sds-c-button-color-background-focus,
104
+ var(--sds-s-button-color-background-focus)
105
+ );
106
+ --sds-c-button-color-border: var(
107
+ --sds-c-button-color-border-focus,
108
+ var(--sds-s-button-color-border-focus, #0176d3)
109
+ );
110
+ --sds-c-button-text-color: var(
111
+ --sds-c-button-text-color-focus,
112
+ var(--sds-s-button-text-color-focus, #0176d3)
113
+ );
114
+ --sds-c-button-shadow: var(--sds-c-button-shadow-focus, var(--sds-s-button-shadow-focus, #0176d3 0 0 3px));
115
+
116
+ outline: 0;
117
+ }
118
+
119
+ :host([data-render-mode="shadow"]) [part~='button']:active {
120
+ --sds-c-button-text-color: var(
121
+ --sds-c-button-text-color-active,
122
+ var(--sds-s-button-text-color-active, currentColor)
123
+ );
124
+ --sds-c-button-color-background: var(
125
+ --sds-c-button-color-background-active,
126
+ var(--sds-s-button-color-background-active)
127
+ );
128
+ --sds-c-button-color-border: var(
129
+ --sds-c-button-color-border-active,
130
+ var(--sds-s-button-color-border-active, #0176d3)
131
+ );
132
+ }
133
+
134
+ :host([data-render-mode="shadow"]) [part~='button']:disabled {
135
+ --sds-c-button-text-color: var(--sds-c-button-text-color-disabled, #939393);
136
+ --sds-c-button-color-background: var(--sds-c-button-color-background-disabled);
137
+ --sds-c-button-color-border: var(--sds-c-button-color-border-disabled);
138
+
139
+ pointer-events: none;
140
+ }
141
+
142
+ :host([data-render-mode="shadow"]) [part~='button']:disabled * {
143
+ pointer-events: none;
144
+ }
1
145
 
2
146
  /* Copyright (c) 2015-present, salesforce.com, inc. All rights reserved
3
147
  Licensed under BSD 3-Clause - see LICENSE.txt or git.io/sfdc-license */
@@ -81,7 +225,7 @@
81
225
  --sds-c-button-color-background-disabled: var(--slds-c-button-neutral-color-background-disabled);
82
226
  }
83
227
 
84
- :host([data-render-mode="shadow"][variant='brand'])::part(button) {
228
+ :host([data-render-mode="shadow"][variant='brand'])::part(:host([data-render-mode="shadow"]) button) {
85
229
  --sds-c-button-line-height: var(--slds-s-button-font-lineheight, 1.875rem);
86
230
  --sds-c-button-spacing-inline: var(--slds-s-button-spacing-inline, 1rem);
87
231
  --sds-c-button-color-background: var(
@@ -131,7 +275,7 @@
131
275
  --sds-c-button-text-color-disabled: var(--sds-g-color-neutral-base-100, #ffffff);
132
276
  }
133
277
 
134
- :host([data-render-mode="shadow"][variant='brand-outline'])::part(button) {
278
+ :host([data-render-mode="shadow"][variant='brand-outline'])::part(:host([data-render-mode="shadow"]) button) {
135
279
  --sds-c-button-line-height: var(--slds-s-button-font-lineheight, 1.875rem);
136
280
  --sds-c-button-spacing-inline: var(--slds-s-button-spacing-inline, 1rem);
137
281
  --sds-c-button-color-background: var(--sds-g-color-neutral-base-100, #ffffff);
@@ -146,7 +290,7 @@
146
290
  --sds-c-button-color-border-disabled: var(--sds-g-color-neutral-base-90, #e5e5e5);
147
291
  }
148
292
 
149
- :host([data-render-mode="shadow"][variant='inverse'])::part(button) {
293
+ :host([data-render-mode="shadow"][variant='inverse'])::part(:host([data-render-mode="shadow"]) button) {
150
294
  --sds-c-button-line-height: var(--slds-s-button-font-lineheight, 1.875rem);
151
295
  --sds-c-button-spacing-inline: var(--slds-s-button-spacing-inline, 1rem);
152
296
  --sds-c-button-color-background: transparent;
@@ -161,7 +305,7 @@
161
305
  --sds-c-button-color-border-disabled: var(--sds-g-color-neutral-base-60, #939393);
162
306
  }
163
307
 
164
- :host([data-render-mode="shadow"][variant='destructive'])::part(button) {
308
+ :host([data-render-mode="shadow"][variant='destructive'])::part(:host([data-render-mode="shadow"]) button) {
165
309
  --sds-c-button-line-height: var(--slds-s-button-font-lineheight, 1.875rem);
166
310
  --sds-c-button-spacing-inline: var(--slds-s-button-spacing-inline, 1rem);
167
311
  --sds-c-button-color-background: var(--sds-g-color-error-base-40, #ba0517);
@@ -178,7 +322,7 @@
178
322
  --sds-c-button-text-color-disabled: var(--sds-g-color-neutral-base-100, #ffffff);
179
323
  }
180
324
 
181
- :host([data-render-mode="shadow"][variant='success'])::part(button) {
325
+ :host([data-render-mode="shadow"][variant='success'])::part(:host([data-render-mode="shadow"]) button) {
182
326
  --sds-c-button-line-height: var(--slds-s-button-font-lineheight, 1.875rem);
183
327
  --sds-c-button-spacing-inline: var(--slds-s-button-spacing-inline, 1rem);
184
328
  --sds-c-button-color-background: var(--sds-g-color-success-base-50, #2e844a);
@@ -195,7 +339,7 @@
195
339
  --sds-c-button-text-color-disabled: var(--sds-g-color-neutral-base-100, #ffffff);
196
340
  }
197
341
 
198
- :host([data-render-mode="shadow"][variant='destructive-text'])::part(button) {
342
+ :host([data-render-mode="shadow"][variant='destructive-text'])::part(:host([data-render-mode="shadow"]) button) {
199
343
  --sds-c-button-line-height: var(--slds-s-button-font-lineheight, 1.875rem);
200
344
  --sds-c-button-spacing-inline: var(--slds-s-button-spacing-inline, 1rem);
201
345
  --sds-c-button-color-background: var(--sds-g-color-neutral-base-100, #ffffff);
@@ -220,7 +364,7 @@
220
364
  *
221
365
  * E.g. --slds-c-button-color-background
222
366
  */
223
- :host([data-render-mode="shadow"][variant='base'])::part(button),:host([data-render-mode="shadow"][variant='text'])::part(button) {
367
+ :host([data-render-mode="shadow"][variant='base'])::part(:host([data-render-mode="shadow"]) button),:host([data-render-mode="shadow"][variant='text'])::part(:host([data-render-mode="shadow"]) button) {
224
368
  --sds-c-button-spacing-inline: 0.25rem;
225
369
  --sds-c-button-text-color: var(--sds-g-color-brand-base-40, #0b5cab);
226
370
  --sds-c-button-color-border: transparent;
@@ -230,21 +374,21 @@
230
374
  --sds-c-button-color-background-active: transparent;
231
375
  }
232
376
 
233
- :host([data-render-mode="shadow"][stretch])::part(button) {
377
+ :host([data-render-mode="shadow"][stretch])::part(:host([data-render-mode="shadow"]) button) {
234
378
  --sds-c-button-width: 100%;
235
379
  }
236
380
 
237
381
  /* center button except on base/text variant */
238
- :host(:not(:host([data-render-mode="shadow"]) [variant='base'],:host([data-render-mode="shadow"]) [variant='text']))::part(button) {
382
+ :host(:not([variant='base'], [variant='text']))::part(:host([data-render-mode="shadow"]) button) {
239
383
  justify-content: center;
240
384
  }
241
385
 
242
- :host([data-render-mode="shadow"])::part(start) {
386
+ :host([data-render-mode="shadow"])::part(:host([data-render-mode="shadow"]) start) {
243
387
  display: inline-flex;
244
388
  padding-inline-end: var(--sds-g-spacing-2, 0.5rem);
245
389
  }
246
390
 
247
- :host([data-render-mode="shadow"])::part(end) {
391
+ :host([data-render-mode="shadow"])::part(:host([data-render-mode="shadow"]) end) {
248
392
  display: inline-flex;
249
393
  padding-inline-start: var(--sds-g-spacing-2, 0.5rem);
250
394
  }