@sapudex/web-components 2.1.0 → 2.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cypress/fixtures/footer-links.ts +221 -0
- package/cypress/specs/Checkbox.cy.tsx +92 -0
- package/cypress/specs/Footer.cy.tsx +313 -0
- package/cypress/specs/ListItem.cy.tsx +4 -4
- package/cypress/specs/PhoneNumberField.cy.tsx +2 -2
- package/cypress/specs/SecondaryNavigationDesktop.cy.tsx +28 -37
- package/cypress/specs/Slider.cy.tsx +4 -3
- package/cypress/specs/TextField.cy.tsx +4 -0
- package/cypress/specs/Tooltip.cy.tsx +26 -0
- package/cypress/specs/Upload.cy.tsx +3 -3
- package/dist/Badge.d.ts +2 -2
- package/dist/Badge.js +4 -4
- package/dist/Badge.js.map +1 -1
- package/dist/Breadcrumbs.d.ts +1 -0
- package/dist/Breadcrumbs.js +11 -1
- package/dist/Breadcrumbs.js.map +1 -1
- package/dist/Button.d.ts +12 -1
- package/dist/Button.js +12 -1
- package/dist/Button.js.map +1 -1
- package/dist/Checkbox.d.ts +18 -0
- package/dist/Checkbox.js +39 -1
- package/dist/Checkbox.js.map +1 -1
- package/dist/ControlButton.d.ts +2 -1
- package/dist/ControlButton.js +2 -1
- package/dist/ControlButton.js.map +1 -1
- package/dist/DatePicker.d.ts +2 -2
- package/dist/DatePicker.js.map +1 -1
- package/dist/InputGroup.d.ts +5 -2
- package/dist/InputGroup.js +6 -0
- package/dist/InputGroup.js.map +1 -1
- package/dist/Link.d.ts +3 -4
- package/dist/Link.js +4 -5
- package/dist/Link.js.map +1 -1
- package/dist/ListItem.d.ts +3 -2
- package/dist/ListItem.js +2 -2
- package/dist/ListItem.js.map +1 -1
- package/dist/MastheadItem.js +1 -1
- package/dist/MastheadItem.js.map +1 -1
- package/dist/MediaPlayer.d.ts +2 -1
- package/dist/MediaPlayer.js.map +1 -1
- package/dist/MediaPlayerYoutube.d.ts +2 -1
- package/dist/MediaPlayerYoutube.js.map +1 -1
- package/dist/Pagination.d.ts +1 -1
- package/dist/Pagination.js.map +1 -1
- package/dist/PasswordField.d.ts +10 -0
- package/dist/PasswordField.js +14 -0
- package/dist/PasswordField.js.map +1 -1
- package/dist/PhoneNumberField.d.ts +6 -2
- package/dist/PhoneNumberField.js +22 -2
- package/dist/PhoneNumberField.js.map +1 -1
- package/dist/ProgressBar.d.ts +2 -2
- package/dist/ProgressBar.js +6 -6
- package/dist/ProgressBar.js.map +1 -1
- package/dist/RadioButton.d.ts +3 -2
- package/dist/RadioButton.js +7 -6
- package/dist/RadioButton.js.map +1 -1
- package/dist/Search.d.ts +0 -1
- package/dist/Search.js +1 -3
- package/dist/Search.js.map +1 -1
- package/dist/SecondaryNavigation.d.ts +4 -1
- package/dist/SecondaryNavigation.js +38 -10
- package/dist/SecondaryNavigation.js.map +1 -1
- package/dist/SecondaryNavigationItem.d.ts +10 -0
- package/dist/SecondaryNavigationItem.js +19 -0
- package/dist/SecondaryNavigationItem.js.map +1 -1
- package/dist/SecondaryNavigationItemBase.d.ts +1 -0
- package/dist/SecondaryNavigationItemBase.js +4 -0
- package/dist/SecondaryNavigationItemBase.js.map +1 -1
- package/dist/SecondaryNavigationSubItem.d.ts +0 -1
- package/dist/SecondaryNavigationSubItem.js +0 -4
- package/dist/SecondaryNavigationSubItem.js.map +1 -1
- package/dist/SegmentedButton.d.ts +1 -1
- package/dist/SegmentedButton.js +1 -1
- package/dist/SegmentedButton.js.map +1 -1
- package/dist/SegmentedButtonItem.d.ts +1 -1
- package/dist/SegmentedButtonItem.js +2 -2
- package/dist/SegmentedButtonItem.js.map +1 -1
- package/dist/StatusBadge.d.ts +8 -3
- package/dist/StatusBadge.js +9 -1
- package/dist/StatusBadge.js.map +1 -1
- package/dist/StepInput.d.ts +3 -3
- package/dist/StepInput.js.map +1 -1
- package/dist/TableCellBase.d.ts +2 -2
- package/dist/TableCellBase.js.map +1 -1
- package/dist/Tag.d.ts +2 -2
- package/dist/Tag.js +4 -4
- package/dist/Tag.js.map +1 -1
- package/dist/TextArea.d.ts +2 -2
- package/dist/TextArea.js +9 -9
- package/dist/TextArea.js.map +1 -1
- package/dist/TextField.d.ts +10 -2
- package/dist/TextField.js +20 -5
- package/dist/TextField.js.map +1 -1
- package/dist/Toast.js +1 -1
- package/dist/Toast.js.map +1 -1
- package/dist/Tooltip.d.ts +5 -0
- package/dist/Tooltip.js +11 -1
- package/dist/Tooltip.js.map +1 -1
- package/dist/Upload.d.ts +1 -1
- package/dist/Upload.js +1 -1
- package/dist/Upload.js.map +1 -1
- package/dist/UploadItem.d.ts +3 -3
- package/dist/UploadItem.js +9 -9
- package/dist/UploadItem.js.map +1 -1
- package/dist/assets/InputSuggestions-KGCQrV_T.js +2 -0
- package/dist/assets/{ListItemStandardExpandableTextTemplate-BymOTLVD.js → ListItemStandardExpandableTextTemplate-D4zLIdLd.js} +2 -2
- package/dist/assets/bundle-C9ZlnwwH.css +1 -0
- package/dist/assets/bundle.esm-Diw1zQ-o.js +384 -0
- package/dist/assets/parameters-bundle.css-1GGBOW8m.js +2 -0
- package/dist/assets/parameters-bundle.css-A9eeRg2R.js +2 -0
- package/dist/assets/parameters-bundle.css-COBI_9-U.js +2 -0
- package/dist/assets/parameters-bundle.css-CgAoZ-Ir.js +2 -0
- package/dist/assets/parameters-bundle.css-DuFHHRNK.js +2 -0
- package/dist/assets/parameters-bundle.css-Pf68NO0T.js +2 -0
- package/dist/assets/parameters-bundle.css-aX_t_-9o.js +2 -0
- package/dist/assets/parameters-bundle.css-rNSryFKH.js +2 -0
- package/dist/css/themes/Breadcrumbs.css +1 -1
- package/dist/css/themes/Button.css +1 -1
- package/dist/css/themes/Checkbox.css +1 -1
- package/dist/css/themes/ListItem.css +1 -1
- package/dist/css/themes/MastheadShell.css +1 -1
- package/dist/css/themes/Modal.css +1 -1
- package/dist/css/themes/RadioButton.css +1 -1
- package/dist/css/themes/RatingIndicator.css +1 -1
- package/dist/css/themes/Search.css +1 -1
- package/dist/css/themes/SideNavigationItem.css +1 -1
- package/dist/css/themes/SideNavigationSubItem.css +1 -1
- package/dist/css/themes/Slider.css +1 -1
- package/dist/css/themes/Tooltip.css +1 -1
- package/dist/css/themes/WizardTab.css +1 -1
- package/dist/custom-elements-internal.json +201 -38
- package/dist/custom-elements.json +173 -36
- package/dist/generated/json-imports/Themes-node.d.ts +1 -0
- package/dist/generated/json-imports/Themes-node.js +19 -0
- package/dist/generated/json-imports/Themes-node.js.map +1 -0
- package/dist/generated/json-imports/i18n-node.d.ts +1 -0
- package/dist/generated/json-imports/i18n-node.js +82 -0
- package/dist/generated/json-imports/i18n-node.js.map +1 -0
- package/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/BreadcrumbsTemplate.lit.js +1 -1
- package/dist/generated/templates/BreadcrumbsTemplate.lit.js.map +1 -1
- package/dist/generated/templates/FilterMenuTemplate.lit.js +1 -1
- package/dist/generated/templates/FilterMenuTemplate.lit.js.map +1 -1
- package/dist/generated/templates/PasswordFieldTemplate.lit.js +1 -1
- package/dist/generated/templates/PasswordFieldTemplate.lit.js.map +1 -1
- package/dist/generated/templates/SearchTemplate.lit.js +3 -3
- package/dist/generated/templates/SearchTemplate.lit.js.map +1 -1
- package/dist/generated/templates/SecondaryNavigationItemTemplate.lit.js +2 -2
- package/dist/generated/templates/SecondaryNavigationItemTemplate.lit.js.map +1 -1
- package/dist/generated/templates/SecondaryNavigationTemplate.lit.js +1 -1
- package/dist/generated/templates/SecondaryNavigationTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TextFieldTemplate.lit.js +1 -1
- package/dist/generated/templates/TextFieldTemplate.lit.js.map +1 -1
- package/dist/generated/themes/Breadcrumbs.css.d.ts +1 -1
- package/dist/generated/themes/Breadcrumbs.css.js +1 -1
- package/dist/generated/themes/Breadcrumbs.css.js.map +1 -1
- package/dist/generated/themes/Button.css.d.ts +1 -1
- package/dist/generated/themes/Button.css.js +1 -1
- package/dist/generated/themes/Button.css.js.map +1 -1
- package/dist/generated/themes/Checkbox.css.d.ts +1 -1
- package/dist/generated/themes/Checkbox.css.js +1 -1
- package/dist/generated/themes/Checkbox.css.js.map +1 -1
- package/dist/generated/themes/ListItem.css.d.ts +1 -1
- package/dist/generated/themes/ListItem.css.js +1 -1
- package/dist/generated/themes/ListItem.css.js.map +1 -1
- package/dist/generated/themes/MastheadShell.css.d.ts +1 -1
- package/dist/generated/themes/MastheadShell.css.js +1 -1
- package/dist/generated/themes/MastheadShell.css.js.map +1 -1
- package/dist/generated/themes/Modal.css.d.ts +1 -1
- package/dist/generated/themes/Modal.css.js +1 -1
- package/dist/generated/themes/Modal.css.js.map +1 -1
- package/dist/generated/themes/RadioButton.css.d.ts +1 -1
- package/dist/generated/themes/RadioButton.css.js +1 -1
- package/dist/generated/themes/RadioButton.css.js.map +1 -1
- package/dist/generated/themes/RatingIndicator.css.d.ts +1 -1
- package/dist/generated/themes/RatingIndicator.css.js +1 -1
- package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
- package/dist/generated/themes/Search.css.d.ts +1 -1
- package/dist/generated/themes/Search.css.js +1 -1
- package/dist/generated/themes/Search.css.js.map +1 -1
- package/dist/generated/themes/SideNavigationItem.css.d.ts +1 -1
- package/dist/generated/themes/SideNavigationItem.css.js +1 -1
- package/dist/generated/themes/SideNavigationItem.css.js.map +1 -1
- package/dist/generated/themes/SideNavigationSubItem.css.d.ts +1 -1
- package/dist/generated/themes/SideNavigationSubItem.css.js +1 -1
- package/dist/generated/themes/SideNavigationSubItem.css.js.map +1 -1
- package/dist/generated/themes/Slider.css.d.ts +1 -1
- package/dist/generated/themes/Slider.css.js +1 -1
- package/dist/generated/themes/Slider.css.js.map +1 -1
- package/dist/generated/themes/Tooltip.css.d.ts +1 -1
- package/dist/generated/themes/Tooltip.css.js +1 -1
- package/dist/generated/themes/Tooltip.css.js.map +1 -1
- package/dist/generated/themes/WizardTab.css.d.ts +1 -1
- package/dist/generated/themes/WizardTab.css.js +1 -1
- package/dist/generated/themes/WizardTab.css.js.map +1 -1
- package/dist/types/ButtonAccessibleRole.d.ts +8 -0
- package/dist/types/ButtonAccessibleRole.js +10 -0
- package/dist/types/ButtonAccessibleRole.js.map +1 -0
- package/dist/types/{Button.d.ts → ButtonDesign.d.ts} +1 -15
- package/dist/types/ButtonDesign.js +16 -0
- package/dist/types/ButtonDesign.js.map +1 -0
- package/dist/types/ButtonSize.d.ts +6 -0
- package/dist/types/ButtonSize.js +8 -0
- package/dist/types/ButtonSize.js.map +1 -0
- package/dist/types/ControlButtonDesign.d.ts +10 -0
- package/dist/types/ControlButtonDesign.js +12 -0
- package/dist/types/ControlButtonDesign.js.map +1 -0
- package/dist/types/ProgressBar.d.ts +1 -1
- package/dist/types/ProgressBar.js +1 -1
- package/dist/types/ProgressBar.js.map +1 -1
- package/dist/types/common.d.ts +1 -1
- package/dist/types/common.js +1 -1
- package/dist/types/common.js.map +1 -1
- package/dist/vscode.html-custom-data.json +26 -10
- package/dist/web-types.json +43 -13
- package/package.json +8 -8
- package/src/Badge.ts +4 -4
- package/src/Breadcrumbs.hbs +7 -10
- package/src/Breadcrumbs.ts +14 -1
- package/src/BreadcrumbsPopover.hbs +3 -1
- package/src/Button.ts +12 -1
- package/src/Checkbox.ts +51 -0
- package/src/ControlButton.ts +2 -1
- package/src/DatePicker.ts +2 -2
- package/src/FilterMenu.hbs +1 -0
- package/src/InputGroup.ts +5 -2
- package/src/Link.ts +4 -5
- package/src/ListItem.ts +4 -4
- package/src/MastheadItem.ts +1 -1
- package/src/MediaPlayer.ts +3 -1
- package/src/MediaPlayerYoutube.ts +4 -2
- package/src/Pagination.ts +1 -1
- package/src/PasswordField.hbs +1 -0
- package/src/PasswordField.ts +14 -0
- package/src/PhoneNumberField.ts +25 -4
- package/src/ProgressBar.ts +6 -6
- package/src/RadioButton.ts +7 -6
- package/src/Search.hbs +3 -2
- package/src/Search.ts +1 -3
- package/src/SecondaryNavigation.hbs +1 -0
- package/src/SecondaryNavigation.ts +41 -12
- package/src/SecondaryNavigationItem.hbs +2 -1
- package/src/SecondaryNavigationItem.ts +31 -0
- package/src/SecondaryNavigationItemBase.ts +3 -0
- package/src/SecondaryNavigationSubItem.ts +0 -3
- package/src/SegmentedButton.ts +1 -1
- package/src/SegmentedButtonItem.ts +2 -2
- package/src/StatusBadge.ts +8 -3
- package/src/StepInput.ts +3 -3
- package/src/TableCellBase.ts +2 -2
- package/src/Tag.ts +4 -4
- package/src/TextArea.ts +9 -9
- package/src/TextField.hbs +2 -0
- package/src/TextField.ts +21 -5
- package/src/Toast.ts +1 -1
- package/src/Tooltip.ts +19 -0
- package/src/Upload.ts +1 -1
- package/src/UploadItem.ts +9 -9
- package/src/generated/json-imports/Themes-node.ts +21 -0
- package/src/generated/json-imports/i18n-node.ts +85 -0
- package/src/generated/templates/BreadcrumbsPopoverTemplate.lit.ts +1 -1
- package/src/generated/templates/BreadcrumbsTemplate.lit.ts +1 -1
- package/src/generated/templates/FilterMenuTemplate.lit.ts +1 -1
- package/src/generated/templates/PasswordFieldTemplate.lit.ts +1 -1
- package/src/generated/templates/SearchTemplate.lit.ts +3 -3
- package/src/generated/templates/SecondaryNavigationItemTemplate.lit.ts +2 -2
- package/src/generated/templates/SecondaryNavigationTemplate.lit.ts +1 -1
- package/src/generated/templates/TextFieldTemplate.lit.ts +1 -1
- package/src/generated/themes/Breadcrumbs.css.ts +1 -1
- package/src/generated/themes/Button.css.ts +1 -1
- package/src/generated/themes/Checkbox.css.ts +1 -1
- package/src/generated/themes/ListItem.css.ts +1 -1
- package/src/generated/themes/MastheadShell.css.ts +1 -1
- package/src/generated/themes/Modal.css.ts +1 -1
- package/src/generated/themes/RadioButton.css.ts +1 -1
- package/src/generated/themes/RatingIndicator.css.ts +1 -1
- package/src/generated/themes/Search.css.ts +1 -1
- package/src/generated/themes/SideNavigationItem.css.ts +1 -1
- package/src/generated/themes/SideNavigationSubItem.css.ts +1 -1
- package/src/generated/themes/Slider.css.ts +1 -1
- package/src/generated/themes/Tooltip.css.ts +1 -1
- package/src/generated/themes/WizardTab.css.ts +1 -1
- package/src/themes/Breadcrumbs.css +3 -0
- package/src/themes/Button.css +11 -7
- package/src/themes/Checkbox.css +15 -1
- package/src/themes/ListItem.css +4 -0
- package/src/themes/MastheadShell.css +2 -1
- package/src/themes/Modal.css +2 -1
- package/src/themes/RadioButton.css +2 -0
- package/src/themes/Search.css +9 -1
- package/src/themes/SideNavigationItem.css +9 -1
- package/src/themes/SideNavigationSubItem.css +7 -0
- package/src/themes/Tooltip.css +1 -1
- package/src/themes/WizardTab.css +5 -0
- package/src/types/ButtonAccessibleRole.ts +9 -0
- package/src/types/{Button.ts → ButtonDesign.ts} +1 -17
- package/src/types/ButtonSize.ts +7 -0
- package/src/types/ControlButtonDesign.ts +11 -0
- package/src/types/ProgressBar.ts +1 -1
- package/src/types/common.ts +1 -1
- package/dist/assets/InputSuggestions-DoWo0hwS.js +0 -2
- package/dist/assets/bundle-7XIcgsQH.css +0 -1
- package/dist/assets/bundle.esm-D10tX-qa.js +0 -380
- package/dist/assets/parameters-bundle.css-BU4Bi-ho.js +0 -2
- package/dist/assets/parameters-bundle.css-Beilb2gS.js +0 -2
- package/dist/assets/parameters-bundle.css-BzQMaZUt.js +0 -2
- package/dist/assets/parameters-bundle.css-Bzfv_Fox.js +0 -2
- package/dist/assets/parameters-bundle.css-CLwmjytB.js +0 -2
- package/dist/assets/parameters-bundle.css-CU3plTdF.js +0 -2
- package/dist/assets/parameters-bundle.css-DRX-o-Cb.js +0 -2
- package/dist/assets/parameters-bundle.css-DhFMZJhW.js +0 -2
- package/dist/css/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css +0 -1
- package/dist/generated/assets/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css.json +0 -1
- package/dist/generated/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css.d.ts +0 -2
- package/dist/generated/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css.js +0 -3
- package/dist/generated/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css.js.map +0 -1
- package/dist/types/Button.js +0 -33
- package/dist/types/Button.js.map +0 -1
- package/src/generated/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css.ts +0 -2
- package/src/themes/overrides/@ui5/webcomponents/sap_glow/parameters-bundle.css +0 -195
|
@@ -0,0 +1,221 @@
|
|
|
1
|
+
export const quickLinks = [
|
|
2
|
+
{
|
|
3
|
+
"title":"Cloud Solutions",
|
|
4
|
+
"url":"#",
|
|
5
|
+
"id":"cloud",
|
|
6
|
+
"target":"_blank",
|
|
7
|
+
},
|
|
8
|
+
{
|
|
9
|
+
"title":"Sustainability Management",
|
|
10
|
+
"url":"#",
|
|
11
|
+
"id":"sustainability",
|
|
12
|
+
"target":"_blank",
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
"title":"Business Network",
|
|
16
|
+
"url":"#",
|
|
17
|
+
"id":"business",
|
|
18
|
+
"target":"_blank",
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
"title":"Conversational AI",
|
|
22
|
+
"url":"#",
|
|
23
|
+
"id":"conversational",
|
|
24
|
+
"target":"_blank",
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
"title":"SAP Insights",
|
|
28
|
+
"url":"#",
|
|
29
|
+
"id":"sapInsights",
|
|
30
|
+
"target":"_blank",
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
"title":"SAP Community",
|
|
34
|
+
"url":"#",
|
|
35
|
+
"id":"sapCommunity",
|
|
36
|
+
"target":"_blank",
|
|
37
|
+
}
|
|
38
|
+
];
|
|
39
|
+
|
|
40
|
+
export const trendingLinks = [
|
|
41
|
+
{
|
|
42
|
+
"title":"What is Grow?",
|
|
43
|
+
"url":"#",
|
|
44
|
+
"id":"whatIsGrow",
|
|
45
|
+
"target":"_self",
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
"title":"What is RISE?",
|
|
49
|
+
"url":"#",
|
|
50
|
+
"id":"whatIsRise",
|
|
51
|
+
"target":"_blank",
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
"title":"Sustainability",
|
|
55
|
+
"url":"#",
|
|
56
|
+
"id":"sustainability",
|
|
57
|
+
"target":"_blank",
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
"title":"Transforming Offerings",
|
|
61
|
+
"url":"#",
|
|
62
|
+
"id":"transforming",
|
|
63
|
+
"target":"_blank",
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
"title":"Partner Ecosystem",
|
|
67
|
+
"url":"#",
|
|
68
|
+
"target":"_blank",
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
"title":"SAP Community",
|
|
72
|
+
"url":"#",
|
|
73
|
+
"target":"_blank",
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
"title":"Developer",
|
|
77
|
+
"url":"#",
|
|
78
|
+
"id":"developer",
|
|
79
|
+
"target":"_blank",
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
"title":"Support Portal",
|
|
83
|
+
"url":"#",
|
|
84
|
+
"target":"_blank",
|
|
85
|
+
}
|
|
86
|
+
];
|
|
87
|
+
|
|
88
|
+
export const aboutLinks = [
|
|
89
|
+
{
|
|
90
|
+
"title":"Company Information",
|
|
91
|
+
"url":"#",
|
|
92
|
+
"id":"company",
|
|
93
|
+
"target":"_top",
|
|
94
|
+
},
|
|
95
|
+
{
|
|
96
|
+
"title":"Worldwide Directory",
|
|
97
|
+
"url":"#",
|
|
98
|
+
"id":"worldwide",
|
|
99
|
+
"target":"_blank",
|
|
100
|
+
},
|
|
101
|
+
{
|
|
102
|
+
"title":"Investor Relations",
|
|
103
|
+
"url":"#",
|
|
104
|
+
"id":"investor",
|
|
105
|
+
"target":"_blank",
|
|
106
|
+
},
|
|
107
|
+
{
|
|
108
|
+
"title":"Careers",
|
|
109
|
+
"url":"#",
|
|
110
|
+
"target":"_blank",
|
|
111
|
+
},
|
|
112
|
+
{
|
|
113
|
+
"title":"News and Press",
|
|
114
|
+
"url":"#",
|
|
115
|
+
"target":"_blank",
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
"title":"Events",
|
|
119
|
+
"url":"#",
|
|
120
|
+
"target":"_blank",
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
"title":"Customer Stories",
|
|
124
|
+
"url":"#",
|
|
125
|
+
"target":"_blank",
|
|
126
|
+
},
|
|
127
|
+
{
|
|
128
|
+
"title":"Newsletter",
|
|
129
|
+
"url":"#",
|
|
130
|
+
"target":"_blank",
|
|
131
|
+
}
|
|
132
|
+
];
|
|
133
|
+
|
|
134
|
+
export const siteInformationLinks = [
|
|
135
|
+
{
|
|
136
|
+
"title":"Privacy",
|
|
137
|
+
"url":"#",
|
|
138
|
+
"id":"privacy",
|
|
139
|
+
"target":"_parent",
|
|
140
|
+
},
|
|
141
|
+
{
|
|
142
|
+
"title":"Terms of Use",
|
|
143
|
+
"url":"#",
|
|
144
|
+
"id":"terms",
|
|
145
|
+
"target":"_blank",
|
|
146
|
+
},
|
|
147
|
+
{
|
|
148
|
+
"title":"Legal Disclosure",
|
|
149
|
+
"url":"#",
|
|
150
|
+
"id":"legal",
|
|
151
|
+
"target":"_blank",
|
|
152
|
+
},
|
|
153
|
+
{
|
|
154
|
+
"title":"Copyright",
|
|
155
|
+
"url":"#",
|
|
156
|
+
"id":"copyright",
|
|
157
|
+
"target":"_blank",
|
|
158
|
+
},
|
|
159
|
+
{
|
|
160
|
+
"title":"Trademark",
|
|
161
|
+
"url":"#",
|
|
162
|
+
"id":"trademark",
|
|
163
|
+
"target":"_blank",
|
|
164
|
+
},
|
|
165
|
+
{
|
|
166
|
+
"title":"Cookie Preferences",
|
|
167
|
+
"url":"#",
|
|
168
|
+
"id":"cookie",
|
|
169
|
+
"target":"_blank",
|
|
170
|
+
},
|
|
171
|
+
{
|
|
172
|
+
"title":"Do Not Share/Sell My Personal Information",
|
|
173
|
+
"url":"#",
|
|
174
|
+
"target":"_blank",
|
|
175
|
+
}
|
|
176
|
+
];
|
|
177
|
+
|
|
178
|
+
export const socialLinks = [
|
|
179
|
+
{
|
|
180
|
+
"url":"https://facebook.com",
|
|
181
|
+
"iconUrl":"./assets/facebook.svg",
|
|
182
|
+
"id":"facebookId",
|
|
183
|
+
"name":"facebook",
|
|
184
|
+
"target":"_blank",
|
|
185
|
+
},
|
|
186
|
+
{
|
|
187
|
+
"url":"https://twitter.com",
|
|
188
|
+
"iconUrl":"./assets/twitter.svg",
|
|
189
|
+
"id":"twitterId",
|
|
190
|
+
"name":"twitter",
|
|
191
|
+
"target":"_blank",
|
|
192
|
+
},
|
|
193
|
+
{
|
|
194
|
+
"url":"https://youtube.com",
|
|
195
|
+
"iconUrl":"./assets/youtube.svg",
|
|
196
|
+
"id":"youtubeId",
|
|
197
|
+
"name":"youtube",
|
|
198
|
+
"target":"_blank",
|
|
199
|
+
},
|
|
200
|
+
{
|
|
201
|
+
"url":"https://linkedin.com",
|
|
202
|
+
"iconUrl":"./assets/linkedin.svg",
|
|
203
|
+
"id":"linkedinId",
|
|
204
|
+
"name":"linkedin",
|
|
205
|
+
"target":"_blank",
|
|
206
|
+
},
|
|
207
|
+
{
|
|
208
|
+
"url":"https://instagram.com",
|
|
209
|
+
"iconUrl":"./assets/instagram.svg",
|
|
210
|
+
"id":"instagramId",
|
|
211
|
+
"name":"instagram",
|
|
212
|
+
"target":"_blank",
|
|
213
|
+
},
|
|
214
|
+
{
|
|
215
|
+
"url":"https://sap.com",
|
|
216
|
+
"iconUrl":"./assets/email.svg",
|
|
217
|
+
"id":"sapId",
|
|
218
|
+
"name":"sap",
|
|
219
|
+
"target":"_blank",
|
|
220
|
+
}
|
|
221
|
+
];
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import UDExCheckbox from "../../src/Checkbox.js";
|
|
2
|
+
|
|
3
|
+
describe("Checkbox", () => {
|
|
4
|
+
it("renders corectly", () => {
|
|
5
|
+
cy.mount(<UDExCheckbox></UDExCheckbox>)
|
|
6
|
+
cy.get("[udex-checkbox]").should("exist")
|
|
7
|
+
});
|
|
8
|
+
|
|
9
|
+
it("correctly text as label", () => {
|
|
10
|
+
cy.mount(<UDExCheckbox text="checkbox"></UDExCheckbox>)
|
|
11
|
+
cy.get("[udex-checkbox]").shadow().find("ui5-label")
|
|
12
|
+
.should("have.text", "checkbox")
|
|
13
|
+
});
|
|
14
|
+
|
|
15
|
+
it("renders readonly corectly", () => {
|
|
16
|
+
cy.mount(<UDExCheckbox readonly></UDExCheckbox>)
|
|
17
|
+
cy.get("[udex-checkbox]").shadow().find(".ui5-checkbox-root")
|
|
18
|
+
.should("have.attr", "aria-readonly", "true")
|
|
19
|
+
cy.get("[udex-checkbox]").shadow().find(".ui5-checkbox-inner").then($checkbox => {
|
|
20
|
+
const {color} = window.getComputedStyle($checkbox[0])
|
|
21
|
+
expect(color).eqls("rgb(85, 107, 129)")
|
|
22
|
+
})
|
|
23
|
+
});
|
|
24
|
+
|
|
25
|
+
it("renders disabled corectly", () => {
|
|
26
|
+
cy.mount(<UDExCheckbox disabled></UDExCheckbox>)
|
|
27
|
+
cy.get("[udex-checkbox]").shadow().find(".ui5-checkbox-root")
|
|
28
|
+
.should("have.attr", "aria-disabled", "true")
|
|
29
|
+
cy.get("[udex-checkbox]").shadow().find(".ui5-checkbox-inner").then($checkbox => {
|
|
30
|
+
const { opacity } = window.getComputedStyle($checkbox[0])
|
|
31
|
+
expect(opacity).eqls("1")
|
|
32
|
+
})
|
|
33
|
+
});
|
|
34
|
+
|
|
35
|
+
it("renders displayonly corectly", () => {
|
|
36
|
+
cy.mount(<UDExCheckbox displayOnly></UDExCheckbox>)
|
|
37
|
+
cy.get("[udex-checkbox]").shadow().find("ui5-icon").should("be.visible")
|
|
38
|
+
});
|
|
39
|
+
|
|
40
|
+
it("correctly sets aria-checked", () => {
|
|
41
|
+
cy.mount(<UDExCheckbox checked></UDExCheckbox>)
|
|
42
|
+
cy.get("[udex-checkbox]").shadow().find(".ui5-checkbox-root")
|
|
43
|
+
.should("have.attr", "aria-checked", "true")
|
|
44
|
+
});
|
|
45
|
+
|
|
46
|
+
it("renders required corectly", () => {
|
|
47
|
+
cy.mount(<UDExCheckbox required></UDExCheckbox>)
|
|
48
|
+
cy.get("[udex-checkbox]").shadow().find(".ui5-checkbox-root")
|
|
49
|
+
.should("have.attr", "aria-required", "true")
|
|
50
|
+
});
|
|
51
|
+
|
|
52
|
+
it("sets wrappintType to `None` by default", () => {
|
|
53
|
+
cy.mount(<UDExCheckbox required></UDExCheckbox>)
|
|
54
|
+
cy.get("[udex-checkbox]").should("have.attr", "wrapping-type", "None")
|
|
55
|
+
});
|
|
56
|
+
|
|
57
|
+
it("correctly sets accessible name", () => {
|
|
58
|
+
cy.mount(<UDExCheckbox accessibleName="checkbox"></UDExCheckbox>)
|
|
59
|
+
cy.get("[udex-checkbox]").shadow().find(".ui5-checkbox-root")
|
|
60
|
+
.should("have.attr", "aria-label", "checkbox")
|
|
61
|
+
});
|
|
62
|
+
|
|
63
|
+
it("correctly sets accessible name ref", () => {
|
|
64
|
+
cy.mount(<>
|
|
65
|
+
<p id="checkbox">Checkox</p>
|
|
66
|
+
<UDExCheckbox accessibleNameRef="checkbox"></UDExCheckbox>
|
|
67
|
+
</> )
|
|
68
|
+
cy.get("[udex-checkbox]").shadow().find(".ui5-checkbox-root")
|
|
69
|
+
.should("have.attr", "aria-label", "Checkox")
|
|
70
|
+
});
|
|
71
|
+
|
|
72
|
+
it("correctly sets valueState to `None` by default", () => {
|
|
73
|
+
cy.mount(<UDExCheckbox></UDExCheckbox>)
|
|
74
|
+
cy.get("[udex-checkbox]").should("have.attr", "value-state", "None")
|
|
75
|
+
});
|
|
76
|
+
|
|
77
|
+
it("correctly sets valueState to `Success`", () => {
|
|
78
|
+
cy.mount(<UDExCheckbox valueState="Success"></UDExCheckbox>)
|
|
79
|
+
cy.get("[udex-checkbox]").shadow().find(".ui5-checkbox-inner").then($checkbox => {
|
|
80
|
+
const {borderColor} = window.getComputedStyle($checkbox[0])
|
|
81
|
+
expect(borderColor).eqls("rgb(54, 164, 29)")
|
|
82
|
+
})
|
|
83
|
+
});
|
|
84
|
+
|
|
85
|
+
it("correctly sets valueState to `Error`", () => {
|
|
86
|
+
cy.mount(<UDExCheckbox valueState="Error"></UDExCheckbox>)
|
|
87
|
+
cy.get("[udex-checkbox]").shadow().find(".ui5-checkbox-inner").then($checkbox => {
|
|
88
|
+
const {borderColor} = window.getComputedStyle($checkbox[0])
|
|
89
|
+
expect(borderColor).eqls("rgb(238, 57, 57)")
|
|
90
|
+
})
|
|
91
|
+
});
|
|
92
|
+
});
|
|
@@ -0,0 +1,313 @@
|
|
|
1
|
+
import UDExFooter from "../../src/Footer.js";
|
|
2
|
+
import { quickLinks, trendingLinks, aboutLinks, siteInformationLinks, socialLinks } from "../fixtures/footer-links.js";
|
|
3
|
+
import { setLanguage } from "@ui5/webcomponents-base/dist/config/Language.js";
|
|
4
|
+
|
|
5
|
+
const defaultFooter = <UDExFooter
|
|
6
|
+
id="footer"
|
|
7
|
+
logoLink="#test"
|
|
8
|
+
logoTitle="SAP Title"
|
|
9
|
+
logoAriaLabel="SAP Homepage"
|
|
10
|
+
logoUrl='./assets/sap-logo.svg'
|
|
11
|
+
contactNumbersList='[{"country":"France","number":"400-619-0727"},{"country":"United State","number":"1-800-872-1727"}]'
|
|
12
|
+
localCountryNumbersLink='#'
|
|
13
|
+
chatWithUsLink='#'
|
|
14
|
+
quickLinks={JSON.stringify(quickLinks)}
|
|
15
|
+
trendingLinks = {JSON.stringify(trendingLinks)}
|
|
16
|
+
aboutLinks = {JSON.stringify(aboutLinks)}
|
|
17
|
+
siteInformationLinks = {JSON.stringify(siteInformationLinks)}
|
|
18
|
+
socialLinks = {JSON.stringify(socialLinks)}
|
|
19
|
+
contactUsLink='#'>
|
|
20
|
+
</UDExFooter>
|
|
21
|
+
|
|
22
|
+
describe("Footer", () => {
|
|
23
|
+
beforeEach(() => {
|
|
24
|
+
cy.mount(defaultFooter)
|
|
25
|
+
});
|
|
26
|
+
|
|
27
|
+
it("is correctly rendered", () => {
|
|
28
|
+
cy.get("#footer").shadow().find(".udex-footer").should("be.visible")
|
|
29
|
+
});
|
|
30
|
+
|
|
31
|
+
it("renders phone numbers", () => {
|
|
32
|
+
cy.get("#footer").shadow().find(".udex-footer__number").first().should("have.text", "400-619-0727")
|
|
33
|
+
cy.get("#footer").shadow().find(".udex-footer__number").eq(1).should("have.text", "1-800-872-1727")
|
|
34
|
+
});
|
|
35
|
+
|
|
36
|
+
it("renders contact link", () => {
|
|
37
|
+
cy.get("#footer").shadow().find(".udex-footer__contact-us-link").first().should("have.attr", "href", "#")
|
|
38
|
+
});
|
|
39
|
+
|
|
40
|
+
it("renders chat link", () => {
|
|
41
|
+
cy.get("#footer").shadow().find(".udex-footer__chat-with-us-link").first().should("have.attr", "href", "#")
|
|
42
|
+
});
|
|
43
|
+
|
|
44
|
+
it("renders quick link target", () => {
|
|
45
|
+
cy.get("#footer").shadow().find(".udex-footer__quick-links a").should("have.attr", "target", "_blank")
|
|
46
|
+
});
|
|
47
|
+
|
|
48
|
+
it("renders trending link target", () => {
|
|
49
|
+
cy.get("#footer").shadow().find(".udex-footer__trending-links a").should("have.attr", "target", "_self")
|
|
50
|
+
});
|
|
51
|
+
|
|
52
|
+
it("renders site about sap link target", () => {
|
|
53
|
+
cy.get("#footer").shadow().find(".udex-footer__about-links a").first().should("have.attr", "target", "_top")
|
|
54
|
+
});
|
|
55
|
+
|
|
56
|
+
it("renders site information link target", () => {
|
|
57
|
+
cy.get("#footer").shadow().find(".udex-footer__site-information-links a").first().should("have.attr", "target", "_parent")
|
|
58
|
+
});
|
|
59
|
+
|
|
60
|
+
it("renders social link target", () => {
|
|
61
|
+
cy.get("#footer").shadow().find(".udex-footer__social-container a").first().should("have.attr", "target", "_blank")
|
|
62
|
+
});
|
|
63
|
+
|
|
64
|
+
it("renders all social links", () => {
|
|
65
|
+
cy.get("#footer").shadow().find(".udex-footer__social-container a").should("have.length", 6)
|
|
66
|
+
});
|
|
67
|
+
|
|
68
|
+
it("renders copyright", () => {
|
|
69
|
+
cy.get("#footer").shadow().find(".udex-footer__copyright-text").first().should("have.text", "© 2025 SAP SE or an SAP affiliate company. All rights reserved.")
|
|
70
|
+
});
|
|
71
|
+
|
|
72
|
+
it("renders chinese text when specified in url", () => {
|
|
73
|
+
setLanguage("zh_cn")
|
|
74
|
+
cy.mount(defaultFooter)
|
|
75
|
+
cy.get("#footer").shadow().find(".udex-footer__copyright-chinese-text").should("have.text", "ICP_NUMBER PUBLIC_SECURITY_NETWORK_NUMBER")
|
|
76
|
+
cy.get("#footer").shadow().find(".udex-footer__copyright-chinese-link").should("have.attr", "href", "https://beian.miit.gov.cn/")
|
|
77
|
+
});
|
|
78
|
+
|
|
79
|
+
describe("Desktop tests", () => {
|
|
80
|
+
beforeEach(() => {
|
|
81
|
+
cy.viewport(1920, 1080);
|
|
82
|
+
cy.mount(defaultFooter)
|
|
83
|
+
cy.on('window:alert', () => false)
|
|
84
|
+
});
|
|
85
|
+
|
|
86
|
+
it("renders links holder", () => {
|
|
87
|
+
cy.get("#footer").shadow().find(".udex-footer__links").should("be.visible")
|
|
88
|
+
});
|
|
89
|
+
|
|
90
|
+
it("does not render accordion", () => {
|
|
91
|
+
cy.get("#footer").shadow().find("udex-accordion").should("not.exist");
|
|
92
|
+
});
|
|
93
|
+
|
|
94
|
+
it("renders all quick links", () => {
|
|
95
|
+
cy.get("#footer").shadow().find(".udex-footer__quick-links .udex-footer__links-list--desktop li").should("have.length", 6)
|
|
96
|
+
});
|
|
97
|
+
|
|
98
|
+
it("renders all trending links", () => {
|
|
99
|
+
cy.get("#footer").shadow().find(".udex-footer__trending-links .udex-footer__links-list--desktop li").should("have.length", 8)
|
|
100
|
+
});
|
|
101
|
+
|
|
102
|
+
it("renders site aboout sap links", () => {
|
|
103
|
+
cy.get("#footer").shadow().find(".udex-footer__about-links .udex-footer__links-list--desktop li").should("have.length", 8)
|
|
104
|
+
});
|
|
105
|
+
|
|
106
|
+
it("renders site information links", () => {
|
|
107
|
+
cy.get("#footer").shadow().find(".udex-footer__site-information-links .udex-footer__links-list--desktop li").should("have.length", 7)
|
|
108
|
+
});
|
|
109
|
+
|
|
110
|
+
it("sets data-id attribute to quick links", () => {
|
|
111
|
+
cy.get("#footer").shadow().find(".udex-footer__quick-links a").each(($quickLink, index) => {
|
|
112
|
+
expect($quickLink[0]).attr("data-id").eqls(quickLinks[index].id)
|
|
113
|
+
})
|
|
114
|
+
});
|
|
115
|
+
|
|
116
|
+
it("sets data-id attribute to trending links", () => {
|
|
117
|
+
cy.get("#footer").shadow().find(".udex-footer__trending-links a").each(($trendingLink, index) => {
|
|
118
|
+
if($trendingLink[0].hasAttribute("data-id")) {
|
|
119
|
+
expect($trendingLink[0]).attr("data-id").eqls(trendingLinks[index].id)
|
|
120
|
+
}
|
|
121
|
+
})
|
|
122
|
+
});
|
|
123
|
+
|
|
124
|
+
it("sets data-id attribute to about links", () => {
|
|
125
|
+
cy.get("#footer").shadow().find(".udex-footer__about-links a").each(($aboutLink, index) => {
|
|
126
|
+
if($aboutLink[0].hasAttribute("data-id")) {
|
|
127
|
+
expect($aboutLink[0]).attr("data-id").eqls(aboutLinks[index].id)
|
|
128
|
+
}
|
|
129
|
+
})
|
|
130
|
+
});
|
|
131
|
+
|
|
132
|
+
it("sets data-id attribute to site information links", () => {
|
|
133
|
+
cy.get("#footer").shadow().find(".udex-footer__site-information-links a").each(($siteLink, index) => {
|
|
134
|
+
if($siteLink[0].hasAttribute("data-id")) {
|
|
135
|
+
expect($siteLink[0]).attr("data-id").eqls(siteInformationLinks[index].id)
|
|
136
|
+
}
|
|
137
|
+
})
|
|
138
|
+
});
|
|
139
|
+
|
|
140
|
+
it("sets data-id attribute to social links", () => {
|
|
141
|
+
cy.get("#footer").shadow().find(".udex-footer__social-container a").each(($socialLink, index) => {
|
|
142
|
+
expect($socialLink[0]).attr("data-id").eqls(socialLinks[index].id)
|
|
143
|
+
})
|
|
144
|
+
});
|
|
145
|
+
|
|
146
|
+
it("corectly renders default logo title", () => {
|
|
147
|
+
cy.get("#footer").shadow().find(".udex-footer__logo a").should("have.attr", "title", "SAP Title")
|
|
148
|
+
});
|
|
149
|
+
|
|
150
|
+
it("sets aria-label for logo link", () => {
|
|
151
|
+
cy.get("#footer").shadow().find(".udex-footer__logo a").should("have.attr", "aria-label", "SAP Homepage")
|
|
152
|
+
});
|
|
153
|
+
|
|
154
|
+
it("emits \"ui5-logo-click\" when clicking on logo", () => {
|
|
155
|
+
const logoClickHandler = cy.stub().as("logoClickHandler")
|
|
156
|
+
cy.get("#footer").then($footer =>
|
|
157
|
+
$footer[0].addEventListener("logo-click", logoClickHandler)
|
|
158
|
+
).shadow().find(".udex-footer__logo a").click()
|
|
159
|
+
|
|
160
|
+
cy.get("@logoClickHandler").should("have.been.called")
|
|
161
|
+
});
|
|
162
|
+
|
|
163
|
+
it("emits \"ui5-back-to-top-click\" when clicking on back button", () => {
|
|
164
|
+
const backToTopHandler = cy.stub().as("backToTopHandler")
|
|
165
|
+
cy.get("#footer").then($footer =>
|
|
166
|
+
$footer[0].addEventListener("back-to-top-click", backToTopHandler)
|
|
167
|
+
).shadow().find(".udex-footer__back-to-top-button").click()
|
|
168
|
+
|
|
169
|
+
cy.get("@backToTopHandler").should("have.been.called")
|
|
170
|
+
});
|
|
171
|
+
|
|
172
|
+
it("emits \"ui5-back-to-top-click\" when clicking on back button", () => {
|
|
173
|
+
const backToTopHandler = cy.stub().as("backToTopHandler")
|
|
174
|
+
cy.get("#footer").then($footer =>
|
|
175
|
+
$footer[0].addEventListener("back-to-top-click", backToTopHandler)
|
|
176
|
+
).shadow().find(".udex-footer__back-to-top-button").click()
|
|
177
|
+
|
|
178
|
+
cy.get("@backToTopHandler").should("have.been.called")
|
|
179
|
+
});
|
|
180
|
+
|
|
181
|
+
|
|
182
|
+
it("emits \"contact-email-click\" when clicking on email", () => {
|
|
183
|
+
const contactEmailClickHandler = cy.stub().as("contactEmailHandler")
|
|
184
|
+
cy.get("#footer").then($footer =>
|
|
185
|
+
$footer[0].addEventListener("contact-email-click", contactEmailClickHandler)
|
|
186
|
+
).shadow().find(".udex-footer__contact-us-link").then($emailLink => {
|
|
187
|
+
$emailLink[0].removeAttribute("href")
|
|
188
|
+
}).click()
|
|
189
|
+
|
|
190
|
+
cy.get("@contactEmailHandler").should("have.been.called")
|
|
191
|
+
});
|
|
192
|
+
|
|
193
|
+
it("emits \"ui5-contact-chat-click\" when click on chat link", () => {
|
|
194
|
+
const contactChatClickHandler = cy.stub().as("contactChatClickHandler")
|
|
195
|
+
cy.get("#footer").then($footer =>
|
|
196
|
+
$footer[0].addEventListener("contact-chat-click", contactChatClickHandler)
|
|
197
|
+
).shadow().find(".udex-footer__chat-with-us a").click()
|
|
198
|
+
|
|
199
|
+
cy.get("@contactChatClickHandler").should("have.been.called")
|
|
200
|
+
});
|
|
201
|
+
|
|
202
|
+
it("emits \"ui5-quick-links-click\" when click on quick links", () => {
|
|
203
|
+
const expectedDetails = {
|
|
204
|
+
name: "Cloud Solutions",
|
|
205
|
+
id: "cloud"
|
|
206
|
+
}
|
|
207
|
+
|
|
208
|
+
const quickLinksClickHandler = cy.stub().as("quickLinksHandler")
|
|
209
|
+
cy.get("#footer").then($footer =>
|
|
210
|
+
$footer[0].addEventListener("quick-links-click", quickLinksClickHandler)
|
|
211
|
+
).shadow().find(".udex-footer__quick-links a").first().click()
|
|
212
|
+
|
|
213
|
+
cy.get("@quickLinksHandler").should("have.been.called").its("lastCall.args.0.detail").should("include", expectedDetails)
|
|
214
|
+
});
|
|
215
|
+
|
|
216
|
+
it("emits \"ui5-trending-click\" when click on trending links", () => {
|
|
217
|
+
const expectedDetails = {
|
|
218
|
+
name: "What is Grow?",
|
|
219
|
+
id: "whatIsGrow"
|
|
220
|
+
}
|
|
221
|
+
|
|
222
|
+
const trendingLinksClickHandler = cy.stub().as("trendingLinksHandler")
|
|
223
|
+
cy.get("#footer").then($footer =>
|
|
224
|
+
$footer[0].addEventListener("trending-click", trendingLinksClickHandler)
|
|
225
|
+
).shadow().find(".udex-footer__trending-links a").first().then($trendingLink => {
|
|
226
|
+
$trendingLink[0].removeAttribute("href")
|
|
227
|
+
}).click()
|
|
228
|
+
|
|
229
|
+
cy.get("@trendingLinksHandler").should("have.been.called").its("lastCall.args.0.detail").should("include", expectedDetails)
|
|
230
|
+
});
|
|
231
|
+
|
|
232
|
+
it("emits \"ui5-about-sap-click\" when click on about links", () => {
|
|
233
|
+
const expectedDetails = {
|
|
234
|
+
name: "Company Information",
|
|
235
|
+
id: "company"
|
|
236
|
+
}
|
|
237
|
+
|
|
238
|
+
const aboutSapClickHandler = cy.stub().as("aboutSapHandler")
|
|
239
|
+
cy.get("#footer").then($footer =>
|
|
240
|
+
$footer[0].addEventListener("about-sap-click", aboutSapClickHandler)
|
|
241
|
+
).shadow().find(".udex-footer__about-links a").first().then($aboutLink => {
|
|
242
|
+
$aboutLink[0].removeAttribute("href")
|
|
243
|
+
}).click()
|
|
244
|
+
|
|
245
|
+
cy.get("@aboutSapHandler").should("have.been.called").its("lastCall.args.0.detail").should("include", expectedDetails)
|
|
246
|
+
});
|
|
247
|
+
|
|
248
|
+
it("emits \"ui5-site-information-click\" when click on information links", () => {
|
|
249
|
+
const expectedDetails = {
|
|
250
|
+
name: "Privacy",
|
|
251
|
+
id: "privacy"
|
|
252
|
+
}
|
|
253
|
+
|
|
254
|
+
const siteInfoClickHandler = cy.stub().as("siteInfoClickHandler")
|
|
255
|
+
|
|
256
|
+
cy.get("#footer").then($footer =>
|
|
257
|
+
$footer[0].addEventListener("site-information-click", siteInfoClickHandler)
|
|
258
|
+
).shadow().find(".udex-footer__site-information-links a").first().then($siteInfoLink => {
|
|
259
|
+
$siteInfoLink[0].removeAttribute("href")
|
|
260
|
+
}).click()
|
|
261
|
+
|
|
262
|
+
cy.get("@siteInfoClickHandler").should("have.been.called").its("lastCall.args.0.detail").should("include", expectedDetails)
|
|
263
|
+
});
|
|
264
|
+
|
|
265
|
+
it("emits \"contact-phone-local-numbers-click\" when click on social links", () => {
|
|
266
|
+
const localPhoneCickHandler = cy.stub().as("localPhoneHandler")
|
|
267
|
+
|
|
268
|
+
cy.get("#footer").then($footer =>
|
|
269
|
+
$footer[0].addEventListener("contact-phone-local-numbers-click", localPhoneCickHandler)
|
|
270
|
+
).shadow().find(".udex-footer__remark-link").then($localPhoneLink => {
|
|
271
|
+
$localPhoneLink[0].removeAttribute("href")
|
|
272
|
+
}).click()
|
|
273
|
+
|
|
274
|
+
cy.get("@localPhoneHandler").should("have.been.called")
|
|
275
|
+
});
|
|
276
|
+
|
|
277
|
+
it("emits \"ui5-social-media-link-click\" when click on social links", () => {
|
|
278
|
+
const expectedDetails = {
|
|
279
|
+
name: "facebook",
|
|
280
|
+
id: "facebookId"
|
|
281
|
+
}
|
|
282
|
+
|
|
283
|
+
const socialMediaLinkCickHandler = cy.stub().as("socialMediaLinkHandler")
|
|
284
|
+
|
|
285
|
+
cy.get("#footer").then($footer =>
|
|
286
|
+
$footer[0].addEventListener("social-media-link-click", socialMediaLinkCickHandler)
|
|
287
|
+
).shadow().find(".udex-footer__social-container a").first().then($socialLink => {
|
|
288
|
+
$socialLink[0].removeAttribute("href")
|
|
289
|
+
}).click()
|
|
290
|
+
|
|
291
|
+
cy.get("@socialMediaLinkHandler").should("have.been.called").its("lastCall.args.0.detail").should("include", expectedDetails)
|
|
292
|
+
});
|
|
293
|
+
});
|
|
294
|
+
|
|
295
|
+
describe("Mobile tests", () => {
|
|
296
|
+
beforeEach(() => {
|
|
297
|
+
cy.viewport(900, 1080)
|
|
298
|
+
cy.mount(defaultFooter)
|
|
299
|
+
});
|
|
300
|
+
|
|
301
|
+
it("renders accordion", () => {
|
|
302
|
+
cy.get("#footer").shadow().find("udex-accordion").should("exist")
|
|
303
|
+
});
|
|
304
|
+
|
|
305
|
+
it("does not render links holder", () => {
|
|
306
|
+
cy.get("#footer").shadow().find(".udex-footer__links").should("not.exist")
|
|
307
|
+
});
|
|
308
|
+
|
|
309
|
+
it("tests if mobile view is correctly rendered", () => {
|
|
310
|
+
cy.get("#footer").shadow().find("udex-accordion-item.udex-footer__action-item").should("exist")
|
|
311
|
+
});
|
|
312
|
+
});
|
|
313
|
+
});
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import UDExListItem from "../../src/ListItem.js"
|
|
2
|
-
import
|
|
2
|
+
import UDExButton from "../../src/Button.js"
|
|
3
3
|
|
|
4
4
|
const defaultListItem = <UDExListItem
|
|
5
5
|
id="listItem"
|
|
@@ -64,8 +64,8 @@ additional-text="Additional Text"
|
|
|
64
64
|
imageSize="M"
|
|
65
65
|
imageShape="Square">
|
|
66
66
|
Default List Item
|
|
67
|
-
<
|
|
68
|
-
<
|
|
67
|
+
<UDExButton accessible-name='Action' slot='firstIcon' design='Tertiary' icon='edit' size='Small'></UDExButton>
|
|
68
|
+
<UDExButton accessible-name='Action' slot='secondIcon' design='Tertiary' icon='decline' size='Small'></UDExButton>
|
|
69
69
|
</UDExListItem>
|
|
70
70
|
|
|
71
71
|
describe("ListItem", () => {
|
|
@@ -119,7 +119,7 @@ describe("ListItem", () => {
|
|
|
119
119
|
});
|
|
120
120
|
|
|
121
121
|
it("renders first and second icons when both slots are filled", () => {
|
|
122
|
-
cy.get("#listItemIcons").find("
|
|
122
|
+
cy.get("#listItemIcons").find("udex-button").should("have.length", 2);
|
|
123
123
|
});
|
|
124
124
|
|
|
125
125
|
it("becomes selected when clicking", () => {
|
|
@@ -118,12 +118,12 @@ describe("PhoneNumberField", () => {
|
|
|
118
118
|
|
|
119
119
|
it("check that the maxlength and formatting is applied correctly", () => {
|
|
120
120
|
cy.mount(defaultPhoneNumberField)
|
|
121
|
-
cy.get("#default").shadow().find("input").type("+380123456789123456").should("have.value", "+380 12345
|
|
121
|
+
cy.get("#default").shadow().find("input").type("+380123456789123456").should("have.value", "+380 12345 6789123")
|
|
122
122
|
});
|
|
123
123
|
|
|
124
124
|
it("check that the phone format with brackets is applied correctly", () => {
|
|
125
125
|
cy.mount(defaultPhoneNumberField)
|
|
126
|
-
cy.get("#default").shadow().find("input").type(`+180123456789123456`).should("have.value", "+1 (801) 234-
|
|
126
|
+
cy.get("#default").shadow().find("input").type(`+180123456789123456`).should("have.value", "+1 (801) 234-56789123");
|
|
127
127
|
});
|
|
128
128
|
|
|
129
129
|
it("emit input when the value of the component changes", () => {
|