@sapudex/web-components 0.192.4 → 0.224.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundle.esm.js +78 -69
- package/cypress/screenshots/AccordionItem.cy.tsx/AccordionItem -- can be clicked via keyboard using Space (failed).png +0 -0
- package/dist/Accordion.d.ts +4 -4
- package/dist/Accordion.js +12 -28
- package/dist/Accordion.js.map +1 -1
- package/dist/AccordionItem.d.ts +3 -5
- package/dist/AccordionItem.js +19 -51
- package/dist/AccordionItem.js.map +1 -1
- package/dist/Avatar.d.ts +3 -2
- package/dist/Avatar.js +6 -3
- package/dist/Avatar.js.map +1 -1
- package/dist/AvatarGroup.d.ts +1 -1
- package/dist/AvatarGroup.js +1 -1
- package/dist/AvatarGroup.js.map +1 -1
- package/dist/Badge.d.ts +5 -5
- package/dist/Badge.js +8 -8
- package/dist/Badge.js.map +1 -1
- package/dist/Breadcrumbs.d.ts +1 -1
- package/dist/Breadcrumbs.js +18 -2
- package/dist/Breadcrumbs.js.map +1 -1
- package/dist/BreadcrumbsItem.d.ts +1 -1
- package/dist/BreadcrumbsItem.js +1 -1
- package/dist/BreadcrumbsItem.js.map +1 -1
- package/dist/Button.d.ts +2 -1
- package/dist/Button.js +2 -1
- package/dist/Button.js.map +1 -1
- package/dist/Carousel.js +1 -1
- package/dist/Carousel.js.map +1 -1
- package/dist/Checkbox.d.ts +1 -1
- package/dist/Checkbox.js +1 -1
- package/dist/Checkbox.js.map +1 -1
- package/dist/ControlButton.d.ts +12 -7
- package/dist/ControlButton.js +20 -8
- package/dist/ControlButton.js.map +1 -1
- package/dist/CountrySelector.d.ts +4 -5
- package/dist/CountrySelector.js +32 -62
- package/dist/CountrySelector.js.map +1 -1
- package/dist/DatePicker.d.ts +1 -1
- package/dist/DatePicker.js +8 -3
- package/dist/DatePicker.js.map +1 -1
- package/dist/Dropdown.d.ts +1 -1
- package/dist/Dropdown.js +2 -2
- package/dist/Dropdown.js.map +1 -1
- package/dist/FilterMenu.d.ts +1 -1
- package/dist/FilterMenu.js +3 -1
- package/dist/FilterMenu.js.map +1 -1
- package/dist/FilterMenuGroupHeader.d.ts +1 -1
- package/dist/FilterMenuGroupHeader.js +1 -1
- package/dist/FilterMenuGroupHeader.js.map +1 -1
- package/dist/FilterMenuItem.d.ts +1 -1
- package/dist/FilterMenuItem.js +1 -1
- package/dist/FilterMenuItem.js.map +1 -1
- package/dist/FilterMenuSelectAll.d.ts +1 -1
- package/dist/FilterMenuSelectAll.js +1 -1
- package/dist/FilterMenuSelectAll.js.map +1 -1
- package/dist/Footer.d.ts +2 -7
- package/dist/Footer.js +6 -12
- package/dist/Footer.js.map +1 -1
- package/dist/HeroBanner.d.ts +10 -0
- package/dist/HeroBanner.js +6 -0
- package/dist/HeroBanner.js.map +1 -1
- package/dist/InputGroup.d.ts +1 -1
- package/dist/InputGroup.js +2 -2
- package/dist/InputGroup.js.map +1 -1
- package/dist/Link.d.ts +9 -4
- package/dist/Link.js +11 -5
- package/dist/Link.js.map +1 -1
- package/dist/List.d.ts +7 -17
- package/dist/List.js +21 -46
- package/dist/List.js.map +1 -1
- package/dist/ListGroupHeader.d.ts +2 -2
- package/dist/ListGroupHeader.js +3 -2
- package/dist/ListGroupHeader.js.map +1 -1
- package/dist/ListGroupHeaderBase.js +3 -3
- package/dist/ListGroupHeaderBase.js.map +1 -1
- package/dist/ListItem.d.ts +24 -11
- package/dist/ListItem.js +21 -19
- package/dist/ListItem.js.map +1 -1
- package/dist/ListItemBase.d.ts +1 -1
- package/dist/ListItemBase.js +1 -1
- package/dist/ListItemBase.js.map +1 -1
- package/dist/ListSelectAll.d.ts +1 -1
- package/dist/ListSelectAll.js +6 -7
- package/dist/ListSelectAll.js.map +1 -1
- package/dist/MastheadCountrySelector.d.ts +152 -0
- package/dist/MastheadCountrySelector.js +367 -0
- package/dist/MastheadCountrySelector.js.map +1 -0
- package/dist/MastheadItem.d.ts +28 -10
- package/dist/MastheadItem.js +35 -23
- package/dist/MastheadItem.js.map +1 -1
- package/dist/MastheadMenu.d.ts +1 -1
- package/dist/MastheadMenu.js +3 -2
- package/dist/MastheadMenu.js.map +1 -1
- package/dist/MastheadMenuItem.d.ts +27 -6
- package/dist/MastheadMenuItem.js +26 -13
- package/dist/MastheadMenuItem.js.map +1 -1
- package/dist/MastheadMobileMenu.d.ts +10 -6
- package/dist/MastheadMobileMenu.js +84 -38
- package/dist/MastheadMobileMenu.js.map +1 -1
- package/dist/MastheadProfileMenu.d.ts +1 -1
- package/dist/MastheadProfileMenu.js +3 -3
- package/dist/MastheadProfileMenu.js.map +1 -1
- package/dist/MastheadShell.d.ts +38 -9
- package/dist/MastheadShell.js +114 -45
- package/dist/MastheadShell.js.map +1 -1
- package/dist/MediaPlayer.d.ts +3660 -2
- package/dist/MediaPlayer.js +12 -5
- package/dist/MediaPlayer.js.map +1 -1
- package/dist/MediaPlayerVimeo.d.ts +1 -1
- package/dist/MediaPlayerVimeo.js +1 -1
- package/dist/MediaPlayerVimeo.js.map +1 -1
- package/dist/MediaPlayerYoutube.d.ts +1 -1
- package/dist/MediaPlayerYoutube.js +1 -1
- package/dist/MediaPlayerYoutube.js.map +1 -1
- package/dist/MessageStrip.d.ts +9 -38
- package/dist/MessageStrip.js +31 -57
- package/dist/MessageStrip.js.map +1 -1
- package/dist/Pagination.js +3 -6
- package/dist/Pagination.js.map +1 -1
- package/dist/PasswordField.d.ts +1 -1
- package/dist/PasswordField.js +2 -2
- package/dist/PasswordField.js.map +1 -1
- package/dist/PhoneNumberField.d.ts +1 -0
- package/dist/PhoneNumberField.js +12 -4
- package/dist/PhoneNumberField.js.map +1 -1
- package/dist/ProgressBar.d.ts +1 -1
- package/dist/ProgressBar.js +1 -1
- package/dist/ProgressBar.js.map +1 -1
- package/dist/RadioButton.d.ts +1 -1
- package/dist/RadioButton.js +1 -1
- package/dist/RadioButton.js.map +1 -1
- package/dist/RangeSlider.d.ts +1 -1
- package/dist/RangeSlider.js +1 -1
- package/dist/RangeSlider.js.map +1 -1
- package/dist/RatingBar.d.ts +1 -1
- package/dist/RatingBar.js +2 -2
- package/dist/RatingBar.js.map +1 -1
- package/dist/RatingIndicator.d.ts +1 -1
- package/dist/RatingIndicator.js +1 -1
- package/dist/RatingIndicator.js.map +1 -1
- package/dist/Review.d.ts +1 -1
- package/dist/Review.js +2 -2
- package/dist/Review.js.map +1 -1
- package/dist/ReviewItem.d.ts +1 -1
- package/dist/ReviewItem.js +2 -2
- package/dist/ReviewItem.js.map +1 -1
- package/dist/Search.d.ts +9 -2
- package/dist/Search.js +33 -10
- package/dist/Search.js.map +1 -1
- package/dist/SearchableListBase.d.ts +21 -0
- package/dist/SearchableListBase.js +12 -2
- package/dist/SearchableListBase.js.map +1 -1
- package/dist/SecondaryNavigation.d.ts +7 -2
- package/dist/SecondaryNavigation.js +8 -5
- package/dist/SecondaryNavigation.js.map +1 -1
- package/dist/SecondaryNavigationItem.d.ts +12 -1
- package/dist/SecondaryNavigationItem.js +33 -6
- package/dist/SecondaryNavigationItem.js.map +1 -1
- package/dist/SecondaryNavigationItemBase.d.ts +2 -6
- package/dist/SecondaryNavigationItemBase.js +6 -9
- package/dist/SecondaryNavigationItemBase.js.map +1 -1
- package/dist/SecondaryNavigationSubItem.d.ts +1 -8
- package/dist/SecondaryNavigationSubItem.js +2 -5
- package/dist/SecondaryNavigationSubItem.js.map +1 -1
- package/dist/SegmentedButton.d.ts +4 -4
- package/dist/SegmentedButton.js +5 -4
- package/dist/SegmentedButton.js.map +1 -1
- package/dist/SegmentedButtonItem.d.ts +3 -7
- package/dist/SegmentedButtonItem.js +3 -8
- package/dist/SegmentedButtonItem.js.map +1 -1
- package/dist/SelectBox.d.ts +12 -2
- package/dist/SelectBox.js +21 -5
- package/dist/SelectBox.js.map +1 -1
- package/dist/SelectBoxGroupHeader.d.ts +1 -1
- package/dist/SelectBoxGroupHeader.js +1 -1
- package/dist/SelectBoxGroupHeader.js.map +1 -1
- package/dist/SelectBoxItem.d.ts +1 -1
- package/dist/SelectBoxItem.js +1 -1
- package/dist/SelectBoxItem.js.map +1 -1
- package/dist/SelectBoxSelectAll.d.ts +1 -1
- package/dist/SelectBoxSelectAll.js +1 -1
- package/dist/SelectBoxSelectAll.js.map +1 -1
- package/dist/SideNavigation.d.ts +1 -1
- package/dist/SideNavigation.js +1 -1
- package/dist/SideNavigation.js.map +1 -1
- package/dist/SideNavigationGroup.d.ts +1 -1
- package/dist/SideNavigationGroup.js +1 -1
- package/dist/SideNavigationGroup.js.map +1 -1
- package/dist/SideNavigationItem.d.ts +1 -1
- package/dist/SideNavigationItem.js +1 -1
- package/dist/SideNavigationItem.js.map +1 -1
- package/dist/SideNavigationMobile.d.ts +1 -1
- package/dist/SideNavigationMobile.js +1 -1
- package/dist/SideNavigationMobile.js.map +1 -1
- package/dist/SideNavigationSubItem.d.ts +1 -1
- package/dist/SideNavigationSubItem.js +1 -1
- package/dist/SideNavigationSubItem.js.map +1 -1
- package/dist/Slider.d.ts +1 -1
- package/dist/Slider.js +1 -1
- package/dist/Slider.js.map +1 -1
- package/dist/StatusBadge.d.ts +1 -1
- package/dist/StatusBadge.js +2 -2
- package/dist/StatusBadge.js.map +1 -1
- package/dist/StatusMessage.d.ts +1 -1
- package/dist/StatusMessage.js +1 -1
- package/dist/StatusMessage.js.map +1 -1
- package/dist/StepInput.d.ts +2 -4
- package/dist/StepInput.js +11 -15
- package/dist/StepInput.js.map +1 -1
- package/dist/Switch.d.ts +1 -1
- package/dist/Switch.js +1 -1
- package/dist/Switch.js.map +1 -1
- package/dist/Tab.d.ts +2 -7
- package/dist/Tab.js +3 -9
- package/dist/Tab.js.map +1 -1
- package/dist/TabNavigation.d.ts +1 -1
- package/dist/TabNavigation.js +2 -2
- package/dist/TabNavigation.js.map +1 -1
- package/dist/Table.d.ts +1 -1
- package/dist/Table.js +2 -2
- package/dist/Table.js.map +1 -1
- package/dist/TableCell.d.ts +1 -1
- package/dist/TableCell.js +1 -1
- package/dist/TableCell.js.map +1 -1
- package/dist/TableGroupRow.d.ts +1 -1
- package/dist/TableGroupRow.js +1 -1
- package/dist/TableGroupRow.js.map +1 -1
- package/dist/TableHeaderCell.d.ts +1 -1
- package/dist/TableHeaderCell.js +1 -1
- package/dist/TableHeaderCell.js.map +1 -1
- package/dist/TableHeaderRow.d.ts +1 -1
- package/dist/TableHeaderRow.js +1 -1
- package/dist/TableHeaderRow.js.map +1 -1
- package/dist/TableRow.d.ts +1 -1
- package/dist/TableRow.js +1 -1
- package/dist/TableRow.js.map +1 -1
- package/dist/Tag.d.ts +6 -1
- package/dist/Tag.js +18 -1
- package/dist/Tag.js.map +1 -1
- package/dist/TagGroup.d.ts +1 -1
- package/dist/TagGroup.js +1 -1
- package/dist/TagGroup.js.map +1 -1
- package/dist/TextArea.js +1 -1
- package/dist/TextArea.js.map +1 -1
- package/dist/TextField.d.ts +1 -1
- package/dist/TextField.js +6 -13
- package/dist/TextField.js.map +1 -1
- package/dist/Toast.d.ts +1 -1
- package/dist/Toast.js +1 -1
- package/dist/Toast.js.map +1 -1
- package/dist/Tooltip.d.ts +1 -1
- package/dist/Tooltip.js +1 -1
- package/dist/Tooltip.js.map +1 -1
- package/dist/TruncatedText.js +1 -1
- package/dist/TruncatedText.js.map +1 -1
- package/dist/Upload.d.ts +115 -0
- package/dist/Upload.js +265 -0
- package/dist/Upload.js.map +1 -0
- package/dist/UploadItem.d.ts +101 -0
- package/dist/UploadItem.js +151 -0
- package/dist/UploadItem.js.map +1 -0
- package/dist/Wizard.d.ts +1 -1
- package/dist/Wizard.js +1 -1
- package/dist/Wizard.js.map +1 -1
- package/dist/WizardStep.d.ts +1 -1
- package/dist/WizardStep.js +1 -1
- package/dist/WizardStep.js.map +1 -1
- package/dist/WizardTab.d.ts +1 -1
- package/dist/WizardTab.js +1 -1
- package/dist/WizardTab.js.map +1 -1
- package/dist/assets/ar-4a3e3814.js +1 -0
- package/dist/assets/az-1a5c38dc.js +1 -0
- package/dist/assets/ba-578f2c35.js +1 -0
- package/dist/assets/bg-23e26fa4.js +1 -0
- package/dist/assets/bn-ecf46fc9.js +1 -0
- package/dist/assets/{bundle-c5e3cbf2.css → bundle-7a4a3e16.css} +1 -1
- package/dist/assets/bundle.esm-fe0b0d94.js +330 -0
- package/dist/assets/ca-792d0c23.js +1 -0
- package/dist/assets/cs-6fb6c274.js +1 -0
- package/dist/assets/cy-f6e8dafd.js +1 -0
- package/dist/assets/da-89990885.js +1 -0
- package/dist/assets/de-32104d6f.js +1 -0
- package/dist/assets/el-cfd6e74d.js +1 -0
- package/dist/assets/en-111ebeca.js +1 -0
- package/dist/assets/en-GB-d734c02c.js +1 -0
- package/dist/assets/es-611df0dc.js +1 -0
- package/dist/assets/et-9ece8307.js +1 -0
- package/dist/assets/eu-49fabb60.js +1 -0
- package/dist/assets/fa-b37ac7ef.js +1 -0
- package/dist/assets/fi-7ec80e73.js +1 -0
- package/dist/assets/fr-ee18d408.js +1 -0
- package/dist/assets/gd-b81ebaf0.js +1 -0
- package/dist/assets/gl-e4ba9f11.js +1 -0
- package/dist/assets/he-3161ae46.js +1 -0
- package/dist/assets/hi-90e040fd.js +1 -0
- package/dist/assets/hr-578f2c35.js +1 -0
- package/dist/assets/hu-42b8fcee.js +1 -0
- package/dist/assets/it-b051329d.js +1 -0
- package/dist/assets/ja-8cc903fb.js +1 -0
- package/dist/assets/ko-b85d1cca.js +1 -0
- package/dist/assets/lv-7a47d532.js +1 -0
- package/dist/assets/messagebundle_en-d1666c5e.js +1 -0
- package/dist/assets/mr-9563c6ee.js +1 -0
- package/dist/assets/nb-367efd73.js +1 -0
- package/dist/assets/nl-7501cf03.js +1 -0
- package/dist/assets/nn-7a32f39e.js +1 -0
- package/dist/assets/np-2442ddf5.js +1 -0
- package/dist/assets/oc-892205fc.js +1 -0
- package/dist/assets/parameters-bundle.css-165a1208.js +2 -0
- package/dist/assets/parameters-bundle.css-3c706630.js +2 -0
- package/dist/assets/parameters-bundle.css-3ea1926f.js +2 -0
- package/dist/assets/parameters-bundle.css-47cbf095.js +2 -0
- package/dist/assets/parameters-bundle.css-6eda420e.js +2 -0
- package/dist/assets/parameters-bundle.css-9905f744.js +2 -0
- package/dist/assets/parameters-bundle.css-9e6d1c8d.js +2 -0
- package/dist/assets/parameters-bundle.css-b1ba75bd.js +2 -0
- package/dist/assets/parameters-bundle.css-b6cfd976.js +2 -0
- package/dist/assets/parameters-bundle.css-bd30ac58.js +2 -0
- package/dist/assets/parameters-bundle.css-d38a0009.js +2 -0
- package/dist/assets/parameters-bundle.css-e591d3a4.js +2 -0
- package/dist/assets/pl-c9e6f97c.js +1 -0
- package/dist/assets/pt-BR-0cdaa4c2.js +1 -0
- package/dist/assets/pt-PT-3b56b10d.js +1 -0
- package/dist/assets/ro-27af0bfa.js +1 -0
- package/dist/assets/ru-7991b04b.js +1 -0
- package/dist/assets/sk-c31445bf.js +1 -0
- package/dist/assets/sl-44a6af7b.js +1 -0
- package/dist/assets/sr-ec351a65.js +1 -0
- package/dist/assets/sv-1176d505.js +1 -0
- package/dist/assets/te-78496f2d.js +1 -0
- package/dist/assets/th-357add84.js +1 -0
- package/dist/assets/tr-e9ba09b2.js +1 -0
- package/dist/assets/uk-82e5b14a.js +1 -0
- package/dist/assets/vi-8fa3e4db.js +1 -0
- package/dist/assets/zh-CN-56d8e9a8.js +1 -0
- package/dist/assets/zh-Hans-7eba8277.js +1 -0
- package/dist/assets/zh-Hant-c17e8907.js +1 -0
- package/dist/assets/zh-TW-52a9fefa.js +1 -0
- package/dist/css/themes/Accordion.css +1 -1
- package/dist/css/themes/AccordionItem.css +1 -1
- package/dist/css/themes/Avatar.css +1 -1
- package/dist/css/themes/Badge.css +1 -1
- 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/ControlButton.css +1 -1
- package/dist/css/themes/CountrySelector.css +1 -1
- package/dist/css/themes/Footer.css +1 -1
- package/dist/css/themes/Link.css +1 -1
- package/dist/css/themes/MastheadCountrySelector.css +1 -0
- package/dist/css/themes/MastheadItem.css +1 -1
- package/dist/css/themes/MastheadMenu.css +1 -1
- package/dist/css/themes/MastheadMenuItem.css +1 -1
- package/dist/css/themes/MastheadMobileMenu.css +1 -1
- package/dist/css/themes/MastheadShell.css +1 -1
- package/dist/css/themes/MediaPlayer.css +1 -1
- package/dist/css/themes/Pagination.css +1 -1
- package/dist/css/themes/PhoneNumberField.css +1 -1
- package/dist/css/themes/ProgressBar.css +1 -1
- package/dist/css/themes/RatingIndicator.css +1 -1
- package/dist/css/themes/Search.css +1 -1
- package/dist/css/themes/SearchSuggestions.css +1 -1
- package/dist/css/themes/SearchableList.css +1 -1
- package/dist/css/themes/SecondaryNavigation.css +1 -1
- package/dist/css/themes/SecondaryNavigationItem.css +1 -1
- package/dist/css/themes/SegmentedButtonItem.css +1 -1
- package/dist/css/themes/SelectBox.css +1 -1
- package/dist/css/themes/Slider.css +1 -1
- package/dist/css/themes/StatusBadge.css +1 -1
- package/dist/css/themes/Tag.css +1 -1
- package/dist/css/themes/TagGroup.css +1 -1
- package/dist/css/themes/TextField.css +1 -1
- package/dist/css/themes/Tile.css +1 -1
- package/dist/css/themes/Upload.css +1 -0
- package/dist/css/themes/UploadItem.css +1 -0
- package/dist/css/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css +1 -1
- package/dist/custom-elements-internal.json +2341 -1173
- package/dist/custom-elements.json +1259 -181
- package/dist/features/SearchSuggestionsPopover.d.ts +3 -16
- package/dist/features/SearchSuggestionsPopover.js +10 -45
- package/dist/features/SearchSuggestionsPopover.js.map +1 -1
- package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
- package/dist/generated/assets/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css.json +1 -1
- package/dist/generated/i18n/i18n-defaults.d.ts +7 -1
- package/dist/generated/i18n/i18n-defaults.js +11 -5
- package/dist/generated/i18n/i18n-defaults.js.map +1 -1
- package/dist/generated/templates/AccordionItemTemplate.lit.js +2 -2
- package/dist/generated/templates/AccordionItemTemplate.lit.js.map +1 -1
- package/dist/generated/templates/AccordionTemplate.lit.js +1 -1
- package/dist/generated/templates/AccordionTemplate.lit.js.map +1 -1
- package/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/CarouselTemplate.lit.js +3 -3
- package/dist/generated/templates/CarouselTemplate.lit.js.map +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/DropdownTemplate.lit.js +1 -1
- package/dist/generated/templates/DropdownTemplate.lit.js.map +1 -1
- package/dist/generated/templates/FooterTemplate.lit.js +1 -1
- package/dist/generated/templates/FooterTemplate.lit.js.map +1 -1
- package/dist/generated/templates/HeroBannerTemplate.lit.js +2 -2
- package/dist/generated/templates/HeroBannerTemplate.lit.js.map +1 -1
- package/dist/generated/templates/LinkTemplate.lit.js +1 -1
- package/dist/generated/templates/LinkTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ListGroupHeaderTemplate.lit.js +1 -1
- package/dist/generated/templates/ListGroupHeaderTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ListItemTemplate.lit.js +20 -16
- package/dist/generated/templates/ListItemTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ListTemplate.lit.js +2 -2
- package/dist/generated/templates/ListTemplate.lit.js.map +1 -1
- package/{config/dist/generated/templates/DropdownListGroupHeaderTemplate.lit.d.ts → dist/generated/templates/MastheadCountrySelectorTemplate.lit.d.ts} +2 -2
- package/dist/generated/templates/MastheadCountrySelectorTemplate.lit.js +10 -0
- package/dist/generated/templates/MastheadCountrySelectorTemplate.lit.js.map +1 -0
- package/dist/generated/templates/MastheadItemTemplate.lit.js +23 -17
- package/dist/generated/templates/MastheadItemTemplate.lit.js.map +1 -1
- package/dist/generated/templates/MastheadMenuItemTemplate.lit.js +7 -7
- package/dist/generated/templates/MastheadMenuItemTemplate.lit.js.map +1 -1
- package/dist/generated/templates/MastheadMenuTemplate.lit.js +3 -1
- package/dist/generated/templates/MastheadMenuTemplate.lit.js.map +1 -1
- package/dist/generated/templates/MastheadMobileMenuTemplate.lit.js +7 -6
- package/dist/generated/templates/MastheadMobileMenuTemplate.lit.js.map +1 -1
- package/dist/generated/templates/MastheadProfileMenuTemplate.lit.js +2 -2
- package/dist/generated/templates/MastheadProfileMenuTemplate.lit.js.map +1 -1
- package/dist/generated/templates/MastheadShellTemplate.lit.js +5 -4
- package/dist/generated/templates/MastheadShellTemplate.lit.js.map +1 -1
- package/dist/generated/templates/MediaPlayerTemplate.lit.js +4 -4
- package/dist/generated/templates/MediaPlayerTemplate.lit.js.map +1 -1
- package/dist/generated/templates/MessageStripTemplate.lit.js +2 -2
- package/dist/generated/templates/MessageStripTemplate.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/PhoneNumberFieldTemplate.lit.js +2 -2
- package/dist/generated/templates/PhoneNumberFieldTemplate.lit.js.map +1 -1
- package/dist/generated/templates/SearchSuggestionsTemplate.lit.js +3 -3
- package/dist/generated/templates/SearchSuggestionsTemplate.lit.js.map +1 -1
- package/dist/generated/templates/SearchTemplate.lit.js +11 -9
- package/dist/generated/templates/SearchTemplate.lit.js.map +1 -1
- package/dist/generated/templates/SearchableListBaseTemplate.lit.js +10 -8
- package/dist/generated/templates/SearchableListBaseTemplate.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/SecondaryNavigationSubItemTemplate.lit.js +2 -2
- package/dist/generated/templates/SecondaryNavigationSubItemTemplate.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/SelectBoxTemplate.lit.js +3 -3
- package/dist/generated/templates/SelectBoxTemplate.lit.js.map +1 -1
- package/dist/generated/templates/StepInputTemplate.lit.js +1 -1
- package/dist/generated/templates/StepInputTemplate.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/templates/TextFieldTemplate.lit.js +2 -2
- package/dist/generated/templates/TextFieldTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TileTemplate.lit.js +3 -3
- package/dist/generated/templates/TileTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ToastTemplate.lit.js +1 -1
- package/dist/generated/templates/ToastTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TooltipTemplate.lit.js +1 -1
- package/dist/generated/templates/TooltipTemplate.lit.js.map +1 -1
- package/{config/dist/generated/templates/DatePickerTemplate.lit.d.ts → dist/generated/templates/UploadItemTemplate.lit.d.ts} +2 -2
- package/dist/generated/templates/UploadItemTemplate.lit.js +10 -0
- package/dist/generated/templates/UploadItemTemplate.lit.js.map +1 -0
- package/{config/dist/generated/templates/FooterTemplate.lit.d.ts → dist/generated/templates/UploadTemplate.lit.d.ts} +2 -2
- package/dist/generated/templates/UploadTemplate.lit.js +8 -0
- package/dist/generated/templates/UploadTemplate.lit.js.map +1 -0
- package/dist/generated/templates/WizardTemplate.lit.js +1 -1
- package/dist/generated/templates/WizardTemplate.lit.js.map +1 -1
- package/dist/generated/themes/Accordion.css.js +1 -1
- package/dist/generated/themes/Accordion.css.js.map +1 -1
- package/dist/generated/themes/AccordionItem.css.js +1 -1
- package/dist/generated/themes/AccordionItem.css.js.map +1 -1
- package/dist/generated/themes/Avatar.css.js +1 -1
- package/dist/generated/themes/Avatar.css.js.map +1 -1
- package/dist/generated/themes/Badge.css.js +1 -1
- package/dist/generated/themes/Badge.css.js.map +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.js +1 -1
- package/dist/generated/themes/Button.css.js.map +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/ControlButton.css.js +1 -1
- package/dist/generated/themes/ControlButton.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/Footer.css.js +1 -1
- package/dist/generated/themes/Footer.css.js.map +1 -1
- package/dist/generated/themes/Link.css.js +1 -1
- package/dist/generated/themes/Link.css.js.map +1 -1
- package/dist/generated/themes/MastheadCountrySelector.css.js +9 -0
- package/dist/generated/themes/MastheadCountrySelector.css.js.map +1 -0
- package/dist/generated/themes/MastheadItem.css.js +1 -1
- package/dist/generated/themes/MastheadItem.css.js.map +1 -1
- package/dist/generated/themes/MastheadMenu.css.js +1 -1
- package/dist/generated/themes/MastheadMenu.css.js.map +1 -1
- package/dist/generated/themes/MastheadMenuItem.css.js +1 -1
- package/dist/generated/themes/MastheadMenuItem.css.js.map +1 -1
- package/dist/generated/themes/MastheadMobileMenu.css.js +1 -1
- package/dist/generated/themes/MastheadMobileMenu.css.js.map +1 -1
- package/dist/generated/themes/MastheadShell.css.js +1 -1
- package/dist/generated/themes/MastheadShell.css.js.map +1 -1
- package/dist/generated/themes/MediaPlayer.css.js +1 -1
- package/dist/generated/themes/MediaPlayer.css.js.map +1 -1
- package/dist/generated/themes/Pagination.css.js +1 -1
- package/dist/generated/themes/Pagination.css.js.map +1 -1
- package/dist/generated/themes/PhoneNumberField.css.js +1 -1
- package/dist/generated/themes/PhoneNumberField.css.js.map +1 -1
- package/dist/generated/themes/ProgressBar.css.js +1 -1
- package/dist/generated/themes/ProgressBar.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/SearchSuggestions.css.js +1 -1
- package/dist/generated/themes/SearchSuggestions.css.js.map +1 -1
- package/dist/generated/themes/SearchableList.css.js +1 -1
- package/dist/generated/themes/SearchableList.css.js.map +1 -1
- package/dist/generated/themes/SecondaryNavigation.css.js +1 -1
- package/dist/generated/themes/SecondaryNavigation.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/SegmentedButtonItem.css.js +1 -1
- package/dist/generated/themes/SegmentedButtonItem.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/StatusBadge.css.js +1 -1
- package/dist/generated/themes/StatusBadge.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/TextField.css.js +1 -1
- package/dist/generated/themes/TextField.css.js.map +1 -1
- package/dist/generated/themes/Tile.css.js +1 -1
- package/dist/generated/themes/Tile.css.js.map +1 -1
- package/dist/generated/themes/Upload.css.js +9 -0
- package/dist/generated/themes/Upload.css.js.map +1 -0
- package/dist/generated/themes/UploadItem.css.js +9 -0
- package/dist/generated/themes/UploadItem.css.js.map +1 -0
- 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/i18n/messagebundle.properties +16 -4
- package/dist/i18n/messagebundle_en.properties +10 -4
- package/dist/mediaPlayerLanguageMapping.d.ts +3506 -0
- package/dist/mediaPlayerLanguageMapping.js +114 -0
- package/dist/mediaPlayerLanguageMapping.js.map +1 -0
- package/dist/types/BadgeDesign.js +1 -1
- package/dist/types/BadgeDesign.js.map +1 -1
- 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/FileData.d.ts +5 -0
- package/dist/types/FileData.js +2 -0
- package/dist/types/FileData.js.map +1 -0
- package/dist/types/FileUploadState.d.ts +6 -0
- package/dist/types/FileUploadState.js +8 -0
- package/dist/types/FileUploadState.js.map +1 -0
- package/dist/types/List.d.ts +0 -8
- package/dist/types/List.js.map +1 -1
- package/dist/types/MessageStrip.d.ts +12 -0
- package/dist/types/MessageStrip.js +15 -0
- package/dist/types/MessageStrip.js.map +1 -0
- package/dist/types/common.d.ts +6 -0
- package/dist/types/common.js +7 -0
- package/dist/types/common.js.map +1 -1
- package/dist/utils/Breakpoints.d.ts +33 -0
- package/dist/utils/Breakpoints.js +33 -0
- package/dist/utils/Breakpoints.js.map +1 -0
- package/dist/utils/ListWithFirstLetterFocus.d.ts +21 -0
- package/dist/utils/ListWithFirstLetterFocus.js +46 -0
- package/dist/utils/ListWithFirstLetterFocus.js.map +1 -0
- package/dist/utils/convertBytesToMegabytes.d.ts +2 -0
- package/dist/utils/convertBytesToMegabytes.js +3 -0
- package/dist/utils/convertBytesToMegabytes.js.map +1 -0
- package/dist/utils/parseRelativeUnits.d.ts +4 -0
- package/dist/utils/parseRelativeUnits.js +26 -0
- package/dist/utils/parseRelativeUnits.js.map +1 -0
- package/dist/vscode.html-custom-data.json +289 -90
- package/dist/web-types.json +579 -125
- package/package.json +8 -8
- package/src/Accordion.hbs +20 -23
- package/src/Accordion.ts +18 -36
- package/src/AccordionItem.hbs +35 -32
- package/src/AccordionItem.ts +19 -58
- package/src/Avatar.ts +7 -3
- package/src/AvatarGroup.ts +1 -1
- package/src/Badge.ts +8 -8
- package/src/Breadcrumbs.ts +19 -2
- package/src/BreadcrumbsItem.ts +1 -1
- package/src/BreadcrumbsPopover.hbs +1 -1
- package/src/Button.ts +5 -2
- package/src/Carousel.hbs +8 -8
- package/src/Carousel.ts +1 -1
- package/src/Checkbox.ts +1 -1
- package/src/ControlButton.ts +30 -9
- package/src/CountrySelector.hbs +1 -2
- package/src/CountrySelector.ts +13 -47
- package/src/DatePicker.ts +7 -3
- package/src/Dropdown.hbs +4 -4
- package/src/Dropdown.ts +2 -2
- package/src/FilterMenu.ts +3 -1
- package/src/FilterMenuGroupHeader.ts +1 -1
- package/src/FilterMenuItem.ts +1 -1
- package/src/FilterMenuSelectAll.ts +1 -1
- package/src/Footer.hbs +6 -2
- package/src/Footer.ts +7 -12
- package/src/HeroBanner.hbs +4 -4
- package/src/HeroBanner.ts +19 -4
- package/src/InputGroup.ts +2 -2
- package/src/Link.hbs +7 -7
- package/src/Link.ts +18 -6
- package/src/List.hbs +4 -2
- package/src/List.ts +24 -64
- package/src/ListGroupHeader.hbs +1 -0
- package/src/ListGroupHeader.ts +5 -3
- package/src/ListGroupHeaderBase.ts +12 -11
- package/src/ListItem.hbs +7 -1
- package/src/ListItem.ts +47 -36
- package/src/ListItemBase.ts +10 -10
- package/src/ListSelectAll.ts +7 -7
- package/src/MastheadCountrySelector.hbs +67 -0
- package/src/MastheadCountrySelector.ts +500 -0
- package/src/MastheadItem.hbs +18 -15
- package/src/MastheadItem.ts +58 -28
- package/src/MastheadMenu.hbs +11 -7
- package/src/MastheadMenu.ts +3 -2
- package/src/MastheadMenuItem.hbs +13 -10
- package/src/MastheadMenuItem.ts +47 -14
- package/src/MastheadMobileMenu.hbs +17 -11
- package/src/MastheadMobileMenu.ts +98 -41
- package/src/MastheadProfileMenu.hbs +2 -2
- package/src/MastheadProfileMenu.ts +3 -3
- package/src/MastheadShell.hbs +12 -3
- package/src/MastheadShell.ts +138 -53
- package/src/MediaPlayer.hbs +35 -29
- package/src/MediaPlayer.ts +12 -6
- package/src/MediaPlayerVimeo.ts +1 -1
- package/src/MediaPlayerYoutube.ts +1 -1
- package/src/MessageStrip.hbs +2 -2
- package/src/MessageStrip.ts +39 -69
- package/src/Pagination.ts +4 -8
- package/src/PasswordField.hbs +2 -2
- package/src/PasswordField.ts +2 -2
- package/src/PhoneNumberField.hbs +4 -3
- package/src/PhoneNumberField.ts +15 -6
- package/src/ProgressBar.ts +1 -1
- package/src/RadioButton.ts +1 -1
- package/src/RangeSlider.ts +1 -1
- package/src/RatingBar.ts +2 -2
- package/src/RatingIndicator.ts +1 -1
- package/src/Review.ts +2 -2
- package/src/ReviewItem.ts +2 -2
- package/src/Search.hbs +52 -20
- package/src/Search.ts +41 -10
- package/src/SearchSuggestions.hbs +3 -0
- package/src/SearchableListBase.hbs +7 -0
- package/src/SearchableListBase.ts +30 -2
- package/src/SecondaryNavigation.hbs +1 -0
- package/src/SecondaryNavigation.ts +12 -5
- package/src/SecondaryNavigationItem.hbs +2 -1
- package/src/SecondaryNavigationItem.ts +44 -6
- package/src/SecondaryNavigationItemBase.ts +7 -9
- package/src/SecondaryNavigationSubItem.hbs +4 -2
- package/src/SecondaryNavigationSubItem.ts +2 -11
- package/src/SegmentedButton.ts +6 -5
- package/src/SegmentedButtonItem.ts +4 -9
- package/src/SelectBox.hbs +37 -36
- package/src/SelectBox.ts +30 -6
- package/src/SelectBoxGroupHeader.ts +1 -1
- package/src/SelectBoxItem.ts +1 -1
- package/src/SelectBoxSelectAll.ts +1 -1
- package/src/SideNavigation.ts +1 -1
- package/src/SideNavigationGroup.ts +1 -1
- package/src/SideNavigationItem.ts +1 -1
- package/src/SideNavigationMobile.ts +1 -1
- package/src/SideNavigationSubItem.ts +1 -1
- package/src/Slider.ts +1 -1
- package/src/StatusBadge.ts +2 -2
- package/src/StatusMessage.ts +1 -1
- package/src/StepInput.hbs +1 -1
- package/src/StepInput.ts +13 -20
- package/src/Switch.ts +1 -1
- package/src/Tab.ts +3 -10
- package/src/TabNavigation.ts +2 -2
- package/src/Table.ts +2 -2
- package/src/TableCell.ts +1 -1
- package/src/TableGroupRow.ts +1 -1
- package/src/TableHeaderCell.ts +1 -1
- package/src/TableHeaderRow.ts +1 -1
- package/src/TableRow.ts +1 -1
- package/src/Tag.ts +22 -1
- package/src/TagGroup.hbs +20 -20
- package/src/TagGroup.ts +1 -1
- package/src/TextArea.ts +1 -1
- package/src/TextField.hbs +2 -2
- package/src/TextField.ts +7 -13
- package/src/Tile.hbs +9 -6
- package/src/Toast.hbs +1 -1
- package/src/Toast.ts +1 -1
- package/src/Tooltip.hbs +3 -3
- package/src/Tooltip.ts +1 -1
- package/src/TruncatedText.ts +1 -1
- package/src/Upload.hbs +21 -0
- package/src/Upload.ts +354 -0
- package/src/UploadItem.hbs +32 -0
- package/src/UploadItem.ts +218 -0
- package/src/Wizard.hbs +1 -1
- package/src/Wizard.ts +1 -1
- package/src/WizardStep.ts +1 -1
- package/src/WizardTab.ts +1 -1
- package/src/features/SearchSuggestionsPopover.ts +11 -63
- package/src/generated/i18n/i18n-defaults.ts +2 -2
- package/src/generated/templates/AccordionItemTemplate.lit.ts +2 -2
- package/src/generated/templates/AccordionTemplate.lit.ts +1 -1
- package/src/generated/templates/BreadcrumbsPopoverTemplate.lit.ts +1 -1
- package/src/generated/templates/CarouselTemplate.lit.ts +3 -3
- package/src/generated/templates/CountrySelectorTemplate.lit.ts +1 -1
- package/src/generated/templates/DropdownTemplate.lit.ts +1 -1
- package/src/generated/templates/FooterTemplate.lit.ts +1 -1
- package/src/generated/templates/HeroBannerTemplate.lit.ts +2 -2
- package/src/generated/templates/LinkTemplate.lit.ts +1 -1
- package/src/generated/templates/ListGroupHeaderTemplate.lit.ts +1 -1
- package/src/generated/templates/ListItemTemplate.lit.ts +20 -16
- package/src/generated/templates/ListTemplate.lit.ts +2 -2
- package/src/generated/templates/MastheadCountrySelectorTemplate.lit.ts +15 -0
- package/src/generated/templates/MastheadItemTemplate.lit.ts +23 -17
- package/src/generated/templates/MastheadMenuItemTemplate.lit.ts +7 -7
- package/src/generated/templates/MastheadMenuTemplate.lit.ts +3 -1
- package/src/generated/templates/MastheadMobileMenuTemplate.lit.ts +7 -6
- package/src/generated/templates/MastheadProfileMenuTemplate.lit.ts +2 -2
- package/src/generated/templates/MastheadShellTemplate.lit.ts +5 -4
- package/src/generated/templates/MediaPlayerTemplate.lit.ts +4 -4
- package/src/generated/templates/MessageStripTemplate.lit.ts +2 -2
- package/src/generated/templates/PasswordFieldTemplate.lit.ts +1 -1
- package/src/generated/templates/PhoneNumberFieldTemplate.lit.ts +2 -2
- package/src/generated/templates/SearchSuggestionsTemplate.lit.ts +3 -3
- package/src/generated/templates/SearchTemplate.lit.ts +11 -9
- package/src/generated/templates/SearchableListBaseTemplate.lit.ts +10 -8
- package/src/generated/templates/SecondaryNavigationItemTemplate.lit.ts +2 -2
- package/src/generated/templates/SecondaryNavigationSubItemTemplate.lit.ts +2 -2
- package/src/generated/templates/SecondaryNavigationTemplate.lit.ts +1 -1
- package/src/generated/templates/SelectBoxTemplate.lit.ts +3 -3
- package/src/generated/templates/StepInputTemplate.lit.ts +1 -1
- package/src/generated/templates/TagGroupTemplate.lit.ts +2 -2
- package/src/generated/templates/TextFieldTemplate.lit.ts +2 -2
- package/src/generated/templates/TileTemplate.lit.ts +3 -3
- package/src/generated/templates/ToastTemplate.lit.ts +1 -1
- package/src/generated/templates/TooltipTemplate.lit.ts +1 -1
- package/src/generated/templates/UploadItemTemplate.lit.ts +15 -0
- package/src/generated/templates/UploadTemplate.lit.ts +13 -0
- package/src/generated/templates/WizardTemplate.lit.ts +1 -1
- package/src/generated/themes/Accordion.css.ts +1 -1
- package/src/generated/themes/AccordionItem.css.ts +1 -1
- package/src/generated/themes/Avatar.css.ts +1 -1
- package/src/generated/themes/Badge.css.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/ControlButton.css.ts +1 -1
- package/src/generated/themes/CountrySelector.css.ts +1 -1
- package/src/generated/themes/Footer.css.ts +1 -1
- package/src/generated/themes/Link.css.ts +1 -1
- package/src/generated/themes/MastheadCountrySelector.css.ts +13 -0
- package/src/generated/themes/MastheadItem.css.ts +1 -1
- package/src/generated/themes/MastheadMenu.css.ts +1 -1
- package/src/generated/themes/MastheadMenuItem.css.ts +1 -1
- package/src/generated/themes/MastheadMobileMenu.css.ts +1 -1
- package/src/generated/themes/MastheadShell.css.ts +1 -1
- package/src/generated/themes/MediaPlayer.css.ts +1 -1
- package/src/generated/themes/Pagination.css.ts +1 -1
- package/src/generated/themes/PhoneNumberField.css.ts +1 -1
- package/src/generated/themes/ProgressBar.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/SearchSuggestions.css.ts +1 -1
- package/src/generated/themes/SearchableList.css.ts +1 -1
- package/src/generated/themes/SecondaryNavigation.css.ts +1 -1
- package/src/generated/themes/SecondaryNavigationItem.css.ts +1 -1
- package/src/generated/themes/SegmentedButtonItem.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/StatusBadge.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/TextField.css.ts +1 -1
- package/src/generated/themes/Tile.css.ts +1 -1
- package/src/generated/themes/Upload.css.ts +13 -0
- package/src/generated/themes/UploadItem.css.ts +13 -0
- package/src/generated/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css.ts +1 -1
- package/src/i18n/messagebundle.properties +16 -4
- package/src/i18n/messagebundle_en.properties +10 -4
- package/src/mediaPlayerLanguageMapping.ts +114 -0
- package/src/themes/Accordion.css +0 -6
- package/src/themes/AccordionItem.css +17 -10
- package/src/themes/Avatar.css +45 -46
- package/src/themes/Badge.css +14 -14
- package/src/themes/Breadcrumbs.css +1 -1
- package/src/themes/Button.css +16 -17
- package/src/themes/Checkbox.css +16 -10
- package/src/themes/ControlButton.css +20 -8
- package/src/themes/CountrySelector.css +1 -0
- package/src/themes/Footer.css +25 -23
- package/src/themes/Link.css +44 -8
- package/src/themes/MastheadCountrySelector.css +110 -0
- package/src/themes/MastheadItem.css +45 -24
- package/src/themes/MastheadMenu.css +6 -0
- package/src/themes/MastheadMenuItem.css +5 -4
- package/src/themes/MastheadMobileMenu.css +3 -1
- package/src/themes/MastheadShell.css +5 -9
- package/src/themes/MediaPlayer.css +42 -2
- package/src/themes/Pagination.css +1 -1
- package/src/themes/PhoneNumberField.css +7 -4
- package/src/themes/ProgressBar.css +5 -4
- package/src/themes/Search.css +46 -27
- package/src/themes/SearchSuggestions.css +3 -6
- package/src/themes/SearchableList.css +10 -0
- package/src/themes/SecondaryNavigation.css +5 -1
- package/src/themes/SecondaryNavigationItem.css +6 -1
- package/src/themes/SegmentedButtonItem.css +10 -2
- package/src/themes/SelectBox.css +28 -8
- package/src/themes/StatusBadge.css +9 -9
- package/src/themes/Tag.css +4 -2
- package/src/themes/TagGroup.css +0 -4
- package/src/themes/TextField.css +2 -1
- package/src/themes/Tile.css +4 -0
- package/src/themes/Upload.css +65 -0
- package/src/themes/UploadItem.css +131 -0
- package/src/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css +3 -8
- package/src/types/BadgeDesign.ts +1 -1
- package/src/types/ButtonSize.ts +7 -0
- package/src/types/FileData.ts +6 -0
- package/src/types/FileUploadState.ts +7 -0
- package/src/types/List.ts +0 -9
- package/src/types/MessageStrip.ts +13 -0
- package/src/types/common.ts +7 -0
- package/src/utils/Breakpoints.ts +41 -0
- package/src/utils/ListWithFirstLetterFocus.ts +66 -0
- package/src/utils/convertBytesToMegabytes.ts +3 -0
- package/src/utils/parseRelativeUnits.ts +32 -0
- package/config/dist/Accordion.d.ts +0 -76
- package/config/dist/Accordion.js +0 -179
- package/config/dist/Accordion.js.map +0 -1
- package/config/dist/AccordionItem.d.ts +0 -72
- package/config/dist/AccordionItem.js +0 -146
- package/config/dist/AccordionItem.js.map +0 -1
- package/config/dist/Assets.d.ts +0 -3
- package/config/dist/Assets.js +0 -10
- package/config/dist/Assets.js.map +0 -1
- package/config/dist/Avatar.d.ts +0 -128
- package/config/dist/Avatar.js +0 -118
- package/config/dist/Avatar.js.map +0 -1
- package/config/dist/Badge.d.ts +0 -78
- package/config/dist/Badge.js +0 -103
- package/config/dist/Badge.js.map +0 -1
- package/config/dist/Breadcrumbs.d.ts +0 -97
- package/config/dist/Breadcrumbs.js +0 -240
- package/config/dist/Breadcrumbs.js.map +0 -1
- package/config/dist/BreadcrumbsItem.d.ts +0 -28
- package/config/dist/BreadcrumbsItem.js +0 -42
- package/config/dist/BreadcrumbsItem.js.map +0 -1
- package/config/dist/Button.d.ts +0 -133
- package/config/dist/Button.js +0 -99
- package/config/dist/Button.js.map +0 -1
- package/config/dist/Calendar.d.ts +0 -21
- package/config/dist/Calendar.js +0 -42
- package/config/dist/Calendar.js.map +0 -1
- package/config/dist/Carousel.d.ts +0 -76
- package/config/dist/Carousel.js +0 -125
- package/config/dist/Carousel.js.map +0 -1
- package/config/dist/Checkbox.d.ts +0 -24
- package/config/dist/Checkbox.js +0 -45
- package/config/dist/Checkbox.js.map +0 -1
- package/config/dist/DatePicker.d.ts +0 -123
- package/config/dist/DatePicker.js +0 -175
- package/config/dist/DatePicker.js.map +0 -1
- package/config/dist/Divider.d.ts +0 -17
- package/config/dist/Divider.js +0 -39
- package/config/dist/Divider.js.map +0 -1
- package/config/dist/Dropdown.d.ts +0 -125
- package/config/dist/Dropdown.js +0 -201
- package/config/dist/Dropdown.js.map +0 -1
- package/config/dist/DropdownGroupHeaderBase.d.ts +0 -33
- package/config/dist/DropdownGroupHeaderBase.js +0 -133
- package/config/dist/DropdownGroupHeaderBase.js.map +0 -1
- package/config/dist/DropdownList.d.ts +0 -127
- package/config/dist/DropdownList.js +0 -243
- package/config/dist/DropdownList.js.map +0 -1
- package/config/dist/DropdownListGroupHeader.d.ts +0 -49
- package/config/dist/DropdownListGroupHeader.js +0 -97
- package/config/dist/DropdownListGroupHeader.js.map +0 -1
- package/config/dist/DropdownListItem.d.ts +0 -68
- package/config/dist/DropdownListItem.js +0 -176
- package/config/dist/DropdownListItem.js.map +0 -1
- package/config/dist/DropdownListItemBase.d.ts +0 -99
- package/config/dist/DropdownListItemBase.js +0 -69
- package/config/dist/DropdownListItemBase.js.map +0 -1
- package/config/dist/FilterMenu.d.ts +0 -143
- package/config/dist/FilterMenu.js +0 -299
- package/config/dist/FilterMenu.js.map +0 -1
- package/config/dist/FilterMenuGroupHeader.d.ts +0 -40
- package/config/dist/FilterMenuGroupHeader.js +0 -51
- package/config/dist/FilterMenuGroupHeader.js.map +0 -1
- package/config/dist/FilterMenuItem.d.ts +0 -31
- package/config/dist/FilterMenuItem.js +0 -47
- package/config/dist/FilterMenuItem.js.map +0 -1
- package/config/dist/Footer.d.ts +0 -111
- package/config/dist/Footer.js +0 -99
- package/config/dist/Footer.js.map +0 -1
- package/config/dist/HeroBanner.d.ts +0 -86
- package/config/dist/HeroBanner.js +0 -74
- package/config/dist/HeroBanner.js.map +0 -1
- package/config/dist/Link.d.ts +0 -48
- package/config/dist/Link.js +0 -68
- package/config/dist/Link.js.map +0 -1
- package/config/dist/MediaPlayer.d.ts +0 -98
- package/config/dist/MediaPlayer.js +0 -105
- package/config/dist/MediaPlayer.js.map +0 -1
- package/config/dist/MessageStrip.d.ts +0 -100
- package/config/dist/MessageStrip.js +0 -145
- package/config/dist/MessageStrip.js.map +0 -1
- package/config/dist/Modal.d.ts +0 -70
- package/config/dist/Modal.js +0 -73
- package/config/dist/Modal.js.map +0 -1
- package/config/dist/Pagination.d.ts +0 -107
- package/config/dist/Pagination.js +0 -272
- package/config/dist/Pagination.js.map +0 -1
- package/config/dist/PasswordField.d.ts +0 -155
- package/config/dist/PasswordField.js +0 -105
- package/config/dist/PasswordField.js.map +0 -1
- package/config/dist/PhoneNumberField.d.ts +0 -176
- package/config/dist/PhoneNumberField.js +0 -270
- package/config/dist/PhoneNumberField.js.map +0 -1
- package/config/dist/ProgressBar.d.ts +0 -25
- package/config/dist/ProgressBar.js +0 -50
- package/config/dist/ProgressBar.js.map +0 -1
- package/config/dist/Quote.d.ts +0 -81
- package/config/dist/Quote.js +0 -72
- package/config/dist/Quote.js.map +0 -1
- package/config/dist/RadioButton.d.ts +0 -30
- package/config/dist/RadioButton.js +0 -49
- package/config/dist/RadioButton.js.map +0 -1
- package/config/dist/RangeSlider.d.ts +0 -21
- package/config/dist/RangeSlider.js +0 -43
- package/config/dist/RangeSlider.js.map +0 -1
- package/config/dist/RatingIndicator.d.ts +0 -127
- package/config/dist/RatingIndicator.js +0 -217
- package/config/dist/RatingIndicator.js.map +0 -1
- package/config/dist/Search.d.ts +0 -236
- package/config/dist/Search.js +0 -450
- package/config/dist/Search.js.map +0 -1
- package/config/dist/SearchableListBase.d.ts +0 -101
- package/config/dist/SearchableListBase.js +0 -237
- package/config/dist/SearchableListBase.js.map +0 -1
- package/config/dist/Slider.d.ts +0 -21
- package/config/dist/Slider.js +0 -42
- package/config/dist/Slider.js.map +0 -1
- package/config/dist/Switch.d.ts +0 -65
- package/config/dist/Switch.js +0 -83
- package/config/dist/Switch.js.map +0 -1
- package/config/dist/Tab.d.ts +0 -159
- package/config/dist/Tab.js +0 -157
- package/config/dist/Tab.js.map +0 -1
- package/config/dist/TabNavigation.d.ts +0 -175
- package/config/dist/TabNavigation.js +0 -650
- package/config/dist/TabNavigation.js.map +0 -1
- package/config/dist/Tag.d.ts +0 -104
- package/config/dist/Tag.js +0 -141
- package/config/dist/Tag.js.map +0 -1
- package/config/dist/TextArea.d.ts +0 -191
- package/config/dist/TextArea.js +0 -182
- package/config/dist/TextArea.js.map +0 -1
- package/config/dist/TextField.d.ts +0 -178
- package/config/dist/TextField.js +0 -139
- package/config/dist/TextField.js.map +0 -1
- package/config/dist/Tile.d.ts +0 -82
- package/config/dist/Tile.js +0 -64
- package/config/dist/Tile.js.map +0 -1
- package/config/dist/Toast.d.ts +0 -65
- package/config/dist/Toast.js +0 -129
- package/config/dist/Toast.js.map +0 -1
- package/config/dist/Tooltip.d.ts +0 -68
- package/config/dist/Tooltip.js +0 -79
- package/config/dist/Tooltip.js.map +0 -1
- package/config/dist/TruncatedText.d.ts +0 -62
- package/config/dist/TruncatedText.js +0 -96
- package/config/dist/TruncatedText.js.map +0 -1
- package/config/dist/Wizard.d.ts +0 -32
- package/config/dist/Wizard.js +0 -167
- package/config/dist/Wizard.js.map +0 -1
- package/config/dist/WizardStep.d.ts +0 -30
- package/config/dist/WizardStep.js +0 -44
- package/config/dist/WizardStep.js.map +0 -1
- package/config/dist/WizardTab.d.ts +0 -38
- package/config/dist/WizardTab.js +0 -56
- package/config/dist/WizardTab.js.map +0 -1
- package/config/dist/css/themes/Accordion.css +0 -1
- package/config/dist/css/themes/AccordionItem.css +0 -1
- package/config/dist/css/themes/Avatar.css +0 -1
- package/config/dist/css/themes/Badge.css +0 -1
- package/config/dist/css/themes/Breadcrumbs.css +0 -1
- package/config/dist/css/themes/BreadcrumbsPopover.css +0 -1
- package/config/dist/css/themes/Button.css +0 -1
- package/config/dist/css/themes/Calendar.css +0 -0
- package/config/dist/css/themes/Carousel.css +0 -1
- package/config/dist/css/themes/Checkbox.css +0 -1
- package/config/dist/css/themes/DatePicker.css +0 -1
- package/config/dist/css/themes/Divider.css +0 -1
- package/config/dist/css/themes/Dropdown.css +0 -1
- package/config/dist/css/themes/DropdownList.css +0 -1
- package/config/dist/css/themes/DropdownListGroupHeader.css +0 -1
- package/config/dist/css/themes/DropdownListItem.css +0 -1
- package/config/dist/css/themes/FilterMenu.css +0 -1
- package/config/dist/css/themes/Footer.css +0 -1
- package/config/dist/css/themes/HeroBanner.css +0 -1
- package/config/dist/css/themes/Link.css +0 -1
- package/config/dist/css/themes/MediaPlayer.css +0 -1
- package/config/dist/css/themes/MessageStrip.css +0 -1
- package/config/dist/css/themes/Modal.css +0 -1
- package/config/dist/css/themes/Pagination.css +0 -1
- package/config/dist/css/themes/PasswordField.css +0 -1
- package/config/dist/css/themes/PhoneNumberField.css +0 -1
- package/config/dist/css/themes/ProgressBar.css +0 -1
- package/config/dist/css/themes/Quote.css +0 -1
- package/config/dist/css/themes/RadioButton.css +0 -1
- package/config/dist/css/themes/RatingIndicator.css +0 -1
- package/config/dist/css/themes/Search.css +0 -1
- package/config/dist/css/themes/SearchSuggestions.css +0 -1
- package/config/dist/css/themes/Slider.css +0 -1
- package/config/dist/css/themes/Switch.css +0 -1
- package/config/dist/css/themes/TabInOverflow.css +0 -1
- package/config/dist/css/themes/TabNavigation.css +0 -1
- package/config/dist/css/themes/Tag.css +0 -1
- package/config/dist/css/themes/TextArea.css +0 -1
- package/config/dist/css/themes/TextField.css +0 -1
- package/config/dist/css/themes/Tile.css +0 -1
- package/config/dist/css/themes/Toast.css +0 -1
- package/config/dist/css/themes/Tooltip.css +0 -1
- package/config/dist/css/themes/TruncatedText.css +0 -1
- package/config/dist/css/themes/Wizard.css +0 -1
- package/config/dist/css/themes/WizardTab.css +0 -1
- package/config/dist/css/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css +0 -1
- package/config/dist/css/themes/sap_fiori_3/parameters-bundle.css +0 -0
- package/config/dist/css/themes/sap_glow/parameters-bundle.css +0 -0
- package/config/dist/css/themes/sap_horizon/parameters-bundle.css +0 -0
- package/config/dist/custom-elements-internal.json +0 -5515
- package/config/dist/custom-elements.json +0 -5067
- package/config/dist/data/CountriesListPhoneNumber.d.ts +0 -12
- package/config/dist/data/CountriesListPhoneNumber.js +0 -53
- package/config/dist/data/CountriesListPhoneNumber.js.map +0 -1
- package/config/dist/features/SearchSuggestionsPopover.d.ts +0 -42
- package/config/dist/features/SearchSuggestionsPopover.js +0 -117
- package/config/dist/features/SearchSuggestionsPopover.js.map +0 -1
- package/config/dist/generated/assets/i18n/messagebundle_de.json +0 -1
- package/config/dist/generated/assets/i18n/messagebundle_en.json +0 -1
- package/config/dist/generated/assets/i18n/messagebundle_es.json +0 -1
- package/config/dist/generated/assets/i18n/messagebundle_fr.json +0 -1
- package/config/dist/generated/assets/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css.json +0 -1
- package/config/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +0 -1
- package/config/dist/generated/assets/themes/sap_glow/parameters-bundle.css.json +0 -1
- package/config/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +0 -1
- package/config/dist/generated/i18n/i18n-defaults.d.ts +0 -30
- package/config/dist/generated/i18n/i18n-defaults.js +0 -30
- package/config/dist/generated/i18n/i18n-defaults.js.map +0 -1
- package/config/dist/generated/json-imports/Themes-static.d.ts +0 -1
- package/config/dist/generated/json-imports/Themes-static.js +0 -19
- package/config/dist/generated/json-imports/Themes-static.js.map +0 -1
- package/config/dist/generated/json-imports/Themes.d.ts +0 -1
- package/config/dist/generated/json-imports/Themes.js +0 -19
- package/config/dist/generated/json-imports/Themes.js.map +0 -1
- package/config/dist/generated/json-imports/i18n-static.d.ts +0 -1
- package/config/dist/generated/json-imports/i18n-static.js +0 -27
- package/config/dist/generated/json-imports/i18n-static.js.map +0 -1
- package/config/dist/generated/json-imports/i18n.d.ts +0 -1
- package/config/dist/generated/json-imports/i18n.js +0 -26
- package/config/dist/generated/json-imports/i18n.js.map +0 -1
- package/config/dist/generated/templates/AccordionItemTemplate.lit.d.ts +0 -4
- package/config/dist/generated/templates/AccordionItemTemplate.lit.js +0 -5
- package/config/dist/generated/templates/AccordionItemTemplate.lit.js.map +0 -1
- package/config/dist/generated/templates/AccordionTemplate.lit.d.ts +0 -4
- package/config/dist/generated/templates/AccordionTemplate.lit.js +0 -6
- package/config/dist/generated/templates/AccordionTemplate.lit.js.map +0 -1
- package/config/dist/generated/templates/AvatarTemplate.lit.d.ts +0 -4
- package/config/dist/generated/templates/AvatarTemplate.lit.js +0 -7
- package/config/dist/generated/templates/AvatarTemplate.lit.js.map +0 -1
- package/config/dist/generated/templates/BadgeTemplate.lit.d.ts +0 -4
- package/config/dist/generated/templates/BadgeTemplate.lit.js +0 -7
- package/config/dist/generated/templates/BadgeTemplate.lit.js.map +0 -1
- package/config/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.d.ts +0 -4
- package/config/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.js +0 -10
- package/config/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.js.map +0 -1
- package/config/dist/generated/templates/BreadcrumbsTemplate.lit.d.ts +0 -4
- package/config/dist/generated/templates/BreadcrumbsTemplate.lit.js +0 -7
- package/config/dist/generated/templates/BreadcrumbsTemplate.lit.js.map +0 -1
- package/config/dist/generated/templates/ButtonTemplate.lit.d.ts +0 -4
- package/config/dist/generated/templates/ButtonTemplate.lit.js +0 -6
- package/config/dist/generated/templates/ButtonTemplate.lit.js.map +0 -1
- package/config/dist/generated/templates/CarouselTemplate.lit.d.ts +0 -4
- package/config/dist/generated/templates/CarouselTemplate.lit.js +0 -8
- package/config/dist/generated/templates/CarouselTemplate.lit.js.map +0 -1
- package/config/dist/generated/templates/DatePickerTemplate.lit.js +0 -6
- package/config/dist/generated/templates/DatePickerTemplate.lit.js.map +0 -1
- package/config/dist/generated/templates/DividerTemplate.lit.d.ts +0 -4
- package/config/dist/generated/templates/DividerTemplate.lit.js +0 -5
- package/config/dist/generated/templates/DividerTemplate.lit.js.map +0 -1
- package/config/dist/generated/templates/DropdownListGroupHeaderTemplate.lit.js +0 -8
- package/config/dist/generated/templates/DropdownListGroupHeaderTemplate.lit.js.map +0 -1
- package/config/dist/generated/templates/DropdownListItemTemplate.lit.d.ts +0 -4
- package/config/dist/generated/templates/DropdownListItemTemplate.lit.js +0 -8
- package/config/dist/generated/templates/DropdownListItemTemplate.lit.js.map +0 -1
- package/config/dist/generated/templates/DropdownListTemplate.lit.d.ts +0 -4
- package/config/dist/generated/templates/DropdownListTemplate.lit.js +0 -6
- package/config/dist/generated/templates/DropdownListTemplate.lit.js.map +0 -1
- package/config/dist/generated/templates/DropdownTemplate.lit.d.ts +0 -4
- package/config/dist/generated/templates/DropdownTemplate.lit.js +0 -8
- package/config/dist/generated/templates/DropdownTemplate.lit.js.map +0 -1
- package/config/dist/generated/templates/FilterMenuTemplate.lit.d.ts +0 -4
- package/config/dist/generated/templates/FilterMenuTemplate.lit.js +0 -7
- package/config/dist/generated/templates/FilterMenuTemplate.lit.js.map +0 -1
- package/config/dist/generated/templates/FooterTemplate.lit.js +0 -28
- package/config/dist/generated/templates/FooterTemplate.lit.js.map +0 -1
- package/config/dist/generated/templates/HeroBannerTemplate.lit.d.ts +0 -4
- package/config/dist/generated/templates/HeroBannerTemplate.lit.js +0 -9
- package/config/dist/generated/templates/HeroBannerTemplate.lit.js.map +0 -1
- package/config/dist/generated/templates/LinkTemplate.lit.d.ts +0 -4
- package/config/dist/generated/templates/LinkTemplate.lit.js +0 -8
- package/config/dist/generated/templates/LinkTemplate.lit.js.map +0 -1
- package/config/dist/generated/templates/MediaPlayerTemplate.lit.d.ts +0 -4
- package/config/dist/generated/templates/MediaPlayerTemplate.lit.js +0 -12
- package/config/dist/generated/templates/MediaPlayerTemplate.lit.js.map +0 -1
- package/config/dist/generated/templates/MessageStripTemplate.lit.d.ts +0 -4
- package/config/dist/generated/templates/MessageStripTemplate.lit.js +0 -7
- package/config/dist/generated/templates/MessageStripTemplate.lit.js.map +0 -1
- package/config/dist/generated/templates/ModalTemplate.lit.d.ts +0 -4
- package/config/dist/generated/templates/ModalTemplate.lit.js +0 -7
- package/config/dist/generated/templates/ModalTemplate.lit.js.map +0 -1
- package/config/dist/generated/templates/PaginationTemplate.lit.d.ts +0 -4
- package/config/dist/generated/templates/PaginationTemplate.lit.js +0 -11
- package/config/dist/generated/templates/PaginationTemplate.lit.js.map +0 -1
- package/config/dist/generated/templates/PasswordFieldTemplate.lit.d.ts +0 -4
- package/config/dist/generated/templates/PasswordFieldTemplate.lit.js +0 -6
- package/config/dist/generated/templates/PasswordFieldTemplate.lit.js.map +0 -1
- package/config/dist/generated/templates/PhoneNumberFieldTemplate.lit.d.ts +0 -4
- package/config/dist/generated/templates/PhoneNumberFieldTemplate.lit.js +0 -12
- package/config/dist/generated/templates/PhoneNumberFieldTemplate.lit.js.map +0 -1
- package/config/dist/generated/templates/ProgressBarTemplate.lit.d.ts +0 -4
- package/config/dist/generated/templates/ProgressBarTemplate.lit.js +0 -5
- package/config/dist/generated/templates/ProgressBarTemplate.lit.js.map +0 -1
- package/config/dist/generated/templates/QuoteTemplate.lit.d.ts +0 -4
- package/config/dist/generated/templates/QuoteTemplate.lit.js +0 -8
- package/config/dist/generated/templates/QuoteTemplate.lit.js.map +0 -1
- package/config/dist/generated/templates/RatingIndicatorTemplate.lit.d.ts +0 -4
- package/config/dist/generated/templates/RatingIndicatorTemplate.lit.js +0 -15
- package/config/dist/generated/templates/RatingIndicatorTemplate.lit.js.map +0 -1
- package/config/dist/generated/templates/SearchSuggestionsTemplate.lit.d.ts +0 -4
- package/config/dist/generated/templates/SearchSuggestionsTemplate.lit.js +0 -10
- package/config/dist/generated/templates/SearchSuggestionsTemplate.lit.js.map +0 -1
- package/config/dist/generated/templates/SearchTemplate.lit.d.ts +0 -4
- package/config/dist/generated/templates/SearchTemplate.lit.js +0 -9
- package/config/dist/generated/templates/SearchTemplate.lit.js.map +0 -1
- package/config/dist/generated/templates/SearchableListBaseTemplate.lit.d.ts +0 -4
- package/config/dist/generated/templates/SearchableListBaseTemplate.lit.js +0 -10
- package/config/dist/generated/templates/SearchableListBaseTemplate.lit.js.map +0 -1
- package/config/dist/generated/templates/SwitchTemplate.lit.d.ts +0 -4
- package/config/dist/generated/templates/SwitchTemplate.lit.js +0 -12
- package/config/dist/generated/templates/SwitchTemplate.lit.js.map +0 -1
- package/config/dist/generated/templates/TabHeaderTemplate.lit.d.ts +0 -4
- package/config/dist/generated/templates/TabHeaderTemplate.lit.js +0 -12
- package/config/dist/generated/templates/TabHeaderTemplate.lit.js.map +0 -1
- package/config/dist/generated/templates/TabInOverflowTemplate.lit.d.ts +0 -4
- package/config/dist/generated/templates/TabInOverflowTemplate.lit.js +0 -13
- package/config/dist/generated/templates/TabInOverflowTemplate.lit.js.map +0 -1
- package/config/dist/generated/templates/TabNavigationPopoverTemplate.lit.d.ts +0 -4
- package/config/dist/generated/templates/TabNavigationPopoverTemplate.lit.js +0 -6
- package/config/dist/generated/templates/TabNavigationPopoverTemplate.lit.js.map +0 -1
- package/config/dist/generated/templates/TabNavigationTemplate.lit.d.ts +0 -4
- package/config/dist/generated/templates/TabNavigationTemplate.lit.js +0 -7
- package/config/dist/generated/templates/TabNavigationTemplate.lit.js.map +0 -1
- package/config/dist/generated/templates/TabTemplate.lit.d.ts +0 -4
- package/config/dist/generated/templates/TabTemplate.lit.js +0 -5
- package/config/dist/generated/templates/TabTemplate.lit.js.map +0 -1
- package/config/dist/generated/templates/TagTemplate.lit.d.ts +0 -4
- package/config/dist/generated/templates/TagTemplate.lit.js +0 -7
- package/config/dist/generated/templates/TagTemplate.lit.js.map +0 -1
- package/config/dist/generated/templates/TextAreaTemplate.lit.d.ts +0 -4
- package/config/dist/generated/templates/TextAreaTemplate.lit.js +0 -9
- package/config/dist/generated/templates/TextAreaTemplate.lit.js.map +0 -1
- package/config/dist/generated/templates/TextFieldTemplate.lit.d.ts +0 -4
- package/config/dist/generated/templates/TextFieldTemplate.lit.js +0 -9
- package/config/dist/generated/templates/TextFieldTemplate.lit.js.map +0 -1
- package/config/dist/generated/templates/TileTemplate.lit.d.ts +0 -4
- package/config/dist/generated/templates/TileTemplate.lit.js +0 -7
- package/config/dist/generated/templates/TileTemplate.lit.js.map +0 -1
- package/config/dist/generated/templates/ToastTemplate.lit.d.ts +0 -4
- package/config/dist/generated/templates/ToastTemplate.lit.js +0 -7
- package/config/dist/generated/templates/ToastTemplate.lit.js.map +0 -1
- package/config/dist/generated/templates/TooltipTemplate.lit.d.ts +0 -4
- package/config/dist/generated/templates/TooltipTemplate.lit.js +0 -6
- package/config/dist/generated/templates/TooltipTemplate.lit.js.map +0 -1
- package/config/dist/generated/templates/TruncatedTextTemplate.lit.d.ts +0 -4
- package/config/dist/generated/templates/TruncatedTextTemplate.lit.js +0 -5
- package/config/dist/generated/templates/TruncatedTextTemplate.lit.js.map +0 -1
- package/config/dist/generated/templates/WizardTemplate.lit.d.ts +0 -4
- package/config/dist/generated/templates/WizardTemplate.lit.js +0 -7
- package/config/dist/generated/templates/WizardTemplate.lit.js.map +0 -1
- package/config/dist/generated/themes/Accordion.css.js +0 -9
- package/config/dist/generated/themes/Accordion.css.js.map +0 -1
- package/config/dist/generated/themes/AccordionItem.css.js +0 -9
- package/config/dist/generated/themes/AccordionItem.css.js.map +0 -1
- package/config/dist/generated/themes/Avatar.css.js +0 -9
- package/config/dist/generated/themes/Avatar.css.js.map +0 -1
- package/config/dist/generated/themes/Badge.css.d.ts +0 -3
- package/config/dist/generated/themes/Badge.css.js +0 -9
- package/config/dist/generated/themes/Badge.css.js.map +0 -1
- package/config/dist/generated/themes/Breadcrumbs.css.d.ts +0 -3
- package/config/dist/generated/themes/Breadcrumbs.css.js +0 -9
- package/config/dist/generated/themes/Breadcrumbs.css.js.map +0 -1
- package/config/dist/generated/themes/BreadcrumbsPopover.css.d.ts +0 -3
- package/config/dist/generated/themes/BreadcrumbsPopover.css.js +0 -9
- package/config/dist/generated/themes/BreadcrumbsPopover.css.js.map +0 -1
- package/config/dist/generated/themes/Button.css.d.ts +0 -3
- package/config/dist/generated/themes/Button.css.js +0 -9
- package/config/dist/generated/themes/Button.css.js.map +0 -1
- package/config/dist/generated/themes/Calendar.css.d.ts +0 -3
- package/config/dist/generated/themes/Calendar.css.js +0 -8
- package/config/dist/generated/themes/Calendar.css.js.map +0 -1
- package/config/dist/generated/themes/Carousel.css.d.ts +0 -3
- package/config/dist/generated/themes/Carousel.css.js +0 -9
- package/config/dist/generated/themes/Carousel.css.js.map +0 -1
- package/config/dist/generated/themes/Checkbox.css.d.ts +0 -3
- package/config/dist/generated/themes/Checkbox.css.js +0 -9
- package/config/dist/generated/themes/Checkbox.css.js.map +0 -1
- package/config/dist/generated/themes/DatePicker.css.d.ts +0 -3
- package/config/dist/generated/themes/DatePicker.css.js +0 -9
- package/config/dist/generated/themes/DatePicker.css.js.map +0 -1
- package/config/dist/generated/themes/Divider.css.d.ts +0 -3
- package/config/dist/generated/themes/Divider.css.js +0 -9
- package/config/dist/generated/themes/Divider.css.js.map +0 -1
- package/config/dist/generated/themes/Dropdown.css.d.ts +0 -3
- package/config/dist/generated/themes/Dropdown.css.js +0 -9
- package/config/dist/generated/themes/Dropdown.css.js.map +0 -1
- package/config/dist/generated/themes/DropdownList.css.d.ts +0 -3
- package/config/dist/generated/themes/DropdownList.css.js +0 -9
- package/config/dist/generated/themes/DropdownList.css.js.map +0 -1
- package/config/dist/generated/themes/DropdownListGroupHeader.css.d.ts +0 -3
- package/config/dist/generated/themes/DropdownListGroupHeader.css.js +0 -9
- package/config/dist/generated/themes/DropdownListGroupHeader.css.js.map +0 -1
- package/config/dist/generated/themes/DropdownListItem.css.d.ts +0 -3
- package/config/dist/generated/themes/DropdownListItem.css.js +0 -9
- package/config/dist/generated/themes/DropdownListItem.css.js.map +0 -1
- package/config/dist/generated/themes/FilterMenu.css.d.ts +0 -3
- package/config/dist/generated/themes/FilterMenu.css.js +0 -9
- package/config/dist/generated/themes/FilterMenu.css.js.map +0 -1
- package/config/dist/generated/themes/Footer.css.d.ts +0 -3
- package/config/dist/generated/themes/Footer.css.js +0 -9
- package/config/dist/generated/themes/Footer.css.js.map +0 -1
- package/config/dist/generated/themes/HeroBanner.css.d.ts +0 -3
- package/config/dist/generated/themes/HeroBanner.css.js +0 -9
- package/config/dist/generated/themes/HeroBanner.css.js.map +0 -1
- package/config/dist/generated/themes/Link.css.d.ts +0 -3
- package/config/dist/generated/themes/Link.css.js +0 -9
- package/config/dist/generated/themes/Link.css.js.map +0 -1
- package/config/dist/generated/themes/MediaPlayer.css.d.ts +0 -3
- package/config/dist/generated/themes/MediaPlayer.css.js +0 -9
- package/config/dist/generated/themes/MediaPlayer.css.js.map +0 -1
- package/config/dist/generated/themes/MessageStrip.css.d.ts +0 -3
- package/config/dist/generated/themes/MessageStrip.css.js +0 -9
- package/config/dist/generated/themes/MessageStrip.css.js.map +0 -1
- package/config/dist/generated/themes/Modal.css.d.ts +0 -3
- package/config/dist/generated/themes/Modal.css.js +0 -9
- package/config/dist/generated/themes/Modal.css.js.map +0 -1
- package/config/dist/generated/themes/Pagination.css.d.ts +0 -3
- package/config/dist/generated/themes/Pagination.css.js +0 -9
- package/config/dist/generated/themes/Pagination.css.js.map +0 -1
- package/config/dist/generated/themes/PasswordField.css.d.ts +0 -3
- package/config/dist/generated/themes/PasswordField.css.js +0 -9
- package/config/dist/generated/themes/PasswordField.css.js.map +0 -1
- package/config/dist/generated/themes/PhoneNumberField.css.d.ts +0 -3
- package/config/dist/generated/themes/PhoneNumberField.css.js +0 -9
- package/config/dist/generated/themes/PhoneNumberField.css.js.map +0 -1
- package/config/dist/generated/themes/ProgressBar.css.d.ts +0 -3
- package/config/dist/generated/themes/ProgressBar.css.js +0 -9
- package/config/dist/generated/themes/ProgressBar.css.js.map +0 -1
- package/config/dist/generated/themes/Quote.css.d.ts +0 -3
- package/config/dist/generated/themes/Quote.css.js +0 -9
- package/config/dist/generated/themes/Quote.css.js.map +0 -1
- package/config/dist/generated/themes/RadioButton.css.d.ts +0 -3
- package/config/dist/generated/themes/RadioButton.css.js +0 -9
- package/config/dist/generated/themes/RadioButton.css.js.map +0 -1
- package/config/dist/generated/themes/RatingIndicator.css.d.ts +0 -3
- package/config/dist/generated/themes/RatingIndicator.css.js +0 -9
- package/config/dist/generated/themes/RatingIndicator.css.js.map +0 -1
- package/config/dist/generated/themes/Search.css.d.ts +0 -3
- package/config/dist/generated/themes/Search.css.js +0 -9
- package/config/dist/generated/themes/Search.css.js.map +0 -1
- package/config/dist/generated/themes/SearchSuggestions.css.d.ts +0 -3
- package/config/dist/generated/themes/SearchSuggestions.css.js +0 -9
- package/config/dist/generated/themes/SearchSuggestions.css.js.map +0 -1
- package/config/dist/generated/themes/Slider.css.d.ts +0 -3
- package/config/dist/generated/themes/Slider.css.js +0 -9
- package/config/dist/generated/themes/Slider.css.js.map +0 -1
- package/config/dist/generated/themes/Switch.css.d.ts +0 -3
- package/config/dist/generated/themes/Switch.css.js +0 -9
- package/config/dist/generated/themes/Switch.css.js.map +0 -1
- package/config/dist/generated/themes/TabInOverflow.css.d.ts +0 -3
- package/config/dist/generated/themes/TabInOverflow.css.js +0 -9
- package/config/dist/generated/themes/TabInOverflow.css.js.map +0 -1
- package/config/dist/generated/themes/TabNavigation.css.d.ts +0 -3
- package/config/dist/generated/themes/TabNavigation.css.js +0 -9
- package/config/dist/generated/themes/TabNavigation.css.js.map +0 -1
- package/config/dist/generated/themes/Tag.css.d.ts +0 -3
- package/config/dist/generated/themes/Tag.css.js +0 -9
- package/config/dist/generated/themes/Tag.css.js.map +0 -1
- package/config/dist/generated/themes/TextArea.css.d.ts +0 -3
- package/config/dist/generated/themes/TextArea.css.js +0 -9
- package/config/dist/generated/themes/TextArea.css.js.map +0 -1
- package/config/dist/generated/themes/TextField.css.d.ts +0 -3
- package/config/dist/generated/themes/TextField.css.js +0 -9
- package/config/dist/generated/themes/TextField.css.js.map +0 -1
- package/config/dist/generated/themes/Tile.css.d.ts +0 -3
- package/config/dist/generated/themes/Tile.css.js +0 -9
- package/config/dist/generated/themes/Tile.css.js.map +0 -1
- package/config/dist/generated/themes/Toast.css.d.ts +0 -3
- package/config/dist/generated/themes/Toast.css.js +0 -9
- package/config/dist/generated/themes/Toast.css.js.map +0 -1
- package/config/dist/generated/themes/Tooltip.css.d.ts +0 -3
- package/config/dist/generated/themes/Tooltip.css.js +0 -9
- package/config/dist/generated/themes/Tooltip.css.js.map +0 -1
- package/config/dist/generated/themes/TruncatedText.css.d.ts +0 -3
- package/config/dist/generated/themes/TruncatedText.css.js +0 -9
- package/config/dist/generated/themes/TruncatedText.css.js.map +0 -1
- package/config/dist/generated/themes/Wizard.css.d.ts +0 -3
- package/config/dist/generated/themes/Wizard.css.js +0 -9
- package/config/dist/generated/themes/Wizard.css.js.map +0 -1
- package/config/dist/generated/themes/WizardTab.css.d.ts +0 -3
- package/config/dist/generated/themes/WizardTab.css.js +0 -9
- package/config/dist/generated/themes/WizardTab.css.js.map +0 -1
- package/config/dist/generated/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css.d.ts +0 -3
- package/config/dist/generated/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css.js +0 -4
- package/config/dist/generated/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css.js.map +0 -1
- package/config/dist/generated/themes/sap_fiori_3/parameters-bundle.css.d.ts +0 -3
- package/config/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +0 -3
- package/config/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js.map +0 -1
- package/config/dist/generated/themes/sap_glow/parameters-bundle.css.d.ts +0 -3
- package/config/dist/generated/themes/sap_glow/parameters-bundle.css.js +0 -3
- package/config/dist/generated/themes/sap_glow/parameters-bundle.css.js.map +0 -1
- package/config/dist/generated/themes/sap_horizon/parameters-bundle.css.d.ts +0 -3
- package/config/dist/generated/themes/sap_horizon/parameters-bundle.css.js +0 -3
- package/config/dist/generated/themes/sap_horizon/parameters-bundle.css.js.map +0 -1
- package/config/dist/i18n/messagebundle.properties +0 -58
- package/config/dist/i18n/messagebundle_de.properties +0 -3
- package/config/dist/i18n/messagebundle_en.properties +0 -28
- package/config/dist/i18n/messagebundle_es.properties +0 -3
- package/config/dist/i18n/messagebundle_fr.properties +0 -3
- package/config/dist/types/Dropdown.d.ts +0 -16
- package/config/dist/types/Dropdown.js +0 -20
- package/config/dist/types/Dropdown.js.map +0 -1
- package/config/dist/types/SearchableListBase.d.ts +0 -7
- package/config/dist/types/SearchableListBase.js +0 -2
- package/config/dist/types/SearchableListBase.js.map +0 -1
- package/config/dist/utils/debounce.d.ts +0 -3
- package/config/dist/utils/debounce.js +0 -9
- package/config/dist/utils/debounce.js.map +0 -1
- package/config/dist/utils/redirectAttributes.d.ts +0 -2
- package/config/dist/utils/redirectAttributes.js +0 -10
- package/config/dist/utils/redirectAttributes.js.map +0 -1
- package/config/dist/vscode.html-custom-data.json +0 -1130
- package/config/dist/web-types.json +0 -2420
- package/dist/assets/bundle.esm-aa637b3f.js +0 -312
- package/dist/assets/messagebundle_en-06c0dadc.js +0 -1
- package/dist/assets/parameters-bundle.css-016bfbb1.js +0 -2
- package/dist/assets/parameters-bundle.css-16e19728.js +0 -2
- package/dist/assets/parameters-bundle.css-2450af31.js +0 -2
- package/dist/assets/parameters-bundle.css-4f454042.js +0 -2
- package/dist/assets/parameters-bundle.css-5ce14c26.js +0 -2
- package/dist/assets/parameters-bundle.css-9447025f.js +0 -2
- package/dist/assets/parameters-bundle.css-9b55bfaa.js +0 -2
- package/dist/assets/parameters-bundle.css-9b8c1377.js +0 -2
- package/dist/assets/parameters-bundle.css-bd4a2e6d.js +0 -2
- package/dist/assets/parameters-bundle.css-beef06a9.js +0 -2
- package/dist/assets/parameters-bundle.css-ebfade1e.js +0 -2
- package/dist/assets/parameters-bundle.css-f2662097.js +0 -2
- package/dist/utils/listItemLabelStartsWithKeyFocus.d.ts +0 -3
- package/dist/utils/listItemLabelStartsWithKeyFocus.js +0 -55
- package/dist/utils/listItemLabelStartsWithKeyFocus.js.map +0 -1
- package/src/utils/listItemLabelStartsWithKeyFocus.ts +0 -74
- /package/{config/dist/generated/themes/Accordion.css.d.ts → dist/generated/themes/MastheadCountrySelector.css.d.ts} +0 -0
- /package/{config/dist/generated/themes/AccordionItem.css.d.ts → dist/generated/themes/Upload.css.d.ts} +0 -0
- /package/{config/dist/generated/themes/Avatar.css.d.ts → dist/generated/themes/UploadItem.css.d.ts} +0 -0
package/dist/MediaPlayer.js
CHANGED
|
@@ -11,10 +11,12 @@ import customElement from "@ui5/webcomponents-base/dist/decorators/customElement
|
|
|
11
11
|
import property from "@ui5/webcomponents-base/dist/decorators/property.js";
|
|
12
12
|
import event from "@ui5/webcomponents-base/dist/decorators/event.js";
|
|
13
13
|
import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
|
|
14
|
+
import Icon from "@ui5/webcomponents/dist/Icon.js";
|
|
14
15
|
import "@ui5/webcomponents-icons/dist/play.js";
|
|
15
16
|
import "@ui5/webcomponents-icons/dist/v5/play.svg";
|
|
16
17
|
import UDExMediaPlayerYoutube from "./MediaPlayerYoutube.js";
|
|
17
18
|
import UDExMediaPlayerVimeo from "./MediaPlayerVimeo.js";
|
|
19
|
+
import mapLangFile from "./mediaPlayerLanguageMapping.js";
|
|
18
20
|
// Template
|
|
19
21
|
import MediaPlayerTemplate from "./generated/templates/MediaPlayerTemplate.lit.js";
|
|
20
22
|
// Styles
|
|
@@ -38,7 +40,7 @@ export var AspectRatio;
|
|
|
38
40
|
* For the <code>udex-media-player</code>
|
|
39
41
|
* <h3>ES6 Module Import</h3>
|
|
40
42
|
*
|
|
41
|
-
* <code>import "@
|
|
43
|
+
* <code>import "@sapudex/web-components/dist/MediaPlayer.js";</code>
|
|
42
44
|
*
|
|
43
45
|
* @constructor
|
|
44
46
|
* @author SAP SE
|
|
@@ -50,7 +52,7 @@ let UDExMediaPlayer = class UDExMediaPlayer extends UI5Element {
|
|
|
50
52
|
constructor() {
|
|
51
53
|
super(...arguments);
|
|
52
54
|
this.getPlayedTime = (target) => {
|
|
53
|
-
const progressControl = target?.player.controlBar?.
|
|
55
|
+
const progressControl = target?.player.controlBar?.progressControl?.childNameIndex_.seekBar;
|
|
54
56
|
if (!progressControl) {
|
|
55
57
|
return 0;
|
|
56
58
|
}
|
|
@@ -247,6 +249,7 @@ let UDExMediaPlayer = class UDExMediaPlayer extends UI5Element {
|
|
|
247
249
|
controls: true,
|
|
248
250
|
poster: this.poster,
|
|
249
251
|
audioOnly: this.audioOnly,
|
|
252
|
+
bigPlayButton: true,
|
|
250
253
|
controlBar: {
|
|
251
254
|
playToggle: true,
|
|
252
255
|
volumePanel: true,
|
|
@@ -277,7 +280,7 @@ let UDExMediaPlayer = class UDExMediaPlayer extends UI5Element {
|
|
|
277
280
|
}
|
|
278
281
|
async setupLanguage(language) {
|
|
279
282
|
try {
|
|
280
|
-
return await
|
|
283
|
+
return await mapLangFile(language);
|
|
281
284
|
}
|
|
282
285
|
catch (err) {
|
|
283
286
|
console.warn("Cannot load language file", err);
|
|
@@ -294,7 +297,11 @@ let UDExMediaPlayer = class UDExMediaPlayer extends UI5Element {
|
|
|
294
297
|
const options = this.getOptionsValue();
|
|
295
298
|
const language = options?.language;
|
|
296
299
|
if (language) {
|
|
297
|
-
|
|
300
|
+
const languageData = await this.setupLanguage(language);
|
|
301
|
+
videojs.addLanguage(language, {
|
|
302
|
+
...languageData,
|
|
303
|
+
...languageData?.default,
|
|
304
|
+
});
|
|
298
305
|
}
|
|
299
306
|
this.player = videojs(this.shadowRoot?.querySelector(".video-js") || "", options);
|
|
300
307
|
this.attachListeners(this.player);
|
|
@@ -425,7 +432,7 @@ UDExMediaPlayer = __decorate([
|
|
|
425
432
|
renderer: litRender,
|
|
426
433
|
styles: MediaPlayerCss,
|
|
427
434
|
template: MediaPlayerTemplate,
|
|
428
|
-
dependencies: [UDExMediaPlayerYoutube, UDExMediaPlayerVimeo],
|
|
435
|
+
dependencies: [Icon, UDExMediaPlayerYoutube, UDExMediaPlayerVimeo],
|
|
429
436
|
})
|
|
430
437
|
/**
|
|
431
438
|
* Fires when video is played
|
package/dist/MediaPlayer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MediaPlayer.js","sourceRoot":"","sources":["../src/MediaPlayer.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable @typescript-eslint/no-unsafe-return */\nimport UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.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 slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport \"@ui5/webcomponents-icons/dist/play.js\";\nimport \"@ui5/webcomponents-icons/dist/v5/play.svg\";\nimport Player from \"video.js/dist/types/player.js\";\nimport type SeekBar from \"video.js/dist/types/control-bar/progress-control/seek-bar\";\nimport UDExMediaPlayerYoutube from \"./MediaPlayerYoutube.js\";\nimport UDExMediaPlayerVimeo, { VimeoPlayer } from \"./MediaPlayerVimeo.js\";\n\n// Template\nimport MediaPlayerTemplate from \"./generated/templates/MediaPlayerTemplate.lit.js\";\n\n// Styles\nimport MediaPlayerCss from \"./generated/themes/MediaPlayer.css\";\n\ndeclare global {\n interface Window {\n videojs: any;\n }\n}\n\nexport enum AspectRatio {\n \"16:9\" = \"16:9\",\n \"9:16\" = \"9:16\",\n \"4:3\" = \"4:3\",\n \"1:1\" = \"1:1\",\n \"none\" = \"none\",\n}\n\nexport interface VideoJSPlayer extends Player{\n qualityLevels?: () => any;\n textTracks?: () => any;\n controlBar?: any;\n bigPlayButton?: any;\n}\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-media-player</code>\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@udex/web-components/dist/MediaPlayer.js\";</code>\n *\n * @constructor\n * @author SAP SE\n * @extends UI5Element\n * @tagname udex-media-player\n * @public\n */\n@customElement({\n tag: \"udex-media-player\",\n renderer: litRender,\n styles: MediaPlayerCss,\n template: MediaPlayerTemplate,\n dependencies: [UDExMediaPlayerYoutube, UDExMediaPlayerVimeo],\n})\n/**\n * Fires when video is played\n *\n * @allowPreventDefault\n * @public\n */\n@event(\"videoStart\")\n/**\n * Fires when video is paused\n *\n * @allowPreventDefault\n * @public\n */\n@event(\"videoPause\")\n/**\n * Fires when video is watched\n *\n * @allowPreventDefault\n * @public\n */\n@event(\"videoComplete\")\n/**\n * Fires when video is ready\n *\n * @allowPreventDefault\n * @public\n */\n@event(\"videoReady\")\n/**\n * Fires when video watching progress changed\n *\n * @allowPreventDefault\n * @public\n */\n@event(\"videoProgress\")\n/**\n * Fires when 25% of video is watched\n *\n * @allowPreventDefault\n * @public\n */\n@event(\"video25\")\n/**\n * Fires when 50% of video is watched\n *\n * @allowPreventDefault\n * @public\n */\n@event(\"video50\")\n/**\n * Fires when 75% of video is watched\n *\n * @allowPreventDefault\n * @public\n */\n@event(\"video75\")\nclass UDExMediaPlayer extends UI5Element {\n /**\n * Defines the options object of video.js element\n * accepts following properties: https://videojs.com/guides/options\n *\n * @public\n */\n @property({ type: String })\n options!: string;\n /**\n * Defines the source of the video or audio\n *\n * @default \"\"\n * @public\n */\n @property({ type: String, defaultValue: \"\" })\n source!: string;\n /**\n * Defines the video/audio type (examples: \"video/mp4\" for mp4, \"application/x-mpegURL\" for m3u8, \"audio/mp3\" for mp3) more information https://developer.mozilla.org/en-US/docs/Web/HTML/Element/source\n *\n * @default \"video/mp4\"\n * @public\n */\n @property({ type: String, defaultValue: \"video/mp4\" })\n type!: string;\n /**\n * Defines a title for youtube video\n *\n * @default \"\"\n * @public\n */\n @property({ type: String, defaultValue: \"\" })\n title!: string;\n /**\n * Defines if only audio should be played\n *\n * @default false\n * @public\n */\n @property({ type: Boolean })\n audioOnly!: boolean;\n /**\n * Defines the poster url\n *\n * @default \"\"\n * @public\n */\n @property({ type: String, defaultValue: \"\" })\n poster!: string;\n /**\n * Placeholder for all html `track` elements to provide video subtitles.\n * Example: `<track kind='captions' src='./videoSubtitles.vtt' srclang='en' label='English' default />`\n * More information: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/track\n *\n * @slot\n * @public\n */\n @slot({ type: HTMLElement, \"default\": true, individualSlots: true })\n caption!: Array<HTMLElement>;\n /**\n * Defines video width. Used for YouTube and Vimeo videos only.\n * Regular video and audio sizes are control by CSS variables.\n *\n * @default \"\"\n * @public\n */\n @property({ type: String, defaultValue: \"\" })\n width!: string;\n /**\n * Defines video height. Used for YouTube and Vimeo videos only.\n * Regular video and audio sizes are control by CSS variables.\n *\n * @default \"\"\n * @public\n */\n @property({ type: String, defaultValue: \"\" })\n height!: string;\n /**\n * Defines id of html element that videojs will be initialized with\n *\n * @default \"udex-media-player\"\n * @public\n */\n @property({ type: String, defaultValue: \"udex-media-player\" })\n playerid!: string;\n /**\n * Defines aspect ratio of video. If set, video will be display in fluid mode.\n * Possible values: \"16:9\" , \"9:16\", \"4:3\", \"1:1\", \"none\"\n *\n * @default \"16:9\"\n * @public\n */\n @property({ type: AspectRatio, defaultValue: \"16:9\" })\n aspectRatio!: `${AspectRatio}`;\n /**\n * If this property is set, whenever user will focus on udex-media-player element, focus will be redirected into Big Play Button element.\n *\n * @default \"\"\n * @public\n */\n @property({ type: Boolean })\n playButtonInitialFocus!: boolean;\n /**\n * Enable videojs instance to be added to global window object\n *\n * @default \"\"\n * @public\n */\n @property({ type: Boolean })\n enableGlobalDependency!: boolean;\n /**\n * @private\n */\n @property({ type: Boolean })\n _allowIframeLoad!: boolean;\n\n player!: VideoJSPlayer;\n video25!: boolean;\n video50!: boolean;\n video75!: boolean;\n videoCompleted!: boolean;\n videoStart!: boolean;\n videoReady!: boolean;\n videoProgress!: number;\n\n getPlayedTime = (target: EventTarget): number => {\n const progressControl: SeekBar = (target as any)?.player.controlBar?.ProgressControl?.childNameIndex_.seekBar;\n if (!progressControl) {\n return 0;\n }\n\n return Math.round(progressControl.getPercent() * 100);\n };\n\n calculateVideoProgress(timeWatched: number) {\n if (timeWatched >= 25 && !this.video25) {\n this.fireEvent(\"video25\");\n this.video25 = true;\n }\n\n if (timeWatched >= 50 && !this.video50) {\n this.fireEvent(\"video50\");\n this.video50 = true;\n }\n\n if (timeWatched >= 75 && !this.video75) {\n this.fireEvent(\"video75\");\n this.video75 = true;\n }\n\n this.fireEvent(\"videoProgress\", { progress: timeWatched });\n }\n\n checkCaptionsAvailability(player: VideoJSPlayer) {\n player.on(\"loadedmetadata\", () => {\n if (!player?.textTracks) { return; }\n\n const tracks = player?.textTracks();\n let captionsAvailable = false;\n for (let i = 0; i < tracks.length; i++) {\n if (tracks[i].kind === \"captions\" || tracks[i].kind === \"subtitles\") {\n captionsAvailable = true;\n }\n }\n\n if (!captionsAvailable && !this._tracks.length) {\n player.controlBar?.removeChild(\"SubsCapsButton\");\n }\n });\n }\n\n applyScrollIntoTheView() {\n const bigPlayButton = this.player.bigPlayButton?.el();\n bigPlayButton.addEventListener(\"focus\", () => {\n this.player.el().scrollIntoView({\n behavior: \"smooth\",\n block: \"center\",\n });\n });\n }\n\n attachListeners(player: Player) {\n player.on(\"timeupdate\", (e: Event) => {\n if (!e.target) {\n return;\n }\n\n const timeWatched = this.getPlayedTime(e.target);\n if (timeWatched >= 0) {\n this.calculateVideoProgress(timeWatched);\n }\n });\n\n player.on(\"play\", () => {\n this.fireEvent(\"videoStart\");\n });\n\n player.on(\"ended\", () => {\n this.fireEvent(\"videoComplete\");\n });\n\n player.on(\"pause\", () => {\n this.fireEvent(\"videoPause\");\n });\n\n player.on(\"ready\", () => {\n this.checkCaptionsAvailability(player);\n this.applyScrollIntoTheView();\n this.fireEvent(\"videoReady\");\n });\n\n if (this.playButtonInitialFocus) {\n this.addEventListener(\"focus\", () => {\n (async () => {\n await player.getChild(\"BigPlayButton\")?.el_.focus();\n })();\n });\n }\n }\n\n /**\n * Returns video element\n * @public\n */\n getPlayer(): HTMLVideoElement | HTMLAudioElement | YT.Player | VimeoPlayer | null {\n if (this._youtubeSrc) {\n const player = this.shadowRoot?.querySelector(\"[udex-media-player-youtube]\") as UDExMediaPlayerYoutube;\n return player?.getPlayer() || null;\n }\n if (this._vimeoSrc) {\n const player = this.shadowRoot?.querySelector(\"[udex-media-player-vimeo]\") as UDExMediaPlayerVimeo;\n return player?.getPlayer() || null;\n }\n return this.shadowRoot?.querySelector(\".video-js video\") as HTMLVideoElement || this.shadowRoot?.querySelector(\".video-js audio\") || null;\n }\n\n setupHotkeys(e: KeyboardEvent, player: VideoJSPlayer) {\n // Back to start\n if (e.key === \"0\") {\n e.preventDefault();\n e.stopPropagation();\n player.currentTime(0);\n player.play();\n return;\n }\n\n // Full screen toggle\n if (e.key.toLowerCase() === \"f\") {\n e.preventDefault();\n e.stopPropagation();\n if (!player.isFullscreen()) {\n player.requestFullscreen();\n } else {\n player.exitFullscreen();\n }\n return;\n }\n\n // Mute / Unmute\n if (e.key.toLowerCase() === \"m\") {\n e.preventDefault();\n e.stopPropagation();\n player.muted(!player.muted());\n return;\n }\n\n // Play / Pause\n if (e.key === \" \") {\n e.preventDefault();\n e.stopPropagation();\n if (player.paused()) {\n player.play();\n } else {\n player.pause();\n }\n return;\n }\n\n // Speed up the video - set higher playback rate\n if (e.key === \"ArrowRight\" && e.shiftKey) {\n e.preventDefault();\n e.stopPropagation();\n const playbackRatesOptions: Array<number> = player.options_.playbackRates;\n const currentRateIndex = playbackRatesOptions.indexOf(player.playbackRate() ?? 1);\n if (currentRateIndex < playbackRatesOptions.length - 1) {\n const newPlaybackRate = currentRateIndex + 1;\n player.playbackRate(playbackRatesOptions[newPlaybackRate]);\n }\n return;\n }\n\n // Slow down the video - set lower playback rate\n if (e.key === \"ArrowLeft\" && e.shiftKey) {\n e.preventDefault();\n e.stopPropagation();\n const playbackRatesOptions: Array<number> = player.options_.playbackRates;\n const currentRateIndex = playbackRatesOptions.indexOf(player.playbackRate() ?? 1);\n if (currentRateIndex > 0) {\n const newPlaybackRate = currentRateIndex - 1;\n player.playbackRate(playbackRatesOptions[newPlaybackRate]);\n }\n return;\n }\n\n // Skip forward / Skip backward\n if (e.key === \"ArrowRight\" || e.key === \"ArrowLeft\") {\n e.preventDefault();\n e.stopPropagation();\n const stepSeconds = player.controlBar.progressControl.seekBar.options_.stepSeconds;\n const duration: number = player.duration() ?? 0;\n const currentTime: number = player.currentTime() ?? 0;\n const delta: number = (e.key === \"ArrowRight\" ? stepSeconds : -stepSeconds);\n const newTime = Math.min(Math.max(currentTime + delta, 0), duration);\n player.currentTime(newTime);\n return;\n }\n\n // Volume change\n if (((e.key === \"ArrowUp\" || e.key === \"ArrowDown\") && e.ctrlKey)\n || ((e.key === \"ArrowUp\" || e.key === \"ArrowDown\") && e.metaKey)) {\n e.preventDefault();\n e.stopPropagation();\n const volumeStep: number = 0.1;\n const volume: number = player.volume() ?? 0;\n let newVolume = volume + (e.key === \"ArrowUp\" ? volumeStep : -volumeStep);\n newVolume = Math.min(Math.max(newVolume, 0), 1);\n player.volume(newVolume);\n }\n }\n\n getOptionsValue() {\n const baseOptions = {\n playbackRates: [1, 1.5, 2],\n controls: true,\n poster: this.poster,\n audioOnly: this.audioOnly,\n controlBar: {\n playToggle: true,\n volumePanel: true,\n progressControl: {\n seekBar: {\n stepSeconds: 10,\n },\n },\n remainingTimeDisplay: true,\n subsCapsButton: true,\n playbackRateMenuButton: true,\n fullscreenToggle: true,\n pictureInPictureToggle: false,\n },\n userActions: {\n hotkeys: (e: KeyboardEvent) => {\n this.setupHotkeys(e, this.player);\n },\n },\n };\n\n if (!this.options) {\n return baseOptions;\n }\n\n return {\n ...baseOptions,\n ...JSON.parse(this.options),\n };\n }\n\n async setupLanguage(language: string) {\n try {\n return await import(`video.js/dist/lang/${language}.json`);\n } catch (err) {\n console.warn(\"Cannot load language file\", err);\n }\n }\n\n onAfterRendering(): void {\n if (this._youtubeSrc || this._vimeoSrc) {\n return;\n }\n\n import(\"video.js\").then(async ({ \"default\": videojs }) => {\n if (this.enableGlobalDependency) {\n window.videojs = videojs;\n }\n\n const options = this.getOptionsValue();\n const language: string = options?.language;\n if (language) {\n videojs.addLanguage(language, await this.setupLanguage(language));\n }\n\n this.player = videojs(this.shadowRoot?.querySelector(\".video-js\") || \"\", options);\n this.attachListeners(this.player);\n\n if (this.audioOnly) { return; }\n\n const backgroundOpacityElement = this.shadowRoot?.querySelector<HTMLOptionElement>(\".vjs-bg-opacity > select > option[value=\\\"0.5\\\"]\");\n if (backgroundOpacityElement) {\n backgroundOpacityElement.value = \"0.7\";\n backgroundOpacityElement.selected = true;\n }\n\n const fontSizeElement = this.shadowRoot?.querySelector<HTMLOptionElement>(\".vjs-font-percent > select > option[value=\\\"1.00\\\"]\");\n if (fontSizeElement) { fontSizeElement.value = \"1.2245\"; }\n\n const playbackSpeed = this.shadowRoot?.querySelector<HTMLOptionElement>(\".vjs-playback-rate .vjs-playback-rate-value\");\n playbackSpeed?.setAttribute(\"aria-hidden\", \"true\");\n });\n }\n\n handleEmbedPlay() {\n this._allowIframeLoad = true;\n }\n\n handleEmbedVideoReady() {\n this.fireEvent(\"videoReady\");\n }\n\n handleEmbedVideoPlaying = (embedEvent: CustomEvent) => {\n if (!this.videoStart) {\n this.fireEvent(\"videoStart\");\n this.videoStart = true;\n }\n const playedTime = Math.round(embedEvent.detail.percentPlayed as number);\n this.calculateVideoProgress(playedTime);\n };\n\n handleEmbedVideoEnded() {\n this.fireEvent(\"videoComplete\");\n }\n\n handleEmbedVideoPause() {\n this.fireEvent(\"videoPause\");\n }\n\n get _iframePosterPreload() {\n const shouldBlockIframe = this._iframeLoad && this.poster;\n if (this._allowIframeLoad) {\n return false;\n }\n if (!shouldBlockIframe) {\n this._allowIframeLoad = true;\n }\n return shouldBlockIframe;\n }\n\n get _iframeLoad() {\n return this._youtubeSrc || this._vimeoSrc;\n }\n\n get _tracks() {\n return this.getSlottedNodes(\"caption\");\n }\n\n get _vimeoSrc() {\n return this.source.includes(\"vimeo\");\n }\n\n get _youtubeSrc() {\n return this.source.includes(\"youtube\");\n }\n\n get aspectRatioClass() {\n switch (this.aspectRatio) {\n case AspectRatio[\"16:9\"]:\n return \"vjs-16-9 udex-media-player__fluid vjs-fluid\";\n case AspectRatio[\"9:16\"]:\n return \"vjs-9-16 udex-media-player__fluid vjs-fluid\";\n case AspectRatio[\"4:3\"]:\n return \"vjs-4-3 udex-media-player__fluid vjs-fluid\";\n case AspectRatio[\"1:1\"]:\n return \"vjs-1-1 udex-media-player__fluid vjs-fluid\";\n default:\n return \"\";\n }\n }\n\n get embedVideoFluidClass() {\n if (this.aspectRatio === AspectRatio[\"16:9\"] || this.aspectRatio === AspectRatio[\"9:16\"] || this.aspectRatio === AspectRatio[\"4:3\"] || this.aspectRatio === AspectRatio[\"1:1\"]) {\n return true;\n }\n return false;\n }\n\n get playerElementId(): string {\n return this.playerid || \"udex-media-player\";\n }\n\n onExitDOM(): void {\n if (this.player) {\n this.player.dispose();\n }\n }\n}\n\nUDExMediaPlayer.define();\n\nexport default UDExMediaPlayer;\n"]}
|
|
1
|
+
{"version":3,"file":"MediaPlayer.js","sourceRoot":"","sources":["../src/MediaPlayer.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable @typescript-eslint/no-unsafe-return */\nimport UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.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 slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport Icon from \"@ui5/webcomponents/dist/Icon.js\";\nimport \"@ui5/webcomponents-icons/dist/play.js\";\nimport \"@ui5/webcomponents-icons/dist/v5/play.svg\";\nimport Player from \"video.js/dist/types/player.js\";\nimport type SeekBar from \"video.js/dist/types/control-bar/progress-control/seek-bar\";\nimport UDExMediaPlayerYoutube from \"./MediaPlayerYoutube.js\";\nimport UDExMediaPlayerVimeo, { VimeoPlayer } from \"./MediaPlayerVimeo.js\";\nimport mapLangFile from \"./mediaPlayerLanguageMapping.js\";\n\n// Template\nimport MediaPlayerTemplate from \"./generated/templates/MediaPlayerTemplate.lit.js\";\n\n// Styles\nimport MediaPlayerCss from \"./generated/themes/MediaPlayer.css\";\n\ndeclare global {\n interface Window {\n videojs: any;\n }\n}\n\nexport enum AspectRatio {\n \"16:9\" = \"16:9\",\n \"9:16\" = \"9:16\",\n \"4:3\" = \"4:3\",\n \"1:1\" = \"1:1\",\n \"none\" = \"none\",\n}\n\nexport interface VideoJSPlayer extends Player{\n qualityLevels?: () => any;\n textTracks?: () => any;\n controlBar?: any;\n bigPlayButton?: any;\n}\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-media-player</code>\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@sapudex/web-components/dist/MediaPlayer.js\";</code>\n *\n * @constructor\n * @author SAP SE\n * @extends UI5Element\n * @tagname udex-media-player\n * @public\n */\n@customElement({\n tag: \"udex-media-player\",\n renderer: litRender,\n styles: MediaPlayerCss,\n template: MediaPlayerTemplate,\n dependencies: [Icon, UDExMediaPlayerYoutube, UDExMediaPlayerVimeo],\n})\n/**\n * Fires when video is played\n *\n * @allowPreventDefault\n * @public\n */\n@event(\"videoStart\")\n/**\n * Fires when video is paused\n *\n * @allowPreventDefault\n * @public\n */\n@event(\"videoPause\")\n/**\n * Fires when video is watched\n *\n * @allowPreventDefault\n * @public\n */\n@event(\"videoComplete\")\n/**\n * Fires when video is ready\n *\n * @allowPreventDefault\n * @public\n */\n@event(\"videoReady\")\n/**\n * Fires when video watching progress changed\n *\n * @allowPreventDefault\n * @public\n */\n@event(\"videoProgress\")\n/**\n * Fires when 25% of video is watched\n *\n * @allowPreventDefault\n * @public\n */\n@event(\"video25\")\n/**\n * Fires when 50% of video is watched\n *\n * @allowPreventDefault\n * @public\n */\n@event(\"video50\")\n/**\n * Fires when 75% of video is watched\n *\n * @allowPreventDefault\n * @public\n */\n@event(\"video75\")\nclass UDExMediaPlayer extends UI5Element {\n /**\n * Defines the options object of video.js element\n * accepts following properties: https://videojs.com/guides/options\n *\n * @public\n */\n @property({ type: String })\n options!: string;\n /**\n * Defines the source of the video or audio\n *\n * @default \"\"\n * @public\n */\n @property({ type: String, defaultValue: \"\" })\n source!: string;\n /**\n * Defines the video/audio type (examples: \"video/mp4\" for mp4, \"application/x-mpegURL\" for m3u8, \"audio/mp3\" for mp3) more information https://developer.mozilla.org/en-US/docs/Web/HTML/Element/source\n *\n * @default \"video/mp4\"\n * @public\n */\n @property({ type: String, defaultValue: \"video/mp4\" })\n type!: string;\n /**\n * Defines a title for youtube video\n *\n * @default \"\"\n * @public\n */\n @property({ type: String, defaultValue: \"\" })\n title!: string;\n /**\n * Defines if only audio should be played\n *\n * @default false\n * @public\n */\n @property({ type: Boolean })\n audioOnly!: boolean;\n /**\n * Defines the poster url\n *\n * @default \"\"\n * @public\n */\n @property({ type: String, defaultValue: \"\" })\n poster!: string;\n /**\n * Placeholder for all html `track` elements to provide video subtitles.\n * Example: `<track kind='captions' src='./videoSubtitles.vtt' srclang='en' label='English' default />`\n * More information: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/track\n *\n * @slot\n * @public\n */\n @slot({ type: HTMLElement, \"default\": true, individualSlots: true })\n caption!: Array<HTMLElement>;\n /**\n * Defines video width. Used for YouTube and Vimeo videos only.\n * Regular video and audio sizes are control by CSS variables.\n *\n * @default \"\"\n * @public\n */\n @property({ type: String, defaultValue: \"\" })\n width!: string;\n /**\n * Defines video height. Used for YouTube and Vimeo videos only.\n * Regular video and audio sizes are control by CSS variables.\n *\n * @default \"\"\n * @public\n */\n @property({ type: String, defaultValue: \"\" })\n height!: string;\n /**\n * Defines id of html element that videojs will be initialized with\n *\n * @default \"udex-media-player\"\n * @public\n */\n @property({ type: String, defaultValue: \"udex-media-player\" })\n playerid!: string;\n /**\n * Defines aspect ratio of video. If set, video will be display in fluid mode.\n * Possible values: \"16:9\" , \"9:16\", \"4:3\", \"1:1\", \"none\"\n *\n * @default \"16:9\"\n * @public\n */\n @property({ type: AspectRatio, defaultValue: \"16:9\" })\n aspectRatio!: `${AspectRatio}`;\n /**\n * If this property is set, whenever user will focus on udex-media-player element, focus will be redirected into Big Play Button element.\n *\n * @default \"\"\n * @public\n */\n @property({ type: Boolean })\n playButtonInitialFocus!: boolean;\n /**\n * Enable videojs instance to be added to global window object\n *\n * @default \"\"\n * @public\n */\n @property({ type: Boolean })\n enableGlobalDependency!: boolean;\n /**\n * @private\n */\n @property({ type: Boolean })\n _allowIframeLoad!: boolean;\n\n player!: VideoJSPlayer;\n video25!: boolean;\n video50!: boolean;\n video75!: boolean;\n videoCompleted!: boolean;\n videoStart!: boolean;\n videoReady!: boolean;\n videoProgress!: number;\n\n getPlayedTime = (target: EventTarget): number => {\n const progressControl: SeekBar = (target as any)?.player.controlBar?.progressControl?.childNameIndex_.seekBar;\n if (!progressControl) {\n return 0;\n }\n return Math.round(progressControl.getPercent() * 100);\n };\n\n calculateVideoProgress(timeWatched: number) {\n if (timeWatched >= 25 && !this.video25) {\n this.fireEvent(\"video25\");\n this.video25 = true;\n }\n\n if (timeWatched >= 50 && !this.video50) {\n this.fireEvent(\"video50\");\n this.video50 = true;\n }\n\n if (timeWatched >= 75 && !this.video75) {\n this.fireEvent(\"video75\");\n this.video75 = true;\n }\n\n this.fireEvent(\"videoProgress\", { progress: timeWatched });\n }\n\n checkCaptionsAvailability(player: VideoJSPlayer) {\n player.on(\"loadedmetadata\", () => {\n if (!player?.textTracks) { return; }\n\n const tracks = player?.textTracks();\n let captionsAvailable = false;\n for (let i = 0; i < tracks.length; i++) {\n if (tracks[i].kind === \"captions\" || tracks[i].kind === \"subtitles\") {\n captionsAvailable = true;\n }\n }\n\n if (!captionsAvailable && !this._tracks.length) {\n player.controlBar?.removeChild(\"SubsCapsButton\");\n }\n });\n }\n\n applyScrollIntoTheView() {\n const bigPlayButton = this.player.bigPlayButton?.el();\n bigPlayButton.addEventListener(\"focus\", () => {\n this.player.el().scrollIntoView({\n behavior: \"smooth\",\n block: \"center\",\n });\n });\n }\n\n attachListeners(player: Player) {\n player.on(\"timeupdate\", (e: Event) => {\n if (!e.target) {\n return;\n }\n\n const timeWatched = this.getPlayedTime(e.target);\n if (timeWatched >= 0) {\n this.calculateVideoProgress(timeWatched);\n }\n });\n\n player.on(\"play\", () => {\n this.fireEvent(\"videoStart\");\n });\n\n player.on(\"ended\", () => {\n this.fireEvent(\"videoComplete\");\n });\n\n player.on(\"pause\", () => {\n this.fireEvent(\"videoPause\");\n });\n\n player.on(\"ready\", () => {\n this.checkCaptionsAvailability(player);\n this.applyScrollIntoTheView();\n this.fireEvent(\"videoReady\");\n });\n\n if (this.playButtonInitialFocus) {\n this.addEventListener(\"focus\", () => {\n (async () => {\n await player.getChild(\"BigPlayButton\")?.el_.focus();\n })();\n });\n }\n }\n\n /**\n * Returns video element\n * @public\n */\n getPlayer(): HTMLVideoElement | HTMLAudioElement | YT.Player | VimeoPlayer | null {\n if (this._youtubeSrc) {\n const player = this.shadowRoot?.querySelector(\"[udex-media-player-youtube]\") as UDExMediaPlayerYoutube;\n return player?.getPlayer() || null;\n }\n if (this._vimeoSrc) {\n const player = this.shadowRoot?.querySelector(\"[udex-media-player-vimeo]\") as UDExMediaPlayerVimeo;\n return player?.getPlayer() || null;\n }\n return this.shadowRoot?.querySelector(\".video-js video\") as HTMLVideoElement || this.shadowRoot?.querySelector(\".video-js audio\") || null;\n }\n\n setupHotkeys(e: KeyboardEvent, player: VideoJSPlayer) {\n // Back to start\n if (e.key === \"0\") {\n e.preventDefault();\n e.stopPropagation();\n player.currentTime(0);\n player.play();\n return;\n }\n\n // Full screen toggle\n if (e.key.toLowerCase() === \"f\") {\n e.preventDefault();\n e.stopPropagation();\n if (!player.isFullscreen()) {\n player.requestFullscreen();\n } else {\n player.exitFullscreen();\n }\n return;\n }\n\n // Mute / Unmute\n if (e.key.toLowerCase() === \"m\") {\n e.preventDefault();\n e.stopPropagation();\n player.muted(!player.muted());\n return;\n }\n\n // Play / Pause\n if (e.key === \" \") {\n e.preventDefault();\n e.stopPropagation();\n if (player.paused()) {\n player.play();\n } else {\n player.pause();\n }\n return;\n }\n\n // Speed up the video - set higher playback rate\n if (e.key === \"ArrowRight\" && e.shiftKey) {\n e.preventDefault();\n e.stopPropagation();\n const playbackRatesOptions: Array<number> = player.options_.playbackRates;\n const currentRateIndex = playbackRatesOptions.indexOf(player.playbackRate() ?? 1);\n if (currentRateIndex < playbackRatesOptions.length - 1) {\n const newPlaybackRate = currentRateIndex + 1;\n player.playbackRate(playbackRatesOptions[newPlaybackRate]);\n }\n return;\n }\n\n // Slow down the video - set lower playback rate\n if (e.key === \"ArrowLeft\" && e.shiftKey) {\n e.preventDefault();\n e.stopPropagation();\n const playbackRatesOptions: Array<number> = player.options_.playbackRates;\n const currentRateIndex = playbackRatesOptions.indexOf(player.playbackRate() ?? 1);\n if (currentRateIndex > 0) {\n const newPlaybackRate = currentRateIndex - 1;\n player.playbackRate(playbackRatesOptions[newPlaybackRate]);\n }\n return;\n }\n\n // Skip forward / Skip backward\n if (e.key === \"ArrowRight\" || e.key === \"ArrowLeft\") {\n e.preventDefault();\n e.stopPropagation();\n const stepSeconds = player.controlBar.progressControl.seekBar.options_.stepSeconds;\n const duration: number = player.duration() ?? 0;\n const currentTime: number = player.currentTime() ?? 0;\n const delta: number = (e.key === \"ArrowRight\" ? stepSeconds : -stepSeconds);\n const newTime = Math.min(Math.max(currentTime + delta, 0), duration);\n player.currentTime(newTime);\n return;\n }\n\n // Volume change\n if (((e.key === \"ArrowUp\" || e.key === \"ArrowDown\") && e.ctrlKey)\n || ((e.key === \"ArrowUp\" || e.key === \"ArrowDown\") && e.metaKey)) {\n e.preventDefault();\n e.stopPropagation();\n const volumeStep: number = 0.1;\n const volume: number = player.volume() ?? 0;\n let newVolume = volume + (e.key === \"ArrowUp\" ? volumeStep : -volumeStep);\n newVolume = Math.min(Math.max(newVolume, 0), 1);\n player.volume(newVolume);\n }\n }\n\n getOptionsValue() {\n const baseOptions = {\n playbackRates: [1, 1.5, 2],\n controls: true,\n poster: this.poster,\n audioOnly: this.audioOnly,\n bigPlayButton: true,\n controlBar: {\n playToggle: true,\n volumePanel: true,\n progressControl: {\n seekBar: {\n stepSeconds: 10,\n },\n },\n remainingTimeDisplay: true,\n subsCapsButton: true,\n playbackRateMenuButton: true,\n fullscreenToggle: true,\n pictureInPictureToggle: false,\n },\n userActions: {\n hotkeys: (e: KeyboardEvent) => {\n this.setupHotkeys(e, this.player);\n },\n },\n };\n\n if (!this.options) {\n return baseOptions;\n }\n\n return {\n ...baseOptions,\n ...JSON.parse(this.options),\n };\n }\n\n async setupLanguage(language: string) {\n try {\n return await mapLangFile(language);\n } catch (err) {\n console.warn(\"Cannot load language file\", err);\n }\n }\n\n onAfterRendering(): void {\n if (this._youtubeSrc || this._vimeoSrc) {\n return;\n }\n\n import(\"video.js\").then(async ({ \"default\": videojs }) => {\n if (this.enableGlobalDependency) {\n window.videojs = videojs;\n }\n\n const options = this.getOptionsValue();\n const language: string = options?.language;\n if (language) {\n const languageData = await this.setupLanguage(language);\n videojs.addLanguage(language, {\n ...languageData,\n ...languageData?.default,\n });\n }\n\n this.player = videojs(this.shadowRoot?.querySelector(\".video-js\") || \"\", options);\n this.attachListeners(this.player);\n\n if (this.audioOnly) { return; }\n\n const backgroundOpacityElement = this.shadowRoot?.querySelector<HTMLOptionElement>(\".vjs-bg-opacity > select > option[value=\\\"0.5\\\"]\");\n if (backgroundOpacityElement) {\n backgroundOpacityElement.value = \"0.7\";\n backgroundOpacityElement.selected = true;\n }\n\n const fontSizeElement = this.shadowRoot?.querySelector<HTMLOptionElement>(\".vjs-font-percent > select > option[value=\\\"1.00\\\"]\");\n if (fontSizeElement) { fontSizeElement.value = \"1.2245\"; }\n\n const playbackSpeed = this.shadowRoot?.querySelector<HTMLOptionElement>(\".vjs-playback-rate .vjs-playback-rate-value\");\n playbackSpeed?.setAttribute(\"aria-hidden\", \"true\");\n });\n }\n\n handleEmbedPlay() {\n this._allowIframeLoad = true;\n }\n\n handleEmbedVideoReady() {\n this.fireEvent(\"videoReady\");\n }\n\n handleEmbedVideoPlaying = (embedEvent: CustomEvent) => {\n if (!this.videoStart) {\n this.fireEvent(\"videoStart\");\n this.videoStart = true;\n }\n const playedTime = Math.round(embedEvent.detail.percentPlayed as number);\n this.calculateVideoProgress(playedTime);\n };\n\n handleEmbedVideoEnded() {\n this.fireEvent(\"videoComplete\");\n }\n\n handleEmbedVideoPause() {\n this.fireEvent(\"videoPause\");\n }\n\n get _iframePosterPreload() {\n const shouldBlockIframe = this._iframeLoad && this.poster;\n if (this._allowIframeLoad) {\n return false;\n }\n if (!shouldBlockIframe) {\n this._allowIframeLoad = true;\n }\n return shouldBlockIframe;\n }\n\n get _iframeLoad() {\n return this._youtubeSrc || this._vimeoSrc;\n }\n\n get _tracks() {\n return this.getSlottedNodes(\"caption\");\n }\n\n get _vimeoSrc() {\n return this.source.includes(\"vimeo\");\n }\n\n get _youtubeSrc() {\n return this.source.includes(\"youtube\");\n }\n\n get aspectRatioClass() {\n switch (this.aspectRatio) {\n case AspectRatio[\"16:9\"]:\n return \"vjs-16-9 udex-media-player__fluid vjs-fluid\";\n case AspectRatio[\"9:16\"]:\n return \"vjs-9-16 udex-media-player__fluid vjs-fluid\";\n case AspectRatio[\"4:3\"]:\n return \"vjs-4-3 udex-media-player__fluid vjs-fluid\";\n case AspectRatio[\"1:1\"]:\n return \"vjs-1-1 udex-media-player__fluid vjs-fluid\";\n default:\n return \"\";\n }\n }\n\n get embedVideoFluidClass() {\n if (this.aspectRatio === AspectRatio[\"16:9\"] || this.aspectRatio === AspectRatio[\"9:16\"] || this.aspectRatio === AspectRatio[\"4:3\"] || this.aspectRatio === AspectRatio[\"1:1\"]) {\n return true;\n }\n return false;\n }\n\n get playerElementId(): string {\n return this.playerid || \"udex-media-player\";\n }\n\n onExitDOM(): void {\n if (this.player) {\n this.player.dispose();\n }\n }\n}\n\nUDExMediaPlayer.define();\n\nexport default UDExMediaPlayer;\n"]}
|
|
@@ -13,7 +13,7 @@ export type VimeoPlayer = Player;
|
|
|
13
13
|
* For the <code>udex-media-player-vimeo</code>
|
|
14
14
|
* <h3>ES6 Module Import</h3>
|
|
15
15
|
*
|
|
16
|
-
* <code>import "@
|
|
16
|
+
* <code>import "@sapudex/web-components/dist/MediaPlayerVimeo.js";</code>
|
|
17
17
|
*
|
|
18
18
|
* @constructor
|
|
19
19
|
* @extends UI5Element
|
package/dist/MediaPlayerVimeo.js
CHANGED
|
@@ -24,7 +24,7 @@ import MediaPlayerCss from "./generated/themes/MediaPlayer.css.js";
|
|
|
24
24
|
* For the <code>udex-media-player-vimeo</code>
|
|
25
25
|
* <h3>ES6 Module Import</h3>
|
|
26
26
|
*
|
|
27
|
-
* <code>import "@
|
|
27
|
+
* <code>import "@sapudex/web-components/dist/MediaPlayerVimeo.js";</code>
|
|
28
28
|
*
|
|
29
29
|
* @constructor
|
|
30
30
|
* @extends UI5Element
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MediaPlayerVimeo.js","sourceRoot":"","sources":["../src/MediaPlayerVimeo.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 Player from \"@vimeo/player\";\nimport MediaPlayerVimeoTemplate from \"./generated/templates/MediaPlayerVimeoTemplate.lit.js\";\n\n// Styles\nimport MediaPlayerCss from \"./generated/themes/MediaPlayer.css.js\";\n\nexport type VimeoPlayer = Player;\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-media-player-vimeo</code>\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@
|
|
1
|
+
{"version":3,"file":"MediaPlayerVimeo.js","sourceRoot":"","sources":["../src/MediaPlayerVimeo.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 Player from \"@vimeo/player\";\nimport MediaPlayerVimeoTemplate from \"./generated/templates/MediaPlayerVimeoTemplate.lit.js\";\n\n// Styles\nimport MediaPlayerCss from \"./generated/themes/MediaPlayer.css.js\";\n\nexport type VimeoPlayer = Player;\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-media-player-vimeo</code>\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@sapudex/web-components/dist/MediaPlayerVimeo.js\";</code>\n *\n * @constructor\n * @extends UI5Element\n * @public\n */\n@customElement({\n tag: \"udex-media-player-vimeo\",\n renderer: litRender,\n styles: [MediaPlayerCss],\n template: MediaPlayerVimeoTemplate,\n dependencies: [],\n})\n/**\n * Fires when video is ready\n *\n * @allowPreventDefault\n * @public\n */\n@event(\"ready\")\n/**\n * Fires when video play ended\n *\n * @allowPreventDefault\n * @public\n */\n@event(\"ended\")\n/**\n * Fires when video is paused\n *\n * @allowPreventDefault\n * @public\n */\n@event(\"pause\")\n/**\n * Fires when video watching progress changed\n *\n * @allowPreventDefault\n * @public\n */\n@event(\"playing\", {\n detail: {\n percentPlayed: { type: Number },\n },\n})\nclass UDExMediaPlayerVimeo extends UI5Element {\n /**\n * Defines the source of the video or audio\n *\n * @default \"\"\n * @public\n */\n @property({ type: String, defaultValue: \"\" })\n source!: string;\n /**\n * Defines a title for youtube video\n *\n * @default \"\"\n * @public\n */\n @property({ type: String, defaultValue: \"\" })\n title!: string;\n /**\n * Defines video width. Used for YouTube and Vimeo videos only.\n * Regular video and audio sizes are control by CSS variables.\n *\n * @default \"\"\n * @public\n */\n @property({ type: String, defaultValue: \"\" })\n width!: string;\n /**\n * Defines video height. Used for YouTube and Vimeo videos only.\n * Regular video and audio sizes are control by CSS variables.\n *\n * @default \"\"\n * @public\n */\n @property({ type: String, defaultValue: \"\" })\n height!: string;\n /**\n * CSS class name for iframe fluid styles\n *\n * @default \"\"\n * @public\n */\n @property({ type: String, defaultValue: \"\" })\n aspectRatioClass!: string;\n /**\n * Defines if video should be displayed in fluid mode.\n * In fluid mode, width and height will be ignored and size will be adjusted to the container.\n *\n * @default false\n * @public\n */\n @property({ type: Boolean })\n fluidMode!: boolean;\n\n player!: Player;\n\n setupPlayer = () => {\n const iframe = this.shadowRoot?.querySelector(\"iframe\");\n if (!iframe) {\n return;\n }\n this.player = new Player(iframe);\n\n this.player.on(\"timeupdate\", e => {\n this.fireEvent(\"playing\", { percentPlayed: e.percent * 100 });\n });\n\n this.player.on(\"pause\", () => {\n this.fireEvent(\"pause\");\n });\n\n this.player.on(\"ended\", () => {\n this.fireEvent(\"ended\");\n });\n\n this.player.on(\"loaded\", () => {\n this.fireEvent(\"ready\");\n });\n };\n\n onEnterDOM(): void {\n this.setupPlayer();\n }\n\n /**\n * Returns video element\n * @public\n */\n getPlayer(): VimeoPlayer {\n return this.player;\n }\n\n get fluidModeClass() {\n if (this.fluidMode) {\n return \"video-js udex-media-player__fluid\";\n }\n return \"\";\n }\n}\n\nUDExMediaPlayerVimeo.define();\n\nexport default UDExMediaPlayerVimeo;\n"]}
|
|
@@ -17,7 +17,7 @@ declare global {
|
|
|
17
17
|
* For the <code>udex-media-player-youtube</code>
|
|
18
18
|
* <h3>ES6 Module Import</h3>
|
|
19
19
|
*
|
|
20
|
-
* <code>import "@
|
|
20
|
+
* <code>import "@sapudex/web-components/dist/MediaPlayerYoutube.js";</code>
|
|
21
21
|
*
|
|
22
22
|
* @constructor
|
|
23
23
|
* @extends UI5Element
|
|
@@ -35,7 +35,7 @@ const MATCH_NUMERIC = /^\d+$/;
|
|
|
35
35
|
* For the <code>udex-media-player-youtube</code>
|
|
36
36
|
* <h3>ES6 Module Import</h3>
|
|
37
37
|
*
|
|
38
|
-
* <code>import "@
|
|
38
|
+
* <code>import "@sapudex/web-components/dist/MediaPlayerYoutube.js";</code>
|
|
39
39
|
*
|
|
40
40
|
* @constructor
|
|
41
41
|
* @extends UI5Element
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MediaPlayerYoutube.js","sourceRoot":"","sources":["../src/MediaPlayerYoutube.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\";\n\nimport MediaPlayerYoutubeTemplate from \"./generated/templates/MediaPlayerYoutubeTemplate.lit.js\";\n\n// Styles\nimport MediaPlayerYoutubeCss from \"./generated/themes/MediaPlayerYoutube.css.js\";\nimport MediaPlayerCss from \"./generated/themes/MediaPlayer.css\";\nimport { AspectRatio } from \"./MediaPlayer.js\";\n\nconst MATCH_NOCOOKIE = /youtube-nocookie\\.com/;\nconst 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\\//;\nconst NOCOOKIE_HOST = \"https://www.youtube-nocookie.com\";\nconst SDK_URL = \"https://www.youtube.com/iframe_api\";\nconst SDK_GLOBAL_READY = \"onYouTubeIframeAPIReady\";\nconst CHECK_INTERVAL_TIME = 1000;\nconst MATCH_START_QUERY = /[?&#](?:start|t)=([0-9hms]+)/;\nconst MATCH_END_QUERY = /[?&#]end=([0-9hms]+)/;\nconst MATCH_START_STAMP = /(\\d+)(h|m|s)/g;\nconst MATCH_NUMERIC = /^\\d+$/;\n\ndeclare global {\n interface Window {\n onYouTubeIframeAPIReady: () => void;\n }\n}\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-media-player-youtube</code>\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@udex/web-components/dist/MediaPlayerYoutube.js\";</code>\n *\n * @constructor\n * @extends UI5Element\n * @public\n */\n@customElement({\n tag: \"udex-media-player-youtube\",\n renderer: litRender,\n styles: [MediaPlayerCss, MediaPlayerYoutubeCss],\n template: MediaPlayerYoutubeTemplate,\n})\n/**\n * Fires when video is ready\n *\n * @allowPreventDefault\n * @public\n */\n@event(\"ready\")\n/**\n * Fires when video play ended\n *\n * @allowPreventDefault\n * @public\n */\n@event(\"ended\")\n/**\n * Fires when video is paused\n *\n * @allowPreventDefault\n * @public\n */\n@event(\"pause\")\n/**\n * Fires when video watching progress changed\n *\n * @allowPreventDefault\n * @public\n */\n@event(\"playing\", {\n detail: {\n percentPlayed: { type: Number },\n },\n})\nclass UDExMediaPlayerYoutube extends UI5Element {\n /**\n * Defines the source of the video or audio\n *\n * @default \"\"\n * @public\n */\n @property({ type: String, defaultValue: \"\" })\n source!: string;\n /**\n * Defines video width. Used for YouTube and Vimeo videos only.\n * Regular video and audio sizes are control by CSS variables.\n *\n * @default \"\"\n * @public\n */\n @property({ type: String, defaultValue: \"\" })\n width!: string;\n /**\n * Defines video height. Used for YouTube and Vimeo videos only.\n * Regular video and audio sizes are control by CSS variables.\n *\n * @default \"\"\n * @public\n */\n @property({ type: String, defaultValue: \"\" })\n height!: string;\n /**\n * Defines aspect ratio of video. If set, video will be display in fluid mode.\n * Possible values: \"16:9\" , \"9:16\", \"4:3\", \"1:1\", \"none\"\n *\n * @default \"16:9\"\n * @public\n */\n @property({ type: AspectRatio, defaultValue: \"16:9\" })\n aspectRatio!: `${AspectRatio}`;\n /**\n * Defines if video should be displayed in fluid mode.\n * In fluid mode, width and height will be ignored and size will be adjusted to the container.\n *\n * @default false\n * @public\n */\n @property({ type: Boolean })\n fluidMode!: boolean;\n\n private youtubePlayer!: YT.Player;\n private checkInterval?: number;\n private videoDuration: number = 0;\n\n get videoId(): string {\n if (!this.source) {\n return \"\";\n }\n const urlMatch = this.source.match(MATCH_URL_YOUTUBE);\n return urlMatch ? urlMatch[1] : \"\";\n }\n\n get url(): URL {\n return new URL(this.source);\n }\n\n get autoplay(): number | undefined {\n const param = this.url.searchParams.get(\"autoplay\");\n return param ? parseInt(param) : undefined;\n }\n\n get muted(): number | undefined {\n const param = this.url.searchParams.get(\"mute\");\n return param ? parseInt(param) : undefined;\n }\n\n get playsinline(): number | undefined {\n const param = this.url.searchParams.get(\"playsinline\");\n return param ? parseInt(param) : undefined;\n }\n\n setupYoutubeAPI = () => {\n if (!window.YT) { // Only load script if YT is not already loaded\n const tag = document.createElement(\"script\");\n tag.src = SDK_URL;\n const firstScriptTag = document.getElementsByTagName(\"script\")[0];\n firstScriptTag.parentNode!.insertBefore(tag, firstScriptTag);\n }\n\n window[SDK_GLOBAL_READY] = () => this.onYouTubeIframeAPIReady();\n\n // If YouTube IFrame API is already loaded, directly initialize the player\n if (window.YT && window.YT.Player) {\n this.onYouTubeIframeAPIReady();\n }\n };\n\n onYouTubeIframeAPIReady = (): void => {\n this.youtubePlayer = new YT.Player(this.shadowRoot?.querySelector(\"#player\") as HTMLElement, {\n height: this.height,\n width: this.width,\n videoId: this.videoId,\n playerVars: {\n autoplay: this.autoplay ? 1 : 0,\n mute: this.muted ? 1 : 0,\n playsinline: this.playsinline ? 1 : 0,\n origin: window.location.origin,\n start: this.parseStartTime(this.source),\n end: this.parseEndTime(this.source),\n },\n host: MATCH_NOCOOKIE.test(this.source) ? NOCOOKIE_HOST : undefined,\n events: {\n \"onReady\": this.onPlayerReady,\n \"onStateChange\": this.onPlayerStateChange,\n },\n } as unknown as YT.PlayerOptions);\n };\n\n private onPlayerReady = (ytevent: YT.PlayerEvent): void => {\n this.videoDuration = ytevent.target.getDuration();\n this.fireEvent(\"ready\");\n };\n\n private onPlayerStateChange = (ytevent: YT.OnStateChangeEvent): void => {\n const { data } = ytevent;\n const { PLAYING, PAUSED, ENDED } = window.YT.PlayerState;\n\n if (data === PLAYING && !this.checkInterval) {\n this.checkInterval = window.setInterval(() => {\n this.checkVideoProgress();\n }, CHECK_INTERVAL_TIME);\n } else if (data !== PLAYING && this.checkInterval) {\n clearInterval(this.checkInterval);\n this.checkInterval = undefined;\n }\n\n if (data === ENDED) {\n this.fireEvent(\"ended\", ytevent);\n }\n\n if (data === PAUSED) {\n this.fireEvent(\"pause\", ytevent);\n }\n };\n\n private checkVideoProgress(): void {\n const currentTime = this.youtubePlayer?.getCurrentTime() || 0;\n const percentageWatched = (currentTime / this.videoDuration) * 100;\n this.fireEvent(\"playing\", { percentPlayed: percentageWatched });\n }\n\n parseTimeParam(url: any, pattern: RegExp) {\n if (url instanceof Array) {\n return undefined;\n }\n const match = url.match(pattern);\n if (match) {\n const stamp: string = match[1];\n if (stamp.match(MATCH_START_STAMP)) {\n return this.parseTimeString(stamp);\n }\n if (MATCH_NUMERIC.test(stamp)) {\n return parseInt(stamp);\n }\n }\n return undefined;\n }\n\n parseTimeString(stamp: string) {\n let seconds = 0;\n let array = MATCH_START_STAMP.exec(stamp);\n while (array !== null) {\n const [, count, period] = array;\n if (period === \"h\") { seconds += parseInt(count) * 60 * 60; }\n if (period === \"m\") { seconds += parseInt(count) * 60; }\n if (period === \"s\") { seconds += parseInt(count); }\n array = MATCH_START_STAMP.exec(stamp);\n }\n return seconds;\n }\n\n parseStartTime(url: string) {\n return this.parseTimeParam(url, MATCH_START_QUERY);\n }\n\n parseEndTime(url: string) {\n return this.parseTimeParam(url, MATCH_END_QUERY);\n }\n\n onEnterDOM(): void {\n this.setupYoutubeAPI();\n }\n\n onExitDOM() {\n if (this.checkInterval) {\n clearInterval(this.checkInterval);\n this.checkInterval = undefined;\n }\n }\n\n /**\n * Returns video element\n * @public\n */\n getPlayer(): YT.Player | null {\n return this.youtubePlayer || null;\n }\n\n get fluidModeClass() {\n if (this.fluidMode) {\n return \"udex-media-player__fluid\";\n }\n return \"\";\n }\n}\n\nUDExMediaPlayerYoutube.define();\n\nexport default UDExMediaPlayerYoutube;\n"]}
|
|
1
|
+
{"version":3,"file":"MediaPlayerYoutube.js","sourceRoot":"","sources":["../src/MediaPlayerYoutube.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\";\n\nimport MediaPlayerYoutubeTemplate from \"./generated/templates/MediaPlayerYoutubeTemplate.lit.js\";\n\n// Styles\nimport MediaPlayerYoutubeCss from \"./generated/themes/MediaPlayerYoutube.css.js\";\nimport MediaPlayerCss from \"./generated/themes/MediaPlayer.css\";\nimport { AspectRatio } from \"./MediaPlayer.js\";\n\nconst MATCH_NOCOOKIE = /youtube-nocookie\\.com/;\nconst 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\\//;\nconst NOCOOKIE_HOST = \"https://www.youtube-nocookie.com\";\nconst SDK_URL = \"https://www.youtube.com/iframe_api\";\nconst SDK_GLOBAL_READY = \"onYouTubeIframeAPIReady\";\nconst CHECK_INTERVAL_TIME = 1000;\nconst MATCH_START_QUERY = /[?&#](?:start|t)=([0-9hms]+)/;\nconst MATCH_END_QUERY = /[?&#]end=([0-9hms]+)/;\nconst MATCH_START_STAMP = /(\\d+)(h|m|s)/g;\nconst MATCH_NUMERIC = /^\\d+$/;\n\ndeclare global {\n interface Window {\n onYouTubeIframeAPIReady: () => void;\n }\n}\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-media-player-youtube</code>\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@sapudex/web-components/dist/MediaPlayerYoutube.js\";</code>\n *\n * @constructor\n * @extends UI5Element\n * @public\n */\n@customElement({\n tag: \"udex-media-player-youtube\",\n renderer: litRender,\n styles: [MediaPlayerCss, MediaPlayerYoutubeCss],\n template: MediaPlayerYoutubeTemplate,\n})\n/**\n * Fires when video is ready\n *\n * @allowPreventDefault\n * @public\n */\n@event(\"ready\")\n/**\n * Fires when video play ended\n *\n * @allowPreventDefault\n * @public\n */\n@event(\"ended\")\n/**\n * Fires when video is paused\n *\n * @allowPreventDefault\n * @public\n */\n@event(\"pause\")\n/**\n * Fires when video watching progress changed\n *\n * @allowPreventDefault\n * @public\n */\n@event(\"playing\", {\n detail: {\n percentPlayed: { type: Number },\n },\n})\nclass UDExMediaPlayerYoutube extends UI5Element {\n /**\n * Defines the source of the video or audio\n *\n * @default \"\"\n * @public\n */\n @property({ type: String, defaultValue: \"\" })\n source!: string;\n /**\n * Defines video width. Used for YouTube and Vimeo videos only.\n * Regular video and audio sizes are control by CSS variables.\n *\n * @default \"\"\n * @public\n */\n @property({ type: String, defaultValue: \"\" })\n width!: string;\n /**\n * Defines video height. Used for YouTube and Vimeo videos only.\n * Regular video and audio sizes are control by CSS variables.\n *\n * @default \"\"\n * @public\n */\n @property({ type: String, defaultValue: \"\" })\n height!: string;\n /**\n * Defines aspect ratio of video. If set, video will be display in fluid mode.\n * Possible values: \"16:9\" , \"9:16\", \"4:3\", \"1:1\", \"none\"\n *\n * @default \"16:9\"\n * @public\n */\n @property({ type: AspectRatio, defaultValue: \"16:9\" })\n aspectRatio!: `${AspectRatio}`;\n /**\n * Defines if video should be displayed in fluid mode.\n * In fluid mode, width and height will be ignored and size will be adjusted to the container.\n *\n * @default false\n * @public\n */\n @property({ type: Boolean })\n fluidMode!: boolean;\n\n private youtubePlayer!: YT.Player;\n private checkInterval?: number;\n private videoDuration: number = 0;\n\n get videoId(): string {\n if (!this.source) {\n return \"\";\n }\n const urlMatch = this.source.match(MATCH_URL_YOUTUBE);\n return urlMatch ? urlMatch[1] : \"\";\n }\n\n get url(): URL {\n return new URL(this.source);\n }\n\n get autoplay(): number | undefined {\n const param = this.url.searchParams.get(\"autoplay\");\n return param ? parseInt(param) : undefined;\n }\n\n get muted(): number | undefined {\n const param = this.url.searchParams.get(\"mute\");\n return param ? parseInt(param) : undefined;\n }\n\n get playsinline(): number | undefined {\n const param = this.url.searchParams.get(\"playsinline\");\n return param ? parseInt(param) : undefined;\n }\n\n setupYoutubeAPI = () => {\n if (!window.YT) { // Only load script if YT is not already loaded\n const tag = document.createElement(\"script\");\n tag.src = SDK_URL;\n const firstScriptTag = document.getElementsByTagName(\"script\")[0];\n firstScriptTag.parentNode!.insertBefore(tag, firstScriptTag);\n }\n\n window[SDK_GLOBAL_READY] = () => this.onYouTubeIframeAPIReady();\n\n // If YouTube IFrame API is already loaded, directly initialize the player\n if (window.YT && window.YT.Player) {\n this.onYouTubeIframeAPIReady();\n }\n };\n\n onYouTubeIframeAPIReady = (): void => {\n this.youtubePlayer = new YT.Player(this.shadowRoot?.querySelector(\"#player\") as HTMLElement, {\n height: this.height,\n width: this.width,\n videoId: this.videoId,\n playerVars: {\n autoplay: this.autoplay ? 1 : 0,\n mute: this.muted ? 1 : 0,\n playsinline: this.playsinline ? 1 : 0,\n origin: window.location.origin,\n start: this.parseStartTime(this.source),\n end: this.parseEndTime(this.source),\n },\n host: MATCH_NOCOOKIE.test(this.source) ? NOCOOKIE_HOST : undefined,\n events: {\n \"onReady\": this.onPlayerReady,\n \"onStateChange\": this.onPlayerStateChange,\n },\n } as unknown as YT.PlayerOptions);\n };\n\n private onPlayerReady = (ytevent: YT.PlayerEvent): void => {\n this.videoDuration = ytevent.target.getDuration();\n this.fireEvent(\"ready\");\n };\n\n private onPlayerStateChange = (ytevent: YT.OnStateChangeEvent): void => {\n const { data } = ytevent;\n const { PLAYING, PAUSED, ENDED } = window.YT.PlayerState;\n\n if (data === PLAYING && !this.checkInterval) {\n this.checkInterval = window.setInterval(() => {\n this.checkVideoProgress();\n }, CHECK_INTERVAL_TIME);\n } else if (data !== PLAYING && this.checkInterval) {\n clearInterval(this.checkInterval);\n this.checkInterval = undefined;\n }\n\n if (data === ENDED) {\n this.fireEvent(\"ended\", ytevent);\n }\n\n if (data === PAUSED) {\n this.fireEvent(\"pause\", ytevent);\n }\n };\n\n private checkVideoProgress(): void {\n const currentTime = this.youtubePlayer?.getCurrentTime() || 0;\n const percentageWatched = (currentTime / this.videoDuration) * 100;\n this.fireEvent(\"playing\", { percentPlayed: percentageWatched });\n }\n\n parseTimeParam(url: any, pattern: RegExp) {\n if (url instanceof Array) {\n return undefined;\n }\n const match = url.match(pattern);\n if (match) {\n const stamp: string = match[1];\n if (stamp.match(MATCH_START_STAMP)) {\n return this.parseTimeString(stamp);\n }\n if (MATCH_NUMERIC.test(stamp)) {\n return parseInt(stamp);\n }\n }\n return undefined;\n }\n\n parseTimeString(stamp: string) {\n let seconds = 0;\n let array = MATCH_START_STAMP.exec(stamp);\n while (array !== null) {\n const [, count, period] = array;\n if (period === \"h\") { seconds += parseInt(count) * 60 * 60; }\n if (period === \"m\") { seconds += parseInt(count) * 60; }\n if (period === \"s\") { seconds += parseInt(count); }\n array = MATCH_START_STAMP.exec(stamp);\n }\n return seconds;\n }\n\n parseStartTime(url: string) {\n return this.parseTimeParam(url, MATCH_START_QUERY);\n }\n\n parseEndTime(url: string) {\n return this.parseTimeParam(url, MATCH_END_QUERY);\n }\n\n onEnterDOM(): void {\n this.setupYoutubeAPI();\n }\n\n onExitDOM() {\n if (this.checkInterval) {\n clearInterval(this.checkInterval);\n this.checkInterval = undefined;\n }\n }\n\n /**\n * Returns video element\n * @public\n */\n getPlayer(): YT.Player | null {\n return this.youtubePlayer || null;\n }\n\n get fluidModeClass() {\n if (this.fluidMode) {\n return \"udex-media-player__fluid\";\n }\n return \"\";\n }\n}\n\nUDExMediaPlayerYoutube.define();\n\nexport default UDExMediaPlayerYoutube;\n"]}
|
package/dist/MessageStrip.d.ts
CHANGED
|
@@ -1,39 +1,7 @@
|
|
|
1
1
|
import type I18nBundle from "@ui5/webcomponents-base/dist/i18nBundle.js";
|
|
2
2
|
import { I18nText } from "@ui5/webcomponents-base/dist/i18nBundle.js";
|
|
3
3
|
import MessageStrip from "@ui5/webcomponents/dist/MessageStrip.js";
|
|
4
|
-
|
|
5
|
-
/**
|
|
6
|
-
* Message should be just an information
|
|
7
|
-
* @public
|
|
8
|
-
*/
|
|
9
|
-
Information = "Information",
|
|
10
|
-
/**
|
|
11
|
-
* Message is a success message
|
|
12
|
-
* @public
|
|
13
|
-
*/
|
|
14
|
-
Positive = "Positive",
|
|
15
|
-
/**
|
|
16
|
-
* Message is an error
|
|
17
|
-
* @public
|
|
18
|
-
*/
|
|
19
|
-
Negative = "Negative",
|
|
20
|
-
/**
|
|
21
|
-
* Message is a warning
|
|
22
|
-
* @public
|
|
23
|
-
*/
|
|
24
|
-
Warning = "Warning",
|
|
25
|
-
/**
|
|
26
|
-
* Message is an action
|
|
27
|
-
* @public
|
|
28
|
-
*/
|
|
29
|
-
Action = "Action"
|
|
30
|
-
}
|
|
31
|
-
export declare enum UdexMessageStripStatusType {
|
|
32
|
-
Icon = "Icon",
|
|
33
|
-
Text = "Text",
|
|
34
|
-
None = "None"
|
|
35
|
-
}
|
|
36
|
-
type textStatusType = Record<Exclude<MessageStripDesign, "Action">, string>;
|
|
4
|
+
import { UdexMessageStripDesign, UdexMessageStripStatusType } from "./types/MessageStrip.js";
|
|
37
5
|
/**
|
|
38
6
|
* @class
|
|
39
7
|
*
|
|
@@ -49,7 +17,7 @@ declare class UDExMessageStrip extends MessageStrip {
|
|
|
49
17
|
* @public
|
|
50
18
|
*/
|
|
51
19
|
/** @ts-expect-error */
|
|
52
|
-
design: `${
|
|
20
|
+
design: `${UdexMessageStripDesign}`;
|
|
53
21
|
/**
|
|
54
22
|
* Defines the component Status Type.
|
|
55
23
|
*
|
|
@@ -77,15 +45,18 @@ declare class UDExMessageStrip extends MessageStrip {
|
|
|
77
45
|
default: Node;
|
|
78
46
|
static i18nBundle: I18nBundle;
|
|
79
47
|
static onDefine(): Promise<void>;
|
|
80
|
-
getTranslation(text: I18nText): string;
|
|
81
|
-
textStatusTypeMapping(): textStatusType;
|
|
82
48
|
onBeforeRendering(): void;
|
|
49
|
+
getTranslation(text: I18nText): string;
|
|
50
|
+
textStatusTypeMapping(): Record<string, string>;
|
|
83
51
|
isDesignAction(): boolean;
|
|
52
|
+
_closeClick(): void;
|
|
84
53
|
get shouldHideIcon(): boolean;
|
|
85
54
|
get hideTextStatus(): boolean;
|
|
86
55
|
get textStatus(): string | undefined;
|
|
87
56
|
get _closeButtonText(): string;
|
|
88
|
-
get
|
|
89
|
-
|
|
57
|
+
get isNotIconStatusType(): boolean;
|
|
58
|
+
get hasIcon(): boolean;
|
|
59
|
+
get isDesignActionOrIsNotIconType(): boolean;
|
|
60
|
+
get hiddenText(): string;
|
|
90
61
|
}
|
|
91
62
|
export default UDExMessageStrip;
|
package/dist/MessageStrip.js
CHANGED
|
@@ -15,44 +15,11 @@ import MessageStrip from "@ui5/webcomponents/dist/MessageStrip.js";
|
|
|
15
15
|
import messageStripCss from "@ui5/webcomponents/dist/generated/themes/MessageStrip.css.js";
|
|
16
16
|
import UI5Icon from "@ui5/webcomponents/dist/Icon.js";
|
|
17
17
|
import UDExButton from "./Button.js";
|
|
18
|
-
import { MESSAGE_STRIP_CLOSE_BUTTON, MESSAGE_STRIP_ERROR, MESSAGE_STRIP_INFORMATION, MESSAGE_STRIP_SUCCESS, MESSAGE_STRIP_WARNING, } from "./generated/i18n/i18n-defaults.js";
|
|
18
|
+
import { MESSAGE_STRIP_CLOSE_BUTTON, MESSAGE_STRIP_ERROR, MESSAGE_STRIP_INFORMATION, MESSAGE_STRIP_SUCCESS, MESSAGE_STRIP_WARNING, MESSAGE_STRIP_ACTION, } from "./generated/i18n/i18n-defaults.js";
|
|
19
|
+
import { UdexMessageStripDesign, UdexMessageStripStatusType } from "./types/MessageStrip.js";
|
|
19
20
|
import MessageStripTemplate from "./generated/templates/MessageStripTemplate.lit.js";
|
|
20
21
|
// Styles
|
|
21
22
|
import MessageStripCss from "./generated/themes/MessageStrip.css.js";
|
|
22
|
-
export var MessageStripDesign;
|
|
23
|
-
(function (MessageStripDesign) {
|
|
24
|
-
/**
|
|
25
|
-
* Message should be just an information
|
|
26
|
-
* @public
|
|
27
|
-
*/
|
|
28
|
-
MessageStripDesign["Information"] = "Information";
|
|
29
|
-
/**
|
|
30
|
-
* Message is a success message
|
|
31
|
-
* @public
|
|
32
|
-
*/
|
|
33
|
-
MessageStripDesign["Positive"] = "Positive";
|
|
34
|
-
/**
|
|
35
|
-
* Message is an error
|
|
36
|
-
* @public
|
|
37
|
-
*/
|
|
38
|
-
MessageStripDesign["Negative"] = "Negative";
|
|
39
|
-
/**
|
|
40
|
-
* Message is a warning
|
|
41
|
-
* @public
|
|
42
|
-
*/
|
|
43
|
-
MessageStripDesign["Warning"] = "Warning";
|
|
44
|
-
/**
|
|
45
|
-
* Message is an action
|
|
46
|
-
* @public
|
|
47
|
-
*/
|
|
48
|
-
MessageStripDesign["Action"] = "Action";
|
|
49
|
-
})(MessageStripDesign || (MessageStripDesign = {}));
|
|
50
|
-
export var UdexMessageStripStatusType;
|
|
51
|
-
(function (UdexMessageStripStatusType) {
|
|
52
|
-
UdexMessageStripStatusType["Icon"] = "Icon";
|
|
53
|
-
UdexMessageStripStatusType["Text"] = "Text";
|
|
54
|
-
UdexMessageStripStatusType["None"] = "None";
|
|
55
|
-
})(UdexMessageStripStatusType || (UdexMessageStripStatusType = {}));
|
|
56
23
|
/**
|
|
57
24
|
* @class
|
|
58
25
|
*
|
|
@@ -63,58 +30,65 @@ export var UdexMessageStripStatusType;
|
|
|
63
30
|
*/
|
|
64
31
|
let UDExMessageStrip = UDExMessageStrip_1 = class UDExMessageStrip extends MessageStrip {
|
|
65
32
|
static async onDefine() {
|
|
66
|
-
UDExMessageStrip_1.i18nBundle = await getI18nBundle("@
|
|
33
|
+
UDExMessageStrip_1.i18nBundle = await getI18nBundle("@sapudex/web-components");
|
|
34
|
+
}
|
|
35
|
+
onBeforeRendering() {
|
|
36
|
+
if (this.isDesignActionOrIsNotIconType) {
|
|
37
|
+
this.hideIcon = true;
|
|
38
|
+
}
|
|
67
39
|
}
|
|
68
40
|
getTranslation(text) {
|
|
69
41
|
return UDExMessageStrip_1.i18nBundle.getText(text);
|
|
70
42
|
}
|
|
71
43
|
textStatusTypeMapping() {
|
|
72
44
|
return {
|
|
73
|
-
Information: this.getTranslation(MESSAGE_STRIP_INFORMATION),
|
|
74
|
-
Positive: this.getTranslation(MESSAGE_STRIP_SUCCESS),
|
|
75
|
-
Negative: this.getTranslation(MESSAGE_STRIP_ERROR),
|
|
76
|
-
Warning: this.getTranslation(MESSAGE_STRIP_WARNING),
|
|
45
|
+
[UdexMessageStripDesign.Information]: this.getTranslation(MESSAGE_STRIP_INFORMATION),
|
|
46
|
+
[UdexMessageStripDesign.Positive]: this.getTranslation(MESSAGE_STRIP_SUCCESS),
|
|
47
|
+
[UdexMessageStripDesign.Negative]: this.getTranslation(MESSAGE_STRIP_ERROR),
|
|
48
|
+
[UdexMessageStripDesign.Warning]: this.getTranslation(MESSAGE_STRIP_WARNING),
|
|
49
|
+
[UdexMessageStripDesign.Action]: this.getTranslation(MESSAGE_STRIP_ACTION),
|
|
77
50
|
};
|
|
78
51
|
}
|
|
79
|
-
onBeforeRendering() {
|
|
80
|
-
if (this.isDesignAction()
|
|
81
|
-
|| this.statusType !== UdexMessageStripStatusType.Icon) {
|
|
82
|
-
this.hideIcon = true;
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
52
|
isDesignAction() {
|
|
86
|
-
return this.design ===
|
|
53
|
+
return this.design === UdexMessageStripDesign.Action;
|
|
54
|
+
}
|
|
55
|
+
_closeClick() {
|
|
56
|
+
this.fireEvent("close");
|
|
87
57
|
}
|
|
88
58
|
get shouldHideIcon() {
|
|
89
|
-
if (this.
|
|
90
|
-
|| this.statusType !== UdexMessageStripStatusType.Icon) {
|
|
59
|
+
if (this.isDesignActionOrIsNotIconType) {
|
|
91
60
|
return this.hideIcon || this.icon.length === 0;
|
|
92
61
|
}
|
|
93
62
|
return this.hideIcon;
|
|
94
63
|
}
|
|
95
64
|
get hideTextStatus() {
|
|
96
|
-
return
|
|
97
|
-
|| this.isDesignAction());
|
|
65
|
+
return this.statusType !== UdexMessageStripStatusType.Text || this.isDesignAction();
|
|
98
66
|
}
|
|
99
67
|
get textStatus() {
|
|
100
|
-
if (this.design !==
|
|
68
|
+
if (this.design !== UdexMessageStripDesign.Action) {
|
|
101
69
|
return this.textStatusTypeMapping()[this.design];
|
|
102
70
|
}
|
|
103
71
|
}
|
|
104
72
|
get _closeButtonText() {
|
|
105
73
|
return `${this.textStatus ?? ""} ${this.getTranslation(MESSAGE_STRIP_CLOSE_BUTTON)}`;
|
|
106
74
|
}
|
|
107
|
-
get
|
|
75
|
+
get isNotIconStatusType() {
|
|
76
|
+
return this.statusType !== UdexMessageStripStatusType.Icon;
|
|
77
|
+
}
|
|
78
|
+
get hasIcon() {
|
|
108
79
|
return this.icon.length > 0;
|
|
109
80
|
}
|
|
110
|
-
|
|
111
|
-
this.
|
|
81
|
+
get isDesignActionOrIsNotIconType() {
|
|
82
|
+
return this.isDesignAction() || this.isNotIconStatusType;
|
|
83
|
+
}
|
|
84
|
+
get hiddenText() {
|
|
85
|
+
return `${this.textStatusTypeMapping()[this.design]} ${this.hideCloseButton ? "" : this._closableText}`;
|
|
112
86
|
}
|
|
113
87
|
};
|
|
114
88
|
__decorate([
|
|
115
89
|
property({
|
|
116
|
-
type:
|
|
117
|
-
defaultValue:
|
|
90
|
+
type: UdexMessageStripDesign,
|
|
91
|
+
defaultValue: UdexMessageStripDesign.Action,
|
|
118
92
|
})
|
|
119
93
|
/** @ts-expect-error */
|
|
120
94
|
], UDExMessageStrip.prototype, "design", void 0);
|