@sapudex/web-components 2.20.1 → 2.22.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.
- package/bundle.esm.js +4 -0
- package/cypress/specs/Feed.cy.tsx +72 -0
- package/cypress/specs/FeedItem.cy.tsx +82 -0
- package/cypress/specs/Footer.cy.tsx +45 -1
- package/cypress/specs/ImageGridCloud.cy.tsx +78 -0
- package/cypress/specs/ImageGridCloudItem.cy.tsx +29 -0
- package/cypress/support/component-imports.instrumented.ts +8 -0
- package/cypress/support/component-imports.src.ts +8 -0
- package/dist/Accordion.js +1 -0
- package/dist/Accordion.js.map +1 -1
- package/dist/AccordionItem.js +2 -0
- package/dist/AccordionItem.js.map +1 -1
- package/dist/AssetsVariables.js +5 -0
- package/dist/AssetsVariables.js.map +1 -1
- package/dist/Breadcrumbs.js +5 -0
- package/dist/Breadcrumbs.js.map +1 -1
- package/dist/ContactItem.js +2 -0
- package/dist/ContactItem.js.map +1 -1
- package/dist/CountrySelector.js +1 -0
- package/dist/CountrySelector.js.map +1 -1
- package/dist/DatePicker.js +2 -1
- package/dist/DatePicker.js.map +1 -1
- package/dist/Feed.d.ts +88 -0
- package/dist/Feed.js +103 -0
- package/dist/Feed.js.map +1 -0
- package/dist/FeedItem.d.ts +114 -0
- package/dist/FeedItem.js +131 -0
- package/dist/FeedItem.js.map +1 -0
- package/dist/FeedItemTemplate.d.ts +2 -0
- package/dist/FeedItemTemplate.js +16 -0
- package/dist/FeedItemTemplate.js.map +1 -0
- package/dist/FeedTemplate.d.ts +2 -0
- package/dist/FeedTemplate.js +19 -0
- package/dist/FeedTemplate.js.map +1 -0
- package/dist/FilterMenu.js +2 -0
- package/dist/FilterMenu.js.map +1 -1
- package/dist/Footer.d.ts +14 -2
- package/dist/Footer.js +37 -4
- package/dist/Footer.js.map +1 -1
- package/dist/FooterTemplate.js +3 -3
- package/dist/FooterTemplate.js.map +1 -1
- package/dist/ImageGridCloud.d.ts +76 -0
- package/dist/ImageGridCloud.js +153 -0
- package/dist/ImageGridCloud.js.map +1 -0
- package/dist/ImageGridCloudItem.d.ts +35 -0
- package/dist/ImageGridCloudItem.js +49 -0
- package/dist/ImageGridCloudItem.js.map +1 -0
- package/dist/ImageGridCloudItemTemplate.d.ts +2 -0
- package/dist/ImageGridCloudItemTemplate.js +5 -0
- package/dist/ImageGridCloudItemTemplate.js.map +1 -0
- package/dist/ImageGridCloudTemplate.d.ts +2 -0
- package/dist/ImageGridCloudTemplate.js +6 -0
- package/dist/ImageGridCloudTemplate.js.map +1 -0
- package/dist/ImageGridTicker.d.ts +2 -2
- package/dist/ImageGridTicker.js +1 -8
- package/dist/ImageGridTicker.js.map +1 -1
- package/dist/LinkListItem.js +1 -0
- package/dist/LinkListItem.js.map +1 -1
- package/dist/List.js +3 -0
- package/dist/List.js.map +1 -1
- package/dist/ListGroupHeader.js +1 -0
- package/dist/ListGroupHeader.js.map +1 -1
- package/dist/ListItem.js +2 -0
- package/dist/ListItem.js.map +1 -1
- package/dist/ListItemBase.js +4 -0
- package/dist/ListItemBase.js.map +1 -1
- package/dist/ListSelectAll.js +1 -0
- package/dist/ListSelectAll.js.map +1 -1
- package/dist/MastheadCountrySelector.js +15 -0
- package/dist/MastheadCountrySelector.js.map +1 -1
- package/dist/MastheadItem.js +10 -0
- package/dist/MastheadItem.js.map +1 -1
- package/dist/MastheadMenu.js +6 -0
- package/dist/MastheadMenu.js.map +1 -1
- package/dist/MastheadMobileMenu.js +11 -0
- package/dist/MastheadMobileMenu.js.map +1 -1
- package/dist/MastheadProfileMenu.js +11 -0
- package/dist/MastheadProfileMenu.js.map +1 -1
- package/dist/MastheadShell.js +41 -0
- package/dist/MastheadShell.js.map +1 -1
- package/dist/MediaPlayer.js +1 -0
- package/dist/MediaPlayer.js.map +1 -1
- package/dist/MediaPlayerVimeo.d.ts +3 -3
- package/dist/MediaPlayerVimeo.js +1 -0
- package/dist/MediaPlayerVimeo.js.map +1 -1
- package/dist/MediaPlayerYoutube.js +3 -0
- package/dist/MediaPlayerYoutube.js.map +1 -1
- package/dist/Pagination.js +1 -1
- package/dist/Pagination.js.map +1 -1
- package/dist/Search.d.ts +2 -1
- package/dist/Search.js +18 -3
- package/dist/Search.js.map +1 -1
- package/dist/SearchTemplate.d.ts +2 -0
- package/dist/SearchTemplate.js +48 -0
- package/dist/SearchTemplate.js.map +1 -0
- package/dist/SearchableListBase.d.ts +3 -0
- package/dist/SearchableListBase.js +10 -0
- package/dist/SearchableListBase.js.map +1 -1
- package/dist/SecondaryNavigation.js +19 -0
- package/dist/SecondaryNavigation.js.map +1 -1
- package/dist/SecondaryNavigationItem.js +6 -0
- package/dist/SecondaryNavigationItem.js.map +1 -1
- package/dist/SecondaryNavigationSubItem.js +3 -0
- package/dist/SecondaryNavigationSubItem.js.map +1 -1
- package/dist/SelectBox.js +1 -0
- package/dist/SelectBox.js.map +1 -1
- package/dist/SocialMediaButton.js +2 -0
- package/dist/SocialMediaButton.js.map +1 -1
- package/dist/StepInput.js +2 -0
- package/dist/StepInput.js.map +1 -1
- package/dist/TabNavigation.js +3 -0
- package/dist/TabNavigation.js.map +1 -1
- package/dist/Tag.js +1 -0
- package/dist/Tag.js.map +1 -1
- package/dist/TagGroup.js +3 -0
- package/dist/TagGroup.js.map +1 -1
- package/dist/TextField.js +1 -0
- package/dist/TextField.js.map +1 -1
- package/dist/Tile.js +1 -0
- package/dist/Tile.js.map +1 -1
- package/dist/Upload.js +5 -0
- package/dist/Upload.js.map +1 -1
- package/dist/assets/{InputSuggestions-yR1p8cXL.js → InputSuggestions-By00xQan.js} +1 -1
- package/dist/assets/{ListItemStandardExpandableTextTemplate-BovnAV24.js → ListItemStandardExpandableTextTemplate-BGtoxRbA.js} +1 -1
- package/dist/assets/{bundle.esm-C7AybWk0.js → bundle.esm-9yDdQqR5.js} +223 -214
- package/dist/assets/messagebundle_en-D_yCmNrd.js +1 -0
- package/dist/css/themes/Feed.css +1 -0
- package/dist/css/themes/FeedItem.css +1 -0
- package/dist/css/themes/Footer.css +1 -1
- package/dist/css/themes/ImageGridCloud.css +1 -0
- package/dist/css/themes/ImageGridCloudItem.css +1 -0
- package/dist/css/themes/MediaPlayer.css +1 -1
- package/dist/css/themes/Pagination.css +1 -1
- package/dist/css/themes/RatingIndicator.css +1 -1
- package/dist/css/themes/Slider.css +1 -1
- package/dist/custom-elements-internal.json +4455 -456
- package/dist/custom-elements.json +1411 -288
- package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
- package/dist/generated/i18n/i18n-defaults.d.ts +2 -1
- package/dist/generated/i18n/i18n-defaults.js +2 -1
- package/dist/generated/i18n/i18n-defaults.js.map +1 -1
- package/dist/generated/themes/Feed.css.d.ts +2 -0
- package/dist/generated/themes/Feed.css.js +8 -0
- package/dist/generated/themes/Feed.css.js.map +1 -0
- package/dist/generated/themes/FeedItem.css.d.ts +2 -0
- package/dist/generated/themes/FeedItem.css.js +8 -0
- package/dist/generated/themes/FeedItem.css.js.map +1 -0
- package/dist/generated/themes/Footer.css.d.ts +1 -1
- package/dist/generated/themes/Footer.css.js +1 -1
- package/dist/generated/themes/Footer.css.js.map +1 -1
- package/dist/generated/themes/ImageGridCloud.css.d.ts +2 -0
- package/dist/generated/themes/ImageGridCloud.css.js +8 -0
- package/dist/generated/themes/ImageGridCloud.css.js.map +1 -0
- package/dist/generated/themes/ImageGridCloudItem.css.d.ts +2 -0
- package/dist/generated/themes/ImageGridCloudItem.css.js +8 -0
- package/dist/generated/themes/ImageGridCloudItem.css.js.map +1 -0
- package/dist/generated/themes/MediaPlayer.css.d.ts +1 -1
- package/dist/generated/themes/MediaPlayer.css.js +1 -1
- package/dist/generated/themes/MediaPlayer.css.js.map +1 -1
- package/dist/generated/themes/Pagination.css.d.ts +1 -1
- package/dist/generated/themes/Pagination.css.js +1 -1
- package/dist/generated/themes/Pagination.css.js.map +1 -1
- package/dist/generated/themes/RatingIndicator.css.d.ts +1 -1
- package/dist/generated/themes/RatingIndicator.css.js +1 -1
- package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
- package/dist/generated/themes/Slider.css.d.ts +1 -1
- package/dist/generated/themes/Slider.css.js +1 -1
- package/dist/generated/themes/Slider.css.js.map +1 -1
- package/dist/messagebundle.properties +3 -0
- package/dist/messagebundle_en.properties +1 -0
- package/dist/vscode.html-custom-data.json +130 -1
- package/dist/web-types.json +305 -4
- package/package.json +1 -1
- package/src/Accordion.ts +1 -0
- package/src/AccordionItem.ts +2 -0
- package/src/AssetsVariables.ts +5 -0
- package/src/Breadcrumbs.ts +5 -0
- package/src/ContactItem.ts +2 -0
- package/src/CountrySelector.ts +1 -0
- package/src/DatePicker.ts +2 -1
- package/src/Feed.ts +144 -0
- package/src/FeedItem.ts +198 -0
- package/src/FeedItemTemplate.tsx +60 -0
- package/src/FeedTemplate.tsx +66 -0
- package/src/FilterMenu.ts +2 -0
- package/src/Footer.ts +47 -4
- package/src/FooterTemplate.tsx +29 -39
- package/src/ImageGridCloud.ts +188 -0
- package/src/ImageGridCloudItem.ts +57 -0
- package/src/ImageGridCloudItemTemplate.tsx +11 -0
- package/src/ImageGridCloudTemplate.tsx +16 -0
- package/src/ImageGridTicker.ts +3 -3
- package/src/LinkListItem.ts +1 -0
- package/src/List.ts +3 -0
- package/src/ListGroupHeader.ts +1 -0
- package/src/ListItem.ts +2 -0
- package/src/ListItemBase.ts +4 -0
- package/src/ListSelectAll.ts +1 -0
- package/src/MastheadCountrySelector.ts +15 -0
- package/src/MastheadItem.ts +10 -0
- package/src/MastheadMenu.ts +6 -0
- package/src/MastheadMobileMenu.ts +11 -0
- package/src/MastheadProfileMenu.ts +11 -0
- package/src/MastheadShell.ts +41 -0
- package/src/MediaPlayer.ts +1 -0
- package/src/MediaPlayerVimeo.ts +4 -3
- package/src/MediaPlayerYoutube.ts +3 -0
- package/src/Pagination.ts +1 -1
- package/src/Search.ts +20 -4
- package/src/SearchTemplate.tsx +353 -0
- package/src/SearchableListBase.ts +10 -0
- package/src/SecondaryNavigation.ts +19 -0
- package/src/SecondaryNavigationItem.ts +6 -0
- package/src/SecondaryNavigationSubItem.ts +3 -0
- package/src/SelectBox.ts +1 -0
- package/src/SocialMediaButton.ts +2 -0
- package/src/StepInput.ts +2 -0
- package/src/TabNavigation.ts +3 -0
- package/src/Tag.ts +1 -0
- package/src/TagGroup.ts +3 -0
- package/src/TextField.ts +1 -0
- package/src/Tile.ts +1 -0
- package/src/Upload.ts +5 -0
- package/src/generated/i18n/i18n-defaults.ts +2 -2
- package/src/generated/themes/Feed.css.ts +9 -0
- package/src/generated/themes/FeedItem.css.ts +9 -0
- package/src/generated/themes/Footer.css.ts +1 -1
- package/src/generated/themes/ImageGridCloud.css.ts +9 -0
- package/src/generated/themes/ImageGridCloudItem.css.ts +9 -0
- package/src/generated/themes/MediaPlayer.css.ts +1 -1
- package/src/generated/themes/Pagination.css.ts +1 -1
- package/src/generated/themes/RatingIndicator.css.ts +1 -1
- package/src/generated/themes/Slider.css.ts +1 -1
- package/src/i18n/messagebundle.properties +3 -0
- package/src/i18n/messagebundle_en.properties +1 -0
- package/src/themes/Feed.css +51 -0
- package/src/themes/FeedItem.css +60 -0
- package/src/themes/Footer.css +9 -5
- package/src/themes/ImageGridCloud.css +55 -0
- package/src/themes/ImageGridCloudItem.css +10 -0
- package/src/themes/MediaPlayer.css +1 -1
- package/src/themes/Pagination.css +1 -1
- package/dist/assets/messagebundle_en-BhTYnZbC.js +0 -1
- package/dist/generated/templates/SearchSuggestionsTemplate.lit.d.ts +0 -3
- package/dist/generated/templates/SearchSuggestionsTemplate.lit.js +0 -17
- package/dist/generated/templates/SearchSuggestionsTemplate.lit.js.map +0 -1
- package/dist/generated/templates/SearchTemplate.lit.d.ts +0 -3
- package/dist/generated/templates/SearchTemplate.lit.js +0 -28
- package/dist/generated/templates/SearchTemplate.lit.js.map +0 -1
- package/src/Search.hbs +0 -155
- package/src/SearchSuggestions.hbs +0 -91
- package/src/generated/templates/SearchSuggestionsTemplate.lit.ts +0 -21
- package/src/generated/templates/SearchTemplate.lit.ts +0 -32
package/src/FooterTemplate.tsx
CHANGED
|
@@ -150,9 +150,7 @@ export default function FooterTemplate(this: Footer) {
|
|
|
150
150
|
)}
|
|
151
151
|
</div>
|
|
152
152
|
|
|
153
|
-
{
|
|
154
|
-
<UDExDivider class={`${rootClass}__divider`}></UDExDivider>
|
|
155
|
-
)}
|
|
153
|
+
<UDExDivider class={`${rootClass}__divider`} accessibleRole="none"></UDExDivider>
|
|
156
154
|
|
|
157
155
|
{this._shouldRenderMobileMenu ? (
|
|
158
156
|
mobileNavigation.call(this, rootClass)
|
|
@@ -160,20 +158,20 @@ export default function FooterTemplate(this: Footer) {
|
|
|
160
158
|
desktopNavigation.call(this, rootClass)
|
|
161
159
|
)}
|
|
162
160
|
|
|
163
|
-
<UDExDivider class={`${rootClass}__divider`}></UDExDivider>
|
|
161
|
+
<UDExDivider class={`${rootClass}__divider`} accessibleRole="none"></UDExDivider>
|
|
164
162
|
|
|
165
163
|
<div className={`${rootClass}__copyright`}>
|
|
166
164
|
{this.isChineseLang && (
|
|
167
165
|
<span className={`${rootClass}__copyright-chinese-text`}>
|
|
168
166
|
<a
|
|
169
167
|
href={this.chineseIcpNumberLink}
|
|
170
|
-
title={this.
|
|
168
|
+
title={this.chineseICPNumberText}
|
|
171
169
|
className={`${rootClass}__copyright-chinese-link`}
|
|
172
170
|
target="_blank"
|
|
173
171
|
rel="noopener noreferrer">
|
|
174
|
-
{this.
|
|
172
|
+
{this.chineseICPNumberText}
|
|
175
173
|
</a>
|
|
176
|
-
{this.
|
|
174
|
+
{this.chineseSecurityNetworkNumberText}
|
|
177
175
|
</span>
|
|
178
176
|
)}
|
|
179
177
|
<span className={`${rootClass}__copyright-text`}>{this.copyrightText}</span>
|
|
@@ -228,7 +226,6 @@ function mobileNavigation(this: Footer, rootClass: string) {
|
|
|
228
226
|
<li key={index}>
|
|
229
227
|
<a
|
|
230
228
|
target={link.target}
|
|
231
|
-
aria-describedby={`${rootClass}__quick-links`}
|
|
232
229
|
href={link.url}
|
|
233
230
|
data-id={link.id}
|
|
234
231
|
onClick={this._onQuickLinksClick}
|
|
@@ -238,9 +235,9 @@ function mobileNavigation(this: Footer, rootClass: string) {
|
|
|
238
235
|
</li>
|
|
239
236
|
))}
|
|
240
237
|
</ul>
|
|
241
|
-
<
|
|
238
|
+
<h6 className={`${rootClass}__links-item hidden`} aria-hidden="true" id={`${rootClass}__quick-links`}>
|
|
242
239
|
{this._quickLinksTitle}
|
|
243
|
-
</
|
|
240
|
+
</h6>
|
|
244
241
|
</UDExAccordionItem>
|
|
245
242
|
</>
|
|
246
243
|
)}
|
|
@@ -253,7 +250,6 @@ function mobileNavigation(this: Footer, rootClass: string) {
|
|
|
253
250
|
<li key={index}>
|
|
254
251
|
<a
|
|
255
252
|
target={link.target}
|
|
256
|
-
aria-describedby={`${rootClass}__footer__trending`}
|
|
257
253
|
href={link.url}
|
|
258
254
|
data-id={link.id}
|
|
259
255
|
onClick={this._onTrendingClick}
|
|
@@ -263,9 +259,9 @@ function mobileNavigation(this: Footer, rootClass: string) {
|
|
|
263
259
|
</li>
|
|
264
260
|
))}
|
|
265
261
|
</ul>
|
|
266
|
-
<
|
|
262
|
+
<h6 className={`${rootClass}__links-item hidden`} aria-hidden="true" id={`${rootClass}__trending`}>
|
|
267
263
|
{this._trendingTitle}
|
|
268
|
-
</
|
|
264
|
+
</h6>
|
|
269
265
|
</UDExAccordionItem>
|
|
270
266
|
</>
|
|
271
267
|
)}
|
|
@@ -278,7 +274,6 @@ function mobileNavigation(this: Footer, rootClass: string) {
|
|
|
278
274
|
<li key={index}>
|
|
279
275
|
<a
|
|
280
276
|
target={link.target}
|
|
281
|
-
aria-describedby={`${rootClass}__about`}
|
|
282
277
|
href={link.url}
|
|
283
278
|
data-id={link.id}
|
|
284
279
|
onClick={this._onAboutSapClick}
|
|
@@ -288,9 +283,9 @@ function mobileNavigation(this: Footer, rootClass: string) {
|
|
|
288
283
|
</li>
|
|
289
284
|
))}
|
|
290
285
|
</ul>
|
|
291
|
-
<
|
|
286
|
+
<h6 className={`${rootClass}__links-item hidden`} aria-hidden="true" id={`${rootClass}__about`}>
|
|
292
287
|
{this._aboutSapTitle}
|
|
293
|
-
</
|
|
288
|
+
</h6>
|
|
294
289
|
</UDExAccordionItem>
|
|
295
290
|
</>
|
|
296
291
|
)}
|
|
@@ -303,7 +298,6 @@ function mobileNavigation(this: Footer, rootClass: string) {
|
|
|
303
298
|
<li key={index}>
|
|
304
299
|
<a
|
|
305
300
|
target={link.target}
|
|
306
|
-
aria-describedby={`${rootClass}__site-information`}
|
|
307
301
|
href={link.url}
|
|
308
302
|
data-id={link.id}
|
|
309
303
|
onClick={this._onSiteInformationClick}
|
|
@@ -313,9 +307,9 @@ function mobileNavigation(this: Footer, rootClass: string) {
|
|
|
313
307
|
</li>
|
|
314
308
|
))}
|
|
315
309
|
</ul>
|
|
316
|
-
<
|
|
310
|
+
<h6 className={`${rootClass}__links-item hidden`} aria-hidden="true" id={`${rootClass}__site-information`}>
|
|
317
311
|
{this._siteInformationTitle}
|
|
318
|
-
</
|
|
312
|
+
</h6>
|
|
319
313
|
</UDExAccordionItem>
|
|
320
314
|
</>
|
|
321
315
|
)}
|
|
@@ -328,16 +322,15 @@ function desktopNavigation(this: Footer, rootClass: string) {
|
|
|
328
322
|
<div className={`${rootClass}__links`}>
|
|
329
323
|
{this.quickLinksArray.length > 0 && (
|
|
330
324
|
<div className={`${rootClass}__links-group ${rootClass}__quick-links`}>
|
|
331
|
-
<
|
|
325
|
+
<h6 className={`${rootClass}__links-item`} id={`${rootClass}__quick-links`}>
|
|
332
326
|
{this._quickLinksTitle}
|
|
333
|
-
</
|
|
334
|
-
<nav
|
|
335
|
-
<ul className={`${rootClass}__links-list ${rootClass}__links-list--desktop`}>
|
|
327
|
+
</h6>
|
|
328
|
+
<nav>
|
|
329
|
+
<ul aria-labelledby={`${rootClass}__quick-links`} className={`${rootClass}__links-list ${rootClass}__links-list--desktop`}>
|
|
336
330
|
{this.quickLinksArray.map((link, index) => (
|
|
337
331
|
<li key={index}>
|
|
338
332
|
<a
|
|
339
333
|
target={link.target}
|
|
340
|
-
aria-describedby={`${rootClass}__quick-links`}
|
|
341
334
|
data-id={link.id}
|
|
342
335
|
href={link.url}
|
|
343
336
|
onClick={this._onQuickLinksClick}
|
|
@@ -352,16 +345,15 @@ function desktopNavigation(this: Footer, rootClass: string) {
|
|
|
352
345
|
)}
|
|
353
346
|
{this.trendingLinksArray.length > 0 && (
|
|
354
347
|
<div className={`${rootClass}__links-group ${rootClass}__trending-links`}>
|
|
355
|
-
<
|
|
348
|
+
<h6 className={`${rootClass}__links-item`} id={`${rootClass}__trending`}>
|
|
356
349
|
{this._trendingTitle}
|
|
357
|
-
</
|
|
358
|
-
<nav
|
|
359
|
-
<ul className={`${rootClass}__links-list ${rootClass}__links-list--desktop`}>
|
|
350
|
+
</h6>
|
|
351
|
+
<nav>
|
|
352
|
+
<ul aria-labelledby={`${rootClass}__trending`} className={`${rootClass}__links-list ${rootClass}__links-list--desktop`}>
|
|
360
353
|
{this.trendingLinksArray.map((link, index) => (
|
|
361
354
|
<li key={index}>
|
|
362
355
|
<a
|
|
363
356
|
target={link.target}
|
|
364
|
-
aria-describedby={`${rootClass}__footer__trending`}
|
|
365
357
|
data-id={link.id}
|
|
366
358
|
href={link.url}
|
|
367
359
|
onClick={this._onTrendingClick}
|
|
@@ -376,16 +368,15 @@ function desktopNavigation(this: Footer, rootClass: string) {
|
|
|
376
368
|
)}
|
|
377
369
|
{this.aboutLinksArray.length > 0 && (
|
|
378
370
|
<div className={`${rootClass}__links-group ${rootClass}__about-links`}>
|
|
379
|
-
<
|
|
371
|
+
<h6 className={`${rootClass}__links-item`} id={`${rootClass}__about`}>
|
|
380
372
|
{this._aboutSapTitle}
|
|
381
|
-
</
|
|
382
|
-
<nav
|
|
383
|
-
<ul className={`${rootClass}__links-list ${rootClass}__links-list--desktop`}>
|
|
373
|
+
</h6>
|
|
374
|
+
<nav>
|
|
375
|
+
<ul aria-labelledby={`${rootClass}__about`} className={`${rootClass}__links-list ${rootClass}__links-list--desktop`}>
|
|
384
376
|
{this.aboutLinksArray.map((link, index) => (
|
|
385
377
|
<li key={index}>
|
|
386
378
|
<a
|
|
387
379
|
target={link.target}
|
|
388
|
-
aria-describedby={`${rootClass}__about`}
|
|
389
380
|
data-id={link.id}
|
|
390
381
|
href={link.url}
|
|
391
382
|
onClick={this._onAboutSapClick}
|
|
@@ -400,16 +391,15 @@ function desktopNavigation(this: Footer, rootClass: string) {
|
|
|
400
391
|
)}
|
|
401
392
|
{this.siteInformationLinksArray.length > 0 && (
|
|
402
393
|
<div className={`${rootClass}__links-group ${rootClass}__site-information-links`}>
|
|
403
|
-
<
|
|
394
|
+
<h6 className={`${rootClass}__links-item`} id={`${rootClass}__site-information`}>
|
|
404
395
|
{this._siteInformationTitle}
|
|
405
|
-
</
|
|
406
|
-
<nav
|
|
407
|
-
<ul className={`${rootClass}__links-list ${rootClass}__links-list--desktop`}>
|
|
396
|
+
</h6>
|
|
397
|
+
<nav>
|
|
398
|
+
<ul aria-labelledby={`${rootClass}__site-information`} className={`${rootClass}__links-list ${rootClass}__links-list--desktop`}>
|
|
408
399
|
{this.siteInformationLinksArray.map((link, index) => (
|
|
409
400
|
<li key={index}>
|
|
410
401
|
<a
|
|
411
402
|
target={link.target}
|
|
412
|
-
aria-describedby={`${rootClass}__site-information`}
|
|
413
403
|
data-id={link.id}
|
|
414
404
|
href={link.url}
|
|
415
405
|
onClick={this._onSiteInformationClick}
|
|
@@ -0,0 +1,188 @@
|
|
|
1
|
+
import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
|
|
2
|
+
import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
|
|
3
|
+
import property from "@ui5/webcomponents-base/dist/decorators/property.js";
|
|
4
|
+
import type { ResizeObserverCallback } from "@ui5/webcomponents-base/dist/delegate/ResizeHandler.js";
|
|
5
|
+
import ResizeHandler from "@ui5/webcomponents-base/dist/delegate/ResizeHandler.js";
|
|
6
|
+
import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
|
|
7
|
+
import jsxRenderer from "@ui5/webcomponents-base/dist/renderer/JsxRenderer.js";
|
|
8
|
+
import ImageGridCloudTemplate from "./ImageGridCloudTemplate.js";
|
|
9
|
+
import type UDExImageGridCloudItem from "./ImageGridCloudItem.js";
|
|
10
|
+
|
|
11
|
+
// Styles
|
|
12
|
+
import ImageGridCloudCss from "./generated/themes/ImageGridCloud.css.js";
|
|
13
|
+
import { BreakpointUtils } from "./utils/Breakpoints.js";
|
|
14
|
+
|
|
15
|
+
export enum UDExImageGridCloudVariable {
|
|
16
|
+
itemGapL = "--udex-image-grid-cloud-item-gap-l",
|
|
17
|
+
itemGapS = "--udex-image-grid-cloud-item-gap-s",
|
|
18
|
+
itemWidthL = "--udex-image-grid-cloud-item-width-l",
|
|
19
|
+
itemWidthS = "--udex-image-grid-cloud-item-width-s",
|
|
20
|
+
itemBorderWidth = "--udex-image-grid-cloud-item-border-width",
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
export enum UDExImageGridCloudSize {
|
|
24
|
+
Small = "Small",
|
|
25
|
+
Large = "Large",
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* @class
|
|
30
|
+
*
|
|
31
|
+
* <h3 class="comment-api-title">Overview</h3>
|
|
32
|
+
*
|
|
33
|
+
*
|
|
34
|
+
* <h3>Usage</h3>
|
|
35
|
+
*
|
|
36
|
+
* For the <code>udex-image-grid-cloud</code>
|
|
37
|
+
* <h3>ES6 Module Import</h3>
|
|
38
|
+
*
|
|
39
|
+
* <code>import "@sapudex/web-components/dist/ImageGridCloud.js";</code>
|
|
40
|
+
*
|
|
41
|
+
* @constructor
|
|
42
|
+
* @extends UI5Element
|
|
43
|
+
* @public
|
|
44
|
+
*/
|
|
45
|
+
@customElement({
|
|
46
|
+
tag: "udex-image-grid-cloud",
|
|
47
|
+
renderer: jsxRenderer,
|
|
48
|
+
styles: ImageGridCloudCss,
|
|
49
|
+
template: ImageGridCloudTemplate,
|
|
50
|
+
})
|
|
51
|
+
|
|
52
|
+
class UDExImageGridCloud extends UI5Element {
|
|
53
|
+
/**
|
|
54
|
+
* Grayscale mode enhances visual harmony and can be used for minimal,
|
|
55
|
+
* professional layouts or to de-emphasize logos.
|
|
56
|
+
*
|
|
57
|
+
* @default undefined
|
|
58
|
+
* @public
|
|
59
|
+
*/
|
|
60
|
+
@property({ type: Boolean })
|
|
61
|
+
grayscale?: boolean;
|
|
62
|
+
|
|
63
|
+
/**
|
|
64
|
+
* Defines the size of the items.
|
|
65
|
+
*
|
|
66
|
+
* @default "Large"
|
|
67
|
+
* @private
|
|
68
|
+
*/
|
|
69
|
+
@property({ type: String })
|
|
70
|
+
size: `${UDExImageGridCloudSize}` = UDExImageGridCloudSize.Large;
|
|
71
|
+
|
|
72
|
+
/**
|
|
73
|
+
* Slot for image grid cloud items.
|
|
74
|
+
*
|
|
75
|
+
* @slot
|
|
76
|
+
* @public
|
|
77
|
+
*/
|
|
78
|
+
@slot({ type: HTMLElement, "default": true })
|
|
79
|
+
items!: Array<UDExImageGridCloudItem>;
|
|
80
|
+
|
|
81
|
+
_rootId = "udex-image-grid-cloud";
|
|
82
|
+
_rowClassName = "udex-image-grid-cloud__row";
|
|
83
|
+
_container!: HTMLElement;
|
|
84
|
+
_items: Array<Element> = [];
|
|
85
|
+
|
|
86
|
+
_handleResizeBound: ResizeObserverCallback;
|
|
87
|
+
|
|
88
|
+
constructor() {
|
|
89
|
+
super();
|
|
90
|
+
this._handleResizeBound = this.handleResize.bind(this);
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
onEnterDOM(): void {
|
|
94
|
+
ResizeHandler.register(this, this._handleResizeBound);
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
onExitDOM(): void {
|
|
98
|
+
ResizeHandler.deregister(this, this._handleResizeBound);
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
onAfterRendering() {
|
|
102
|
+
this._container = this.containerElement;
|
|
103
|
+
this._items = this.itemsElements;
|
|
104
|
+
this.renderLayout();
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
handleResize(): void {
|
|
108
|
+
this.renderLayout();
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
renderLayout() {
|
|
112
|
+
if (this.isContainerEmpty) {
|
|
113
|
+
return;
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
const ITEM_WIDTH = this.itemWidth + this.itemHorizontalBorderWidth;
|
|
117
|
+
const GAP = this.itemGap;
|
|
118
|
+
|
|
119
|
+
const existingRows = Array.from(this._container.querySelectorAll(`.${this._rowClassName}`));
|
|
120
|
+
existingRows.forEach(row => row.remove());
|
|
121
|
+
|
|
122
|
+
const containerWidth = this._container.clientWidth;
|
|
123
|
+
const itemsPerRow = Math.max(Math.floor((containerWidth + GAP) / (ITEM_WIDTH + GAP)) || 0, 1);
|
|
124
|
+
|
|
125
|
+
let index = 0;
|
|
126
|
+
let rowIndex = 0;
|
|
127
|
+
|
|
128
|
+
while (index < this._items.length) {
|
|
129
|
+
const count = rowIndex % 2 === 0 ? itemsPerRow : Math.max(itemsPerRow - 1, 1);
|
|
130
|
+
const row = document.createElement("div");
|
|
131
|
+
row.className = this._rowClassName;
|
|
132
|
+
|
|
133
|
+
for (let i = 0; i < count && index < this._items.length; i++, index++) {
|
|
134
|
+
row.appendChild(this._items[index]);
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
this._container.appendChild(row);
|
|
138
|
+
rowIndex++;
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
_getVariableValue(variableName: string): string {
|
|
143
|
+
return window.getComputedStyle(this).getPropertyValue(`${variableName}`);
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
get itemWidth(): number {
|
|
147
|
+
const variableName = this.isSmallSize || this.isMobile
|
|
148
|
+
? UDExImageGridCloudVariable.itemWidthS
|
|
149
|
+
: UDExImageGridCloudVariable.itemWidthL;
|
|
150
|
+
return parseInt(this._getVariableValue(variableName));
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
get itemGap(): number {
|
|
154
|
+
const variableName = this.isSmallSize || this.isMobile
|
|
155
|
+
? UDExImageGridCloudVariable.itemGapS
|
|
156
|
+
: UDExImageGridCloudVariable.itemGapL;
|
|
157
|
+
return parseInt(this._getVariableValue(variableName));
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
get itemHorizontalBorderWidth(): number {
|
|
161
|
+
const border = parseInt(this._getVariableValue(UDExImageGridCloudVariable.itemBorderWidth));
|
|
162
|
+
return border * 2;
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
get isSmallSize(): boolean {
|
|
166
|
+
return this.size === UDExImageGridCloudSize.Small;
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
get containerElement(): HTMLElement {
|
|
170
|
+
return this.shadowRoot!.getElementById(this._rootId)!;
|
|
171
|
+
}
|
|
172
|
+
|
|
173
|
+
get itemsElements(): Array<Element> {
|
|
174
|
+
return Array.from(this.containerElement.children);
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
get isMobile(): boolean {
|
|
178
|
+
return BreakpointUtils.isAtMost("S");
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
get isContainerEmpty(): boolean {
|
|
182
|
+
return !this._container || this._items.length === 0;
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
UDExImageGridCloud.define();
|
|
187
|
+
|
|
188
|
+
export default UDExImageGridCloud;
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
|
|
2
|
+
import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
|
|
3
|
+
import property from "@ui5/webcomponents-base/dist/decorators/property.js";
|
|
4
|
+
import jsxRenderer from "@ui5/webcomponents-base/dist/renderer/JsxRenderer.js";
|
|
5
|
+
|
|
6
|
+
import ImageGridCloudItemTemplate from "./ImageGridCloudItemTemplate.js";
|
|
7
|
+
|
|
8
|
+
// Styles
|
|
9
|
+
import ImageGridCloudItemCss from "./generated/themes/ImageGridCloudItem.css.js";
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* @class
|
|
13
|
+
*
|
|
14
|
+
* <h3 class="comment-api-title">Overview</h3>
|
|
15
|
+
*
|
|
16
|
+
*
|
|
17
|
+
* <h3>Usage</h3>
|
|
18
|
+
*
|
|
19
|
+
* For the <code>udex-image-grid-cloud-item</code>
|
|
20
|
+
* <h3>ES6 Module Import</h3>
|
|
21
|
+
*
|
|
22
|
+
* <code>import "@sapudex/web-components/dist/ImageGridCloudItem.js";</code>
|
|
23
|
+
*
|
|
24
|
+
* @constructor
|
|
25
|
+
* @extends UI5Element
|
|
26
|
+
* @public
|
|
27
|
+
*/
|
|
28
|
+
@customElement({
|
|
29
|
+
tag: "udex-image-grid-cloud-item",
|
|
30
|
+
renderer: jsxRenderer,
|
|
31
|
+
styles: ImageGridCloudItemCss,
|
|
32
|
+
template: ImageGridCloudItemTemplate,
|
|
33
|
+
})
|
|
34
|
+
|
|
35
|
+
class UDExImageGridCloudItem extends UI5Element {
|
|
36
|
+
/**
|
|
37
|
+
* Defines the source URL
|
|
38
|
+
*
|
|
39
|
+
* @default ""
|
|
40
|
+
* @public
|
|
41
|
+
*/
|
|
42
|
+
@property({ type: String })
|
|
43
|
+
src!: string;
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
* Defines image alt text
|
|
47
|
+
*
|
|
48
|
+
* @default ""
|
|
49
|
+
* @public
|
|
50
|
+
*/
|
|
51
|
+
@property({ type: String })
|
|
52
|
+
alt!: string;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
UDExImageGridCloudItem.define();
|
|
56
|
+
|
|
57
|
+
export default UDExImageGridCloudItem;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type ImageGridCloud from "./ImageGridCloud.js";
|
|
2
|
+
import UDExImageGridCloudItem from "./ImageGridCloudItem.js";
|
|
3
|
+
|
|
4
|
+
export default function ImageGridCloudTemplate(this: ImageGridCloud) {
|
|
5
|
+
return (
|
|
6
|
+
<div id="udex-image-grid-cloud">
|
|
7
|
+
{this.items.map(({ src, alt }) =>
|
|
8
|
+
<UDExImageGridCloudItem
|
|
9
|
+
class="udex-image-grid-cloud__item"
|
|
10
|
+
src={src}
|
|
11
|
+
alt={alt}>
|
|
12
|
+
</UDExImageGridCloudItem>
|
|
13
|
+
)}
|
|
14
|
+
</div>
|
|
15
|
+
);
|
|
16
|
+
}
|
package/src/ImageGridTicker.ts
CHANGED
|
@@ -57,6 +57,7 @@ type UDExImageGridTickerPlayBtnClickEventDetail = {
|
|
|
57
57
|
* Fired event when the user click on a play/paused button.
|
|
58
58
|
*
|
|
59
59
|
* @public
|
|
60
|
+
* @param {boolean} isPaused - Indicates whether the animation is paused.
|
|
60
61
|
*/
|
|
61
62
|
@event("play-button-click", { bubbles: true })
|
|
62
63
|
|
|
@@ -78,12 +79,11 @@ class UDExImageGridTicker extends UI5Element {
|
|
|
78
79
|
* Grayscale mode enhances visual harmony and can be used for minimal,
|
|
79
80
|
* professional layouts or to de-emphasize logos.
|
|
80
81
|
*
|
|
81
|
-
* @default
|
|
82
|
+
* @default undefined
|
|
82
83
|
* @public
|
|
83
84
|
*/
|
|
84
85
|
@property({ type: Boolean })
|
|
85
|
-
grayscale
|
|
86
|
-
|
|
86
|
+
grayscale?: boolean;
|
|
87
87
|
/**
|
|
88
88
|
* Indicates whether the image grid ticker is scrollable.
|
|
89
89
|
*
|
package/src/LinkListItem.ts
CHANGED
package/src/List.ts
CHANGED
|
@@ -63,6 +63,9 @@ type UDExListSelectionChangeEventDetail = {
|
|
|
63
63
|
* Fired when selection is changed by user interaction
|
|
64
64
|
*
|
|
65
65
|
* @public
|
|
66
|
+
* @param {Array<UDExListItemBase>} listItems All items inside the list
|
|
67
|
+
* @param {Array<UDExListItemBase>} selectedItems Currently selected items
|
|
68
|
+
* @param {HTMLElement} item The item that triggered the event
|
|
66
69
|
*/
|
|
67
70
|
@event("selection-change", { bubbles: true })
|
|
68
71
|
|
package/src/ListGroupHeader.ts
CHANGED
package/src/ListItem.ts
CHANGED
|
@@ -78,12 +78,14 @@ type UDExListItemItemPressEventDetail = {
|
|
|
78
78
|
* Fired event when the user click on a list item.
|
|
79
79
|
*
|
|
80
80
|
* @public
|
|
81
|
+
* @param {boolean} selected Indicates whether the item is selected or not
|
|
81
82
|
*/
|
|
82
83
|
@event("item-press", { bubbles: true })
|
|
83
84
|
/**
|
|
84
85
|
* Fired event when the user focuses on a list item.
|
|
85
86
|
*
|
|
86
87
|
* @public
|
|
88
|
+
* @param {HTMLElement} item The focused list item
|
|
87
89
|
*/
|
|
88
90
|
@event("item-focus", { bubbles: true })
|
|
89
91
|
|
package/src/ListItemBase.ts
CHANGED
|
@@ -34,12 +34,16 @@ type UDExListItemBaseEventDetail = {
|
|
|
34
34
|
* Fired event when the user click on a first icon.
|
|
35
35
|
*
|
|
36
36
|
* @public
|
|
37
|
+
* @param { PointerEvent } originalEvent The original event object
|
|
38
|
+
* @param { HTMLElement } item The list item
|
|
37
39
|
*/
|
|
38
40
|
@event("first-icon-click", { bubbles: true })
|
|
39
41
|
/**
|
|
40
42
|
* Fired event when the user click on a second icon.
|
|
41
43
|
*
|
|
42
44
|
* @public
|
|
45
|
+
* @param { PointerEvent } originalEvent The original event object
|
|
46
|
+
* @param { HTMLElement } item The list item
|
|
43
47
|
*/
|
|
44
48
|
@event("second-icon-click", { bubbles: true })
|
|
45
49
|
|
package/src/ListSelectAll.ts
CHANGED
|
@@ -88,6 +88,12 @@ type UDExMastheadCountrySelectorSearchEventDetail = {
|
|
|
88
88
|
* Fires when region item is clicked
|
|
89
89
|
*
|
|
90
90
|
* @public
|
|
91
|
+
* @param {Event} originalEvent the original event object
|
|
92
|
+
* @param {Object} item the clicked region item
|
|
93
|
+
* @param {string} item.title the title of the region
|
|
94
|
+
* @param {Array} item.countries the countries of the region
|
|
95
|
+
* @param {AnalyticsName} analyticsName The analytics name for the event
|
|
96
|
+
* @param {HTMLElement} sourceNode The source node which triggered the event
|
|
91
97
|
*/
|
|
92
98
|
@event("region-item-click", { bubbles: true })
|
|
93
99
|
|
|
@@ -95,6 +101,13 @@ type UDExMastheadCountrySelectorSearchEventDetail = {
|
|
|
95
101
|
* Fires when region item is clicked
|
|
96
102
|
*
|
|
97
103
|
* @public
|
|
104
|
+
* @param {Event} originalEvent the original event object
|
|
105
|
+
* @param {Object} item the clicked country item
|
|
106
|
+
* @param {string} item.displayTitle the display title of the country
|
|
107
|
+
* @param {string} item.countryCode the country code of the country
|
|
108
|
+
* @param {string} item.url the url of the country
|
|
109
|
+
* @param {AnalyticsName} analyticsName The analytics name for the event
|
|
110
|
+
* @param {HTMLElement} sourceNode The source node which triggered the event
|
|
98
111
|
*/
|
|
99
112
|
@event("country-item-click", { bubbles: true })
|
|
100
113
|
|
|
@@ -102,6 +115,8 @@ type UDExMastheadCountrySelectorSearchEventDetail = {
|
|
|
102
115
|
* Fired event when the user typed to search field.
|
|
103
116
|
*
|
|
104
117
|
* @public
|
|
118
|
+
* @param {string} value The search value
|
|
119
|
+
* @param {AnalyticsName} analyticsName The analytics name for the event
|
|
105
120
|
*/
|
|
106
121
|
@event("country-selector-search", { bubbles: true })
|
|
107
122
|
|
package/src/MastheadItem.ts
CHANGED
|
@@ -105,6 +105,10 @@ type UDExMastheadDropdownEventDetail = {
|
|
|
105
105
|
*
|
|
106
106
|
* @allowPreventDefault
|
|
107
107
|
* @public
|
|
108
|
+
* @param {Event} originalEvent the original event object
|
|
109
|
+
* @param {UDExMastheadItem} item the clicked item
|
|
110
|
+
* @param {AnalyticsName} analyticsName the analytics name
|
|
111
|
+
* @param {HTMLElement} sourceNode the source node
|
|
108
112
|
*/
|
|
109
113
|
@event("item-click", { bubbles: true })
|
|
110
114
|
|
|
@@ -113,6 +117,9 @@ type UDExMastheadDropdownEventDetail = {
|
|
|
113
117
|
*
|
|
114
118
|
* @allowPreventDefault
|
|
115
119
|
* @public
|
|
120
|
+
* @param {string} title the title of the item
|
|
121
|
+
* @param {UDExMastheadDropdownItemAction} action the action that caused the event
|
|
122
|
+
* @param {AnalyticsName} analyticsName the analytics name
|
|
116
123
|
*/
|
|
117
124
|
@event("dropdown-closed", { bubbles: true })
|
|
118
125
|
|
|
@@ -121,6 +128,9 @@ type UDExMastheadDropdownEventDetail = {
|
|
|
121
128
|
*
|
|
122
129
|
* @allowPreventDefault
|
|
123
130
|
* @public
|
|
131
|
+
* @param {string} title the title of the item
|
|
132
|
+
* @param {UDExMastheadDropdownItemAction} action the action that caused the event
|
|
133
|
+
* @param {AnalyticsName} analyticsName the analytics name
|
|
124
134
|
*/
|
|
125
135
|
@event("dropdown-opened", { bubbles: true })
|
|
126
136
|
|
package/src/MastheadMenu.ts
CHANGED
|
@@ -77,6 +77,12 @@ type UDExMastheadMenuMenuItemClickEventDetail = {
|
|
|
77
77
|
*
|
|
78
78
|
* @allowPreventDefault
|
|
79
79
|
* @public
|
|
80
|
+
* @param {string} category The category of the clicked menu item
|
|
81
|
+
* @param {Array<string>} analyticsPath The analytics path for the clicked menu item
|
|
82
|
+
* @param {AnalyticsName} analyticsName The analytics name for the clicked menu item
|
|
83
|
+
* @param {PointerEvent} originalEvent The original event object
|
|
84
|
+
* @param {UDExMastheadMenuItem} item The clicked menu item
|
|
85
|
+
* @param {HTMLElement} sourceNode The source node of the clicked menu item
|
|
80
86
|
*/
|
|
81
87
|
@event("menu-item-click", { bubbles: true })
|
|
82
88
|
|
|
@@ -70,6 +70,14 @@ type UDExMastheadMobileMenuExploreClickEventDetail = {
|
|
|
70
70
|
*
|
|
71
71
|
* @allowPreventDefault
|
|
72
72
|
* @public
|
|
73
|
+
* @param {PointerEvent | KeyboardEvent} originalEvent The original event object
|
|
74
|
+
* @param {UDExMastheadMenuItem} item The clicked item
|
|
75
|
+
* @param {string} [category] The category of the clicked item
|
|
76
|
+
* @param {boolean} isMobile Indicates whether the click happened in mobile menu
|
|
77
|
+
* @param {boolean} isBack Indicates whether the clicked item is a back button
|
|
78
|
+
* @param {AnalyticsName} analyticsName The analytics name for the clicked item
|
|
79
|
+
* @param {Array<string>} analyticsPath The analytics path for the clicked item
|
|
80
|
+
* @param {HTMLElement} sourceNode The source node of the clicked item
|
|
73
81
|
*/
|
|
74
82
|
@event("item-click", { cancelable: true, bubbles: false })
|
|
75
83
|
|
|
@@ -78,6 +86,9 @@ type UDExMastheadMobileMenuExploreClickEventDetail = {
|
|
|
78
86
|
*
|
|
79
87
|
* @allowPreventDefault
|
|
80
88
|
* @public
|
|
89
|
+
* @param {PointerEvent | KeyboardEvent} originalEvent The original event object
|
|
90
|
+
* @param {AnalyticsName} analyticsName The analytics name for the clicked item
|
|
91
|
+
* @param {HTMLElement} sourceNode The source node of the clicked item
|
|
81
92
|
*/
|
|
82
93
|
@event("explorer-menu-click", { bubbles: true })
|
|
83
94
|
|