@sapudex/web-components 2.1.0 → 2.2.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/cypress/fixtures/footer-links.ts +221 -0
- package/cypress/specs/Checkbox.cy.tsx +92 -0
- package/cypress/specs/Footer.cy.tsx +313 -0
- package/cypress/specs/ListItem.cy.tsx +4 -4
- package/cypress/specs/PhoneNumberField.cy.tsx +2 -2
- package/cypress/specs/SecondaryNavigationDesktop.cy.tsx +28 -37
- package/cypress/specs/Slider.cy.tsx +4 -3
- package/cypress/specs/TextField.cy.tsx +4 -0
- package/cypress/specs/Tooltip.cy.tsx +26 -0
- package/cypress/specs/Upload.cy.tsx +3 -3
- package/dist/Badge.d.ts +2 -2
- package/dist/Badge.js +4 -4
- package/dist/Badge.js.map +1 -1
- package/dist/Breadcrumbs.d.ts +1 -0
- package/dist/Breadcrumbs.js +11 -1
- package/dist/Breadcrumbs.js.map +1 -1
- package/dist/Button.d.ts +12 -1
- package/dist/Button.js +12 -1
- package/dist/Button.js.map +1 -1
- package/dist/Checkbox.d.ts +18 -0
- package/dist/Checkbox.js +39 -1
- package/dist/Checkbox.js.map +1 -1
- package/dist/ControlButton.d.ts +2 -1
- package/dist/ControlButton.js +2 -1
- package/dist/ControlButton.js.map +1 -1
- package/dist/DatePicker.d.ts +2 -2
- package/dist/DatePicker.js.map +1 -1
- package/dist/InputGroup.d.ts +5 -2
- package/dist/InputGroup.js +6 -0
- package/dist/InputGroup.js.map +1 -1
- package/dist/Link.d.ts +3 -4
- package/dist/Link.js +4 -5
- package/dist/Link.js.map +1 -1
- package/dist/ListItem.d.ts +3 -2
- package/dist/ListItem.js +2 -2
- package/dist/ListItem.js.map +1 -1
- package/dist/MastheadItem.js +1 -1
- package/dist/MastheadItem.js.map +1 -1
- package/dist/MediaPlayer.d.ts +2 -1
- package/dist/MediaPlayer.js.map +1 -1
- package/dist/MediaPlayerYoutube.d.ts +2 -1
- package/dist/MediaPlayerYoutube.js.map +1 -1
- package/dist/Pagination.d.ts +1 -1
- package/dist/Pagination.js.map +1 -1
- package/dist/PasswordField.d.ts +10 -0
- package/dist/PasswordField.js +14 -0
- package/dist/PasswordField.js.map +1 -1
- package/dist/PhoneNumberField.d.ts +6 -2
- package/dist/PhoneNumberField.js +22 -2
- package/dist/PhoneNumberField.js.map +1 -1
- package/dist/ProgressBar.d.ts +2 -2
- package/dist/ProgressBar.js +6 -6
- package/dist/ProgressBar.js.map +1 -1
- package/dist/RadioButton.d.ts +3 -2
- package/dist/RadioButton.js +7 -6
- package/dist/RadioButton.js.map +1 -1
- package/dist/Search.d.ts +0 -1
- package/dist/Search.js +1 -3
- package/dist/Search.js.map +1 -1
- package/dist/SecondaryNavigation.d.ts +4 -1
- package/dist/SecondaryNavigation.js +38 -10
- package/dist/SecondaryNavigation.js.map +1 -1
- package/dist/SecondaryNavigationItem.d.ts +10 -0
- package/dist/SecondaryNavigationItem.js +19 -0
- package/dist/SecondaryNavigationItem.js.map +1 -1
- package/dist/SecondaryNavigationItemBase.d.ts +1 -0
- package/dist/SecondaryNavigationItemBase.js +4 -0
- package/dist/SecondaryNavigationItemBase.js.map +1 -1
- package/dist/SecondaryNavigationSubItem.d.ts +0 -1
- package/dist/SecondaryNavigationSubItem.js +0 -4
- package/dist/SecondaryNavigationSubItem.js.map +1 -1
- package/dist/SegmentedButton.d.ts +1 -1
- package/dist/SegmentedButton.js +1 -1
- package/dist/SegmentedButton.js.map +1 -1
- package/dist/SegmentedButtonItem.d.ts +1 -1
- package/dist/SegmentedButtonItem.js +2 -2
- package/dist/SegmentedButtonItem.js.map +1 -1
- package/dist/StatusBadge.d.ts +8 -3
- package/dist/StatusBadge.js +9 -1
- package/dist/StatusBadge.js.map +1 -1
- package/dist/StepInput.d.ts +3 -3
- package/dist/StepInput.js.map +1 -1
- package/dist/TableCellBase.d.ts +2 -2
- package/dist/TableCellBase.js.map +1 -1
- package/dist/Tag.d.ts +2 -2
- package/dist/Tag.js +4 -4
- package/dist/Tag.js.map +1 -1
- package/dist/TextArea.d.ts +2 -2
- package/dist/TextArea.js +9 -9
- package/dist/TextArea.js.map +1 -1
- package/dist/TextField.d.ts +10 -2
- package/dist/TextField.js +20 -5
- package/dist/TextField.js.map +1 -1
- package/dist/Toast.js +1 -1
- package/dist/Toast.js.map +1 -1
- package/dist/Tooltip.d.ts +5 -0
- package/dist/Tooltip.js +11 -1
- package/dist/Tooltip.js.map +1 -1
- package/dist/Upload.d.ts +1 -1
- package/dist/Upload.js +1 -1
- package/dist/Upload.js.map +1 -1
- package/dist/UploadItem.d.ts +3 -3
- package/dist/UploadItem.js +9 -9
- package/dist/UploadItem.js.map +1 -1
- package/dist/assets/InputSuggestions-KGCQrV_T.js +2 -0
- package/dist/assets/{ListItemStandardExpandableTextTemplate-BymOTLVD.js → ListItemStandardExpandableTextTemplate-D4zLIdLd.js} +2 -2
- package/dist/assets/bundle-C9ZlnwwH.css +1 -0
- package/dist/assets/bundle.esm-Diw1zQ-o.js +384 -0
- package/dist/assets/parameters-bundle.css-1GGBOW8m.js +2 -0
- package/dist/assets/parameters-bundle.css-A9eeRg2R.js +2 -0
- package/dist/assets/parameters-bundle.css-COBI_9-U.js +2 -0
- package/dist/assets/parameters-bundle.css-CgAoZ-Ir.js +2 -0
- package/dist/assets/parameters-bundle.css-DuFHHRNK.js +2 -0
- package/dist/assets/parameters-bundle.css-Pf68NO0T.js +2 -0
- package/dist/assets/parameters-bundle.css-aX_t_-9o.js +2 -0
- package/dist/assets/parameters-bundle.css-rNSryFKH.js +2 -0
- package/dist/css/themes/Breadcrumbs.css +1 -1
- package/dist/css/themes/Button.css +1 -1
- package/dist/css/themes/Checkbox.css +1 -1
- package/dist/css/themes/ListItem.css +1 -1
- package/dist/css/themes/MastheadShell.css +1 -1
- package/dist/css/themes/Modal.css +1 -1
- package/dist/css/themes/RadioButton.css +1 -1
- package/dist/css/themes/RatingIndicator.css +1 -1
- package/dist/css/themes/Search.css +1 -1
- package/dist/css/themes/SideNavigationItem.css +1 -1
- package/dist/css/themes/SideNavigationSubItem.css +1 -1
- package/dist/css/themes/Slider.css +1 -1
- package/dist/css/themes/Tooltip.css +1 -1
- package/dist/css/themes/WizardTab.css +1 -1
- package/dist/custom-elements-internal.json +201 -38
- package/dist/custom-elements.json +173 -36
- package/dist/generated/json-imports/Themes-node.d.ts +1 -0
- package/dist/generated/json-imports/Themes-node.js +19 -0
- package/dist/generated/json-imports/Themes-node.js.map +1 -0
- package/dist/generated/json-imports/i18n-node.d.ts +1 -0
- package/dist/generated/json-imports/i18n-node.js +82 -0
- package/dist/generated/json-imports/i18n-node.js.map +1 -0
- package/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/BreadcrumbsTemplate.lit.js +1 -1
- package/dist/generated/templates/BreadcrumbsTemplate.lit.js.map +1 -1
- package/dist/generated/templates/FilterMenuTemplate.lit.js +1 -1
- package/dist/generated/templates/FilterMenuTemplate.lit.js.map +1 -1
- package/dist/generated/templates/PasswordFieldTemplate.lit.js +1 -1
- package/dist/generated/templates/PasswordFieldTemplate.lit.js.map +1 -1
- package/dist/generated/templates/SearchTemplate.lit.js +3 -3
- package/dist/generated/templates/SearchTemplate.lit.js.map +1 -1
- package/dist/generated/templates/SecondaryNavigationItemTemplate.lit.js +2 -2
- package/dist/generated/templates/SecondaryNavigationItemTemplate.lit.js.map +1 -1
- package/dist/generated/templates/SecondaryNavigationTemplate.lit.js +1 -1
- package/dist/generated/templates/SecondaryNavigationTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TextFieldTemplate.lit.js +1 -1
- package/dist/generated/templates/TextFieldTemplate.lit.js.map +1 -1
- package/dist/generated/themes/Breadcrumbs.css.d.ts +1 -1
- package/dist/generated/themes/Breadcrumbs.css.js +1 -1
- package/dist/generated/themes/Breadcrumbs.css.js.map +1 -1
- package/dist/generated/themes/Button.css.d.ts +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/Checkbox.css.d.ts +1 -1
- package/dist/generated/themes/Checkbox.css.js +1 -1
- package/dist/generated/themes/Checkbox.css.js.map +1 -1
- package/dist/generated/themes/ListItem.css.d.ts +1 -1
- package/dist/generated/themes/ListItem.css.js +1 -1
- package/dist/generated/themes/ListItem.css.js.map +1 -1
- package/dist/generated/themes/MastheadShell.css.d.ts +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/Modal.css.d.ts +1 -1
- package/dist/generated/themes/Modal.css.js +1 -1
- package/dist/generated/themes/Modal.css.js.map +1 -1
- package/dist/generated/themes/RadioButton.css.d.ts +1 -1
- package/dist/generated/themes/RadioButton.css.js +1 -1
- package/dist/generated/themes/RadioButton.css.js.map +1 -1
- package/dist/generated/themes/RatingIndicator.css.d.ts +1 -1
- package/dist/generated/themes/RatingIndicator.css.js +1 -1
- package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
- package/dist/generated/themes/Search.css.d.ts +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/SideNavigationItem.css.d.ts +1 -1
- package/dist/generated/themes/SideNavigationItem.css.js +1 -1
- package/dist/generated/themes/SideNavigationItem.css.js.map +1 -1
- package/dist/generated/themes/SideNavigationSubItem.css.d.ts +1 -1
- package/dist/generated/themes/SideNavigationSubItem.css.js +1 -1
- package/dist/generated/themes/SideNavigationSubItem.css.js.map +1 -1
- package/dist/generated/themes/Slider.css.d.ts +1 -1
- package/dist/generated/themes/Slider.css.js +1 -1
- package/dist/generated/themes/Slider.css.js.map +1 -1
- package/dist/generated/themes/Tooltip.css.d.ts +1 -1
- package/dist/generated/themes/Tooltip.css.js +1 -1
- package/dist/generated/themes/Tooltip.css.js.map +1 -1
- package/dist/generated/themes/WizardTab.css.d.ts +1 -1
- package/dist/generated/themes/WizardTab.css.js +1 -1
- package/dist/generated/themes/WizardTab.css.js.map +1 -1
- package/dist/types/ButtonAccessibleRole.d.ts +8 -0
- package/dist/types/ButtonAccessibleRole.js +10 -0
- package/dist/types/ButtonAccessibleRole.js.map +1 -0
- package/dist/types/{Button.d.ts → ButtonDesign.d.ts} +1 -15
- package/dist/types/ButtonDesign.js +16 -0
- package/dist/types/ButtonDesign.js.map +1 -0
- package/dist/types/ButtonSize.d.ts +6 -0
- package/dist/types/ButtonSize.js +8 -0
- package/dist/types/ButtonSize.js.map +1 -0
- package/dist/types/ControlButtonDesign.d.ts +10 -0
- package/dist/types/ControlButtonDesign.js +12 -0
- package/dist/types/ControlButtonDesign.js.map +1 -0
- package/dist/types/ProgressBar.d.ts +1 -1
- package/dist/types/ProgressBar.js +1 -1
- package/dist/types/ProgressBar.js.map +1 -1
- package/dist/types/common.d.ts +1 -1
- package/dist/types/common.js +1 -1
- package/dist/types/common.js.map +1 -1
- package/dist/vscode.html-custom-data.json +26 -10
- package/dist/web-types.json +43 -13
- package/package.json +8 -8
- package/src/Badge.ts +4 -4
- package/src/Breadcrumbs.hbs +7 -10
- package/src/Breadcrumbs.ts +14 -1
- package/src/BreadcrumbsPopover.hbs +3 -1
- package/src/Button.ts +12 -1
- package/src/Checkbox.ts +51 -0
- package/src/ControlButton.ts +2 -1
- package/src/DatePicker.ts +2 -2
- package/src/FilterMenu.hbs +1 -0
- package/src/InputGroup.ts +5 -2
- package/src/Link.ts +4 -5
- package/src/ListItem.ts +4 -4
- package/src/MastheadItem.ts +1 -1
- package/src/MediaPlayer.ts +3 -1
- package/src/MediaPlayerYoutube.ts +4 -2
- package/src/Pagination.ts +1 -1
- package/src/PasswordField.hbs +1 -0
- package/src/PasswordField.ts +14 -0
- package/src/PhoneNumberField.ts +25 -4
- package/src/ProgressBar.ts +6 -6
- package/src/RadioButton.ts +7 -6
- package/src/Search.hbs +3 -2
- package/src/Search.ts +1 -3
- package/src/SecondaryNavigation.hbs +1 -0
- package/src/SecondaryNavigation.ts +41 -12
- package/src/SecondaryNavigationItem.hbs +2 -1
- package/src/SecondaryNavigationItem.ts +31 -0
- package/src/SecondaryNavigationItemBase.ts +3 -0
- package/src/SecondaryNavigationSubItem.ts +0 -3
- package/src/SegmentedButton.ts +1 -1
- package/src/SegmentedButtonItem.ts +2 -2
- package/src/StatusBadge.ts +8 -3
- package/src/StepInput.ts +3 -3
- package/src/TableCellBase.ts +2 -2
- package/src/Tag.ts +4 -4
- package/src/TextArea.ts +9 -9
- package/src/TextField.hbs +2 -0
- package/src/TextField.ts +21 -5
- package/src/Toast.ts +1 -1
- package/src/Tooltip.ts +19 -0
- package/src/Upload.ts +1 -1
- package/src/UploadItem.ts +9 -9
- package/src/generated/json-imports/Themes-node.ts +21 -0
- package/src/generated/json-imports/i18n-node.ts +85 -0
- package/src/generated/templates/BreadcrumbsPopoverTemplate.lit.ts +1 -1
- package/src/generated/templates/BreadcrumbsTemplate.lit.ts +1 -1
- package/src/generated/templates/FilterMenuTemplate.lit.ts +1 -1
- package/src/generated/templates/PasswordFieldTemplate.lit.ts +1 -1
- package/src/generated/templates/SearchTemplate.lit.ts +3 -3
- package/src/generated/templates/SecondaryNavigationItemTemplate.lit.ts +2 -2
- package/src/generated/templates/SecondaryNavigationTemplate.lit.ts +1 -1
- package/src/generated/templates/TextFieldTemplate.lit.ts +1 -1
- package/src/generated/themes/Breadcrumbs.css.ts +1 -1
- package/src/generated/themes/Button.css.ts +1 -1
- package/src/generated/themes/Checkbox.css.ts +1 -1
- package/src/generated/themes/ListItem.css.ts +1 -1
- package/src/generated/themes/MastheadShell.css.ts +1 -1
- package/src/generated/themes/Modal.css.ts +1 -1
- package/src/generated/themes/RadioButton.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/SideNavigationItem.css.ts +1 -1
- package/src/generated/themes/SideNavigationSubItem.css.ts +1 -1
- package/src/generated/themes/Slider.css.ts +1 -1
- package/src/generated/themes/Tooltip.css.ts +1 -1
- package/src/generated/themes/WizardTab.css.ts +1 -1
- package/src/themes/Breadcrumbs.css +3 -0
- package/src/themes/Button.css +11 -7
- package/src/themes/Checkbox.css +15 -1
- package/src/themes/ListItem.css +4 -0
- package/src/themes/MastheadShell.css +2 -1
- package/src/themes/Modal.css +2 -1
- package/src/themes/RadioButton.css +2 -0
- package/src/themes/Search.css +9 -1
- package/src/themes/SideNavigationItem.css +9 -1
- package/src/themes/SideNavigationSubItem.css +7 -0
- package/src/themes/Tooltip.css +1 -1
- package/src/themes/WizardTab.css +5 -0
- package/src/types/ButtonAccessibleRole.ts +9 -0
- package/src/types/{Button.ts → ButtonDesign.ts} +1 -17
- package/src/types/ButtonSize.ts +7 -0
- package/src/types/ControlButtonDesign.ts +11 -0
- package/src/types/ProgressBar.ts +1 -1
- package/src/types/common.ts +1 -1
- package/dist/assets/InputSuggestions-DoWo0hwS.js +0 -2
- package/dist/assets/bundle-7XIcgsQH.css +0 -1
- package/dist/assets/bundle.esm-D10tX-qa.js +0 -380
- package/dist/assets/parameters-bundle.css-BU4Bi-ho.js +0 -2
- package/dist/assets/parameters-bundle.css-Beilb2gS.js +0 -2
- package/dist/assets/parameters-bundle.css-BzQMaZUt.js +0 -2
- package/dist/assets/parameters-bundle.css-Bzfv_Fox.js +0 -2
- package/dist/assets/parameters-bundle.css-CLwmjytB.js +0 -2
- package/dist/assets/parameters-bundle.css-CU3plTdF.js +0 -2
- package/dist/assets/parameters-bundle.css-DRX-o-Cb.js +0 -2
- package/dist/assets/parameters-bundle.css-DhFMZJhW.js +0 -2
- package/dist/css/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css +0 -1
- package/dist/generated/assets/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css.json +0 -1
- package/dist/generated/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css.d.ts +0 -2
- package/dist/generated/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css.js +0 -3
- package/dist/generated/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css.js.map +0 -1
- package/dist/types/Button.js +0 -33
- package/dist/types/Button.js.map +0 -1
- package/src/generated/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css.ts +0 -2
- package/src/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css +0 -195
|
@@ -3,13 +3,13 @@ import customElement from "@ui5/webcomponents-base/dist/decorators/customElement
|
|
|
3
3
|
import property from "@ui5/webcomponents-base/dist/decorators/property.js";
|
|
4
4
|
import event from "@ui5/webcomponents-base/dist/decorators/event-strict.js";
|
|
5
5
|
import litRender from "@ui5/webcomponents-base/dist/renderer/LitRenderer.js";
|
|
6
|
+
import type { UDExAspectRatio } from "./MediaPlayer.js";
|
|
6
7
|
|
|
7
8
|
import MediaPlayerYoutubeTemplate from "./generated/templates/MediaPlayerYoutubeTemplate.lit.js";
|
|
8
9
|
|
|
9
10
|
// Styles
|
|
10
11
|
import MediaPlayerYoutubeCss from "./generated/themes/MediaPlayerYoutube.css.js";
|
|
11
12
|
import MediaPlayerCss from "./generated/themes/MediaPlayer.css.js";
|
|
12
|
-
import type { UDExAspectRatio } from "./MediaPlayer.js";
|
|
13
13
|
|
|
14
14
|
const MATCH_NOCOOKIE = /youtube-nocookie\.com/;
|
|
15
15
|
const MATCH_URL_YOUTUBE = /(?:youtu\.be\/|youtube(?:-nocookie|education)?\.com\/(?:embed\/|v\/|watch\/|watch\?v=|watch\?.+&v=|shorts\/|live\/))((\w|-){11})|youtube\.com\/playlist\?list=|youtube\.com\/user\//;
|
|
@@ -22,6 +22,8 @@ const MATCH_END_QUERY = /[?&#]end=([0-9hms]+)/;
|
|
|
22
22
|
const MATCH_START_STAMP = /(\d+)(h|m|s)/g;
|
|
23
23
|
const MATCH_NUMERIC = /^\d+$/;
|
|
24
24
|
|
|
25
|
+
export type YoutubePlayer = YT.Player;
|
|
26
|
+
|
|
25
27
|
declare global {
|
|
26
28
|
interface Window {
|
|
27
29
|
onYouTubeIframeAPIReady: () => void;
|
|
@@ -293,7 +295,7 @@ class UDExMediaPlayerYoutube extends UI5Element {
|
|
|
293
295
|
* Returns video element
|
|
294
296
|
* @public
|
|
295
297
|
*/
|
|
296
|
-
getPlayer():
|
|
298
|
+
getPlayer(): YoutubePlayer | null {
|
|
297
299
|
return this.youtubePlayer || null;
|
|
298
300
|
}
|
|
299
301
|
|
package/src/Pagination.ts
CHANGED
package/src/PasswordField.hbs
CHANGED
package/src/PasswordField.ts
CHANGED
|
@@ -20,6 +20,12 @@ export enum UDExIconType {
|
|
|
20
20
|
Hide = "hide",
|
|
21
21
|
Show = "show",
|
|
22
22
|
}
|
|
23
|
+
|
|
24
|
+
export enum UDExPasswordFieldAutoComplete {
|
|
25
|
+
On = "on",
|
|
26
|
+
Off = "off",
|
|
27
|
+
}
|
|
28
|
+
|
|
23
29
|
/**
|
|
24
30
|
* @class
|
|
25
31
|
*
|
|
@@ -55,6 +61,14 @@ class UDExPasswordField extends UI5Element {
|
|
|
55
61
|
@property({ type: String, noAttribute: true })
|
|
56
62
|
type: UDExInputType = UDExInputType.Password;
|
|
57
63
|
|
|
64
|
+
/**
|
|
65
|
+
* Defines the behaviour of autocomplete.
|
|
66
|
+
*
|
|
67
|
+
* @public
|
|
68
|
+
*/
|
|
69
|
+
@property({ type: String })
|
|
70
|
+
autocomplete: `${UDExPasswordFieldAutoComplete}` = "off";
|
|
71
|
+
|
|
58
72
|
/**
|
|
59
73
|
* Defines whether the component is in disabled state.
|
|
60
74
|
* <br><br>
|
package/src/PhoneNumberField.ts
CHANGED
|
@@ -24,7 +24,6 @@ import "@ui5/webcomponents-icons/dist/slim-arrow-up.js";
|
|
|
24
24
|
import "@ui5/webcomponents-icons/dist/slim-arrow-down.js";
|
|
25
25
|
|
|
26
26
|
import PhoneNumberFieldTemplate from "./generated/templates/PhoneNumberFieldTemplate.lit.js";
|
|
27
|
-
import type UDExValueState from "./types/common.js";
|
|
28
27
|
|
|
29
28
|
// Styles
|
|
30
29
|
import PhoneNumberFieldCss from "./generated/themes/PhoneNumberField.css.js";
|
|
@@ -39,9 +38,17 @@ export enum UDExOpenButtonIcon {
|
|
|
39
38
|
iconDown = "slim-arrow-down",
|
|
40
39
|
}
|
|
41
40
|
|
|
42
|
-
export
|
|
41
|
+
export enum UDExPhoneNumberFieldValueState {
|
|
42
|
+
Standard = "Standard",
|
|
43
|
+
Error = "Error",
|
|
44
|
+
Success = "Success",
|
|
45
|
+
}
|
|
43
46
|
|
|
44
47
|
const initialPlaceholder: string = "+X XXX-XXX-XXXX";
|
|
48
|
+
/**
|
|
49
|
+
* Maximum number of possible digits based on international standard https://en.wikipedia.org/wiki/E.164
|
|
50
|
+
*/
|
|
51
|
+
const digitsLimit: number = 15;
|
|
45
52
|
|
|
46
53
|
/**
|
|
47
54
|
* @class
|
|
@@ -97,7 +104,7 @@ class UDExPhoneNumberField extends UI5Element {
|
|
|
97
104
|
* @public
|
|
98
105
|
*/
|
|
99
106
|
@property()
|
|
100
|
-
valueState: `${UDExPhoneNumberFieldValueState}` =
|
|
107
|
+
valueState: `${UDExPhoneNumberFieldValueState}` = UDExPhoneNumberFieldValueState.Standard;
|
|
101
108
|
|
|
102
109
|
/**
|
|
103
110
|
* Defines supporting text under the input field.
|
|
@@ -432,6 +439,15 @@ class UDExPhoneNumberField extends UI5Element {
|
|
|
432
439
|
this._dropdownExpanded = false;
|
|
433
440
|
}
|
|
434
441
|
|
|
442
|
+
calculateMaxLength(prefix: string, mask: string): number {
|
|
443
|
+
const prefixNonDigitCount = prefix.replace(/[\d]/g, "").length;
|
|
444
|
+
const maskNonDigitCount = mask.replace(/X/g, "").length;
|
|
445
|
+
|
|
446
|
+
const maxLength = digitsLimit + prefixNonDigitCount + maskNonDigitCount;
|
|
447
|
+
|
|
448
|
+
return maxLength;
|
|
449
|
+
}
|
|
450
|
+
|
|
435
451
|
autoSelectCountry(value: string) {
|
|
436
452
|
const countryToSelect = this.updatedCountriesList.find(country => {
|
|
437
453
|
const valuePhonePrefix = value.substring(0, country.phonePrefix.length);
|
|
@@ -444,7 +460,7 @@ class UDExPhoneNumberField extends UI5Element {
|
|
|
444
460
|
}
|
|
445
461
|
|
|
446
462
|
if (this.selectedPhonePrefix && this.selectedPlaceholder) {
|
|
447
|
-
this.maxlength = this.selectedPhonePrefix
|
|
463
|
+
this.maxlength = this.calculateMaxLength(this.selectedPhonePrefix, this.selectedPlaceholder);
|
|
448
464
|
}
|
|
449
465
|
}
|
|
450
466
|
|
|
@@ -460,6 +476,7 @@ class UDExPhoneNumberField extends UI5Element {
|
|
|
460
476
|
return;
|
|
461
477
|
}
|
|
462
478
|
|
|
479
|
+
const maskLength = this.selectedPhonePrefix.length + this.selectedPlaceholder.length;
|
|
463
480
|
const mask = this.selectedPhonePrefix + this.selectedPlaceholder;
|
|
464
481
|
const maskSymbols = [" ", "-", "(", ")"];
|
|
465
482
|
|
|
@@ -476,6 +493,10 @@ class UDExPhoneNumberField extends UI5Element {
|
|
|
476
493
|
return char;
|
|
477
494
|
}).join("");
|
|
478
495
|
|
|
496
|
+
if (this.value.length >= maskLength) {
|
|
497
|
+
return;
|
|
498
|
+
}
|
|
499
|
+
|
|
479
500
|
this.value = valueWithMask;
|
|
480
501
|
|
|
481
502
|
if (this.value.length > this.maxlength) {
|
package/src/ProgressBar.ts
CHANGED
|
@@ -7,7 +7,7 @@ import type I18nBundle from "@ui5/webcomponents-base/dist/i18nBundle.js";
|
|
|
7
7
|
import {
|
|
8
8
|
VALUE_STATE_ERROR, VALUE_STATE_SUCCESS, VALUE_STATE_WARNING, VALUE_STATE_INFORMATION,
|
|
9
9
|
} from "./generated/i18n/i18n-defaults.js";
|
|
10
|
-
import
|
|
10
|
+
import UDExProgressBarValueState from "./types/ProgressBar.js";
|
|
11
11
|
|
|
12
12
|
// Styles
|
|
13
13
|
import ProgressBarCss from "./generated/themes/ProgressBar.css.js";
|
|
@@ -47,17 +47,17 @@ class UDExProgressBar extends ProgressIndicator {
|
|
|
47
47
|
*/
|
|
48
48
|
@property()
|
|
49
49
|
/** @ts-expect-error */
|
|
50
|
-
valueState!: `${
|
|
50
|
+
valueState!: `${UDExProgressBarValueState}` = UDExProgressBarValueState.None;
|
|
51
51
|
|
|
52
52
|
@i18n("@sapudex/web-components")
|
|
53
53
|
static i18nBundle: I18nBundle;
|
|
54
54
|
|
|
55
55
|
valueStateTextMappings(): Record<string, string> {
|
|
56
56
|
return {
|
|
57
|
-
[
|
|
58
|
-
[
|
|
59
|
-
[
|
|
60
|
-
[
|
|
57
|
+
[UDExProgressBarValueState.Error]: UDExProgressBar.i18nBundle.getText(VALUE_STATE_ERROR),
|
|
58
|
+
[UDExProgressBarValueState.Warning]: UDExProgressBar.i18nBundle.getText(VALUE_STATE_WARNING),
|
|
59
|
+
[UDExProgressBarValueState.Success]: UDExProgressBar.i18nBundle.getText(VALUE_STATE_SUCCESS),
|
|
60
|
+
[UDExProgressBarValueState.Information]: UDExProgressBar.i18nBundle.getText(VALUE_STATE_INFORMATION),
|
|
61
61
|
};
|
|
62
62
|
}
|
|
63
63
|
}
|
package/src/RadioButton.ts
CHANGED
|
@@ -7,7 +7,7 @@ import {
|
|
|
7
7
|
} from "./generated/i18n/i18n-defaults.js";
|
|
8
8
|
import RadioButton from "@ui5/webcomponents/dist/RadioButton.js";
|
|
9
9
|
import property from "@ui5/webcomponents-base/dist/decorators/property.js";
|
|
10
|
-
import
|
|
10
|
+
import UDExRadioButtonValueState from "./types/RadioButton.js";
|
|
11
11
|
|
|
12
12
|
// Styles
|
|
13
13
|
import RadioButtonCss from "./generated/themes/RadioButton.css.js";
|
|
@@ -27,6 +27,7 @@ import RadioButtonCss from "./generated/themes/RadioButton.css.js";
|
|
|
27
27
|
*
|
|
28
28
|
* @constructor
|
|
29
29
|
* @extends RadioButton
|
|
30
|
+
* @tagname udex-radio-button
|
|
30
31
|
* @public
|
|
31
32
|
*/
|
|
32
33
|
@customElement({
|
|
@@ -52,7 +53,7 @@ class UDExRadioButton extends RadioButton {
|
|
|
52
53
|
*/
|
|
53
54
|
@property()
|
|
54
55
|
/** @ts-expect-error */
|
|
55
|
-
valueState!: `${
|
|
56
|
+
valueState!: `${UDExRadioButtonValueState}` = UDExRadioButtonValueState.None;
|
|
56
57
|
|
|
57
58
|
@i18n("@sapudex/web-components")
|
|
58
59
|
static i18nBundle: I18nBundle;
|
|
@@ -64,13 +65,13 @@ class UDExRadioButton extends RadioButton {
|
|
|
64
65
|
|
|
65
66
|
get valueStateText(): string {
|
|
66
67
|
switch (this.valueState) {
|
|
67
|
-
case
|
|
68
|
+
case UDExRadioButtonValueState.Error:
|
|
68
69
|
return RadioButton.i18nBundle.getText(VALUE_STATE_ERROR);
|
|
69
|
-
case
|
|
70
|
+
case UDExRadioButtonValueState.Success:
|
|
70
71
|
return RadioButton.i18nBundle.getText(VALUE_STATE_SUCCESS);
|
|
71
|
-
case
|
|
72
|
+
case UDExRadioButtonValueState.Information:
|
|
72
73
|
return RadioButton.i18nBundle.getText(VALUE_STATE_INFORMATION);
|
|
73
|
-
case
|
|
74
|
+
case UDExRadioButtonValueState.Warning:
|
|
74
75
|
return RadioButton.i18nBundle.getText(VALUE_STATE_WARNING);
|
|
75
76
|
default:
|
|
76
77
|
return "";
|
package/src/Search.hbs
CHANGED
|
@@ -73,8 +73,8 @@
|
|
|
73
73
|
@click="{{handleInputClick}}"
|
|
74
74
|
/>
|
|
75
75
|
{{/if}}
|
|
76
|
-
{{#if
|
|
77
|
-
<span
|
|
76
|
+
{{#if open}}
|
|
77
|
+
<span aria-live="polite" aria-atomic="true" id="search-description" class="hidden" aria-hidden="true">{{suggestionsDescription}}</span>
|
|
78
78
|
{{/if}}
|
|
79
79
|
<div class="udex-search__icons">
|
|
80
80
|
{{#if isShowHomeResetButton}}
|
|
@@ -123,6 +123,7 @@
|
|
|
123
123
|
class="udex-search__icon"
|
|
124
124
|
aria-hidden="true"
|
|
125
125
|
accessible-name="{{accInfo.accessibleNameSearchIcon}}"
|
|
126
|
+
show-tooltip
|
|
126
127
|
name="search">
|
|
127
128
|
</ui5-icon>
|
|
128
129
|
{{/if}}
|
package/src/Search.ts
CHANGED
|
@@ -710,7 +710,6 @@ class UDExSearch extends UI5Element {
|
|
|
710
710
|
|
|
711
711
|
getTextWithSuggestion(text: string): string {
|
|
712
712
|
const escapedValue = this.escapeRegExp(this.value);
|
|
713
|
-
console.warn(escapedValue);
|
|
714
713
|
const search = new RegExp(escapedValue, "i");
|
|
715
714
|
return text.replace(search, "<b>$&</b>");
|
|
716
715
|
}
|
|
@@ -1285,14 +1284,13 @@ class UDExSearch extends UI5Element {
|
|
|
1285
1284
|
get accInfo() {
|
|
1286
1285
|
return {
|
|
1287
1286
|
"ariaLabel": this.accessibleName || undefined,
|
|
1288
|
-
"ariaDescription": this.open ? this.suggestionsDescription : undefined,
|
|
1289
1287
|
"accessibleNameResetIcon": this.accessibleNameResetIcon || UDExSearch.i18nBundle.getText(ACCESSIBLE_NAME_RESET_ICON),
|
|
1290
1288
|
"accessibleNameSearchIcon": this.accessibleNameSearchIcon || UDExSearch.i18nBundle.getText(ACCESSIBLE_NAME_SEARCH_ICON),
|
|
1291
1289
|
};
|
|
1292
1290
|
}
|
|
1293
1291
|
|
|
1294
1292
|
get suggestionsDescription(): string {
|
|
1295
|
-
return this.
|
|
1293
|
+
return !this.showNoResultMessage ? `${this.suggestedList.length} ${this._suggestionLabel}, ${this.recommendedList.length} ${this._recommendLabel}` : `${this.noResultMessage}`;
|
|
1296
1294
|
}
|
|
1297
1295
|
|
|
1298
1296
|
get tooltipInfo() {
|
|
@@ -145,7 +145,8 @@ class UDExSecondaryNavigation extends UI5Element {
|
|
|
145
145
|
_mobileBtnExpanded = false;
|
|
146
146
|
|
|
147
147
|
_navItems!: Array<NavItem>;
|
|
148
|
-
_showMoreButton: boolean;
|
|
148
|
+
_showMoreButton: boolean = true;
|
|
149
|
+
_shouldFocusFirstItem: boolean = true;
|
|
149
150
|
_rootHolder!: HTMLElement | null | undefined;
|
|
150
151
|
_clickedNavItem!: UDExSecondaryNavigationItem;
|
|
151
152
|
_boundReflowItems: () => void;
|
|
@@ -155,7 +156,6 @@ class UDExSecondaryNavigation extends UI5Element {
|
|
|
155
156
|
|
|
156
157
|
constructor() {
|
|
157
158
|
super();
|
|
158
|
-
this._showMoreButton = true;
|
|
159
159
|
this._boundReflowItems = this._handleResize.bind(this);
|
|
160
160
|
}
|
|
161
161
|
|
|
@@ -171,13 +171,6 @@ class UDExSecondaryNavigation extends UI5Element {
|
|
|
171
171
|
ResizeHandler.deregister(this, this._boundReflowItems);
|
|
172
172
|
}
|
|
173
173
|
|
|
174
|
-
_handleResize() {
|
|
175
|
-
this.reflowItems();
|
|
176
|
-
if (this._clickedNavItem && this.isDesktopScreen) {
|
|
177
|
-
this._clickedNavItem.closeDropdown();
|
|
178
|
-
}
|
|
179
|
-
}
|
|
180
|
-
|
|
181
174
|
onInvalidation(changeInfo: ChangeInfo): void {
|
|
182
175
|
if (changeInfo.name === "navItems") {
|
|
183
176
|
this.reflowItems();
|
|
@@ -186,6 +179,12 @@ class UDExSecondaryNavigation extends UI5Element {
|
|
|
186
179
|
|
|
187
180
|
onAfterRendering(): void {
|
|
188
181
|
this._rootHolder = this.rootHolder;
|
|
182
|
+
if (!this._overflowItems.length) {
|
|
183
|
+
this._showMoreButton = true;
|
|
184
|
+
}
|
|
185
|
+
if (this._shouldFocusFirstItem && this.isDesktopScreen) {
|
|
186
|
+
this.domNavItems[0]._tabIndex = "0";
|
|
187
|
+
}
|
|
189
188
|
this.handleOutsideClick();
|
|
190
189
|
}
|
|
191
190
|
|
|
@@ -193,6 +192,16 @@ class UDExSecondaryNavigation extends UI5Element {
|
|
|
193
192
|
this._requestRender = !this._requestRender;
|
|
194
193
|
}
|
|
195
194
|
|
|
195
|
+
_handleResize() {
|
|
196
|
+
this.reflowItems();
|
|
197
|
+
if (this.isDesktopScreen) {
|
|
198
|
+
this.resetTabIndex();
|
|
199
|
+
}
|
|
200
|
+
if (this._clickedNavItem && this.isDesktopScreen) {
|
|
201
|
+
this._clickedNavItem.closeDropdown();
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
|
|
196
205
|
reflowItems(): void {
|
|
197
206
|
const availableWidth = this.rootHolder.offsetWidth - (this.headingHolder?.offsetWidth || 0) - (this.optionalButtons?.offsetWidth || 0);
|
|
198
207
|
const moreButtonWidth = this.getMoreButtonWidth();
|
|
@@ -243,9 +252,12 @@ class UDExSecondaryNavigation extends UI5Element {
|
|
|
243
252
|
const item = e.target as UDExSecondaryNavigationItem;
|
|
244
253
|
const currentSelectedIndex = this.getCurrentIndex(item);
|
|
245
254
|
const previousSelectIndex = currentSelectedIndex - 1;
|
|
255
|
+
const previousItem = this.domNavItems[previousSelectIndex];
|
|
246
256
|
if (currentSelectedIndex > 0) {
|
|
247
257
|
e.preventDefault();
|
|
248
|
-
this.domNavItems[
|
|
258
|
+
this.domNavItems[currentSelectedIndex]._tabIndex = "-1";
|
|
259
|
+
previousItem._tabIndex = "0";
|
|
260
|
+
previousItem?.focus();
|
|
249
261
|
}
|
|
250
262
|
}
|
|
251
263
|
|
|
@@ -254,9 +266,12 @@ class UDExSecondaryNavigation extends UI5Element {
|
|
|
254
266
|
const currentSelectedIndex = this.getCurrentIndex(item);
|
|
255
267
|
const lastItemIndex = this.domNavItems.length - 1;
|
|
256
268
|
const nextSelectIndex = currentSelectedIndex + 1;
|
|
269
|
+
const nextItem = this.domNavItems[nextSelectIndex];
|
|
257
270
|
if (nextSelectIndex < lastItemIndex) {
|
|
258
271
|
e.preventDefault();
|
|
259
|
-
this.domNavItems[
|
|
272
|
+
this.domNavItems[currentSelectedIndex]._tabIndex = "-1";
|
|
273
|
+
nextItem._tabIndex = "0";
|
|
274
|
+
nextItem.focus();
|
|
260
275
|
}
|
|
261
276
|
}
|
|
262
277
|
|
|
@@ -305,6 +320,8 @@ class UDExSecondaryNavigation extends UI5Element {
|
|
|
305
320
|
}
|
|
306
321
|
|
|
307
322
|
this._clickedNavItem = clickedItem;
|
|
323
|
+
this._shouldFocusFirstItem = false;
|
|
324
|
+
this.setTabIndexById(_id);
|
|
308
325
|
this.closePrevDropdown(_id);
|
|
309
326
|
|
|
310
327
|
if (!subItems.length) {
|
|
@@ -401,7 +418,7 @@ class UDExSecondaryNavigation extends UI5Element {
|
|
|
401
418
|
|
|
402
419
|
closePrevDropdown(clickedItemId: string): void {
|
|
403
420
|
this.domNavItems.forEach(item => {
|
|
404
|
-
if (
|
|
421
|
+
if (item.isOpen && item._id !== clickedItemId) {
|
|
405
422
|
item.closeDropdown();
|
|
406
423
|
}
|
|
407
424
|
});
|
|
@@ -411,6 +428,18 @@ class UDExSecondaryNavigation extends UI5Element {
|
|
|
411
428
|
return string ? JSON.parse(string) as T[] : [];
|
|
412
429
|
}
|
|
413
430
|
|
|
431
|
+
resetTabIndex(): void {
|
|
432
|
+
this.domNavItems.forEach((item, index) => {
|
|
433
|
+
item._tabIndex = index === 0 ? "0" : "-1";
|
|
434
|
+
});
|
|
435
|
+
}
|
|
436
|
+
|
|
437
|
+
setTabIndexById(id: string): void {
|
|
438
|
+
this.domNavItems.forEach(item => {
|
|
439
|
+
item._tabIndex = id === item._id ? "0" : "-1";
|
|
440
|
+
});
|
|
441
|
+
}
|
|
442
|
+
|
|
414
443
|
get domNavItems(): Array<UDExSecondaryNavigationItem> {
|
|
415
444
|
const items = this.shadowRoot?.querySelectorAll<UDExSecondaryNavigationItem>("[udex-secondary-navigation-item]");
|
|
416
445
|
return items ? Array.from(items) : [];
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
?active="{{isActive}}"
|
|
6
6
|
href="{{path}}"
|
|
7
7
|
target="{{target}}"
|
|
8
|
+
tabindex="{{_tabIndex}}"
|
|
8
9
|
aria-current="{{ariaCurrent}}"
|
|
9
10
|
@keydown="{{handleItemLinkKeyDown}}"
|
|
10
11
|
@click="{{fireNavItemClickEvent}}">
|
|
@@ -14,7 +15,7 @@
|
|
|
14
15
|
<button
|
|
15
16
|
class="udex-secondary-navigation__item"
|
|
16
17
|
role="{{itemRole}}"
|
|
17
|
-
tabindex="
|
|
18
|
+
tabindex="{{menuOpenerTabIndex}}"
|
|
18
19
|
?active="{{isActive}}"
|
|
19
20
|
aria-haspopup="{{hasNestedItems}}"
|
|
20
21
|
aria-expanded="{{isOpen}}"
|
|
@@ -157,9 +157,20 @@ class UDExSecondaryNavigationItem extends UDExSecondaryNavigationItemBase {
|
|
|
157
157
|
@property({ type: Object })
|
|
158
158
|
_processedItems: Array<NavItem> = [];
|
|
159
159
|
|
|
160
|
+
/**
|
|
161
|
+
* Defines if item is mobile menu opener.
|
|
162
|
+
*
|
|
163
|
+
* @private
|
|
164
|
+
* @default false
|
|
165
|
+
*/
|
|
166
|
+
@property({ type: Boolean })
|
|
167
|
+
_isMobileMenuOpener!: boolean;
|
|
168
|
+
|
|
160
169
|
_dropdownHistory: Array<Array<NavItem>> = [];
|
|
161
170
|
_shouldFocusFirstSubItem!: boolean;
|
|
162
171
|
_subTitle!: string | undefined;
|
|
172
|
+
_shouldResetTabIndex!: boolean;
|
|
173
|
+
_shouldSetTabIndex!: boolean;
|
|
163
174
|
|
|
164
175
|
onAfterRendering(): void {
|
|
165
176
|
if (this.isLastItem && this.isOpen && !this._isMobileView) {
|
|
@@ -174,6 +185,16 @@ class UDExSecondaryNavigationItem extends UDExSecondaryNavigationItemBase {
|
|
|
174
185
|
if (this._isMobileView && this.isOpen) {
|
|
175
186
|
this.setDropdownHeight();
|
|
176
187
|
}
|
|
188
|
+
|
|
189
|
+
if (this._shouldSetTabIndex) {
|
|
190
|
+
this._tabIndex = "0";
|
|
191
|
+
this._shouldSetTabIndex = false;
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
if (this._shouldResetTabIndex) {
|
|
195
|
+
this._tabIndex = "-1";
|
|
196
|
+
this._shouldResetTabIndex = false;
|
|
197
|
+
}
|
|
177
198
|
}
|
|
178
199
|
|
|
179
200
|
onBeforeRendering() : void {
|
|
@@ -202,6 +223,7 @@ class UDExSecondaryNavigationItem extends UDExSecondaryNavigationItemBase {
|
|
|
202
223
|
if (this.hasNestedItems) {
|
|
203
224
|
this.setDropdownItems();
|
|
204
225
|
this.isOpen = !this.isOpen;
|
|
226
|
+
this._shouldResetTabIndex = true;
|
|
205
227
|
this.onShouldFocusFirstSubItem();
|
|
206
228
|
}
|
|
207
229
|
|
|
@@ -210,6 +232,7 @@ class UDExSecondaryNavigationItem extends UDExSecondaryNavigationItemBase {
|
|
|
210
232
|
|
|
211
233
|
closeDropdown(): void {
|
|
212
234
|
this.isOpen = false;
|
|
235
|
+
this._shouldSetTabIndex = true;
|
|
213
236
|
}
|
|
214
237
|
|
|
215
238
|
handleItemLinkKeyDown(e: KeyboardEvent): void {
|
|
@@ -425,6 +448,14 @@ class UDExSecondaryNavigationItem extends UDExSecondaryNavigationItemBase {
|
|
|
425
448
|
return this.shadowRoot!.querySelector<HTMLElement>(".udex-secondary-navigation__dropdown")!;
|
|
426
449
|
}
|
|
427
450
|
|
|
451
|
+
get menuOpenerTabIndex(): string {
|
|
452
|
+
if (this._isMobileMenuOpener) {
|
|
453
|
+
return "0";
|
|
454
|
+
}
|
|
455
|
+
|
|
456
|
+
return this._tabIndex;
|
|
457
|
+
}
|
|
458
|
+
|
|
428
459
|
get isLastItem(): boolean {
|
|
429
460
|
return this._navItemsLength === this.index;
|
|
430
461
|
}
|
|
@@ -89,9 +89,6 @@ class UDExSecondaryNavigationSubItem extends UDExSecondaryNavigationItemBase {
|
|
|
89
89
|
@property({ type: Object })
|
|
90
90
|
nestedItems: Array<NavItem> = [];
|
|
91
91
|
|
|
92
|
-
@property({ type: String })
|
|
93
|
-
_tabIndex: string = "-1";
|
|
94
|
-
|
|
95
92
|
@i18n("@sapudex/web-components")
|
|
96
93
|
static i18nBundle: I18nBundle;
|
|
97
94
|
|
package/src/SegmentedButton.ts
CHANGED
|
@@ -9,7 +9,7 @@ import { getScopedVarName } from "@ui5/webcomponents-base/dist/CustomElementsSco
|
|
|
9
9
|
import SegmentedButtonSelectionMode from "@ui5/webcomponents/dist/types/SegmentedButtonSelectionMode.js";
|
|
10
10
|
import SegmentedButtonCss from "./generated/themes/SegmentedButton.css.js";
|
|
11
11
|
import UDExSegmentedButtonItem from "./SegmentedButtonItem.js";
|
|
12
|
-
import
|
|
12
|
+
import UDExButtonSize from "./types/ButtonSize.js";
|
|
13
13
|
|
|
14
14
|
/**
|
|
15
15
|
* @class
|
|
@@ -5,7 +5,7 @@ import SegmentedButtonItem from "@ui5/webcomponents/dist/SegmentedButtonItem.js"
|
|
|
5
5
|
// Styles
|
|
6
6
|
import property from "@ui5/webcomponents-base/dist/decorators/property.js";
|
|
7
7
|
import SegmentedButtonItemCss from "./generated/themes/SegmentedButtonItem.css.js";
|
|
8
|
-
import
|
|
8
|
+
import UDExButtonSize from "./types/ButtonSize.js";
|
|
9
9
|
|
|
10
10
|
/**
|
|
11
11
|
* @class
|
|
@@ -44,7 +44,7 @@ class UDExSegmentedButtonItem extends SegmentedButtonItem {
|
|
|
44
44
|
*
|
|
45
45
|
* @private
|
|
46
46
|
*/
|
|
47
|
-
@property()
|
|
47
|
+
@property({ type: Boolean })
|
|
48
48
|
hasIcon: boolean = false;
|
|
49
49
|
|
|
50
50
|
constructor() {
|
package/src/StatusBadge.ts
CHANGED
|
@@ -23,7 +23,6 @@ import StatusBadgeTemplate from "./generated/templates/StatusBadgeTemplate.lit.j
|
|
|
23
23
|
|
|
24
24
|
// Styles
|
|
25
25
|
import StatusBadgeCss from "./generated/themes/StatusBadge.css.js";
|
|
26
|
-
import type UDExProgressBarValueState from "./types/ProgressBar.js";
|
|
27
26
|
|
|
28
27
|
export enum IconMapping {
|
|
29
28
|
Success = "sys-enter-2",
|
|
@@ -41,7 +40,13 @@ export enum BadgeSize {
|
|
|
41
40
|
XL = "XL",
|
|
42
41
|
}
|
|
43
42
|
|
|
44
|
-
export
|
|
43
|
+
export enum UDExStatusBadgeValueState {
|
|
44
|
+
Warning = "Warning",
|
|
45
|
+
Error = "Error",
|
|
46
|
+
Success = "Success",
|
|
47
|
+
Information = "Information",
|
|
48
|
+
Edit = "Edit"
|
|
49
|
+
}
|
|
45
50
|
|
|
46
51
|
/**
|
|
47
52
|
* @class
|
|
@@ -75,7 +80,7 @@ class UDExStatusBadge extends UI5Element {
|
|
|
75
80
|
* @public
|
|
76
81
|
*/
|
|
77
82
|
@property()
|
|
78
|
-
valueState: UDExStatusBadgeValueState =
|
|
83
|
+
valueState: `${UDExStatusBadgeValueState}` = UDExStatusBadgeValueState.Information;
|
|
79
84
|
|
|
80
85
|
/**
|
|
81
86
|
* Defines predefined size of the component.
|
package/src/StepInput.ts
CHANGED
|
@@ -28,7 +28,7 @@ import StepInputTemplate from "./StepInputTemplate.js";
|
|
|
28
28
|
|
|
29
29
|
// Styles
|
|
30
30
|
import StepInputCss from "./generated/themes/StepInput.css.js";
|
|
31
|
-
import type
|
|
31
|
+
import type UDExControlButtonDesign from "./types/ControlButtonDesign.js";
|
|
32
32
|
import type { UDExTextFieldKeydownEventDetail } from "./TextField.js";
|
|
33
33
|
|
|
34
34
|
// Spin variables
|
|
@@ -37,11 +37,11 @@ const ACCELERATION = 0.8;
|
|
|
37
37
|
const MIN_WAIT_TIMEOUT = 50; // milliseconds
|
|
38
38
|
const INITIAL_SPEED = 120; // milliseconds
|
|
39
39
|
|
|
40
|
-
type UDExStepInputValueChangeEventDetail = {
|
|
40
|
+
export type UDExStepInputValueChangeEventDetail = {
|
|
41
41
|
value: number,
|
|
42
42
|
}
|
|
43
43
|
|
|
44
|
-
type UDExStepInputValueStateChangeEventDetail = {
|
|
44
|
+
export type UDExStepInputValueStateChangeEventDetail = {
|
|
45
45
|
valueState: `${UDExValueState}`,
|
|
46
46
|
valid: boolean
|
|
47
47
|
}
|
package/src/TableCellBase.ts
CHANGED
|
@@ -4,7 +4,7 @@ import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
|
|
|
4
4
|
import property from "@ui5/webcomponents-base/dist/decorators/property.js";
|
|
5
5
|
import Icon from "@ui5/webcomponents/dist/Icon.js";
|
|
6
6
|
import litRender from "@ui5/webcomponents-base/dist/renderer/LitRenderer.js";
|
|
7
|
-
import type
|
|
7
|
+
import type UDExTableCellHorizontalAlign from "./types/Table.js";
|
|
8
8
|
|
|
9
9
|
// Styles
|
|
10
10
|
import TableCellBaseCss from "./generated/themes/TableCellBase.css.js";
|
|
@@ -32,7 +32,7 @@ abstract class UDExTableCellBase extends UI5Element {
|
|
|
32
32
|
* @public
|
|
33
33
|
*/
|
|
34
34
|
@property()
|
|
35
|
-
horizontalAlign?: `${
|
|
35
|
+
horizontalAlign?: `${UDExTableCellHorizontalAlign}`;
|
|
36
36
|
|
|
37
37
|
/**
|
|
38
38
|
* Defines the content of the component.
|
package/src/Tag.ts
CHANGED
|
@@ -8,7 +8,7 @@ import type { ResizeObserverCallback } from "@ui5/webcomponents-base/dist/delega
|
|
|
8
8
|
import ResizeHandler from "@ui5/webcomponents-base/dist/delegate/ResizeHandler.js";
|
|
9
9
|
import { isEnter } from "@ui5/webcomponents-base/dist/Keys.js";
|
|
10
10
|
import { isDesktop } from "@ui5/webcomponents-base/dist/Device.js";
|
|
11
|
-
import
|
|
11
|
+
import UDExIconPlacement from "./types/IconPlacement.js";
|
|
12
12
|
|
|
13
13
|
import TagTemplate from "./generated/templates/TagTemplate.lit.js";
|
|
14
14
|
|
|
@@ -133,7 +133,7 @@ class UDExTag extends UI5Element {
|
|
|
133
133
|
* @public
|
|
134
134
|
*/
|
|
135
135
|
@property()
|
|
136
|
-
iconPlacement : `${
|
|
136
|
+
iconPlacement : `${UDExIconPlacement}` = UDExIconPlacement.End;
|
|
137
137
|
|
|
138
138
|
/**
|
|
139
139
|
* Defines if tag is in readnly state
|
|
@@ -283,11 +283,11 @@ class UDExTag extends UI5Element {
|
|
|
283
283
|
}
|
|
284
284
|
|
|
285
285
|
get startIcon(): boolean {
|
|
286
|
-
return this.hasIcon && this.iconPlacement ===
|
|
286
|
+
return this.hasIcon && this.iconPlacement === UDExIconPlacement.Start;
|
|
287
287
|
}
|
|
288
288
|
|
|
289
289
|
get endIcon(): boolean {
|
|
290
|
-
return this.hasIcon && this.iconPlacement ===
|
|
290
|
+
return this.hasIcon && this.iconPlacement === UDExIconPlacement.End;
|
|
291
291
|
}
|
|
292
292
|
|
|
293
293
|
get _tabIndex(): number {
|