@dxc-technology/halstack-react 0.0.0-e792e0c → 0.0.0-e8505b7
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/BackgroundColorContext.d.ts +10 -0
- package/BackgroundColorContext.js +47 -0
- package/ThemeContext.d.ts +10 -0
- package/ThemeContext.js +243 -0
- package/accordion/Accordion.d.ts +4 -0
- package/accordion/Accordion.js +248 -0
- package/accordion/Accordion.stories.tsx +307 -0
- package/accordion/Accordion.test.js +72 -0
- package/accordion/types.d.ts +68 -0
- package/accordion/types.js +5 -0
- package/accordion-group/AccordionGroup.d.ts +7 -0
- package/accordion-group/AccordionGroup.js +170 -0
- package/accordion-group/AccordionGroup.stories.tsx +225 -0
- package/accordion-group/AccordionGroup.test.js +133 -0
- package/accordion-group/types.d.ts +68 -0
- package/accordion-group/types.js +5 -0
- package/alert/Alert.d.ts +4 -0
- package/alert/Alert.js +290 -0
- package/alert/Alert.stories.tsx +170 -0
- package/alert/Alert.test.js +92 -0
- package/alert/types.d.ts +49 -0
- package/alert/types.js +5 -0
- package/badge/Badge.d.ts +4 -0
- package/badge/Badge.js +59 -0
- package/badge/types.d.ts +4 -0
- package/badge/types.js +5 -0
- package/bleed/Bleed.d.ts +3 -0
- package/bleed/Bleed.js +84 -0
- package/bleed/Bleed.stories.tsx +342 -0
- package/bleed/types.d.ts +37 -0
- package/bleed/types.js +5 -0
- package/box/Box.d.ts +4 -0
- package/box/Box.js +126 -0
- package/box/Box.stories.tsx +132 -0
- package/box/Box.test.js +18 -0
- package/box/types.d.ts +43 -0
- package/box/types.js +5 -0
- package/button/Button.d.ts +4 -0
- package/button/Button.js +171 -0
- package/button/Button.stories.tsx +274 -0
- package/button/Button.test.js +35 -0
- package/button/types.d.ts +53 -0
- package/button/types.js +5 -0
- package/card/Card.d.ts +4 -0
- package/card/Card.js +164 -0
- package/card/Card.stories.tsx +201 -0
- package/card/Card.test.js +50 -0
- package/card/ice-cream.jpg +0 -0
- package/card/types.d.ts +67 -0
- package/card/types.js +5 -0
- package/checkbox/Checkbox.d.ts +4 -0
- package/checkbox/Checkbox.js +247 -0
- package/checkbox/Checkbox.stories.tsx +192 -0
- package/checkbox/Checkbox.test.js +78 -0
- package/checkbox/types.d.ts +64 -0
- package/checkbox/types.js +5 -0
- package/chip/Chip.d.ts +4 -0
- package/chip/Chip.js +161 -0
- package/chip/Chip.stories.tsx +119 -0
- package/chip/Chip.test.js +56 -0
- package/chip/types.d.ts +45 -0
- package/chip/types.js +5 -0
- package/{dist/common → common}/OpenSans.css +0 -0
- package/{dist/common → common}/RequiredComponent.js +5 -19
- package/{dist/common → common}/fonts/OpenSans-Bold.ttf +0 -0
- package/{dist/common → common}/fonts/OpenSans-BoldItalic.ttf +0 -0
- package/{dist/common → common}/fonts/OpenSans-ExtraBold.ttf +0 -0
- package/{dist/common → common}/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
- package/{dist/common → common}/fonts/OpenSans-Italic.ttf +0 -0
- package/{dist/common → common}/fonts/OpenSans-Light.ttf +0 -0
- package/{dist/common → common}/fonts/OpenSans-LightItalic.ttf +0 -0
- package/{dist/common → common}/fonts/OpenSans-Regular.ttf +0 -0
- package/{dist/common → common}/fonts/OpenSans-SemiBold.ttf +0 -0
- package/{dist/common → common}/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
- package/common/utils.js +22 -0
- package/common/variables.js +1373 -0
- package/date-input/DateInput.d.ts +4 -0
- package/date-input/DateInput.js +354 -0
- package/date-input/DateInput.stories.tsx +138 -0
- package/date-input/DateInput.test.js +492 -0
- package/date-input/types.d.ts +104 -0
- package/date-input/types.js +5 -0
- package/dialog/Dialog.d.ts +4 -0
- package/dialog/Dialog.js +166 -0
- package/dialog/Dialog.stories.tsx +212 -0
- package/dialog/Dialog.test.js +40 -0
- package/dialog/types.d.ts +43 -0
- package/dialog/types.js +5 -0
- package/dropdown/Dropdown.d.ts +4 -0
- package/dropdown/Dropdown.js +395 -0
- package/dropdown/Dropdown.stories.tsx +249 -0
- package/dropdown/Dropdown.test.js +189 -0
- package/dropdown/types.d.ts +80 -0
- package/dropdown/types.js +5 -0
- package/file-input/FileInput.d.ts +4 -0
- package/file-input/FileInput.js +590 -0
- package/file-input/FileInput.stories.tsx +507 -0
- package/file-input/FileInput.test.js +457 -0
- package/file-input/FileItem.d.ts +14 -0
- package/file-input/FileItem.js +184 -0
- package/file-input/types.d.ts +112 -0
- package/file-input/types.js +5 -0
- package/footer/Footer.d.ts +4 -0
- package/footer/Footer.js +258 -0
- package/footer/Footer.stories.tsx +130 -0
- package/footer/Footer.test.js +109 -0
- package/footer/Icons.d.ts +2 -0
- package/footer/Icons.js +77 -0
- package/footer/types.d.ts +65 -0
- package/footer/types.js +5 -0
- package/header/Header.d.ts +7 -0
- package/header/Header.js +324 -0
- package/header/Header.stories.tsx +162 -0
- package/header/Header.test.js +63 -0
- package/header/Icons.d.ts +2 -0
- package/header/Icons.js +34 -0
- package/header/types.d.ts +47 -0
- package/header/types.js +5 -0
- package/heading/Heading.d.ts +4 -0
- package/heading/Heading.js +159 -0
- package/heading/Heading.stories.tsx +54 -0
- package/heading/Heading.test.js +186 -0
- package/heading/types.d.ts +33 -0
- package/heading/types.js +5 -0
- package/inset/Inset.d.ts +3 -0
- package/inset/Inset.js +84 -0
- package/inset/Inset.stories.tsx +229 -0
- package/inset/types.d.ts +13 -0
- package/inset/types.js +5 -0
- package/layout/ApplicationLayout.d.ts +10 -0
- package/layout/ApplicationLayout.js +231 -0
- package/layout/ApplicationLayout.stories.tsx +171 -0
- package/layout/Icons.js +55 -0
- package/layout/types.d.ts +57 -0
- package/layout/types.js +5 -0
- package/link/Link.d.ts +3 -0
- package/link/Link.js +153 -0
- package/link/Link.stories.tsx +151 -0
- package/link/Link.test.js +91 -0
- package/link/types.d.ts +70 -0
- package/link/types.js +5 -0
- package/list/List.d.ts +4 -0
- package/list/List.js +47 -0
- package/list/List.stories.tsx +95 -0
- package/list/types.d.ts +7 -0
- package/list/types.js +5 -0
- package/main.d.ts +47 -0
- package/{dist/main.js → main.js} +177 -53
- package/number-input/NumberInput.d.ts +4 -0
- package/number-input/NumberInput.js +76 -0
- package/number-input/NumberInput.stories.tsx +115 -0
- package/number-input/NumberInput.test.js +508 -0
- package/number-input/NumberInputContext.d.ts +4 -0
- package/{dist/ThemeContext.js → number-input/NumberInputContext.js} +6 -2
- package/number-input/numberInputContextTypes.d.ts +19 -0
- package/number-input/numberInputContextTypes.js +5 -0
- package/number-input/types.d.ts +121 -0
- package/number-input/types.js +5 -0
- package/package.json +42 -24
- package/paginator/Icons.js +66 -0
- package/paginator/Paginator.d.ts +4 -0
- package/paginator/Paginator.js +192 -0
- package/paginator/Paginator.stories.tsx +63 -0
- package/paginator/Paginator.test.js +266 -0
- package/paginator/types.d.ts +38 -0
- package/paginator/types.js +5 -0
- package/password-input/PasswordInput.d.ts +4 -0
- package/password-input/PasswordInput.js +163 -0
- package/password-input/PasswordInput.stories.tsx +131 -0
- package/password-input/PasswordInput.test.js +183 -0
- package/password-input/types.d.ts +107 -0
- package/password-input/types.js +5 -0
- package/progress-bar/ProgressBar.d.ts +4 -0
- package/progress-bar/ProgressBar.js +170 -0
- package/progress-bar/ProgressBar.stories.jsx +58 -0
- package/progress-bar/ProgressBar.test.js +65 -0
- package/progress-bar/types.d.ts +37 -0
- package/progress-bar/types.js +5 -0
- package/quick-nav/QuickNav.d.ts +4 -0
- package/quick-nav/QuickNav.js +66 -0
- package/quick-nav/QuickNav.stories.tsx +237 -0
- package/quick-nav/types.d.ts +21 -0
- package/quick-nav/types.js +5 -0
- package/radio/Radio.d.ts +4 -0
- package/radio/Radio.js +174 -0
- package/radio/Radio.stories.tsx +192 -0
- package/radio/Radio.test.js +71 -0
- package/radio/types.d.ts +54 -0
- package/radio/types.js +5 -0
- package/radio-group/Radio.d.ts +4 -0
- package/radio-group/Radio.js +141 -0
- package/radio-group/RadioGroup.d.ts +4 -0
- package/radio-group/RadioGroup.js +280 -0
- package/radio-group/RadioGroup.stories.tsx +100 -0
- package/radio-group/RadioGroup.test.js +695 -0
- package/radio-group/types.d.ts +114 -0
- package/radio-group/types.js +5 -0
- package/resultsetTable/ResultsetTable.d.ts +4 -0
- package/resultsetTable/ResultsetTable.js +254 -0
- package/resultsetTable/ResultsetTable.stories.tsx +275 -0
- package/resultsetTable/ResultsetTable.test.js +306 -0
- package/resultsetTable/types.d.ts +67 -0
- package/resultsetTable/types.js +5 -0
- package/row/Row.d.ts +3 -0
- package/row/Row.js +127 -0
- package/row/Row.stories.tsx +237 -0
- package/row/types.d.ts +28 -0
- package/row/types.js +5 -0
- package/select/Icons.d.ts +10 -0
- package/select/Icons.js +93 -0
- package/select/Option.d.ts +4 -0
- package/select/Option.js +110 -0
- package/select/Select.d.ts +4 -0
- package/select/Select.js +740 -0
- package/select/Select.stories.tsx +582 -0
- package/select/Select.test.js +2016 -0
- package/select/types.d.ts +191 -0
- package/select/types.js +5 -0
- package/sidenav/Sidenav.d.ts +9 -0
- package/sidenav/Sidenav.js +136 -0
- package/sidenav/Sidenav.stories.tsx +182 -0
- package/sidenav/Sidenav.test.js +56 -0
- package/sidenav/types.d.ts +50 -0
- package/sidenav/types.js +5 -0
- package/slider/Slider.d.ts +4 -0
- package/slider/Slider.js +317 -0
- package/slider/Slider.stories.tsx +177 -0
- package/slider/Slider.test.js +129 -0
- package/slider/types.d.ts +78 -0
- package/slider/types.js +5 -0
- package/spinner/Spinner.d.ts +4 -0
- package/spinner/Spinner.js +250 -0
- package/spinner/Spinner.stories.jsx +103 -0
- package/spinner/Spinner.test.js +64 -0
- package/spinner/types.d.ts +32 -0
- package/spinner/types.js +5 -0
- package/stack/Stack.d.ts +3 -0
- package/stack/Stack.js +97 -0
- package/stack/Stack.stories.tsx +164 -0
- package/stack/types.d.ts +24 -0
- package/stack/types.js +5 -0
- package/switch/Switch.d.ts +4 -0
- package/switch/Switch.js +192 -0
- package/switch/Switch.stories.tsx +160 -0
- package/switch/Switch.test.js +98 -0
- package/switch/types.d.ts +62 -0
- package/switch/types.js +5 -0
- package/table/Table.d.ts +4 -0
- package/table/Table.js +118 -0
- package/table/Table.stories.jsx +277 -0
- package/table/Table.test.js +26 -0
- package/table/types.d.ts +21 -0
- package/table/types.js +5 -0
- package/tabs/Tabs.d.ts +4 -0
- package/tabs/Tabs.js +213 -0
- package/tabs/Tabs.stories.tsx +120 -0
- package/tabs/Tabs.test.js +123 -0
- package/tabs/types.d.ts +78 -0
- package/tabs/types.js +5 -0
- package/tag/Tag.d.ts +4 -0
- package/tag/Tag.js +186 -0
- package/tag/Tag.stories.tsx +142 -0
- package/tag/Tag.test.js +60 -0
- package/tag/types.d.ts +69 -0
- package/tag/types.js +5 -0
- package/text/Text.d.ts +7 -0
- package/text/Text.js +30 -0
- package/text/Text.stories.tsx +19 -0
- package/text-input/TextInput.d.ts +4 -0
- package/text-input/TextInput.js +798 -0
- package/text-input/TextInput.stories.tsx +474 -0
- package/text-input/TextInput.test.js +1725 -0
- package/text-input/types.d.ts +163 -0
- package/text-input/types.js +5 -0
- package/textarea/Textarea.d.ts +4 -0
- package/textarea/Textarea.js +286 -0
- package/textarea/Textarea.stories.jsx +157 -0
- package/textarea/Textarea.test.js +437 -0
- package/textarea/types.d.ts +134 -0
- package/textarea/types.js +5 -0
- package/toggle-group/ToggleGroup.d.ts +4 -0
- package/toggle-group/ToggleGroup.js +214 -0
- package/toggle-group/ToggleGroup.stories.tsx +173 -0
- package/toggle-group/ToggleGroup.test.js +125 -0
- package/toggle-group/types.d.ts +97 -0
- package/toggle-group/types.js +5 -0
- package/useTheme.d.ts +2 -0
- package/useTheme.js +22 -0
- package/wizard/Wizard.d.ts +4 -0
- package/wizard/Wizard.js +286 -0
- package/wizard/Wizard.stories.tsx +214 -0
- package/wizard/Wizard.test.js +141 -0
- package/wizard/types.d.ts +64 -0
- package/wizard/types.js +5 -0
- package/README.md +0 -66
- package/babel.config.js +0 -4
- package/dist/accordion/Accordion.js +0 -264
- package/dist/accordion/Accordion.stories.js +0 -207
- package/dist/accordion/readme.md +0 -96
- package/dist/alert/Alert.js +0 -302
- package/dist/alert/Alert.stories.js +0 -158
- package/dist/alert/close.svg +0 -4
- package/dist/alert/error.svg +0 -4
- package/dist/alert/info.svg +0 -4
- package/dist/alert/readme.md +0 -43
- package/dist/alert/success.svg +0 -4
- package/dist/alert/warning.svg +0 -4
- package/dist/box/Box.js +0 -148
- package/dist/button/Button.js +0 -183
- package/dist/button/Button.stories.js +0 -224
- package/dist/button/readme.md +0 -93
- package/dist/card/Card.js +0 -217
- package/dist/checkbox/Checkbox.js +0 -224
- package/dist/checkbox/Checkbox.stories.js +0 -144
- package/dist/checkbox/readme.md +0 -116
- package/dist/chip/Chip.js +0 -171
- package/dist/common/services/example-service.js +0 -10
- package/dist/common/services/example-service.test.js +0 -12
- package/dist/common/utils.js +0 -42
- package/dist/common/variables.js +0 -307
- package/dist/date/Date.js +0 -357
- package/dist/date/Date.stories.js +0 -205
- package/dist/date/calendar.svg +0 -1
- package/dist/date/calendar_dark.svg +0 -1
- package/dist/date/readme.md +0 -73
- package/dist/dialog/Dialog.js +0 -197
- package/dist/dialog/Dialog.stories.js +0 -217
- package/dist/dialog/readme.md +0 -32
- package/dist/dropdown/Dropdown.js +0 -412
- package/dist/dropdown/Dropdown.stories.js +0 -249
- package/dist/dropdown/baseline-arrow_drop_down.svg +0 -1
- package/dist/dropdown/baseline-arrow_drop_down_wh.svg +0 -4
- package/dist/dropdown/baseline-arrow_drop_up.svg +0 -1
- package/dist/dropdown/baseline-arrow_drop_up_wh.svg +0 -4
- package/dist/dropdown/readme.md +0 -69
- package/dist/footer/Footer.js +0 -346
- package/dist/footer/Footer.stories.js +0 -94
- package/dist/footer/dxc_logo_wht.png +0 -0
- package/dist/footer/readme.md +0 -41
- package/dist/header/Header.js +0 -354
- package/dist/header/Header.stories.js +0 -176
- package/dist/header/close_icon.svg +0 -1
- package/dist/header/dxc_logo_black.png +0 -0
- package/dist/header/dxc_logo_white.png +0 -0
- package/dist/header/hamb_menu_black.svg +0 -1
- package/dist/header/hamb_menu_white.svg +0 -1
- package/dist/header/readme.md +0 -33
- package/dist/heading/Heading.js +0 -159
- package/dist/input-text/InputText.js +0 -519
- package/dist/input-text/InputText.stories.js +0 -209
- package/dist/input-text/error.svg +0 -1
- package/dist/input-text/readme.md +0 -91
- package/dist/link/Link.js +0 -136
- package/dist/link/readme.md +0 -51
- package/dist/paginator/Paginator.js +0 -178
- package/dist/paginator/images/next.svg +0 -3
- package/dist/paginator/images/nextPage.svg +0 -3
- package/dist/paginator/images/previous.svg +0 -3
- package/dist/paginator/images/previousPage.svg +0 -3
- package/dist/paginator/readme.md +0 -50
- package/dist/progress-bar/ProgressBar.js +0 -189
- package/dist/progress-bar/ProgressBar.stories.js +0 -280
- package/dist/progress-bar/readme.md +0 -63
- package/dist/radio/Radio.js +0 -191
- package/dist/radio/Radio.stories.js +0 -166
- package/dist/radio/readme.md +0 -70
- package/dist/resultsetTable/ResultsetTable.js +0 -334
- package/dist/resultsetTable/arrow_downward-24px_wht.svg +0 -1
- package/dist/resultsetTable/arrow_upward-24px_wht.svg +0 -1
- package/dist/resultsetTable/unfold_more-24px_wht.svg +0 -1
- package/dist/select/Select.js +0 -442
- package/dist/select/Select.stories.js +0 -235
- package/dist/select/readme.md +0 -72
- package/dist/sidenav/Sidenav.js +0 -237
- package/dist/sidenav/arrow_icon.svg +0 -3
- package/dist/slider/Slider.js +0 -258
- package/dist/slider/Slider.stories.js +0 -241
- package/dist/slider/readme.md +0 -64
- package/dist/spinner/Spinner.js +0 -196
- package/dist/spinner/Spinner.stories.js +0 -183
- package/dist/spinner/readme.md +0 -65
- package/dist/switch/Switch.js +0 -197
- package/dist/switch/Switch.stories.js +0 -134
- package/dist/switch/readme.md +0 -133
- package/dist/table/Table.js +0 -84
- package/dist/tabs/Tabs.js +0 -170
- package/dist/tabs/Tabs.stories.js +0 -130
- package/dist/tabs/readme.md +0 -78
- package/dist/tabs-for-sections/TabsForSections.js +0 -107
- package/dist/tabs-for-sections/readme.md +0 -78
- package/dist/tag/Tag.js +0 -217
- package/dist/textarea/Textarea.js +0 -226
- package/dist/toggle/Toggle.js +0 -223
- package/dist/toggle/Toggle.stories.js +0 -297
- package/dist/toggle/readme.md +0 -80
- package/dist/upload/Upload.js +0 -200
- package/dist/upload/Upload.stories.js +0 -72
- package/dist/upload/buttons-upload/ButtonsUpload.js +0 -125
- package/dist/upload/buttons-upload/drag-drop-icon.svg +0 -4
- package/dist/upload/buttons-upload/upload-button.svg +0 -1
- package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -282
- package/dist/upload/dragAndDropArea/upload_drop.svg +0 -4
- package/dist/upload/dragAndDropArea/upload_file.svg +0 -4
- package/dist/upload/file-upload/FileToUpload.js +0 -158
- package/dist/upload/file-upload/audio-icon.svg +0 -4
- package/dist/upload/file-upload/close.svg +0 -4
- package/dist/upload/file-upload/file-icon.svg +0 -4
- package/dist/upload/file-upload/video-icon.svg +0 -4
- package/dist/upload/files-upload/FilesToUpload.js +0 -123
- package/dist/upload/readme.md +0 -37
- package/dist/upload/transaction/Transaction.js +0 -155
- package/dist/upload/transaction/audio-icon-err.svg +0 -4
- package/dist/upload/transaction/audio-icon.svg +0 -4
- package/dist/upload/transaction/error-icon.svg +0 -4
- package/dist/upload/transaction/file-icon-err.svg +0 -4
- package/dist/upload/transaction/file-icon.svg +0 -4
- package/dist/upload/transaction/image-icon-err.svg +0 -4
- package/dist/upload/transaction/image-icon.svg +0 -4
- package/dist/upload/transaction/success-icon.svg +0 -4
- package/dist/upload/transaction/video-icon-err.svg +0 -4
- package/dist/upload/transaction/video-icon.svg +0 -4
- package/dist/upload/transactions/Transactions.js +0 -120
- package/dist/wizard/Wizard.js +0 -320
- package/dist/wizard/invalid_icon.svg +0 -6
- package/dist/wizard/valid_icon.svg +0 -6
- package/dist/wizard/validation-wrong.svg +0 -6
- package/test/Accordion.test.js +0 -33
- package/test/Alert.test.js +0 -53
- package/test/Box.test.js +0 -10
- package/test/Button.test.js +0 -18
- package/test/Card.test.js +0 -30
- package/test/Checkbox.test.js +0 -45
- package/test/Chip.test.js +0 -25
- package/test/Date.test.js +0 -393
- package/test/Dialog.test.js +0 -23
- package/test/Dropdown.test.js +0 -130
- package/test/Footer.test.js +0 -99
- package/test/Header.test.js +0 -39
- package/test/Heading.test.js +0 -35
- package/test/InputText.test.js +0 -236
- package/test/Link.test.js +0 -25
- package/test/Paginator.test.js +0 -165
- package/test/ProgressBar.test.js +0 -35
- package/test/Radio.test.js +0 -37
- package/test/ResultsetTable.test.js +0 -282
- package/test/Select.test.js +0 -191
- package/test/Sidenav.test.js +0 -87
- package/test/Slider.test.js +0 -65
- package/test/Spinner.test.js +0 -27
- package/test/Switch.test.js +0 -45
- package/test/Table.test.js +0 -36
- package/test/Tabs.test.js +0 -88
- package/test/TabsForSections.test.js +0 -34
- package/test/Tag.test.js +0 -32
- package/test/TextArea.test.js +0 -52
- package/test/Toggle.test.js +0 -43
- package/test/Upload.test.js +0 -60
- package/test/Wizard.test.js +0 -130
- package/test/mocks/pngMock.js +0 -1
- package/test/mocks/svgMock.js +0 -1
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
var _react = _interopRequireDefault(require("react"));
|
|
6
|
+
|
|
7
|
+
var _react2 = require("@testing-library/react");
|
|
8
|
+
|
|
9
|
+
var _Header = _interopRequireDefault(require("./Header"));
|
|
10
|
+
|
|
11
|
+
var _linkedin = _interopRequireDefault(require("../../app/src/images/linkedin.svg"));
|
|
12
|
+
|
|
13
|
+
describe("Header component tests", function () {
|
|
14
|
+
test("Header renders with default logo", function () {
|
|
15
|
+
var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Header["default"], null)),
|
|
16
|
+
getByTitle = _render.getByTitle;
|
|
17
|
+
|
|
18
|
+
expect(getByTitle("DXC Logo")).toBeTruthy();
|
|
19
|
+
});
|
|
20
|
+
test("Call correct function on logo click", function () {
|
|
21
|
+
var onClick = jest.fn();
|
|
22
|
+
|
|
23
|
+
var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Header["default"], {
|
|
24
|
+
onClick: onClick
|
|
25
|
+
})),
|
|
26
|
+
getByTitle = _render2.getByTitle;
|
|
27
|
+
|
|
28
|
+
var logo = getByTitle("DXC Logo");
|
|
29
|
+
|
|
30
|
+
_react2.fireEvent.click(logo);
|
|
31
|
+
|
|
32
|
+
expect(onClick).toHaveBeenCalled();
|
|
33
|
+
});
|
|
34
|
+
test("Header renders with correct children", function () {
|
|
35
|
+
// We need to force the offsetWidth value
|
|
36
|
+
Object.defineProperty(HTMLElement.prototype, "offsetWidth", {
|
|
37
|
+
configurable: true,
|
|
38
|
+
value: 1024
|
|
39
|
+
});
|
|
40
|
+
|
|
41
|
+
var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Header["default"], {
|
|
42
|
+
content: /*#__PURE__*/_react["default"].createElement("p", null, "header-child-text")
|
|
43
|
+
})),
|
|
44
|
+
getByText = _render3.getByText;
|
|
45
|
+
|
|
46
|
+
expect(getByText("header-child-text")).toBeTruthy();
|
|
47
|
+
});
|
|
48
|
+
test("Header renders menu button in mobile", function () {
|
|
49
|
+
Object.defineProperty(HTMLElement.prototype, "offsetWidth", {
|
|
50
|
+
configurable: true,
|
|
51
|
+
value: 425
|
|
52
|
+
});
|
|
53
|
+
|
|
54
|
+
var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Header["default"], {
|
|
55
|
+
responsiveContent: function responsiveContent(closeMenu) {
|
|
56
|
+
return /*#__PURE__*/_react["default"].createElement("p", null, "header-child-text");
|
|
57
|
+
}
|
|
58
|
+
})),
|
|
59
|
+
getByText = _render4.getByText;
|
|
60
|
+
|
|
61
|
+
expect(getByText("Menu")).toBeTruthy();
|
|
62
|
+
});
|
|
63
|
+
});
|
package/header/Icons.js
ADDED
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.dxcLogo = void 0;
|
|
9
|
+
|
|
10
|
+
var _react = _interopRequireDefault(require("react"));
|
|
11
|
+
|
|
12
|
+
var dxcLogo = /*#__PURE__*/_react["default"].createElement("svg", {
|
|
13
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
14
|
+
width: "73",
|
|
15
|
+
height: "40",
|
|
16
|
+
viewBox: "0 0 73 40"
|
|
17
|
+
}, /*#__PURE__*/_react["default"].createElement("title", null, "DXC Logo"), /*#__PURE__*/_react["default"].createElement("g", {
|
|
18
|
+
id: "g10",
|
|
19
|
+
transform: "translate(0)"
|
|
20
|
+
}, /*#__PURE__*/_react["default"].createElement("g", {
|
|
21
|
+
id: "g12"
|
|
22
|
+
}, /*#__PURE__*/_react["default"].createElement("path", {
|
|
23
|
+
id: "path14",
|
|
24
|
+
d: "M91.613-28.177v2.514H90.231V-28.15l-2.415-3.82h1.616l1.5,2.532,1.526-2.532h1.571ZM83.9-25.555A3.15,3.15,0,0,1,80.6-28.8v-.018a3.231,3.231,0,0,1,3.294-3.262,3.442,3.442,0,0,1,2.469.865l-.87,1.054a2.311,2.311,0,0,0-1.643-.64,1.891,1.891,0,0,0-1.8,1.964v.018a1.886,1.886,0,0,0,1.9,2,2.2,2.2,0,0,0,1.3-.378v-.9H83.858v-1.2h2.729v2.738A4.071,4.071,0,0,1,83.9-25.555Zm-6.416-3.261a1.913,1.913,0,0,0-1.9-1.982A1.883,1.883,0,0,0,73.7-28.835v.018a1.913,1.913,0,0,0,1.9,1.982A1.883,1.883,0,0,0,77.486-28.8Zm-1.9,3.261a3.225,3.225,0,0,1-3.33-3.243v-.018A3.255,3.255,0,0,1,75.6-32.078a3.225,3.225,0,0,1,3.331,3.243v.018A3.255,3.255,0,0,1,75.583-25.555Zm-9.173-.108V-31.97h1.382v5.045h3.133v1.261Zm-3.433-3.153a1.913,1.913,0,0,0-1.9-1.982,1.883,1.883,0,0,0-1.886,1.964v.018a1.913,1.913,0,0,0,1.9,1.982A1.883,1.883,0,0,0,62.978-28.8Zm-1.9,3.261a3.225,3.225,0,0,1-3.33-3.243v-.018a3.255,3.255,0,0,1,3.348-3.262,3.225,3.225,0,0,1,3.331,3.243v.018A3.255,3.255,0,0,1,61.075-25.555Zm-6.508-.108-3.043-4.009v4.009H50.159V-31.97h1.275l2.944,3.883V-31.97h1.364v6.306Zm-8.246,0v-2.531h-2.55v2.531H42.389V-31.97h1.382v2.5h2.55v-2.5H47.7v6.306Zm-8.432.108A3.178,3.178,0,0,1,34.666-28.8v-.018a3.2,3.2,0,0,1,3.276-3.262,3.237,3.237,0,0,1,2.478.973l-.88,1.018a2.315,2.315,0,0,0-1.606-.712,1.866,1.866,0,0,0-1.822,1.964v.018a1.87,1.87,0,0,0,1.822,1.982,2.265,2.265,0,0,0,1.651-.739l.88.891A3.206,3.206,0,0,1,37.889-25.555Zm-9.805-.108V-31.97h4.739v1.235H29.458v1.279h2.962v1.234H29.458V-26.9h3.411v1.234ZM24.322-30.69v5.027H22.939V-30.69H21.028v-1.28h5.206v1.28H24.322",
|
|
25
|
+
transform: "translate(-21.028 65.555)",
|
|
26
|
+
fill: "#100f0d"
|
|
27
|
+
}), /*#__PURE__*/_react["default"].createElement("path", {
|
|
28
|
+
id: "path16",
|
|
29
|
+
d: "M75.836-76.712a8.975,8.975,0,0,1,2.246-3.9,8.393,8.393,0,0,1,6.058-2.457h9.824v-5.67H84.139a14.611,14.611,0,0,0-10.232,4.221,14.509,14.509,0,0,0-3.076,4.536,11.913,11.913,0,0,0-.973,3.271Zm0,4.325a8.978,8.978,0,0,0,2.246,3.9,8.394,8.394,0,0,0,6.058,2.457h9.824v5.67H84.139A14.611,14.611,0,0,1,73.907-64.58a14.506,14.506,0,0,1-3.076-4.536,11.91,11.91,0,0,1-.973-3.271ZM57.522-69.832l-7.5,9.473H42.581L53.818-74.55,42.581-88.739H50.02l7.5,9.472,7.5-9.472h7.439L61.225-74.55l11.237,14.19H65.023Zm-12.336-6.88a11.935,11.935,0,0,0-.973-3.271,14.515,14.515,0,0,0-3.076-4.536A14.612,14.612,0,0,0,30.9-88.739H21.081v5.67H30.9a8.394,8.394,0,0,1,6.058,2.457,8.978,8.978,0,0,1,2.246,3.9Zm0,4.325a11.932,11.932,0,0,1-.973,3.271,14.511,14.511,0,0,1-3.076,4.536A14.611,14.611,0,0,1,30.9-60.359H21.081v-5.67H30.9a8.4,8.4,0,0,0,6.058-2.457,8.981,8.981,0,0,0,2.246-3.9h5.978",
|
|
30
|
+
transform: "translate(-21.049 88.739)",
|
|
31
|
+
fill: "#100f0d"
|
|
32
|
+
}))));
|
|
33
|
+
|
|
34
|
+
exports.dxcLogo = dxcLogo;
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
|
|
3
|
+
declare type Padding = {
|
|
4
|
+
top?: Space;
|
|
5
|
+
bottom?: Space;
|
|
6
|
+
left?: Space;
|
|
7
|
+
right?: Space;
|
|
8
|
+
};
|
|
9
|
+
declare type Props = {
|
|
10
|
+
/**
|
|
11
|
+
* Wether a contrast line should appear at the bottom of the header.
|
|
12
|
+
*/
|
|
13
|
+
underlined?: boolean;
|
|
14
|
+
/**
|
|
15
|
+
* Content showed in the header. Take into account that the component applies styles
|
|
16
|
+
* for the first child in the content, so we recommend the use of React.Fragment
|
|
17
|
+
* to be applied correctly. Otherwise, the styles can be modified.
|
|
18
|
+
*/
|
|
19
|
+
content?: React.ReactNode;
|
|
20
|
+
/**
|
|
21
|
+
* Content showed in responsive version. It receives the close menu handler that can
|
|
22
|
+
* be used to add that functionality when a element is clicked.
|
|
23
|
+
*/
|
|
24
|
+
responsiveContent?: (closeHandler: () => void) => React.ReactNode;
|
|
25
|
+
/**
|
|
26
|
+
* This function will be called when the user clicks the header logo.
|
|
27
|
+
*/
|
|
28
|
+
onClick?: () => void;
|
|
29
|
+
/**
|
|
30
|
+
* Size of the bottom margin to be applied to the header
|
|
31
|
+
* ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
|
|
32
|
+
*/
|
|
33
|
+
margin?: Space;
|
|
34
|
+
/**
|
|
35
|
+
* Size of the padding to be applied to the custom area of the component
|
|
36
|
+
* ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
|
|
37
|
+
* You can pass an object with 'top', 'bottom', 'left' and 'right' properties in
|
|
38
|
+
* order to specify different padding sizes.
|
|
39
|
+
*/
|
|
40
|
+
padding?: Space | Padding;
|
|
41
|
+
/**
|
|
42
|
+
* Value of the tabindex for all interactuable elements, except those inside the
|
|
43
|
+
* custom area.
|
|
44
|
+
*/
|
|
45
|
+
tabIndex?: number;
|
|
46
|
+
};
|
|
47
|
+
export default Props;
|
package/header/types.js
ADDED
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
var _typeof3 = require("@babel/runtime/helpers/typeof");
|
|
6
|
+
|
|
7
|
+
Object.defineProperty(exports, "__esModule", {
|
|
8
|
+
value: true
|
|
9
|
+
});
|
|
10
|
+
exports["default"] = void 0;
|
|
11
|
+
|
|
12
|
+
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
|
13
|
+
|
|
14
|
+
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
15
|
+
|
|
16
|
+
var _react = _interopRequireDefault(require("react"));
|
|
17
|
+
|
|
18
|
+
var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
19
|
+
|
|
20
|
+
var _variables = require("../common/variables.js");
|
|
21
|
+
|
|
22
|
+
var _useTheme = _interopRequireDefault(require("../useTheme"));
|
|
23
|
+
|
|
24
|
+
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6;
|
|
25
|
+
|
|
26
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
27
|
+
|
|
28
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof3(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
29
|
+
|
|
30
|
+
var DxcHeading = function DxcHeading(_ref) {
|
|
31
|
+
var _ref$level = _ref.level,
|
|
32
|
+
level = _ref$level === void 0 ? 1 : _ref$level,
|
|
33
|
+
_ref$text = _ref.text,
|
|
34
|
+
text = _ref$text === void 0 ? "" : _ref$text,
|
|
35
|
+
as = _ref.as,
|
|
36
|
+
weight = _ref.weight,
|
|
37
|
+
margin = _ref.margin;
|
|
38
|
+
var colorsTheme = (0, _useTheme["default"])();
|
|
39
|
+
|
|
40
|
+
var checkValidAs = function checkValidAs() {
|
|
41
|
+
if (as === "h1" || as === "h2" || as === "h3" || as === "h4" || as === "h5") return as;
|
|
42
|
+
};
|
|
43
|
+
|
|
44
|
+
return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
|
|
45
|
+
theme: colorsTheme.heading
|
|
46
|
+
}, /*#__PURE__*/_react["default"].createElement(HeadingContainer, {
|
|
47
|
+
margin: margin
|
|
48
|
+
}, level === 1 ? /*#__PURE__*/_react["default"].createElement(HeadingLevel1, {
|
|
49
|
+
as: checkValidAs(),
|
|
50
|
+
weight: weight
|
|
51
|
+
}, text) : level === 2 ? /*#__PURE__*/_react["default"].createElement(HeadingLevel2, {
|
|
52
|
+
as: checkValidAs(),
|
|
53
|
+
weight: weight
|
|
54
|
+
}, text) : level === 3 ? /*#__PURE__*/_react["default"].createElement(HeadingLevel3, {
|
|
55
|
+
as: checkValidAs(),
|
|
56
|
+
weight: weight
|
|
57
|
+
}, text) : level === 4 ? /*#__PURE__*/_react["default"].createElement(HeadingLevel4, {
|
|
58
|
+
as: checkValidAs(),
|
|
59
|
+
weight: weight
|
|
60
|
+
}, text) : /*#__PURE__*/_react["default"].createElement(HeadingLevel5, {
|
|
61
|
+
as: checkValidAs(),
|
|
62
|
+
weight: weight
|
|
63
|
+
}, text)));
|
|
64
|
+
};
|
|
65
|
+
|
|
66
|
+
var HeadingContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n margin: ", ";\n margin-top: ", ";\n margin-right: ", ";\n margin-bottom: ", ";\n margin-left: ", ";\n"])), function (props) {
|
|
67
|
+
return props.margin && (0, _typeof2["default"])(props.margin) !== "object" ? _variables.spaces[props.margin] : "0px";
|
|
68
|
+
}, function (props) {
|
|
69
|
+
return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.top ? _variables.spaces[props.margin.top] : "";
|
|
70
|
+
}, function (props) {
|
|
71
|
+
return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.right ? _variables.spaces[props.margin.right] : "";
|
|
72
|
+
}, function (props) {
|
|
73
|
+
return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.bottom ? _variables.spaces[props.margin.bottom] : "";
|
|
74
|
+
}, function (props) {
|
|
75
|
+
return props.margin && (0, _typeof2["default"])(props.margin) === "object" && props.margin.left ? _variables.spaces[props.margin.left] : "";
|
|
76
|
+
});
|
|
77
|
+
|
|
78
|
+
var HeadingLevel1 = _styledComponents["default"].h1(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n font-family: ", ";\n font-style: ", ";\n font-size: ", ";\n line-height: ", ";\n font-weight: ", ";\n letter-spacing: ", ";\n color: ", ";\n margin: 0;\n"])), function (props) {
|
|
79
|
+
return props.theme.level1FontFamily;
|
|
80
|
+
}, function (props) {
|
|
81
|
+
return props.theme.level1FontStyle;
|
|
82
|
+
}, function (props) {
|
|
83
|
+
return props.theme.level1FontSize;
|
|
84
|
+
}, function (props) {
|
|
85
|
+
return props.theme.level1LineHeight;
|
|
86
|
+
}, function (props) {
|
|
87
|
+
return props.weight === "normal" ? "400" : props.weight === "light" ? "300" : props.weight === "bold" ? "600" : props.theme.level1FontWeight;
|
|
88
|
+
}, function (props) {
|
|
89
|
+
return props.theme.level1LetterSpacing;
|
|
90
|
+
}, function (props) {
|
|
91
|
+
return props.theme.level1FontColor;
|
|
92
|
+
});
|
|
93
|
+
|
|
94
|
+
var HeadingLevel2 = _styledComponents["default"].h2(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n font-family: ", ";\n font-style: ", ";\n font-size: ", ";\n line-height: ", ";\n font-weight: ", ";\n letter-spacing: ", ";\n color: ", ";\n margin: 0;\n"])), function (props) {
|
|
95
|
+
return props.theme.level2FontFamily;
|
|
96
|
+
}, function (props) {
|
|
97
|
+
return props.theme.level2FontStyle;
|
|
98
|
+
}, function (props) {
|
|
99
|
+
return props.theme.level2FontSize;
|
|
100
|
+
}, function (props) {
|
|
101
|
+
return props.theme.level2LineHeight;
|
|
102
|
+
}, function (props) {
|
|
103
|
+
return props.weight === "normal" ? "400" : props.weight === "light" ? "300" : props.weight === "bold" ? "600" : props.theme.level2FontWeight;
|
|
104
|
+
}, function (props) {
|
|
105
|
+
return props.theme.level2LetterSpacing;
|
|
106
|
+
}, function (props) {
|
|
107
|
+
return props.theme.level2FontColor;
|
|
108
|
+
});
|
|
109
|
+
|
|
110
|
+
var HeadingLevel3 = _styledComponents["default"].h3(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n font-family: ", ";\n font-style: ", ";\n font-size: ", ";\n line-height: ", ";\n font-weight: ", ";\n letter-spacing: ", ";\n color: ", ";\n margin: 0;\n"])), function (props) {
|
|
111
|
+
return props.theme.level3FontFamily;
|
|
112
|
+
}, function (props) {
|
|
113
|
+
return props.theme.level3FontStyle;
|
|
114
|
+
}, function (props) {
|
|
115
|
+
return props.theme.level3FontSize;
|
|
116
|
+
}, function (props) {
|
|
117
|
+
return props.theme.level3LineHeight;
|
|
118
|
+
}, function (props) {
|
|
119
|
+
return props.weight === "normal" ? "400" : props.weight === "light" ? "300" : props.weight === "bold" ? "600" : props.theme.level3FontWeight;
|
|
120
|
+
}, function (props) {
|
|
121
|
+
return props.theme.level3LetterSpacing;
|
|
122
|
+
}, function (props) {
|
|
123
|
+
return props.theme.level3FontColor;
|
|
124
|
+
});
|
|
125
|
+
|
|
126
|
+
var HeadingLevel4 = _styledComponents["default"].h4(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n font-family: ", ";\n font-style: ", ";\n font-size: ", ";\n line-height: ", ";\n font-weight: ", ";\n letter-spacing: ", ";\n color: ", ";\n margin: 0;\n"])), function (props) {
|
|
127
|
+
return props.theme.level4FontFamily;
|
|
128
|
+
}, function (props) {
|
|
129
|
+
return props.theme.level4FontStyle;
|
|
130
|
+
}, function (props) {
|
|
131
|
+
return props.theme.level4FontSize;
|
|
132
|
+
}, function (props) {
|
|
133
|
+
return props.theme.level4LineHeight;
|
|
134
|
+
}, function (props) {
|
|
135
|
+
return props.weight === "normal" ? "400" : props.weight === "light" ? "300" : props.weight === "bold" ? "600" : props.theme.level4FontWeight;
|
|
136
|
+
}, function (props) {
|
|
137
|
+
return props.theme.level4LetterSpacing;
|
|
138
|
+
}, function (props) {
|
|
139
|
+
return props.theme.level4FontColor;
|
|
140
|
+
});
|
|
141
|
+
|
|
142
|
+
var HeadingLevel5 = _styledComponents["default"].h5(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n font-family: ", ";\n font-style: ", ";\n font-size: ", ";\n line-height: ", ";\n font-weight: ", ";\n letter-spacing: ", ";\n color: ", ";\n margin: 0;\n"])), function (props) {
|
|
143
|
+
return props.theme.level5FontFamily;
|
|
144
|
+
}, function (props) {
|
|
145
|
+
return props.theme.level5FontStyle;
|
|
146
|
+
}, function (props) {
|
|
147
|
+
return props.theme.level5FontSize;
|
|
148
|
+
}, function (props) {
|
|
149
|
+
return props.theme.level5LineHeight;
|
|
150
|
+
}, function (props) {
|
|
151
|
+
return props.weight === "normal" ? "400" : props.weight === "light" ? "300" : props.weight === "bold" ? "600" : props.theme.level5FontWeight;
|
|
152
|
+
}, function (props) {
|
|
153
|
+
return props.theme.level5LetterSpacing;
|
|
154
|
+
}, function (props) {
|
|
155
|
+
return props.theme.level5FontColor;
|
|
156
|
+
});
|
|
157
|
+
|
|
158
|
+
var _default = DxcHeading;
|
|
159
|
+
exports["default"] = _default;
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import DxcHeading from "./Heading";
|
|
3
|
+
import Title from "../../.storybook/components/Title";
|
|
4
|
+
import ExampleContainer from "../../.storybook/components/ExampleContainer";
|
|
5
|
+
|
|
6
|
+
export default {
|
|
7
|
+
title: "Heading",
|
|
8
|
+
component: DxcHeading,
|
|
9
|
+
};
|
|
10
|
+
|
|
11
|
+
export const Chromatic = () => (
|
|
12
|
+
<>
|
|
13
|
+
<Title title="Levels" theme="light" level={2} />
|
|
14
|
+
<ExampleContainer>
|
|
15
|
+
<Title title="Level 1" theme="light" level={4} />
|
|
16
|
+
<DxcHeading text="Heading for sections within the page" />
|
|
17
|
+
<Title title="Level 2" theme="light" level={4} />
|
|
18
|
+
<DxcHeading text="Heading for sections within the page" level={2} />
|
|
19
|
+
<Title title="Level 3" theme="light" level={4} />
|
|
20
|
+
<DxcHeading text="Heading for sections within the page" level={3} />
|
|
21
|
+
<Title title="Level 4" theme="light" level={4} />
|
|
22
|
+
<DxcHeading text="Heading for sections within the page" level={4} />
|
|
23
|
+
<Title title="Level 5" theme="light" level={4} />
|
|
24
|
+
<DxcHeading text="Heading for sections within the page" level={5} />
|
|
25
|
+
</ExampleContainer>
|
|
26
|
+
<Title title="Weights" theme="light" level={2} />
|
|
27
|
+
<ExampleContainer>
|
|
28
|
+
<Title title="'light' Weight" theme="light" level={4} />
|
|
29
|
+
<DxcHeading text="Heading for sections within the page" level={2} weight="light" />
|
|
30
|
+
<Title title="'normal' Weight" theme="light" level={4} />
|
|
31
|
+
<DxcHeading text="Heading for sections within the page" level={2} weight="normal" />
|
|
32
|
+
<Title title="'bold' Weight" theme="light" level={4} />
|
|
33
|
+
<DxcHeading text="Heading for sections within the page" level={2} weight="bold" />
|
|
34
|
+
</ExampleContainer>
|
|
35
|
+
<Title title="Margins" theme="light" level={2} />
|
|
36
|
+
<ExampleContainer>
|
|
37
|
+
<Title title="Xxsmall" theme="light" level={4} />
|
|
38
|
+
<DxcHeading text="Xxsmall" margin="xxsmall" />
|
|
39
|
+
<Title title="Xsmall" theme="light" level={4} />
|
|
40
|
+
<DxcHeading text="Xsmall" margin="xsmall" />
|
|
41
|
+
<Title title="Small" theme="light" level={4} />
|
|
42
|
+
<DxcHeading text="Small" margin="small" />
|
|
43
|
+
<Title title="Medium" theme="light" level={4} />
|
|
44
|
+
<DxcHeading text="Medium" margin="medium" />
|
|
45
|
+
<Title title="Large" theme="light" level={4} />
|
|
46
|
+
<DxcHeading text="Large" margin="large" />
|
|
47
|
+
<Title title="Xlarge" theme="light" level={4} />
|
|
48
|
+
<DxcHeading text="Xlarge" margin="xlarge" />
|
|
49
|
+
<Title title="Xxlarge" theme="light" level={4} />
|
|
50
|
+
<DxcHeading text="Xxlarge" margin="xxlarge" />
|
|
51
|
+
<hr />
|
|
52
|
+
</ExampleContainer>
|
|
53
|
+
</>
|
|
54
|
+
);
|
|
@@ -0,0 +1,186 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
var _react = _interopRequireDefault(require("react"));
|
|
6
|
+
|
|
7
|
+
var _react2 = require("@testing-library/react");
|
|
8
|
+
|
|
9
|
+
var _Heading = _interopRequireDefault(require("./Heading"));
|
|
10
|
+
|
|
11
|
+
describe("Heading component tests", function () {
|
|
12
|
+
test("Heading renders with default level", function () {
|
|
13
|
+
var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Heading["default"], {
|
|
14
|
+
text: "my-heading-test"
|
|
15
|
+
})),
|
|
16
|
+
getByText = _render.getByText,
|
|
17
|
+
getByRole = _render.getByRole;
|
|
18
|
+
|
|
19
|
+
expect(getByText("my-heading-test")).toBeTruthy();
|
|
20
|
+
expect(getByRole("heading", {
|
|
21
|
+
level: 1
|
|
22
|
+
})).toBeTruthy();
|
|
23
|
+
});
|
|
24
|
+
test("Heading renders with level 1", function () {
|
|
25
|
+
var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Heading["default"], {
|
|
26
|
+
text: "my-heading-test",
|
|
27
|
+
level: 1
|
|
28
|
+
})),
|
|
29
|
+
getByText = _render2.getByText,
|
|
30
|
+
getByRole = _render2.getByRole;
|
|
31
|
+
|
|
32
|
+
expect(getByText("my-heading-test")).toBeTruthy();
|
|
33
|
+
expect(getByRole("heading", {
|
|
34
|
+
level: 1
|
|
35
|
+
})).toBeTruthy();
|
|
36
|
+
});
|
|
37
|
+
test("Heading renders with level 2", function () {
|
|
38
|
+
var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Heading["default"], {
|
|
39
|
+
text: "my-heading-test",
|
|
40
|
+
level: 2
|
|
41
|
+
})),
|
|
42
|
+
getByText = _render3.getByText,
|
|
43
|
+
getByRole = _render3.getByRole;
|
|
44
|
+
|
|
45
|
+
expect(getByText("my-heading-test")).toBeTruthy();
|
|
46
|
+
expect(getByRole("heading", {
|
|
47
|
+
level: 2
|
|
48
|
+
})).toBeTruthy();
|
|
49
|
+
});
|
|
50
|
+
test("Heading renders with level 3", function () {
|
|
51
|
+
var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Heading["default"], {
|
|
52
|
+
text: "my-heading-test",
|
|
53
|
+
level: 3
|
|
54
|
+
})),
|
|
55
|
+
getByText = _render4.getByText,
|
|
56
|
+
getByRole = _render4.getByRole;
|
|
57
|
+
|
|
58
|
+
expect(getByText("my-heading-test")).toBeTruthy();
|
|
59
|
+
expect(getByRole("heading", {
|
|
60
|
+
level: 3
|
|
61
|
+
})).toBeTruthy();
|
|
62
|
+
});
|
|
63
|
+
test("Heading renders with level 4", function () {
|
|
64
|
+
var _render5 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Heading["default"], {
|
|
65
|
+
text: "my-heading-test",
|
|
66
|
+
level: 4
|
|
67
|
+
})),
|
|
68
|
+
getByText = _render5.getByText,
|
|
69
|
+
getByRole = _render5.getByRole;
|
|
70
|
+
|
|
71
|
+
expect(getByText("my-heading-test")).toBeTruthy();
|
|
72
|
+
expect(getByRole("heading", {
|
|
73
|
+
level: 4
|
|
74
|
+
})).toBeTruthy();
|
|
75
|
+
});
|
|
76
|
+
test("Heading renders with level 5", function () {
|
|
77
|
+
var _render6 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Heading["default"], {
|
|
78
|
+
text: "my-heading-test",
|
|
79
|
+
level: 5
|
|
80
|
+
})),
|
|
81
|
+
getByText = _render6.getByText,
|
|
82
|
+
getByRole = _render6.getByRole;
|
|
83
|
+
|
|
84
|
+
expect(getByText("my-heading-test")).toBeTruthy();
|
|
85
|
+
expect(getByRole("heading", {
|
|
86
|
+
level: 5
|
|
87
|
+
})).toBeTruthy();
|
|
88
|
+
});
|
|
89
|
+
test("Heading renders with default level and as h5", function () {
|
|
90
|
+
var _render7 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Heading["default"], {
|
|
91
|
+
text: "my-heading-test",
|
|
92
|
+
as: "h5"
|
|
93
|
+
})),
|
|
94
|
+
getByText = _render7.getByText,
|
|
95
|
+
getByRole = _render7.getByRole;
|
|
96
|
+
|
|
97
|
+
expect(getByText("my-heading-test")).toBeTruthy();
|
|
98
|
+
expect(getByRole("heading", {
|
|
99
|
+
level: 5
|
|
100
|
+
})).toBeTruthy();
|
|
101
|
+
});
|
|
102
|
+
test("Heading renders with level 1 and as h5", function () {
|
|
103
|
+
var _render8 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Heading["default"], {
|
|
104
|
+
text: "my-heading-test",
|
|
105
|
+
level: 1,
|
|
106
|
+
as: "h5"
|
|
107
|
+
})),
|
|
108
|
+
getByText = _render8.getByText,
|
|
109
|
+
getByRole = _render8.getByRole;
|
|
110
|
+
|
|
111
|
+
expect(getByText("my-heading-test")).toBeTruthy();
|
|
112
|
+
expect(getByRole("heading", {
|
|
113
|
+
level: 5
|
|
114
|
+
})).toBeTruthy();
|
|
115
|
+
});
|
|
116
|
+
test("Heading renders with level 2 and as h4", function () {
|
|
117
|
+
var _render9 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Heading["default"], {
|
|
118
|
+
text: "my-heading-test",
|
|
119
|
+
level: 2,
|
|
120
|
+
as: "h4"
|
|
121
|
+
})),
|
|
122
|
+
getByText = _render9.getByText,
|
|
123
|
+
getByRole = _render9.getByRole;
|
|
124
|
+
|
|
125
|
+
expect(getByText("my-heading-test")).toBeTruthy();
|
|
126
|
+
expect(getByRole("heading", {
|
|
127
|
+
level: 4
|
|
128
|
+
})).toBeTruthy();
|
|
129
|
+
});
|
|
130
|
+
test("Heading renders with level 3 and as h2", function () {
|
|
131
|
+
var _render10 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Heading["default"], {
|
|
132
|
+
text: "my-heading-test",
|
|
133
|
+
level: 3,
|
|
134
|
+
as: "h2"
|
|
135
|
+
})),
|
|
136
|
+
getByText = _render10.getByText,
|
|
137
|
+
getByRole = _render10.getByRole;
|
|
138
|
+
|
|
139
|
+
expect(getByText("my-heading-test")).toBeTruthy();
|
|
140
|
+
expect(getByRole("heading", {
|
|
141
|
+
level: 2
|
|
142
|
+
})).toBeTruthy();
|
|
143
|
+
});
|
|
144
|
+
test("Heading renders with level 4 and as h3", function () {
|
|
145
|
+
var _render11 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Heading["default"], {
|
|
146
|
+
text: "my-heading-test",
|
|
147
|
+
level: 4,
|
|
148
|
+
as: "h3"
|
|
149
|
+
})),
|
|
150
|
+
getByText = _render11.getByText,
|
|
151
|
+
getByRole = _render11.getByRole;
|
|
152
|
+
|
|
153
|
+
expect(getByText("my-heading-test")).toBeTruthy();
|
|
154
|
+
expect(getByRole("heading", {
|
|
155
|
+
level: 3
|
|
156
|
+
})).toBeTruthy();
|
|
157
|
+
});
|
|
158
|
+
test("Heading renders with level 5 as h4", function () {
|
|
159
|
+
var _render12 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Heading["default"], {
|
|
160
|
+
text: "my-heading-test",
|
|
161
|
+
level: 5,
|
|
162
|
+
as: "h4"
|
|
163
|
+
})),
|
|
164
|
+
getByText = _render12.getByText,
|
|
165
|
+
getByRole = _render12.getByRole;
|
|
166
|
+
|
|
167
|
+
expect(getByText("my-heading-test")).toBeTruthy();
|
|
168
|
+
expect(getByRole("heading", {
|
|
169
|
+
level: 4
|
|
170
|
+
})).toBeTruthy();
|
|
171
|
+
});
|
|
172
|
+
test("Heading renders with level 5 and invalid as", function () {
|
|
173
|
+
var _render13 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Heading["default"], {
|
|
174
|
+
text: "my-heading-test",
|
|
175
|
+
level: 5,
|
|
176
|
+
as: "h4afdssf"
|
|
177
|
+
})),
|
|
178
|
+
getByText = _render13.getByText,
|
|
179
|
+
getByRole = _render13.getByRole;
|
|
180
|
+
|
|
181
|
+
expect(getByText("my-heading-test")).toBeTruthy();
|
|
182
|
+
expect(getByRole("heading", {
|
|
183
|
+
level: 5
|
|
184
|
+
})).toBeTruthy();
|
|
185
|
+
});
|
|
186
|
+
});
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
|
|
2
|
+
declare type Margin = {
|
|
3
|
+
top?: Space;
|
|
4
|
+
bottom?: Space;
|
|
5
|
+
left?: Space;
|
|
6
|
+
right?: Space;
|
|
7
|
+
};
|
|
8
|
+
declare type Props = {
|
|
9
|
+
/**
|
|
10
|
+
* Defines the heading level from 1 to 5. The styles of the heading are applied according to the level.
|
|
11
|
+
* The html tag of the heading will be the one specified in the 'as' prop.
|
|
12
|
+
* If 'as' is not specified, the html tag of the heading is the one specified in the 'level' prop.
|
|
13
|
+
*/
|
|
14
|
+
level?: 1 | 2 | 3 | 4 | 5;
|
|
15
|
+
/**
|
|
16
|
+
* Heading text.
|
|
17
|
+
*/
|
|
18
|
+
text: string;
|
|
19
|
+
/**
|
|
20
|
+
* Specifies the html tag of the heading.
|
|
21
|
+
*/
|
|
22
|
+
as?: "h1" | "h2" | "h3" | "h4" | "h5";
|
|
23
|
+
/**
|
|
24
|
+
* Modifies the default weight of the heading.
|
|
25
|
+
*/
|
|
26
|
+
weight?: "light" | "normal" | "bold";
|
|
27
|
+
/**
|
|
28
|
+
* Size of the margin to be applied to the component ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
|
|
29
|
+
* You can pass an object with 'top', 'bottom', 'left' and 'right' properties in order to specify different margin sizes.
|
|
30
|
+
*/
|
|
31
|
+
margin?: Space | Margin;
|
|
32
|
+
};
|
|
33
|
+
export default Props;
|
package/heading/types.js
ADDED
package/inset/Inset.d.ts
ADDED