@sapudex/web-components 0.231.0 → 0.231.1

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 (113) hide show
  1. package/dist/Accordion.d.ts +7 -5
  2. package/dist/Accordion.js +22 -16
  3. package/dist/Accordion.js.map +1 -1
  4. package/dist/AccordionItem.js +7 -0
  5. package/dist/AccordionItem.js.map +1 -1
  6. package/dist/CountrySelector.d.ts +1 -1
  7. package/dist/CountrySelector.js +6 -7
  8. package/dist/CountrySelector.js.map +1 -1
  9. package/dist/MastheadCountrySelector.d.ts +6 -0
  10. package/dist/MastheadCountrySelector.js +17 -2
  11. package/dist/MastheadCountrySelector.js.map +1 -1
  12. package/dist/MastheadMenu.d.ts +1 -0
  13. package/dist/MastheadMenu.js +7 -3
  14. package/dist/MastheadMenu.js.map +1 -1
  15. package/dist/MastheadMobileMenu.js +6 -3
  16. package/dist/MastheadMobileMenu.js.map +1 -1
  17. package/dist/MastheadShell.d.ts +17 -0
  18. package/dist/MastheadShell.js +53 -13
  19. package/dist/MastheadShell.js.map +1 -1
  20. package/dist/Search.js +3 -3
  21. package/dist/Search.js.map +1 -1
  22. package/dist/SearchableListBase.d.ts +4 -0
  23. package/dist/SearchableListBase.js +21 -2
  24. package/dist/SearchableListBase.js.map +1 -1
  25. package/dist/assets/{bundle.esm-47166f9b.js → bundle.esm-7a799a95.js} +194 -194
  26. package/dist/assets/messagebundle_en-4b95b93e.js +1 -0
  27. package/dist/css/themes/CountrySelector.css +1 -1
  28. package/dist/css/themes/MastheadCountrySelector.css +1 -1
  29. package/dist/css/themes/MastheadItem.css +1 -1
  30. package/dist/css/themes/MastheadMenuItem.css +1 -1
  31. package/dist/css/themes/MastheadMobileMenu.css +1 -1
  32. package/dist/css/themes/MastheadShell.css +1 -1
  33. package/dist/css/themes/RatingIndicator.css +1 -1
  34. package/dist/css/themes/SearchableList.css +1 -1
  35. package/dist/css/themes/Slider.css +1 -1
  36. package/dist/custom-elements-internal.json +8 -0
  37. package/dist/custom-elements.json +7 -0
  38. package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
  39. package/dist/generated/i18n/i18n-defaults.d.ts +2 -1
  40. package/dist/generated/i18n/i18n-defaults.js +2 -1
  41. package/dist/generated/i18n/i18n-defaults.js.map +1 -1
  42. package/dist/generated/templates/AccordionTemplate.lit.js +1 -1
  43. package/dist/generated/templates/AccordionTemplate.lit.js.map +1 -1
  44. package/dist/generated/templates/MastheadCountrySelectorTemplate.lit.js +3 -3
  45. package/dist/generated/templates/MastheadCountrySelectorTemplate.lit.js.map +1 -1
  46. package/dist/generated/templates/MastheadMenuTemplate.lit.js +3 -3
  47. package/dist/generated/templates/MastheadMenuTemplate.lit.js.map +1 -1
  48. package/dist/generated/templates/MastheadShellTemplate.lit.js +1 -1
  49. package/dist/generated/templates/MastheadShellTemplate.lit.js.map +1 -1
  50. package/dist/generated/templates/SearchableListBaseTemplate.lit.js +1 -1
  51. package/dist/generated/templates/SearchableListBaseTemplate.lit.js.map +1 -1
  52. package/dist/generated/themes/CountrySelector.css.js +1 -1
  53. package/dist/generated/themes/CountrySelector.css.js.map +1 -1
  54. package/dist/generated/themes/MastheadCountrySelector.css.js +1 -1
  55. package/dist/generated/themes/MastheadCountrySelector.css.js.map +1 -1
  56. package/dist/generated/themes/MastheadItem.css.js +1 -1
  57. package/dist/generated/themes/MastheadItem.css.js.map +1 -1
  58. package/dist/generated/themes/MastheadMenuItem.css.js +1 -1
  59. package/dist/generated/themes/MastheadMenuItem.css.js.map +1 -1
  60. package/dist/generated/themes/MastheadMobileMenu.css.js +1 -1
  61. package/dist/generated/themes/MastheadMobileMenu.css.js.map +1 -1
  62. package/dist/generated/themes/MastheadShell.css.js +1 -1
  63. package/dist/generated/themes/MastheadShell.css.js.map +1 -1
  64. package/dist/generated/themes/RatingIndicator.css.js +1 -1
  65. package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
  66. package/dist/generated/themes/SearchableList.css.js +1 -1
  67. package/dist/generated/themes/SearchableList.css.js.map +1 -1
  68. package/dist/generated/themes/Slider.css.js +1 -1
  69. package/dist/generated/themes/Slider.css.js.map +1 -1
  70. package/dist/i18n/messagebundle.properties +3 -0
  71. package/dist/i18n/messagebundle_en.properties +1 -0
  72. package/dist/vscode.html-custom-data.json +1 -1
  73. package/dist/web-types.json +10 -2
  74. package/package.json +1 -1
  75. package/src/Accordion.hbs +1 -0
  76. package/src/Accordion.ts +26 -18
  77. package/src/AccordionItem.ts +19 -6
  78. package/src/CountrySelector.ts +8 -9
  79. package/src/MastheadCountrySelector.hbs +5 -9
  80. package/src/MastheadCountrySelector.ts +22 -0
  81. package/src/MastheadMenu.hbs +3 -3
  82. package/src/MastheadMenu.ts +10 -3
  83. package/src/MastheadMobileMenu.ts +7 -3
  84. package/src/MastheadShell.hbs +5 -5
  85. package/src/MastheadShell.ts +64 -14
  86. package/src/Search.ts +3 -3
  87. package/src/SearchableListBase.hbs +6 -0
  88. package/src/SearchableListBase.ts +25 -2
  89. package/src/generated/i18n/i18n-defaults.ts +2 -2
  90. package/src/generated/templates/AccordionTemplate.lit.ts +1 -1
  91. package/src/generated/templates/MastheadCountrySelectorTemplate.lit.ts +3 -3
  92. package/src/generated/templates/MastheadMenuTemplate.lit.ts +3 -3
  93. package/src/generated/templates/MastheadShellTemplate.lit.ts +1 -1
  94. package/src/generated/templates/SearchableListBaseTemplate.lit.ts +1 -1
  95. package/src/generated/themes/CountrySelector.css.ts +1 -1
  96. package/src/generated/themes/MastheadCountrySelector.css.ts +1 -1
  97. package/src/generated/themes/MastheadItem.css.ts +1 -1
  98. package/src/generated/themes/MastheadMenuItem.css.ts +1 -1
  99. package/src/generated/themes/MastheadMobileMenu.css.ts +1 -1
  100. package/src/generated/themes/MastheadShell.css.ts +1 -1
  101. package/src/generated/themes/RatingIndicator.css.ts +1 -1
  102. package/src/generated/themes/SearchableList.css.ts +1 -1
  103. package/src/generated/themes/Slider.css.ts +1 -1
  104. package/src/i18n/messagebundle.properties +3 -0
  105. package/src/i18n/messagebundle_en.properties +1 -0
  106. package/src/themes/CountrySelector.css +11 -0
  107. package/src/themes/MastheadCountrySelector.css +11 -0
  108. package/src/themes/MastheadItem.css +5 -2
  109. package/src/themes/MastheadMenuItem.css +5 -0
  110. package/src/themes/MastheadMobileMenu.css +1 -0
  111. package/src/themes/MastheadShell.css +4 -4
  112. package/src/themes/SearchableList.css +11 -0
  113. package/dist/assets/messagebundle_en-d0c2d2d4.js +0 -1
@@ -1,8 +1,6 @@
1
1
  <div class="udex-masthead-country-selector" @keydown="{{handleKeyDown}}">
2
2
  {{#if _isActiveRegionOpen}}
3
- <span class="udex-masthead-country-selector__title">
4
- {{countryTitle}}
5
- </span>
3
+ <span class="udex-masthead-country-selector__title">{{countryTitle}}</span>
6
4
  {{#unless this.isSingleMode}}
7
5
  <udex-masthead-menu-item
8
6
  class="udex-masthead-country-selector__region-back-item"
@@ -25,9 +23,10 @@
25
23
  non-interactive-submit-button
26
24
  show-submit-button>
27
25
  </udex-search>
26
+ <span aria-live="polite" aria-atomic="true" class="hidden">{{_accSearchResultInfo}}</span>
28
27
  <ul class="udex-masthead-country-selector__list udex-masthead-country-selector__list_countries" role="menu">
29
28
  {{#each _activeCountries}}
30
- <li role="menuitem">
29
+ <li role="none">
31
30
  <udex-masthead-menu-item
32
31
  class="udex-masthead-country-selector__item udex-masthead-country-selector__item_countries"
33
32
  @click="{{../fireEventCountryItemClick}}"
@@ -41,19 +40,16 @@
41
40
  {{/each}}
42
41
  </ul>
43
42
  {{else}}
44
- <span class="udex-masthead-country-selector__title">
45
- {{regionTitle}}
46
- </span>
43
+ <span class="udex-masthead-country-selector__title">{{regionTitle}}</span>
47
44
  <ul class="udex-masthead-country-selector__list" role="menu">
48
45
  {{#each regionsData}}
49
- <li role="menuitem">
46
+ <li role="none">
50
47
  <udex-masthead-menu-item
51
48
  id="{{this._id}}"
52
49
  @click="{{../handleRegionClick}}"
53
50
  index="{{@index}}"
54
51
  class="udex-masthead-country-selector__item udex-masthead-country-selector__item_region"
55
52
  aria-has-popup="true"
56
- accessible-role="button"
57
53
  type="Button"
58
54
  is-nav-item
59
55
  has-border
@@ -4,6 +4,8 @@ import property from "@ui5/webcomponents-base/dist/decorators/property.js";
4
4
  import litRender from "@ui5/webcomponents-base/dist/renderer/LitRenderer.js";
5
5
  import event from "@ui5/webcomponents-base/dist/decorators/event.js";
6
6
  import UI5Icon from "@ui5/webcomponents/dist/Icon.js";
7
+ import { getI18nBundle } from "@ui5/webcomponents-base/dist/i18nBundle.js";
8
+ import type I18nBundle from "@ui5/webcomponents-base/dist/i18nBundle.js";
7
9
  import { isDesktop } from "@ui5/webcomponents-base/dist/Device.js";
8
10
  import "@ui5/webcomponents-icons/dist/slim-arrow-right.js";
9
11
  import {
@@ -15,6 +17,7 @@ import MastheadCountrySelectorTemplate from "./generated/templates/MastheadCount
15
17
  import AnalyticsName from "./types/AnalyticsName.js";
16
18
  import { BreakpointUtils } from "./utils/Breakpoints.js";
17
19
  import type UDExMastheadShell from "./MastheadShell.js";
20
+ import { NO_MATCHES_FOUND, RESULT_RETURNED } from "./generated/i18n/i18n-defaults.js";
18
21
 
19
22
  // Styles
20
23
  import MastheadCountrySelectorCss from "./generated/themes/MastheadCountrySelector.css.js";
@@ -227,8 +230,15 @@ class UDExMastheadCountrySelector extends UI5Element {
227
230
  _activeCountries!: Array<Country>;
228
231
  _shouldFocusBackBtn!: boolean;
229
232
  _shouldFocusRegionByIndex!: boolean;
233
+ _accSearchResultInfo?: string;
230
234
  _activeRegionIndex!: number;
231
235
 
236
+ static i18nBundle: I18nBundle;
237
+
238
+ static async onDefine() {
239
+ UDExMastheadCountrySelector.i18nBundle = await getI18nBundle("@sapudex/web-components");
240
+ }
241
+
232
242
  constructor() {
233
243
  super();
234
244
  this._activeCountries = [];
@@ -325,6 +335,10 @@ class UDExMastheadCountrySelector extends UI5Element {
325
335
  this.setActiveCountries(this._activeRegion.countries.filter(country => country.displayTitle.toLowerCase().includes(searchTerm)));
326
336
  }
327
337
 
338
+ this._accSearchResultInfo = this._activeCountries.length
339
+ ? `${this._activeCountries.length} ${this.resultReturnedText}`
340
+ : this.noMatchesFoundText;
341
+
328
342
  this._shouldFocusBackBtn = false;
329
343
  this.fireEvent<SearchEventDetail>("country-selector-search", {
330
344
  value: e.detail.value,
@@ -502,6 +516,14 @@ class UDExMastheadCountrySelector extends UI5Element {
502
516
  });
503
517
  }
504
518
 
519
+ get noMatchesFoundText(): string {
520
+ return UDExMastheadCountrySelector.i18nBundle.getText(NO_MATCHES_FOUND);
521
+ }
522
+
523
+ get resultReturnedText(): string {
524
+ return UDExMastheadCountrySelector.i18nBundle.getText(RESULT_RETURNED);
525
+ }
526
+
505
527
  get items(): Array<UDExMastheadMenuItem> {
506
528
  const items = this.shadowRoot?.querySelectorAll<UDExMastheadMenuItem>(".udex-masthead-country-selector__item");
507
529
  return items ? Array.from(items) : [];
@@ -40,7 +40,9 @@
40
40
  category="{{this.category}}">
41
41
  {{#each this.items}}
42
42
  <li>
43
- {{#if this.url}}
43
+ {{#if this.isDivider}}
44
+ <udex-divider class="udex-masthead-menu__item-divider"></udex-divider>
45
+ {{else}}
44
46
  <udex-masthead-menu-item
45
47
  @click="{{../../../handleMenuItemClick}}"
46
48
  badge="{{this.badge}}"
@@ -48,8 +50,6 @@
48
50
  url="{{this.url}}"
49
51
  label="{{this.title}}">
50
52
  </udex-masthead-menu-item>
51
- {{else}}
52
- <udex-divider class="udex-masthead-menu__item-divider"></udex-divider>
53
53
  {{/if}}
54
54
  </li>
55
55
  {{/each}}
@@ -23,6 +23,7 @@ export type Item = {
23
23
  title: string;
24
24
  url: string;
25
25
  externalLink: boolean;
26
+ isDivider?: boolean;
26
27
  };
27
28
 
28
29
  export type SubMenuLinkItem = {
@@ -199,10 +200,16 @@ class UDExMastheadMenu extends UI5Element {
199
200
  get itemsList(): Array<MenuItem> {
200
201
  let id = 1;
201
202
  const parsedItems: Array<MenuItem> = this.parseArrayFromString(this.subItems);
203
+
202
204
  return parsedItems.map((mainItem: MenuItem) => {
203
- mainItem.subMenuLinkItems = mainItem.subMenuLinkItems.map((category: SubMenuLinkItem) => {
204
- category.categoryId = `${id++}`;
205
- return category;
205
+ mainItem.subMenuLinkItems = mainItem.subMenuLinkItems.map((subMenu: SubMenuLinkItem) => {
206
+ subMenu.categoryId = `${id++}`;
207
+ subMenu.items = subMenu.items.map((item: Item) => ({
208
+ ...item,
209
+ ...(item.title === "-" && { isDivider: true }),
210
+ }));
211
+
212
+ return subMenu;
206
213
  });
207
214
 
208
215
  return mainItem;
@@ -18,6 +18,9 @@ import AnalyticsName from "./types/AnalyticsName.js";
18
18
  // Styles
19
19
  import MastheadMobileMenuCss from "./generated/themes/MastheadMobileMenu.css.js";
20
20
 
21
+ const INDEX_OFFSET_WITH_OVERVIEW = 2;
22
+ const INDEX_OFFSET_WITHOUT_OVERVIEW = 1;
23
+
21
24
  export type MobileItemClickEventDetail = {
22
25
  category?: string,
23
26
  isBack: boolean,
@@ -202,7 +205,7 @@ class UDExMastheadMobileMenu extends UI5Element {
202
205
  handleBackToCategories(e: Event) {
203
206
  e.stopPropagation();
204
207
  this.showCategories();
205
- this.setFocusItemByIndex(this._category.index + 1);
208
+ this.setFocusItemByIndex(this._category.index);
206
209
  this.fireMobileItemEvent(e);
207
210
  }
208
211
 
@@ -311,7 +314,7 @@ class UDExMastheadMobileMenu extends UI5Element {
311
314
 
312
315
  if (target.hasAttribute("is-back-to-categories")) {
313
316
  this.showCategories();
314
- this.setFocusItemByIndex(this._category.index + 1);
317
+ this.setFocusItemByIndex(this._category.index);
315
318
  this.fireMobileItemEvent(e);
316
319
  }
317
320
 
@@ -431,8 +434,9 @@ class UDExMastheadMobileMenu extends UI5Element {
431
434
 
432
435
  openCategoryItems(e: Event) {
433
436
  const item = e.target as UDExMastheadMenuItem;
437
+ const indexOffset = this._clickedItem.href ? INDEX_OFFSET_WITH_OVERVIEW : INDEX_OFFSET_WITHOUT_OVERVIEW;
434
438
  const index = Number(item.getAttribute("id"));
435
- this._category = { ...this._categories[index], index };
439
+ this._category = { ...this._categories[index], index: index + indexOffset };
436
440
  this._showCategories = false;
437
441
  this._showCategoryItems = true;
438
442
  }
@@ -47,7 +47,7 @@
47
47
  {{/if}}
48
48
  {{/if}}
49
49
 
50
- <div class="udex-masthead-shell__right-menu">
50
+ <div class="{{rightMenuClass}}">
51
51
  {{#if hasMobileMenuButtons}}
52
52
  <udex-masthead-item
53
53
  @ui5-item-click="{{handleOpenMobileMenu}}"
@@ -69,10 +69,10 @@
69
69
  {{#if hasSearch}}
70
70
  <div class="udex-masthead-shell__search-icon udex-masthead-shell__item_icon">
71
71
  <udex-masthead-item
72
- class="udex-masthead-shell__search-btn"
73
- icon="search"
74
- @click="{{handleSearchClick}}"
75
- accessible-name="search">
72
+ class="udex-masthead-shell__search-btn"
73
+ icon="search"
74
+ @click="{{handleSearchClick}}"
75
+ accessible-name="search">
76
76
  </udex-masthead-item>
77
77
  </div>
78
78
  {{/if}}
@@ -47,6 +47,17 @@ export const AnalyticsNameEventDetail = {
47
47
  },
48
48
  };
49
49
 
50
+ export enum UDExMastheadVariable {
51
+ mobileMenuHeight = "--udex-masthead-shell-mobile-menu-height",
52
+ itemButtonIconSize = "--udex-masthead-item-button-icon-size",
53
+ itemArrowIconSize = "--udex-masthead-item-arrow-icon-size",
54
+ rightMenuPadding = "--udex-masthead-right-menu-padding",
55
+ exploreMargin = "--udex-masthead-shell-explore-margin",
56
+ itemIconGap = "--udex-masthead-shell-item-icon-gap",
57
+ mastheadHeight = "--udex-masthead-shell-height",
58
+ itemGap = "--udex-masthead-shell-item-gap",
59
+ }
60
+
50
61
  /**
51
62
  * @class
52
63
  *
@@ -367,6 +378,9 @@ class UDExMastheadShell extends UI5Element {
367
378
  @property({ type: Boolean })
368
379
  _closeBtnClicked!: boolean;
369
380
 
381
+ @property({ type: Boolean })
382
+ _isVisible!: boolean;
383
+
370
384
  _searchOpener!: UDExMastheadItem | null | undefined;
371
385
  _mobileMenu!: UDExMastheadMobileMenu | null | undefined;
372
386
  _handleResizeBound: ResizeObserverCallback;
@@ -402,6 +416,8 @@ class UDExMastheadShell extends UI5Element {
402
416
  if (this._closeBtnClicked) {
403
417
  this.focusSearchBtn();
404
418
  }
419
+
420
+ this.updateVisibility();
405
421
  }
406
422
 
407
423
  onEnterDOM(): void {
@@ -451,6 +467,8 @@ class UDExMastheadShell extends UI5Element {
451
467
  } else {
452
468
  this.removeMobileMode();
453
469
  }
470
+
471
+ this._isVisible = true;
454
472
  }
455
473
  }
456
474
 
@@ -642,26 +660,40 @@ class UDExMastheadShell extends UI5Element {
642
660
  const itemsIcon = [...this.shadowRoot!.querySelectorAll<HTMLDivElement>(".udex-masthead-shell__item_icon")];
643
661
  const itemIconWidths = itemsIcon.length * this.getItemIconWidth();
644
662
  const itemIconGaps = itemsIcon.length * this.getItemIconGap();
645
- const exploreSAPWidth = this.hasExploreSAP ? this.getItemWidth(this.exploreSAP[0]) : 0;
663
+ const exploreItem = this.exploreSAP[0];
664
+ const exploreItemIconWidth = exploreItem.hasArrowDown ? this.getItemArrowIconWidth() : 0;
665
+ const exploreSAPWidth = this.hasExploreSAP ? this.getItemWidth(exploreItem) : 0;
646
666
  const rightMenuGaps = this.getRightMenuGap() + this.getExploreSapBtnGap() + itemIconGaps;
647
- return exploreSAPWidth + itemIconWidths + rightMenuGaps;
667
+ return exploreSAPWidth + exploreItemIconWidth + itemIconWidths + rightMenuGaps;
648
668
  }
649
669
 
650
- getItemIconWidth(): number {
670
+ getItemIconSize(cssVariableName: string): number {
651
671
  const item = this.querySelector("[udex-masthead-item]");
652
672
 
653
- if (!item) { return 0; }
673
+ if (!item) {
674
+ return 0;
675
+ }
654
676
 
655
677
  const style = window.getComputedStyle(item);
656
- const itemIconWidthVar = style.getPropertyValue("--udex-masthead-item-button-icon-size");
657
- return parseInt(itemIconWidthVar);
678
+ const iconSizeVar = style.getPropertyValue(cssVariableName);
679
+ return parseInt(iconSizeVar);
680
+ }
681
+
682
+ getItemIconWidth(): number {
683
+ return this.getItemIconSize(UDExMastheadVariable.itemButtonIconSize);
684
+ }
685
+
686
+ getItemArrowIconWidth(): number {
687
+ return this.getItemIconSize(UDExMastheadVariable.itemArrowIconSize);
658
688
  }
659
689
 
660
690
  getMainMenuWidth(): number {
661
691
  const mainItems = this.getSlottedNodes("menuItems");
662
- const gapItemVar = this.getRootVar("--udex-masthead-shell-item-gap");
692
+ const gapItemVar = this.getRootVar(UDExMastheadVariable.itemGap);
663
693
  return mainItems.reduce((accumulatedWidth, item, index) => {
664
- return accumulatedWidth + this.getItemWidth(item as UDExMastheadItem) + (index && parseInt(gapItemVar));
694
+ const mainItem = item as UDExMastheadItem;
695
+ const arrowIconWidth = mainItem.hasArrowDown ? this.getItemArrowIconWidth() : 0;
696
+ return accumulatedWidth + this.getItemWidth(mainItem) + (index && parseInt(gapItemVar) + arrowIconWidth);
665
697
  }, 0);
666
698
  }
667
699
 
@@ -681,17 +713,17 @@ class UDExMastheadShell extends UI5Element {
681
713
  }
682
714
 
683
715
  getItemIconGap(): number {
684
- const gapIconItemVar = this.getRootVar("--udex-masthead-shell-item-icon-gap");
716
+ const gapIconItemVar = this.getRootVar(UDExMastheadVariable.itemIconGap);
685
717
  return parseInt(gapIconItemVar);
686
718
  }
687
719
 
688
720
  getExploreSapBtnGap(): number {
689
- const exploreSapBtnGapVar = this.getRootVar("--udex-masthead-shell-explore-margin");
721
+ const exploreSapBtnGapVar = this.getRootVar(UDExMastheadVariable.exploreMargin);
690
722
  return this.hasExploreSAP ? parseInt(exploreSapBtnGapVar) : 0;
691
723
  }
692
724
 
693
725
  getRightMenuGap(): number {
694
- const rightMenuGapVar = this.getRootVar("--udex-masthead-right-menu-padding");
726
+ const rightMenuGapVar = this.getRootVar(UDExMastheadVariable.rightMenuPadding);
695
727
  return parseInt(rightMenuGapVar);
696
728
  }
697
729
 
@@ -724,9 +756,9 @@ class UDExMastheadShell extends UI5Element {
724
756
  }
725
757
 
726
758
  setMobileMenuHeight(): void {
727
- const mastheadHeight = parseInt(window.getComputedStyle(this).getPropertyValue("--udex-masthead-shell-height"));
759
+ const mastheadHeight = parseInt(window.getComputedStyle(this).getPropertyValue(UDExMastheadVariable.mastheadHeight));
728
760
  const mobileMenuHeight = `${window.innerHeight - mastheadHeight}px`;
729
- this.style.setProperty("--udex-masthead-shell-mobile-menu-height", mobileMenuHeight);
761
+ this.style.setProperty(UDExMastheadVariable.mobileMenuHeight, mobileMenuHeight);
730
762
  }
731
763
 
732
764
  removeMobileMode(): void {
@@ -736,6 +768,10 @@ class UDExMastheadShell extends UI5Element {
736
768
  });
737
769
  }
738
770
 
771
+ updateVisibility(): void {
772
+ this.style.opacity = this.isVisible ? "1" : "0";
773
+ }
774
+
739
775
  /**
740
776
  * Close the search panel.
741
777
  * @public
@@ -911,7 +947,7 @@ class UDExMastheadShell extends UI5Element {
911
947
  }
912
948
 
913
949
  get isMainMenuVisible(): boolean {
914
- return !this.showSearchByDefault && !this._isSearchOpened;
950
+ return !this.showSearchByDefault && !this._isSearchOpened && !!this.menuItems.length;
915
951
  }
916
952
 
917
953
  get isSearchVisible(): boolean {
@@ -925,6 +961,20 @@ class UDExMastheadShell extends UI5Element {
925
961
  get mainNavigationAriaLabel(): string {
926
962
  return UDExMastheadShell.i18nBundle.getText(MAIN_LINKS);
927
963
  }
964
+
965
+ get isVisible(): boolean {
966
+ return this.isMobileMenuMode || !this.menuItems.length || this._isVisible;
967
+ }
968
+
969
+ get isSimpleExploreMode(): boolean {
970
+ return !this.hasSearch && !this.hasProfile && !this.hasCart && !this.hasSupport && !this.hasCountrySelector;
971
+ }
972
+
973
+ get rightMenuClass(): string {
974
+ const root = "udex-masthead-shell__right-menu";
975
+ const simpleExploreClass = this.isSimpleExploreMode ? `${root}_simple-explore` : "";
976
+ return `${root} ${simpleExploreClass}`.trim();
977
+ }
928
978
  }
929
979
 
930
980
  UDExMastheadShell.define();
package/src/Search.ts CHANGED
@@ -19,7 +19,6 @@ import {
19
19
  isSpace,
20
20
  } from "@ui5/webcomponents-base/dist/Keys.js";
21
21
  import { isDesktop } from "@ui5/webcomponents-base/dist/Device.js";
22
- import Button from "@ui5/webcomponents/dist/Button.js";
23
22
  import Icon from "@ui5/webcomponents/dist/Icon.js";
24
23
  import List from "./List.js";
25
24
  import ControlButton from "./ControlButton.js";
@@ -42,6 +41,8 @@ import {
42
41
  OF,
43
42
  } from "./generated/i18n/i18n-defaults.js";
44
43
  import type SearchInputSuggestion from "./features/SearchSuggestionsPopover.js";
44
+ import retryUntilSuccessful from "./utils/retryUntilSuccessful.js";
45
+ import UDExButton from "./Button.js";
45
46
 
46
47
  import SearchTemplate from "./generated/templates/SearchTemplate.lit.js";
47
48
  import SearchSuggestionsTemplate from "./generated/templates/SearchSuggestionsTemplate.lit.js";
@@ -49,7 +50,6 @@ import SearchSuggestionsTemplate from "./generated/templates/SearchSuggestionsTe
49
50
  // Styles
50
51
  import SearchCss from "./generated/themes/Search.css.js";
51
52
  import SearchSuggestionsCss from "./generated/themes/SearchSuggestions.css.js";
52
- import retryUntilSuccessful from "./utils/retryUntilSuccessful.js";
53
53
 
54
54
  const SearchIcon: string = "sap-icon://search";
55
55
 
@@ -122,7 +122,7 @@ export type PopoverPlacement = "Bottom" | "Top";
122
122
  staticAreaTemplate: SearchSuggestionsTemplate,
123
123
  get dependencies() {
124
124
  const Suggestion = getFeature<typeof SearchInputSuggestion>("SearchInputSuggestion");
125
- return ([ControlButton, Button, Icon, List, Popover] as Array<typeof UI5Element>).concat(Suggestion ? [...Suggestion.dependencies] : []);
125
+ return ([ControlButton, UDExButton, Icon, List, Popover] as Array<typeof UI5Element>).concat(Suggestion ? [...Suggestion.dependencies] : []);
126
126
  },
127
127
  })
128
128
 
@@ -8,6 +8,12 @@
8
8
  non-interactive-submit-button
9
9
  show-submit-button>
10
10
  </udex-search>
11
+ <span
12
+ aria-live="polite"
13
+ aria-atomic="true"
14
+ class="hidden">
15
+ {{_accSearchResultInfo}}
16
+ </span>
11
17
  {{/if}}
12
18
  {{#if isListEmpty}}
13
19
  <div class="udex-no-result"><span>{{getNoResultText}}&lrm;</span></div>
@@ -15,7 +15,7 @@ import UDExListGroupHeaderBase from "./ListGroupHeaderBase.js";
15
15
  import { ListMode } from "./types/List.js";
16
16
  import UDExFilterMenuItem from "./FilterMenuItem.js";
17
17
  import { ProcessedItem, SHOW_SEARCH_AFTER_COUNT } from "./types/SearchableListBase.js";
18
- import { NO_MATCHES_FOUND } from "./generated/i18n/i18n-defaults.js";
18
+ import { NO_MATCHES_FOUND, RESULT_RETURNED } from "./generated/i18n/i18n-defaults.js";
19
19
 
20
20
  /**
21
21
  * @class
@@ -177,6 +177,7 @@ class UDExSearchableListBase extends UI5Element {
177
177
  _filteredItems!: Array<ProcessedItem>;
178
178
 
179
179
  _shouldFilterItems?: boolean;
180
+ _accSearchResultInfo?: string;
180
181
 
181
182
  static i18nBundle: I18nBundle;
182
183
 
@@ -274,6 +275,8 @@ class UDExSearchableListBase extends UI5Element {
274
275
  const searchValue: string = e.detail.value;
275
276
  this._shouldFilterItems = true;
276
277
  this._filteredItems = this.filterItems(this.getProcessedItems(), searchValue);
278
+ const items = this.getFlattenItemsArray(this._filteredItems);
279
+ this._accSearchResultInfo = items.length ? `${items.length} ${this.resultReturnedText}` : this.noMatchesFoundText;
277
280
  this.fireEvent("change-search", { value: searchValue });
278
281
  }
279
282
 
@@ -430,6 +433,18 @@ class UDExSearchableListBase extends UI5Element {
430
433
  }
431
434
  }
432
435
 
436
+ getFlattenItemsArray(array: Array<ProcessedItem>): (ProcessedItem | UDExListItemBase)[] {
437
+ return array.flatMap(item => {
438
+ if (item.isGroup) {
439
+ return [
440
+ item,
441
+ ...item.groupItems.filter(groupItem => !groupItem.disabled),
442
+ ];
443
+ }
444
+ return item.item.disabled ? [] : [item.item];
445
+ });
446
+ }
447
+
433
448
  getCurrentIndex(item: Element): number {
434
449
  return this.getDomListItems().indexOf(item);
435
450
  }
@@ -472,7 +487,15 @@ class UDExSearchableListBase extends UI5Element {
472
487
 
473
488
  get getNoResultText(): string {
474
489
  const hasTextProperty = this.noResultText !== "undefined" && this.noResultText.length > 0;
475
- return hasTextProperty ? this.noResultText : UDExSearchableListBase.i18nBundle.getText(NO_MATCHES_FOUND);
490
+ return hasTextProperty ? this.noResultText : this.noMatchesFoundText;
491
+ }
492
+
493
+ get noMatchesFoundText(): string {
494
+ return UDExSearchableListBase.i18nBundle.getText(NO_MATCHES_FOUND);
495
+ }
496
+
497
+ get resultReturnedText(): string {
498
+ return UDExSearchableListBase.i18nBundle.getText(RESULT_RETURNED);
476
499
  }
477
500
 
478
501
  get isListEmpty(): boolean {
@@ -1,3 +1,3 @@
1
1
  import { I18nText } from "@ui5/webcomponents-base/dist/i18nBundle.js";
2
- const COUNT: I18nText = {key: "COUNT", defaultText: "Count"};const OF: I18nText = {key: "OF", defaultText: "of"};const PAGINATION_PAGE: I18nText = {key: "PAGINATION_PAGE", defaultText: "Pagination page"};const SELECTED: I18nText = {key: "SELECTED", defaultText: "Selected"};const FIRST_PAGE: I18nText = {key: "FIRST_PAGE", defaultText: "First page"};const LAST_PAGE: I18nText = {key: "LAST_PAGE", defaultText: "Last page"};const PREVIOUS_PAGE: I18nText = {key: "PREVIOUS_PAGE", defaultText: "Previous page"};const NEXT_PAGE: I18nText = {key: "NEXT_PAGE", defaultText: "Next page"};const CURRENT_PAGE: I18nText = {key: "CURRENT_PAGE", defaultText: "Current page"};const ACTIVATE_PAGE: I18nText = {key: "ACTIVATE_PAGE", defaultText: "Activate page number"};const BUTTON_ARIA_TYPE_PRIMARY: I18nText = {key: "BUTTON_ARIA_TYPE_PRIMARY", defaultText: "Primary"};const BUTTON_ARIA_TYPE_SECONDARY: I18nText = {key: "BUTTON_ARIA_TYPE_SECONDARY", defaultText: "Secondary"};const BUTTON_ARIA_TYPE_TERTIARY: I18nText = {key: "BUTTON_ARIA_TYPE_TERTIARY", defaultText: "Tertiary"};const BUTTON_ARIA_TYPE_WARNING: I18nText = {key: "BUTTON_ARIA_TYPE_WARNING", defaultText: "Warning"};const BUTTON_ARIA_TYPE_POSITIVE: I18nText = {key: "BUTTON_ARIA_TYPE_POSITIVE", defaultText: "Positive"};const BUTTON_ARIA_TYPE_NEGATIVE: I18nText = {key: "BUTTON_ARIA_TYPE_NEGATIVE", defaultText: "Negative"};const BUTTON_ARIA_EMPHASIZED: I18nText = {key: "BUTTON_ARIA_EMPHASIZED", defaultText: "Emphasized"};const BUTTON_ARIA_DEFAULT: I18nText = {key: "BUTTON_ARIA_DEFAULT", defaultText: "Default"};const BUTTON_ARIA_TRANSPARENT: I18nText = {key: "BUTTON_ARIA_TRANSPARENT", defaultText: "Transparent"};const BUTTON_ARIA_ATTENTION: I18nText = {key: "BUTTON_ARIA_ATTENTION", defaultText: "Attention"};const TOGGLED: I18nText = {key: "TOGGLED", defaultText: "Toggled"};const SUGGESTED_TEXT: I18nText = {key: "SUGGESTED_TEXT", defaultText: "Suggested searches"};const ACCESSIBLE_NAME_RESET_ICON: I18nText = {key: "ACCESSIBLE_NAME_RESET_ICON", defaultText: "Clear"};const ACCESSIBLE_NAME_SEARCH_ICON: I18nText = {key: "ACCESSIBLE_NAME_SEARCH_ICON", defaultText: "Search"};const TOOLTIP_RESET_BUTTON: I18nText = {key: "TOOLTIP_RESET_BUTTON", defaultText: "Clear"};const TOOLTIP_VOICE_BUTTON: I18nText = {key: "TOOLTIP_VOICE_BUTTON", defaultText: "Voice"};const TOOLTIP_SUBMIT_BUTTON: I18nText = {key: "TOOLTIP_SUBMIT_BUTTON", defaultText: "Submit"};const LISTENING: I18nText = {key: "LISTENING", defaultText: "Listening"};const AVAILABLE_VALUES: I18nText = {key: "AVAILABLE_VALUES", defaultText: "Available Values"};const RECOMMENDED_TEXT: I18nText = {key: "RECOMMENDED_TEXT", defaultText: "Recommended pages"};const EXPAND_ALL: I18nText = {key: "EXPAND_ALL", defaultText: "Expand All"};const COLLAPSE_ALL: I18nText = {key: "COLLAPSE_ALL", defaultText: "Collapse All"};const MORE: I18nText = {key: "MORE", defaultText: "More"};const ATTENTION_BADGE: I18nText = {key: "ATTENTION_BADGE", defaultText: "Attention badge"};const REVIEWS: I18nText = {key: "REVIEWS", defaultText: "reviews"};const STARS: I18nText = {key: "STARS", defaultText: "stars"};const READ_MORE: I18nText = {key: "READ_MORE", defaultText: "Read more"};const READ_LESS: I18nText = {key: "READ_LESS", defaultText: "Read less"};const RATING_INDICATOR_TEXT: I18nText = {key: "RATING_INDICATOR_TEXT", defaultText: "Rating Indicator"};const RATING_INDICATOR_TOOLTIP_TEXT: I18nText = {key: "RATING_INDICATOR_TOOLTIP_TEXT", defaultText: "Rating"};const RATING_INDICATOR_ARIA_DESCRIPTION: I18nText = {key: "RATING_INDICATOR_ARIA_DESCRIPTION", defaultText: "Required"};const TOTAL: I18nText = {key: "TOTAL", defaultText: "Total"};const MESSAGE_STRIP_CLOSE_BUTTON: I18nText = {key: "MESSAGE_STRIP_CLOSE_BUTTON", defaultText: "Message Strip Close Button"};const MESSAGE_STRIP_INFORMATION: I18nText = {key: "MESSAGE_STRIP_INFORMATION", defaultText: "Information Bar"};const MESSAGE_STRIP_SUCCESS: I18nText = {key: "MESSAGE_STRIP_SUCCESS", defaultText: "Positive Bar"};const MESSAGE_STRIP_WARNING: I18nText = {key: "MESSAGE_STRIP_WARNING", defaultText: "Warning Bar"};const MESSAGE_STRIP_ERROR: I18nText = {key: "MESSAGE_STRIP_ERROR", defaultText: "Negative Bar"};const MESSAGE_STRIP_ACTION: I18nText = {key: "MESSAGE_STRIP_ACTION", defaultText: "Action Bar"};const ARIA_LABEL_LIST_MULTISELECTABLE: I18nText = {key: "ARIA_LABEL_LIST_MULTISELECTABLE", defaultText: "Contains Multi-Selectable Items"};const ARIA_LABEL_LIST_SELECTABLE: I18nText = {key: "ARIA_LABEL_LIST_SELECTABLE", defaultText: "Contains Selectable Items"};const UNSELECTED: I18nText = {key: "UNSELECTED", defaultText: "Unselected"};const INDETERMINATE: I18nText = {key: "INDETERMINATE", defaultText: "Indeterminate"};const EDIT_BUTTON: I18nText = {key: "EDIT_BUTTON", defaultText: "Edit"};const DELETE_BUTTON: I18nText = {key: "DELETE_BUTTON", defaultText: "Delete"};const TEXTAREA_CHARACTERS_LEFT: I18nText = {key: "TEXTAREA_CHARACTERS_LEFT", defaultText: "{0} characters remaining"};const VALUE_STATE_TYPE_ERROR: I18nText = {key: "VALUE_STATE_TYPE_ERROR", defaultText: "Field State Error"};const VALUE_STATE_TYPE_WARNING: I18nText = {key: "VALUE_STATE_TYPE_WARNING", defaultText: "Field State Warning"};const VALUE_STATE_TYPE_SUCCESS: I18nText = {key: "VALUE_STATE_TYPE_SUCCESS", defaultText: "Field State Success"};const VALUE_STATE_TYPE_STANDARD: I18nText = {key: "VALUE_STATE_TYPE_STANDARD", defaultText: "Field State Standard"};const TEXT_FIELD: I18nText = {key: "TEXT_FIELD", defaultText: "Text field"};const CAROUSEL_PREVIOUS_ARROW_TEXT: I18nText = {key: "CAROUSEL_PREVIOUS_ARROW_TEXT", defaultText: "Previous Page"};const CAROUSEL_NEXT_ARROW_TEXT: I18nText = {key: "CAROUSEL_NEXT_ARROW_TEXT", defaultText: "Next Page"};const SHOW_RESULTS: I18nText = {key: "SHOW_RESULTS", defaultText: "Show Results"};const RESET: I18nText = {key: "RESET", defaultText: "Reset"};const SELECT_OPTIONS: I18nText = {key: "SELECT_OPTIONS", defaultText: "Select Options"};const SELECT_ALL: I18nText = {key: "SELECT_ALL", defaultText: "Select All"};const BREADCRUMBS_ARIA_LABEL: I18nText = {key: "BREADCRUMBS_ARIA_LABEL", defaultText: "Breadcrumb Trail"};const BREADCRUMBS_OVERFLOW_ARIA_LABEL: I18nText = {key: "BREADCRUMBS_OVERFLOW_ARIA_LABEL", defaultText: "More"};const STEPINPUT_INC_ICON_TITLE: I18nText = {key: "STEPINPUT_INC_ICON_TITLE", defaultText: "Increase Quantity by"};const STEPINPUT_DEC_ICON_TITLE: I18nText = {key: "STEPINPUT_DEC_ICON_TITLE", defaultText: "Decrease Quantity by"};const NO_MATCHES_FOUND: I18nText = {key: "NO_MATCHES_FOUND", defaultText: "No matches found."};const VALUE_STATE_ERROR: I18nText = {key: "VALUE_STATE_ERROR", defaultText: "Invalid entry"};const VALUE_STATE_WARNING: I18nText = {key: "VALUE_STATE_WARNING", defaultText: "Warning issued"};const VALUE_STATE_INFORMATION: I18nText = {key: "VALUE_STATE_INFORMATION", defaultText: "Informative entry"};const VALUE_STATE_SUCCESS: I18nText = {key: "VALUE_STATE_SUCCESS", defaultText: "Entry successfully validated"};const READ_ONLY: I18nText = {key: "READ_ONLY", defaultText: "Read only"};const MAIN_LINKS: I18nText = {key: "MAIN_LINKS", defaultText: "main links"};const OPENS_IN_A_NEW_WINDOW: I18nText = {key: "OPENS_IN_A_NEW_WINDOW", defaultText: "opens in a new window"};const LOGOUT: I18nText = {key: "LOGOUT", defaultText: "Logout"};const PROFILE: I18nText = {key: "PROFILE", defaultText: "Profile"};const COUNTRY_SELECT: I18nText = {key: "COUNTRY_SELECT", defaultText: "Select country"};const OVERVIEW: I18nText = {key: "OVERVIEW", defaultText: "Overview"};const CART: I18nText = {key: "CART", defaultText: "Cart"};const COUNTRY_SELECTOR: I18nText = {key: "COUNTRY_SELECTOR", defaultText: "Country Selector"};const SUPPORT: I18nText = {key: "SUPPORT", defaultText: "Support"};const SEARCH: I18nText = {key: "SEARCH", defaultText: "Search"};const SHOW_HIDE_PASSWORD: I18nText = {key: "SHOW_HIDE_PASSWORD", defaultText: "Show/Hide Password Button"};const SOCIAL_LINK_ICON: I18nText = {key: "SOCIAL_LINK_ICON", defaultText: "Link Graphic"};const PHONE_NUMBER: I18nText = {key: "PHONE_NUMBER", defaultText: "Phone number"};const CONTACT_US: I18nText = {key: "CONTACT_US", defaultText: "Contact us"};const EMAIL: I18nText = {key: "EMAIL", defaultText: "Email"};const CHAT_WITH_US: I18nText = {key: "CHAT_WITH_US", defaultText: "Chat with us"};const QUICK_LINKS: I18nText = {key: "QUICK_LINKS", defaultText: "Quick Links"};const TRENDING: I18nText = {key: "TRENDING", defaultText: "Trending"};const ABOUT_SAP: I18nText = {key: "ABOUT_SAP", defaultText: "About SAP"};const SITE_INFORMATION: I18nText = {key: "SITE_INFORMATION", defaultText: "Site Information"};const SEE_COMPLETE_LIST: I18nText = {key: "SEE_COMPLETE_LIST", defaultText: "Or see our complete list of"};const LOCAL_COUNTRY_NAMES: I18nText = {key: "LOCAL_COUNTRY_NAMES", defaultText: "local country numbers"};const COPYRIGHT: I18nText = {key: "COPYRIGHT", defaultText: "© {0} SAP SE or an SAP affiliate company. All rights reserved."};const PUBLIC_SECURITY_NETWORK_NUMBER: I18nText = {key: "PUBLIC_SECURITY_NETWORK_NUMBER", defaultText: ""};const ICP_NUMBER: I18nText = {key: "ICP_NUMBER", defaultText: ""};const AVATAR_TEXT: I18nText = {key: "AVATAR_TEXT", defaultText: "Avatar"};const DISABLED: I18nText = {key: "DISABLED", defaultText: "Disabled"};const STATUS_BADGE_TEXT: I18nText = {key: "STATUS_BADGE_TEXT", defaultText: "Status badge"};const STATUS_BADGE_EDIT_TITLE: I18nText = {key: "STATUS_BADGE_EDIT_TITLE", defaultText: "Click to edit profile"};const STATUS_BADGE_INFORMATION_TITLE: I18nText = {key: "STATUS_BADGE_INFORMATION_TITLE", defaultText: "Click to open profile information"};const STATUS_BADGE_WARNING_TITLE: I18nText = {key: "STATUS_BADGE_WARNING_TITLE", defaultText: "Warning, potential risk with the profile"};const STATUS_BADGE_ERROR_TITLE: I18nText = {key: "STATUS_BADGE_ERROR_TITLE", defaultText: "There is an error with the profile"};const STATUS_BADGE_SUCCESS_TITLE: I18nText = {key: "STATUS_BADGE_SUCCESS_TITLE", defaultText: "Successfully verified profile"};const CALENDAR_ICON: I18nText = {key: "CALENDAR_ICON", defaultText: "Open Calendar icon"};const DATEPICKER_DATE_DESCRIPTION: I18nText = {key: "DATEPICKER_DATE_DESCRIPTION", defaultText: "Date Input"};const TABLE_NO_DATA_FOUND: I18nText = {key: "TABLE_NO_DATA_FOUND", defaultText: "No data found"};const LIST_ITEM_EDIT_ICON: I18nText = {key: "LIST_ITEM_EDIT_ICON", defaultText: "Edit list item entry"};const LIST_ITEM_DELETE_ICON: I18nText = {key: "LIST_ITEM_DELETE_ICON", defaultText: "Delete list item entry"};const BACK_BUTTON_LABEL: I18nText = {key: "BACK_BUTTON_LABEL", defaultText: "back button"};const TRIGGER: I18nText = {key: "TRIGGER", defaultText: "Dropdown trigger"};const UPLOADING_FILE_STATUS_TEXT: I18nText = {key: "UPLOADING_FILE_STATUS_TEXT", defaultText: "Uploading"};const TERMINATED_FILE_STATUS_TEXT: I18nText = {key: "TERMINATED_FILE_STATUS_TEXT", defaultText: "Terminated"};const REMOVE_FILE_TEXT: I18nText = {key: "REMOVE_FILE_TEXT", defaultText: "Remove file"};const UPLOAD_BUTTON_LABEL: I18nText = {key: "UPLOAD_BUTTON_LABEL", defaultText: "Upload file"};
3
- export {COUNT,OF,PAGINATION_PAGE,SELECTED,FIRST_PAGE,LAST_PAGE,PREVIOUS_PAGE,NEXT_PAGE,CURRENT_PAGE,ACTIVATE_PAGE,BUTTON_ARIA_TYPE_PRIMARY,BUTTON_ARIA_TYPE_SECONDARY,BUTTON_ARIA_TYPE_TERTIARY,BUTTON_ARIA_TYPE_WARNING,BUTTON_ARIA_TYPE_POSITIVE,BUTTON_ARIA_TYPE_NEGATIVE,BUTTON_ARIA_EMPHASIZED,BUTTON_ARIA_DEFAULT,BUTTON_ARIA_TRANSPARENT,BUTTON_ARIA_ATTENTION,TOGGLED,SUGGESTED_TEXT,ACCESSIBLE_NAME_RESET_ICON,ACCESSIBLE_NAME_SEARCH_ICON,TOOLTIP_RESET_BUTTON,TOOLTIP_VOICE_BUTTON,TOOLTIP_SUBMIT_BUTTON,LISTENING,AVAILABLE_VALUES,RECOMMENDED_TEXT,EXPAND_ALL,COLLAPSE_ALL,MORE,ATTENTION_BADGE,REVIEWS,STARS,READ_MORE,READ_LESS,RATING_INDICATOR_TEXT,RATING_INDICATOR_TOOLTIP_TEXT,RATING_INDICATOR_ARIA_DESCRIPTION,TOTAL,MESSAGE_STRIP_CLOSE_BUTTON,MESSAGE_STRIP_INFORMATION,MESSAGE_STRIP_SUCCESS,MESSAGE_STRIP_WARNING,MESSAGE_STRIP_ERROR,MESSAGE_STRIP_ACTION,ARIA_LABEL_LIST_MULTISELECTABLE,ARIA_LABEL_LIST_SELECTABLE,UNSELECTED,INDETERMINATE,EDIT_BUTTON,DELETE_BUTTON,TEXTAREA_CHARACTERS_LEFT,VALUE_STATE_TYPE_ERROR,VALUE_STATE_TYPE_WARNING,VALUE_STATE_TYPE_SUCCESS,VALUE_STATE_TYPE_STANDARD,TEXT_FIELD,CAROUSEL_PREVIOUS_ARROW_TEXT,CAROUSEL_NEXT_ARROW_TEXT,SHOW_RESULTS,RESET,SELECT_OPTIONS,SELECT_ALL,BREADCRUMBS_ARIA_LABEL,BREADCRUMBS_OVERFLOW_ARIA_LABEL,STEPINPUT_INC_ICON_TITLE,STEPINPUT_DEC_ICON_TITLE,NO_MATCHES_FOUND,VALUE_STATE_ERROR,VALUE_STATE_WARNING,VALUE_STATE_INFORMATION,VALUE_STATE_SUCCESS,READ_ONLY,MAIN_LINKS,OPENS_IN_A_NEW_WINDOW,LOGOUT,PROFILE,COUNTRY_SELECT,OVERVIEW,CART,COUNTRY_SELECTOR,SUPPORT,SEARCH,SHOW_HIDE_PASSWORD,SOCIAL_LINK_ICON,PHONE_NUMBER,CONTACT_US,EMAIL,CHAT_WITH_US,QUICK_LINKS,TRENDING,ABOUT_SAP,SITE_INFORMATION,SEE_COMPLETE_LIST,LOCAL_COUNTRY_NAMES,COPYRIGHT,PUBLIC_SECURITY_NETWORK_NUMBER,ICP_NUMBER,AVATAR_TEXT,DISABLED,STATUS_BADGE_TEXT,STATUS_BADGE_EDIT_TITLE,STATUS_BADGE_INFORMATION_TITLE,STATUS_BADGE_WARNING_TITLE,STATUS_BADGE_ERROR_TITLE,STATUS_BADGE_SUCCESS_TITLE,CALENDAR_ICON,DATEPICKER_DATE_DESCRIPTION,TABLE_NO_DATA_FOUND,LIST_ITEM_EDIT_ICON,LIST_ITEM_DELETE_ICON,BACK_BUTTON_LABEL,TRIGGER,UPLOADING_FILE_STATUS_TEXT,TERMINATED_FILE_STATUS_TEXT,REMOVE_FILE_TEXT,UPLOAD_BUTTON_LABEL};
2
+ const COUNT: I18nText = {key: "COUNT", defaultText: "Count"};const OF: I18nText = {key: "OF", defaultText: "of"};const PAGINATION_PAGE: I18nText = {key: "PAGINATION_PAGE", defaultText: "Pagination page"};const SELECTED: I18nText = {key: "SELECTED", defaultText: "Selected"};const FIRST_PAGE: I18nText = {key: "FIRST_PAGE", defaultText: "First page"};const LAST_PAGE: I18nText = {key: "LAST_PAGE", defaultText: "Last page"};const PREVIOUS_PAGE: I18nText = {key: "PREVIOUS_PAGE", defaultText: "Previous page"};const NEXT_PAGE: I18nText = {key: "NEXT_PAGE", defaultText: "Next page"};const CURRENT_PAGE: I18nText = {key: "CURRENT_PAGE", defaultText: "Current page"};const ACTIVATE_PAGE: I18nText = {key: "ACTIVATE_PAGE", defaultText: "Activate page number"};const BUTTON_ARIA_TYPE_PRIMARY: I18nText = {key: "BUTTON_ARIA_TYPE_PRIMARY", defaultText: "Primary"};const BUTTON_ARIA_TYPE_SECONDARY: I18nText = {key: "BUTTON_ARIA_TYPE_SECONDARY", defaultText: "Secondary"};const BUTTON_ARIA_TYPE_TERTIARY: I18nText = {key: "BUTTON_ARIA_TYPE_TERTIARY", defaultText: "Tertiary"};const BUTTON_ARIA_TYPE_WARNING: I18nText = {key: "BUTTON_ARIA_TYPE_WARNING", defaultText: "Warning"};const BUTTON_ARIA_TYPE_POSITIVE: I18nText = {key: "BUTTON_ARIA_TYPE_POSITIVE", defaultText: "Positive"};const BUTTON_ARIA_TYPE_NEGATIVE: I18nText = {key: "BUTTON_ARIA_TYPE_NEGATIVE", defaultText: "Negative"};const BUTTON_ARIA_EMPHASIZED: I18nText = {key: "BUTTON_ARIA_EMPHASIZED", defaultText: "Emphasized"};const BUTTON_ARIA_DEFAULT: I18nText = {key: "BUTTON_ARIA_DEFAULT", defaultText: "Default"};const BUTTON_ARIA_TRANSPARENT: I18nText = {key: "BUTTON_ARIA_TRANSPARENT", defaultText: "Transparent"};const BUTTON_ARIA_ATTENTION: I18nText = {key: "BUTTON_ARIA_ATTENTION", defaultText: "Attention"};const TOGGLED: I18nText = {key: "TOGGLED", defaultText: "Toggled"};const SUGGESTED_TEXT: I18nText = {key: "SUGGESTED_TEXT", defaultText: "Suggested searches"};const ACCESSIBLE_NAME_RESET_ICON: I18nText = {key: "ACCESSIBLE_NAME_RESET_ICON", defaultText: "Clear"};const ACCESSIBLE_NAME_SEARCH_ICON: I18nText = {key: "ACCESSIBLE_NAME_SEARCH_ICON", defaultText: "Search"};const TOOLTIP_RESET_BUTTON: I18nText = {key: "TOOLTIP_RESET_BUTTON", defaultText: "Clear"};const TOOLTIP_VOICE_BUTTON: I18nText = {key: "TOOLTIP_VOICE_BUTTON", defaultText: "Voice"};const TOOLTIP_SUBMIT_BUTTON: I18nText = {key: "TOOLTIP_SUBMIT_BUTTON", defaultText: "Submit"};const LISTENING: I18nText = {key: "LISTENING", defaultText: "Listening"};const AVAILABLE_VALUES: I18nText = {key: "AVAILABLE_VALUES", defaultText: "Available Values"};const RECOMMENDED_TEXT: I18nText = {key: "RECOMMENDED_TEXT", defaultText: "Recommended pages"};const EXPAND_ALL: I18nText = {key: "EXPAND_ALL", defaultText: "Expand All"};const COLLAPSE_ALL: I18nText = {key: "COLLAPSE_ALL", defaultText: "Collapse All"};const MORE: I18nText = {key: "MORE", defaultText: "More"};const ATTENTION_BADGE: I18nText = {key: "ATTENTION_BADGE", defaultText: "Attention badge"};const REVIEWS: I18nText = {key: "REVIEWS", defaultText: "reviews"};const STARS: I18nText = {key: "STARS", defaultText: "stars"};const READ_MORE: I18nText = {key: "READ_MORE", defaultText: "Read more"};const READ_LESS: I18nText = {key: "READ_LESS", defaultText: "Read less"};const RATING_INDICATOR_TEXT: I18nText = {key: "RATING_INDICATOR_TEXT", defaultText: "Rating Indicator"};const RATING_INDICATOR_TOOLTIP_TEXT: I18nText = {key: "RATING_INDICATOR_TOOLTIP_TEXT", defaultText: "Rating"};const RATING_INDICATOR_ARIA_DESCRIPTION: I18nText = {key: "RATING_INDICATOR_ARIA_DESCRIPTION", defaultText: "Required"};const TOTAL: I18nText = {key: "TOTAL", defaultText: "Total"};const MESSAGE_STRIP_CLOSE_BUTTON: I18nText = {key: "MESSAGE_STRIP_CLOSE_BUTTON", defaultText: "Message Strip Close Button"};const MESSAGE_STRIP_INFORMATION: I18nText = {key: "MESSAGE_STRIP_INFORMATION", defaultText: "Information Bar"};const MESSAGE_STRIP_SUCCESS: I18nText = {key: "MESSAGE_STRIP_SUCCESS", defaultText: "Positive Bar"};const MESSAGE_STRIP_WARNING: I18nText = {key: "MESSAGE_STRIP_WARNING", defaultText: "Warning Bar"};const MESSAGE_STRIP_ERROR: I18nText = {key: "MESSAGE_STRIP_ERROR", defaultText: "Negative Bar"};const MESSAGE_STRIP_ACTION: I18nText = {key: "MESSAGE_STRIP_ACTION", defaultText: "Action Bar"};const ARIA_LABEL_LIST_MULTISELECTABLE: I18nText = {key: "ARIA_LABEL_LIST_MULTISELECTABLE", defaultText: "Contains Multi-Selectable Items"};const ARIA_LABEL_LIST_SELECTABLE: I18nText = {key: "ARIA_LABEL_LIST_SELECTABLE", defaultText: "Contains Selectable Items"};const UNSELECTED: I18nText = {key: "UNSELECTED", defaultText: "Unselected"};const INDETERMINATE: I18nText = {key: "INDETERMINATE", defaultText: "Indeterminate"};const EDIT_BUTTON: I18nText = {key: "EDIT_BUTTON", defaultText: "Edit"};const DELETE_BUTTON: I18nText = {key: "DELETE_BUTTON", defaultText: "Delete"};const TEXTAREA_CHARACTERS_LEFT: I18nText = {key: "TEXTAREA_CHARACTERS_LEFT", defaultText: "{0} characters remaining"};const VALUE_STATE_TYPE_ERROR: I18nText = {key: "VALUE_STATE_TYPE_ERROR", defaultText: "Field State Error"};const VALUE_STATE_TYPE_WARNING: I18nText = {key: "VALUE_STATE_TYPE_WARNING", defaultText: "Field State Warning"};const VALUE_STATE_TYPE_SUCCESS: I18nText = {key: "VALUE_STATE_TYPE_SUCCESS", defaultText: "Field State Success"};const VALUE_STATE_TYPE_STANDARD: I18nText = {key: "VALUE_STATE_TYPE_STANDARD", defaultText: "Field State Standard"};const TEXT_FIELD: I18nText = {key: "TEXT_FIELD", defaultText: "Text field"};const CAROUSEL_PREVIOUS_ARROW_TEXT: I18nText = {key: "CAROUSEL_PREVIOUS_ARROW_TEXT", defaultText: "Previous Page"};const CAROUSEL_NEXT_ARROW_TEXT: I18nText = {key: "CAROUSEL_NEXT_ARROW_TEXT", defaultText: "Next Page"};const SHOW_RESULTS: I18nText = {key: "SHOW_RESULTS", defaultText: "Show Results"};const RESET: I18nText = {key: "RESET", defaultText: "Reset"};const SELECT_OPTIONS: I18nText = {key: "SELECT_OPTIONS", defaultText: "Select Options"};const SELECT_ALL: I18nText = {key: "SELECT_ALL", defaultText: "Select All"};const BREADCRUMBS_ARIA_LABEL: I18nText = {key: "BREADCRUMBS_ARIA_LABEL", defaultText: "Breadcrumb Trail"};const BREADCRUMBS_OVERFLOW_ARIA_LABEL: I18nText = {key: "BREADCRUMBS_OVERFLOW_ARIA_LABEL", defaultText: "More"};const STEPINPUT_INC_ICON_TITLE: I18nText = {key: "STEPINPUT_INC_ICON_TITLE", defaultText: "Increase Quantity by"};const STEPINPUT_DEC_ICON_TITLE: I18nText = {key: "STEPINPUT_DEC_ICON_TITLE", defaultText: "Decrease Quantity by"};const NO_MATCHES_FOUND: I18nText = {key: "NO_MATCHES_FOUND", defaultText: "No matches found."};const RESULT_RETURNED: I18nText = {key: "RESULT_RETURNED", defaultText: "results returned."};const VALUE_STATE_ERROR: I18nText = {key: "VALUE_STATE_ERROR", defaultText: "Invalid entry"};const VALUE_STATE_WARNING: I18nText = {key: "VALUE_STATE_WARNING", defaultText: "Warning issued"};const VALUE_STATE_INFORMATION: I18nText = {key: "VALUE_STATE_INFORMATION", defaultText: "Informative entry"};const VALUE_STATE_SUCCESS: I18nText = {key: "VALUE_STATE_SUCCESS", defaultText: "Entry successfully validated"};const READ_ONLY: I18nText = {key: "READ_ONLY", defaultText: "Read only"};const MAIN_LINKS: I18nText = {key: "MAIN_LINKS", defaultText: "main links"};const OPENS_IN_A_NEW_WINDOW: I18nText = {key: "OPENS_IN_A_NEW_WINDOW", defaultText: "opens in a new window"};const LOGOUT: I18nText = {key: "LOGOUT", defaultText: "Logout"};const PROFILE: I18nText = {key: "PROFILE", defaultText: "Profile"};const COUNTRY_SELECT: I18nText = {key: "COUNTRY_SELECT", defaultText: "Select country"};const OVERVIEW: I18nText = {key: "OVERVIEW", defaultText: "Overview"};const CART: I18nText = {key: "CART", defaultText: "Cart"};const COUNTRY_SELECTOR: I18nText = {key: "COUNTRY_SELECTOR", defaultText: "Country Selector"};const SUPPORT: I18nText = {key: "SUPPORT", defaultText: "Support"};const SEARCH: I18nText = {key: "SEARCH", defaultText: "Search"};const SHOW_HIDE_PASSWORD: I18nText = {key: "SHOW_HIDE_PASSWORD", defaultText: "Show/Hide Password Button"};const SOCIAL_LINK_ICON: I18nText = {key: "SOCIAL_LINK_ICON", defaultText: "Link Graphic"};const PHONE_NUMBER: I18nText = {key: "PHONE_NUMBER", defaultText: "Phone number"};const CONTACT_US: I18nText = {key: "CONTACT_US", defaultText: "Contact us"};const EMAIL: I18nText = {key: "EMAIL", defaultText: "Email"};const CHAT_WITH_US: I18nText = {key: "CHAT_WITH_US", defaultText: "Chat with us"};const QUICK_LINKS: I18nText = {key: "QUICK_LINKS", defaultText: "Quick Links"};const TRENDING: I18nText = {key: "TRENDING", defaultText: "Trending"};const ABOUT_SAP: I18nText = {key: "ABOUT_SAP", defaultText: "About SAP"};const SITE_INFORMATION: I18nText = {key: "SITE_INFORMATION", defaultText: "Site Information"};const SEE_COMPLETE_LIST: I18nText = {key: "SEE_COMPLETE_LIST", defaultText: "Or see our complete list of"};const LOCAL_COUNTRY_NAMES: I18nText = {key: "LOCAL_COUNTRY_NAMES", defaultText: "local country numbers"};const COPYRIGHT: I18nText = {key: "COPYRIGHT", defaultText: "© {0} SAP SE or an SAP affiliate company. All rights reserved."};const PUBLIC_SECURITY_NETWORK_NUMBER: I18nText = {key: "PUBLIC_SECURITY_NETWORK_NUMBER", defaultText: ""};const ICP_NUMBER: I18nText = {key: "ICP_NUMBER", defaultText: ""};const AVATAR_TEXT: I18nText = {key: "AVATAR_TEXT", defaultText: "Avatar"};const DISABLED: I18nText = {key: "DISABLED", defaultText: "Disabled"};const STATUS_BADGE_TEXT: I18nText = {key: "STATUS_BADGE_TEXT", defaultText: "Status badge"};const STATUS_BADGE_EDIT_TITLE: I18nText = {key: "STATUS_BADGE_EDIT_TITLE", defaultText: "Click to edit profile"};const STATUS_BADGE_INFORMATION_TITLE: I18nText = {key: "STATUS_BADGE_INFORMATION_TITLE", defaultText: "Click to open profile information"};const STATUS_BADGE_WARNING_TITLE: I18nText = {key: "STATUS_BADGE_WARNING_TITLE", defaultText: "Warning, potential risk with the profile"};const STATUS_BADGE_ERROR_TITLE: I18nText = {key: "STATUS_BADGE_ERROR_TITLE", defaultText: "There is an error with the profile"};const STATUS_BADGE_SUCCESS_TITLE: I18nText = {key: "STATUS_BADGE_SUCCESS_TITLE", defaultText: "Successfully verified profile"};const CALENDAR_ICON: I18nText = {key: "CALENDAR_ICON", defaultText: "Open Calendar icon"};const DATEPICKER_DATE_DESCRIPTION: I18nText = {key: "DATEPICKER_DATE_DESCRIPTION", defaultText: "Date Input"};const TABLE_NO_DATA_FOUND: I18nText = {key: "TABLE_NO_DATA_FOUND", defaultText: "No data found"};const LIST_ITEM_EDIT_ICON: I18nText = {key: "LIST_ITEM_EDIT_ICON", defaultText: "Edit list item entry"};const LIST_ITEM_DELETE_ICON: I18nText = {key: "LIST_ITEM_DELETE_ICON", defaultText: "Delete list item entry"};const BACK_BUTTON_LABEL: I18nText = {key: "BACK_BUTTON_LABEL", defaultText: "back button"};const TRIGGER: I18nText = {key: "TRIGGER", defaultText: "Dropdown trigger"};const UPLOADING_FILE_STATUS_TEXT: I18nText = {key: "UPLOADING_FILE_STATUS_TEXT", defaultText: "Uploading"};const TERMINATED_FILE_STATUS_TEXT: I18nText = {key: "TERMINATED_FILE_STATUS_TEXT", defaultText: "Terminated"};const REMOVE_FILE_TEXT: I18nText = {key: "REMOVE_FILE_TEXT", defaultText: "Remove file"};const UPLOAD_BUTTON_LABEL: I18nText = {key: "UPLOAD_BUTTON_LABEL", defaultText: "Upload file"};
3
+ export {COUNT,OF,PAGINATION_PAGE,SELECTED,FIRST_PAGE,LAST_PAGE,PREVIOUS_PAGE,NEXT_PAGE,CURRENT_PAGE,ACTIVATE_PAGE,BUTTON_ARIA_TYPE_PRIMARY,BUTTON_ARIA_TYPE_SECONDARY,BUTTON_ARIA_TYPE_TERTIARY,BUTTON_ARIA_TYPE_WARNING,BUTTON_ARIA_TYPE_POSITIVE,BUTTON_ARIA_TYPE_NEGATIVE,BUTTON_ARIA_EMPHASIZED,BUTTON_ARIA_DEFAULT,BUTTON_ARIA_TRANSPARENT,BUTTON_ARIA_ATTENTION,TOGGLED,SUGGESTED_TEXT,ACCESSIBLE_NAME_RESET_ICON,ACCESSIBLE_NAME_SEARCH_ICON,TOOLTIP_RESET_BUTTON,TOOLTIP_VOICE_BUTTON,TOOLTIP_SUBMIT_BUTTON,LISTENING,AVAILABLE_VALUES,RECOMMENDED_TEXT,EXPAND_ALL,COLLAPSE_ALL,MORE,ATTENTION_BADGE,REVIEWS,STARS,READ_MORE,READ_LESS,RATING_INDICATOR_TEXT,RATING_INDICATOR_TOOLTIP_TEXT,RATING_INDICATOR_ARIA_DESCRIPTION,TOTAL,MESSAGE_STRIP_CLOSE_BUTTON,MESSAGE_STRIP_INFORMATION,MESSAGE_STRIP_SUCCESS,MESSAGE_STRIP_WARNING,MESSAGE_STRIP_ERROR,MESSAGE_STRIP_ACTION,ARIA_LABEL_LIST_MULTISELECTABLE,ARIA_LABEL_LIST_SELECTABLE,UNSELECTED,INDETERMINATE,EDIT_BUTTON,DELETE_BUTTON,TEXTAREA_CHARACTERS_LEFT,VALUE_STATE_TYPE_ERROR,VALUE_STATE_TYPE_WARNING,VALUE_STATE_TYPE_SUCCESS,VALUE_STATE_TYPE_STANDARD,TEXT_FIELD,CAROUSEL_PREVIOUS_ARROW_TEXT,CAROUSEL_NEXT_ARROW_TEXT,SHOW_RESULTS,RESET,SELECT_OPTIONS,SELECT_ALL,BREADCRUMBS_ARIA_LABEL,BREADCRUMBS_OVERFLOW_ARIA_LABEL,STEPINPUT_INC_ICON_TITLE,STEPINPUT_DEC_ICON_TITLE,NO_MATCHES_FOUND,RESULT_RETURNED,VALUE_STATE_ERROR,VALUE_STATE_WARNING,VALUE_STATE_INFORMATION,VALUE_STATE_SUCCESS,READ_ONLY,MAIN_LINKS,OPENS_IN_A_NEW_WINDOW,LOGOUT,PROFILE,COUNTRY_SELECT,OVERVIEW,CART,COUNTRY_SELECTOR,SUPPORT,SEARCH,SHOW_HIDE_PASSWORD,SOCIAL_LINK_ICON,PHONE_NUMBER,CONTACT_US,EMAIL,CHAT_WITH_US,QUICK_LINKS,TRENDING,ABOUT_SAP,SITE_INFORMATION,SEE_COMPLETE_LIST,LOCAL_COUNTRY_NAMES,COPYRIGHT,PUBLIC_SECURITY_NETWORK_NUMBER,ICP_NUMBER,AVATAR_TEXT,DISABLED,STATUS_BADGE_TEXT,STATUS_BADGE_EDIT_TITLE,STATUS_BADGE_INFORMATION_TITLE,STATUS_BADGE_WARNING_TITLE,STATUS_BADGE_ERROR_TITLE,STATUS_BADGE_SUCCESS_TITLE,CALENDAR_ICON,DATEPICKER_DATE_DESCRIPTION,TABLE_NO_DATA_FOUND,LIST_ITEM_EDIT_ICON,LIST_ITEM_DELETE_ICON,BACK_BUTTON_LABEL,TRIGGER,UPLOADING_FILE_STATUS_TEXT,TERMINATED_FILE_STATUS_TEXT,REMOVE_FILE_TEXT,UPLOAD_BUTTON_LABEL};
@@ -4,7 +4,7 @@ import type UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
4
4
  import type Accordion from "../../Accordion.js";
5
5
  import type { ClassMapValue } from "@ui5/webcomponents-base/dist/types.js";
6
6
 
7
- function block0 (this: Accordion, context: UI5Element, tags: string[], suffix: string | undefined) { return suffix ? html`<div class="udex-accordion" @keydown="${this.keydownHandler}" @ui5-accordion-item-focus="${ifDefined(this.itemFocusHandler)}"><div class="udex-accordion__head" part="head"><h3 class="udex-accordion__headline">${ifDefined(this.headlineText)}</h3><${scopeTag("udex-button", tags, suffix)} class="udex-accordion__btn" size="Large" design="Tertiary" @click="${this.toggleAllHandler}" @keydown="${this.toggleKeyAllHandler}" accessible-name="${ifDefined(this.toggleAllText)}">${ifDefined(this.toggleAllText)}</${scopeTag("udex-button", tags, suffix)}></div><div class="udex-accordion__content">${ repeat(this.items, (item, index) => (item as typeof item & {_id?: any})._id || index, (item, index: number) => block1.call(this, context, tags, suffix, item, index)) }</div></div>` : html`<div class="udex-accordion" @keydown="${this.keydownHandler}" @ui5-accordion-item-focus="${ifDefined(this.itemFocusHandler)}"><div class="udex-accordion__head" part="head"><h3 class="udex-accordion__headline">${ifDefined(this.headlineText)}</h3><udex-button class="udex-accordion__btn" size="Large" design="Tertiary" @click="${this.toggleAllHandler}" @keydown="${this.toggleKeyAllHandler}" accessible-name="${ifDefined(this.toggleAllText)}">${ifDefined(this.toggleAllText)}</udex-button></div><div class="udex-accordion__content">${ repeat(this.items, (item, index) => (item as typeof item & {_id?: any})._id || index, (item, index: number) => block1.call(this, context, tags, suffix, item, index)) }</div></div>`;}
7
+ function block0 (this: Accordion, context: UI5Element, tags: string[], suffix: string | undefined) { return suffix ? html`<div class="udex-accordion" @keydown="${this.keydownHandler}" @ui5-accordion-item-click="${ifDefined(this.updateAllExpandedStatus)}" @ui5-accordion-item-focus="${ifDefined(this.itemFocusHandler)}"><div class="udex-accordion__head" part="head"><h3 class="udex-accordion__headline">${ifDefined(this.headlineText)}</h3><${scopeTag("udex-button", tags, suffix)} class="udex-accordion__btn" size="Large" design="Tertiary" @click="${this.toggleAllHandler}" @keydown="${this.toggleKeyAllHandler}" accessible-name="${ifDefined(this.toggleAllText)}">${ifDefined(this.toggleAllText)}</${scopeTag("udex-button", tags, suffix)}></div><div class="udex-accordion__content">${ repeat(this.items, (item, index) => (item as typeof item & {_id?: any})._id || index, (item, index: number) => block1.call(this, context, tags, suffix, item, index)) }</div></div>` : html`<div class="udex-accordion" @keydown="${this.keydownHandler}" @ui5-accordion-item-click="${ifDefined(this.updateAllExpandedStatus)}" @ui5-accordion-item-focus="${ifDefined(this.itemFocusHandler)}"><div class="udex-accordion__head" part="head"><h3 class="udex-accordion__headline">${ifDefined(this.headlineText)}</h3><udex-button class="udex-accordion__btn" size="Large" design="Tertiary" @click="${this.toggleAllHandler}" @keydown="${this.toggleKeyAllHandler}" accessible-name="${ifDefined(this.toggleAllText)}">${ifDefined(this.toggleAllText)}</udex-button></div><div class="udex-accordion__content">${ repeat(this.items, (item, index) => (item as typeof item & {_id?: any})._id || index, (item, index: number) => block1.call(this, context, tags, suffix, item, index)) }</div></div>`;}
8
8
  function block1 (this: Accordion, context: UI5Element, tags: string[], suffix: string | undefined, item: any, index: number) { return html`<slot name="${ifDefined(item.item._individualSlot)}"></slot>`;}
9
9
 
10
10
 
@@ -5,11 +5,11 @@ import type UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
5
5
  import type { ClassMapValue } from "@ui5/webcomponents-base/dist/types.js";
6
6
 
7
7
  function block0 (this: MastheadCountrySelector, context: UI5Element, tags: string[], suffix: string | undefined) { return html`<div class="udex-masthead-country-selector" @keydown="${this.handleKeyDown}">${ this._isActiveRegionOpen ? block1.call(this, context, tags, suffix) : block4.call(this, context, tags, suffix) }</div>`;}
8
- function block1 (this: MastheadCountrySelector, context: UI5Element, tags: string[], suffix: string | undefined) { return suffix ? html`<span class="udex-masthead-country-selector__title">${ifDefined(this.countryTitle)}</span>${ !this.isSingleMode ? block2.call(this, context, tags, suffix) : undefined }<${scopeTag("udex-search", tags, suffix)} class="udex-masthead-country-selector__search" @ui5-handle-value-search="${ifDefined(this.handleSearch)}" @ui5-handle-value-reset="${ifDefined(this.handleSearchReset)}" @ui5-submit-search-value="${ifDefined(this.handleSearch)}" language-voice="${ifDefined(this.languageVoice)}" label="${ifDefined(this.searchLabel)}" mode="${ifDefined(this.homeSearchMode)}" ?show-voice-button="${this.showSearchVoiceButton}" non-interactive-submit-button show-submit-button></${scopeTag("udex-search", tags, suffix)}><ul class="udex-masthead-country-selector__list udex-masthead-country-selector__list_countries" role="menu">${ repeat(this._activeCountries, (item, index) => (item as typeof item & {_id?: any})._id || index, (item, index: number) => block3.call(this, context, tags, suffix, item, index)) }</ul>` : html`<span class="udex-masthead-country-selector__title">${ifDefined(this.countryTitle)}</span>${ !this.isSingleMode ? block2.call(this, context, tags, suffix) : undefined }<udex-search class="udex-masthead-country-selector__search" @ui5-handle-value-search="${ifDefined(this.handleSearch)}" @ui5-handle-value-reset="${ifDefined(this.handleSearchReset)}" @ui5-submit-search-value="${ifDefined(this.handleSearch)}" language-voice="${ifDefined(this.languageVoice)}" label="${ifDefined(this.searchLabel)}" mode="${ifDefined(this.homeSearchMode)}" ?show-voice-button="${this.showSearchVoiceButton}" non-interactive-submit-button show-submit-button></udex-search><ul class="udex-masthead-country-selector__list udex-masthead-country-selector__list_countries" role="menu">${ repeat(this._activeCountries, (item, index) => (item as typeof item & {_id?: any})._id || index, (item, index: number) => block3.call(this, context, tags, suffix, item, index)) }</ul>`;}
8
+ function block1 (this: MastheadCountrySelector, context: UI5Element, tags: string[], suffix: string | undefined) { return suffix ? html`<span class="udex-masthead-country-selector__title">${ifDefined(this.countryTitle)}</span>${ !this.isSingleMode ? block2.call(this, context, tags, suffix) : undefined }<${scopeTag("udex-search", tags, suffix)} class="udex-masthead-country-selector__search" @ui5-handle-value-search="${ifDefined(this.handleSearch)}" @ui5-handle-value-reset="${ifDefined(this.handleSearchReset)}" @ui5-submit-search-value="${ifDefined(this.handleSearch)}" language-voice="${ifDefined(this.languageVoice)}" label="${ifDefined(this.searchLabel)}" mode="${ifDefined(this.homeSearchMode)}" ?show-voice-button="${this.showSearchVoiceButton}" non-interactive-submit-button show-submit-button></${scopeTag("udex-search", tags, suffix)}><span aria-live="polite" aria-atomic="true" class="hidden">${ifDefined(this._accSearchResultInfo)}</span><ul class="udex-masthead-country-selector__list udex-masthead-country-selector__list_countries" role="menu">${ repeat(this._activeCountries, (item, index) => (item as typeof item & {_id?: any})._id || index, (item, index: number) => block3.call(this, context, tags, suffix, item, index)) }</ul>` : html`<span class="udex-masthead-country-selector__title">${ifDefined(this.countryTitle)}</span>${ !this.isSingleMode ? block2.call(this, context, tags, suffix) : undefined }<udex-search class="udex-masthead-country-selector__search" @ui5-handle-value-search="${ifDefined(this.handleSearch)}" @ui5-handle-value-reset="${ifDefined(this.handleSearchReset)}" @ui5-submit-search-value="${ifDefined(this.handleSearch)}" language-voice="${ifDefined(this.languageVoice)}" label="${ifDefined(this.searchLabel)}" mode="${ifDefined(this.homeSearchMode)}" ?show-voice-button="${this.showSearchVoiceButton}" non-interactive-submit-button show-submit-button></udex-search><span aria-live="polite" aria-atomic="true" class="hidden">${ifDefined(this._accSearchResultInfo)}</span><ul class="udex-masthead-country-selector__list udex-masthead-country-selector__list_countries" role="menu">${ repeat(this._activeCountries, (item, index) => (item as typeof item & {_id?: any})._id || index, (item, index: number) => block3.call(this, context, tags, suffix, item, index)) }</ul>`;}
9
9
  function block2 (this: MastheadCountrySelector, context: UI5Element, tags: string[], suffix: string | undefined) { return suffix ? html`<${scopeTag("udex-masthead-menu-item", tags, suffix)} class="udex-masthead-country-selector__region-back-item" @click="${this.backToRegions}" label="${ifDefined(this._activeRegion?.title)}" type="Button" is-back icon-start></${scopeTag("udex-masthead-menu-item", tags, suffix)}>` : html`<udex-masthead-menu-item class="udex-masthead-country-selector__region-back-item" @click="${this.backToRegions}" label="${ifDefined(this._activeRegion?.title)}" type="Button" is-back icon-start></udex-masthead-menu-item>`;}
10
- function block3 (this: MastheadCountrySelector, context: UI5Element, tags: string[], suffix: string | undefined, item: any, index: number) { return suffix ? html`<li role="menuitem"><${scopeTag("udex-masthead-menu-item", tags, suffix)} class="udex-masthead-country-selector__item udex-masthead-country-selector__item_countries" @click="${this.fireEventCountryItemClick}" _country-code="${ifDefined(item.countryCode)}" url="${ifDefined(item.url)}" label="${ifDefined(item.displayTitle)}" index="${index}" is-nav-item></${scopeTag("udex-masthead-menu-item", tags, suffix)}></li>` : html`<li role="menuitem"><udex-masthead-menu-item class="udex-masthead-country-selector__item udex-masthead-country-selector__item_countries" @click="${this.fireEventCountryItemClick}" _country-code="${ifDefined(item.countryCode)}" url="${ifDefined(item.url)}" label="${ifDefined(item.displayTitle)}" index="${index}" is-nav-item></udex-masthead-menu-item></li>`;}
10
+ function block3 (this: MastheadCountrySelector, context: UI5Element, tags: string[], suffix: string | undefined, item: any, index: number) { return suffix ? html`<li role="none"><${scopeTag("udex-masthead-menu-item", tags, suffix)} class="udex-masthead-country-selector__item udex-masthead-country-selector__item_countries" @click="${this.fireEventCountryItemClick}" _country-code="${ifDefined(item.countryCode)}" url="${ifDefined(item.url)}" label="${ifDefined(item.displayTitle)}" index="${index}" is-nav-item></${scopeTag("udex-masthead-menu-item", tags, suffix)}></li>` : html`<li role="none"><udex-masthead-menu-item class="udex-masthead-country-selector__item udex-masthead-country-selector__item_countries" @click="${this.fireEventCountryItemClick}" _country-code="${ifDefined(item.countryCode)}" url="${ifDefined(item.url)}" label="${ifDefined(item.displayTitle)}" index="${index}" is-nav-item></udex-masthead-menu-item></li>`;}
11
11
  function block4 (this: MastheadCountrySelector, context: UI5Element, tags: string[], suffix: string | undefined) { return html`<span class="udex-masthead-country-selector__title">${ifDefined(this.regionTitle)}</span><ul class="udex-masthead-country-selector__list" role="menu">${ repeat(this.regionsData, (item, index) => (item as typeof item & {_id?: any})._id || index, (item, index: number) => block5.call(this, context, tags, suffix, item, index)) }</ul>`;}
12
- function block5 (this: MastheadCountrySelector, context: UI5Element, tags: string[], suffix: string | undefined, item: any, index: number) { return suffix ? html`<li role="menuitem"><${scopeTag("udex-masthead-menu-item", tags, suffix)} id="${ifDefined(item._id)}" @click="${this.handleRegionClick}" index="${index}" class="udex-masthead-country-selector__item udex-masthead-country-selector__item_region" aria-has-popup="true" accessible-role="button" type="Button" is-nav-item has-border icon-end label="${ifDefined(item.title)}"></${scopeTag("udex-masthead-menu-item", tags, suffix)}></li>` : html`<li role="menuitem"><udex-masthead-menu-item id="${ifDefined(item._id)}" @click="${this.handleRegionClick}" index="${index}" class="udex-masthead-country-selector__item udex-masthead-country-selector__item_region" aria-has-popup="true" accessible-role="button" type="Button" is-nav-item has-border icon-end label="${ifDefined(item.title)}"></udex-masthead-menu-item></li>`;}
12
+ function block5 (this: MastheadCountrySelector, context: UI5Element, tags: string[], suffix: string | undefined, item: any, index: number) { return suffix ? html`<li role="none"><${scopeTag("udex-masthead-menu-item", tags, suffix)} id="${ifDefined(item._id)}" @click="${this.handleRegionClick}" index="${index}" class="udex-masthead-country-selector__item udex-masthead-country-selector__item_region" aria-has-popup="true" type="Button" is-nav-item has-border icon-end label="${ifDefined(item.title)}"></${scopeTag("udex-masthead-menu-item", tags, suffix)}></li>` : html`<li role="none"><udex-masthead-menu-item id="${ifDefined(item._id)}" @click="${this.handleRegionClick}" index="${index}" class="udex-masthead-country-selector__item udex-masthead-country-selector__item_region" aria-has-popup="true" type="Button" is-nav-item has-border icon-end label="${ifDefined(item.title)}"></udex-masthead-menu-item></li>`;}
13
13
 
14
14
 
15
15
  export default block0;