@salesforcedevs/dx-components 1.3.206-alpha.10 → 1.3.206-alpha.12
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
CHANGED
|
@@ -47,8 +47,8 @@ const resultsTemplatesInnerHtml = `
|
|
|
47
47
|
<div class="dx-result">
|
|
48
48
|
<div class="dx-result-info">
|
|
49
49
|
<span class="CoveoFieldValue" data-field="@content_type" data-helper="badge" data-html-value="true"></span>
|
|
50
|
-
<span class="CoveoFieldValue" data-field="@uri" data-helper="uriBreadcrumbs" data-html-value="true"></span>
|
|
51
50
|
<span class="CoveoFieldValue" data-field="@breadcrumbs" data-helper="breadcrumbs" data-html-value="true"></span>
|
|
51
|
+
<span class="CoveoFieldValue" data-field="@uri" data-helper="uriBreadcrumbs" data-html-value="true"></span>
|
|
52
52
|
</div>
|
|
53
53
|
<p class="dx-result-title">
|
|
54
54
|
<a
|
|
@@ -67,8 +67,8 @@ const resultsTemplatesInnerHtml = `
|
|
|
67
67
|
<div class="dx-result">
|
|
68
68
|
<div class="dx-result-info">
|
|
69
69
|
<span class="CoveoFieldValue" data-field="@content_type" data-helper="badge" data-html-value="true"></span>
|
|
70
|
-
<span class="CoveoFieldValue" data-field="@uri" data-helper="breadcrumbs" data-html-value="true"></span>
|
|
71
70
|
<span class="CoveoFieldValue" data-field="@breadcrumbs" data-helper="breadcrumbs" data-html-value="true"></span>
|
|
71
|
+
<span class="CoveoFieldValue" data-field="@uri" data-helper="uriBreadcrumbs" data-html-value="true"></span>
|
|
72
72
|
</div>
|
|
73
73
|
<p class="dx-result-title">
|
|
74
74
|
<a class="CoveoResultLink"></a>
|
|
@@ -119,9 +119,12 @@ const buildTemplateHelperUriBreadcrumbs = (value: string) => {
|
|
|
119
119
|
const url = new URL(value);
|
|
120
120
|
|
|
121
121
|
// Only generate breadcrumbs for external links using the URL
|
|
122
|
+
const hostnamePattern =
|
|
123
|
+
/^((www\.)?(youtube\.com|developer\.salesforce\.com|developer-website-s\.herokuapp\.com))$/;
|
|
122
124
|
if (
|
|
123
|
-
url.hostname
|
|
124
|
-
url.
|
|
125
|
+
hostnamePattern.test(url.hostname) &&
|
|
126
|
+
!/\/blogs|\/podcast/.test(url.pathname) &&
|
|
127
|
+
!/\/docs\/component-library/.test(url.pathname)
|
|
125
128
|
) {
|
|
126
129
|
return "";
|
|
127
130
|
}
|
|
@@ -129,19 +132,39 @@ const buildTemplateHelperUriBreadcrumbs = (value: string) => {
|
|
|
129
132
|
let parts = url.pathname.split("/").filter((part) => part !== "");
|
|
130
133
|
|
|
131
134
|
// Remove language prefix from trailhead URLs
|
|
132
|
-
if (
|
|
133
|
-
|
|
135
|
+
if (
|
|
136
|
+
url.hostname === "trailhead.salesforce.com" ||
|
|
137
|
+
url.hostname === "dev.trailhead.salesforce.com"
|
|
138
|
+
) {
|
|
139
|
+
parts = parts
|
|
140
|
+
.slice(1)
|
|
141
|
+
.filter((part) => part !== "content" && part !== "learn");
|
|
134
142
|
}
|
|
135
143
|
|
|
136
144
|
const breadcrumbs = processParts(parts);
|
|
137
145
|
|
|
138
|
-
|
|
146
|
+
// if url.hostname is developer.salesforce.com or developer-website-s.herokuapp.com, remove the first part
|
|
147
|
+
if (
|
|
148
|
+
url.hostname !== "developer.salesforce.com" &&
|
|
149
|
+
url.hostname !== "developer-website-s.herokuapp.com"
|
|
150
|
+
) {
|
|
151
|
+
breadcrumbs.unshift(
|
|
152
|
+
`<span class="breadcrumb-item">${url.hostname}</span>`
|
|
153
|
+
);
|
|
139
154
|
|
|
140
|
-
|
|
155
|
+
return `
|
|
141
156
|
<span class="breadcrumb">
|
|
142
157
|
${breadcrumbs.join(" / ")}
|
|
143
158
|
</span>
|
|
144
159
|
`;
|
|
160
|
+
} else if (breadcrumbs.length === 1) {
|
|
161
|
+
return "";
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
// remove the last breadcrumb item (since the search result is the last item anyway)
|
|
165
|
+
breadcrumbs.pop();
|
|
166
|
+
|
|
167
|
+
return `<span class="breadcrumb">/ ${breadcrumbs.join(" / ")} /</span>`;
|
|
145
168
|
};
|
|
146
169
|
|
|
147
170
|
const buildTemplateHelperBreadcrumbs = (value: string) => {
|
|
@@ -154,16 +177,18 @@ const buildTemplateHelperBreadcrumbs = (value: string) => {
|
|
|
154
177
|
parts = value.split("/").filter((part) => part !== "");
|
|
155
178
|
}
|
|
156
179
|
|
|
180
|
+
// Don't show breadcrumbs if there's only one part or two (two because we remove the last item in the next step)
|
|
157
181
|
if (parts.length === 1) {
|
|
158
182
|
return "";
|
|
159
183
|
}
|
|
160
184
|
|
|
161
185
|
const breadcrumbs = processParts(parts);
|
|
162
186
|
|
|
187
|
+
// Remove the last breadcrumb item
|
|
188
|
+
breadcrumbs.pop();
|
|
189
|
+
|
|
163
190
|
return `
|
|
164
|
-
<span class="breadcrumb">
|
|
165
|
-
${breadcrumbs.join(" / ")}
|
|
166
|
-
</span>
|
|
191
|
+
<span class="breadcrumb">/ ${breadcrumbs.join(" / ")} /</span>
|
|
167
192
|
`;
|
|
168
193
|
};
|
|
169
194
|
|
|
@@ -282,7 +307,7 @@ export default class SearchResults extends LightningElement {
|
|
|
282
307
|
|
|
283
308
|
window.onresize = debounce(() => {
|
|
284
309
|
this.processBreadcrumbs(root);
|
|
285
|
-
},
|
|
310
|
+
}, 10);
|
|
286
311
|
});
|
|
287
312
|
}
|
|
288
313
|
|