@sapudex/web-components 0.138.0 → 0.147.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/dist/Accordion.js +1 -1
- package/dist/Accordion.js.map +1 -1
- package/dist/Avatar.js +1 -1
- package/dist/Avatar.js.map +1 -1
- package/dist/Breadcrumbs.js +1 -1
- package/dist/Breadcrumbs.js.map +1 -1
- package/dist/Carousel.js +1 -1
- package/dist/Carousel.js.map +1 -1
- package/dist/CountrySelector.d.ts +7 -1
- package/dist/CountrySelector.js +34 -9
- package/dist/CountrySelector.js.map +1 -1
- package/dist/DatePicker.js +1 -1
- package/dist/DatePicker.js.map +1 -1
- package/dist/Dropdown.d.ts +1 -0
- package/dist/Dropdown.js +13 -1
- package/dist/Dropdown.js.map +1 -1
- package/dist/FilterMenu.d.ts +2 -1
- package/dist/FilterMenu.js +13 -5
- package/dist/FilterMenu.js.map +1 -1
- package/dist/Footer.js +1 -1
- package/dist/Footer.js.map +1 -1
- package/dist/InputGroup.js +1 -1
- package/dist/InputGroup.js.map +1 -1
- package/dist/List.js +1 -1
- package/dist/List.js.map +1 -1
- package/dist/ListItem.js +1 -1
- package/dist/ListItem.js.map +1 -1
- package/dist/ListItemBase.d.ts +2 -2
- package/dist/ListItemBase.js.map +1 -1
- package/dist/ListSelectAll.js +1 -1
- package/dist/ListSelectAll.js.map +1 -1
- package/dist/MastheadItem.js +3 -8
- package/dist/MastheadItem.js.map +1 -1
- package/dist/MastheadMobileMenu.js +1 -1
- package/dist/MastheadMobileMenu.js.map +1 -1
- package/dist/MastheadProfileMenu.js +1 -1
- package/dist/MastheadProfileMenu.js.map +1 -1
- package/dist/MastheadShell.d.ts +22 -6
- package/dist/MastheadShell.js +39 -25
- package/dist/MastheadShell.js.map +1 -1
- package/dist/MessageStrip.js +1 -1
- package/dist/MessageStrip.js.map +1 -1
- package/dist/Pagination.js +1 -1
- package/dist/Pagination.js.map +1 -1
- package/dist/PasswordField.js +1 -1
- package/dist/PasswordField.js.map +1 -1
- package/dist/PhoneNumberField.js +1 -1
- package/dist/PhoneNumberField.js.map +1 -1
- package/dist/RatingBar.js +1 -1
- package/dist/RatingBar.js.map +1 -1
- package/dist/Review.js +1 -1
- package/dist/Review.js.map +1 -1
- package/dist/ReviewItem.js +1 -1
- package/dist/ReviewItem.js.map +1 -1
- package/dist/Search.js +2 -2
- package/dist/Search.js.map +1 -1
- package/dist/SearchableListBase.d.ts +5 -0
- package/dist/SearchableListBase.js +11 -4
- package/dist/SearchableListBase.js.map +1 -1
- package/dist/SecondaryNavigation.d.ts +1 -0
- package/dist/SecondaryNavigation.js +8 -2
- package/dist/SecondaryNavigation.js.map +1 -1
- package/dist/SecondaryNavigationItem.d.ts +8 -0
- package/dist/SecondaryNavigationItem.js +19 -0
- package/dist/SecondaryNavigationItem.js.map +1 -1
- package/dist/SecondaryNavigationSubItem.js +1 -1
- package/dist/SecondaryNavigationSubItem.js.map +1 -1
- package/dist/SelectBox.d.ts +6 -9
- package/dist/SelectBox.js +51 -56
- package/dist/SelectBox.js.map +1 -1
- package/dist/StatusBadge.js +1 -1
- package/dist/StatusBadge.js.map +1 -1
- package/dist/StepInput.js +1 -1
- package/dist/StepInput.js.map +1 -1
- package/dist/Tab.js +1 -1
- package/dist/Tab.js.map +1 -1
- package/dist/TabNavigation.js +1 -1
- package/dist/TabNavigation.js.map +1 -1
- package/dist/Table.js +1 -1
- package/dist/Table.js.map +1 -1
- package/dist/TextArea.js +1 -1
- package/dist/TextArea.js.map +1 -1
- package/dist/TextField.js +1 -2
- package/dist/TextField.js.map +1 -1
- package/dist/TruncatedText.js +1 -1
- package/dist/TruncatedText.js.map +1 -1
- package/dist/assets/{bundle.esm-bb1c7413.js → bundle.esm-6e8e301d.js} +186 -188
- package/dist/assets/{parameters-bundle.css-c897ae23.js → parameters-bundle.css-07457fce.js} +2 -2
- package/dist/css/themes/Button.css +1 -1
- package/dist/css/themes/CountrySelector.css +1 -1
- package/dist/css/themes/Dropdown.css +1 -1
- package/dist/css/themes/FilterMenu.css +1 -1
- package/dist/css/themes/MastheadItem.css +1 -1
- package/dist/css/themes/MastheadShell.css +1 -1
- package/dist/css/themes/PhoneNumberField.css +1 -1
- package/dist/css/themes/RatingIndicator.css +1 -1
- package/dist/css/themes/Search.css +1 -1
- package/dist/css/themes/SecondaryNavigationItem.css +1 -1
- package/dist/css/themes/SelectBox.css +1 -1
- package/dist/css/themes/Slider.css +1 -1
- package/dist/css/themes/Tag.css +1 -1
- package/dist/css/themes/TagGroup.css +1 -1
- package/dist/css/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css +1 -1
- package/dist/custom-elements-internal.json +56 -0
- package/dist/custom-elements.json +55 -0
- package/dist/data/CountryListISO3166.js +1 -1
- package/dist/data/CountryListISO3166.js.map +1 -1
- package/dist/generated/assets/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css.json +1 -1
- package/dist/generated/templates/CountrySelectorTemplate.lit.js +1 -1
- package/dist/generated/templates/CountrySelectorTemplate.lit.js.map +1 -1
- package/dist/generated/templates/MastheadShellTemplate.lit.js +10 -8
- package/dist/generated/templates/MastheadShellTemplate.lit.js.map +1 -1
- package/dist/generated/templates/SecondaryNavigationTemplate.lit.js +2 -2
- package/dist/generated/templates/SecondaryNavigationTemplate.lit.js.map +1 -1
- package/dist/generated/templates/SelectBoxTemplate.lit.js +3 -5
- package/dist/generated/templates/SelectBoxTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TagGroupTemplate.lit.js +2 -2
- package/dist/generated/templates/TagGroupTemplate.lit.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/Dropdown.css.js +1 -1
- package/dist/generated/themes/Dropdown.css.js.map +1 -1
- package/dist/generated/themes/FilterMenu.css.js +1 -1
- package/dist/generated/themes/FilterMenu.css.js.map +1 -1
- package/dist/generated/themes/MastheadItem.css.js +1 -1
- package/dist/generated/themes/MastheadItem.css.js.map +1 -1
- package/dist/generated/themes/MastheadShell.css.js +1 -1
- package/dist/generated/themes/MastheadShell.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/Search.css.js +1 -1
- package/dist/generated/themes/Search.css.js.map +1 -1
- package/dist/generated/themes/SecondaryNavigationItem.css.js +1 -1
- package/dist/generated/themes/SecondaryNavigationItem.css.js.map +1 -1
- package/dist/generated/themes/SelectBox.css.js +1 -1
- package/dist/generated/themes/SelectBox.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/Tag.css.js +1 -1
- package/dist/generated/themes/Tag.css.js.map +1 -1
- package/dist/generated/themes/TagGroup.css.js +1 -1
- package/dist/generated/themes/TagGroup.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 +9 -4
- package/dist/web-types.json +14 -4
- package/package.json +1 -1
- package/src/Accordion.ts +1 -1
- package/src/Avatar.ts +1 -1
- package/src/Breadcrumbs.ts +1 -1
- package/src/Carousel.ts +1 -1
- package/src/CountrySelector.hbs +2 -1
- package/src/CountrySelector.ts +45 -12
- package/src/DatePicker.ts +1 -1
- package/src/Dropdown.ts +9 -1
- package/src/FilterMenu.ts +12 -7
- package/src/Footer.ts +1 -1
- package/src/InputGroup.ts +1 -1
- package/src/List.ts +1 -1
- package/src/ListItem.ts +1 -1
- package/src/ListItemBase.ts +1 -1
- package/src/ListSelectAll.ts +1 -1
- package/src/MastheadItem.ts +5 -10
- package/src/MastheadMobileMenu.ts +1 -1
- package/src/MastheadProfileMenu.ts +1 -1
- package/src/MastheadShell.hbs +26 -19
- package/src/MastheadShell.ts +57 -29
- package/src/MessageStrip.ts +1 -3
- package/src/Pagination.ts +1 -1
- package/src/PasswordField.ts +1 -1
- package/src/PhoneNumberField.ts +1 -1
- package/src/RatingBar.ts +1 -1
- package/src/Review.ts +1 -1
- package/src/ReviewItem.ts +1 -1
- package/src/Search.ts +2 -2
- package/src/SearchableListBase.ts +15 -7
- package/src/SecondaryNavigation.hbs +2 -0
- package/src/SecondaryNavigation.ts +9 -2
- package/src/SecondaryNavigationItem.ts +29 -0
- package/src/SecondaryNavigationSubItem.ts +1 -1
- package/src/SelectBox.hbs +11 -24
- package/src/SelectBox.ts +51 -60
- package/src/StatusBadge.ts +1 -1
- package/src/StepInput.ts +1 -1
- package/src/Tab.ts +1 -1
- package/src/TabNavigation.ts +1 -1
- package/src/Table.ts +1 -1
- package/src/TagGroup.hbs +1 -1
- package/src/TextArea.ts +1 -1
- package/src/TextField.ts +1 -2
- package/src/TruncatedText.ts +1 -1
- package/src/data/CountryListISO3166.ts +1 -1
- package/src/generated/templates/CountrySelectorTemplate.lit.ts +1 -1
- package/src/generated/templates/MastheadShellTemplate.lit.ts +10 -8
- package/src/generated/templates/SecondaryNavigationTemplate.lit.ts +2 -2
- package/src/generated/templates/SelectBoxTemplate.lit.ts +3 -5
- package/src/generated/templates/TagGroupTemplate.lit.ts +2 -2
- package/src/generated/themes/Button.css.ts +1 -1
- package/src/generated/themes/CountrySelector.css.ts +1 -1
- package/src/generated/themes/Dropdown.css.ts +1 -1
- package/src/generated/themes/FilterMenu.css.ts +1 -1
- package/src/generated/themes/MastheadItem.css.ts +1 -1
- package/src/generated/themes/MastheadShell.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/Search.css.ts +1 -1
- package/src/generated/themes/SecondaryNavigationItem.css.ts +1 -1
- package/src/generated/themes/SelectBox.css.ts +1 -1
- package/src/generated/themes/Slider.css.ts +1 -1
- package/src/generated/themes/Tag.css.ts +1 -1
- package/src/generated/themes/TagGroup.css.ts +1 -1
- package/src/generated/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css.ts +1 -1
- package/src/themes/Button.css +10 -0
- package/src/themes/CountrySelector.css +13 -11
- package/src/themes/Dropdown.css +10 -0
- package/src/themes/FilterMenu.css +15 -2
- package/src/themes/MastheadItem.css +6 -2
- package/src/themes/MastheadShell.css +88 -9
- package/src/themes/PhoneNumberField.css +22 -20
- package/src/themes/Search.css +4 -0
- package/src/themes/SecondaryNavigationItem.css +8 -1
- package/src/themes/SelectBox.css +12 -88
- package/src/themes/Tag.css +8 -3
- package/src/themes/TagGroup.css +8 -0
- package/src/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css +0 -5
package/dist/MastheadShell.d.ts
CHANGED
|
@@ -83,6 +83,13 @@ declare class UDExMastheadShell extends UI5Element {
|
|
|
83
83
|
* @public
|
|
84
84
|
*/
|
|
85
85
|
bodyOverflow: boolean;
|
|
86
|
+
/**
|
|
87
|
+
* Defines the visibility of the Search by default.
|
|
88
|
+
*
|
|
89
|
+
* @default ""
|
|
90
|
+
* @public
|
|
91
|
+
*/
|
|
92
|
+
showSearchByDefault: boolean;
|
|
86
93
|
/**
|
|
87
94
|
* Defines sticky position for component
|
|
88
95
|
*
|
|
@@ -137,11 +144,17 @@ declare class UDExMastheadShell extends UI5Element {
|
|
|
137
144
|
*/
|
|
138
145
|
siteLabelAriaLabel: string;
|
|
139
146
|
/**
|
|
140
|
-
* Defines if the search container is
|
|
147
|
+
* Defines if the search container is opened
|
|
148
|
+
*
|
|
149
|
+
* @private
|
|
150
|
+
*/
|
|
151
|
+
_isSearchOpened: boolean;
|
|
152
|
+
/**
|
|
153
|
+
* Defines if the mobile menu is open
|
|
141
154
|
*
|
|
142
155
|
* @private
|
|
143
156
|
*/
|
|
144
|
-
|
|
157
|
+
_isMobileMenuOpen: boolean;
|
|
145
158
|
/**
|
|
146
159
|
* Defines if the close button was clicked
|
|
147
160
|
*
|
|
@@ -168,13 +181,12 @@ declare class UDExMastheadShell extends UI5Element {
|
|
|
168
181
|
handleProfileClick(e: CustomEvent): void;
|
|
169
182
|
handleMobileMenuClick(e: CustomEvent): void;
|
|
170
183
|
handleMobileCloseClick(e: CustomEvent): void;
|
|
184
|
+
handleEnterAndSpaceOnCloseBtn(e: KeyboardEvent): void;
|
|
171
185
|
handleOutsideClick(): void;
|
|
172
186
|
focusSearchInput(): void;
|
|
173
187
|
focusPreviousMenuItem(item: UDExMastheadItem): void;
|
|
174
188
|
focusNextMenuItem(item: UDExMastheadItem): void;
|
|
175
189
|
resetSelectedItems(): void;
|
|
176
|
-
addActiveMobileClass(): void;
|
|
177
|
-
removeActiveMobileClass(): void;
|
|
178
190
|
setSelectedItem(e: CustomEvent): void;
|
|
179
191
|
focusSearchBtn(): void;
|
|
180
192
|
hideSearch(): void;
|
|
@@ -183,7 +195,7 @@ declare class UDExMastheadShell extends UI5Element {
|
|
|
183
195
|
isNavigationItem(item: UDExMastheadItem): boolean;
|
|
184
196
|
setOverflowBody(): void;
|
|
185
197
|
removeOverflowBody(): void;
|
|
186
|
-
|
|
198
|
+
closeMobileMenu(): void;
|
|
187
199
|
get searchOpener(): UDExMastheadItem | null | undefined;
|
|
188
200
|
get mastheadHolder(): HTMLElement | null | undefined;
|
|
189
201
|
get mastheadMobileMenu(): UDExMastheadMobileMenu | null;
|
|
@@ -192,7 +204,11 @@ declare class UDExMastheadShell extends UI5Element {
|
|
|
192
204
|
get hasProfile(): boolean;
|
|
193
205
|
get hasCart(): boolean;
|
|
194
206
|
get hasSearch(): boolean;
|
|
207
|
+
get hasExploreSAP(): boolean;
|
|
195
208
|
get hasMobileMenuButtons(): boolean;
|
|
196
|
-
get
|
|
209
|
+
get isBreakpointSizeM(): boolean;
|
|
210
|
+
get isMainMenuVisible(): boolean;
|
|
211
|
+
get isRightMenuVisible(): boolean;
|
|
212
|
+
get isSearchVisible(): boolean;
|
|
197
213
|
}
|
|
198
214
|
export default UDExMastheadShell;
|
package/dist/MastheadShell.js
CHANGED
|
@@ -12,7 +12,7 @@ import event from "@ui5/webcomponents-base/dist/decorators/event.js";
|
|
|
12
12
|
import UI5Icon from "@ui5/webcomponents/dist/Icon.js";
|
|
13
13
|
import litRender from "@ui5/webcomponents-base/dist/renderer/LitRenderer.js";
|
|
14
14
|
import ResizeHandler from "@ui5/webcomponents-base/dist/delegate/ResizeHandler.js";
|
|
15
|
-
import { isLeft, isRight } from "@ui5/webcomponents-base/dist/Keys.js";
|
|
15
|
+
import { isLeft, isRight, isSpace, isEnter, } from "@ui5/webcomponents-base/dist/Keys.js";
|
|
16
16
|
import "@ui5/webcomponents-icons/dist/decline.js";
|
|
17
17
|
import "@ui5/webcomponents-icons/dist/menu2.js";
|
|
18
18
|
import "@ui5/webcomponents-icons/dist/search.js";
|
|
@@ -24,7 +24,6 @@ import UDExMastheadMobileMenu from "./MastheadMobileMenu.js";
|
|
|
24
24
|
import MastheadShellTemplate from "./generated/templates/MastheadShellTemplate.lit.js";
|
|
25
25
|
// Styles
|
|
26
26
|
import MastheadShellCss from "./generated/themes/MastheadShell.css.js";
|
|
27
|
-
const mobileMenuActiveClass = "udex-masthead-shell_mobile-menu-open";
|
|
28
27
|
const breakpointSizeM = 1279;
|
|
29
28
|
/**
|
|
30
29
|
* @class
|
|
@@ -53,7 +52,7 @@ let UDExMastheadShell = class UDExMastheadShell extends UI5Element {
|
|
|
53
52
|
this._searchOpener = this.searchOpener;
|
|
54
53
|
this._mobileMenu = this.mastheadMobileMenu;
|
|
55
54
|
this.handleOutsideClick();
|
|
56
|
-
if (this.
|
|
55
|
+
if (this._isSearchOpened) {
|
|
57
56
|
this.focusSearchInput();
|
|
58
57
|
}
|
|
59
58
|
if (this._closeBtnClicked) {
|
|
@@ -67,11 +66,11 @@ let UDExMastheadShell = class UDExMastheadShell extends UI5Element {
|
|
|
67
66
|
ResizeHandler.deregister(this, this._handleResizeBound);
|
|
68
67
|
}
|
|
69
68
|
_handleResize() {
|
|
70
|
-
if (this.
|
|
71
|
-
this.
|
|
69
|
+
if (this.isBreakpointSizeM) {
|
|
70
|
+
this._isSearchOpened = false;
|
|
72
71
|
}
|
|
73
|
-
if (this._shouldHandleResize && this.
|
|
74
|
-
this.
|
|
72
|
+
if (this._shouldHandleResize && this.isBreakpointSizeM) {
|
|
73
|
+
this.closeMobileMenu();
|
|
75
74
|
return;
|
|
76
75
|
}
|
|
77
76
|
this._shouldHandleResize = true;
|
|
@@ -105,7 +104,7 @@ let UDExMastheadShell = class UDExMastheadShell extends UI5Element {
|
|
|
105
104
|
}
|
|
106
105
|
handleSearchClick(e) {
|
|
107
106
|
e.stopPropagation();
|
|
108
|
-
this.
|
|
107
|
+
this._isSearchOpened = true;
|
|
109
108
|
this.resetSelectedItems();
|
|
110
109
|
if (this._searchOpener) {
|
|
111
110
|
this._searchOpener.selected = false;
|
|
@@ -123,18 +122,20 @@ let UDExMastheadShell = class UDExMastheadShell extends UI5Element {
|
|
|
123
122
|
handleMobileMenuClick(e) {
|
|
124
123
|
e.stopPropagation();
|
|
125
124
|
this.setSelectedItem(e);
|
|
126
|
-
this.
|
|
125
|
+
this._isMobileMenuOpen = true;
|
|
127
126
|
if (this.bodyOverflow) {
|
|
128
127
|
this.setOverflowBody();
|
|
129
128
|
}
|
|
130
129
|
}
|
|
131
130
|
handleMobileCloseClick(e) {
|
|
132
131
|
e.preventDefault();
|
|
133
|
-
this.
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
132
|
+
this.closeMobileMenu();
|
|
133
|
+
}
|
|
134
|
+
handleEnterAndSpaceOnCloseBtn(e) {
|
|
135
|
+
e.preventDefault();
|
|
136
|
+
if (isSpace(e) || isEnter(e)) {
|
|
137
|
+
this.closeMobileMenu();
|
|
138
|
+
this.mobileBtn?.focus();
|
|
138
139
|
}
|
|
139
140
|
}
|
|
140
141
|
handleOutsideClick() {
|
|
@@ -170,12 +171,6 @@ let UDExMastheadShell = class UDExMastheadShell extends UI5Element {
|
|
|
170
171
|
item.selected = false;
|
|
171
172
|
});
|
|
172
173
|
}
|
|
173
|
-
addActiveMobileClass() {
|
|
174
|
-
this._rootHolder?.classList.add(mobileMenuActiveClass);
|
|
175
|
-
}
|
|
176
|
-
removeActiveMobileClass() {
|
|
177
|
-
this._rootHolder?.classList.remove(mobileMenuActiveClass);
|
|
178
|
-
}
|
|
179
174
|
setSelectedItem(e) {
|
|
180
175
|
const clickedItem = e.detail.item;
|
|
181
176
|
if (!clickedItem) {
|
|
@@ -190,10 +185,11 @@ let UDExMastheadShell = class UDExMastheadShell extends UI5Element {
|
|
|
190
185
|
focusSearchBtn() {
|
|
191
186
|
if (this._searchOpener) {
|
|
192
187
|
this._searchOpener.focus();
|
|
188
|
+
this._closeBtnClicked = false;
|
|
193
189
|
}
|
|
194
190
|
}
|
|
195
191
|
hideSearch() {
|
|
196
|
-
this.
|
|
192
|
+
this._isSearchOpened = false;
|
|
197
193
|
this._closeBtnClicked = true;
|
|
198
194
|
}
|
|
199
195
|
getCurrentIndex(item) {
|
|
@@ -221,8 +217,8 @@ let UDExMastheadShell = class UDExMastheadShell extends UI5Element {
|
|
|
221
217
|
const { body: { style } } = document;
|
|
222
218
|
style.removeProperty("overflow");
|
|
223
219
|
}
|
|
224
|
-
|
|
225
|
-
this.
|
|
220
|
+
closeMobileMenu() {
|
|
221
|
+
this._isMobileMenuOpen = false;
|
|
226
222
|
this.resetSelectedItems();
|
|
227
223
|
this._mobileMenu?.showFirstLevelMenu();
|
|
228
224
|
if (this.bodyOverflow) {
|
|
@@ -253,12 +249,24 @@ let UDExMastheadShell = class UDExMastheadShell extends UI5Element {
|
|
|
253
249
|
get hasSearch() {
|
|
254
250
|
return !!this.search.length;
|
|
255
251
|
}
|
|
252
|
+
get hasExploreSAP() {
|
|
253
|
+
return !!this.exploreSAP.length;
|
|
254
|
+
}
|
|
256
255
|
get hasMobileMenuButtons() {
|
|
257
256
|
return !!this.mobileMenu.length;
|
|
258
257
|
}
|
|
259
|
-
get
|
|
258
|
+
get isBreakpointSizeM() {
|
|
260
259
|
return window.innerWidth <= breakpointSizeM;
|
|
261
260
|
}
|
|
261
|
+
get isMainMenuVisible() {
|
|
262
|
+
return !this.showSearchByDefault && !this._isSearchOpened;
|
|
263
|
+
}
|
|
264
|
+
get isRightMenuVisible() {
|
|
265
|
+
return this.showSearchByDefault || !this._isSearchOpened;
|
|
266
|
+
}
|
|
267
|
+
get isSearchVisible() {
|
|
268
|
+
return this.showSearchByDefault || this._isSearchOpened;
|
|
269
|
+
}
|
|
262
270
|
};
|
|
263
271
|
__decorate([
|
|
264
272
|
slot({ type: HTMLElement })
|
|
@@ -287,6 +295,9 @@ __decorate([
|
|
|
287
295
|
__decorate([
|
|
288
296
|
property({ type: Boolean })
|
|
289
297
|
], UDExMastheadShell.prototype, "bodyOverflow", void 0);
|
|
298
|
+
__decorate([
|
|
299
|
+
property({ type: Boolean })
|
|
300
|
+
], UDExMastheadShell.prototype, "showSearchByDefault", void 0);
|
|
290
301
|
__decorate([
|
|
291
302
|
property({ type: Boolean })
|
|
292
303
|
], UDExMastheadShell.prototype, "stickyPosition", void 0);
|
|
@@ -313,7 +324,10 @@ __decorate([
|
|
|
313
324
|
], UDExMastheadShell.prototype, "siteLabelAriaLabel", void 0);
|
|
314
325
|
__decorate([
|
|
315
326
|
property({ type: Boolean })
|
|
316
|
-
], UDExMastheadShell.prototype, "
|
|
327
|
+
], UDExMastheadShell.prototype, "_isSearchOpened", void 0);
|
|
328
|
+
__decorate([
|
|
329
|
+
property({ type: Boolean })
|
|
330
|
+
], UDExMastheadShell.prototype, "_isMobileMenuOpen", void 0);
|
|
317
331
|
__decorate([
|
|
318
332
|
property({ type: Boolean })
|
|
319
333
|
], UDExMastheadShell.prototype, "_closeBtnClicked", void 0);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MastheadShell.js","sourceRoot":"","sources":["../src/MastheadShell.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,UAAU,MAAM,4CAA4C,CAAC;AACpE,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,IAAI,MAAM,iDAAiD,CAAC;AACnE,OAAO,KAAK,MAAM,kDAAkD,CAAC;AACrE,OAAO,OAAO,MAAM,iCAAiC,CAAC;AACtD,OAAO,SAAS,MAAM,sDAAsD,CAAC;AAC7E,OAAO,aAAyC,MAAM,wDAAwD,CAAC;AAC/G,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,sCAAsC,CAAC;AACvE,OAAO,0CAA0C,CAAC;AAClD,OAAO,wCAAwC,CAAC;AAChD,OAAO,yCAAyC,CAAC;AACjD,OAAO,uCAAuC,CAAC;AAC/C,OAAO,gBAAgB,MAAM,mBAAmB,CAAC;AACjD,OAAO,gBAAgB,MAAM,mBAAmB,CAAC;AACjD,OAAO,iBAAiB,MAAM,oBAAoB,CAAC;AAEnD,OAAO,sBAAsB,MAAM,yBAAyB,CAAC;AAE7D,OAAO,qBAAqB,MAAM,oDAAoD,CAAC;AAEvF,SAAS;AACT,OAAO,gBAAgB,MAAM,yCAAyC,CAAC;AAEvE,MAAM,qBAAqB,GAAW,sCAAsC,CAAC;AAC7E,MAAM,eAAe,GAAW,IAAI,CAAC;AAErC;;;;;;;;;;;;;;;;GAgBG;AA8DH,IAAM,iBAAiB,GAAvB,MAAM,iBAAkB,SAAQ,UAAU;IAyKxC;QACE,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1D,CAAC;IAED,gBAAgB;QACd,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC;QACvC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,YAAY,CAAC;QACvC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,kBAAkB,CAAC;QAE3C,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE1B,IAAI,IAAI,CAAC,gBAAgB,EAAE;YACzB,IAAI,CAAC,gBAAgB,EAAE,CAAC;SACzB;QAED,IAAI,IAAI,CAAC,gBAAgB,EAAE;YACzB,IAAI,CAAC,cAAc,EAAE,CAAC;SACvB;IACH,CAAC;IAED,UAAU;QACR,aAAa,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;IACxD,CAAC;IAED,SAAS;QACP,aAAa,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;IAC1D,CAAC;IAED,aAAa;QACX,IAAI,IAAI,CAAC,YAAY,EAAE;YACrB,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;SAC/B;QAED,IAAI,IAAI,CAAC,mBAAmB,IAAI,IAAI,CAAC,YAAY,EAAE;YACjD,IAAI,CAAC,wBAAwB,EAAE,CAAC;YAChC,OAAO;SACR;QAED,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;IAClC,CAAC;IAED,aAAa,CAAC,CAAgB;QAC5B,CAAC,CAAC,eAAe,EAAE,CAAC;QACpB,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;QACxB,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC;IAC3B,CAAC;IAED,eAAe,CAAC,CAAgB;QAC9B,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE;YACb,MAAM,WAAW,GAAG,CAAC,CAAC,MAA0B,CAAC;YACjD,IAAI,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,EAAE;gBACtC,IAAI,CAAC,qBAAqB,CAAC,WAAW,CAAC,CAAC;aACzC;SACF;IACH,CAAC;IAED,gBAAgB,CAAC,CAAgB;QAC/B,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE;YACd,MAAM,WAAW,GAAG,CAAC,CAAC,MAA0B,CAAC;YACjD,IAAI,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,EAAE;gBACtC,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;aACrC;SACF;IACH,CAAC;IAED,eAAe,CAAC,CAAc;QAC5B,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,EAAE,aAAa,EAAE,CAAC,EAAE,CAAC,CAAC;IACrD,CAAC;IAED,oBAAoB,CAAC,CAAc;QACjC,IAAI,CAAC,SAAS,CAAC,kBAAkB,EAAE,EAAE,aAAa,EAAE,CAAC,EAAE,CAAC,CAAC;IAC3D,CAAC;IAED,iBAAiB,CAAC,CAAc;QAC9B,CAAC,CAAC,eAAe,EAAE,CAAC;QACpB,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;QAC7B,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC1B,IAAI,IAAI,CAAC,aAAa,EAAE;YACtB,IAAI,CAAC,aAAa,CAAC,QAAQ,GAAG,KAAK,CAAC;SACrC;QACD,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;IACjC,CAAC;IAED,eAAe,CAAC,CAAc;QAC5B,CAAC,CAAC,eAAe,EAAE,CAAC;QACpB,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;IAC/B,CAAC;IAED,kBAAkB,CAAC,CAAc;QAC/B,CAAC,CAAC,eAAe,EAAE,CAAC;QACpB,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;IAClC,CAAC;IAED,qBAAqB,CAAC,CAAc;QAClC,CAAC,CAAC,eAAe,EAAE,CAAC;QACpB,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;QACxB,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAE5B,IAAI,IAAI,CAAC,YAAY,EAAE;YACrB,IAAI,CAAC,eAAe,EAAE,CAAC;SACxB;IACH,CAAC;IAED,sBAAsB,CAAC,CAAc;QACnC,CAAC,CAAC,cAAc,EAAE,CAAC;QACnB,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAC/B,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;QACxB,IAAI,CAAC,WAAW,EAAE,kBAAkB,EAAE,CAAC;QAEvC,IAAI,IAAI,CAAC,YAAY,EAAE;YACrB,IAAI,CAAC,kBAAkB,EAAE,CAAC;SAC3B;IACH,CAAC;IAED,kBAAkB;QAChB,QAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,CAAa,EAAE,EAAE;YACnD,MAAM,EAAE,GAAG,CAAC,CAAC,MAA0B,CAAC;YACxC,MAAM,QAAQ,GAAG,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC;YAC1C,MAAM,cAAc,GAAG,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,UAAU,CAAC;YAC9D,IAAI,CAAC,cAAc,IAAI,CAAC,EAAE,CAAC,UAAU,IAAI,CAAC,QAAQ,EAAE;gBAClD,IAAI,CAAC,kBAAkB,EAAE,CAAC;aAC3B;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED,gBAAgB;QACd,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAa,aAAa,CAAC,CAAC;QACjE,IAAI,UAAU,EAAE;YACd,MAAM,KAAK,GAAG,UAAU,CAAC,UAAW,CAAC,aAAa,CAAc,OAAO,CAAC,CAAC;YACzE,KAAK,EAAE,KAAK,EAAE,CAAC;SAChB;IACH,CAAC;IAED,qBAAqB,CAAC,IAAsB;QAC1C,MAAM,oBAAoB,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QACxD,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;QAChD,MAAM,mBAAmB,GAAG,oBAAoB,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,oBAAoB,GAAG,CAAC,CAAC;QACpG,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC,KAAK,EAAE,CAAC;IAC9C,CAAC;IAED,iBAAiB,CAAC,IAAsB;QACtC,MAAM,oBAAoB,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QACxD,MAAM,eAAe,GAAG,oBAAoB,GAAG,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,oBAAoB,GAAG,CAAC,CAAC;QAC5G,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC,KAAK,EAAE,CAAC;IAC1C,CAAC;IAED,kBAAkB;QAChB,IAAI,CAAC,gBAAgB,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YACrC,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QACxB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,oBAAoB;QAClB,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;IACzD,CAAC;IAED,uBAAuB;QACrB,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC;IAC5D,CAAC;IAED,eAAe,CAAC,CAAc;QAC5B,MAAM,WAAW,GAAqB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC;QACpD,IAAI,CAAC,WAAW,EAAE;YAChB,OAAO;SACR;QAED,IAAI,CAAC,gBAAgB,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YACrC,IAAI,IAAI,CAAC,GAAG,KAAK,WAAW,CAAC,GAAG,EAAE;gBAChC,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;aACvB;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED,cAAc;QACZ,IAAI,IAAI,CAAC,aAAa,EAAE;YACtB,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;SAC5B;IACH,CAAC;IAED,UAAU;QACR,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;QAC9B,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;IAC/B,CAAC;IAED,eAAe,CAAC,IAAsB;QACpC,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC;IAED,gBAAgB;QACd,MAAM,YAAY,GAA4B;YAC5C,GAAG,IAAI,CAAC,SAAS;YACjB,GAAG,IAAI,CAAC,UAAU;YAClB,GAAG,IAAI,CAAC,IAAI;YACZ,GAAG,IAAI,CAAC,OAAO;YACf,GAAG,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;SAC5E,CAAC;QAEF,OAAO,YAAY,CAAC,MAAM,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC;IACzD,CAAC;IAED,gBAAgB,CAAC,IAAsB;QACrC,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC;IAC5D,CAAC;IAED,eAAe;QACb,MAAM,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,EAAE,GAAG,QAAQ,CAAC;QACrC,IAAI,CAAC,mBAAmB,GAAG,KAAK,CAAC;QACjC,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC5B,CAAC;IAED,kBAAkB;QAChB,MAAM,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,EAAE,GAAG,QAAQ,CAAC;QACrC,KAAK,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;IACnC,CAAC;IAED,wBAAwB;QACtB,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAC/B,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC1B,IAAI,CAAC,WAAW,EAAE,kBAAkB,EAAE,CAAC;QAEvC,IAAI,IAAI,CAAC,YAAY,EAAE;YACrB,IAAI,CAAC,kBAAkB,EAAE,CAAC;SAC3B;IACH,CAAC;IAED,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,kCAAkC,CAAC,CAAC;IAC5E,CAAC;IAED,IAAI,cAAc;QAChB,OAAO,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,sBAAsB,CAAC,CAAC;IAChE,CAAC;IAED,IAAI,kBAAkB;QACpB,OAAO,IAAI,CAAC,aAAa,CAAC,6BAA6B,CAAC,CAAC;IAC3D,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,gCAAgC,CAAC,CAAC;IAC1E,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,iCAAiC,CAAC,CAAC;IAC3E,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;IAC/B,CAAC;IAED,IAAI,OAAO;QACT,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;IAC5B,CAAC;IAED,IAAI,SAAS;QACX,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;IAC9B,CAAC;IAED,IAAI,oBAAoB;QACtB,OAAO,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;IAClC,CAAC;IAED,IAAI,YAAY;QACd,OAAO,MAAM,CAAC,UAAU,IAAI,eAAe,CAAC;IAC9C,CAAC;CACF,CAAA;AA3aG;IADD,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;qDACD;AAQzB;IADD,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,eAAe,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;oDAC9B;AAUpC;IADD,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;iDACE;AAQrB;IADD,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;qDACW;AAQrC;IADD,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;+CACK;AAQ/B;IADD,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;kDACQ;AASlC;IADD,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC;kDAC1B;AASjB;IADD,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;uDACH;AAStB;IADD,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;uDACH;AASvB;IADD,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;yDACD;AASzB;IADD,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC;kDAC1B;AASjB;IADD,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC;oDACxB;AASnB;IADD,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC;oDACxB;AAQnB;IADD,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;kDACR;AASjB;IADD,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC;oEACR;AAQnC;IADD,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;4DACE;AAQ3B;IADD,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;6DACG;AAQ5B;IADD,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;2DACC;AAQ3B;IADD,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;2DACC;AAjKzB,iBAAiB;IA7DtB,aAAa,CAAC;QACb,GAAG,EAAE,qBAAqB;QAC1B,QAAQ,EAAE,SAAS;QACnB,MAAM,EAAE,gBAAgB;QACxB,QAAQ,EAAE,qBAAqB;QAC/B,YAAY,EAAE;YACZ,sBAAsB;YACtB,iBAAiB;YACjB,gBAAgB;YAChB,gBAAgB;YAChB,OAAO;SACR;KACF,CAAC;IAEF;;;;OAIG;;IACF,KAAK,CAAC,cAAc,CAAC;IAEtB;;;;OAIG;;IACF,KAAK,CAAC,YAAY,CAAC;IAEpB;;;;OAIG;;IACF,KAAK,CAAC,eAAe,CAAC;IAEvB;;;;OAIG;;IACF,KAAK,CAAC,YAAY,EAAE;QACnB,MAAM,EAAE;YACN,aAAa,EAAE;gBACb,IAAI,EAAE,YAAY;aACnB;SACF;KACF,CAAC;IAEF;;;;OAIG;;IACF,KAAK,CAAC,kBAAkB,EAAE;QACzB,MAAM,EAAE;YACN,aAAa,EAAE;gBACb,IAAI,EAAE,YAAY;aACnB;SACF;KACF,CAAC;GAEI,iBAAiB,CAkbtB;AAED,iBAAiB,CAAC,MAAM,EAAE,CAAC;AAE3B,eAAe,iBAAiB,CAAC","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport UI5Icon from \"@ui5/webcomponents/dist/Icon.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport ResizeHandler, { ResizeObserverCallback } from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport { isLeft, isRight } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport \"@ui5/webcomponents-icons/dist/decline.js\";\nimport \"@ui5/webcomponents-icons/dist/menu2.js\";\nimport \"@ui5/webcomponents-icons/dist/search.js\";\nimport \"@ui5/webcomponents-icons/dist/cart.js\";\nimport UDExMastheadItem from \"./MastheadItem.js\";\nimport UDExMastheadMenu from \"./MastheadMenu.js\";\nimport UDExControlButton from \"./ControlButton.js\";\nimport UDExSearch from \"./Search.js\";\nimport UDExMastheadMobileMenu from \"./MastheadMobileMenu.js\";\n\nimport MastheadShellTemplate from \"./generated/templates/MastheadShellTemplate.lit.js\";\n\n// Styles\nimport MastheadShellCss from \"./generated/themes/MastheadShell.css.js\";\n\nconst mobileMenuActiveClass: string = \"udex-masthead-shell_mobile-menu-open\";\nconst breakpointSizeM: number = 1279;\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n *\n * <h3>Usage</h3>\n *\n * For the <code>udex-masthead-shell</code>\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@udex/web-components/dist/MastheadShell.js\";</code>\n *\n * @constructor\n * @extends UI5Element\n * @public\n */\n@customElement({\n tag: \"udex-masthead-shell\",\n renderer: litRender,\n styles: MastheadShellCss,\n template: MastheadShellTemplate,\n dependencies: [\n UDExMastheadMobileMenu,\n UDExControlButton,\n UDExMastheadItem,\n UDExMastheadMenu,\n UI5Icon,\n ],\n})\n\n/**\n * Fired event when the user clicks the search button trigger.\n *\n * @public\n */\n@event(\"search-click\")\n\n/**\n * Fired event when the user clicks the cart button trigger.\n *\n * @public\n */\n@event(\"cart-click\")\n\n/**\n * Fired event when the user clicks the profile button trigger.\n *\n * @public\n */\n@event(\"profile-click\")\n\n/**\n * Fired event when the user clicks the logo.\n *\n * @public\n */\n@event(\"logo-click\", {\n detail: {\n originalEvent: {\n type: PointerEvent,\n },\n },\n})\n\n/**\n * Fired event when the user clicks the site label.\n *\n * @public\n */\n@event(\"site-label-click\", {\n detail: {\n originalEvent: {\n type: PointerEvent,\n },\n },\n})\n\nclass UDExMastheadShell extends UI5Element {\n /**\n * Slot for mobile menu\n *\n * @public\n */\n @slot({ type: HTMLElement })\n mobileMenu!: Array<Node>;\n\n /**\n * Slot for main menu items.\n *\n * @public\n */\n @slot({ type: HTMLElement, individualSlots: true, \"default\": true })\n menuItems!: Array<UDExMastheadItem>;\n\n /**\n * Slot for search component - will be visible on search icon click.\n * Note: search component should be hidden by default.\n * Note: search icon won't be visible if this slot would be empty\n *\n * @public\n */\n @slot({ type: Node })\n search!: Array<Node>;\n\n /**\n * Slot for 'Explore SAP' menu\n *\n * @public\n */\n @slot({ type: HTMLElement })\n exploreSAP!: Array<UDExMastheadItem>;\n\n /**\n * Slot for cart menu\n *\n * @public\n */\n @slot({ type: HTMLElement })\n cart!: Array<UDExMastheadItem>;\n\n /**\n * Slot for avatar\n *\n * @public\n */\n @slot({ type: HTMLElement })\n profile!: Array<UDExMastheadItem>;\n\n /**\n * Defines URL to homepage. It will be used as a link on a logo and a site label\n *\n * @default \"\"\n * @public\n */\n @property({ type: String, defaultValue: \"\" })\n homeUrl!: string;\n\n /**\n * Defines URL for site label. It will be used as a link on a logo and a site label\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n siteLabelUrl!: string;\n\n /**\n * Defines overflow style for the body after clicking mobile menu opener button\n *\n * @default \"\"\n * @public\n */\n @property({ type: Boolean })\n bodyOverflow!: boolean;\n\n /**\n * Defines sticky position for component\n *\n * @default \"\"\n * @public\n */\n @property({ type: Boolean })\n stickyPosition!: boolean;\n\n /**\n * Defines the Logo image URL\n *\n * @default \"\"\n * @public\n */\n @property({ type: String, defaultValue: \"\" })\n logoUrl!: string;\n\n /**\n * Defines the Logo default title\n *\n * @default \"\"\n * @public\n */\n @property({ type: String, defaultValue: \"\" })\n logoTitle!: string;\n\n /**\n * Defines a site label. It will be displayed next to a logo.\n *\n * @default \"\"\n * @public\n */\n @property({ type: String, defaultValue: \"\" })\n siteLabel!: string;\n\n /**\n * Defines an alt text for logo\n *\n * @public\n */\n @property({ type: String })\n logoAlt!: string;\n\n /**\n * Defines an accessible name for close icon for the search bar\n *\n * default: \"\"\n * @public\n */\n @property({ type: String, defaultValue: \"\" })\n closeButtonAccessibleName?: string;\n\n /**\n * Defines an aria label for the homepage link\n *\n * @public\n */\n @property({ type: String })\n homepageAriaLabel!: string;\n\n /**\n * Defines an aria label for the site label\n *\n * @public\n */\n @property({ type: String })\n siteLabelAriaLabel!: string;\n\n /**\n * Defines if the search container is visible\n *\n * @private\n */\n @property({ type: Boolean })\n _isSearchVisible!: boolean;\n\n /**\n * Defines if the close button was clicked\n *\n * @private\n */\n @property({ type: Boolean })\n _closeBtnClicked!: boolean;\n\n _searchOpener!: UDExMastheadItem | null | undefined;\n _mobileMenu!: UDExMastheadMobileMenu | null | undefined;\n _handleResizeBound: ResizeObserverCallback;\n _rootHolder!: HTMLElement | null | undefined;\n _shouldHandleResize!: boolean;\n\n constructor() {\n super();\n this._handleResizeBound = this._handleResize.bind(this);\n }\n\n onAfterRendering() {\n this._rootHolder = this.mastheadHolder;\n this._searchOpener = this.searchOpener;\n this._mobileMenu = this.mastheadMobileMenu;\n\n this.handleOutsideClick();\n\n if (this._isSearchVisible) {\n this.focusSearchInput();\n }\n\n if (this._closeBtnClicked) {\n this.focusSearchBtn();\n }\n }\n\n onEnterDOM(): void {\n ResizeHandler.register(this, this._handleResizeBound);\n }\n\n onExitDOM(): void {\n ResizeHandler.deregister(this, this._handleResizeBound);\n }\n\n _handleResize(): void {\n if (this.isMobileView) {\n this._isSearchVisible = false;\n }\n\n if (this._shouldHandleResize && this.isMobileView) {\n this.resetMobileMenuOpenState();\n return;\n }\n\n this._shouldHandleResize = true;\n }\n\n handleKeyDown(e: KeyboardEvent) {\n e.stopPropagation();\n this.handleLeftArrow(e);\n this.handleRightArrow(e);\n }\n\n handleLeftArrow(e: KeyboardEvent): void {\n if (isLeft(e)) {\n const currentItem = e.target as UDExMastheadItem;\n if (this.isNavigationItem(currentItem)) {\n this.focusPreviousMenuItem(currentItem);\n }\n }\n }\n\n handleRightArrow(e: KeyboardEvent): void {\n if (isRight(e)) {\n const currentItem = e.target as UDExMastheadItem;\n if (this.isNavigationItem(currentItem)) {\n this.focusNextMenuItem(currentItem);\n }\n }\n }\n\n handleLogoClick(e: CustomEvent): void {\n this.fireEvent(\"logo-click\", { originalEvent: e });\n }\n\n handleSiteLabelClick(e: CustomEvent): void {\n this.fireEvent(\"site-label-click\", { originalEvent: e });\n }\n\n handleSearchClick(e: CustomEvent): void {\n e.stopPropagation();\n this._isSearchVisible = true;\n this.resetSelectedItems();\n if (this._searchOpener) {\n this._searchOpener.selected = false;\n }\n this.fireEvent(\"search-click\");\n }\n\n handleCartClick(e: CustomEvent) {\n e.stopPropagation();\n this.fireEvent(\"cart-click\");\n }\n\n handleProfileClick(e: CustomEvent): void {\n e.stopPropagation();\n this.fireEvent(\"profile-click\");\n }\n\n handleMobileMenuClick(e: CustomEvent) {\n e.stopPropagation();\n this.setSelectedItem(e);\n this.addActiveMobileClass();\n\n if (this.bodyOverflow) {\n this.setOverflowBody();\n }\n }\n\n handleMobileCloseClick(e: CustomEvent) {\n e.preventDefault();\n this.removeActiveMobileClass();\n this.setSelectedItem(e);\n this._mobileMenu?.showFirstLevelMenu();\n\n if (this.bodyOverflow) {\n this.removeOverflowBody();\n }\n }\n\n handleOutsideClick(): void {\n document.addEventListener(\"click\", (e: MouseEvent) => {\n const el = e.target as UDExMastheadItem;\n const isMobile = window.innerWidth < 1280;\n const isDropdownSlot = el.getAttribute(\"slot\") === \"dropdown\";\n if (!isDropdownSlot && !el.isMenuItem && !isMobile) {\n this.resetSelectedItems();\n }\n });\n }\n\n focusSearchInput(): void {\n const searchSlot = this.querySelector<UDExSearch>(\"udex-search\");\n if (searchSlot) {\n const input = searchSlot.shadowRoot!.querySelector<HTMLElement>(\"input\");\n input?.focus();\n }\n }\n\n focusPreviousMenuItem(item: UDExMastheadItem): void {\n const currentSelectedIndex = this.getCurrentIndex(item);\n const lastItemIndex = this.menuItems.length - 1;\n const previousSelectIndex = currentSelectedIndex - 1 < 0 ? lastItemIndex : currentSelectedIndex - 1;\n this.menuItems[previousSelectIndex].focus();\n }\n\n focusNextMenuItem(item: UDExMastheadItem): void {\n const currentSelectedIndex = this.getCurrentIndex(item);\n const nextSelectIndex = currentSelectedIndex + 1 > this.menuItems.length - 1 ? 0 : currentSelectedIndex + 1;\n this.menuItems[nextSelectIndex].focus();\n }\n\n resetSelectedItems(): void {\n this.getSelectedItems().forEach(item => {\n item.selected = false;\n });\n }\n\n addActiveMobileClass() {\n this._rootHolder?.classList.add(mobileMenuActiveClass);\n }\n\n removeActiveMobileClass() {\n this._rootHolder?.classList.remove(mobileMenuActiveClass);\n }\n\n setSelectedItem(e: CustomEvent): void {\n const clickedItem: UDExMastheadItem = e.detail.item;\n if (!clickedItem) {\n return;\n }\n\n this.getSelectedItems().forEach(item => {\n if (item._id !== clickedItem._id) {\n item.selected = false;\n }\n });\n }\n\n focusSearchBtn(): void {\n if (this._searchOpener) {\n this._searchOpener.focus();\n }\n }\n\n hideSearch(): void {\n this._isSearchVisible = false;\n this._closeBtnClicked = true;\n }\n\n getCurrentIndex(item: UDExMastheadItem): number {\n return this.menuItems.indexOf(item);\n }\n\n getSelectedItems(): Array<UDExMastheadItem> {\n const buttonsArray: Array<UDExMastheadItem> = [\n ...this.menuItems,\n ...this.exploreSAP,\n ...this.cart,\n ...this.profile,\n ...(this.mobileBtn && this.closeBtn ? [this.mobileBtn, this.closeBtn] : []),\n ];\n\n return buttonsArray.filter(({ selected }) => selected);\n }\n\n isNavigationItem(item: UDExMastheadItem): boolean {\n return this.menuItems.some(menuItem => menuItem === item);\n }\n\n setOverflowBody() {\n const { body: { style } } = document;\n this._shouldHandleResize = false;\n style.overflow = \"hidden\";\n }\n\n removeOverflowBody() {\n const { body: { style } } = document;\n style.removeProperty(\"overflow\");\n }\n\n resetMobileMenuOpenState(): void {\n this.removeActiveMobileClass();\n this.resetSelectedItems();\n this._mobileMenu?.showFirstLevelMenu();\n\n if (this.bodyOverflow) {\n this.removeOverflowBody();\n }\n }\n\n get searchOpener(): UDExMastheadItem | null | undefined {\n return this.shadowRoot?.querySelector(\".udex-masthead-shell__search-btn\");\n }\n\n get mastheadHolder(): HTMLElement | null | undefined {\n return this.shadowRoot?.querySelector(\".udex-masthead-shell\");\n }\n\n get mastheadMobileMenu(): UDExMastheadMobileMenu | null {\n return this.querySelector(\"[udex-masthead-mobile-menu]\");\n }\n\n get mobileBtn(): UDExMastheadItem | null | undefined {\n return this.shadowRoot?.querySelector(\".udex-masthead-shell__menu-btn\");\n }\n\n get closeBtn(): UDExMastheadItem | null | undefined {\n return this.shadowRoot?.querySelector(\".udex-masthead-shell__close-btn\");\n }\n\n get hasProfile(): boolean {\n return !!this.profile.length;\n }\n\n get hasCart(): boolean {\n return !!this.cart.length;\n }\n\n get hasSearch(): boolean {\n return !!this.search.length;\n }\n\n get hasMobileMenuButtons(): boolean {\n return !!this.mobileMenu.length;\n }\n\n get isMobileView(): boolean {\n return window.innerWidth <= breakpointSizeM;\n }\n}\n\nUDExMastheadShell.define();\n\nexport default UDExMastheadShell;\n"]}
|
|
1
|
+
{"version":3,"file":"MastheadShell.js","sourceRoot":"","sources":["../src/MastheadShell.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport UI5Icon from \"@ui5/webcomponents/dist/Icon.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport ResizeHandler, { ResizeObserverCallback } from \"@ui5/webcomponents-base/dist/delegate/ResizeHandler.js\";\nimport {\n isLeft, isRight, isSpace, isEnter,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport \"@ui5/webcomponents-icons/dist/decline.js\";\nimport \"@ui5/webcomponents-icons/dist/menu2.js\";\nimport \"@ui5/webcomponents-icons/dist/search.js\";\nimport \"@ui5/webcomponents-icons/dist/cart.js\";\nimport UDExMastheadItem from \"./MastheadItem.js\";\nimport UDExMastheadMenu from \"./MastheadMenu.js\";\nimport UDExControlButton from \"./ControlButton.js\";\nimport UDExSearch from \"./Search.js\";\nimport UDExMastheadMobileMenu from \"./MastheadMobileMenu.js\";\n\nimport MastheadShellTemplate from \"./generated/templates/MastheadShellTemplate.lit.js\";\n\n// Styles\nimport MastheadShellCss from \"./generated/themes/MastheadShell.css.js\";\n\nconst breakpointSizeM: number = 1279;\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n *\n * <h3>Usage</h3>\n *\n * For the <code>udex-masthead-shell</code>\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@udex/web-components/dist/MastheadShell.js\";</code>\n *\n * @constructor\n * @extends UI5Element\n * @public\n */\n@customElement({\n tag: \"udex-masthead-shell\",\n renderer: litRender,\n styles: MastheadShellCss,\n template: MastheadShellTemplate,\n dependencies: [\n UDExMastheadMobileMenu,\n UDExControlButton,\n UDExMastheadItem,\n UDExMastheadMenu,\n UI5Icon,\n ],\n})\n\n/**\n * Fired event when the user clicks the search button trigger.\n *\n * @public\n */\n@event(\"search-click\")\n\n/**\n * Fired event when the user clicks the cart button trigger.\n *\n * @public\n */\n@event(\"cart-click\")\n\n/**\n * Fired event when the user clicks the profile button trigger.\n *\n * @public\n */\n@event(\"profile-click\")\n\n/**\n * Fired event when the user clicks the logo.\n *\n * @public\n */\n@event(\"logo-click\", {\n detail: {\n originalEvent: {\n type: PointerEvent,\n },\n },\n})\n\n/**\n * Fired event when the user clicks the site label.\n *\n * @public\n */\n@event(\"site-label-click\", {\n detail: {\n originalEvent: {\n type: PointerEvent,\n },\n },\n})\n\nclass UDExMastheadShell extends UI5Element {\n /**\n * Slot for mobile menu\n *\n * @public\n */\n @slot({ type: HTMLElement })\n mobileMenu!: Array<Node>;\n\n /**\n * Slot for main menu items.\n *\n * @public\n */\n @slot({ type: HTMLElement, individualSlots: true, \"default\": true })\n menuItems!: Array<UDExMastheadItem>;\n\n /**\n * Slot for search component - will be visible on search icon click.\n * Note: search component should be hidden by default.\n * Note: search icon won't be visible if this slot would be empty\n *\n * @public\n */\n @slot({ type: Node })\n search!: Array<Node>;\n\n /**\n * Slot for 'Explore SAP' menu\n *\n * @public\n */\n @slot({ type: HTMLElement })\n exploreSAP!: Array<UDExMastheadItem>;\n\n /**\n * Slot for cart menu\n *\n * @public\n */\n @slot({ type: HTMLElement })\n cart!: Array<UDExMastheadItem>;\n\n /**\n * Slot for avatar\n *\n * @public\n */\n @slot({ type: HTMLElement })\n profile!: Array<UDExMastheadItem>;\n\n /**\n * Defines URL to homepage. It will be used as a link on a logo and a site label\n *\n * @default \"\"\n * @public\n */\n @property({ type: String, defaultValue: \"\" })\n homeUrl!: string;\n\n /**\n * Defines URL for site label. It will be used as a link on a logo and a site label\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n siteLabelUrl!: string;\n\n /**\n * Defines overflow style for the body after clicking mobile menu opener button\n *\n * @default \"\"\n * @public\n */\n @property({ type: Boolean })\n bodyOverflow!: boolean;\n\n /**\n * Defines the visibility of the Search by default.\n *\n * @default \"\"\n * @public\n */\n @property({ type: Boolean })\n showSearchByDefault!: boolean;\n\n /**\n * Defines sticky position for component\n *\n * @default \"\"\n * @public\n */\n @property({ type: Boolean })\n stickyPosition!: boolean;\n\n /**\n * Defines the Logo image URL\n *\n * @default \"\"\n * @public\n */\n @property({ type: String, defaultValue: \"\" })\n logoUrl!: string;\n\n /**\n * Defines the Logo default title\n *\n * @default \"\"\n * @public\n */\n @property({ type: String, defaultValue: \"\" })\n logoTitle!: string;\n\n /**\n * Defines a site label. It will be displayed next to a logo.\n *\n * @default \"\"\n * @public\n */\n @property({ type: String, defaultValue: \"\" })\n siteLabel!: string;\n\n /**\n * Defines an alt text for logo\n *\n * @public\n */\n @property({ type: String })\n logoAlt!: string;\n\n /**\n * Defines an accessible name for close icon for the search bar\n *\n * default: \"\"\n * @public\n */\n @property({ type: String, defaultValue: \"\" })\n closeButtonAccessibleName?: string;\n\n /**\n * Defines an aria label for the homepage link\n *\n * @public\n */\n @property({ type: String })\n homepageAriaLabel!: string;\n\n /**\n * Defines an aria label for the site label\n *\n * @public\n */\n @property({ type: String })\n siteLabelAriaLabel!: string;\n\n /**\n * Defines if the search container is opened\n *\n * @private\n */\n @property({ type: Boolean })\n _isSearchOpened!: boolean;\n\n /**\n * Defines if the mobile menu is open\n *\n * @private\n */\n @property({ type: Boolean })\n _isMobileMenuOpen!: boolean;\n\n /**\n * Defines if the close button was clicked\n *\n * @private\n */\n @property({ type: Boolean })\n _closeBtnClicked!: boolean;\n\n _searchOpener!: UDExMastheadItem | null | undefined;\n _mobileMenu!: UDExMastheadMobileMenu | null | undefined;\n _handleResizeBound: ResizeObserverCallback;\n _rootHolder!: HTMLElement | null | undefined;\n _shouldHandleResize!: boolean;\n\n constructor() {\n super();\n this._handleResizeBound = this._handleResize.bind(this);\n }\n\n onAfterRendering() {\n this._rootHolder = this.mastheadHolder;\n this._searchOpener = this.searchOpener;\n this._mobileMenu = this.mastheadMobileMenu;\n\n this.handleOutsideClick();\n\n if (this._isSearchOpened) {\n this.focusSearchInput();\n }\n\n if (this._closeBtnClicked) {\n this.focusSearchBtn();\n }\n }\n\n onEnterDOM(): void {\n ResizeHandler.register(this, this._handleResizeBound);\n }\n\n onExitDOM(): void {\n ResizeHandler.deregister(this, this._handleResizeBound);\n }\n\n _handleResize(): void {\n if (this.isBreakpointSizeM) {\n this._isSearchOpened = false;\n }\n\n if (this._shouldHandleResize && this.isBreakpointSizeM) {\n this.closeMobileMenu();\n return;\n }\n\n this._shouldHandleResize = true;\n }\n\n handleKeyDown(e: KeyboardEvent) {\n e.stopPropagation();\n this.handleLeftArrow(e);\n this.handleRightArrow(e);\n }\n\n handleLeftArrow(e: KeyboardEvent): void {\n if (isLeft(e)) {\n const currentItem = e.target as UDExMastheadItem;\n if (this.isNavigationItem(currentItem)) {\n this.focusPreviousMenuItem(currentItem);\n }\n }\n }\n\n handleRightArrow(e: KeyboardEvent): void {\n if (isRight(e)) {\n const currentItem = e.target as UDExMastheadItem;\n if (this.isNavigationItem(currentItem)) {\n this.focusNextMenuItem(currentItem);\n }\n }\n }\n\n handleLogoClick(e: CustomEvent): void {\n this.fireEvent(\"logo-click\", { originalEvent: e });\n }\n\n handleSiteLabelClick(e: CustomEvent): void {\n this.fireEvent(\"site-label-click\", { originalEvent: e });\n }\n\n handleSearchClick(e: CustomEvent): void {\n e.stopPropagation();\n this._isSearchOpened = true;\n this.resetSelectedItems();\n if (this._searchOpener) {\n this._searchOpener.selected = false;\n }\n this.fireEvent(\"search-click\");\n }\n\n handleCartClick(e: CustomEvent) {\n e.stopPropagation();\n this.fireEvent(\"cart-click\");\n }\n\n handleProfileClick(e: CustomEvent): void {\n e.stopPropagation();\n this.fireEvent(\"profile-click\");\n }\n\n handleMobileMenuClick(e: CustomEvent) {\n e.stopPropagation();\n this.setSelectedItem(e);\n this._isMobileMenuOpen = true;\n\n if (this.bodyOverflow) {\n this.setOverflowBody();\n }\n }\n\n handleMobileCloseClick(e: CustomEvent) {\n e.preventDefault();\n this.closeMobileMenu();\n }\n\n handleEnterAndSpaceOnCloseBtn(e: KeyboardEvent) {\n e.preventDefault();\n if (isSpace(e) || isEnter(e)) {\n this.closeMobileMenu();\n this.mobileBtn?.focus();\n }\n }\n\n handleOutsideClick(): void {\n document.addEventListener(\"click\", (e: MouseEvent) => {\n const el = e.target as UDExMastheadItem;\n const isMobile = window.innerWidth < 1280;\n const isDropdownSlot = el.getAttribute(\"slot\") === \"dropdown\";\n if (!isDropdownSlot && !el.isMenuItem && !isMobile) {\n this.resetSelectedItems();\n }\n });\n }\n\n focusSearchInput(): void {\n const searchSlot = this.querySelector<UDExSearch>(\"udex-search\");\n if (searchSlot) {\n const input = searchSlot.shadowRoot!.querySelector<HTMLElement>(\"input\");\n input?.focus();\n }\n }\n\n focusPreviousMenuItem(item: UDExMastheadItem): void {\n const currentSelectedIndex = this.getCurrentIndex(item);\n const lastItemIndex = this.menuItems.length - 1;\n const previousSelectIndex = currentSelectedIndex - 1 < 0 ? lastItemIndex : currentSelectedIndex - 1;\n this.menuItems[previousSelectIndex].focus();\n }\n\n focusNextMenuItem(item: UDExMastheadItem): void {\n const currentSelectedIndex = this.getCurrentIndex(item);\n const nextSelectIndex = currentSelectedIndex + 1 > this.menuItems.length - 1 ? 0 : currentSelectedIndex + 1;\n this.menuItems[nextSelectIndex].focus();\n }\n\n resetSelectedItems(): void {\n this.getSelectedItems().forEach(item => {\n item.selected = false;\n });\n }\n\n setSelectedItem(e: CustomEvent): void {\n const clickedItem: UDExMastheadItem = e.detail.item;\n if (!clickedItem) {\n return;\n }\n\n this.getSelectedItems().forEach(item => {\n if (item._id !== clickedItem._id) {\n item.selected = false;\n }\n });\n }\n\n focusSearchBtn(): void {\n if (this._searchOpener) {\n this._searchOpener.focus();\n this._closeBtnClicked = false;\n }\n }\n\n hideSearch(): void {\n this._isSearchOpened = false;\n this._closeBtnClicked = true;\n }\n\n getCurrentIndex(item: UDExMastheadItem): number {\n return this.menuItems.indexOf(item);\n }\n\n getSelectedItems(): Array<UDExMastheadItem> {\n const buttonsArray: Array<UDExMastheadItem> = [\n ...this.menuItems,\n ...this.exploreSAP,\n ...this.cart,\n ...this.profile,\n ...(this.mobileBtn && this.closeBtn ? [this.mobileBtn, this.closeBtn] : []),\n ];\n\n return buttonsArray.filter(({ selected }) => selected);\n }\n\n isNavigationItem(item: UDExMastheadItem): boolean {\n return this.menuItems.some(menuItem => menuItem === item);\n }\n\n setOverflowBody() {\n const { body: { style } } = document;\n this._shouldHandleResize = false;\n style.overflow = \"hidden\";\n }\n\n removeOverflowBody() {\n const { body: { style } } = document;\n style.removeProperty(\"overflow\");\n }\n\n closeMobileMenu(): void {\n this._isMobileMenuOpen = false;\n this.resetSelectedItems();\n this._mobileMenu?.showFirstLevelMenu();\n\n if (this.bodyOverflow) {\n this.removeOverflowBody();\n }\n }\n\n get searchOpener(): UDExMastheadItem | null | undefined {\n return this.shadowRoot?.querySelector(\".udex-masthead-shell__search-btn\");\n }\n\n get mastheadHolder(): HTMLElement | null | undefined {\n return this.shadowRoot?.querySelector(\".udex-masthead-shell\");\n }\n\n get mastheadMobileMenu(): UDExMastheadMobileMenu | null {\n return this.querySelector(\"[udex-masthead-mobile-menu]\");\n }\n\n get mobileBtn(): UDExMastheadItem | null | undefined {\n return this.shadowRoot?.querySelector(\".udex-masthead-shell__menu-btn\");\n }\n\n get closeBtn(): UDExMastheadItem | null | undefined {\n return this.shadowRoot?.querySelector(\".udex-masthead-shell__close-btn\");\n }\n\n get hasProfile(): boolean {\n return !!this.profile.length;\n }\n\n get hasCart(): boolean {\n return !!this.cart.length;\n }\n\n get hasSearch(): boolean {\n return !!this.search.length;\n }\n\n get hasExploreSAP(): boolean {\n return !!this.exploreSAP.length;\n }\n\n get hasMobileMenuButtons(): boolean {\n return !!this.mobileMenu.length;\n }\n\n get isBreakpointSizeM(): boolean {\n return window.innerWidth <= breakpointSizeM;\n }\n\n get isMainMenuVisible(): boolean {\n return !this.showSearchByDefault && !this._isSearchOpened;\n }\n\n get isRightMenuVisible(): boolean {\n return this.showSearchByDefault || !this._isSearchOpened;\n }\n\n get isSearchVisible(): boolean {\n return this.showSearchByDefault || this._isSearchOpened;\n }\n}\n\nUDExMastheadShell.define();\n\nexport default UDExMastheadShell;\n"]}
|
package/dist/MessageStrip.js
CHANGED
|
@@ -62,7 +62,7 @@ export var UdexMessageStripStatusType;
|
|
|
62
62
|
*/
|
|
63
63
|
let UDExMessageStrip = UDExMessageStrip_1 = class UDExMessageStrip extends MessageStrip {
|
|
64
64
|
static async onDefine() {
|
|
65
|
-
UDExMessageStrip_1.i18nBundle = await getI18nBundle("
|
|
65
|
+
UDExMessageStrip_1.i18nBundle = await getI18nBundle("@udex/web-components");
|
|
66
66
|
}
|
|
67
67
|
getTranslation(text) {
|
|
68
68
|
return UDExMessageStrip_1.i18nBundle.getText(text);
|
package/dist/MessageStrip.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MessageStrip.js","sourceRoot":"","sources":["../src/MessageStrip.ts"],"names":[],"mappings":";;;;;;;AAAA,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,KAAK,MAAM,kDAAkD,CAAC;AACrE,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,IAAI,MAAM,iDAAiD,CAAC;AAEnE,OAAO,EACL,aAAa,GAEd,MAAM,4CAA4C,CAAC;AACpD,OAAO,SAAS,MAAM,sDAAsD,CAAC;AAC7E,OAAO,YAAY,MAAM,yCAAyC,CAAC;AACnE,OAAO,eAAe,MAAM,8DAA8D,CAAC;AAC3F,OAAO,UAAU,MAAM,aAAa,CAAC;AACrC,OAAO,EACL,0BAA0B,EAC1B,mBAAmB,EACnB,yBAAyB,EACzB,qBAAqB,EACrB,qBAAqB,GACtB,MAAM,mCAAmC,CAAC;AAE3C,OAAO,oBAAoB,MAAM,mDAAmD,CAAC;AAErF,SAAS;AACT,OAAO,eAAe,MAAM,wCAAwC,CAAC;AAErE,MAAM,CAAN,IAAY,kBA0BX;AA1BD,WAAY,kBAAkB;IAC5B;;;OAGG;IACH,iDAA2B,CAAA;IAC3B;;;OAGG;IACH,2CAAqB,CAAA;IACrB;;;OAGG;IACH,2CAAqB,CAAA;IACrB;;;OAGG;IACH,yCAAmB,CAAA;IACnB;;;OAGG;IACH,uCAAiB,CAAA;AACnB,CAAC,EA1BW,kBAAkB,KAAlB,kBAAkB,QA0B7B;AAED,MAAM,CAAN,IAAY,0BAIX;AAJD,WAAY,0BAA0B;IACpC,2CAAa,CAAA;IACb,2CAAa,CAAA;IACb,2CAAa,CAAA;AACf,CAAC,EAJW,0BAA0B,KAA1B,0BAA0B,QAIrC;AAID;;;;;;;GAOG;AAeH,IAAM,gBAAgB,wBAAtB,MAAM,gBAAiB,SAAQ,YAAY;IAkDzC,MAAM,CAAC,KAAK,CAAC,QAAQ;QACnB,kBAAgB,CAAC,UAAU,GAAG,MAAM,aAAa,
|
|
1
|
+
{"version":3,"file":"MessageStrip.js","sourceRoot":"","sources":["../src/MessageStrip.ts"],"names":[],"mappings":"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","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport {\n getI18nBundle,\n I18nText,\n} from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport MessageStrip from \"@ui5/webcomponents/dist/MessageStrip.js\";\nimport messageStripCss from \"@ui5/webcomponents/dist/generated/themes/MessageStrip.css.js\";\nimport UDExButton from \"./Button.js\";\nimport {\n MESSAGE_STRIP_CLOSE_BUTTON,\n MESSAGE_STRIP_ERROR,\n MESSAGE_STRIP_INFORMATION,\n MESSAGE_STRIP_SUCCESS,\n MESSAGE_STRIP_WARNING,\n} from \"./generated/i18n/i18n-defaults.js\";\n\nimport MessageStripTemplate from \"./generated/templates/MessageStripTemplate.lit.js\";\n\n// Styles\nimport MessageStripCss from \"./generated/themes/MessageStrip.css.js\";\n\nexport enum MessageStripDesign {\n /**\n * Message should be just an information\n * @public\n */\n Information = \"Information\",\n /**\n * Message is a success message\n * @public\n */\n Positive = \"Positive\",\n /**\n * Message is an error\n * @public\n */\n Negative = \"Negative\",\n /**\n * Message is a warning\n * @public\n */\n Warning = \"Warning\",\n /**\n * Message is an action\n * @public\n */\n Action = \"Action\",\n}\n\nexport enum UdexMessageStripStatusType {\n Icon = \"Icon\",\n Text = \"Text\",\n None = \"None\",\n}\n\ntype textStatusType = Record<Exclude<MessageStripDesign, \"Action\">, string>;\n\n/**\n * @class\n *\n * @constructor\n * @extends MessageStrip\n * @tagname udex-message-strip\n * @public\n */\n@customElement({\n tag: \"udex-message-strip\",\n renderer: litRender,\n styles: [messageStripCss, MessageStripCss],\n template: MessageStripTemplate,\n dependencies: [UDExButton],\n})\n/**\n * Fired when the close button is pressed either with a\n * click/tap or by using the Enter or Space key.\n *\n * @public\n */\n@event(\"close\")\nclass UDExMessageStrip extends MessageStrip {\n /**\n * Defines the component type.\n *\n * @public\n */\n @property({\n type: MessageStripDesign,\n defaultValue: MessageStripDesign.Action,\n })\n /** @ts-expect-error */\n design!: `${MessageStripDesign}`;\n\n /**\n * Defines the component Status Type.\n *\n * @public\n */\n @property({\n type: UdexMessageStripStatusType,\n defaultValue: UdexMessageStripStatusType.Icon,\n })\n statusType!: `${UdexMessageStripStatusType}`;\n\n /**\n * Defines whether the MessageStrip renders close button.\n *\n * @public\n */\n @property({ type: Boolean })\n hideCloseButton!: boolean;\n\n /**\n * Defines display the icon for the Message Strip.\n *\n * @private\n */\n @property({ type: Boolean })\n hideIcon!: boolean;\n\n /**\n * Defines the content of the component.\n *\n * @slot\n * @public\n */\n @slot({ type: Node }) default!: Node;\n\n static i18nBundle: I18nBundle;\n\n static async onDefine() {\n UDExMessageStrip.i18nBundle = await getI18nBundle(\"@udex/web-components\");\n }\n\n getTranslation(text: I18nText): string {\n return UDExMessageStrip.i18nBundle.getText(text);\n }\n\n textStatusTypeMapping(): textStatusType {\n return {\n Information: this.getTranslation(MESSAGE_STRIP_INFORMATION),\n Positive: this.getTranslation(MESSAGE_STRIP_SUCCESS),\n Negative: this.getTranslation(MESSAGE_STRIP_ERROR),\n Warning: this.getTranslation(MESSAGE_STRIP_WARNING),\n };\n }\n\n onBeforeRendering() {\n if (\n this.isDesignAction()\n || this.statusType !== UdexMessageStripStatusType.Icon\n ) {\n this.hideIcon = true;\n }\n }\n\n isDesignAction() {\n return this.design === MessageStripDesign.Action;\n }\n\n get shouldHideIcon() {\n if (\n this.isDesignAction()\n || this.statusType !== UdexMessageStripStatusType.Icon\n ) {\n return this.hideIcon || this.icon.length === 0;\n }\n\n return this.hideIcon;\n }\n\n get hideTextStatus() {\n return (\n this.statusType !== UdexMessageStripStatusType.Text\n || this.isDesignAction()\n );\n }\n\n get textStatus(): string | undefined {\n if (this.design !== MessageStripDesign.Action) {\n return this.textStatusTypeMapping()[this.design];\n }\n }\n\n get _closeButtonText() {\n return `${this.textStatus ?? \"\"} ${this.getTranslation(MESSAGE_STRIP_CLOSE_BUTTON)}`;\n }\n\n get iconProvided() {\n return this.icon.length > 0;\n }\n\n _closeClick() {\n this.fireEvent(\"close\");\n }\n}\n\nUDExMessageStrip.define();\n\nexport default UDExMessageStrip;\n"]}
|
package/dist/Pagination.js
CHANGED
|
@@ -141,7 +141,7 @@ let UDExPagination = UDExPagination_1 = class UDExPagination extends UI5Element
|
|
|
141
141
|
return `${classes} udex-pagination--${this.display} udex-pagination--${this.type}`;
|
|
142
142
|
}
|
|
143
143
|
static async onDefine() {
|
|
144
|
-
UDExPagination_1.i18nBundle = await getI18nBundle("
|
|
144
|
+
UDExPagination_1.i18nBundle = await getI18nBundle("@udex/web-components");
|
|
145
145
|
}
|
|
146
146
|
setActive(element) {
|
|
147
147
|
const pageIndex = element.getAttribute("index")
|
package/dist/Pagination.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Pagination.js","sourceRoot":"","sources":["../src/Pagination.ts"],"names":[],"mappings":";;;;;;;AAAA,OAAO,UAAU,MAAM,4CAA4C,CAAC;AACpE,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,KAAK,MAAM,kDAAkD,CAAC;AACrE,OAAO,SAAS,MAAM,sDAAsD,CAAC;AAC7E,OAAO,OAAO,MAAM,+CAA+C,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,4CAA4C,CAAC;AAE3E,OAAO,EAAE,SAAS,EAAE,MAAM,wCAAwC,CAAC;AACnE,OAAO,EACL,EAAE,EACF,eAAe,EACf,QAAQ,EACR,aAAa,EACb,UAAU,EACV,SAAS,EACT,aAAa,EACb,SAAS,GACV,MAAM,mCAAmC,CAAC;AAC3C,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,iCAAiC,CAAC;AACzC,OAAO,2CAA2C,CAAC;AACnD,OAAO,yDAAyD,CAAC;AACjE,OAAO,qDAAqD,CAAC;AAC7D,OAAO,sDAAsD,CAAC;AAE9D,WAAW;AACX,OAAO,kBAAkB,MAAM,iDAAiD,CAAC;AAEjF,SAAS;AACT,OAAO,aAAa,MAAM,mCAAmC,CAAC;AAO9D,MAAM,CAAN,IAAY,cAGX;AAHD,WAAY,cAAc;IACxB,+BAAa,CAAA;IACb,iCAAe,CAAA;AACjB,CAAC,EAHW,cAAc,KAAd,cAAc,QAGzB;AAED,MAAM,CAAN,IAAY,WAGX;AAHD,WAAY,WAAW;IACrB,kCAAmB,CAAA;IACnB,gCAAiB,CAAA;AACnB,CAAC,EAHW,WAAW,KAAX,WAAW,QAGtB;AAED;;;;;;;;;;;GAWG;AAoBH,IAAM,cAAc,sBAApB,MAAM,cAAe,SAAQ,UAAU;IA2DrC;QACE,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;QACjB,IAAI,CAAC,gBAAgB,GAAG,CAAC,CAAC;QAC1B,IAAI,CAAC,oBAAoB,GAAG,CAAC,CAAC;IAChC,CAAC;IAED,UAAU;QACR,IAAI,SAAS,EAAE,EAAE;YACf,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;SAClC;IACH,CAAC;IAED,IAAI,iBAAiB;QACnB,OAAO,IAAI,CAAC,gBAAgB,GAAG,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC;IAClD,CAAC;IAED,IAAI,iBAAiB;QACnB,OAAO,IAAI,CAAC,gBAAgB,KAAK,CAAC,CAAC;IACrC,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,CACL,IAAI,CAAC,IAAI,KAAK,cAAc,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,KAAK,WAAW,CAAC,MAAM,CACzE,CAAC;IACJ,CAAC;IAED,IAAI,SAAS;QACX,OAAO,CACL,IAAI,CAAC,IAAI,KAAK,cAAc,CAAC,KAAK,IAAI,IAAI,CAAC,OAAO,KAAK,WAAW,CAAC,MAAM,CAC1E,CAAC;IACJ,CAAC;IAED,IAAI,cAAc;QAChB,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;YACf,OAAO,EAAE,CAAC;SACX;QACD,OAAO,GAAG,IAAI,CAAC,gBAAgB,GAAG,CAAC,EAAE,CAAC;IACxC,CAAC;IAED,IAAI,YAAY;QACd,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;YACf,OAAO,EAAE,CAAC;SACX;QACD,OAAO,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;IACzB,CAAC;IAED,IAAI,kBAAkB;QACpB,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;YACf,OAAO,EAAE,CAAC;SACX;QACD,OAAO,IAAI,gBAAc,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC;IACtD,CAAC;IAED,IAAI,kBAAkB;QACpB,OAAO,gBAAc,CAAC,UAAU,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;IAC5D,CAAC;IAED,IAAI,6BAA6B;QAC/B,OAAO,GAAG,IAAI,CAAC,kBAAkB,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,kBAAkB,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;IAC7G,CAAC;IAED,IAAI,0BAA0B;QAC5B,OAAO,gBAAc,CAAC,UAAU,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IAC1D,CAAC;IAED,IAAI,uBAAuB;QACzB,IAAI,IAAI,CAAC,gBAAgB,KAAK,CAAC,EAAE;YAAE,OAAO,gBAAc,CAAC,UAAU,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;SAAE;QAC1F,OAAO,GAAG,gBAAc,CAAC,UAAU,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC,0BAA0B,IAAI,CAAC;IAClG,CAAC;IAED,IAAI,sBAAsB;QACxB,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,gBAAgB,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE;YAAE,OAAO,gBAAc,CAAC,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;SAAE;QACtH,OAAO,GAAG,gBAAc,CAAC,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,IAAI,CAAC,0BAA0B,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;IAC7G,CAAC;IAED,IAAI,0BAA0B;QAC5B,IAAI,IAAI,CAAC,gBAAgB,KAAK,CAAC,EAAE;YAAE,OAAO,gBAAc,CAAC,UAAU,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;SAAE;QAC7F,OAAO,GAAG,gBAAc,CAAC,UAAU,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,IAAI,CAAC,0BAA0B,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC5H,CAAC;IAED,IAAI,kBAAkB;QACpB,OAAO,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,GAAG,gBAAc,CAAC,UAAU,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC9F,CAAC;IAED,IAAI,sBAAsB;QACxB,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,gBAAgB,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE;YAAE,OAAO,gBAAc,CAAC,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;SAAE;QACtH,OAAO,GAAG,gBAAc,CAAC,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,IAAI,CAAC,0BAA0B,IAAI,IAAI,CAAC,gBAAgB,GAAG,CAAC,EAAE,CAAC;IAC5H,CAAC;IAED,IAAI,cAAc;QAChB,OAAO,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,GAAG,gBAAc,CAAC,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1F,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACrC,CAAC;IAED,IAAI,eAAe;QACjB,IAAI,OAAO,GAAG,iBAAiB,CAAC;QAChC,IAAI,IAAI,CAAC,UAAU,KAAK,KAAK,EAAE;YAC7B,OAAO,GAAG,GAAG,OAAO,qBAAqB,IAAI,CAAC,UAAU,EAAE,CAAC;SAC5D;QACD,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACjB,OAAO,OAAO,CAAC;SAChB;QACD,OAAO,GAAG,OAAO,qBAAqB,IAAI,CAAC,OAAO,qBAAqB,IAAI,CAAC,IAAI,EAAE,CAAC;IACrF,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,QAAQ;QACnB,gBAAc,CAAC,UAAU,GAAG,MAAM,aAAa,CAAC,6BAA6B,CAAC,CAAC;IACjF,CAAC;IAED,SAAS,CAAC,OAAoB;QAC5B,MAAM,SAAS,GAAG,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC;YAC7C,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YAC/C,CAAC,CAAC,IAAI,CAAC;QACT,IAAI,SAAS,KAAK,IAAI,EAAE;YACtB,OAAO;SACR;QAED,OAAO,CAAC,YAAY,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;QAC7C,IAAI,CAAC,gBAAgB,GAAG,SAAS,CAAC;QAClC,IAAI,CAAC,oBAAoB,EAAE,eAAe,CAAC,cAAc,CAAC,CAAC;QAC3D,IAAI,CAAC,oBAAoB,GAAG,OAAO,CAAC;IACtC,CAAC;IAED,WAAW,CAAC,CAAQ;QAClB,CAAC,CAAC,cAAc,EAAE,CAAC;QACnB,MAAM,WAAW,GAAG,IAAI,CAAC,gBAAgB,IAAI,CAAC,CAAC;QAC/C,IAAI,IAAI,CAAC,KAAK,IAAI,WAAW,IAAI,IAAI,CAAC,KAAK,GAAG,CAAC,EAAE;YAC/C,OAAO;SACR;QACD,IAAI,CAAC,gBAAgB,GAAG,WAAW,GAAG,CAAC,CAAC;QACxC,IAAI,CAAC,eAAe,EAAE,CAAC;IACzB,CAAC;IAED,WAAW,CAAC,CAAQ;QAClB,CAAC,CAAC,cAAc,EAAE,CAAC;QACnB,MAAM,WAAW,GAAG,IAAI,CAAC,gBAAgB,IAAI,CAAC,CAAC;QAC/C,IAAI,IAAI,CAAC,KAAK,IAAI,WAAW,IAAI,CAAC,EAAE;YAClC,OAAO;SACR;QACD,IAAI,CAAC,gBAAgB,IAAI,CAAC,CAAC;QAC3B,IAAI,CAAC,eAAe,EAAE,CAAC;IACzB,CAAC;IAED,YAAY,CAAC,CAAQ;QACnB,CAAC,CAAC,cAAc,EAAE,CAAC;QACnB,MAAM,WAAW,GAAG,IAAI,CAAC,gBAAgB,IAAI,CAAC,CAAC;QAC/C,IAAI,WAAW,KAAK,CAAC,EAAE;YACrB,OAAO;SACR;QACD,IAAI,CAAC,gBAAgB,GAAG,CAAC,CAAC;QAC1B,IAAI,CAAC,eAAe,EAAE,CAAC;IACzB,CAAC;IAED,WAAW,CAAC,CAAQ;QAClB,CAAC,CAAC,cAAc,EAAE,CAAC;QACnB,MAAM,WAAW,GAAG,IAAI,CAAC,gBAAgB,IAAI,CAAC,CAAC;QAC/C,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,WAAW,IAAI,IAAI,CAAC,KAAK,GAAG,CAAC,EAAE;YAChD,OAAO;SACR;QACD,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;QACvC,IAAI,CAAC,eAAe,EAAE,CAAC;IACzB,CAAC;IAED,gBAAgB,CAAC,KAAa;QAC5B,MAAM,eAAe,GAAG,EAAE,CAAC;QAC3B,IAAI,UAAU,CAAC;QACf,IAAI,QAAQ,CAAC;QACb,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,oBAAoB,GAAG,CAAC,CAAC,CAAC;QAEzD,IAAI,KAAK,IAAI,IAAI,CAAC,oBAAoB,EAAE;YACtC,UAAU,GAAG,CAAC,CAAC;YACf,QAAQ,GAAG,KAAK,CAAC;SAClB;aAAM;YACL,MAAM,kBAAkB,GAAG,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC;YAE/F,UAAU,GAAG,IAAI,CAAC,gBAAgB,IAAI,KAAK,GAAG,MAAM,GAAG,CAAC;gBACtD,CAAC,CAAC,kBAAkB;gBACpB,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,oBAAoB,CAAC;YAEtC,MAAM,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,GAAG,MAAM;gBACrD,CAAC,CAAC,IAAI,CAAC,oBAAoB;gBAC3B,CAAC,CAAC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,oBAAoB,GAAG,MAAM,CAAC;YAE/D,QAAQ,GAAG,IAAI,CAAC,gBAAgB,IAAI,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,KAAK,CAAC;SAC/E;QAED,KAAK,IAAI,KAAK,GAAG,UAAU,EAAE,KAAK,GAAG,QAAQ,IAAI,KAAK,GAAG,KAAK,EAAE,KAAK,EAAE,EAAE;YACvE,MAAM,SAAS,GAAG,KAAK,KAAK,IAAI,CAAC,gBAAgB,CAAC;YAClD,MAAM,cAAc,GAAG,SAAS,CAAC,CAAC,CAAC;QACjC,IAAI,CAAC,kBAAkB,IAAI,KAAK,GAAG,CAAC,IAAI,gBAAc,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,KAAK,KAAK,gBAAc,CAAC,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;QAChJ,IAAI,CAAC,kBAAkB,IAAI,KAAK,GAAG,CAAC,IAAI,gBAAc,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAChG,eAAe,CAAC,IAAI,CAAC;gBACnB,KAAK;gBACL,KAAK,EAAE,KAAK,GAAG,CAAC;gBAChB,MAAM,EAAE,SAAS;gBACjB,cAAc;aACf,CAAC,CAAC;SACJ;QAED,OAAO,eAAe,CAAC;IACzB,CAAC;IAED,iBAAiB,CAAC,KAAa;QAC7B,MAAM,eAAe,GAAG,EAAE,CAAC;QAC3B,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,EAAE,KAAK,EAAE,EAAE;YAC1C,MAAM,SAAS,GAAG,KAAK,KAAK,IAAI,CAAC,gBAAgB,CAAC;YAClD,MAAM,cAAc,GAAG,SAAS,CAAC,CAAC,CAAC;QACjC,IAAI,CAAC,kBAAkB,IAAI,KAAK,GAAG,CAAC,IAAI,gBAAc,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,KAAK,KAAK,gBAAc,CAAC,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;QAChJ,IAAI,CAAC,kBAAkB,IAAI,KAAK,GAAG,CAAC,IAAI,gBAAc,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAChG,eAAe,CAAC,IAAI,CAAC;gBACnB,KAAK;gBACL,KAAK,EAAE,KAAK,GAAG,CAAC;gBAChB,MAAM,EAAE,SAAS;gBACjB,cAAc;aACf,CAAC,CAAC;SACJ;QAED,OAAO,eAAe,CAAC;IACzB,CAAC;IAED,UAAU,CAAC,KAAc;QACvB,IAAI,CAAC,KAAK,EAAE;YACV,OAAO,EAAE,CAAC;SACX;QACD,IAAI,IAAI,CAAC,OAAO,KAAK,WAAW,CAAC,MAAM,EAAE;YACvC,OAAO,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;SACrC;QAED,OAAO,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;IACvC,CAAC;IAED,WAAW,CAAC,CAAQ;QAClB,CAAC,CAAC,cAAc,EAAE,CAAC;QACnB,MAAM,MAAM,GAAG,CAAC,CAAC,MAAqB,CAAC;QACvC,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,CAAC,aAAa,CAAC,CAAC,CAAE,MAAM,CAAC,UAA0B,CAAC,CAAC,CAAC,MAAM,CAAC;QACzF,IAAI,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,IAAI,EAAE;YAC3C,OAAO;SACR;QAED,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACxB,IAAI,CAAC,eAAe,EAAE,CAAC;IACzB,CAAC;IAED,eAAe;QACb,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,WAAW,EAAE,IAAI,CAAC,gBAAgB,GAAG,CAAC,EAAE,CAAC,CAAC;IACvE,CAAC;IAED,gBAAgB;QACd,IAAI,IAAI,CAAC,IAAI,KAAK,cAAc,CAAC,IAAI,EAAE;YACrC,OAAO;SACR;QAED,MAAM,sBAAsB,GAAG,IAAI,CAAC,UAAU,EAAE,aAAa,CAC3D,+BAA+B,CAChC,CAAC;QAEF,IAAI,CAAC,sBAAsB,EAAE;YAC3B,OAAO;SACR;QAED,MAAM,eAAe,GAAW,MAAM;aACnC,gBAAgB,CAAC,sBAAsB,CAAC;aACxC,gBAAgB,CAAC,WAAW,CAAC,CAAC;QACjC,IAAI,CAAC,eAAe,EAAE;YACpB,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;SACzB;aAAM;YACL,IAAI,CAAC,UAAU,GAAG,eAAe,CAAC;SACnC;IACH,CAAC;CACF,CAAA;AArUG;IADD,QAAQ,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC;6CAChB;AASf;IADD,QAAQ,CAAC,EAAE,YAAY,EAAE,cAAc,CAAC,IAAI,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC;4CACzC;AAS3B;IADD,QAAQ,CAAC,EAAE,YAAY,EAAE,WAAW,CAAC,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;+CACtC;AAQ3B;IADD,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;0DACG;AAQ7B;IADD,QAAQ,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC;wDACvB;AAQzB;IADD,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;kDACL;AAjDlB,cAAc;IAnBnB,aAAa,CAAC;QACb,GAAG,EAAE,iBAAiB;QACtB,QAAQ,EAAE,SAAS;QACnB,MAAM,EAAE,aAAa;QACrB,QAAQ,EAAE,kBAAkB;QAC5B,YAAY,EAAE,CAAC,MAAM,CAAC;KACvB,CAAC;IACF;;;;;;OAMG;;IACF,KAAK,CAAC,QAAQ,EAAE;QACf,MAAM,EAAE;YACN,WAAW,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;SAC9B;KACF,CAAC;GACI,cAAc,CA4UnB;AAED,cAAc,CAAC,MAAM,EAAE,CAAC;AAExB,eAAe,cAAc,CAAC","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport Integer from \"@ui5/webcomponents-base/dist/types/Integer.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { isDesktop } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport {\n OF,\n PAGINATION_PAGE,\n SELECTED,\n ACTIVATE_PAGE,\n FIRST_PAGE,\n LAST_PAGE,\n PREVIOUS_PAGE,\n NEXT_PAGE,\n} from \"./generated/i18n/i18n-defaults.js\";\nimport Button from \"./Button.js\";\nimport \"@ui5/webcomponents/dist/Icon.js\";\nimport \"@ui5/webcomponents-icons/dist/nav-back.js\";\nimport \"@ui5/webcomponents-icons/dist/navigation-right-arrow.js\";\nimport \"@ui5/webcomponents-icons/dist/open-command-field.js\";\nimport \"@ui5/webcomponents-icons/dist/close-command-field.js\";\n\n// Template\nimport PaginationTemplate from \"./generated/templates/PaginationTemplate.lit.js\";\n\n// Styles\nimport PaginationCss from \"./generated/themes/Pagination.css\";\n\ninterface Page {\n value: number;\n active: boolean;\n}\n\nexport enum PaginationType {\n full = \"full\",\n short = \"short\",\n}\n\nexport enum DisplayType {\n desktop = \"desktop\",\n mobile = \"mobile\"\n}\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n * The <code>udex-pagination</code> component is a pagination component used to navigate thought the pages.\n *\n * @constructor\n * @extends UI5Element\n * @tagname udex-pagination\n * @public\n */\n@customElement({\n tag: \"udex-pagination\",\n renderer: litRender,\n styles: PaginationCss,\n template: PaginationTemplate,\n dependencies: [Button],\n})\n/**\n * Fires when pagination item was clicked.\n *\n * @allowPreventDefault\n * @param {Number}\n * @public\n */\n@event(\"change\", {\n detail: {\n currentPage: { type: Number },\n },\n})\nclass UDExPagination extends UI5Element {\n /**\n * Defines number of pages.\n *\n * @public\n */\n @property({ validator: Integer })\n pages?: number;\n\n /**\n * Defines type of pagination.\n *\n * @public\n * @default \"full\"\n */\n @property({ defaultValue: PaginationType.full, type: PaginationType })\n type?: `${PaginationType}`;\n\n /**\n * Define display purpose.\n *\n * @public\n * @default \"desktop\"\n */\n @property({ defaultValue: DisplayType.desktop, type: DisplayType })\n display?: `${DisplayType}`;\n\n /**\n * Define if arrow icons for last and first page are visible.\n *\n * @public\n */\n @property({ type: Boolean })\n absoluteNavigation!: boolean;\n\n /**\n * Current index of pagination page.\n * @public\n * @default 0\n */\n @property({ validator: Integer, defaultValue: 0 })\n currentPageIndex: number;\n\n /**\n * Defines direction of the input.\n *\n * @private\n */\n @property({ type: String })\n _direction?: string;\n\n _pages: Page[];\n\n _previousPageElement?: HTMLElement;\n\n _mobileDisplayNumber: number;\n\n static i18nBundle: I18nBundle;\n\n constructor() {\n super();\n this._pages = [];\n this.currentPageIndex = 0;\n this._mobileDisplayNumber = 5;\n }\n\n onEnterDOM() {\n if (isDesktop()) {\n this.setAttribute(\"desktop\", \"\");\n }\n }\n\n get nextButtonDisbled(): boolean {\n return this.currentPageIndex + 1 === this.pages;\n }\n\n get prevButtonDisbled(): boolean {\n return this.currentPageIndex === 0;\n }\n\n get typeFull(): boolean {\n return (\n this.type === PaginationType.full || this.display === DisplayType.mobile\n );\n }\n\n get typeShort(): boolean {\n return (\n this.type === PaginationType.short && this.display !== DisplayType.mobile\n );\n }\n\n get shortTextStart(): string {\n if (!this.pages) {\n return \"\";\n }\n return `${this.currentPageIndex + 1}`;\n }\n\n get shortTextEnd(): string {\n if (!this.pages) {\n return \"\";\n }\n return `${this.pages}`;\n }\n\n get shortTextSeparator(): string {\n if (!this.pages) {\n return \"\";\n }\n return ` ${UDExPagination.i18nBundle.getText(OF)} `;\n }\n\n get pageAccessibleName(): string {\n return UDExPagination.i18nBundle.getText(PAGINATION_PAGE);\n }\n\n get paginationShortAccessibleName(): string {\n return `${this.pageAccessibleName} ${this.shortTextStart} ${this.shortTextSeparator} ${this.shortTextEnd}`;\n }\n\n get activatePageAccessibleText() {\n return UDExPagination.i18nBundle.getText(ACTIVATE_PAGE);\n }\n\n get firstPageAccessibleName(): string {\n if (this.currentPageIndex === 0) { return UDExPagination.i18nBundle.getText(FIRST_PAGE); }\n return `${UDExPagination.i18nBundle.getText(FIRST_PAGE)}. ${this.activatePageAccessibleText} 1`;\n }\n\n get lastPageAccessibleName(): string {\n if (this.pages && this.currentPageIndex === (this.pages - 1)) { return UDExPagination.i18nBundle.getText(LAST_PAGE); }\n return `${UDExPagination.i18nBundle.getText(LAST_PAGE)}. ${this.activatePageAccessibleText} ${this.pages}`;\n }\n\n get previousPageAccessibleName(): string {\n if (this.currentPageIndex === 0) { return UDExPagination.i18nBundle.getText(PREVIOUS_PAGE); }\n return `${UDExPagination.i18nBundle.getText(PREVIOUS_PAGE)}. ${this.activatePageAccessibleText} ${this.currentPageIndex}`;\n }\n\n get previousBtnTooltip(): string {\n return !this.prevButtonDisbled ? `${UDExPagination.i18nBundle.getText(PREVIOUS_PAGE)}` : \"\";\n }\n\n get nextPageAccessibleName(): string {\n if (this.pages && this.currentPageIndex === (this.pages - 1)) { return UDExPagination.i18nBundle.getText(NEXT_PAGE); }\n return `${UDExPagination.i18nBundle.getText(NEXT_PAGE)}. ${this.activatePageAccessibleText} ${this.currentPageIndex + 2}`;\n }\n\n get nextBtnTooltip(): string {\n return !this.nextButtonDisbled ? `${UDExPagination.i18nBundle.getText(NEXT_PAGE)}` : \"\";\n }\n\n get pagination(): Page[] {\n return this.setupPages(this.pages);\n }\n\n get paginationClass(): string {\n let classes = \"udex-pagination\";\n if (this._direction === \"rtl\") {\n classes = `${classes} udex-pagination--${this._direction}`;\n }\n if (!this.display) {\n return classes;\n }\n return `${classes} udex-pagination--${this.display} udex-pagination--${this.type}`;\n }\n\n static async onDefine() {\n UDExPagination.i18nBundle = await getI18nBundle(\"sap-ui-webcomponents-bundle\");\n }\n\n setActive(element: HTMLElement): void {\n const pageIndex = element.getAttribute(\"index\")\n ? parseInt(element.getAttribute(\"index\") || \"\")\n : null;\n if (pageIndex === null) {\n return;\n }\n\n element.setAttribute(\"aria-current\", \"page\");\n this.currentPageIndex = pageIndex;\n this._previousPageElement?.removeAttribute(\"aria-current\");\n this._previousPageElement = element;\n }\n\n setNextPage(e: Event): void {\n e.preventDefault();\n const currentPage = this.currentPageIndex ?? 1;\n if (this.pages && currentPage >= this.pages - 1) {\n return;\n }\n this.currentPageIndex = currentPage + 1;\n this.emitChangeEvent();\n }\n\n setPrevPage(e: Event): void {\n e.preventDefault();\n const currentPage = this.currentPageIndex ?? 1;\n if (this.pages && currentPage <= 0) {\n return;\n }\n this.currentPageIndex -= 1;\n this.emitChangeEvent();\n }\n\n setFirstPage(e: Event): void {\n e.preventDefault();\n const currentPage = this.currentPageIndex ?? 1;\n if (currentPage === 0) {\n return;\n }\n this.currentPageIndex = 0;\n this.emitChangeEvent();\n }\n\n setLastPage(e: Event): void {\n e.preventDefault();\n const currentPage = this.currentPageIndex ?? 1;\n if (!this.pages || currentPage >= this.pages - 1) {\n return;\n }\n this.currentPageIndex = this.pages - 1;\n this.emitChangeEvent();\n }\n\n setupMobilePages(pages: number): Page[] {\n const pagesCollection = [];\n let startIndex;\n let endIndex;\n const offset = Math.floor(this._mobileDisplayNumber / 2);\n\n if (pages <= this._mobileDisplayNumber) {\n startIndex = 0;\n endIndex = pages;\n } else {\n const displayStartNumber = this.currentPageIndex < offset ? 0 : this.currentPageIndex - offset;\n\n startIndex = this.currentPageIndex <= pages - offset - 1\n ? displayStartNumber\n : pages - this._mobileDisplayNumber;\n\n const displayEndNumber = this.currentPageIndex < offset\n ? this._mobileDisplayNumber\n : this.currentPageIndex + this._mobileDisplayNumber - offset;\n\n endIndex = this.currentPageIndex <= pages - offset ? displayEndNumber : pages;\n }\n\n for (let index = startIndex; index < endIndex && index < pages; index++) {\n const isCurrent = index === this.currentPageIndex;\n const accessibleName = isCurrent ? `\n ${this.pageAccessibleName} ${index + 1} ${UDExPagination.i18nBundle.getText(OF)} ${this.pages}, ${UDExPagination.i18nBundle.getText(SELECTED)}` : `\n ${this.pageAccessibleName} ${index + 1} ${UDExPagination.i18nBundle.getText(OF)} ${this.pages}`;\n pagesCollection.push({\n index,\n value: index + 1,\n active: isCurrent,\n accessibleName,\n });\n }\n\n return pagesCollection;\n }\n\n setupDesktopPages(pages: number): Page[] {\n const pagesCollection = [];\n for (let index = 0; index < pages; index++) {\n const isCurrent = index === this.currentPageIndex;\n const accessibleName = isCurrent ? `\n ${this.pageAccessibleName} ${index + 1} ${UDExPagination.i18nBundle.getText(OF)} ${this.pages}, ${UDExPagination.i18nBundle.getText(SELECTED)}` : `\n ${this.pageAccessibleName} ${index + 1} ${UDExPagination.i18nBundle.getText(OF)} ${this.pages}`;\n pagesCollection.push({\n index,\n value: index + 1,\n active: isCurrent,\n accessibleName,\n });\n }\n\n return pagesCollection;\n }\n\n setupPages(pages?: number): Page[] {\n if (!pages) {\n return [];\n }\n if (this.display === DisplayType.mobile) {\n return this.setupMobilePages(pages);\n }\n\n return this.setupDesktopPages(pages);\n }\n\n onPageClick(e: Event) {\n e.preventDefault();\n const target = e.target as HTMLElement;\n const element = target !== e.currentTarget ? (target.parentNode as HTMLElement) : target;\n if (element.getAttribute(\"active\") !== null) {\n return;\n }\n\n this.setActive(element);\n this.emitChangeEvent();\n }\n\n emitChangeEvent() {\n this.fireEvent(\"change\", { currentPage: this.currentPageIndex + 1 });\n }\n\n onAfterRendering() {\n if (this.type === PaginationType.full) {\n return;\n }\n\n const shortPaginationElement = this.shadowRoot?.querySelector<HTMLElement>(\n \".udex-pagination__item--short\",\n );\n\n if (!shortPaginationElement) {\n return;\n }\n\n const directionStyles: string = window\n .getComputedStyle(shortPaginationElement)\n .getPropertyValue(\"direction\");\n if (!directionStyles) {\n this._direction = \"ltr\";\n } else {\n this._direction = directionStyles;\n }\n }\n}\n\nUDExPagination.define();\n\nexport default UDExPagination;\n"]}
|
|
1
|
+
{"version":3,"file":"Pagination.js","sourceRoot":"","sources":["../src/Pagination.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport Integer from \"@ui5/webcomponents-base/dist/types/Integer.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { isDesktop } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport {\n OF,\n PAGINATION_PAGE,\n SELECTED,\n ACTIVATE_PAGE,\n FIRST_PAGE,\n LAST_PAGE,\n PREVIOUS_PAGE,\n NEXT_PAGE,\n} from \"./generated/i18n/i18n-defaults.js\";\nimport Button from \"./Button.js\";\nimport \"@ui5/webcomponents/dist/Icon.js\";\nimport \"@ui5/webcomponents-icons/dist/nav-back.js\";\nimport \"@ui5/webcomponents-icons/dist/navigation-right-arrow.js\";\nimport \"@ui5/webcomponents-icons/dist/open-command-field.js\";\nimport \"@ui5/webcomponents-icons/dist/close-command-field.js\";\n\n// Template\nimport PaginationTemplate from \"./generated/templates/PaginationTemplate.lit.js\";\n\n// Styles\nimport PaginationCss from \"./generated/themes/Pagination.css\";\n\ninterface Page {\n value: number;\n active: boolean;\n}\n\nexport enum PaginationType {\n full = \"full\",\n short = \"short\",\n}\n\nexport enum DisplayType {\n desktop = \"desktop\",\n mobile = \"mobile\"\n}\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n * The <code>udex-pagination</code> component is a pagination component used to navigate thought the pages.\n *\n * @constructor\n * @extends UI5Element\n * @tagname udex-pagination\n * @public\n */\n@customElement({\n tag: \"udex-pagination\",\n renderer: litRender,\n styles: PaginationCss,\n template: PaginationTemplate,\n dependencies: [Button],\n})\n/**\n * Fires when pagination item was clicked.\n *\n * @allowPreventDefault\n * @param {Number}\n * @public\n */\n@event(\"change\", {\n detail: {\n currentPage: { type: Number },\n },\n})\nclass UDExPagination extends UI5Element {\n /**\n * Defines number of pages.\n *\n * @public\n */\n @property({ validator: Integer })\n pages?: number;\n\n /**\n * Defines type of pagination.\n *\n * @public\n * @default \"full\"\n */\n @property({ defaultValue: PaginationType.full, type: PaginationType })\n type?: `${PaginationType}`;\n\n /**\n * Define display purpose.\n *\n * @public\n * @default \"desktop\"\n */\n @property({ defaultValue: DisplayType.desktop, type: DisplayType })\n display?: `${DisplayType}`;\n\n /**\n * Define if arrow icons for last and first page are visible.\n *\n * @public\n */\n @property({ type: Boolean })\n absoluteNavigation!: boolean;\n\n /**\n * Current index of pagination page.\n * @public\n * @default 0\n */\n @property({ validator: Integer, defaultValue: 0 })\n currentPageIndex: number;\n\n /**\n * Defines direction of the input.\n *\n * @private\n */\n @property({ type: String })\n _direction?: string;\n\n _pages: Page[];\n\n _previousPageElement?: HTMLElement;\n\n _mobileDisplayNumber: number;\n\n static i18nBundle: I18nBundle;\n\n constructor() {\n super();\n this._pages = [];\n this.currentPageIndex = 0;\n this._mobileDisplayNumber = 5;\n }\n\n onEnterDOM() {\n if (isDesktop()) {\n this.setAttribute(\"desktop\", \"\");\n }\n }\n\n get nextButtonDisbled(): boolean {\n return this.currentPageIndex + 1 === this.pages;\n }\n\n get prevButtonDisbled(): boolean {\n return this.currentPageIndex === 0;\n }\n\n get typeFull(): boolean {\n return (\n this.type === PaginationType.full || this.display === DisplayType.mobile\n );\n }\n\n get typeShort(): boolean {\n return (\n this.type === PaginationType.short && this.display !== DisplayType.mobile\n );\n }\n\n get shortTextStart(): string {\n if (!this.pages) {\n return \"\";\n }\n return `${this.currentPageIndex + 1}`;\n }\n\n get shortTextEnd(): string {\n if (!this.pages) {\n return \"\";\n }\n return `${this.pages}`;\n }\n\n get shortTextSeparator(): string {\n if (!this.pages) {\n return \"\";\n }\n return ` ${UDExPagination.i18nBundle.getText(OF)} `;\n }\n\n get pageAccessibleName(): string {\n return UDExPagination.i18nBundle.getText(PAGINATION_PAGE);\n }\n\n get paginationShortAccessibleName(): string {\n return `${this.pageAccessibleName} ${this.shortTextStart} ${this.shortTextSeparator} ${this.shortTextEnd}`;\n }\n\n get activatePageAccessibleText() {\n return UDExPagination.i18nBundle.getText(ACTIVATE_PAGE);\n }\n\n get firstPageAccessibleName(): string {\n if (this.currentPageIndex === 0) { return UDExPagination.i18nBundle.getText(FIRST_PAGE); }\n return `${UDExPagination.i18nBundle.getText(FIRST_PAGE)}. ${this.activatePageAccessibleText} 1`;\n }\n\n get lastPageAccessibleName(): string {\n if (this.pages && this.currentPageIndex === (this.pages - 1)) { return UDExPagination.i18nBundle.getText(LAST_PAGE); }\n return `${UDExPagination.i18nBundle.getText(LAST_PAGE)}. ${this.activatePageAccessibleText} ${this.pages}`;\n }\n\n get previousPageAccessibleName(): string {\n if (this.currentPageIndex === 0) { return UDExPagination.i18nBundle.getText(PREVIOUS_PAGE); }\n return `${UDExPagination.i18nBundle.getText(PREVIOUS_PAGE)}. ${this.activatePageAccessibleText} ${this.currentPageIndex}`;\n }\n\n get previousBtnTooltip(): string {\n return !this.prevButtonDisbled ? `${UDExPagination.i18nBundle.getText(PREVIOUS_PAGE)}` : \"\";\n }\n\n get nextPageAccessibleName(): string {\n if (this.pages && this.currentPageIndex === (this.pages - 1)) { return UDExPagination.i18nBundle.getText(NEXT_PAGE); }\n return `${UDExPagination.i18nBundle.getText(NEXT_PAGE)}. ${this.activatePageAccessibleText} ${this.currentPageIndex + 2}`;\n }\n\n get nextBtnTooltip(): string {\n return !this.nextButtonDisbled ? `${UDExPagination.i18nBundle.getText(NEXT_PAGE)}` : \"\";\n }\n\n get pagination(): Page[] {\n return this.setupPages(this.pages);\n }\n\n get paginationClass(): string {\n let classes = \"udex-pagination\";\n if (this._direction === \"rtl\") {\n classes = `${classes} udex-pagination--${this._direction}`;\n }\n if (!this.display) {\n return classes;\n }\n return `${classes} udex-pagination--${this.display} udex-pagination--${this.type}`;\n }\n\n static async onDefine() {\n UDExPagination.i18nBundle = await getI18nBundle(\"@udex/web-components\");\n }\n\n setActive(element: HTMLElement): void {\n const pageIndex = element.getAttribute(\"index\")\n ? parseInt(element.getAttribute(\"index\") || \"\")\n : null;\n if (pageIndex === null) {\n return;\n }\n\n element.setAttribute(\"aria-current\", \"page\");\n this.currentPageIndex = pageIndex;\n this._previousPageElement?.removeAttribute(\"aria-current\");\n this._previousPageElement = element;\n }\n\n setNextPage(e: Event): void {\n e.preventDefault();\n const currentPage = this.currentPageIndex ?? 1;\n if (this.pages && currentPage >= this.pages - 1) {\n return;\n }\n this.currentPageIndex = currentPage + 1;\n this.emitChangeEvent();\n }\n\n setPrevPage(e: Event): void {\n e.preventDefault();\n const currentPage = this.currentPageIndex ?? 1;\n if (this.pages && currentPage <= 0) {\n return;\n }\n this.currentPageIndex -= 1;\n this.emitChangeEvent();\n }\n\n setFirstPage(e: Event): void {\n e.preventDefault();\n const currentPage = this.currentPageIndex ?? 1;\n if (currentPage === 0) {\n return;\n }\n this.currentPageIndex = 0;\n this.emitChangeEvent();\n }\n\n setLastPage(e: Event): void {\n e.preventDefault();\n const currentPage = this.currentPageIndex ?? 1;\n if (!this.pages || currentPage >= this.pages - 1) {\n return;\n }\n this.currentPageIndex = this.pages - 1;\n this.emitChangeEvent();\n }\n\n setupMobilePages(pages: number): Page[] {\n const pagesCollection = [];\n let startIndex;\n let endIndex;\n const offset = Math.floor(this._mobileDisplayNumber / 2);\n\n if (pages <= this._mobileDisplayNumber) {\n startIndex = 0;\n endIndex = pages;\n } else {\n const displayStartNumber = this.currentPageIndex < offset ? 0 : this.currentPageIndex - offset;\n\n startIndex = this.currentPageIndex <= pages - offset - 1\n ? displayStartNumber\n : pages - this._mobileDisplayNumber;\n\n const displayEndNumber = this.currentPageIndex < offset\n ? this._mobileDisplayNumber\n : this.currentPageIndex + this._mobileDisplayNumber - offset;\n\n endIndex = this.currentPageIndex <= pages - offset ? displayEndNumber : pages;\n }\n\n for (let index = startIndex; index < endIndex && index < pages; index++) {\n const isCurrent = index === this.currentPageIndex;\n const accessibleName = isCurrent ? `\n ${this.pageAccessibleName} ${index + 1} ${UDExPagination.i18nBundle.getText(OF)} ${this.pages}, ${UDExPagination.i18nBundle.getText(SELECTED)}` : `\n ${this.pageAccessibleName} ${index + 1} ${UDExPagination.i18nBundle.getText(OF)} ${this.pages}`;\n pagesCollection.push({\n index,\n value: index + 1,\n active: isCurrent,\n accessibleName,\n });\n }\n\n return pagesCollection;\n }\n\n setupDesktopPages(pages: number): Page[] {\n const pagesCollection = [];\n for (let index = 0; index < pages; index++) {\n const isCurrent = index === this.currentPageIndex;\n const accessibleName = isCurrent ? `\n ${this.pageAccessibleName} ${index + 1} ${UDExPagination.i18nBundle.getText(OF)} ${this.pages}, ${UDExPagination.i18nBundle.getText(SELECTED)}` : `\n ${this.pageAccessibleName} ${index + 1} ${UDExPagination.i18nBundle.getText(OF)} ${this.pages}`;\n pagesCollection.push({\n index,\n value: index + 1,\n active: isCurrent,\n accessibleName,\n });\n }\n\n return pagesCollection;\n }\n\n setupPages(pages?: number): Page[] {\n if (!pages) {\n return [];\n }\n if (this.display === DisplayType.mobile) {\n return this.setupMobilePages(pages);\n }\n\n return this.setupDesktopPages(pages);\n }\n\n onPageClick(e: Event) {\n e.preventDefault();\n const target = e.target as HTMLElement;\n const element = target !== e.currentTarget ? (target.parentNode as HTMLElement) : target;\n if (element.getAttribute(\"active\") !== null) {\n return;\n }\n\n this.setActive(element);\n this.emitChangeEvent();\n }\n\n emitChangeEvent() {\n this.fireEvent(\"change\", { currentPage: this.currentPageIndex + 1 });\n }\n\n onAfterRendering() {\n if (this.type === PaginationType.full) {\n return;\n }\n\n const shortPaginationElement = this.shadowRoot?.querySelector<HTMLElement>(\n \".udex-pagination__item--short\",\n );\n\n if (!shortPaginationElement) {\n return;\n }\n\n const directionStyles: string = window\n .getComputedStyle(shortPaginationElement)\n .getPropertyValue(\"direction\");\n if (!directionStyles) {\n this._direction = \"ltr\";\n } else {\n this._direction = directionStyles;\n }\n }\n}\n\nUDExPagination.define();\n\nexport default UDExPagination;\n"]}
|
package/dist/PasswordField.js
CHANGED
|
@@ -44,7 +44,7 @@ export var IconType;
|
|
|
44
44
|
*/
|
|
45
45
|
let UDExPasswordField = UDExPasswordField_1 = class UDExPasswordField extends UI5Element {
|
|
46
46
|
static async onDefine() {
|
|
47
|
-
UDExPasswordField_1.i18nBundle = await getI18nBundle("
|
|
47
|
+
UDExPasswordField_1.i18nBundle = await getI18nBundle("@udex/web-components");
|
|
48
48
|
}
|
|
49
49
|
handleShowPassword() {
|
|
50
50
|
const isPassword = this.type === InputType.Password;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PasswordField.js","sourceRoot":"","sources":["../src/PasswordField.ts"],"names":[],"mappings":";;;;;;;AAAA,OAAO,UAAU,MAAM,4CAA4C,CAAC;AACpE,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,SAAS,MAAM,sDAAsD,CAAC;AAC7E,OAAO,OAAO,MAAM,+CAA+C,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,4CAA4C,CAAC;AAE3E,OAAO,aAAa,MAAM,gBAAgB,CAAC;AAC3C,OAAO,UAAU,MAAM,mBAAmB,CAAC;AAE3C,OAAO,qBAAqB,MAAM,oDAAoD,CAAC;AAEvF,MAAM,CAAN,IAAY,SAGX;AAHD,WAAY,SAAS;IACnB,kCAAqB,CAAA;IACrB,0BAAa,CAAA;AACf,CAAC,EAHW,SAAS,KAAT,SAAS,QAGpB;AAED,MAAM,CAAN,IAAY,QAGX;AAHD,WAAY,QAAQ;IAClB,yBAAa,CAAA;IACb,yBAAa,CAAA;AACf,CAAC,EAHW,QAAQ,KAAR,QAAQ,QAGnB;AACD;;;;;;;;;;;;;;;;;GAiBG;AAQH,IAAM,iBAAiB,yBAAvB,MAAM,iBAAkB,SAAQ,UAAU;IAqJxC,MAAM,CAAC,KAAK,CAAC,QAAQ;QACnB,mBAAiB,CAAC,UAAU,GAAG,MAAM,aAAa,CAAC,
|
|
1
|
+
{"version":3,"file":"PasswordField.js","sourceRoot":"","sources":["../src/PasswordField.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport Integer from \"@ui5/webcomponents-base/dist/types/Integer.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport UDExTextField from \"./TextField.js\";\nimport ValueState from \"./types/common.js\";\n\nimport PasswordFieldTemplate from \"./generated/templates/PasswordFieldTemplate.lit.js\";\n\nexport enum InputType {\n Password = \"password\",\n Text = \"text\",\n}\n\nexport enum IconType {\n Hide = \"hide\",\n Show = \"show\",\n}\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n *\n * <h3>Usage</h3>\n *\n * For the <code>udex-password-field</code>\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@udex/web-components/dist/UDExPasswordField.js\";</code>\n *\n * @constructor\n * @extends UI5Element\n * @tagname udex-password-field\n * @public\n */\n@customElement({\n tag: \"udex-password-field\",\n renderer: litRender,\n template: PasswordFieldTemplate,\n dependencies: [UDExTextField],\n})\n\nclass UDExPasswordField extends UI5Element {\n /**\n * Defines supporting text under the input field.\n *\n * @default \"\"\n * @private\n */\n @property({ type: String, noAttribute: true, defaultValue: InputType.Password })\n type!: InputType;\n\n /**\n * Defines whether the component is in disabled state.\n * <br><br>\n * <b>Note:</b> A disabled component is completely noninteractive.\n *\n * @default false\n * @public\n */\n @property({ type: Boolean })\n disabled!: boolean;\n\n /**\n * Defines the value of the component.\n * <br><br>\n * <b>Note:</b> The property is updated upon typing.\n *\n * @default \"\"\n * @formEvents input\n * @formProperty\n * @public\n */\n @property({ type: String })\n value!: string;\n\n /**\n * Sets the maximum number of characters available in the input field.\n * <br><br>\n * <b>Note:</b> This property is not compatible with the ui5-input type InputType.Number. If the ui5-input type is set to Number, the maxlength value is ignored.\n *\n * @public\n */\n @property({ validator: Integer })\n maxlength?: number;\n\n /**\n * Defines label text for the input field.\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n label!: string;\n\n /**\n * Defines asterisk for the input field's label text.\n *\n * @default false\n * @public\n */\n @property({ type: Boolean })\n showAsterisk!: boolean;\n\n /**\n * Defines the value state of the component.\n *\n * @default \"Standard\"\n * @public\n */\n\n @property({ type: ValueState, defaultValue: ValueState.Standard })\n valueState!: ValueState;\n\n /**\n * Defines supporting text under the input field.\n *\n * @default \"\"\n * @public\n */\n\n @property({ type: String })\n supportingText!: string;\n\n /**\n * Defines the inner stored show password button visibility state.\n *\n * @default false\n * @public\n */\n\n @property({ type: Boolean })\n showButtonEnabled!: boolean;\n\n /**\n * Defines the inner stored show password button icon.\n *\n * @default \"show\"\n * @private\n */\n\n @property({ type: String, noAttribute: true, defaultValue: IconType.Show })\n icon!: IconType;\n\n /**\n * Defines the inner stored show password button tooltip.\n *\n * @default \"\"\n * @public\n */\n\n @property({ type: String })\n showButtonTooltip!: string;\n\n /**\n * Defines the inner stored readonly state.\n *\n * @default false\n * @public\n */\n @property({ type: Boolean })\n readonly!: boolean;\n\n /**\n * Defines the inner stored displayonly state.\n *\n * @default false\n * @public\n */\n @property({ type: Boolean })\n displayonly!: boolean;\n\n /**\n * Defines the accessible ARIA name of the component.\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n accessibleName!: string;\n\n /**\n * Receives id (or many ids) of the elements that label the component.\n * @default \"\"\n * @public\n */\n @property({ type: String })\n accessibleNameRef!: string;\n\n static i18nBundle: I18nBundle;\n\n static async onDefine() {\n UDExPasswordField.i18nBundle = await getI18nBundle(\"@udex/web-components\");\n }\n\n handleShowPassword(): void {\n const isPassword = this.type === InputType.Password;\n\n this.icon = isPassword ? IconType.Hide : IconType.Show;\n this.type = isPassword ? InputType.Text : InputType.Password;\n }\n\n get passwordLabel(): string {\n return `${this.label} ${this.showAsterisk ? \"*\" : \"\"}`;\n }\n\n get renderShowButton(): boolean {\n return !this.disabled && !this.readonly && !this.displayonly && this.showButtonEnabled;\n }\n\n get iconButton(): IconType | null {\n return this.renderShowButton ? this.icon : null;\n }\n}\n\nUDExPasswordField.define();\n\nexport default UDExPasswordField;\n"]}
|
package/dist/PhoneNumberField.js
CHANGED
|
@@ -49,7 +49,7 @@ const initialPlaceholder = "+X XXX-XXX-XXXX";
|
|
|
49
49
|
*/
|
|
50
50
|
let UDExPhoneNumberField = UDExPhoneNumberField_1 = class UDExPhoneNumberField extends UI5Element {
|
|
51
51
|
static async onDefine() {
|
|
52
|
-
UDExPhoneNumberField_1.i18nBundle = await getI18nBundle("
|
|
52
|
+
UDExPhoneNumberField_1.i18nBundle = await getI18nBundle("@udex/web-components");
|
|
53
53
|
}
|
|
54
54
|
get countrySelectorAriaLabel() {
|
|
55
55
|
return this.accessibleName || `${UDExPhoneNumberField_1.i18nBundle.getText(COUNTRY_SELECT)} ${this.label}`.trim();
|