@salesforcedevs/dx-components 1.3.84 → 1.3.86
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/package.json +2 -2
- package/src/modules/dx/cardCallout/cardCallout.css +2 -2
- package/src/modules/dx/cardCallout/cardCallout.html +1 -1
- package/src/modules/dx/cardCallout/cardCallout.ts +0 -7
- package/src/modules/dx/cardDocs/cardDocs.css +3 -3
- package/src/modules/dx/cardDocs/cardDocs.ts +4 -4
- package/src/modules/dx/cardEvent/cardEvent.css +1 -6
- package/src/modules/dx/cardEvent/cardEvent.html +2 -2
- package/src/modules/dx/cardNews/cardNews.css +5 -5
- package/src/modules/dx/cardNews/cardNews.html +1 -1
- package/src/modules/dx/cardNews/cardNews.ts +5 -6
- package/src/modules/dx/cardTitle/cardTitle.css +2 -2
- package/src/modules/dx/cardTitle/cardTitle.html +1 -1
- package/src/modules/dx/cardTrialExpanded/cardTrialExpanded.ts +1 -1
- package/src/modules/dx/codeBlock/codeBlock.html +1 -1
- package/src/modules/dx/emptyState/emptyState.html +1 -1
- package/src/modules/dx/feature/feature.html +2 -2
- package/src/modules/dx/feature/feature.ts +1 -1
- package/src/modules/dx/featuredContentHeader/featuredContentHeader.css +3 -3
- package/src/modules/dx/featuredContentHeader/featuredContentHeader.html +4 -4
- package/src/modules/dx/featuresList/featuresList.css +2 -2
- package/src/modules/dx/featuresList/featuresList.html +2 -2
- package/src/modules/dx/footer/footer.html +1 -1
- package/src/modules/dx/footer/footer.ts +3 -1
- package/src/modules/dx/footerOption/footerOption.ts +2 -2
- package/src/modules/dx/groupText/groupText.css +3 -7
- package/src/modules/dx/groupText/groupText.html +2 -2
- package/src/modules/dx/groupText/groupText.ts +3 -12
- package/src/modules/dx/header/header.html +1 -1
- package/src/modules/dx/logo/logo.html +1 -1
- package/src/modules/dx/mainContentHeader/mainContentHeader.html +2 -2
- package/src/modules/dx/mainContentHeader/mainContentHeader.ts +4 -4
- package/src/modules/dx/podcastHost/podcastHost.html +1 -1
- package/src/modules/dx/section/section.css +1 -1
- package/src/modules/dx/section/section.html +1 -1
- package/src/modules/dx/section/section.ts +1 -1
- package/src/modules/dx/sidebar/sidebar.html +2 -2
- package/src/modules/dx/sidebar/sidebar.ts +9 -20
- package/src/modules/dx/sidebarOld/sidebarOld.html +1 -1
- package/src/modules/dx/sidebarOld/sidebarOld.ts +2 -11
- package/src/modules/dx/toc/toc.css +1 -1
- package/src/modules/dx/toc/toc.ts +3 -3
- package/src/modules/dx/treeItem/treeItem.html +0 -1
- package/src/modules/dx/treeItem/treeItem.ts +29 -3
- package/src/modules/dxBaseElements/headerBase/headerBase.ts +2 -2
- package/src/modules/dxHelpers/card/card.css +2 -6
- package/src/modules/dxHelpers/text/text.css +39 -41
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@salesforcedevs/dx-components",
|
|
3
|
-
"version": "1.3.
|
|
3
|
+
"version": "1.3.86",
|
|
4
4
|
"description": "DX Lightning web components",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"engines": {
|
|
@@ -40,5 +40,5 @@
|
|
|
40
40
|
"eventsourcemock": "^2.0.0",
|
|
41
41
|
"luxon": "^3.1.0"
|
|
42
42
|
},
|
|
43
|
-
"gitHead": "
|
|
43
|
+
"gitHead": "61133211828234c195a168b122293e153a40617b"
|
|
44
44
|
}
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
|
|
17
17
|
/* title */
|
|
18
18
|
|
|
19
|
-
.dx-text-
|
|
19
|
+
.dx-text-display-4 {
|
|
20
20
|
color: inherit;
|
|
21
21
|
margin-bottom: var(--dx-g-spacing-3xl);
|
|
22
22
|
overflow-wrap: hyphenate-word;
|
|
@@ -51,7 +51,7 @@ dx-icon::part(svg) {
|
|
|
51
51
|
}
|
|
52
52
|
|
|
53
53
|
@media screen and (max-width: 1024px) {
|
|
54
|
-
.dx-text-
|
|
54
|
+
.dx-text-display-4 {
|
|
55
55
|
margin-bottom: var(--dx-g-spacing-xl);
|
|
56
56
|
}
|
|
57
57
|
}
|
|
@@ -30,13 +30,6 @@ export default class CardCallout extends LightningElement {
|
|
|
30
30
|
}
|
|
31
31
|
|
|
32
32
|
private sendGtm(e: PointerEvent) {
|
|
33
|
-
track(e.currentTarget, ANALYTICS_EVENT_NAME, {
|
|
34
|
-
clickURL: this.href,
|
|
35
|
-
itemTitle: this.title,
|
|
36
|
-
clickText: this.label,
|
|
37
|
-
elementType: "card callout",
|
|
38
|
-
destinationType: "internal"
|
|
39
|
-
});
|
|
40
33
|
track(e.currentTarget!, "custEv_ctaLinkClick", {
|
|
41
34
|
click_text: this.title,
|
|
42
35
|
click_url: this.href,
|
|
@@ -24,11 +24,11 @@
|
|
|
24
24
|
flex-grow: 1;
|
|
25
25
|
}
|
|
26
26
|
|
|
27
|
-
.dx-text-
|
|
27
|
+
.dx-text-display-8 dx-button {
|
|
28
28
|
margin-left: var(--dx-g-spacing-xs);
|
|
29
29
|
}
|
|
30
30
|
|
|
31
|
-
.dx-text-
|
|
31
|
+
.dx-text-display-6 {
|
|
32
32
|
position: relative;
|
|
33
33
|
-webkit-line-clamp: var(--dx-c-heading-max-lines);
|
|
34
34
|
-webkit-box-orient: vertical;
|
|
@@ -36,7 +36,7 @@
|
|
|
36
36
|
overflow: hidden;
|
|
37
37
|
}
|
|
38
38
|
|
|
39
|
-
.dx-text-
|
|
39
|
+
.dx-text-display-6 dx-icon {
|
|
40
40
|
display: inline-block;
|
|
41
41
|
transform: translateY(-3px);
|
|
42
42
|
}
|
|
@@ -33,17 +33,17 @@ export default class CardDocs extends LightningElement {
|
|
|
33
33
|
// @ts-ignore
|
|
34
34
|
const slot = e.target;
|
|
35
35
|
const elements = slot.assignedElements();
|
|
36
|
-
elements.forEach((slotElement) => {
|
|
36
|
+
elements.forEach((slotElement: any) => {
|
|
37
37
|
slotElement?.addEventListener("click", (event: Event) => {
|
|
38
38
|
track(event.currentTarget!, "custEv_cardClick", {
|
|
39
39
|
...payloadInnerButton,
|
|
40
|
-
element_title:
|
|
40
|
+
element_title: this.title,
|
|
41
41
|
click_text: slotElement.innerText,
|
|
42
42
|
click_url: slotElement.href
|
|
43
43
|
});
|
|
44
44
|
track(event.currentTarget!, "custEv_linkClick", {
|
|
45
45
|
...payloadInnerButton,
|
|
46
|
-
element_title:
|
|
46
|
+
element_title: this.title,
|
|
47
47
|
click_text: slotElement.innerText,
|
|
48
48
|
click_url: slotElement.href
|
|
49
49
|
});
|
|
@@ -67,7 +67,7 @@ export default class CardDocs extends LightningElement {
|
|
|
67
67
|
private handleTextClick(event: PointerEvent) {
|
|
68
68
|
const payloadCardTextInfo = {
|
|
69
69
|
click_text: this.body,
|
|
70
|
-
element_title: this.
|
|
70
|
+
element_title: this.title,
|
|
71
71
|
click_url: this.href,
|
|
72
72
|
element_type: "tile",
|
|
73
73
|
content_category: "cta"
|
|
@@ -20,12 +20,12 @@
|
|
|
20
20
|
if:true={featured}
|
|
21
21
|
>
|
|
22
22
|
<dx-formatted-date-time
|
|
23
|
-
class="dx-text-
|
|
23
|
+
class="dx-text-display-8 month"
|
|
24
24
|
value={startDatetime}
|
|
25
25
|
month="short"
|
|
26
26
|
></dx-formatted-date-time>
|
|
27
27
|
<dx-formatted-date-time
|
|
28
|
-
class="dx-text-
|
|
28
|
+
class="dx-text-display-1b day"
|
|
29
29
|
value={startDatetime}
|
|
30
30
|
day="2-digit"
|
|
31
31
|
></dx-formatted-date-time>
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
z-index: 1;
|
|
25
25
|
}
|
|
26
26
|
|
|
27
|
-
.dx-text-
|
|
27
|
+
.dx-text-display-4 {
|
|
28
28
|
margin: 4px 0 4px 0;
|
|
29
29
|
color: inherit;
|
|
30
30
|
}
|
|
@@ -44,7 +44,7 @@ img {
|
|
|
44
44
|
margin: 0;
|
|
45
45
|
}
|
|
46
46
|
|
|
47
|
-
.dx-card-size-large .dx-text-
|
|
47
|
+
.dx-card-size-large .dx-text-display-4 {
|
|
48
48
|
font-size: 30px;
|
|
49
49
|
letter-spacing: 0.3px;
|
|
50
50
|
line-height: 40px;
|
|
@@ -81,7 +81,7 @@ img {
|
|
|
81
81
|
box-shadow: var(--dx-g-box-shadow-sm);
|
|
82
82
|
}
|
|
83
83
|
|
|
84
|
-
.dx-text-
|
|
84
|
+
.dx-text-display-4 {
|
|
85
85
|
letter-spacing: 0.1px;
|
|
86
86
|
}
|
|
87
87
|
|
|
@@ -114,7 +114,7 @@ img {
|
|
|
114
114
|
max-width: 50%;
|
|
115
115
|
}
|
|
116
116
|
|
|
117
|
-
.dx-card-size-normal .dx-text-
|
|
117
|
+
.dx-card-size-normal .dx-text-display-4 {
|
|
118
118
|
font-size: var(--dx-g-text-xl);
|
|
119
119
|
line-height: 28px;
|
|
120
120
|
}
|
|
@@ -128,7 +128,7 @@ img {
|
|
|
128
128
|
margin: 14px 0 -2px 0;
|
|
129
129
|
}
|
|
130
130
|
|
|
131
|
-
.dx-card-size-large .dx-text-
|
|
131
|
+
.dx-card-size-large .dx-text-display-4 {
|
|
132
132
|
font-size: var(--dx-g-text-2xl);
|
|
133
133
|
line-height: 40px;
|
|
134
134
|
letter-spacing: 0.6px;
|
|
@@ -66,12 +66,11 @@ export default class CardNews extends LightningElement {
|
|
|
66
66
|
|
|
67
67
|
private trackClick(e: Event) {
|
|
68
68
|
const payload = {
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
clickUrl: this.href
|
|
69
|
+
click_text: this.buttonText,
|
|
70
|
+
click_url: this.href,
|
|
71
|
+
element_title: this.title,
|
|
72
|
+
element_type: "link",
|
|
73
|
+
content_category: "cta"
|
|
75
74
|
};
|
|
76
75
|
track(e.currentTarget!, "custEv_ctaLinkClick", payload);
|
|
77
76
|
track(e.currentTarget!, "custEv_linkClick", payload);
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
--dx-c-card-title-icon-size: 22px;
|
|
10
10
|
}
|
|
11
11
|
|
|
12
|
-
h3.dx-text-
|
|
12
|
+
h3.dx-text-display-6 {
|
|
13
13
|
color: var(--dx-c-card-title-color);
|
|
14
14
|
transition: var(--dx-g-transition-hue-1x);
|
|
15
15
|
font-size: var(--dx-c-card-title-font-size);
|
|
@@ -32,7 +32,7 @@ dx-icon {
|
|
|
32
32
|
}
|
|
33
33
|
|
|
34
34
|
@media screen and (max-width: 1024px) {
|
|
35
|
-
.dx-text-
|
|
35
|
+
.dx-text-display-6 {
|
|
36
36
|
font-size: 20px;
|
|
37
37
|
line-height: 24px;
|
|
38
38
|
}
|
|
@@ -72,7 +72,7 @@ export default class CardTrial extends LightningElement {
|
|
|
72
72
|
if (this.href.includes("signup")) {
|
|
73
73
|
const payload = {
|
|
74
74
|
click_text: this.buttonCta,
|
|
75
|
-
element_title:
|
|
75
|
+
element_title: this.title,
|
|
76
76
|
element_type: "card",
|
|
77
77
|
click_url: this.href,
|
|
78
78
|
content_category: "cta"
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
<div class={containerClassName} part="container">
|
|
3
3
|
<img src={imageAssetPath} alt="Mountains" />
|
|
4
4
|
<div class="text">
|
|
5
|
-
<h3 class="title dx-text-
|
|
5
|
+
<h3 class="title dx-text-display-4">{title}</h3>
|
|
6
6
|
<p class="subtitle dx-text-body-2" if:true={subtitle}>{subtitle}</p>
|
|
7
7
|
</div>
|
|
8
8
|
</div>
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<section class={sectionClass}>
|
|
3
3
|
<div class="description">
|
|
4
|
-
<h2 if:true={hasLabel} class="dx-text-
|
|
5
|
-
<h3 class="dx-text-
|
|
4
|
+
<h2 if:true={hasLabel} class="dx-text-display-8 label">{label}</h2>
|
|
5
|
+
<h3 class="dx-text-display-4">{title}</h3>
|
|
6
6
|
<div class="body dx-text-body-2">
|
|
7
7
|
<slot></slot>
|
|
8
8
|
</div>
|
|
@@ -36,7 +36,7 @@ export default class Feature extends LightningElement {
|
|
|
36
36
|
handleClick(event: Event) {
|
|
37
37
|
const payload = {
|
|
38
38
|
click_text: this.buttonLabel,
|
|
39
|
-
element_title:
|
|
39
|
+
element_title: this.title,
|
|
40
40
|
click_url: this.buttonHref,
|
|
41
41
|
element_type: "button",
|
|
42
42
|
content_category: "cta"
|
|
@@ -369,7 +369,7 @@ a.image-container > img {
|
|
|
369
369
|
padding-bottom: var(--dx-g-spacing-lg);
|
|
370
370
|
}
|
|
371
371
|
|
|
372
|
-
.dx-text-
|
|
372
|
+
.dx-text-display-2 {
|
|
373
373
|
padding-bottom: var(--dx-g-spacing-sm);
|
|
374
374
|
display: block;
|
|
375
375
|
}
|
|
@@ -480,11 +480,11 @@ dx-image-and-label {
|
|
|
480
480
|
margin-bottom: calc(var(--dx-c-bottom-image-height) * -0.72);
|
|
481
481
|
}
|
|
482
482
|
|
|
483
|
-
.dx-text-
|
|
483
|
+
.dx-text-display-6 {
|
|
484
484
|
font-size: var(--dx-g-text-xl);
|
|
485
485
|
}
|
|
486
486
|
|
|
487
|
-
.dx-text-
|
|
487
|
+
.dx-text-display-2 {
|
|
488
488
|
font-size: var(--dx-g-text-2xl);
|
|
489
489
|
line-height: var(--dx-g-spacing-2xl);
|
|
490
490
|
}
|
|
@@ -2,14 +2,14 @@
|
|
|
2
2
|
<div class={classname} part="container" style={style}>
|
|
3
3
|
<div class="container-layout">
|
|
4
4
|
<template if:true={labelAsPrimaryHeading}>
|
|
5
|
-
<h1 if:true={label} class="label dx-text-
|
|
5
|
+
<h1 if:true={label} class="label dx-text-display-6">{label}</h1>
|
|
6
6
|
</template>
|
|
7
7
|
<template if:false={labelAsPrimaryHeading}>
|
|
8
|
-
<p if:true={label} class="label dx-text-
|
|
8
|
+
<p if:true={label} class="label dx-text-display-6">{label}</p>
|
|
9
9
|
</template>
|
|
10
10
|
<div class="featured-content-main-content">
|
|
11
11
|
<template if:false={labelAsPrimaryHeading}>
|
|
12
|
-
<h1 class="title dx-text-
|
|
12
|
+
<h1 class="title dx-text-display-2">
|
|
13
13
|
<a
|
|
14
14
|
class="title-link"
|
|
15
15
|
if:true={href}
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
</h1>
|
|
25
25
|
</template>
|
|
26
26
|
<template if:true={labelAsPrimaryHeading}>
|
|
27
|
-
<h2 class="title dx-text-
|
|
27
|
+
<h2 class="title dx-text-display-2">
|
|
28
28
|
<a
|
|
29
29
|
class="title-link"
|
|
30
30
|
if:true={href}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div class="container">
|
|
3
|
-
<h2 if:true={title} class="dx-text-
|
|
3
|
+
<h2 if:true={title} class="dx-text-display-4">{title}</h2>
|
|
4
4
|
<ul>
|
|
5
5
|
<template for:each={options} for:item="option">
|
|
6
6
|
<li key={option.id} class="option">
|
|
7
|
-
<div class="dx-text-
|
|
7
|
+
<div class="dx-text-display-8">
|
|
8
8
|
<dx-icon
|
|
9
9
|
class="icon"
|
|
10
10
|
size="small"
|
|
@@ -104,7 +104,9 @@ export default class Footer extends LightningElement {
|
|
|
104
104
|
click_text: this.inputSubmitLabel,
|
|
105
105
|
click_url: PATH,
|
|
106
106
|
element_type: "button",
|
|
107
|
-
element_title:
|
|
107
|
+
element_title: this.showSmallSignup
|
|
108
|
+
? "Get Developer Updates"
|
|
109
|
+
: "get the latest developer updates.",
|
|
108
110
|
content_category: "cta"
|
|
109
111
|
});
|
|
110
112
|
|
|
@@ -13,13 +13,13 @@ export default class FooterOption extends LightningElement {
|
|
|
13
13
|
click_text: this.label || undefined,
|
|
14
14
|
click_url: this.href || undefined,
|
|
15
15
|
nav_item: this.label || undefined,
|
|
16
|
-
nav_level: "
|
|
16
|
+
nav_level: "1",
|
|
17
17
|
element_type: "link",
|
|
18
18
|
nav_type: "footer"
|
|
19
19
|
});
|
|
20
20
|
track(e.currentTarget!, "custEv_linkClick", {
|
|
21
21
|
click_text: this.label,
|
|
22
|
-
element_title: this.
|
|
22
|
+
element_title: this.generalLabel,
|
|
23
23
|
click_url: this.href,
|
|
24
24
|
element_type: "link",
|
|
25
25
|
content_category: "cta"
|
|
@@ -76,12 +76,12 @@
|
|
|
76
76
|
/* breakpoints tablet */
|
|
77
77
|
|
|
78
78
|
@media screen and (max-width: 1024px) {
|
|
79
|
-
.title.dx-text-
|
|
79
|
+
.title.dx-text-display-2 {
|
|
80
80
|
font-size: var(--dx-g-text-3xl);
|
|
81
81
|
line-height: var(--dx-g-spacing-2xl);
|
|
82
82
|
}
|
|
83
83
|
|
|
84
|
-
.subtitle.dx-text-
|
|
84
|
+
.subtitle.dx-text-display-8 {
|
|
85
85
|
font-size: var(--dx-g-text-sm);
|
|
86
86
|
}
|
|
87
87
|
|
|
@@ -90,15 +90,11 @@
|
|
|
90
90
|
line-height: var(--dx-g-spacing-lg);
|
|
91
91
|
}
|
|
92
92
|
|
|
93
|
-
.title.dx-text-
|
|
93
|
+
.title.dx-text-display-4 {
|
|
94
94
|
font-size: var(--dx-g-text-2xl);
|
|
95
95
|
line-height: var(--dx-g-spacing-xl);
|
|
96
96
|
}
|
|
97
97
|
|
|
98
|
-
.subtitle.dx-text-heading-7 {
|
|
99
|
-
font-size: var(--dx-g-text-xs);
|
|
100
|
-
}
|
|
101
|
-
|
|
102
98
|
.body.dx-text-body-2 {
|
|
103
99
|
font-size: var(--dx-g-text-sm);
|
|
104
100
|
line-height: var(--dx-g-spacing-lg);
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div class={className}>
|
|
3
|
-
<span if:true={label} class="label dx-text-
|
|
3
|
+
<span if:true={label} class="label dx-text-display-8">{label}</span>
|
|
4
4
|
<div class={titleClassname} role="heading" aria-level={titleAriaLevel}>
|
|
5
5
|
{title}
|
|
6
6
|
</div>
|
|
7
|
-
<span class=
|
|
7
|
+
<span class="subtitle dx-text-display-8" if:true={hasSubtitle}>
|
|
8
8
|
<span if:true={owner}>{owner}</span>
|
|
9
9
|
<span if:true={attributionLink}>
|
|
10
10
|
By
|
|
@@ -11,13 +11,8 @@ const LARGE = "large";
|
|
|
11
11
|
const MEDIUM = "medium";
|
|
12
12
|
|
|
13
13
|
const titleClasses = {
|
|
14
|
-
[LARGE]: "dx-text-
|
|
15
|
-
[MEDIUM]: "dx-text-
|
|
16
|
-
};
|
|
17
|
-
|
|
18
|
-
const subtitleClasses = {
|
|
19
|
-
[LARGE]: "dx-text-heading-6",
|
|
20
|
-
[MEDIUM]: "dx-text-heading-7"
|
|
14
|
+
[LARGE]: "dx-text-display-2",
|
|
15
|
+
[MEDIUM]: "dx-text-display-4"
|
|
21
16
|
};
|
|
22
17
|
|
|
23
18
|
export default class GroupText extends LightningElement {
|
|
@@ -76,10 +71,6 @@ export default class GroupText extends LightningElement {
|
|
|
76
71
|
return cx("title", titleClasses[this.size]);
|
|
77
72
|
}
|
|
78
73
|
|
|
79
|
-
private get subtitleClassname() {
|
|
80
|
-
return cx("subtitle", subtitleClasses[this.size]);
|
|
81
|
-
}
|
|
82
|
-
|
|
83
74
|
private get hasButtonGroup(): boolean {
|
|
84
75
|
return !!(this.primaryLink || this.secondaryLink || this.tertiaryLink);
|
|
85
76
|
}
|
|
@@ -98,7 +89,7 @@ export default class GroupText extends LightningElement {
|
|
|
98
89
|
item_title: event.currentTarget.innerText,
|
|
99
90
|
click_url: event.currentTarget.href,
|
|
100
91
|
element_type: "button",
|
|
101
|
-
element_title:
|
|
92
|
+
element_title: this.title,
|
|
102
93
|
content_category: "cta"
|
|
103
94
|
});
|
|
104
95
|
}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div class="container" style={style}>
|
|
3
3
|
<div class={textStyle}>
|
|
4
|
-
<h1 class="heading dx-text-
|
|
4
|
+
<h1 class="heading dx-text-display-2">{title}</h1>
|
|
5
5
|
<span class="body dx-text-body-1">{body}</span>
|
|
6
|
-
<span if:true={subtitle} class="subtitle dx-text-
|
|
6
|
+
<span if:true={subtitle} class="subtitle dx-text-display-7">
|
|
7
7
|
{subtitle}
|
|
8
8
|
</span>
|
|
9
9
|
<div class="button-container">
|
|
@@ -41,12 +41,12 @@ export default class MainContentHeader extends LightningElement {
|
|
|
41
41
|
click_text: this.ctaLabel,
|
|
42
42
|
click_url: this.ctaHref,
|
|
43
43
|
element_type: "button",
|
|
44
|
-
element_title: this.
|
|
44
|
+
element_title: this.title,
|
|
45
45
|
content_category: "cta"
|
|
46
46
|
});
|
|
47
47
|
track(e.currentTarget!, "custEv_linkClick", {
|
|
48
48
|
click_text: this.ctaLabel,
|
|
49
|
-
element_title: this.
|
|
49
|
+
element_title: this.title,
|
|
50
50
|
click_url: this.ctaHref,
|
|
51
51
|
element_type: "link",
|
|
52
52
|
content_category: "cta"
|
|
@@ -60,12 +60,12 @@ export default class MainContentHeader extends LightningElement {
|
|
|
60
60
|
click_text: this.ctaLabelSecondary,
|
|
61
61
|
click_url: this.ctaHrefSecondary,
|
|
62
62
|
element_type: "button",
|
|
63
|
-
element_title: this.
|
|
63
|
+
element_title: this.title,
|
|
64
64
|
content_category: "cta"
|
|
65
65
|
});
|
|
66
66
|
track(e.currentTarget!, "custEv_linkClick", {
|
|
67
67
|
click_text: this.ctaLabelSecondary,
|
|
68
|
-
element_title: this.
|
|
68
|
+
element_title: this.title,
|
|
69
69
|
click_url: this.ctaHrefSecondary,
|
|
70
70
|
element_type: "link",
|
|
71
71
|
content_category: "cta"
|
|
@@ -61,7 +61,7 @@
|
|
|
61
61
|
max-width: 800px;
|
|
62
62
|
}
|
|
63
63
|
|
|
64
|
-
.dx-text-
|
|
64
|
+
.dx-text-display-custom {
|
|
65
65
|
color: var(--dx-c-section-heading-font-color, --dx-g-text-heading-color);
|
|
66
66
|
font-family: var(--dx-c-section-heading-font-family, --dx-g-font-display);
|
|
67
67
|
font-size: var(--dx-c-section-heading-font-size, --dx-g-text-3xl);
|
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
</svg>
|
|
28
28
|
|
|
29
29
|
<div part="text" class="text" if:true={hasText}>
|
|
30
|
-
<span class="label dx-text-
|
|
30
|
+
<span class="label dx-text-display-8" if:true={label}>{label}</span>
|
|
31
31
|
<h2 class={headingClassName} if:true={title}>{title}</h2>
|
|
32
32
|
<span class="subtitle dx-text-body-1" if:true={subtitle}>
|
|
33
33
|
{subtitle}
|
|
@@ -37,7 +37,7 @@ export default class Section extends LightningElement {
|
|
|
37
37
|
}
|
|
38
38
|
|
|
39
39
|
private get headingClassName() {
|
|
40
|
-
return cx("heading", `dx-text-
|
|
40
|
+
return cx("heading", `dx-text-display-${this.headingLevel}`);
|
|
41
41
|
}
|
|
42
42
|
|
|
43
43
|
private get hasText(): boolean {
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
></dx-button>
|
|
30
30
|
<div class="sidebar-header padding-horizontal">
|
|
31
31
|
<div class="header" if:false={mobile}>
|
|
32
|
-
<h2 class="dx-text-
|
|
32
|
+
<h2 class="dx-text-display-6 header-title">{header}</h2>
|
|
33
33
|
<slot name="header"></slot>
|
|
34
34
|
</div>
|
|
35
35
|
<div class="search">
|
|
@@ -43,7 +43,7 @@
|
|
|
43
43
|
></dx-sidebar-search>
|
|
44
44
|
</div>
|
|
45
45
|
<h2
|
|
46
|
-
class="results-heading dx-text-
|
|
46
|
+
class="results-heading dx-text-display-8"
|
|
47
47
|
if:true={showResultsHeading}
|
|
48
48
|
>
|
|
49
49
|
Results
|
|
@@ -1,18 +1,12 @@
|
|
|
1
1
|
import cx from "classnames";
|
|
2
2
|
import { api, track } from "lwc";
|
|
3
|
-
import {
|
|
4
|
-
TreeNode,
|
|
5
|
-
SidebarGtmAction,
|
|
6
|
-
SidebarSearchResult
|
|
7
|
-
} from "typings/custom";
|
|
8
|
-
import { track as trackAnalytics } from "dxUtils/analytics";
|
|
3
|
+
import { TreeNode, SidebarSearchResult } from "typings/custom";
|
|
9
4
|
import { getSidebarSearchParams } from "dxUtils/coveo";
|
|
10
5
|
import { toJson } from "dxUtils/normalizers";
|
|
11
6
|
import SidebarSearch from "dx/sidebarSearch";
|
|
12
7
|
import { SidebarBase } from "dxBaseElements/sidebarBase";
|
|
13
8
|
|
|
14
9
|
const MOBILE_SIZE_MATCH = "768px";
|
|
15
|
-
const TOGGLE_BUTTON_LABEL = "Toggle Sidebar";
|
|
16
10
|
|
|
17
11
|
export default class Sidebar extends SidebarBase {
|
|
18
12
|
@api coveoOrganizationId!: string;
|
|
@@ -51,9 +45,11 @@ export default class Sidebar extends SidebarBase {
|
|
|
51
45
|
|
|
52
46
|
@api
|
|
53
47
|
setInputValue(searchTerm: string) {
|
|
54
|
-
(
|
|
55
|
-
|
|
56
|
-
|
|
48
|
+
(
|
|
49
|
+
this.template.querySelector(
|
|
50
|
+
"dx-sidebar-search"
|
|
51
|
+
) as unknown as SidebarSearch
|
|
52
|
+
)?.setInputValue(searchTerm);
|
|
57
53
|
}
|
|
58
54
|
|
|
59
55
|
private expanded: boolean = true;
|
|
@@ -169,16 +165,9 @@ export default class Sidebar extends SidebarBase {
|
|
|
169
165
|
this._value = event.detail.name;
|
|
170
166
|
}
|
|
171
167
|
|
|
172
|
-
private onToggleClick(
|
|
168
|
+
private onToggleClick() {
|
|
173
169
|
this.expanded = !this.expanded;
|
|
174
170
|
this._toggleHovered = false;
|
|
175
|
-
const sideNavAction: SidebarGtmAction = this.expanded
|
|
176
|
-
? "expand"
|
|
177
|
-
: "collapse";
|
|
178
|
-
trackAnalytics(event.currentTarget!, "custEv_leftNavLinkClick", {
|
|
179
|
-
sideNavAction,
|
|
180
|
-
clickText: TOGGLE_BUTTON_LABEL
|
|
181
|
-
});
|
|
182
171
|
}
|
|
183
172
|
|
|
184
173
|
private onToggleMouseEnter() {
|
|
@@ -213,9 +202,9 @@ export default class Sidebar extends SidebarBase {
|
|
|
213
202
|
return;
|
|
214
203
|
}
|
|
215
204
|
|
|
216
|
-
const search =
|
|
205
|
+
const search = this.template.querySelector(
|
|
217
206
|
"dx-sidebar-search"
|
|
218
|
-
) as unknown
|
|
207
|
+
) as unknown as SidebarSearch;
|
|
219
208
|
|
|
220
209
|
if (
|
|
221
210
|
this.isNearBottomOfSearchResults &&
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
<template if:true={expanded}>
|
|
32
32
|
<div class="padding-horizontal">
|
|
33
33
|
<div class="header" if:false={mobile}>
|
|
34
|
-
<h2 class="dx-text-
|
|
34
|
+
<h2 class="dx-text-display-6 header-title">{header}</h2>
|
|
35
35
|
<slot name="header"></slot>
|
|
36
36
|
</div>
|
|
37
37
|
<div class="search">
|
|
@@ -1,14 +1,12 @@
|
|
|
1
1
|
import cx from "classnames";
|
|
2
|
-
import { track } from "dxUtils/analytics";
|
|
3
2
|
import { api } from "lwc";
|
|
4
3
|
|
|
5
|
-
import { TreeNode
|
|
4
|
+
import { TreeNode } from "typings/custom";
|
|
6
5
|
import { toJson } from "dxUtils/normalizers";
|
|
7
6
|
import { SidebarBase } from "dxBaseElements/sidebarBase";
|
|
8
7
|
|
|
9
8
|
const WAIT_TIME = 500;
|
|
10
9
|
const MOBILE_SIZE_MATCH = "768px";
|
|
11
|
-
const TOGGLE_BUTTON_LABEL = "Toggle Sidebar";
|
|
12
10
|
|
|
13
11
|
export default class Sidebar extends SidebarBase {
|
|
14
12
|
@api header: string = "";
|
|
@@ -97,16 +95,9 @@ export default class Sidebar extends SidebarBase {
|
|
|
97
95
|
this._value = event.detail.name;
|
|
98
96
|
}
|
|
99
97
|
|
|
100
|
-
private onToggleClick(
|
|
98
|
+
private onToggleClick() {
|
|
101
99
|
this.expanded = !this.expanded;
|
|
102
100
|
this._toggleHovered = false;
|
|
103
|
-
const sideNavAction: SidebarGtmAction = this.expanded
|
|
104
|
-
? "expand"
|
|
105
|
-
: "collapse";
|
|
106
|
-
track(event.currentTarget!, "custEv_leftNavLinkClick", {
|
|
107
|
-
sideNavAction,
|
|
108
|
-
clickText: TOGGLE_BUTTON_LABEL
|
|
109
|
-
});
|
|
110
101
|
}
|
|
111
102
|
|
|
112
103
|
private onToggleMouseEnter() {
|
|
@@ -58,7 +58,7 @@ export default class Toc extends LightningElement {
|
|
|
58
58
|
|
|
59
59
|
private get titleClassName() {
|
|
60
60
|
return cx(
|
|
61
|
-
"dx-text-
|
|
61
|
+
"dx-text-display-8 toc_title",
|
|
62
62
|
!this.showContent && "state-hide-content"
|
|
63
63
|
);
|
|
64
64
|
}
|
|
@@ -79,7 +79,7 @@ export default class Toc extends LightningElement {
|
|
|
79
79
|
click_text: text,
|
|
80
80
|
clickAction: "click",
|
|
81
81
|
click_url: href,
|
|
82
|
-
element_title:
|
|
82
|
+
element_title: this.title,
|
|
83
83
|
element_type: "link",
|
|
84
84
|
content_category: "cta"
|
|
85
85
|
});
|
|
@@ -99,7 +99,7 @@ export default class Toc extends LightningElement {
|
|
|
99
99
|
click_text: this.toggleButtonAriaLabel,
|
|
100
100
|
clickAction: action,
|
|
101
101
|
click_url: "",
|
|
102
|
-
element_title: this.
|
|
102
|
+
element_title: this.title,
|
|
103
103
|
element_type: "button",
|
|
104
104
|
content_category: "cta"
|
|
105
105
|
});
|
|
@@ -8,7 +8,6 @@ const DEFAULT_TARGET = "_self";
|
|
|
8
8
|
export default class TreeItem extends LightningElement {
|
|
9
9
|
@api selectedKey?: string;
|
|
10
10
|
@api isRoot: boolean = false;
|
|
11
|
-
@api parentName?: string = "";
|
|
12
11
|
|
|
13
12
|
@api
|
|
14
13
|
public get treeNode() {
|
|
@@ -24,6 +23,7 @@ export default class TreeItem extends LightningElement {
|
|
|
24
23
|
private _treeNode!: InternalTreeNode;
|
|
25
24
|
private isExpanded: boolean = false;
|
|
26
25
|
private isChildrenLoading: boolean = false;
|
|
26
|
+
private rootParentLabel: string = "";
|
|
27
27
|
|
|
28
28
|
private get isSelected(): boolean {
|
|
29
29
|
return this._treeNode.key === this.selectedKey;
|
|
@@ -49,6 +49,32 @@ export default class TreeItem extends LightningElement {
|
|
|
49
49
|
return this.isExpanded && this.hasChildren;
|
|
50
50
|
}
|
|
51
51
|
|
|
52
|
+
private get treeLabels(): string {
|
|
53
|
+
let parentEl = this.template
|
|
54
|
+
.querySelector("dx-tree-tile")
|
|
55
|
+
?.getRootNode().host;
|
|
56
|
+
|
|
57
|
+
if (!parentEl) {
|
|
58
|
+
return "";
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
const parentLabels = [];
|
|
62
|
+
|
|
63
|
+
while (parentEl) {
|
|
64
|
+
parentEl = parentEl?.getRootNode()?.host;
|
|
65
|
+
|
|
66
|
+
if (parentEl && parentEl.treeNode) {
|
|
67
|
+
parentLabels.push(parentEl.treeNode.label);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
if (parentEl?.isRoot) {
|
|
72
|
+
this.rootParentLabel = parentEl.treeNode.label;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
return `${parentLabels.reverse().join(":")}:${this.treeNode.label}`;
|
|
76
|
+
}
|
|
77
|
+
|
|
52
78
|
private get href(): string | undefined {
|
|
53
79
|
return (
|
|
54
80
|
(this._treeNode.link && this._treeNode.link.href) ||
|
|
@@ -150,14 +176,14 @@ export default class TreeItem extends LightningElement {
|
|
|
150
176
|
click_text: this._treeNode.label,
|
|
151
177
|
click_url: this.href,
|
|
152
178
|
nav_level: this._treeNode.level + 1,
|
|
153
|
-
nav_item:
|
|
179
|
+
nav_item: this.treeLabels,
|
|
154
180
|
nav_type: "left nav bar",
|
|
155
181
|
element_type: "link"
|
|
156
182
|
});
|
|
157
183
|
|
|
158
184
|
track(event.currentTarget!, "custEv_linkClick", {
|
|
159
185
|
click_text: this._treeNode.label,
|
|
160
|
-
element_title: this.
|
|
186
|
+
element_title: this.rootParentLabel,
|
|
161
187
|
click_url: this.href,
|
|
162
188
|
element_type: "link",
|
|
163
189
|
content_category: "cta"
|
|
@@ -22,7 +22,6 @@ const VALID_BRANDS = [
|
|
|
22
22
|
|
|
23
23
|
export const ANALYTICS_INFO = {
|
|
24
24
|
click_text: "browse trials",
|
|
25
|
-
element_title: "browse trials",
|
|
26
25
|
element_type: "button",
|
|
27
26
|
content_category: "cta"
|
|
28
27
|
};
|
|
@@ -204,7 +203,8 @@ export abstract class HeaderBase extends LightningElement {
|
|
|
204
203
|
private handleSignUpClick(e: PointerEvent) {
|
|
205
204
|
const payload = {
|
|
206
205
|
...ANALYTICS_INFO,
|
|
207
|
-
click_url: this.signupLink
|
|
206
|
+
click_url: this.signupLink,
|
|
207
|
+
element_title: this.title
|
|
208
208
|
};
|
|
209
209
|
|
|
210
210
|
track(e.currentTarget!, "custEv_browseTrialsClick", payload);
|
|
@@ -246,16 +246,12 @@ a.dx-card-base:hover dx-card-title {
|
|
|
246
246
|
line-height: 16px;
|
|
247
247
|
}
|
|
248
248
|
|
|
249
|
-
.dx-text-
|
|
249
|
+
.dx-text-display-4:not(.static-font) {
|
|
250
250
|
font-size: 24px;
|
|
251
251
|
line-height: 28px;
|
|
252
252
|
}
|
|
253
253
|
|
|
254
|
-
.dx-text-
|
|
255
|
-
font-size: 12px;
|
|
256
|
-
}
|
|
257
|
-
|
|
258
|
-
.dx-text-heading-6:not(.static-font) {
|
|
254
|
+
.dx-text-display-8:not(.static-font) {
|
|
259
255
|
font-size: var(--dx-g-text-sm);
|
|
260
256
|
}
|
|
261
257
|
}
|
|
@@ -1,52 +1,68 @@
|
|
|
1
|
-
|
|
1
|
+
/* WES Display 1 */
|
|
2
|
+
.dx-text-display-1 {
|
|
2
3
|
color: var(--dx-g-text-heading-color);
|
|
3
4
|
font-family: var(--dx-g-font-display);
|
|
4
|
-
font-size:
|
|
5
|
-
letter-spacing: -
|
|
5
|
+
font-size: var(--dx-g-text-6xl);
|
|
6
|
+
letter-spacing: -1.4px;
|
|
7
|
+
line-height: 88px;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
/* NO WES EQUIVALENT */
|
|
11
|
+
.dx-text-display-1b {
|
|
12
|
+
color: var(--dx-g-text-heading-color);
|
|
13
|
+
font-family: var(--dx-g-font-display);
|
|
14
|
+
font-size: 64px;
|
|
15
|
+
letter-spacing: -1.4px;
|
|
6
16
|
line-height: 64px;
|
|
7
17
|
}
|
|
8
18
|
|
|
9
|
-
|
|
19
|
+
/* WES Display 2 */
|
|
20
|
+
.dx-text-display-2 {
|
|
10
21
|
color: var(--dx-g-text-heading-color);
|
|
11
22
|
font-family: var(--dx-g-font-display);
|
|
12
23
|
font-size: var(--dx-g-text-5xl);
|
|
13
24
|
letter-spacing: -0.6px;
|
|
14
|
-
line-height:
|
|
25
|
+
line-height: 64px;
|
|
15
26
|
}
|
|
16
27
|
|
|
17
|
-
|
|
28
|
+
/* WES Display 3 */
|
|
29
|
+
.dx-text-display-3 {
|
|
18
30
|
color: var(--dx-g-text-heading-color);
|
|
19
31
|
font-family: var(--dx-g-font-display);
|
|
20
32
|
font-size: var(--dx-g-text-4xl);
|
|
21
|
-
letter-spacing: -0.
|
|
33
|
+
letter-spacing: -0.5px;
|
|
22
34
|
line-height: 56px;
|
|
23
35
|
}
|
|
24
36
|
|
|
25
|
-
|
|
37
|
+
/* WES Display 4 */
|
|
38
|
+
.dx-text-display-4 {
|
|
26
39
|
color: var(--dx-g-text-heading-color);
|
|
27
40
|
font-family: var(--dx-g-font-display);
|
|
28
41
|
font-size: var(--dx-g-text-3xl);
|
|
29
|
-
letter-spacing: -0.
|
|
30
|
-
line-height:
|
|
42
|
+
letter-spacing: -0.3px;
|
|
43
|
+
line-height: 48px;
|
|
31
44
|
}
|
|
32
45
|
|
|
33
|
-
|
|
46
|
+
/* Display 5 */
|
|
47
|
+
.dx-text-display-5 {
|
|
34
48
|
color: var(--dx-g-text-heading-color);
|
|
35
49
|
font-family: var(--dx-g-font-display);
|
|
36
50
|
font-size: var(--dx-g-text-2xl);
|
|
37
|
-
letter-spacing: -0.
|
|
51
|
+
letter-spacing: -0.1px;
|
|
38
52
|
line-height: 40px;
|
|
39
53
|
}
|
|
40
54
|
|
|
41
|
-
|
|
55
|
+
/* Display 6 */
|
|
56
|
+
.dx-text-display-6 {
|
|
42
57
|
color: var(--dx-g-text-heading-color);
|
|
43
58
|
font-family: var(--dx-g-font-display);
|
|
44
59
|
font-size: var(--dx-g-text-xl);
|
|
45
60
|
letter-spacing: -0.1px;
|
|
46
|
-
line-height:
|
|
61
|
+
line-height: 32px;
|
|
47
62
|
}
|
|
48
63
|
|
|
49
|
-
|
|
64
|
+
/* Display 7 */
|
|
65
|
+
.dx-text-display-7 {
|
|
50
66
|
color: var(--dx-g-text-heading-color);
|
|
51
67
|
font-family: var(--dx-g-font-display);
|
|
52
68
|
font-size: var(--dx-g-text-lg);
|
|
@@ -54,45 +70,25 @@
|
|
|
54
70
|
line-height: 28px;
|
|
55
71
|
}
|
|
56
72
|
|
|
57
|
-
|
|
73
|
+
/* Display 8 */
|
|
74
|
+
.dx-text-display-8 {
|
|
58
75
|
color: var(--dx-g-text-heading-color);
|
|
59
76
|
font-family: var(--dx-g-font-display);
|
|
60
|
-
font-size:
|
|
77
|
+
font-size: var(--dx-g-text-base);
|
|
61
78
|
letter-spacing: -0.1px;
|
|
62
79
|
line-height: 24px;
|
|
63
80
|
}
|
|
64
81
|
|
|
65
|
-
|
|
66
|
-
color: var(--dx-g-text-heading-color);
|
|
67
|
-
font-family: var(--dx-g-font-display);
|
|
68
|
-
font-size: var(--dx-g-text-base);
|
|
69
|
-
letter-spacing: 0;
|
|
70
|
-
line-height: 20px;
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
.dx-text-heading-7 {
|
|
74
|
-
color: var(--dx-g-text-heading-color);
|
|
75
|
-
font-family: var(--dx-g-font-display);
|
|
76
|
-
font-size: var(--dx-g-text-sm);
|
|
77
|
-
letter-spacing: 0;
|
|
78
|
-
line-height: 18px;
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
.dx-text-heading-alt-1 {
|
|
82
|
-
color: var(--dx-g-text-label-color);
|
|
83
|
-
font-family: var(--dx-g-font-sans);
|
|
84
|
-
font-size: var(--slds-text-lg);
|
|
85
|
-
line-height: 25px;
|
|
86
|
-
}
|
|
87
|
-
|
|
82
|
+
/* Body 1 */
|
|
88
83
|
.dx-text-body-1 {
|
|
89
84
|
color: var(--dx-g-text-body-color);
|
|
90
85
|
font-family: var(--dx-g-font-sans);
|
|
91
86
|
font-size: var(--dx-g-text-lg);
|
|
92
87
|
letter-spacing: 0;
|
|
93
|
-
line-height:
|
|
88
|
+
line-height: 30px;
|
|
94
89
|
}
|
|
95
90
|
|
|
91
|
+
/* Body 2 */
|
|
96
92
|
.dx-text-body-2 {
|
|
97
93
|
color: var(--dx-g-text-body-color);
|
|
98
94
|
font-family: var(--dx-g-font-sans);
|
|
@@ -101,6 +97,7 @@
|
|
|
101
97
|
line-height: 24px;
|
|
102
98
|
}
|
|
103
99
|
|
|
100
|
+
/* Body 3 */
|
|
104
101
|
.dx-text-body-3 {
|
|
105
102
|
color: var(--dx-g-text-body-color);
|
|
106
103
|
font-family: var(--dx-g-font-sans);
|
|
@@ -109,6 +106,7 @@
|
|
|
109
106
|
line-height: 20px;
|
|
110
107
|
}
|
|
111
108
|
|
|
109
|
+
/* Body Caption */
|
|
112
110
|
.dx-text-body-4 {
|
|
113
111
|
color: var(--dx-g-text-body-color);
|
|
114
112
|
font-family: var(--dx-g-font-sans);
|