@salesforcedevs/dx-components 1.2.19-lightdom → 1.3.0

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 (59) hide show
  1. package/LICENSE +12 -0
  2. package/lwc.config.json +1 -0
  3. package/package.json +3 -2
  4. package/src/modules/dx/banner/banner.css +32 -0
  5. package/src/modules/dx/banner/banner.html +2 -2
  6. package/src/modules/dx/banner/banner.ts +1 -3
  7. package/src/modules/dx/brandThemeProvider/brandThemeProvider.html +1 -2
  8. package/src/modules/dx/brandThemeProvider/brandThemeProvider.ts +5 -8
  9. package/src/modules/dx/button/button.css +1 -0
  10. package/src/modules/dx/cardCallout/cardCallout.css +44 -4
  11. package/src/modules/dx/cardCallout/cardCallout.html +1 -1
  12. package/src/modules/dx/cardCallout/cardCallout.ts +0 -2
  13. package/src/modules/dx/cardPodcastEpisode/{cardPodcastEpisode.scoped.css → cardPodcastEpisode.css} +4 -0
  14. package/src/modules/dx/cardPodcastEpisode/cardPodcastEpisode.html +1 -1
  15. package/src/modules/dx/cardPodcastEpisode/cardPodcastEpisode.ts +0 -2
  16. package/src/modules/dx/cardTitle/cardTitle.css +24 -2
  17. package/src/modules/dx/cardTitle/cardTitle.html +3 -7
  18. package/src/modules/dx/cardTitle/cardTitle.ts +0 -1
  19. package/src/modules/dx/dropdown/dropdown.css +1 -7
  20. package/src/modules/dx/dropdown/dropdown.html +2 -4
  21. package/src/modules/dx/dropdown/dropdown.ts +2 -4
  22. package/src/modules/dx/featuredContentHeader/featuredContentHeader.css +8 -8
  23. package/src/modules/dx/header/header.css +94 -7
  24. package/src/modules/dx/header/header.html +1 -1
  25. package/src/modules/dx/header/header.ts +0 -2
  26. package/src/modules/dx/headerMobileNavMenu/headerMobileNavMenu.css +146 -1
  27. package/src/modules/dx/headerMobileNavMenu/headerMobileNavMenu.html +4 -12
  28. package/src/modules/dx/headerMobileNavMenu/headerMobileNavMenu.ts +5 -5
  29. package/src/modules/dx/headerNav/{headerNav.scoped.css → headerNav.css} +2 -0
  30. package/src/modules/dx/headerNav/headerNav.html +2 -5
  31. package/src/modules/dx/headerNav/headerNav.ts +0 -2
  32. package/src/modules/dx/headerSearch/headerSearch.css +60 -1
  33. package/src/modules/dx/headerSearch/headerSearch.html +1 -1
  34. package/src/modules/dx/headerSearch/headerSearch.ts +0 -2
  35. package/src/modules/dx/icon/icon.css +4 -2
  36. package/src/modules/dx/icon/icon.html +1 -1
  37. package/src/modules/dx/icon/icon.ts +0 -2
  38. package/src/modules/dx/interactiveImage/interactiveImage.css +59 -0
  39. package/src/modules/dx/interactiveImage/interactiveImage.html +32 -0
  40. package/src/modules/dx/interactiveImage/interactiveImage.ts +71 -0
  41. package/src/modules/dx/logo/{logo.scoped.css → logo.css} +3 -0
  42. package/src/modules/dx/logo/logo.html +1 -1
  43. package/src/modules/dx/logo/logo.ts +0 -2
  44. package/src/modules/dx/relativeDateTime/relativeDateTime.html +1 -1
  45. package/src/modules/dx/relativeDateTime/relativeDateTime.ts +0 -1
  46. package/src/modules/dx/skipNavLink/{skipNavLink.scoped.css → skipNavLink.css} +2 -0
  47. package/src/modules/dx/skipNavLink/skipNavLink.html +1 -1
  48. package/src/modules/dx/skipNavLink/skipNavLink.ts +1 -3
  49. package/src/modules/dxHelpers/card/card.css +0 -10
  50. package/src/modules/dxHelpers/commonSidebar/commonSidebar.css +2 -2
  51. package/src/modules/dxHelpers/reset/reset.css +1 -0
  52. package/src/modules/dx/banner/banner.scoped.css +0 -28
  53. package/src/modules/dx/cardCallout/cardCallout.scoped.css +0 -45
  54. package/src/modules/dx/cardTitle/cardTitle.scoped.css +0 -25
  55. package/src/modules/dx/checkbox/checkbox.scoped.css +0 -169
  56. package/src/modules/dx/header/header.scoped.css +0 -92
  57. package/src/modules/dx/headerMobileNavMenu/headerMobileNavMenu.scoped.css +0 -142
  58. package/src/modules/dx/headerSearch/headerSearch.scoped.css +0 -56
  59. package/src/modules/dx/relativeDateTime/relativeDateTime.scoped.css +0 -3
@@ -1,45 +0,0 @@
1
- :host {
2
- display: block;
3
-
4
- --dx-g-card-border: 1px solid var(--dx-g-gray-90);
5
- --dx-g-card-border-radius: 16px;
6
- --dx-g-card-item-spacing: 12px;
7
- --dx-g-card-img-spacing: 20px;
8
- --dx-c-body-max-lines: 6;
9
- }
10
-
11
- .card-callout {
12
- position: relative;
13
- display: flex;
14
- flex-direction: column;
15
- }
16
-
17
- /* in the callout card's case it needs to be subservient to the other items in the grid */
18
- .dx-card-base_override-width {
19
- height: 100% !important;
20
- min-height: unset !important;
21
- }
22
-
23
- /* title */
24
-
25
- .dx-text-heading-3 {
26
- color: inherit;
27
- margin-bottom: var(--dx-g-spacing-3xl);
28
- overflow-wrap: hyphenate-word;
29
- hyphens: overflow;
30
- }
31
-
32
- /* label */
33
-
34
- .dx-text-button-light {
35
- color: inherit;
36
- margin-top: auto;
37
- }
38
-
39
- /* callout arrow */
40
-
41
- @media screen and (max-width: 1024px) {
42
- .dx-text-heading-3 {
43
- margin-bottom: var(--dx-g-spacing-xl);
44
- }
45
- }
@@ -1,25 +0,0 @@
1
- h3.dx-text-heading-4 {
2
- color: var(--dx-c-card-title-color);
3
- transition: var(--dx-g-transition-hue-1x);
4
- font-size: var(--dx-c-card-title-font-size);
5
- line-height: var(--dx-c-card-title-line-height);
6
- letter-spacing: var(--dx-c-card-title-letter-spacing);
7
- word-break: break-word;
8
- hyphens: auto;
9
- font-family: var(--dx-g-font-display);
10
- }
11
-
12
- a {
13
- font-family: var(--dx-g-font-display);
14
- }
15
-
16
- .nowrap {
17
- white-space: nowrap;
18
- }
19
-
20
- @media screen and (max-width: 1024px) {
21
- .dx-text-heading-4 {
22
- font-size: 20px;
23
- line-height: 24px;
24
- }
25
- }
@@ -1,169 +0,0 @@
1
- :host {
2
- display: block;
3
- }
4
-
5
- .container {
6
- --error-color: var(--dx-g-red-vibrant-50);
7
-
8
- display: flex;
9
- flex-direction: column;
10
- align-items: flex-start;
11
- }
12
-
13
- .checkbox-label,
14
- input {
15
- cursor: pointer;
16
- }
17
-
18
- label {
19
- display: var(--dx-c-checkbox-display, flex);
20
- align-items: var(--dx-c-checkbox-align-label, flex-start);
21
- }
22
-
23
- input {
24
- flex-shrink: 0;
25
- margin: 0;
26
- }
27
-
28
- .checkbox-label {
29
- line-height: var(--dx-c-checkbox-text-line-height, 20px);
30
- font-size: var(--dx-c-checkbox-font-size, --dx-g-text-base);
31
- transform: translateY(-2px);
32
- padding-left: 12px;
33
- }
34
-
35
- .checkbox-label::first-letter {
36
- text-transform: uppercase;
37
- }
38
-
39
- .checkbox-error {
40
- opacity: 0;
41
- margin-top: var(--dx-g-spacing-xs);
42
- user-select: none;
43
- }
44
-
45
- input:disabled {
46
- cursor: not-allowed;
47
- opacity: 0.9;
48
- }
49
-
50
- input:disabled + .checkbox-label {
51
- cursor: not-allowed;
52
- color: var(--sds-g-gray-9);
53
- }
54
-
55
- .container.show-error .checkbox-error {
56
- opacity: 1;
57
- user-select: auto;
58
- }
59
-
60
- /* adapted from https://css-tricks.com/custom-styling-form-inputs-with-modern-css-features/ */
61
- @supports (-webkit-appearance: none) or (-moz-appearance: none) {
62
- input {
63
- --active-color: var(--dx-g-blue-vibrant-50);
64
- --active-inner-color: #fff;
65
- --focus-shadow: 1px var(--dx-g-blue-vibrant-80);
66
- --border-color: var(--sds-g-gray-5);
67
- --border-color-hover: var(--sds-g-gray-6);
68
- --background: #fff;
69
- --disabled-color: var(--sds-g-gray-4);
70
- --disabled-inner-color: var(--dx-g-gray-60);
71
- --size: var(--dx-g-spacing-md);
72
-
73
- -webkit-appearance: none;
74
- -moz-appearance: none;
75
- height: var(--size);
76
- width: var(--size);
77
- outline: none;
78
- display: inline-block;
79
- vertical-align: top;
80
- position: relative;
81
- cursor: pointer;
82
- border: 1px solid var(--border-color-override, var(--border-color));
83
- background: var(--background-override, var(--background));
84
- transition: var(--dx-g-transition-box-shadow-1x),
85
- var(--dx-g-transition-hue-1x);
86
- }
87
-
88
- input::after {
89
- content: "";
90
- display: block;
91
- left: 0;
92
- top: 0;
93
- position: absolute;
94
- opacity: var(--opacity, 0);
95
- transition: transform var(--transition-duration-transform, 0.3s)
96
- var(--transition-easing-transorm, ease),
97
- opacity var(--transition-duration-opacity, 0.2s);
98
- }
99
-
100
- input[type="checkbox"] {
101
- border-radius: 2px;
102
- }
103
-
104
- input[type="radio"] {
105
- border-radius: 50%;
106
- }
107
-
108
- input:disabled {
109
- --background-override: var(--disabled-color);
110
- }
111
-
112
- input:focus {
113
- box-shadow: 0 0 0 var(--focus-shadow);
114
- }
115
-
116
- input:checked {
117
- --opacity: 1;
118
- --transition-duration-opacity: 0.3s;
119
- --transition-duration-transform: 0.6s;
120
- --transition-easing-transorm: cubic-bezier(0.2, 0.85, 0.32, 1.2);
121
- }
122
-
123
- input:disabled:checked {
124
- --border-color-override: var(--border-color);
125
- }
126
-
127
- input:hover:not(:disabled) {
128
- --border-color-override: var(--border-color-hover);
129
- }
130
-
131
- input[type="checkbox"]::after {
132
- --checkbox-width: 4px;
133
- --checkbox-height: 8px;
134
-
135
- width: var(--checkbox-width);
136
- height: var(--checkbox-height);
137
- border: 2px solid var(--active-color);
138
- border-top: 0;
139
- border-left: 0;
140
- left: calc(50% - var(--checkbox-width) / 2);
141
- top: calc(50% - var(--checkbox-height) / 2);
142
- transform: rotate(var(--checkbox-rotation, 20deg));
143
- }
144
-
145
- input[type="checkbox"]:checked {
146
- --checkbox-rotation: 43deg;
147
- }
148
-
149
- input[type="radio"]::after {
150
- --opacity: 0;
151
-
152
- width: 8px;
153
- height: 8px;
154
- border-radius: 50%;
155
- background: var(--active-color);
156
- margin: 3px;
157
- transition: var(--dx-g-transition-hue-1x);
158
- }
159
-
160
- input:checked[type="radio"]::after {
161
- --opacity: 1;
162
- }
163
-
164
- .container.show-error input {
165
- --border-color-override: var(--error-color) !important;
166
-
167
- box-shadow: 0 0 0 1px var(--error-color) !important;
168
- }
169
- }
@@ -1,92 +0,0 @@
1
- dx-header-mobile-nav-menu {
2
- --dx-c-color-background: var(--dx-g-brand-current-color-background);
3
- --dx-c-button-color-background-inactive: var(
4
- --dx-g-brand-current-button-color-background-inactive
5
- );
6
- --dx-c-button-color-background-active: var(
7
- --dx-g-brand-current-button-color-background-active
8
- );
9
- --dx-c-color: var(--dx-g-brand-current-color);
10
- --dx-c-color-border: var(--dx-g-brand-current-color-border);
11
- --dx-c-color-background-2: var(--dx-g-brand-current-color-background-2);
12
- --dx-c-button-color-background-inactive-hover: var(
13
- --dx-g-brand-current-button-color-background-inactive-hover
14
- );
15
- --dx-c-color-border-2: var(--dx-g-brand-current-color-border-2);
16
- }
17
-
18
- .header_l2_group-title {
19
- margin-right: var(--dx-g-spacing-4xl);
20
- }
21
-
22
- .header_l2_group-nav_menu-ctas {
23
- display: none;
24
- position: relative;
25
- justify-content: center;
26
- align-items: center;
27
- padding-right: var(--dx-g-spacing-sm);
28
- height: 100%;
29
- }
30
-
31
- .header_l2_group-nav_menu-ctas::after {
32
- content: "";
33
- position: absolute;
34
- right: 0;
35
- top: var(--dx-g-spacing-sm);
36
- height: calc(100% - var(--dx-g-spacing-md));
37
- width: 1px;
38
- background: transparent;
39
- transition: var(--dx-g-transition-hue-1x);
40
- }
41
-
42
- header.has-navscrollshadow .header_l2_group-nav_menu-ctas::after {
43
- background: var(--dx-g-brand-current-color-border);
44
- }
45
-
46
- .header_l2_group-nav_menu-button {
47
- --dx-c-button-primary-color: var(--dx-g-blue-vibrant-20);
48
- --dx-c-button-secondary-color-hover: var(
49
- --dx-g-brand-current-button-color-background-inactive
50
- );
51
- }
52
-
53
- @media (max-width: 1024px) {
54
- .header_l2 {
55
- flex-wrap: wrap;
56
- height: unset;
57
- padding: 0;
58
- }
59
-
60
- .header_l2_group-title {
61
- margin-right: 0;
62
- padding: 12px var(--dx-g-page-padding-horizontal);
63
- }
64
-
65
- .header_l2_group {
66
- width: 100%;
67
- }
68
-
69
- .header_l2_group-nav {
70
- height: var(--dx-g-spacing-3xl);
71
- padding: 0;
72
- padding-left: var(--dx-g-spacing-sm);
73
- }
74
-
75
- .header_l2_group-nav_overflow {
76
- margin-right: var(--dx-g-spacing-sm);
77
- }
78
-
79
- .header_version-dropdown {
80
- margin-left: auto;
81
- }
82
-
83
- .has-nav-items .header_l2_group-title {
84
- border-bottom: 1px solid var(--dx-g-brand-current-color-border-2);
85
- }
86
- }
87
-
88
- @media (max-width: 768px) {
89
- .header_l2_group-nav > .header_l2_group-nav_menu-ctas {
90
- display: flex;
91
- }
92
- }
@@ -1,142 +0,0 @@
1
- .nav-menu {
2
- position: absolute;
3
- top: 100%;
4
- left: 0;
5
- width: 100%;
6
- max-height: 56vh;
7
- overflow-y: auto;
8
- padding: 0 var(--dx-g-spacing-sm) var(--dx-g-spacing-sm)
9
- var(--dx-g-spacing-sm);
10
- background: var(--dx-c-color-background);
11
- box-shadow: 0 20px 28px 0 rgba(0, 20, 45, 0.08);
12
- transform: translateY(0);
13
- border-top: 1px solid transparent;
14
- transition: var(--dx-g-transition-transform-2x),
15
- var(--dx-g-transition-hue-1x);
16
- z-index: 1000;
17
- }
18
-
19
- .nav-menu.has-scrollshadow {
20
- border-color: var(--dx-c-color-border-2);
21
- }
22
-
23
- .nav-menu ul {
24
- display: flex;
25
- flex-direction: column;
26
- width: 100%;
27
- }
28
-
29
- .nav-menu_item {
30
- display: flex;
31
- flex-direction: column;
32
- }
33
-
34
- .nav-menu_item,
35
- .nav-menu_item_cta-main {
36
- transition: var(--dx-g-transition-hue-1x);
37
- border-radius: var(--dx-g-spacing-xs);
38
- }
39
-
40
- .nav-menu_item_cta-main {
41
- justify-content: space-between;
42
- font-family: var(--dx-g-font-display);
43
- font-size: var(--dx-g-text-base);
44
- color: var(--dx-g-blue-vibrant-20);
45
- line-height: 20px;
46
- padding: var(--dx-g-spacing-sm) var(--dx-g-spacing-md);
47
- width: 100%;
48
- display: flex;
49
- align-items: center;
50
- }
51
-
52
- .nav-menu ul > .nav-menu_item:not(:last-of-type) {
53
- margin-bottom: var(--dx-g-spacing-xs);
54
- }
55
-
56
- .nav-menu_item.state-open {
57
- background: var(--dx-c-button-color-background-inactive);
58
- }
59
-
60
- .nav-menu_item_cta-main:not(.state-active):hover {
61
- background: var(--dx-c-button-color-background-inactive);
62
- }
63
-
64
- .nav-menu_item.state-open .nav-menu_item_cta-main:hover {
65
- background: var(--dx-c-button-color-background-inactive-hover);
66
- }
67
-
68
- .nav-menu_item.state-open .chevrondown {
69
- transform: rotateX(180deg);
70
- }
71
-
72
- .nav-menu_item_cta-options {
73
- position: relative;
74
- display: none;
75
- flex-direction: column;
76
- width: 100%;
77
- }
78
-
79
- .nav-menu_item.state-open > .nav-menu_item_cta-options {
80
- display: flex;
81
- }
82
-
83
- .nav-menu_item_cta {
84
- height: var(--dx-g-spacing-3xl);
85
- }
86
-
87
- .nav-menu_item_cta-main.state-active {
88
- background: var(--dx-c-button-color-background-active);
89
- color: var(--dx-c-color);
90
- }
91
-
92
- .nav-menu_item_cta-main > span {
93
- transform: translateY(3px); /* ghost padding */
94
- }
95
-
96
- .nav-menu_item_cta-sub {
97
- --dx-c-button-secondary-color-hover: var(
98
- --dx-c-button-color-background-inactive-hover
99
- );
100
-
101
- font-size: var(--dx-g-text-sm);
102
- width: 100%;
103
- }
104
-
105
- .nav-menu_item_cta-sub::part(container) {
106
- justify-content: flex-start;
107
- }
108
-
109
- .nav-menu_item_cta-sub.state-active {
110
- text-decoration: underline;
111
- }
112
-
113
- .nav-menu_item > .nav-menu_item_cta-options:not(:first-of-type) {
114
- padding-top: var(--dx-g-spacing-xs);
115
- margin-top: var(--dx-g-spacing-xs);
116
- }
117
-
118
- .nav-menu_item > .nav-menu_item_cta-options:not(:first-of-type)::after {
119
- content: "";
120
- position: absolute;
121
- top: 0;
122
- left: var(--dx-g-spacing-md);
123
- width: calc(100% - var(--dx-g-spacing-xl));
124
- height: 1px;
125
- background: var(--dx-c-color-border-2);
126
- }
127
-
128
- .backdrop {
129
- position: fixed;
130
- top: 0;
131
- left: 0;
132
- height: 100vh;
133
- width: 100vw;
134
- z-index: -1;
135
- }
136
-
137
- .nav-menu.state-closed {
138
- opacity: 0;
139
- visibility: hidden;
140
- transform: translateY(-16px);
141
- pointer-events: none;
142
- }
@@ -1,56 +0,0 @@
1
- /* DESKTOP */
2
-
3
- .desktop_search-container {
4
- position: relative;
5
- display: flex;
6
- height: var(--dx-g-spacing-xl);
7
- font-size: var(--dx-g-text-sm);
8
- font-family: var(--dx-g-font-sans);
9
- color: var(--dx-g-gray-50);
10
- }
11
-
12
- .desktop_search-container dx-input {
13
- --dx-c-input-width: calc(
14
- var(--dx-c-header-search-width) - var(--toggle-width)
15
- );
16
- }
17
-
18
- /* MOBILE */
19
-
20
- .mobile_search-button {
21
- position: relative;
22
- z-index: 3;
23
- }
24
-
25
- .mobile_search-dropdown {
26
- --dx-c-popover-border-radius: 0;
27
- --dx-c-popover-border: none;
28
- }
29
-
30
- .mobile_search-input {
31
- position: absolute;
32
- top: 0;
33
- left: 0;
34
- height: 100%;
35
- width: 100%;
36
- transition: var(--dx-g-transition-hue-1x);
37
- opacity: 0;
38
- pointer-events: none;
39
-
40
- --dx-c-input-border: none;
41
- --dx-c-input-border-radius: 0;
42
- --dx-c-input-border-active: none;
43
- --dx-c-input-icon-color: var(--dx-g-blue-vibrant-20);
44
- --dx-c-input-padding: 0 var(--dx-g-spacing-4xl) 0 var(--dx-g-spacing-md);
45
- --dx-c-input-background: var(--dx-g-brand-current-color-background-2);
46
- --dx-c-input-background-active: var(
47
- --dx-g-brand-current-color-background-2
48
- );
49
- --dx-c-input-height: 100% !important;
50
- --dx-c-input-width: 100%;
51
- }
52
-
53
- .mobile_search-input.state-open {
54
- opacity: 1;
55
- pointer-events: auto;
56
- }
@@ -1,3 +0,0 @@
1
- time {
2
- font-family: var(--dx-g-font-display);
3
- }