lightning-base-components 1.18.7-alpha → 1.18.8-alpha
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/metadata/raptor.json +32 -9
- package/package.json +1 -1
- package/src/lightning/accordion/accordion.slds.css +26 -20
- package/src/lightning/accordionSection/accordion-section.slds.css +20 -14
- package/src/lightning/avatar/avatar.slds.css +10 -10
- package/src/lightning/baseCombobox/base-combobox.slds.css +23 -23
- package/src/lightning/baseCombobox/baseCombobox.css +1 -2
- package/src/lightning/baseCombobox/baseCombobox.html +7 -11
- package/src/lightning/baseCombobox/baseCombobox.js +84 -36
- package/src/lightning/breadcrumb/breadcrumb.js +4 -2
- package/src/lightning/breadcrumb/breadcrumb.slds.css +3 -3
- package/src/lightning/breadcrumbs/breadcrumbs.slds.css +5 -5
- package/src/lightning/button/button.slds.css +8 -2
- package/src/lightning/buttonGroup/button-group.slds.css +5 -5
- package/src/lightning/buttonIcon/button-icon.slds.css +9 -3
- package/src/lightning/buttonIconStateful/button-icon-stateful.slds.css +15 -9
- package/src/lightning/buttonMenu/button-menu.slds.css +13 -7
- package/src/lightning/buttonStateful/button-stateful.slds.css +11 -5
- package/src/lightning/calendar/calendar.js +15 -23
- package/src/lightning/calendar/calendar.slds.css +29 -23
- package/src/lightning/card/card.slds.css +68 -68
- package/src/lightning/combobox/combobox.slds.css +1 -1
- package/src/lightning/combobox/form-element.slds.css +8 -0
- package/src/lightning/datatable/datatable.js +4 -0
- package/src/lightning/datatable/keyboard.js +8 -4
- package/src/lightning/datatable/sort.js +1 -1
- package/src/lightning/datepicker/datepicker.js +1 -1
- package/src/lightning/datepicker/form-element.slds.css +8 -0
- package/src/lightning/datepicker/input-text.slds.css +23 -23
- package/src/lightning/datetimepicker/form-element.slds.css +8 -0
- package/src/lightning/datetimepicker/input-text.slds.css +23 -23
- package/src/lightning/dualListbox/form-element.slds.css +8 -0
- package/src/lightning/f6Controller/f6Controller.js +31 -22
- package/src/lightning/formattedDateTime/formattedDateTime.js +1 -1
- package/src/lightning/groupedCombobox/groupedCombobox.html +4 -0
- package/src/lightning/groupedCombobox/groupedCombobox.js +3 -2
- package/src/lightning/helptext/form-element.slds.css +8 -0
- package/src/lightning/helptext/help-text.slds.css +10 -4
- package/src/lightning/icon/icon.js +5 -1
- package/src/lightning/icon/icon.slds.css +3 -3
- package/src/lightning/input/__examples__/checkboxbutton/checkboxbutton.css +6 -0
- package/src/lightning/input/__examples__/checkboxbutton/checkboxbutton.html +2 -1
- package/src/lightning/input/__examples__/checkboxbutton/checkboxbutton.js +1 -1
- package/src/lightning/input/__examples__/number/number.html +0 -5
- package/src/lightning/input/form-element.slds.css +8 -0
- package/src/lightning/input/input.css +0 -2
- package/src/lightning/input/input.html +149 -239
- package/src/lightning/input/input.js +221 -539
- package/src/lightning/inputUtils/inputUtils.js +15 -20
- package/src/lightning/inputUtils/normalize.js +7 -0
- package/src/lightning/{input/numberUtil.js → inputUtils/number.js} +1 -1
- package/src/lightning/inputUtils/utils.js +18 -0
- package/src/lightning/layout/layout.js +1 -0
- package/src/lightning/layoutItem/layoutItem.js +1 -0
- package/src/lightning/modal/__docs__/modal.md +102 -3
- package/src/lightning/pill/avatar.slds.css +10 -10
- package/src/lightning/primitiveColorpickerButton/color-picker-button.slds.css +9 -9
- package/src/lightning/primitiveIcon/icon.slds.css +3 -3
- package/src/lightning/primitiveInputCheckbox/form-element.slds.css +289 -0
- package/src/lightning/{input → primitiveInputCheckbox}/input-checkbox.slds.css +18 -18
- package/src/lightning/primitiveInputCheckbox/primitiveInputCheckbox.css +3 -0
- package/src/lightning/primitiveInputCheckbox/primitiveInputCheckbox.html +48 -0
- package/src/lightning/primitiveInputCheckbox/primitiveInputCheckbox.js +139 -0
- package/src/lightning/primitiveInputCheckboxButton/form-element.slds.css +289 -0
- package/src/lightning/primitiveInputCheckboxButton/input-checkbox-button.slds.css +126 -0
- package/src/lightning/primitiveInputCheckboxButton/primitiveInputCheckboxButton.css +6 -0
- package/src/lightning/primitiveInputCheckboxButton/primitiveInputCheckboxButton.html +24 -0
- package/src/lightning/primitiveInputCheckboxButton/primitiveInputCheckboxButton.js +176 -0
- package/src/lightning/primitiveInputColor/form-element.slds.css +289 -0
- package/src/lightning/primitiveInputColor/input-color.slds.css +35 -0
- package/src/lightning/{input → primitiveInputColor}/input-text.slds.css +23 -23
- package/src/lightning/primitiveInputColor/primitiveInputColor.css +4 -0
- package/src/lightning/primitiveInputColor/primitiveInputColor.html +50 -0
- package/src/lightning/primitiveInputColor/primitiveInputColor.js +184 -0
- package/src/lightning/primitiveInputFile/button.slds.css +533 -0
- package/src/lightning/primitiveInputFile/form-element.slds.css +289 -0
- package/src/lightning/primitiveInputFile/input-file.slds.css +62 -0
- package/src/lightning/primitiveInputFile/primitiveInputFile.css +5 -0
- package/src/lightning/primitiveInputFile/primitiveInputFile.html +45 -0
- package/src/lightning/primitiveInputFile/primitiveInputFile.js +111 -0
- package/src/lightning/primitiveInputRadio/primitiveInputRadio.html +24 -0
- package/src/lightning/primitiveInputRadio/primitiveInputRadio.js +103 -0
- package/src/lightning/primitiveInputSimple/form-element.slds.css +289 -0
- package/src/lightning/primitiveInputSimple/input-text.slds.css +398 -0
- package/src/lightning/primitiveInputSimple/primitiveInputSimple.css +9 -0
- package/src/lightning/primitiveInputSimple/primitiveInputSimple.html +65 -0
- package/src/lightning/primitiveInputSimple/primitiveInputSimple.js +585 -0
- package/src/lightning/primitiveInputToggle/form-element.slds.css +289 -0
- package/src/lightning/primitiveInputToggle/input-toggle.slds.css +170 -0
- package/src/lightning/primitiveInputToggle/primitiveInputToggle.css +3 -0
- package/src/lightning/primitiveInputToggle/primitiveInputToggle.html +34 -0
- package/src/lightning/primitiveInputToggle/primitiveInputToggle.js +164 -0
- package/src/lightning/radioGroup/input-radio-group.slds.css +57 -57
- package/src/lightning/select/form-element.slds.css +8 -0
- package/src/lightning/select/select.js +1 -0
- package/src/lightning/select/select.slds.css +30 -22
- package/src/lightning/sldsCommon/sldsCommon.css +21 -0
- package/src/lightning/spinner/spinner.js +8 -4
- package/src/lightning/spinner/spinner.slds.css +34 -34
- package/src/lightning/tab/tab.css +2 -0
- package/src/lightning/tab/tab.js +37 -14
- package/src/lightning/tab/tab.slds.css +47 -0
- package/src/lightning/tabBar/tab-bar.slds.css +5 -5
- package/src/lightning/tabset/tabset.css +10 -0
- package/src/lightning/tabset/tabset.js +31 -7
- package/src/lightning/timepicker/form-element.slds.css +8 -0
- package/src/lightning/toast/button-icon.slds.css +9 -3
- package/src/lightning/toast/icon.slds.css +3 -3
- package/src/lightning/verticalNavigation/vertical-navigation.slds.css +1 -1
- package/src/lightning/baseCombobox/spinner.slds.css +0 -438
- /package/src/lightning/{input/emailUtil.js → inputUtils/email.js} +0 -0
- /package/src/lightning/{input → primitiveInputSimple}/normalize.js +0 -0
- /package/src/lightning/{input → primitiveInputSimple}/selection.js +0 -0
|
@@ -6,23 +6,18 @@ export {
|
|
|
6
6
|
FieldConstraintApiWithProxyInput,
|
|
7
7
|
FieldConstraintApi,
|
|
8
8
|
} from './validity';
|
|
9
|
-
export { normalizeVariant, VARIANT } from './normalize';
|
|
10
|
-
|
|
11
|
-
export
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
for (const name in obj) {
|
|
25
|
-
return false;
|
|
26
|
-
}
|
|
27
|
-
return true;
|
|
28
|
-
}
|
|
9
|
+
export { normalizeInput, normalizeVariant, VARIANT } from './normalize';
|
|
10
|
+
export { isValidEmail, isValidMultipleEmails } from './email';
|
|
11
|
+
export {
|
|
12
|
+
calculateFractionDigitsFromStep,
|
|
13
|
+
formatNumber,
|
|
14
|
+
fromIsoDecimal,
|
|
15
|
+
hasValidNumberShortcut,
|
|
16
|
+
hasValidNumberSymbol,
|
|
17
|
+
increaseNumberByStep,
|
|
18
|
+
isValidNumber,
|
|
19
|
+
isValidNumberCharacter,
|
|
20
|
+
stringifyNumber,
|
|
21
|
+
toIsoDecimal,
|
|
22
|
+
} from './number';
|
|
23
|
+
export { isEmptyString, isEmptyObject } from './utils';
|
|
@@ -5,7 +5,7 @@ import {
|
|
|
5
5
|
toLocalizedDigits,
|
|
6
6
|
numberFormat,
|
|
7
7
|
} from 'lightning/internationalizationLibrary';
|
|
8
|
-
import { isEmptyString } from '
|
|
8
|
+
import { isEmptyString } from './utils';
|
|
9
9
|
import { normalizeNumber } from 'lightning/utilsPrivate';
|
|
10
10
|
|
|
11
11
|
const VALID_NUMBER_CHARACTERS_EXPRESSION = new RegExp(
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export function isEmptyString(s) {
|
|
2
|
+
return (
|
|
3
|
+
s === undefined ||
|
|
4
|
+
s === null ||
|
|
5
|
+
(typeof s === 'string' && s.trim() === '')
|
|
6
|
+
);
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
export function isEmptyObject(obj) {
|
|
10
|
+
if (obj === undefined || obj === null || typeof obj !== 'object') {
|
|
11
|
+
return false;
|
|
12
|
+
}
|
|
13
|
+
// eslint-disable-next-line guard-for-in
|
|
14
|
+
for (const name in obj) {
|
|
15
|
+
return false;
|
|
16
|
+
}
|
|
17
|
+
return true;
|
|
18
|
+
}
|
|
@@ -12,6 +12,7 @@ import { normalizeBoolean } from 'lightning/utilsPrivate';
|
|
|
12
12
|
* Represents a responsive grid system for arranging containers on a page.
|
|
13
13
|
*/
|
|
14
14
|
export default class LightningLayout extends LightningElement {
|
|
15
|
+
static validationOptOut = ['class'];
|
|
15
16
|
/**
|
|
16
17
|
* Determines how to spread the layout items horizontally.
|
|
17
18
|
* The alignment options are center, space, spread, and end.
|
|
@@ -14,6 +14,7 @@ import {
|
|
|
14
14
|
* @slot default Placeholder for your content in lightning-layout-item.
|
|
15
15
|
*/
|
|
16
16
|
export default class LightningLayoutItem extends LightningElement {
|
|
17
|
+
static validationOptOut = ['class'];
|
|
17
18
|
/**
|
|
18
19
|
* Make the item fluid so that it absorbs any extra space in its
|
|
19
20
|
* container or shrinks when there is less space. Allowed values are:
|
|
@@ -378,7 +378,7 @@ See [Create and Dispatch Events](https://developer.salesforce.com/docs/component
|
|
|
378
378
|
|
|
379
379
|
#### Modal Events with LWS and Lightning Locker
|
|
380
380
|
|
|
381
|
-
Modal events work as expected when Lightning Web Security (LWS) is enabled within a Salesforce org, as described in the **Modal Events** section. If LWS isn't enabled in an org, Lightning Locker is in effect.
|
|
381
|
+
Modal events work as expected when Lightning Web Security (LWS) is enabled within a Salesforce org, as described in the **Modal Events** section. If LWS isn't enabled in an org, Lightning Locker is in effect.
|
|
382
382
|
|
|
383
383
|
LWS is replacing Lightning Locker over time and is already enabled in many customer orgs. New orgs have LWS enabled by default. To enable LWS, see [Enable Lightning Web Security in an Org](https://developer.salesforce.com/docs/component-library/documentation/en/lwc/security_lwsec_enable) in the Lightning Web Components Developer Guide.
|
|
384
384
|
|
|
@@ -388,7 +388,7 @@ Under Lightning Locker, when you fire events within `LightningModal`, the browse
|
|
|
388
388
|
|
|
389
389
|
For `LightningModal`, only the top level LWC component or application can communicate to the parent Aura component or application layer with eventing. This topmost component is usually the one that opens the `LightningModal`. `LightningModal`'s child components can't event to a parent Aura component or application layer.
|
|
390
390
|
|
|
391
|
-
All required eventing that should occur during the `LightningModal`'s life cycle must be passed in when you call `Modal.open()`. See `onselect` within `.open()` in the **Modal Events** section.
|
|
391
|
+
All required eventing that should occur during the `LightningModal`'s life cycle must be passed in when you call `Modal.open()`. See `onselect` within `.open()` in the **Modal Events** section.
|
|
392
392
|
|
|
393
393
|
If you want the Aura layer to respond to events within child components embedded in the `LightningModal`, use event bubbling to move any data that you want to make available to the Aura layer into the topmost LWC component that opened the modal. Then, send the event from the LWC component.
|
|
394
394
|
|
|
@@ -407,7 +407,7 @@ These extracting methods fit into the larger LWC Modal-to-Aura event workflow.
|
|
|
407
407
|
|
|
408
408
|
For more information, see [Send Events to an Enclosing Aura Component](https://developer.salesforce.com/docs/component-library/documentation/en/lwc/lwc.events_sending_to_aura_components) and [Events Best Practices](https://developer.salesforce.com/docs/component-library/documentation/en/lwc/events_best_practices).
|
|
409
409
|
|
|
410
|
-
Let's see this workflow in action. In this example, we'll create a button (`lightning-button`) that launches a modal (`LightningModal`) containing a tree grid component (`lightning-tree-grid`) with a button in each record row that automatically navigates our user to that record's page (`lightning-navigation`). This use case requires data passing between our LWC components and a parent Aura component.
|
|
410
|
+
Let's see this workflow in action. In this example, we'll create a button (`lightning-button`) that launches a modal (`LightningModal`) containing a tree grid component (`lightning-tree-grid`) with a button in each record row that automatically navigates our user to that record's page (`lightning-navigation`). This use case requires data passing between our LWC components and a parent Aura component.
|
|
411
411
|
|
|
412
412
|
Because `lightning-navigation` requires you to pass in a `recordId` to construct a page reference, we need to pass the record's data out of `LightningModal`, and then use the methods provided by `lightning-navigation`. With modal's limitations for event bubbling to the Aura layer, we can't just wrap the button or treegrid with `lightning-navigation`. We need to pull that data up to the topmost LWC component, where the `LightningModal` `.open()` is called, for our Aura wrapper to handle the navigation.
|
|
413
413
|
|
|
@@ -592,3 +592,102 @@ The `lightning-modal-header` component renders the `label` value in an `<h1>` el
|
|
|
592
592
|
|
|
593
593
|
To include tagline text or link content for the header section, add it between the `<lightning-modal-header>` tags.
|
|
594
594
|
|
|
595
|
+
#### Unit Testing
|
|
596
|
+
|
|
597
|
+
Writing unit tests for `LightningModal` requires two sets of tests.
|
|
598
|
+
1. Parent components that use `c/myModal` define a mocked result when `.open()` is called during a test run. This mock speeds up testing and prevents repetition while testing actions that trigger modals.
|
|
599
|
+
2. The unit tests for `c/myModal` test the end-to-end functionality of the modal as a self contained component.
|
|
600
|
+
|
|
601
|
+
This example is a mock of a component called myModal. The parent component uses the modal to mock the `c/myModal` component's `.open` method. The mock `.open` resolves a constant value without opening the MyModal component. This example uses a button to open a modal and set the result in the template.
|
|
602
|
+
|
|
603
|
+
```html
|
|
604
|
+
<!-- c/myApp.html -->
|
|
605
|
+
<button data-button onclick={handleClick}>Select Item</button>
|
|
606
|
+
<div data-result>{result}</div>
|
|
607
|
+
```
|
|
608
|
+
|
|
609
|
+
```js
|
|
610
|
+
/* myApp.spec.js */
|
|
611
|
+
|
|
612
|
+
import MyModal from 'c/myModal';
|
|
613
|
+
jest.mock('c/myModal');
|
|
614
|
+
|
|
615
|
+
test(() => {
|
|
616
|
+
// Create and appendChild(element)
|
|
617
|
+
|
|
618
|
+
const buttonEle = element.shadowRoot.querySelector('[data-button]');
|
|
619
|
+
const resultEle = element.shadowRoot.querySelector('[data-result]');
|
|
620
|
+
|
|
621
|
+
// Mock .open() to resolve result 'option1'
|
|
622
|
+
MyModal.open = jest.fn().mockResolvedValue('option1');
|
|
623
|
+
// Initial value
|
|
624
|
+
expect(resultEle.textContent).toBe(undefined);
|
|
625
|
+
// Click modal open button
|
|
626
|
+
buttonEle.click();
|
|
627
|
+
|
|
628
|
+
// Click handler render cycle
|
|
629
|
+
await Promise.resolve();
|
|
630
|
+
// Render cycle triggered by tracked value {result}
|
|
631
|
+
await Promise.resolve();
|
|
632
|
+
|
|
633
|
+
// Verify result is set in the prompt template
|
|
634
|
+
expect(resultEle.textContent).toBe('option1');
|
|
635
|
+
// Open triggered once
|
|
636
|
+
expect(MyModal.open.mock.calls).toHaveLength(1);
|
|
637
|
+
})
|
|
638
|
+
```
|
|
639
|
+
|
|
640
|
+
This example contains the unit tests for the actual `c/myModal` component. The tests use shorthand selectors to make unit testing more concise. For more information, see **Shorthand Selectors for `LightningModal`**.
|
|
641
|
+
|
|
642
|
+
```js
|
|
643
|
+
/* myModal.spec.js */
|
|
644
|
+
|
|
645
|
+
import { createElement } from 'lwc';
|
|
646
|
+
import MyModal from 'c/myModal';
|
|
647
|
+
|
|
648
|
+
describe('c-my-modal', () => {
|
|
649
|
+
afterEach(() => {
|
|
650
|
+
while (document.body.firstChild) {
|
|
651
|
+
document.body.removeChild(document.body.firstChild);
|
|
652
|
+
}
|
|
653
|
+
});
|
|
654
|
+
|
|
655
|
+
it('should select body elements', async () => {
|
|
656
|
+
const element = createElement('c-mymodal', {
|
|
657
|
+
is: MyModal
|
|
658
|
+
});
|
|
659
|
+
document.body.appendChild(element);
|
|
660
|
+
|
|
661
|
+
// If element apis are modified after appendChild
|
|
662
|
+
// await Promise.resolve();
|
|
663
|
+
|
|
664
|
+
// using shorthand selector for modalBody
|
|
665
|
+
// see list of selectors below
|
|
666
|
+
expect(element.modalBody$('button').textContent).toBe('hello world');
|
|
667
|
+
});
|
|
668
|
+
});
|
|
669
|
+
```
|
|
670
|
+
|
|
671
|
+
#### Shorthand Selectors for `LightningModal`
|
|
672
|
+
|
|
673
|
+
The stubs for `LightningModal` have shorthand selectors to make unit testing more concise. These are all the shorthand selectors for unit testing that you can use with `LightningModal`.
|
|
674
|
+
|
|
675
|
+
- `element.closeValue` - Value passed into `this.close(value)`
|
|
676
|
+
- `element.modalHeader$()` - querySelect a single node in `lightning-modal-header`
|
|
677
|
+
- Usage: `element.modalHeader$('a')` Returns first link
|
|
678
|
+
- `element.modalHeader$$()` - querySelectAll multiple nodes in `lightning-modal-header`
|
|
679
|
+
- Usage:
|
|
680
|
+
- `elem.modalHeader$$()` Returns all nodes in header
|
|
681
|
+
- `elem.modalHeader$$('a')` Returns all links in header
|
|
682
|
+
- `element.modalBody$()` - querySelect a single node in `lightning-modal-body`
|
|
683
|
+
- Usage: `element.modalBody$('button')` Returns first button
|
|
684
|
+
- `element.modalBody$$()` - querySelectAll multiple nodes in `lightning-modal-body`
|
|
685
|
+
- Usage:
|
|
686
|
+
- `elem.modalBody$$()` Returns all nodes in body
|
|
687
|
+
- `elem.modalBody$$('button, [data-button]')` Returns buttons in body
|
|
688
|
+
- `element.modalFooter$()` - querySelect a single node in `lightning-modal-footer`
|
|
689
|
+
- Usage: `element.modalFooter$('button')` Returns first button
|
|
690
|
+
- `element.modalFooter$$()` - querySelectAll multiple nodes in `lightning-modal-footer`
|
|
691
|
+
- Usage:
|
|
692
|
+
- `elem.modalFooter$$()` Returns all nodes in footer
|
|
693
|
+
- `elem.modalFooter$$('button, [data-button]')` Returns buttons in footer
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
--slds-c-icon-color-foreground: var(--sds-g-color-neutral-base-70, #aeaeae);
|
|
45
45
|
}
|
|
46
46
|
|
|
47
|
-
:host([data-render-mode="shadow"]) [part
|
|
47
|
+
:host([data-render-mode="shadow"]) [part='boundary'] {
|
|
48
48
|
/* --sds-c-icon-color-background: var(--slds-c-icon-color-background); */
|
|
49
49
|
--sds-c-icon-radius-border: var(--slds-c-icon-radius-border, var(--sds-g-radius-border-2, 0.25rem));
|
|
50
50
|
--sds-c-icon-sizing-border: var(--slds-c-icon-sizing-border);
|
|
@@ -74,7 +74,7 @@
|
|
|
74
74
|
display: inline-flex;
|
|
75
75
|
}
|
|
76
76
|
|
|
77
|
-
:host([data-render-mode="shadow"]) [part
|
|
77
|
+
:host([data-render-mode="shadow"]) [part='icon'] {
|
|
78
78
|
--sds-c-icon-color-foreground: var(--slds-c-icon-color-foreground, var(--sds-g-color-neutral-base-100, #ffffff));
|
|
79
79
|
--sds-c-icon-sizing-height: var(--slds-c-icon-sizing-height, var(--slds-c-icon-sizing, var(--sds-g-sizing-9, 2rem)));
|
|
80
80
|
--sds-c-icon-sizing-width: var(--slds-c-icon-sizing-width, var(--slds-c-icon-sizing, var(--sds-g-sizing-9, 2rem)));
|
|
@@ -159,7 +159,7 @@
|
|
|
159
159
|
|
|
160
160
|
:host([data-render-mode="shadow"]) .slds-input__icon {
|
|
161
161
|
--slds-c-icon-sizing: calc(var(--sds-g-sizing-1, 0.125rem) + var(--sds-g-sizing-4, 0.75rem));
|
|
162
|
-
|
|
162
|
+
|
|
163
163
|
position: absolute;
|
|
164
164
|
top: 50%;
|
|
165
165
|
margin-block-start: -0.4375rem;
|
|
@@ -185,7 +185,7 @@
|
|
|
185
185
|
white-space: nowrap !important;
|
|
186
186
|
}
|
|
187
187
|
|
|
188
|
-
:host([data-render-mode="shadow"]) [part
|
|
188
|
+
:host([data-render-mode="shadow"]) [part='avatar'] {
|
|
189
189
|
width: var(--slds-c-avatar-sizing, var(--sds-g-sizing-9, 2rem));
|
|
190
190
|
height: var(--slds-c-avatar-sizing, var(--sds-g-sizing-9, 2rem));
|
|
191
191
|
overflow: hidden;
|
|
@@ -197,28 +197,28 @@
|
|
|
197
197
|
color: var(--slds-c-avatar-text-color, var(--sds-g-color-neutral-base-100, #ffffff));
|
|
198
198
|
}
|
|
199
199
|
|
|
200
|
-
:host([data-render-mode="shadow"][size='x-small']) [part
|
|
200
|
+
:host([data-render-mode="shadow"][size='x-small']) [part='avatar'] {
|
|
201
201
|
width: var(--sds-g-sizing-6, 1.25rem);
|
|
202
202
|
height: var(--sds-g-sizing-6, 1.25rem);
|
|
203
203
|
font-size: var(--sds-g-font-scale-neg-4, 0.625rem);
|
|
204
204
|
--slds-c-icon-sizing: var(--sds-g-sizing-6, 1.25rem);
|
|
205
205
|
}
|
|
206
206
|
|
|
207
|
-
:host([data-render-mode="shadow"][size='small']) [part
|
|
207
|
+
:host([data-render-mode="shadow"][size='small']) [part='avatar'] {
|
|
208
208
|
width: var(--sds-g-sizing-7, 1.5rem);
|
|
209
209
|
height: var(--sds-g-sizing-7, 1.5rem);
|
|
210
210
|
font-size: var(--sds-g-font-scale-neg-4, 0.625rem);
|
|
211
211
|
--slds-c-icon-sizing: var(--sds-g-sizing-7, 1.5rem);
|
|
212
212
|
}
|
|
213
213
|
|
|
214
|
-
:host([data-render-mode="shadow"][size='medium']) [part
|
|
214
|
+
:host([data-render-mode="shadow"][size='medium']) [part='avatar'] {
|
|
215
215
|
width: var(--sds-g-sizing-9, 2rem);
|
|
216
216
|
height: var(--sds-g-sizing-9, 2rem);
|
|
217
217
|
font-size: var(--sds-g-font-scale-neg-1, 0.875rem);
|
|
218
218
|
--slds-c-icon-sizing: var(--sds-g-sizing-9, 2rem);
|
|
219
219
|
}
|
|
220
220
|
|
|
221
|
-
:host([data-render-mode="shadow"][size='large']) [part
|
|
221
|
+
:host([data-render-mode="shadow"][size='large']) [part='avatar'] {
|
|
222
222
|
width: var(--sds-g-sizing-10, 3rem);
|
|
223
223
|
height: var(--sds-g-sizing-10, 3rem);
|
|
224
224
|
font-size: var(--sds-g-font-scale-1, 1.125rem);
|
|
@@ -226,11 +226,11 @@
|
|
|
226
226
|
--slds-c-icon-sizing: var(--sds-g-sizing-10, 3rem);
|
|
227
227
|
}
|
|
228
228
|
|
|
229
|
-
:host([data-render-mode="shadow"][variant='circle']) [part
|
|
229
|
+
:host([data-render-mode="shadow"][variant='circle']) [part='avatar'] {
|
|
230
230
|
border-radius: calc(var(--sds-g-radius-border-circle, 100%) / 2);
|
|
231
231
|
}
|
|
232
232
|
|
|
233
|
-
:host([data-render-mode="shadow"].slds-avatar_empty) [part
|
|
233
|
+
:host([data-render-mode="shadow"].slds-avatar_empty) [part='avatar'] {
|
|
234
234
|
border: var(--sds-g-sizing-border-1, 1px) dashed var(--sds-g-color-neutral-base-90, #e5e5e5);
|
|
235
235
|
}
|
|
236
236
|
|
|
@@ -84,7 +84,7 @@
|
|
|
84
84
|
--slds-c-icon-color-foreground: var(--sds-g-color-neutral-base-70, #aeaeae);
|
|
85
85
|
}
|
|
86
86
|
|
|
87
|
-
:host([data-render-mode="shadow"]) [part
|
|
87
|
+
:host([data-render-mode="shadow"]) [part='boundary'] {
|
|
88
88
|
/* --sds-c-icon-color-background: var(--slds-c-icon-color-background); */
|
|
89
89
|
--sds-c-icon-radius-border: var(--slds-c-icon-radius-border, var(--sds-g-radius-border-2, 0.25rem));
|
|
90
90
|
--sds-c-icon-sizing-border: var(--slds-c-icon-sizing-border);
|
|
@@ -114,7 +114,7 @@
|
|
|
114
114
|
display: inline-flex;
|
|
115
115
|
}
|
|
116
116
|
|
|
117
|
-
:host([data-render-mode="shadow"]) [part
|
|
117
|
+
:host([data-render-mode="shadow"]) [part='icon'] {
|
|
118
118
|
--sds-c-icon-color-foreground: var(--slds-c-icon-color-foreground, var(--sds-g-color-neutral-base-100, #ffffff));
|
|
119
119
|
--sds-c-icon-sizing-height: var(--slds-c-icon-sizing-height, var(--slds-c-icon-sizing, var(--sds-g-sizing-9, 2rem)));
|
|
120
120
|
--sds-c-icon-sizing-width: var(--slds-c-icon-sizing-width, var(--slds-c-icon-sizing, var(--sds-g-sizing-9, 2rem)));
|
|
@@ -199,7 +199,7 @@
|
|
|
199
199
|
|
|
200
200
|
:host([data-render-mode="shadow"]) .slds-input__icon {
|
|
201
201
|
--slds-c-icon-sizing: calc(var(--sds-g-sizing-1, 0.125rem) + var(--sds-g-sizing-4, 0.75rem));
|
|
202
|
-
|
|
202
|
+
|
|
203
203
|
position: absolute;
|
|
204
204
|
top: 50%;
|
|
205
205
|
margin-block-start: -0.4375rem;
|
|
@@ -213,7 +213,7 @@ Licensed under BSD 3-Clause - see LICENSE.txt or git.io/sfdc-license */
|
|
|
213
213
|
|
|
214
214
|
@supports (--styling-hooks: '') {
|
|
215
215
|
/* :host::part(color-picker-button), */
|
|
216
|
-
:host([data-render-mode="shadow"]) [part
|
|
216
|
+
:host([data-render-mode="shadow"]) [part='color-picker-button'] {
|
|
217
217
|
--slds-c-icon-color-foreground: var(
|
|
218
218
|
--slds-c-colorpickerbutton-color-foreground,
|
|
219
219
|
var(--sds-g-color-neutral-base-50, #747474)
|
|
@@ -239,8 +239,8 @@ Licensed under BSD 3-Clause - see LICENSE.txt or git.io/sfdc-license */
|
|
|
239
239
|
cursor: pointer;
|
|
240
240
|
}
|
|
241
241
|
|
|
242
|
-
:host([data-render-mode="shadow"]) [part
|
|
243
|
-
[part
|
|
242
|
+
:host([data-render-mode="shadow"]) [part='color-picker-button']:hover,:host([data-render-mode="shadow"])
|
|
243
|
+
[part='color-picker-button']:focus {
|
|
244
244
|
--slds-c-colorpickerbutton-color-background: var(--slds-c-colorpickerbutton-color-background-hover);
|
|
245
245
|
--slds-c-colorpickerbutton-color-border: var(--slds-c-colorpickerbutton-color-border-hover);
|
|
246
246
|
--slds-c-colorpickerbutton-color-foreground: var(
|
|
@@ -248,7 +248,7 @@ Licensed under BSD 3-Clause - see LICENSE.txt or git.io/sfdc-license */
|
|
|
248
248
|
var(--sds-g-color-brand-base-30, #014486)
|
|
249
249
|
);
|
|
250
250
|
}
|
|
251
|
-
:host([data-render-mode="shadow"]) [part
|
|
251
|
+
:host([data-render-mode="shadow"]) [part='color-picker-button']:focus {
|
|
252
252
|
--slds-c-colorpickerbutton-shadow: var(
|
|
253
253
|
--slds-c-colorpickerbutton-shadow-focus,
|
|
254
254
|
0 0 3px var(--sds-g-color-brand-base-50, #0176d3)
|
|
@@ -257,7 +257,7 @@ Licensed under BSD 3-Clause - see LICENSE.txt or git.io/sfdc-license */
|
|
|
257
257
|
outline: 0;
|
|
258
258
|
}
|
|
259
259
|
|
|
260
|
-
:host([data-render-mode="shadow"]) [part
|
|
260
|
+
:host([data-render-mode="shadow"]) [part='color-picker-button']:active {
|
|
261
261
|
--slds-c-colorpickerbutton-color-background: var(--slds-c-colorpickerbutton-color-background-active);
|
|
262
262
|
--slds-c-colorpickerbutton-color-border: var(
|
|
263
263
|
--slds-c-colorpickerbutton-color-border-active,
|
|
@@ -271,7 +271,7 @@ Licensed under BSD 3-Clause - see LICENSE.txt or git.io/sfdc-license */
|
|
|
271
271
|
outline: 0;
|
|
272
272
|
}
|
|
273
273
|
|
|
274
|
-
:host([data-render-mode="shadow"]) [part
|
|
274
|
+
:host([data-render-mode="shadow"]) [part='color-picker-button'] .slds-swatch {
|
|
275
275
|
display: inline-block;
|
|
276
276
|
vertical-align: middle;
|
|
277
277
|
height: 1.25rem;
|
|
@@ -84,7 +84,7 @@
|
|
|
84
84
|
--slds-c-icon-color-foreground: var(--sds-g-color-neutral-base-70, #aeaeae);
|
|
85
85
|
}
|
|
86
86
|
|
|
87
|
-
:host([data-render-mode="shadow"]) [part
|
|
87
|
+
:host([data-render-mode="shadow"]) [part='boundary'] {
|
|
88
88
|
/* --sds-c-icon-color-background: var(--slds-c-icon-color-background); */
|
|
89
89
|
--sds-c-icon-radius-border: var(--slds-c-icon-radius-border, var(--sds-g-radius-border-2, 0.25rem));
|
|
90
90
|
--sds-c-icon-sizing-border: var(--slds-c-icon-sizing-border);
|
|
@@ -114,7 +114,7 @@
|
|
|
114
114
|
display: inline-flex;
|
|
115
115
|
}
|
|
116
116
|
|
|
117
|
-
:host([data-render-mode="shadow"]) [part
|
|
117
|
+
:host([data-render-mode="shadow"]) [part='icon'] {
|
|
118
118
|
--sds-c-icon-color-foreground: var(--slds-c-icon-color-foreground, var(--sds-g-color-neutral-base-100, #ffffff));
|
|
119
119
|
--sds-c-icon-sizing-height: var(--slds-c-icon-sizing-height, var(--slds-c-icon-sizing, var(--sds-g-sizing-9, 2rem)));
|
|
120
120
|
--sds-c-icon-sizing-width: var(--slds-c-icon-sizing-width, var(--slds-c-icon-sizing, var(--sds-g-sizing-9, 2rem)));
|
|
@@ -199,7 +199,7 @@
|
|
|
199
199
|
|
|
200
200
|
:host([data-render-mode="shadow"]) .slds-input__icon {
|
|
201
201
|
--slds-c-icon-sizing: calc(var(--sds-g-sizing-1, 0.125rem) + var(--sds-g-sizing-4, 0.75rem));
|
|
202
|
-
|
|
202
|
+
|
|
203
203
|
position: absolute;
|
|
204
204
|
top: 50%;
|
|
205
205
|
margin-block-start: -0.4375rem;
|