@sapudex/web-components 0.173.0 → 0.184.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 +1 -1
- package/dist/Accordion.js +2 -1
- package/dist/Accordion.js.map +1 -1
- package/dist/AccordionItem.d.ts +0 -1
- package/dist/AccordionItem.js +2 -2
- package/dist/AccordionItem.js.map +1 -1
- package/dist/Badge.js +2 -1
- package/dist/Badge.js.map +1 -1
- package/dist/Breadcrumbs.d.ts +7 -7
- package/dist/Breadcrumbs.js +3 -3
- package/dist/Breadcrumbs.js.map +1 -1
- package/dist/CountrySelector.js +5 -5
- package/dist/CountrySelector.js.map +1 -1
- package/dist/DatePicker.d.ts +53 -26
- package/dist/DatePicker.js +205 -39
- package/dist/DatePicker.js.map +1 -1
- package/dist/FilterMenu.d.ts +4 -6
- package/dist/FilterMenu.js +10 -10
- package/dist/FilterMenu.js.map +1 -1
- package/dist/Footer.js +6 -2
- package/dist/Footer.js.map +1 -1
- package/dist/HeroBanner.d.ts +0 -1
- package/dist/HeroBanner.js +2 -1
- package/dist/HeroBanner.js.map +1 -1
- package/dist/Link.js +2 -0
- package/dist/Link.js.map +1 -1
- package/dist/ListSelectAll.js +2 -0
- package/dist/ListSelectAll.js.map +1 -1
- package/dist/MastheadItem.js +2 -2
- package/dist/MastheadItem.js.map +1 -1
- package/dist/MastheadMenu.js +1 -1
- package/dist/MastheadMenu.js.map +1 -1
- package/dist/MastheadMobileMenu.js +1 -1
- package/dist/MastheadMobileMenu.js.map +1 -1
- package/dist/MastheadShell.d.ts +1 -0
- package/dist/MastheadShell.js +20 -1
- package/dist/MastheadShell.js.map +1 -1
- package/dist/MediaPlayer.js +2 -2
- package/dist/MediaPlayer.js.map +1 -1
- package/dist/MessageStrip.js +2 -1
- package/dist/MessageStrip.js.map +1 -1
- package/dist/RadioButton.js +0 -1
- package/dist/RadioButton.js.map +1 -1
- package/dist/Search.d.ts +15 -1
- package/dist/Search.js +62 -16
- package/dist/Search.js.map +1 -1
- package/dist/SearchableListBase.js +3 -3
- package/dist/SearchableListBase.js.map +1 -1
- package/dist/SecondaryNavigation.js +1 -1
- package/dist/SecondaryNavigation.js.map +1 -1
- package/dist/SecondaryNavigationItem.js +1 -1
- package/dist/SecondaryNavigationItem.js.map +1 -1
- package/dist/SelectBox.d.ts +3 -3
- package/dist/SelectBox.js +6 -6
- package/dist/SelectBox.js.map +1 -1
- package/dist/SideNavigationMobile.js +1 -1
- package/dist/SideNavigationMobile.js.map +1 -1
- package/dist/StepInput.js +1 -1
- package/dist/StepInput.js.map +1 -1
- package/dist/TabNavigation.d.ts +4 -5
- package/dist/TabNavigation.js +16 -14
- package/dist/TabNavigation.js.map +1 -1
- package/dist/Table.js +2 -2
- package/dist/Table.js.map +1 -1
- package/dist/assets/{css_variables-a92ef9ad.css → bundle-c5e3cbf2.css} +1 -1
- package/dist/assets/{bundle.esm-c4ffd46a.js → bundle.esm-d98e72b5.js} +184 -184
- package/dist/assets/parameters-bundle.css-beef06a9.js +2 -0
- package/dist/css/themes/AccordionItem.css +1 -1
- package/dist/css/themes/Button.css +1 -1
- package/dist/css/themes/CountrySelector.css +1 -1
- package/dist/css/themes/ListItem.css +1 -1
- package/dist/css/themes/MastheadMenu.css +1 -1
- package/dist/css/themes/MastheadMobileMenu.css +1 -1
- package/dist/css/themes/MastheadProfileMenu.css +1 -1
- package/dist/css/themes/MessageStrip.css +1 -1
- package/dist/css/themes/Pagination.css +1 -1
- package/dist/css/themes/PhoneNumberField.css +1 -1
- package/dist/css/themes/RatingIndicator.css +1 -1
- package/dist/css/themes/Review.css +1 -1
- package/dist/css/themes/ReviewItem.css +1 -1
- package/dist/css/themes/Search.css +1 -1
- package/dist/css/themes/SearchSuggestions.css +1 -1
- package/dist/css/themes/SegmentedButton.css +1 -1
- package/dist/css/themes/SideNavigationMobileDropdown.css +1 -1
- package/dist/css/themes/Slider.css +1 -1
- package/dist/css/themes/StepInput.css +1 -1
- package/dist/css/themes/TabNavigation.css +1 -1
- package/dist/css/themes/Table.css +1 -1
- package/dist/css/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css +1 -1
- package/dist/custom-elements-internal.json +67 -49
- package/dist/custom-elements.json +62 -46
- package/dist/features/SearchSuggestionsPopover.d.ts +1 -1
- package/dist/generated/assets/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css.json +1 -1
- package/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/DatePickerPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/DatePickerPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/DatePickerTemplate.lit.js +1 -1
- package/dist/generated/templates/DatePickerTemplate.lit.js.map +1 -1
- package/dist/generated/templates/FilterMenuTemplate.lit.js +2 -2
- package/dist/generated/templates/FilterMenuTemplate.lit.js.map +1 -1
- package/dist/generated/templates/SearchTemplate.lit.js +2 -2
- package/dist/generated/templates/SearchTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TabHeaderTemplate.lit.js +2 -2
- package/dist/generated/templates/TabHeaderTemplate.lit.js.map +1 -1
- package/dist/generated/themes/AccordionItem.css.js +1 -1
- package/dist/generated/themes/AccordionItem.css.js.map +1 -1
- package/dist/generated/themes/Button.css.js +1 -1
- package/dist/generated/themes/Button.css.js.map +1 -1
- package/dist/generated/themes/CountrySelector.css.js +1 -1
- package/dist/generated/themes/CountrySelector.css.js.map +1 -1
- package/dist/generated/themes/ListItem.css.js +1 -1
- package/dist/generated/themes/ListItem.css.js.map +1 -1
- package/dist/generated/themes/MastheadMenu.css.js +1 -1
- package/dist/generated/themes/MastheadMenu.css.js.map +1 -1
- package/dist/generated/themes/MastheadMobileMenu.css.js +1 -1
- package/dist/generated/themes/MastheadMobileMenu.css.js.map +1 -1
- package/dist/generated/themes/MastheadProfileMenu.css.js +1 -1
- package/dist/generated/themes/MastheadProfileMenu.css.js.map +1 -1
- package/dist/generated/themes/MessageStrip.css.js +1 -1
- package/dist/generated/themes/MessageStrip.css.js.map +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/PhoneNumberField.css.js +1 -1
- package/dist/generated/themes/PhoneNumberField.css.js.map +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/Review.css.js +1 -1
- package/dist/generated/themes/Review.css.js.map +1 -1
- package/dist/generated/themes/ReviewItem.css.js +1 -1
- package/dist/generated/themes/ReviewItem.css.js.map +1 -1
- package/dist/generated/themes/Search.css.js +1 -1
- package/dist/generated/themes/Search.css.js.map +1 -1
- package/dist/generated/themes/SearchSuggestions.css.js +1 -1
- package/dist/generated/themes/SearchSuggestions.css.js.map +1 -1
- package/dist/generated/themes/SegmentedButton.css.js +1 -1
- package/dist/generated/themes/SegmentedButton.css.js.map +1 -1
- package/dist/generated/themes/SideNavigationMobileDropdown.css.js +1 -1
- package/dist/generated/themes/SideNavigationMobileDropdown.css.js.map +1 -1
- package/dist/generated/themes/Slider.css.js +1 -1
- package/dist/generated/themes/Slider.css.js.map +1 -1
- package/dist/generated/themes/StepInput.css.js +1 -1
- package/dist/generated/themes/StepInput.css.js.map +1 -1
- package/dist/generated/themes/TabNavigation.css.js +1 -1
- package/dist/generated/themes/TabNavigation.css.js.map +1 -1
- package/dist/generated/themes/Table.css.js +1 -1
- package/dist/generated/themes/Table.css.js.map +1 -1
- package/dist/generated/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css.js.map +1 -1
- package/dist/vscode.html-custom-data.json +2 -12
- package/dist/web-types.json +19 -23
- package/package.json +8 -8
- package/src/Accordion.ts +2 -1
- package/src/AccordionItem.ts +2 -2
- package/src/Badge.ts +2 -1
- package/src/Breadcrumbs.hbs +3 -3
- package/src/Breadcrumbs.ts +14 -14
- package/src/BreadcrumbsPopover.hbs +1 -1
- package/src/CountrySelector.ts +5 -5
- package/src/DatePicker.hbs +4 -5
- package/src/DatePicker.ts +257 -64
- package/src/DatePickerPopover.hbs +2 -2
- package/src/FilterMenu.hbs +2 -1
- package/src/FilterMenu.ts +13 -14
- package/src/Footer.ts +6 -2
- package/src/HeroBanner.ts +2 -1
- package/src/Link.ts +2 -0
- package/src/ListSelectAll.ts +2 -0
- package/src/MastheadItem.ts +2 -2
- package/src/MastheadMenu.ts +1 -1
- package/src/MastheadMobileMenu.ts +1 -1
- package/src/MastheadShell.ts +24 -1
- package/src/MediaPlayer.ts +2 -2
- package/src/MessageStrip.ts +2 -1
- package/src/RadioButton.ts +0 -1
- package/src/Search.hbs +3 -3
- package/src/Search.ts +82 -21
- package/src/SearchableListBase.ts +3 -3
- package/src/SecondaryNavigation.ts +1 -1
- package/src/SecondaryNavigationItem.ts +1 -1
- package/src/SelectBox.ts +9 -9
- package/src/SideNavigationMobile.ts +1 -1
- package/src/StepInput.ts +1 -1
- package/src/TabHeader.hbs +2 -2
- package/src/TabNavigation.ts +19 -18
- package/src/Table.ts +2 -2
- package/src/generated/templates/BreadcrumbsPopoverTemplate.lit.ts +1 -1
- package/src/generated/templates/DatePickerPopoverTemplate.lit.ts +1 -1
- package/src/generated/templates/DatePickerTemplate.lit.ts +1 -1
- package/src/generated/templates/FilterMenuTemplate.lit.ts +2 -2
- package/src/generated/templates/SearchTemplate.lit.ts +2 -2
- package/src/generated/templates/TabHeaderTemplate.lit.ts +2 -2
- package/src/generated/themes/AccordionItem.css.ts +1 -1
- package/src/generated/themes/Button.css.ts +1 -1
- package/src/generated/themes/CountrySelector.css.ts +1 -1
- package/src/generated/themes/ListItem.css.ts +1 -1
- package/src/generated/themes/MastheadMenu.css.ts +1 -1
- package/src/generated/themes/MastheadMobileMenu.css.ts +1 -1
- package/src/generated/themes/MastheadProfileMenu.css.ts +1 -1
- package/src/generated/themes/MessageStrip.css.ts +1 -1
- package/src/generated/themes/Pagination.css.ts +1 -1
- package/src/generated/themes/PhoneNumberField.css.ts +1 -1
- package/src/generated/themes/RatingIndicator.css.ts +1 -1
- package/src/generated/themes/Review.css.ts +1 -1
- package/src/generated/themes/ReviewItem.css.ts +1 -1
- package/src/generated/themes/Search.css.ts +1 -1
- package/src/generated/themes/SearchSuggestions.css.ts +1 -1
- package/src/generated/themes/SegmentedButton.css.ts +1 -1
- package/src/generated/themes/SideNavigationMobileDropdown.css.ts +1 -1
- package/src/generated/themes/Slider.css.ts +1 -1
- package/src/generated/themes/StepInput.css.ts +1 -1
- package/src/generated/themes/TabNavigation.css.ts +1 -1
- package/src/generated/themes/Table.css.ts +1 -1
- package/src/generated/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css.ts +1 -1
- package/src/themes/AccordionItem.css +2 -2
- package/src/themes/Button.css +5 -5
- package/src/themes/CountrySelector.css +14 -14
- package/src/themes/ListItem.css +1 -1
- package/src/themes/MastheadMenu.css +2 -2
- package/src/themes/MastheadMobileMenu.css +2 -2
- package/src/themes/MastheadProfileMenu.css +2 -2
- package/src/themes/MessageStrip.css +6 -6
- package/src/themes/Pagination.css +2 -1
- package/src/themes/PhoneNumberField.css +2 -2
- package/src/themes/Review.css +1 -1
- package/src/themes/ReviewItem.css +1 -1
- package/src/themes/Search.css +34 -4
- package/src/themes/SearchSuggestions.css +16 -0
- package/src/themes/SegmentedButton.css +1 -1
- package/src/themes/SelectBox.css +1 -1
- package/src/themes/SideNavigationMobileDropdown.css +1 -1
- package/src/themes/StepInput.css +5 -5
- package/src/themes/TabNavigation.css +17 -12
- package/src/themes/Table.css +5 -5
- package/dist/assets/parameters-bundle.css-07457fce.js +0 -2
package/src/MastheadShell.ts
CHANGED
|
@@ -60,6 +60,20 @@ const breakpointSizeM: number = 1279;
|
|
|
60
60
|
],
|
|
61
61
|
})
|
|
62
62
|
|
|
63
|
+
/**
|
|
64
|
+
* Fired event when the user clicks the mobile menu button opener.
|
|
65
|
+
*
|
|
66
|
+
* @public
|
|
67
|
+
*/
|
|
68
|
+
@event("mobile-menu-open")
|
|
69
|
+
|
|
70
|
+
/**
|
|
71
|
+
* Fired event when the user clicks the mobile menu button closer.
|
|
72
|
+
*
|
|
73
|
+
* @public
|
|
74
|
+
*/
|
|
75
|
+
@event("mobile-menu-close")
|
|
76
|
+
|
|
63
77
|
/**
|
|
64
78
|
* Fired event when the user clicks the search button trigger.
|
|
65
79
|
*
|
|
@@ -402,11 +416,14 @@ class UDExMastheadShell extends UI5Element {
|
|
|
402
416
|
handleMobileMenuClick(e: CustomEvent) {
|
|
403
417
|
e.stopPropagation();
|
|
404
418
|
this.setSelectedItem(e);
|
|
419
|
+
|
|
405
420
|
this._isMobileMenuOpen = true;
|
|
406
421
|
|
|
407
422
|
if (this.bodyOverflow) {
|
|
408
423
|
this.setOverflowBody();
|
|
409
424
|
}
|
|
425
|
+
|
|
426
|
+
this.fireEvent("mobile-menu-open");
|
|
410
427
|
}
|
|
411
428
|
|
|
412
429
|
handleMobileCloseClick(e: CustomEvent) {
|
|
@@ -434,7 +451,7 @@ class UDExMastheadShell extends UI5Element {
|
|
|
434
451
|
}
|
|
435
452
|
|
|
436
453
|
focusSearchInput(): void {
|
|
437
|
-
const searchSlot = this.querySelector<UDExSearch>("udex-search");
|
|
454
|
+
const searchSlot = this.querySelector<UDExSearch>("[udex-search]");
|
|
438
455
|
if (searchSlot) {
|
|
439
456
|
const input = searchSlot.shadowRoot!.querySelector<HTMLElement>("input");
|
|
440
457
|
input?.focus();
|
|
@@ -524,6 +541,12 @@ class UDExMastheadShell extends UI5Element {
|
|
|
524
541
|
if (this.bodyOverflow) {
|
|
525
542
|
this.removeOverflowBody();
|
|
526
543
|
}
|
|
544
|
+
|
|
545
|
+
this.fireMobileMenuCloseEvent();
|
|
546
|
+
}
|
|
547
|
+
|
|
548
|
+
fireMobileMenuCloseEvent(): void {
|
|
549
|
+
this.fireEvent("mobile-menu-close");
|
|
527
550
|
}
|
|
528
551
|
|
|
529
552
|
get searchOpener(): UDExMastheadItem | null | undefined {
|
package/src/MediaPlayer.ts
CHANGED
|
@@ -347,11 +347,11 @@ class UDExMediaPlayer extends UI5Element {
|
|
|
347
347
|
*/
|
|
348
348
|
getPlayer(): HTMLVideoElement | HTMLAudioElement | YT.Player | VimeoPlayer | null {
|
|
349
349
|
if (this._youtubeSrc) {
|
|
350
|
-
const player = this.shadowRoot?.querySelector("udex-media-player-youtube") as UDExMediaPlayerYoutube;
|
|
350
|
+
const player = this.shadowRoot?.querySelector("[udex-media-player-youtube]") as UDExMediaPlayerYoutube;
|
|
351
351
|
return player?.getPlayer() || null;
|
|
352
352
|
}
|
|
353
353
|
if (this._vimeoSrc) {
|
|
354
|
-
const player = this.shadowRoot?.querySelector("udex-media-player-vimeo") as UDExMediaPlayerVimeo;
|
|
354
|
+
const player = this.shadowRoot?.querySelector("[udex-media-player-vimeo]") as UDExMediaPlayerVimeo;
|
|
355
355
|
return player?.getPlayer() || null;
|
|
356
356
|
}
|
|
357
357
|
return this.shadowRoot?.querySelector(".video-js video") as HTMLVideoElement || this.shadowRoot?.querySelector(".video-js audio") || null;
|
package/src/MessageStrip.ts
CHANGED
|
@@ -10,6 +10,7 @@ import {
|
|
|
10
10
|
import litRender from "@ui5/webcomponents-base/dist/renderer/LitRenderer.js";
|
|
11
11
|
import MessageStrip from "@ui5/webcomponents/dist/MessageStrip.js";
|
|
12
12
|
import messageStripCss from "@ui5/webcomponents/dist/generated/themes/MessageStrip.css.js";
|
|
13
|
+
import UI5Icon from "@ui5/webcomponents/dist/Icon.js";
|
|
13
14
|
import UDExButton from "./Button.js";
|
|
14
15
|
import {
|
|
15
16
|
MESSAGE_STRIP_CLOSE_BUTTON,
|
|
@@ -73,7 +74,7 @@ type textStatusType = Record<Exclude<MessageStripDesign, "Action">, string>;
|
|
|
73
74
|
renderer: litRender,
|
|
74
75
|
styles: [messageStripCss, MessageStripCss],
|
|
75
76
|
template: MessageStripTemplate,
|
|
76
|
-
dependencies: [UDExButton],
|
|
77
|
+
dependencies: [UDExButton, UI5Icon],
|
|
77
78
|
})
|
|
78
79
|
/**
|
|
79
80
|
* Fired when the close button is pressed either with a
|
package/src/RadioButton.ts
CHANGED
package/src/Search.hbs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
<div class="udex-search__root {{
|
|
1
|
+
<div class="udex-search__root {{searchClasses}}">
|
|
2
2
|
{{#if isShowSearchHomePrefix}}
|
|
3
|
-
<div class="udex-search__prefix">
|
|
3
|
+
<div class="udex-search__prefix {{prefixWrapperClasses}}">
|
|
4
4
|
<button
|
|
5
5
|
type="button"
|
|
6
6
|
role="combobox"
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
</button>
|
|
15
15
|
<ui5-popover
|
|
16
16
|
id="udex-search-prefix"
|
|
17
|
-
class="
|
|
17
|
+
class="{{prefixPopoverClasses}}"
|
|
18
18
|
hide-arrow
|
|
19
19
|
placement-type="Bottom"
|
|
20
20
|
horizontal-align="Left"
|
package/src/Search.ts
CHANGED
|
@@ -88,6 +88,8 @@ export enum Mode {
|
|
|
88
88
|
HomeSearch = "Home Search"
|
|
89
89
|
}
|
|
90
90
|
|
|
91
|
+
export type PopoverPlacement = "Bottom" | "Top";
|
|
92
|
+
|
|
91
93
|
/**
|
|
92
94
|
* @class
|
|
93
95
|
*
|
|
@@ -214,6 +216,15 @@ class UDExSearch extends UI5Element {
|
|
|
214
216
|
@property({ type: Boolean, noAttribute: true })
|
|
215
217
|
showResetButton!: boolean;
|
|
216
218
|
|
|
219
|
+
/**
|
|
220
|
+
* Defines where the SuggestionPopover is currently placed.
|
|
221
|
+
*
|
|
222
|
+
* @default "Bottom"
|
|
223
|
+
* @private
|
|
224
|
+
*/
|
|
225
|
+
@property({ type: String, noAttribute: true, defaultValue: "Bottom" })
|
|
226
|
+
_popoverPlacement!: PopoverPlacement;
|
|
227
|
+
|
|
217
228
|
/**
|
|
218
229
|
* Defines display the submit button for the search field.
|
|
219
230
|
*
|
|
@@ -709,7 +720,7 @@ class UDExSearch extends UI5Element {
|
|
|
709
720
|
return this.shadowRoot!.querySelector(".udex-search__prefix") as HTMLElement;
|
|
710
721
|
}
|
|
711
722
|
|
|
712
|
-
getPrefixPopover() {
|
|
723
|
+
getPrefixPopover(): Popover {
|
|
713
724
|
return this.shadowRoot!.querySelector<Popover>("[ui5-popover]")!;
|
|
714
725
|
}
|
|
715
726
|
|
|
@@ -726,8 +737,9 @@ class UDExSearch extends UI5Element {
|
|
|
726
737
|
this._prefixDropdownExpanded = true;
|
|
727
738
|
dropdown.showAt(this.getPrefixButton());
|
|
728
739
|
dropdown.style.width = `${button.offsetWidth + 1}px`;
|
|
740
|
+
dropdown.classList.add(this.prefixPopoverClasses);
|
|
729
741
|
button.classList.add("udex-search__prefix-button--active");
|
|
730
|
-
wrapper.classList.add(
|
|
742
|
+
wrapper.classList.add(this.prefixWrapperClasses);
|
|
731
743
|
this.dropdownPrefix[0].addEventListener("item-press", this.handleItemClick);
|
|
732
744
|
}
|
|
733
745
|
}
|
|
@@ -750,8 +762,7 @@ class UDExSearch extends UI5Element {
|
|
|
750
762
|
handleAfterClosePrefixPopover() {
|
|
751
763
|
const wrapper = this.getPrefixWrapper();
|
|
752
764
|
const button = this.getPrefixButton();
|
|
753
|
-
|
|
754
|
-
wrapper.classList.remove("udex-search__prefix--show-popover");
|
|
765
|
+
wrapper.classList.remove("udex-search__prefix--show-popover", "udex-search__prefix--show-popover-top");
|
|
755
766
|
button.classList.remove("udex-search__prefix-button--active");
|
|
756
767
|
}
|
|
757
768
|
|
|
@@ -790,10 +801,9 @@ class UDExSearch extends UI5Element {
|
|
|
790
801
|
console.warn(error.message);
|
|
791
802
|
});
|
|
792
803
|
} else {
|
|
804
|
+
this.open = true;
|
|
793
805
|
this.Suggestion.open();
|
|
794
806
|
}
|
|
795
|
-
|
|
796
|
-
this.handleClassToRoot();
|
|
797
807
|
this.handleAriaExpanded();
|
|
798
808
|
}
|
|
799
809
|
}
|
|
@@ -801,9 +811,8 @@ class UDExSearch extends UI5Element {
|
|
|
801
811
|
onClosePopover(): void {
|
|
802
812
|
if (this.showSuggestedPopover) {
|
|
803
813
|
this.Suggestion!.close();
|
|
804
|
-
this.handleClassToRoot();
|
|
805
814
|
this.handleAriaExpanded();
|
|
806
|
-
this.
|
|
815
|
+
this.open = false;
|
|
807
816
|
}
|
|
808
817
|
}
|
|
809
818
|
|
|
@@ -811,16 +820,11 @@ class UDExSearch extends UI5Element {
|
|
|
811
820
|
this.Suggestion?.handleKeyPress(e);
|
|
812
821
|
}
|
|
813
822
|
|
|
814
|
-
|
|
815
|
-
|
|
816
|
-
|
|
817
|
-
if (this.mode === Mode.HomeSearch && hasAdditionRootClass && this.open) {
|
|
818
|
-
this.shadowRoot?.querySelector(".udex-search__root")?.classList.add("udex-search__root--show-popover");
|
|
819
|
-
}
|
|
820
|
-
|
|
821
|
-
if (this.mode === Mode.HomeSearch && !hasAdditionRootClass && !this.open) {
|
|
822
|
-
this.shadowRoot?.querySelector(".udex-search__root")?.classList.remove("udex-search__root--show-popover");
|
|
823
|
+
get rootClasses(): string {
|
|
824
|
+
if (this.mode === Mode.HomeSearch && this.showSuggestedPopover && this.open) {
|
|
825
|
+
return this.isSuggestionPopoverTop ? "udex-search__root--show-popover-top" : "udex-search__root--show-popover";
|
|
823
826
|
}
|
|
827
|
+
return "";
|
|
824
828
|
}
|
|
825
829
|
|
|
826
830
|
onBeforeRendering(): void {
|
|
@@ -875,8 +879,39 @@ class UDExSearch extends UI5Element {
|
|
|
875
879
|
}
|
|
876
880
|
}
|
|
877
881
|
|
|
882
|
+
private _createObserver(popover: Popover, ingoreOpenState: boolean = false): MutationObserver {
|
|
883
|
+
return new MutationObserver(mutationList => {
|
|
884
|
+
mutationList.forEach(mutation => {
|
|
885
|
+
const newValue = popover?.actualPlacementType;
|
|
886
|
+
const oldValue = mutation.oldValue;
|
|
887
|
+
|
|
888
|
+
if (mutation.attributeName === "actual-placement-type" && newValue !== oldValue) {
|
|
889
|
+
this._popoverPlacement = newValue as PopoverPlacement;
|
|
890
|
+
}
|
|
891
|
+
|
|
892
|
+
if (mutation.attributeName === "open" && newValue !== oldValue && !ingoreOpenState) {
|
|
893
|
+
this.open = popover?.open || false;
|
|
894
|
+
}
|
|
895
|
+
});
|
|
896
|
+
});
|
|
897
|
+
}
|
|
898
|
+
|
|
878
899
|
onAfterRendering(): void {
|
|
879
900
|
if (this.showSuggestedPopover) {
|
|
901
|
+
const prefixPopover = this.getPrefixPopover();
|
|
902
|
+
|
|
903
|
+
if (this.Suggestion?.popover) {
|
|
904
|
+
const suggestionObserver = this._createObserver(this.Suggestion.popover);
|
|
905
|
+
const popoverNode = this.Suggestion?.popover as Node;
|
|
906
|
+
suggestionObserver.observe(popoverNode, { attributes: true, attributeOldValue: true });
|
|
907
|
+
}
|
|
908
|
+
|
|
909
|
+
if (prefixPopover) {
|
|
910
|
+
const prefixObserver = this._createObserver(prefixPopover, true);
|
|
911
|
+
const popoverNode = prefixPopover as Node;
|
|
912
|
+
prefixObserver.observe(popoverNode, { attributes: true, attributeOldValue: true });
|
|
913
|
+
}
|
|
914
|
+
|
|
880
915
|
this.handleOutsideClick();
|
|
881
916
|
this.handleOpenSuggestionPopover();
|
|
882
917
|
this.setSearchWidth();
|
|
@@ -941,7 +976,6 @@ class UDExSearch extends UI5Element {
|
|
|
941
976
|
e.preventDefault();
|
|
942
977
|
} else {
|
|
943
978
|
this.Suggestion?.onEnter(e);
|
|
944
|
-
this.fireDropdownItemClick(this.value);
|
|
945
979
|
}
|
|
946
980
|
this.handleSubmitValue();
|
|
947
981
|
}
|
|
@@ -957,7 +991,6 @@ class UDExSearch extends UI5Element {
|
|
|
957
991
|
if (isEscape(e)) {
|
|
958
992
|
if (this.open) {
|
|
959
993
|
this.Suggestion?.onEscape(e);
|
|
960
|
-
this.handleClassToRoot();
|
|
961
994
|
}
|
|
962
995
|
this.fireEvent("handle-close-search");
|
|
963
996
|
}
|
|
@@ -976,7 +1009,6 @@ class UDExSearch extends UI5Element {
|
|
|
976
1009
|
handleTabKeyList(e: KeyboardEvent) {
|
|
977
1010
|
if (isTabNext(e)) {
|
|
978
1011
|
this.Suggestion?.onKeyTabList(e);
|
|
979
|
-
this.handleClassToRoot();
|
|
980
1012
|
}
|
|
981
1013
|
}
|
|
982
1014
|
|
|
@@ -1156,6 +1188,16 @@ class UDExSearch extends UI5Element {
|
|
|
1156
1188
|
return this._recommendLabel;
|
|
1157
1189
|
}
|
|
1158
1190
|
|
|
1191
|
+
get isSuggestionPopoverTop(): boolean {
|
|
1192
|
+
const suggestionPopover = this.Suggestion?.popover;
|
|
1193
|
+
return suggestionPopover! && suggestionPopover.open && this._popoverPlacement === "Top";
|
|
1194
|
+
}
|
|
1195
|
+
|
|
1196
|
+
get isPrefixSuggestionPopoverTop(): boolean {
|
|
1197
|
+
const prefixSuggestionPopover = this.getPrefixPopover();
|
|
1198
|
+
return prefixSuggestionPopover && prefixSuggestionPopover.open && this._popoverPlacement === "Top";
|
|
1199
|
+
}
|
|
1200
|
+
|
|
1159
1201
|
get isShowSearchHomePrefix(): boolean {
|
|
1160
1202
|
return this.isHomeSearchWithPrefixMode && !!this.dropdownPrefix.length;
|
|
1161
1203
|
}
|
|
@@ -1168,12 +1210,31 @@ class UDExSearch extends UI5Element {
|
|
|
1168
1210
|
return this.mode === Mode.HomeSearch && !!this.dropdownPrefix.length;
|
|
1169
1211
|
}
|
|
1170
1212
|
|
|
1213
|
+
get searchClasses(): string {
|
|
1214
|
+
return `${this.classWithPrefix} ${this.rootClasses}`;
|
|
1215
|
+
}
|
|
1216
|
+
|
|
1217
|
+
get prefixWrapperClasses(): string {
|
|
1218
|
+
const prefixPopover = this.getPrefixPopover();
|
|
1219
|
+
if (prefixPopover && prefixPopover.open) {
|
|
1220
|
+
return this._popoverPlacement === "Top" ? "udex-search__prefix--show-popover-top" : "udex-search__prefix--show-popover";
|
|
1221
|
+
}
|
|
1222
|
+
return "";
|
|
1223
|
+
}
|
|
1224
|
+
|
|
1225
|
+
get prefixPopoverClasses(): string {
|
|
1226
|
+
return this.isPrefixSuggestionPopoverTop ? "udex-search__prefix-popover-top" : "udex-search__prefix-popover";
|
|
1227
|
+
}
|
|
1228
|
+
|
|
1171
1229
|
get classWithPrefix(): string {
|
|
1172
1230
|
return this.isHomeSearchWithPrefixMode ? "udex-search-prefix" : "";
|
|
1173
1231
|
}
|
|
1174
1232
|
|
|
1175
1233
|
get homeSearchPopoverClass(): string {
|
|
1176
|
-
|
|
1234
|
+
if (this.isHomeSearchMode || this.isHomeSearchWithPrefixMode) {
|
|
1235
|
+
return this.isSuggestionPopoverTop ? "udex-search-suggestions__root-top--home" : "udex-search-suggestions__root--home";
|
|
1236
|
+
}
|
|
1237
|
+
return "";
|
|
1177
1238
|
}
|
|
1178
1239
|
|
|
1179
1240
|
get homeSearchWithPrefixPopoverClass(): string {
|
|
@@ -393,12 +393,12 @@ class UDExSearchableListBase extends UI5Element {
|
|
|
393
393
|
}
|
|
394
394
|
|
|
395
395
|
getSearch(): Search {
|
|
396
|
-
return this.shadowRoot!.querySelector<Search>("udex-search")!;
|
|
396
|
+
return this.shadowRoot!.querySelector<Search>("[udex-search]")!;
|
|
397
397
|
}
|
|
398
398
|
|
|
399
399
|
getDomListItems(): Element[] {
|
|
400
|
-
const elementList = this.shadowRoot!.querySelector("udex-list") as HTMLElement;
|
|
401
|
-
return elementList ? Array.from(elementList.querySelectorAll("udex-list-item")) : [];
|
|
400
|
+
const elementList = this.shadowRoot!.querySelector("[udex-list]") as HTMLElement;
|
|
401
|
+
return elementList ? Array.from(elementList.querySelectorAll("[udex-list-item]")) : [];
|
|
402
402
|
}
|
|
403
403
|
|
|
404
404
|
setItemsModeAndControl(items: Array<UDExFilterMenuItem>) {
|
|
@@ -411,7 +411,7 @@ class UDExSecondaryNavigation extends UI5Element {
|
|
|
411
411
|
}
|
|
412
412
|
|
|
413
413
|
get domNavItems(): Array<UDExSecondaryNavigationItem> {
|
|
414
|
-
const items = this.shadowRoot?.querySelectorAll<UDExSecondaryNavigationItem>("udex-secondary-navigation-item");
|
|
414
|
+
const items = this.shadowRoot?.querySelectorAll<UDExSecondaryNavigationItem>("[udex-secondary-navigation-item]");
|
|
415
415
|
return items ? Array.from(items) : [];
|
|
416
416
|
}
|
|
417
417
|
|
|
@@ -378,7 +378,7 @@ class UDExSecondaryNavigationItem extends UDExSecondaryNavigationItemBase {
|
|
|
378
378
|
}
|
|
379
379
|
|
|
380
380
|
get domNavItems(): Array<UDExSecondaryNavigationSubItem> {
|
|
381
|
-
const domNavItems = this.shadowRoot?.querySelectorAll<UDExSecondaryNavigationSubItem>("udex-secondary-navigation-sub-item");
|
|
381
|
+
const domNavItems = this.shadowRoot?.querySelectorAll<UDExSecondaryNavigationSubItem>("[udex-secondary-navigation-sub-item]");
|
|
382
382
|
return domNavItems ? Array.from(domNavItems) : [];
|
|
383
383
|
}
|
|
384
384
|
|
package/src/SelectBox.ts
CHANGED
|
@@ -22,7 +22,7 @@ import Tokenizer from "@ui5/webcomponents/dist/Tokenizer.js";
|
|
|
22
22
|
import Icon from "@ui5/webcomponents/dist/Icon.js";
|
|
23
23
|
import Token from "@ui5/webcomponents/dist/Token.js";
|
|
24
24
|
import ResizeHandler, { ResizeObserverCallback } from "@ui5/webcomponents-base/dist/delegate/ResizeHandler.js";
|
|
25
|
-
import
|
|
25
|
+
import Popover from "@ui5/webcomponents/dist/Popover.js";
|
|
26
26
|
import UDExList from "./List.js";
|
|
27
27
|
import UDExListItem from "./ListItem.js";
|
|
28
28
|
import UDExListGroupHeader from "./ListGroupHeader.js";
|
|
@@ -86,7 +86,7 @@ import UDExTagGroup from "./TagGroup.js";
|
|
|
86
86
|
Icon,
|
|
87
87
|
UDExStatusMessage,
|
|
88
88
|
UDExControlButton,
|
|
89
|
-
|
|
89
|
+
Popover,
|
|
90
90
|
UDExTagGroup,
|
|
91
91
|
],
|
|
92
92
|
})
|
|
@@ -246,7 +246,7 @@ class UDExSelectBox extends UDExSearchableListBase {
|
|
|
246
246
|
_showTagsDropdownContent!: boolean;
|
|
247
247
|
|
|
248
248
|
_trigger!: HTMLElement;
|
|
249
|
-
_popover!:
|
|
249
|
+
_popover!: Popover;
|
|
250
250
|
_tokenizer!: Tokenizer;
|
|
251
251
|
_search!: UDExSearch;
|
|
252
252
|
_singleSelectedOption!: string;
|
|
@@ -576,12 +576,12 @@ class UDExSelectBox extends UDExSearchableListBase {
|
|
|
576
576
|
this.fireEvent("show-more");
|
|
577
577
|
}
|
|
578
578
|
|
|
579
|
-
getPopover():
|
|
580
|
-
return this.shadowRoot!.querySelector<
|
|
579
|
+
getPopover(): Popover {
|
|
580
|
+
return this.shadowRoot!.querySelector<Popover>("[ui5-popover]")!;
|
|
581
581
|
}
|
|
582
582
|
|
|
583
583
|
getSearch(): UDExSearch {
|
|
584
|
-
return this.shadowRoot!.querySelector<UDExSearch>("udex-search")!;
|
|
584
|
+
return this.shadowRoot!.querySelector<UDExSearch>("[udex-search]")!;
|
|
585
585
|
}
|
|
586
586
|
|
|
587
587
|
getTrigger(): HTMLElement {
|
|
@@ -589,12 +589,12 @@ class UDExSelectBox extends UDExSearchableListBase {
|
|
|
589
589
|
}
|
|
590
590
|
|
|
591
591
|
getTagGroup(): UDExTagGroup {
|
|
592
|
-
return this.shadowRoot!.querySelector<UDExTagGroup>("udex-tag-group")!;
|
|
592
|
+
return this.shadowRoot!.querySelector<UDExTagGroup>("[udex-tag-group]")!;
|
|
593
593
|
}
|
|
594
594
|
|
|
595
595
|
getTags(): Array<UDExTag> {
|
|
596
596
|
if (this.getTagGroup()) {
|
|
597
|
-
return Array.from(this.getTagGroup().shadowRoot!.querySelectorAll<UDExTag>("udex-tag"));
|
|
597
|
+
return Array.from(this.getTagGroup().shadowRoot!.querySelectorAll<UDExTag>("[udex-tag]"));
|
|
598
598
|
}
|
|
599
599
|
return [];
|
|
600
600
|
}
|
|
@@ -698,7 +698,7 @@ class UDExSelectBox extends UDExSearchableListBase {
|
|
|
698
698
|
return {
|
|
699
699
|
"ariaLabel": this.accessibleName || this.label || undefined,
|
|
700
700
|
"ariaLabelledBy": this.accessibleNameRef || undefined,
|
|
701
|
-
"ariaControls": this.shadowRoot?.querySelector("udex-list")?.getAttribute("id"),
|
|
701
|
+
"ariaControls": this.shadowRoot?.querySelector("[udex-list]")?.getAttribute("id"),
|
|
702
702
|
};
|
|
703
703
|
}
|
|
704
704
|
|
|
@@ -101,7 +101,7 @@ class UDExSideNavigationMobile extends UI5Element {
|
|
|
101
101
|
|
|
102
102
|
async _getResponsePopover() {
|
|
103
103
|
const staticAreaItem = await this.getStaticAreaItemDomRef();
|
|
104
|
-
return staticAreaItem!.querySelector<UDExDropdown>(`udex-dropdown`)!;
|
|
104
|
+
return staticAreaItem!.querySelector<UDExDropdown>(`[udex-dropdown]`)!;
|
|
105
105
|
}
|
|
106
106
|
|
|
107
107
|
_afterDropdownOpen() {
|
package/src/StepInput.ts
CHANGED
package/src/TabHeader.hbs
CHANGED
|
@@ -45,7 +45,7 @@
|
|
|
45
45
|
{{/if}}
|
|
46
46
|
</span>
|
|
47
47
|
{{/if}}
|
|
48
|
-
<
|
|
48
|
+
<p class="udex-tab-navigation__button-text {{classWithIcon}}">
|
|
49
49
|
{{text}}
|
|
50
50
|
{{#if numberBadge}}
|
|
51
51
|
<udex-badge
|
|
@@ -56,7 +56,7 @@
|
|
|
56
56
|
{{numberBadge}}
|
|
57
57
|
</udex-badge>
|
|
58
58
|
{{/if}}
|
|
59
|
-
</
|
|
59
|
+
</p>
|
|
60
60
|
{{#if hasNotIcon}}
|
|
61
61
|
<span class="udex-tab-navigation__button-badge"></span>
|
|
62
62
|
{{/if}}
|
package/src/TabNavigation.ts
CHANGED
|
@@ -7,7 +7,7 @@ import event from "@ui5/webcomponents-base/dist/decorators/event.js";
|
|
|
7
7
|
import litRender from "@ui5/webcomponents-base/dist/renderer/LitRenderer.js";
|
|
8
8
|
import { getI18nBundle } from "@ui5/webcomponents-base/dist/i18nBundle.js";
|
|
9
9
|
import ResizeHandler from "@ui5/webcomponents-base/dist/delegate/ResizeHandler.js";
|
|
10
|
-
import
|
|
10
|
+
import Popover from "@ui5/webcomponents/dist/Popover.js";
|
|
11
11
|
import executeTemplate from "@ui5/webcomponents-base/dist/renderer/executeTemplate.js";
|
|
12
12
|
import Integer from "@ui5/webcomponents-base/dist/types/Integer.js";
|
|
13
13
|
import { isDesktop } from "@ui5/webcomponents-base/dist/Device.js";
|
|
@@ -24,8 +24,8 @@ import {
|
|
|
24
24
|
isTabNext,
|
|
25
25
|
isTabPrevious,
|
|
26
26
|
} from "@ui5/webcomponents-base/dist/Keys.js";
|
|
27
|
+
import Icon from "@ui5/webcomponents/dist/Icon.js";
|
|
27
28
|
import Tab, { ITab } from "./Tab.js";
|
|
28
|
-
import "@ui5/webcomponents/dist/Icon.js";
|
|
29
29
|
import "@ui5/webcomponents-icons/dist/navigation-down-arrow.js";
|
|
30
30
|
import { MORE } from "./generated/i18n/i18n-defaults.js";
|
|
31
31
|
|
|
@@ -72,7 +72,7 @@ export enum Mode {
|
|
|
72
72
|
renderer: litRender,
|
|
73
73
|
styles: [TabNavigationCss, TabInOverflowCss],
|
|
74
74
|
template: TabNavigationTemplate,
|
|
75
|
-
dependencies: [
|
|
75
|
+
dependencies: [Popover, Icon],
|
|
76
76
|
})
|
|
77
77
|
/**
|
|
78
78
|
* Fires when the tab was clicked.
|
|
@@ -157,9 +157,9 @@ class UDExTabNavigation extends UI5Element {
|
|
|
157
157
|
|
|
158
158
|
static i18nBundle: any;
|
|
159
159
|
_handleResizeBound: () => void;
|
|
160
|
-
|
|
160
|
+
_popover?: Popover;
|
|
161
161
|
_visibleTabs?: Array<ITab | HTMLElement>;
|
|
162
|
-
_isExpanded
|
|
162
|
+
_isExpanded: boolean = false;
|
|
163
163
|
_maxTitleLength: number = 25;
|
|
164
164
|
_maxTitleLengthInSecondLines: number = this._maxTitleLength * 2;
|
|
165
165
|
|
|
@@ -270,7 +270,7 @@ class UDExTabNavigation extends UI5Element {
|
|
|
270
270
|
}
|
|
271
271
|
|
|
272
272
|
initOutsideClick() {
|
|
273
|
-
if (this.
|
|
273
|
+
if (this._popover?.opened) {
|
|
274
274
|
this.handleOutsideClick();
|
|
275
275
|
}
|
|
276
276
|
}
|
|
@@ -569,8 +569,9 @@ class UDExTabNavigation extends UI5Element {
|
|
|
569
569
|
return this.shadowRoot!.querySelector<HTMLElement>(`#${this.__id!}-header`)!;
|
|
570
570
|
}
|
|
571
571
|
|
|
572
|
-
handleMoreButton() {
|
|
573
|
-
|
|
572
|
+
handleMoreButton(e: Event) {
|
|
573
|
+
e.stopPropagation();
|
|
574
|
+
this._popover = this.getResponsePopover();
|
|
574
575
|
this.updateOverflowItems();
|
|
575
576
|
this.handleTogglePopover();
|
|
576
577
|
}
|
|
@@ -583,7 +584,7 @@ class UDExTabNavigation extends UI5Element {
|
|
|
583
584
|
}
|
|
584
585
|
|
|
585
586
|
handleTogglePopover() {
|
|
586
|
-
if (this.
|
|
587
|
+
if (this._popover?.opened) {
|
|
587
588
|
this.handleClosePopover();
|
|
588
589
|
} else {
|
|
589
590
|
this.handleOpenPopover();
|
|
@@ -591,16 +592,16 @@ class UDExTabNavigation extends UI5Element {
|
|
|
591
592
|
}
|
|
592
593
|
|
|
593
594
|
handleClosePopover() {
|
|
594
|
-
if (this.
|
|
595
|
-
this.
|
|
595
|
+
if (this._popover?.opened) {
|
|
596
|
+
this._popover.close();
|
|
596
597
|
this.getMoreButton().classList.remove("udex-tab-navigation__button-more--toggled");
|
|
597
598
|
this._isExpanded = false;
|
|
598
599
|
}
|
|
599
600
|
}
|
|
600
601
|
|
|
601
602
|
handleOpenPopover() {
|
|
602
|
-
if (!this.
|
|
603
|
-
this.
|
|
603
|
+
if (!this._popover?.opened) {
|
|
604
|
+
this._popover!.showAt(this.getMoreButton());
|
|
604
605
|
this.getMoreButton().classList.add("udex-tab-navigation__button-more--toggled");
|
|
605
606
|
this._isExpanded = true;
|
|
606
607
|
}
|
|
@@ -690,7 +691,7 @@ class UDExTabNavigation extends UI5Element {
|
|
|
690
691
|
handleEnterKeyMoreButton(e: KeyboardEvent) {
|
|
691
692
|
if (isEnter(e)) {
|
|
692
693
|
e.preventDefault();
|
|
693
|
-
this.
|
|
694
|
+
this._popover = this.getResponsePopover();
|
|
694
695
|
this.updateOverflowItems();
|
|
695
696
|
this.handleOpenPopover();
|
|
696
697
|
}
|
|
@@ -698,14 +699,14 @@ class UDExTabNavigation extends UI5Element {
|
|
|
698
699
|
|
|
699
700
|
handleDownMoreButton(e: KeyboardEvent) {
|
|
700
701
|
if (isDown(e) || isEnter(e)) {
|
|
701
|
-
this.
|
|
702
|
+
this._popover = this.getResponsePopover();
|
|
702
703
|
this.handleOpenPopover();
|
|
703
704
|
this.updateOverflowItems();
|
|
704
705
|
}
|
|
705
706
|
}
|
|
706
707
|
|
|
707
708
|
onFocusFirstItemPopover() {
|
|
708
|
-
if (this.
|
|
709
|
+
if (this._popover?.opened) {
|
|
709
710
|
const popoverItems = this.getItemsFromPopover();
|
|
710
711
|
const firstPopoverItem = popoverItems[0];
|
|
711
712
|
firstPopoverItem.setAttribute("tabindex", "0");
|
|
@@ -811,8 +812,8 @@ class UDExTabNavigation extends UI5Element {
|
|
|
811
812
|
}
|
|
812
813
|
}
|
|
813
814
|
|
|
814
|
-
getResponsePopover():
|
|
815
|
-
return this.shadowRoot!.querySelector<
|
|
815
|
+
getResponsePopover(): Popover {
|
|
816
|
+
return this.shadowRoot!.querySelector<Popover>("[ui5-popover]")!;
|
|
816
817
|
}
|
|
817
818
|
|
|
818
819
|
get moreButtonText(): string {
|
package/src/Table.ts
CHANGED
|
@@ -301,7 +301,7 @@ class UDExTable extends UI5Element {
|
|
|
301
301
|
|
|
302
302
|
getParentRow(): UDExTableRow | UDExTableHeaderRow | UDExTableGroupRow {
|
|
303
303
|
const focusedElement = document.activeElement as HTMLElement;
|
|
304
|
-
return focusedElement.closest("udex-table-row, udex-table-header-row, udex-table-group-row")!;
|
|
304
|
+
return focusedElement.closest("[udex-table-row], [udex-table-header-row], [udex-table-group-row]")!;
|
|
305
305
|
}
|
|
306
306
|
|
|
307
307
|
getKeyboardNavigationItems(): Array<KeyBoardItem> {
|
|
@@ -347,7 +347,7 @@ class UDExTable extends UI5Element {
|
|
|
347
347
|
|
|
348
348
|
getInteractiveElements(el: TableBaseRow): Array<HTMLElement> {
|
|
349
349
|
return el.cells.flatMap(cell => Array.from(
|
|
350
|
-
cell.querySelectorAll("button, a, udex-button, udex-link, udex-rating-indicator"),
|
|
350
|
+
cell.querySelectorAll("button, a, [udex-button], [udex-link], [udex-rating-indicator]"),
|
|
351
351
|
));
|
|
352
352
|
}
|
|
353
353
|
|
|
@@ -6,7 +6,7 @@ import type UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
|
|
|
6
6
|
|
|
7
7
|
function block0 (this: BreadcrumbsPopover, context: UI5Element, tags: string[], suffix: string | undefined) { return suffix ? html`<${scopeTag("udex-dropdown", tags, suffix)} id="udex-${ifDefined(this._id)}-breadcrumbs__popover" class="udex-breadcrumbs__popover ui5-breadcrumbs-popover" placement-type="Bottom" horizontal-align="Left" @after-open="${this._afterDropdownOpen}" @after-close="${this._afterDropdownClose}" @keydown="${this._handleKeydown}"><div class="udex-breadcrumbs__popover-content">${ repeat(this._dropdownItems, (item, index) => (item as typeof item & {_id?: any})._id || index, (item, index: number) => block1.call(this, context, tags, suffix, item, index)) }</div></${scopeTag("udex-dropdown", tags, suffix)}>` : html`<udex-dropdown id="udex-${ifDefined(this._id)}-breadcrumbs__popover" class="udex-breadcrumbs__popover ui5-breadcrumbs-popover" placement-type="Bottom" horizontal-align="Left" @after-open="${this._afterDropdownOpen}" @after-close="${this._afterDropdownClose}" @keydown="${this._handleKeydown}"><div class="udex-breadcrumbs__popover-content">${ repeat(this._dropdownItems, (item, index) => (item as typeof item & {_id?: any})._id || index, (item, index: number) => block1.call(this, context, tags, suffix, item, index)) }</div></udex-dropdown>`;}
|
|
8
8
|
function block1 (this: BreadcrumbsPopover, context: UI5Element, tags: string[], suffix: string | undefined, item: any, index: number) { return html`${ item.icon ? block2.call(this, context, tags, suffix, item, index) : block3.call(this, context, tags, suffix, item, index) }`;}
|
|
9
|
-
function block2 (this: BreadcrumbsPopover, context: UI5Element, tags: string[], suffix: string | undefined, item: any, index: number) { return suffix ? html`<${scopeTag("udex-link", tags, suffix)} index="${index}" id="${ifDefined(item._id)}-li" @ui5-click="${ifDefined(this._onDropdownLinkPress)}" href="${ifDefined(item.href)}" target="${ifDefined(item.target)}" class="udex-breadcrumbs__item udex-breadcrumbs__item--${index} udex-breadcrumbs__item--with-icon" icon=${ifDefined(item.icon)} icon-placement="
|
|
9
|
+
function block2 (this: BreadcrumbsPopover, context: UI5Element, tags: string[], suffix: string | undefined, item: any, index: number) { return suffix ? html`<${scopeTag("udex-link", tags, suffix)} index="${index}" id="${ifDefined(item._id)}-li" @ui5-click="${ifDefined(this._onDropdownLinkPress)}" href="${ifDefined(item.href)}" target="${ifDefined(item.target)}" class="udex-breadcrumbs__item udex-breadcrumbs__item--${index} udex-breadcrumbs__item--with-icon" icon=${ifDefined(item.icon)} icon-placement="Start" accessible-name="${ifDefined(item.textContent)}" data-ui5-stable="${ifDefined(item.stableDomRef)}">${ifDefined(item.textContent)}</${scopeTag("udex-link", tags, suffix)}>` : html`<udex-link index="${index}" id="${ifDefined(item._id)}-li" @ui5-click="${ifDefined(this._onDropdownLinkPress)}" href="${ifDefined(item.href)}" target="${ifDefined(item.target)}" class="udex-breadcrumbs__item udex-breadcrumbs__item--${index} udex-breadcrumbs__item--with-icon" icon=${ifDefined(item.icon)} icon-placement="Start" accessible-name="${ifDefined(item.textContent)}" data-ui5-stable="${ifDefined(item.stableDomRef)}">${ifDefined(item.textContent)}</udex-link>`;}
|
|
10
10
|
function block3 (this: BreadcrumbsPopover, context: UI5Element, tags: string[], suffix: string | undefined, item: any, index: number) { return html`${ item._isCurrentPageItem ? block4.call(this, context, tags, suffix, item, index) : block5.call(this, context, tags, suffix, item, index) }`;}
|
|
11
11
|
function block4 (this: BreadcrumbsPopover, context: UI5Element, tags: string[], suffix: string | undefined, item: any, index: number) { return html`<span id="${ifDefined(item._id)}-li" class="udex-breadcrumbs__item udex-breadcrumb__item--current udex-breadcrumbs__item--${index}" accessible-name="${ifDefined(item.accessibleName)}" data-ui5-stable="${ifDefined(item.stableDomRef)}">${ifDefined(item.textContent)}</span>`;}
|
|
12
12
|
function block5 (this: BreadcrumbsPopover, context: UI5Element, tags: string[], suffix: string | undefined, item: any, index: number) { return suffix ? html`<${scopeTag("udex-link", tags, suffix)} index="${index}" id="${ifDefined(item._id)}-li" @ui5-click="${ifDefined(this._onDropdownLinkPress)}" href="${ifDefined(item.href)}" target="${ifDefined(item.target)}" class="udex-breadcrumbs__item udex-breadcrumbs__item--${index}" accessible-name="${ifDefined(item.accessibleName)}" data-ui5-stable="${ifDefined(item.stableDomRef)}">${ifDefined(item.textContent)}</${scopeTag("udex-link", tags, suffix)}>` : html`<udex-link index="${index}" id="${ifDefined(item._id)}-li" @ui5-click="${ifDefined(this._onDropdownLinkPress)}" href="${ifDefined(item.href)}" target="${ifDefined(item.target)}" class="udex-breadcrumbs__item udex-breadcrumbs__item--${index}" accessible-name="${ifDefined(item.accessibleName)}" data-ui5-stable="${ifDefined(item.stableDomRef)}">${ifDefined(item.textContent)}</udex-link>`;}
|
|
@@ -4,7 +4,7 @@ import type UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
|
|
|
4
4
|
type DatePickerPopover = any;
|
|
5
5
|
import type { ClassMapValue } from "@ui5/webcomponents-base/dist/types.js";
|
|
6
6
|
|
|
7
|
-
function block0 (this: DatePickerPopover, context: UI5Element, tags: string[], suffix: string | undefined) { return suffix ? html`<${scopeTag("udex-dropdown", tags, suffix)} id="udex-${ifDefined(this._id)}-calendar__popover" class="udex-date-picker__popover" placement-type="Bottom" horizontal-align="Left" @after-close="${this._afterDropdownClose}" @after-open="${this._afterDropdownOpen}"><${scopeTag("ui5-calendar", tags, suffix)} class="udex-date-picker__calendar" @ui5-selected-dates-change="${ifDefined(this.handleCalendarChange)}" selection-mode="${ifDefined(this.selectionMode)}" min-date="${ifDefined(this.minDate)}" max-date="${ifDefined(this.maxDate)}" format-pattern="${ifDefined(this.formatPattern)}">${ repeat(this._calendarSelectedDates, (item, index) => (item as typeof item & {_id?: any})._id || index, (item, index: number) => block1.call(this, context, tags, suffix, item, index)) }</${scopeTag("ui5-calendar", tags, suffix)}></${scopeTag("udex-dropdown", tags, suffix)}>` : html`<udex-dropdown id="udex-${ifDefined(this._id)}-calendar__popover" class="udex-date-picker__popover" placement-type="Bottom" horizontal-align="Left" @after-close="${this._afterDropdownClose}" @after-open="${this._afterDropdownOpen}"><ui5-calendar class="udex-date-picker__calendar" @ui5-selected-dates-change="${ifDefined(this.handleCalendarChange)}" selection-mode="${ifDefined(this.selectionMode)}" min-date="${ifDefined(this.minDate)}" max-date="${ifDefined(this.maxDate)}" format-pattern="${ifDefined(this.formatPattern)}">${ repeat(this._calendarSelectedDates, (item, index) => (item as typeof item & {_id?: any})._id || index, (item, index: number) => block1.call(this, context, tags, suffix, item, index)) }</ui5-calendar></udex-dropdown>`;}
|
|
7
|
+
function block0 (this: DatePickerPopover, context: UI5Element, tags: string[], suffix: string | undefined) { return suffix ? html`<${scopeTag("udex-dropdown", tags, suffix)} id="udex-${ifDefined(this._id)}-calendar__popover" class="udex-date-picker__popover" placement-type="Bottom" horizontal-align="Left" @ui5-after-close="${ifDefined(this._afterDropdownClose)}" @ui5-after-open="${ifDefined(this._afterDropdownOpen)}"><${scopeTag("ui5-calendar", tags, suffix)} class="udex-date-picker__calendar" @ui5-selected-dates-change="${ifDefined(this.handleCalendarChange)}" selection-mode="${ifDefined(this.selectionMode)}" min-date="${ifDefined(this.minDate)}" max-date="${ifDefined(this.maxDate)}" format-pattern="${ifDefined(this.formatPattern)}">${ repeat(this._calendarSelectedDates, (item, index) => (item as typeof item & {_id?: any})._id || index, (item, index: number) => block1.call(this, context, tags, suffix, item, index)) }</${scopeTag("ui5-calendar", tags, suffix)}></${scopeTag("udex-dropdown", tags, suffix)}>` : html`<udex-dropdown id="udex-${ifDefined(this._id)}-calendar__popover" class="udex-date-picker__popover" placement-type="Bottom" horizontal-align="Left" @ui5-after-close="${ifDefined(this._afterDropdownClose)}" @ui5-after-open="${ifDefined(this._afterDropdownOpen)}"><ui5-calendar class="udex-date-picker__calendar" @ui5-selected-dates-change="${ifDefined(this.handleCalendarChange)}" selection-mode="${ifDefined(this.selectionMode)}" min-date="${ifDefined(this.minDate)}" max-date="${ifDefined(this.maxDate)}" format-pattern="${ifDefined(this.formatPattern)}">${ repeat(this._calendarSelectedDates, (item, index) => (item as typeof item & {_id?: any})._id || index, (item, index: number) => block1.call(this, context, tags, suffix, item, index)) }</ui5-calendar></udex-dropdown>`;}
|
|
8
8
|
function block1 (this: DatePickerPopover, context: UI5Element, tags: string[], suffix: string | undefined, item: any, index: number) { return suffix ? html`<${scopeTag("ui5-date", tags, suffix)} value="${ifDefined(item)}"></${scopeTag("ui5-date", tags, suffix)}>` : html`<ui5-date value="${ifDefined(item)}"></ui5-date>`;}
|
|
9
9
|
|
|
10
10
|
|