trepur_components 2.3.8 → 2.3.9
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/package.json +3 -2
- package/src/components/Accordion/Accordion.stories.tsx +23 -100
- package/src/components/Accordion/const.tsx +34 -0
- package/src/components/Accordion/index.tsx +18 -17
- package/src/components/AlertBar/AlertBar.stories.tsx +79 -85
- package/src/components/AlertBar/index.tsx +69 -100
- package/src/components/Avatar/Avatar.stories.tsx +3 -8
- package/src/components/Avatar/index.tsx +31 -31
- package/src/components/Breadcrumbs/Breadcrumbs.stories.tsx +17 -34
- package/src/components/Breadcrumbs/index.tsx +78 -29
- package/src/components/Button/Button.stories.tsx +11 -137
- package/src/components/Button/index.tsx +47 -92
- package/src/components/Calendar/Calendar.stories.tsx +12 -73
- package/src/components/Calendar/index.tsx +54 -34
- package/src/components/Card/Card.stories.tsx +3 -64
- package/src/components/Card/index.tsx +23 -80
- package/src/components/Carousel/Carousel.stories.tsx +32 -439
- package/src/components/Carousel/index.tsx +205 -286
- package/src/components/Carousel/utils.ts +53 -0
- package/src/components/CarouselThumbnail/CarouselThumbnail.stories.tsx +16 -337
- package/src/components/CarouselThumbnail/const.ts +17 -0
- package/src/components/CarouselThumbnail/index.tsx +92 -216
- package/src/components/CarouselThumbnail/utils.ts +87 -0
- package/src/components/Checkbox/Checkbox.stories.tsx +12 -19
- package/src/components/Checkbox/index.tsx +37 -34
- package/src/components/Collapsible/Collapsible.stories.tsx +50 -50
- package/src/components/Collapsible/index.tsx +151 -110
- package/src/components/Counter/Counter.stories.tsx +10 -9
- package/src/components/Counter/index.tsx +81 -25
- package/src/components/DetailUpdater/DetailUpdater.stories.tsx +11 -69
- package/src/components/DetailUpdater/index.tsx +7 -8
- package/src/components/Dialog/Dialog.stories.tsx +13 -78
- package/src/components/Dialog/index.tsx +5 -69
- package/src/components/Dropdown/Dropdown.stories.tsx +22 -0
- package/src/components/Dropdown/index.tsx +117 -0
- package/src/components/Dropdown/utils.ts +15 -0
- package/src/components/FileUploader/FilePreview.tsx +2 -2
- package/src/components/FileUploader/FileUploader.stories.tsx +10 -8
- package/src/components/FileUploader/index.tsx +113 -68
- package/src/components/Footer/Footer.stories.tsx +38 -50
- package/src/components/Footer/index.tsx +84 -36
- package/src/components/FooterNav/FooterNav.stories.tsx +14 -104
- package/src/components/FooterNav/index.tsx +71 -45
- package/src/components/Form/Form.stories.tsx +9 -9
- package/src/components/Form/index.tsx +10 -15
- package/src/components/Gallery/Gallery.stories.tsx +39 -0
- package/src/components/Gallery/index.tsx +31 -0
- package/src/components/Greeting/Greeting.stories.tsx +6 -31
- package/src/components/Greeting/index.tsx +44 -25
- package/src/components/HamburgerIcon/HamburgerIcon.stories.tsx +3 -21
- package/src/components/HamburgerIcon/index.tsx +40 -62
- package/src/components/Icon/Icon.stories.tsx +30 -11
- package/src/components/Icon/index.tsx +28 -20
- package/src/components/Image/Image.stories.tsx +5 -75
- package/src/components/Image/index.tsx +17 -119
- package/src/components/ImageCard/ImageCard.stories.tsx +29 -0
- package/src/components/ImageCard/index.tsx +75 -0
- package/src/components/Input/Input.stories.tsx +12 -71
- package/src/components/Input/index.tsx +107 -98
- package/src/components/MenuButton/MenuButton.stories.tsx +5 -5
- package/src/components/MenuButton/index.tsx +4 -4
- package/src/components/Modal/Modal.stories.tsx +7 -7
- package/src/components/Modal/index.tsx +4 -4
- package/src/components/Nav/Nav.stories.tsx +80 -0
- package/src/components/Nav/index.tsx +171 -0
- package/src/components/NavItem/NavItem.stories.tsx +7 -80
- package/src/components/NavItem/index.tsx +34 -38
- package/src/components/Pill/Pill.stories.tsx +42 -35
- package/src/components/Pill/index.tsx +64 -49
- package/src/components/Search/Search.stories.tsx +8 -8
- package/src/components/Search/index.tsx +3 -3
- package/src/components/Select/Select.stories.tsx +5 -5
- package/src/components/Select/index.tsx +8 -9
- package/src/components/Showcase/Showcase.stories.tsx +3 -3
- package/src/components/Showcase/index.tsx +12 -19
- package/src/components/SideNav/SideNav.stories.tsx +7 -7
- package/src/components/SideNav/index.tsx +2 -2
- package/src/components/SocialButton/SocialButton.stories.tsx +11 -11
- package/src/components/SocialButton/index.tsx +6 -7
- package/src/components/SplitCard/SplitCard.stories.tsx +34 -0
- package/src/components/SplitCard/index.tsx +132 -0
- package/src/components/Stars/Star.stories.tsx +18 -0
- package/src/components/Stars/index.tsx +38 -0
- package/src/components/Testimonial/Testimonial.stories.tsx +25 -97
- package/src/components/Testimonial/index.tsx +121 -53
- package/src/components/TextArea/TextArea.stories.tsx +11 -42
- package/src/components/TextArea/index.tsx +104 -95
- package/src/components/Timeline/Timeline.stories.tsx +32 -79
- package/src/components/Timeline/index.tsx +55 -246
- package/src/components/Tubestops/Tubestops.stories.tsx +10 -30
- package/src/components/Tubestops/index.tsx +125 -47
- package/src/components/Video/Video.stories.tsx +47 -12
- package/src/components/Video/assets/example.mp4 +0 -0
- package/src/components/Video/assets/example.ogv +0 -0
- package/src/components/Video/assets/example.webm +0 -0
- package/src/components/Video/index.tsx +83 -36
- package/src/components/index.ts +7 -53
- package/src/custom.d.ts +14 -0
- package/src/documentation/Colours.mdx +33 -33
- package/src/documentation/Introduction.mdx +9 -5
- package/src/documentation/assets/index.ts +3 -0
- package/src/documentation/assets/trepurComponentsLogo.svg +32 -0
- package/src/{components → documentation}/typography/Fonts/Fonts.stories.tsx +1 -1
- package/src/{components → documentation}/typography/Fonts/Fonts.tsx +20 -21
- package/src/styles/global.css +1 -1
- package/src/styles/themes/local.css +61 -9
- package/src/styles/themes/test.css +28 -0
- package/src/utils/screens.ts +1 -1
- package/tailwind/colors.ts +53 -385
- package/tailwind/preset.ts +4 -0
- package/tailwind.config.ts +12 -80
- package/archive/theme.ts +0 -39
- package/lib/_virtual/react.js +0 -4
- package/lib/components/Accordion/Accordion.stories.d.ts +0 -95
- package/lib/components/Accordion/index.d.ts +0 -6
- package/lib/components/Accordion/index.js +0 -6
- package/lib/components/AlertBar/AlertBar.stories.d.ts +0 -163
- package/lib/components/AlertBar/index.d.ts +0 -12
- package/lib/components/AlertBar/index.js +0 -49
- package/lib/components/Avatar/Avatar.stories.d.ts +0 -44
- package/lib/components/Avatar/index.d.ts +0 -3
- package/lib/components/Breadcrumbs/Breadcrumbs.stories.d.ts +0 -62
- package/lib/components/Breadcrumbs/index.d.ts +0 -9
- package/lib/components/Breadcrumbs/index.js +0 -12
- package/lib/components/BreadcrumbsBordered/BreadcrumbsBordered.stories.d.ts +0 -67
- package/lib/components/BreadcrumbsBordered/index.d.ts +0 -6
- package/lib/components/BreadcrumbsBordered/index.js +0 -28
- package/lib/components/BreadcrumbsItem/BreadcrumbsItem.stories.d.ts +0 -74
- package/lib/components/BreadcrumbsItem/index.d.ts +0 -10
- package/lib/components/BreadcrumbsItem/index.js +0 -117
- package/lib/components/Button/Button.stories.d.ts +0 -192
- package/lib/components/Button/index.d.ts +0 -19
- package/lib/components/Button/index.js +0 -66
- package/lib/components/Calendar/Calendar.stories.d.ts +0 -136
- package/lib/components/Calendar/index.d.ts +0 -15
- package/lib/components/Calendar/index.js +0 -46
- package/lib/components/Calendar/style.css.js +0 -1
- package/lib/components/Card/Card.stories.d.ts +0 -108
- package/lib/components/Card/index.d.ts +0 -17
- package/lib/components/Card/index.js +0 -51
- package/lib/components/CardWithTopImage/CardWithTopImage.stories.d.ts +0 -83
- package/lib/components/CardWithTopImage/index.d.ts +0 -9
- package/lib/components/CardWithTopImage/index.js +0 -28
- package/lib/components/Carousel/Carousel.stories.d.ts +0 -562
- package/lib/components/Carousel/index.d.ts +0 -77
- package/lib/components/Carousel/index.js +0 -248
- package/lib/components/CarouselThumbnail/CarouselThumbnail.stories.d.ts +0 -546
- package/lib/components/CarouselThumbnail/index.d.ts +0 -50
- package/lib/components/CarouselThumbnail/index.js +0 -205
- package/lib/components/Checkbox/Checkbox.stories.d.ts +0 -52
- package/lib/components/Checkbox/index.d.ts +0 -7
- package/lib/components/Checkbox/index.js +0 -31
- package/lib/components/Collapsible/Collapsible.stories.d.ts +0 -82
- package/lib/components/Collapsible/index.d.ts +0 -12
- package/lib/components/Collapsible/index.js +0 -88
- package/lib/components/Column/Column.stories.d.ts +0 -116
- package/lib/components/Column/index.d.ts +0 -10
- package/lib/components/Column/index.js +0 -8
- package/lib/components/ComponentWrapper/ComponentWrapper.stories.d.ts +0 -77
- package/lib/components/ComponentWrapper/index.d.ts +0 -14
- package/lib/components/ComponentWrapper/index.js +0 -27
- package/lib/components/Container/Container.stories.d.ts +0 -75
- package/lib/components/Container/index.d.ts +0 -7
- package/lib/components/Container/index.js +0 -12
- package/lib/components/Counter/Counter.stories.d.ts +0 -45
- package/lib/components/Counter/index.d.ts +0 -6
- package/lib/components/Counter/index.js +0 -31
- package/lib/components/DetailUpdater/DetailUpdater.stories.d.ts +0 -104
- package/lib/components/DetailUpdater/index.d.ts +0 -18
- package/lib/components/DetailUpdater/index.js +0 -63
- package/lib/components/Dialog/Dialog.stories.d.ts +0 -145
- package/lib/components/Dialog/index.d.ts +0 -12
- package/lib/components/Dialog/index.js +0 -78
- package/lib/components/DropdownMenu/DropdownMenu.stories.d.ts +0 -76
- package/lib/components/DropdownMenu/index.d.ts +0 -14
- package/lib/components/DropdownMenu/index.js +0 -27
- package/lib/components/DynamicTextSection/DynamicTextSection.stories.d.ts +0 -100
- package/lib/components/DynamicTextSection/index.d.ts +0 -11
- package/lib/components/DynamicTextSection/index.js +0 -18
- package/lib/components/FileUploader/FilePreview.d.ts +0 -8
- package/lib/components/FileUploader/FileUploader.stories.d.ts +0 -50
- package/lib/components/FileUploader/index.d.ts +0 -9
- package/lib/components/FilterItem/FilterItem.stories.d.ts +0 -57
- package/lib/components/FilterItem/index.d.ts +0 -8
- package/lib/components/FilterItem/index.js +0 -60
- package/lib/components/Footer/Footer.stories.d.ts +0 -105
- package/lib/components/Footer/index.d.ts +0 -10
- package/lib/components/Footer/index.js +0 -36
- package/lib/components/FooterNav/FooterNav.stories.d.ts +0 -135
- package/lib/components/FooterNav/index.d.ts +0 -13
- package/lib/components/FooterNav/index.js +0 -28
- package/lib/components/FooterNavItem/FooterNavItem.stories.d.ts +0 -93
- package/lib/components/FooterNavItem/index.d.ts +0 -16
- package/lib/components/FooterNavItem/index.js +0 -27
- package/lib/components/Form/Form.stories.d.ts +0 -117
- package/lib/components/Form/index.d.ts +0 -13
- package/lib/components/Form/index.js +0 -28
- package/lib/components/FyreCard/FyreCard.stories.d.ts +0 -58
- package/lib/components/FyreCard/index.d.ts +0 -12
- package/lib/components/FyreCard/index.js +0 -27
- package/lib/components/Greeting/Greeting.stories.d.ts +0 -83
- package/lib/components/Greeting/index.d.ts +0 -8
- package/lib/components/Greeting/index.js +0 -13
- package/lib/components/HamburgerIcon/HamburgerIcon.stories.d.ts +0 -64
- package/lib/components/HamburgerIcon/index.d.ts +0 -7
- package/lib/components/HamburgerIcon/index.js +0 -93
- package/lib/components/HorizontalLine/HorizontalLine.stories.d.ts +0 -96
- package/lib/components/HorizontalLine/index.d.ts +0 -11
- package/lib/components/HorizontalLine/index.js +0 -24
- package/lib/components/Icon/Icon.stories.d.ts +0 -47
- package/lib/components/Icon/index.d.ts +0 -10
- package/lib/components/Icon/index.js +0 -15
- package/lib/components/IconCard/IconCard.stories.d.ts +0 -51
- package/lib/components/IconCard/index.d.ts +0 -13
- package/lib/components/IconCard/index.js +0 -27
- package/lib/components/Image/Image.stories.d.ts +0 -158
- package/lib/components/Image/index.d.ts +0 -15
- package/lib/components/Image/index.js +0 -99
- package/lib/components/ImageInfo/ImageInfo.stories.d.ts +0 -69
- package/lib/components/ImageInfo/index.d.ts +0 -14
- package/lib/components/ImageLink/ImageLink.stories.d.ts +0 -63
- package/lib/components/ImageLink/index.d.ts +0 -14
- package/lib/components/ImageLink/index.js +0 -39
- package/lib/components/ImageLinkList/ImageLinkList.stories.d.ts +0 -48
- package/lib/components/ImageLinkList/index.d.ts +0 -8
- package/lib/components/ImageLinkList/index.js +0 -18
- package/lib/components/InformationIcon/InformationIcon.stories.d.ts +0 -54
- package/lib/components/InformationIcon/index.d.ts +0 -12
- package/lib/components/InformationIcon/index.js +0 -65
- package/lib/components/InformationIconBlock/InformationIconBlock.stories.d.ts +0 -55
- package/lib/components/InformationIconBlock/index.d.ts +0 -12
- package/lib/components/Input/Input.stories.d.ts +0 -114
- package/lib/components/Input/index.d.ts +0 -29
- package/lib/components/Input/index.js +0 -89
- package/lib/components/Jumbotron/Jumbotron.stories.d.ts +0 -48
- package/lib/components/Jumbotron/index.d.ts +0 -8
- package/lib/components/Jumbotron/index.js +0 -9
- package/lib/components/MenuButton/MenuButton.stories.d.ts +0 -76
- package/lib/components/MenuButton/index.d.ts +0 -14
- package/lib/components/MenuButton/index.js +0 -56
- package/lib/components/Modal/Modal.stories.d.ts +0 -67
- package/lib/components/Modal/index.d.ts +0 -10
- package/lib/components/Modal/index.js +0 -45
- package/lib/components/NavItem/NavItem.stories.d.ts +0 -154
- package/lib/components/NavItem/index.d.ts +0 -16
- package/lib/components/NavItem/index.js +0 -25
- package/lib/components/NavOld/NavOld.stories.d.ts +0 -290
- package/lib/components/NavOld/StickyNav.d.ts +0 -22
- package/lib/components/NavOld/StickyNav.js +0 -135
- package/lib/components/NavOld/index.d.ts +0 -26
- package/lib/components/NavOld/index.js +0 -187
- package/lib/components/NavTwo/Dropdown.d.ts +0 -7
- package/lib/components/NavTwo/Dropdown.js +0 -21
- package/lib/components/NavTwo/Nav.stories.d.ts +0 -62
- package/lib/components/NavTwo/Sidebar.d.ts +0 -7
- package/lib/components/NavTwo/Sidebar.js +0 -21
- package/lib/components/NavTwo/StickyNav.d.ts +0 -7
- package/lib/components/NavTwo/StickyNav.js +0 -20
- package/lib/components/NavTwo/index.d.ts +0 -13
- package/lib/components/NavTwo/index.js +0 -28
- package/lib/components/NewsCard/NewsCard.stories.d.ts +0 -102
- package/lib/components/NewsCard/index.d.ts +0 -13
- package/lib/components/NewsCard/index.js +0 -26
- package/lib/components/Pill/Pill.stories.d.ts +0 -84
- package/lib/components/Pill/index.d.ts +0 -8
- package/lib/components/Pill/index.js +0 -31
- package/lib/components/ProductCard/ProductCard.stories.d.ts +0 -86
- package/lib/components/ProductCard/index.d.ts +0 -18
- package/lib/components/ProductCard/index.js +0 -69
- package/lib/components/ProductCardV2/ProductCardV2.stories.d.ts +0 -75
- package/lib/components/ProductCardV2/index.d.ts +0 -21
- package/lib/components/ProductCardV2/index.js +0 -67
- package/lib/components/Proficiencies/Proficiencies.stories.d.ts +0 -51
- package/lib/components/Proficiencies/index.d.ts +0 -12
- package/lib/components/Profile/Profile.stories.d.ts +0 -80
- package/lib/components/Profile/index.d.ts +0 -17
- package/lib/components/Profile/index.js +0 -78
- package/lib/components/Row/Row.stories.d.ts +0 -62
- package/lib/components/Row/index.d.ts +0 -6
- package/lib/components/Row/index.js +0 -9
- package/lib/components/Search/Search.stories.d.ts +0 -86
- package/lib/components/Search/index.d.ts +0 -12
- package/lib/components/Search/index.js +0 -42
- package/lib/components/Select/Select.stories.d.ts +0 -56
- package/lib/components/Select/index.d.ts +0 -11
- package/lib/components/Select/index.js +0 -68
- package/lib/components/Showcase/Showcase.stories.d.ts +0 -55
- package/lib/components/Showcase/index.d.ts +0 -15
- package/lib/components/SideNav/SideNav.stories.d.ts +0 -80
- package/lib/components/SideNav/index.d.ts +0 -12
- package/lib/components/SocialBlock/SocialBlock.stories.d.ts +0 -101
- package/lib/components/SocialBlock/index.d.ts +0 -14
- package/lib/components/SocialBlock/index.js +0 -37
- package/lib/components/SocialButton/SocialButton.stories.d.ts +0 -130
- package/lib/components/SocialButton/index.d.ts +0 -12
- package/lib/components/SocialButton/index.js +0 -37
- package/lib/components/StarRating/StarRating.stories.d.ts +0 -49
- package/lib/components/StarRating/index.d.ts +0 -9
- package/lib/components/StarRating/index.js +0 -47
- package/lib/components/Testimonial/Testimonial.stories.d.ts +0 -172
- package/lib/components/Testimonial/index.d.ts +0 -16
- package/lib/components/Testimonial/index.js +0 -42
- package/lib/components/TextAndTitle/TextAndTitle.stories.d.ts +0 -97
- package/lib/components/TextAndTitle/index.d.ts +0 -25
- package/lib/components/TextAndTitle/index.js +0 -70
- package/lib/components/TextArea/TextArea.stories.d.ts +0 -85
- package/lib/components/TextArea/index.d.ts +0 -26
- package/lib/components/TextArea/index.js +0 -86
- package/lib/components/Timeline/Timeline.stories.d.ts +0 -81
- package/lib/components/Timeline/index.d.ts +0 -17
- package/lib/components/Timeline/index.js +0 -172
- package/lib/components/TimelineV2/TimelineV2.stories.d.ts +0 -87
- package/lib/components/TimelineV2/index.d.ts +0 -20
- package/lib/components/Tubestops/Tubestops.stories.d.ts +0 -54
- package/lib/components/Tubestops/index.d.ts +0 -8
- package/lib/components/Tubestops/index.js +0 -44
- package/lib/components/UserIcon/UserIcon.stories.d.ts +0 -81
- package/lib/components/UserIcon/index.d.ts +0 -10
- package/lib/components/UserIcon/index.js +0 -34
- package/lib/components/Video/Video.stories.d.ts +0 -49
- package/lib/components/Video/index.d.ts +0 -15
- package/lib/components/Video/index.js +0 -34
- package/lib/components/index.d.ts +0 -60
- package/lib/components/typography/Fonts/Fonts.d.ts +0 -2
- package/lib/components/typography/Fonts/Fonts.stories.d.ts +0 -10
- package/lib/index.d.ts +0 -1
- package/lib/index.js +0 -118
- package/lib/node_modules/keen-slider/keen-slider.min.css.js +0 -1
- package/lib/node_modules/keen-slider/react.js +0 -591
- package/lib/style.css +0 -1
- package/lib/styles/global.css +0 -75
- package/lib/styles/themes/local.css +0 -40
- package/lib/styles/themes/palette.css +0 -131
- package/lib/tailwind/boxShadow.ts +0 -9
- package/lib/tailwind/colors.ts +0 -410
- package/lib/tailwind/container.ts +0 -11
- package/lib/tailwind/preset.ts +0 -88
- package/lib/tailwind/spacing.ts +0 -14
- package/lib/utils/controls.d.ts +0 -36
- package/lib/utils/matchMedia.d.ts +0 -2
- package/lib/utils/matchMedia.js +0 -9
- package/lib/utils/screens.d.ts +0 -7
- package/src/components/BreadcrumbsBordered/BreadcrumbsBordered.stories.tsx +0 -52
- package/src/components/BreadcrumbsBordered/index.tsx +0 -41
- package/src/components/BreadcrumbsItem/BreadcrumbsItem.stories.tsx +0 -40
- package/src/components/BreadcrumbsItem/index.tsx +0 -147
- package/src/components/CardWithTopImage/CardWithTopImage.stories.tsx +0 -50
- package/src/components/CardWithTopImage/index.tsx +0 -35
- package/src/components/Column/Column.stories.tsx +0 -89
- package/src/components/Column/index.tsx +0 -18
- package/src/components/ComponentWrapper/ComponentWrapper.stories.tsx +0 -40
- package/src/components/ComponentWrapper/index.tsx +0 -48
- package/src/components/Container/Container.stories.tsx +0 -40
- package/src/components/Container/index.tsx +0 -21
- package/src/components/DropdownMenu/DropdownMenu.stories.tsx +0 -59
- package/src/components/DropdownMenu/index.tsx +0 -45
- package/src/components/DynamicTextSection/DynamicTextSection.stories.tsx +0 -76
- package/src/components/DynamicTextSection/index.tsx +0 -32
- package/src/components/FilterItem/FilterItem.stories.tsx +0 -33
- package/src/components/FilterItem/index.tsx +0 -97
- package/src/components/FooterNavItem/FooterNavItem.stories.tsx +0 -53
- package/src/components/FooterNavItem/index.tsx +0 -58
- package/src/components/Form/style.module.css +0 -0
- package/src/components/FyreCard/FyreCard.stories.tsx +0 -31
- package/src/components/FyreCard/index.tsx +0 -44
- package/src/components/HorizontalLine/HorizontalLine.stories.tsx +0 -54
- package/src/components/HorizontalLine/index.tsx +0 -32
- package/src/components/IconCard/IconCard.stories.tsx +0 -26
- package/src/components/IconCard/index.tsx +0 -54
- package/src/components/ImageInfo/ImageInfo.stories.tsx +0 -38
- package/src/components/ImageInfo/index.tsx +0 -84
- package/src/components/ImageLink/ImageLink.stories.tsx +0 -36
- package/src/components/ImageLink/index.tsx +0 -58
- package/src/components/ImageLinkList/ImageLinkList.stories.tsx +0 -34
- package/src/components/ImageLinkList/index.tsx +0 -28
- package/src/components/InformationIcon/InformationIcon.stories.tsx +0 -29
- package/src/components/InformationIcon/index.tsx +0 -105
- package/src/components/InformationIconBlock/InformationIconBlock.stories.tsx +0 -38
- package/src/components/InformationIconBlock/index.tsx +0 -56
- package/src/components/Jumbotron/Jumbotron.stories.tsx +0 -21
- package/src/components/Jumbotron/index.tsx +0 -19
- package/src/components/NavOld/NavOld.stories.tsx +0 -193
- package/src/components/NavOld/StickyNav.tsx +0 -187
- package/src/components/NavOld/index.tsx +0 -265
- package/src/components/NavTwo/Dropdown.tsx +0 -30
- package/src/components/NavTwo/Nav.stories.tsx +0 -32
- package/src/components/NavTwo/Sidebar.tsx +0 -30
- package/src/components/NavTwo/StickyNav.tsx +0 -29
- package/src/components/NavTwo/index.tsx +0 -37
- package/src/components/NewsCard/NewsCard.stories.tsx +0 -72
- package/src/components/NewsCard/index.tsx +0 -44
- package/src/components/ProductCard/ProductCard.stories.tsx +0 -61
- package/src/components/ProductCard/index.tsx +0 -110
- package/src/components/ProductCardV2/ProductCardV2.stories.tsx +0 -50
- package/src/components/ProductCardV2/index.tsx +0 -98
- package/src/components/Proficiencies/Proficiencies.stories.tsx +0 -50
- package/src/components/Proficiencies/index.tsx +0 -51
- package/src/components/Profile/Profile.stories.tsx +0 -49
- package/src/components/Profile/index.tsx +0 -103
- package/src/components/Row/Row.stories.tsx +0 -53
- package/src/components/Row/index.tsx +0 -17
- package/src/components/SocialBlock/SocialBlock.stories.tsx +0 -58
- package/src/components/SocialBlock/index.tsx +0 -59
- package/src/components/StarRating/StarRating.stories.tsx +0 -23
- package/src/components/StarRating/index.tsx +0 -65
- package/src/components/TextAndTitle/TextAndTitle.stories.tsx +0 -71
- package/src/components/TextAndTitle/index.tsx +0 -119
- package/src/components/TimelineV2/TimelineV2.stories.tsx +0 -95
- package/src/components/TimelineV2/index.tsx +0 -70
- package/src/components/UserIcon/UserIcon.stories.tsx +0 -52
- package/src/components/UserIcon/index.tsx +0 -43
- package/src/styles/themes/palette.css +0 -131
- package/svg.d.ts +0 -4
- /package/src/{components/fonts → fonts}/Sora/OFL.txt +0 -0
- /package/src/{components/fonts → fonts}/Sora/README.txt +0 -0
- /package/src/{components/fonts → fonts}/Sora/Sora-VariableFont_wght.ttf +0 -0
- /package/src/{components/fonts → fonts}/Sora/static/Sora-Bold.ttf +0 -0
- /package/src/{components/fonts → fonts}/Sora/static/Sora-ExtraBold.ttf +0 -0
- /package/src/{components/fonts → fonts}/Sora/static/Sora-ExtraLight.ttf +0 -0
- /package/src/{components/fonts → fonts}/Sora/static/Sora-Light.ttf +0 -0
- /package/src/{components/fonts → fonts}/Sora/static/Sora-Medium.ttf +0 -0
- /package/src/{components/fonts → fonts}/Sora/static/Sora-Regular.ttf +0 -0
- /package/src/{components/fonts → fonts}/Sora/static/Sora-SemiBold.ttf +0 -0
- /package/src/{components/fonts → fonts}/Sora/static/Sora-Thin.ttf +0 -0
|
@@ -2,7 +2,6 @@ import { useState } from 'react';
|
|
|
2
2
|
|
|
3
3
|
import { Icon } from '@components/Icon';
|
|
4
4
|
import { faChevronDown } from '@fortawesome/fontawesome-free-solid';
|
|
5
|
-
import { type IconProp } from '@fortawesome/fontawesome-svg-core';
|
|
6
5
|
import classNames from 'classnames';
|
|
7
6
|
|
|
8
7
|
export interface SelectProps {
|
|
@@ -29,29 +28,29 @@ export const Select = ({
|
|
|
29
28
|
const [showDropDown, setShowDropDown] = useState(false);
|
|
30
29
|
const [activeValue, setActiveValue] = useState(
|
|
31
30
|
value !== undefined ? value : options?.[0],
|
|
32
|
-
)
|
|
31
|
+
);
|
|
33
32
|
|
|
34
33
|
const handleOptionClick = (e: any): void => {
|
|
35
34
|
onClick(e.target.textContent);
|
|
36
35
|
setActiveValue(e.target.textContent);
|
|
37
36
|
setShowDropDown(false);
|
|
38
|
-
}
|
|
37
|
+
};
|
|
39
38
|
|
|
40
39
|
const fullWidthClasses = classNames({
|
|
41
40
|
'w-full': fullWidth,
|
|
42
41
|
'sm:w-72': !fullWidth,
|
|
43
|
-
})
|
|
42
|
+
});
|
|
44
43
|
|
|
45
44
|
const headerClassList = classNames(
|
|
46
45
|
fullWidthClasses,
|
|
47
46
|
className,
|
|
48
47
|
'w-full rounded-xl bg-white shadow drop-shadow flex cursor-pointer flex-row justify-between px-4',
|
|
49
|
-
)
|
|
48
|
+
);
|
|
50
49
|
|
|
51
50
|
const dropdownClassList = classNames(
|
|
52
51
|
fullWidthClasses,
|
|
53
52
|
'absolute w-full bg-white mt-2 rounded-2xl py-4 shadow-xl border border-lightest-grey h-64 overflow-scroll',
|
|
54
|
-
)
|
|
53
|
+
);
|
|
55
54
|
const dropdownItemClassList =
|
|
56
55
|
'bg-white text-ink hover:bg-lightest-grey hover:cursor-pointer px-4 py-2';
|
|
57
56
|
|
|
@@ -69,11 +68,11 @@ export const Select = ({
|
|
|
69
68
|
<p>{label}</p>
|
|
70
69
|
{required && <p className="font-semiBold text-error"> *</p>}
|
|
71
70
|
</div>
|
|
72
|
-
<p className="flex justify-between rounded-xl
|
|
71
|
+
<p className="border-ink text-ink flex justify-between rounded-xl bg-white pb-1 pt-6">
|
|
73
72
|
{activeValue}
|
|
74
73
|
</p>
|
|
75
74
|
</div>
|
|
76
|
-
<Icon colour="ink" icon={faChevronDown
|
|
75
|
+
<Icon colour="ink" icon={faChevronDown} />
|
|
77
76
|
</div>
|
|
78
77
|
{showDropDown && (
|
|
79
78
|
<div className={classNames('relative z-20', fullWidthClasses)}>
|
|
@@ -95,4 +94,4 @@ export const Select = ({
|
|
|
95
94
|
)}
|
|
96
95
|
</>
|
|
97
96
|
);
|
|
98
|
-
}
|
|
97
|
+
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { faChevronDown } from '@fortawesome/fontawesome-free-solid';
|
|
2
2
|
import { action } from '@storybook/addon-actions';
|
|
3
|
-
import { Meta,
|
|
3
|
+
import { Meta, StoryObj } from '@storybook/react';
|
|
4
4
|
import { idAndClassName } from '@utils/controls';
|
|
5
5
|
|
|
6
6
|
import { Showcase } from '.';
|
|
@@ -20,8 +20,8 @@ const meta = {
|
|
|
20
20
|
iconProps: {
|
|
21
21
|
icon: faChevronDown,
|
|
22
22
|
onClick: action('Icon click'),
|
|
23
|
-
}
|
|
24
|
-
}
|
|
23
|
+
},
|
|
24
|
+
},
|
|
25
25
|
};
|
|
26
26
|
|
|
27
27
|
export default meta;
|
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
import { Avatar } from '@components/Avatar';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import { Icon, type IconProps } from '@components/Icon';
|
|
5
|
-
import { type Colours } from '@utils/controls';
|
|
2
|
+
import { Icon, IconProps } from '@components/Icon';
|
|
3
|
+
import { Colours } from '@utils/controls';
|
|
6
4
|
import classNames from 'classnames';
|
|
7
5
|
|
|
8
6
|
export interface Props {
|
|
@@ -36,34 +34,29 @@ export const Showcase = ({
|
|
|
36
34
|
'min-h-[calc(100vh-176px)]': size === 'large',
|
|
37
35
|
},
|
|
38
36
|
'flex flex-wrap text-center md:flex-nowrap md:text-left',
|
|
39
|
-
)
|
|
37
|
+
);
|
|
40
38
|
|
|
41
39
|
return (
|
|
42
|
-
<
|
|
43
|
-
<
|
|
40
|
+
<div>
|
|
41
|
+
<div className={containerSize}>
|
|
44
42
|
<div className="m-auto w-full md:w-2/3 md:pl-16 md:pr-4 lg:pl-32 lg:pr-8 xl:pl-64">
|
|
45
|
-
<h2 className="text-lg font-bold leading-tight text-primary
|
|
43
|
+
<h2 className="md:text-xxl text-lg font-bold leading-tight text-primary">
|
|
46
44
|
{title}
|
|
47
45
|
</h2>
|
|
48
|
-
<h2 className="text-lg font-bold leading-tight text-black
|
|
46
|
+
<h2 className="md:text-xxl text-lg font-bold leading-tight text-black">
|
|
49
47
|
{subTitle}
|
|
50
48
|
</h2>
|
|
51
|
-
<p className="pt-4 text-sm text-black
|
|
49
|
+
<p className="md:text-md pt-4 text-sm text-black">{description}</p>
|
|
52
50
|
</div>
|
|
53
51
|
<div className="m-auto flex w-full justify-center md:w-1/3 md:pb-20">
|
|
54
52
|
<Avatar />
|
|
55
53
|
</div>
|
|
56
|
-
</
|
|
54
|
+
</div>
|
|
57
55
|
{iconProps?.icon && (
|
|
58
56
|
<div className="flex justify-center">
|
|
59
|
-
<Icon
|
|
60
|
-
size="2x"
|
|
61
|
-
{...iconProps}
|
|
62
|
-
icon={iconProps.icon}
|
|
63
|
-
onClick={iconProps.onClick}
|
|
64
|
-
/>
|
|
57
|
+
<Icon {...iconProps} size="2x" icon={iconProps.icon} />
|
|
65
58
|
</div>
|
|
66
59
|
)}
|
|
67
|
-
</
|
|
60
|
+
</div>
|
|
68
61
|
);
|
|
69
|
-
}
|
|
62
|
+
};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Meta,
|
|
1
|
+
import { Meta, StoryObj } from '@storybook/react';
|
|
2
2
|
import { idAndClassName } from '@utils/controls';
|
|
3
3
|
|
|
4
4
|
import { SideNav } from '.';
|
|
@@ -13,8 +13,8 @@ const meta = {
|
|
|
13
13
|
{
|
|
14
14
|
name: 'grey',
|
|
15
15
|
value: '#f3f3f3',
|
|
16
|
-
}
|
|
17
|
-
]
|
|
16
|
+
},
|
|
17
|
+
],
|
|
18
18
|
},
|
|
19
19
|
},
|
|
20
20
|
argTypes: {
|
|
@@ -24,7 +24,7 @@ const meta = {
|
|
|
24
24
|
description: 'An array of nav links to display in the component',
|
|
25
25
|
table: {
|
|
26
26
|
type: { summary: 'array' },
|
|
27
|
-
}
|
|
27
|
+
},
|
|
28
28
|
},
|
|
29
29
|
bgColour: {
|
|
30
30
|
type: { name: 'string', required: false },
|
|
@@ -35,13 +35,13 @@ const meta = {
|
|
|
35
35
|
},
|
|
36
36
|
defaultValue: 'primary',
|
|
37
37
|
control: 'select',
|
|
38
|
-
}
|
|
38
|
+
},
|
|
39
39
|
},
|
|
40
40
|
args: {
|
|
41
41
|
children: <p>dfghj</p>,
|
|
42
42
|
showNav: true,
|
|
43
|
-
}
|
|
44
|
-
}
|
|
43
|
+
},
|
|
44
|
+
};
|
|
45
45
|
|
|
46
46
|
export default meta;
|
|
47
47
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { action } from '@storybook/addon-actions';
|
|
2
|
-
import { Meta,
|
|
2
|
+
import { Meta, StoryObj } from '@storybook/react';
|
|
3
3
|
import { idAndClassName } from '@utils/controls';
|
|
4
4
|
|
|
5
5
|
import { SocialButton } from '.';
|
|
@@ -12,8 +12,8 @@ const meta = {
|
|
|
12
12
|
description: {
|
|
13
13
|
component:
|
|
14
14
|
'A SocialButton which can either be internal, external or social as well as a standard design or a slide design.',
|
|
15
|
-
}
|
|
16
|
-
}
|
|
15
|
+
},
|
|
16
|
+
},
|
|
17
17
|
},
|
|
18
18
|
argTypes: {
|
|
19
19
|
...idAndClassName,
|
|
@@ -26,7 +26,7 @@ const meta = {
|
|
|
26
26
|
summary: 'function',
|
|
27
27
|
},
|
|
28
28
|
defaultValue: { summary: 'undefined' },
|
|
29
|
-
}
|
|
29
|
+
},
|
|
30
30
|
},
|
|
31
31
|
type: {
|
|
32
32
|
type: {
|
|
@@ -41,7 +41,7 @@ const meta = {
|
|
|
41
41
|
},
|
|
42
42
|
defaultValue: {
|
|
43
43
|
summary: 'default',
|
|
44
|
-
}
|
|
44
|
+
},
|
|
45
45
|
},
|
|
46
46
|
defaultValue: 'default',
|
|
47
47
|
control: { type: 'radio' },
|
|
@@ -55,8 +55,8 @@ const meta = {
|
|
|
55
55
|
},
|
|
56
56
|
defaultValue: {
|
|
57
57
|
summary: 'undefined',
|
|
58
|
-
}
|
|
59
|
-
}
|
|
58
|
+
},
|
|
59
|
+
},
|
|
60
60
|
},
|
|
61
61
|
openInNewTab: {
|
|
62
62
|
type: { name: 'boolean', required: false },
|
|
@@ -71,15 +71,15 @@ const meta = {
|
|
|
71
71
|
summary: 'Array',
|
|
72
72
|
},
|
|
73
73
|
defaultValue: { summary: 'undefined' },
|
|
74
|
-
}
|
|
75
|
-
}
|
|
74
|
+
},
|
|
75
|
+
},
|
|
76
76
|
},
|
|
77
77
|
args: {
|
|
78
78
|
type: 'facebook',
|
|
79
79
|
href: '/',
|
|
80
80
|
onClick: action('SocialButton clicked'),
|
|
81
|
-
}
|
|
82
|
-
}
|
|
81
|
+
},
|
|
82
|
+
};
|
|
83
83
|
|
|
84
84
|
export default meta;
|
|
85
85
|
|
|
@@ -2,7 +2,6 @@ import React from 'react';
|
|
|
2
2
|
|
|
3
3
|
import { Icon } from '@components/Icon';
|
|
4
4
|
import { faStar } from '@fortawesome/fontawesome-free-solid';
|
|
5
|
-
import { type IconProp } from '@fortawesome/fontawesome-svg-core';
|
|
6
5
|
import { type Colours, type SocialTypes } from '@utils/controls';
|
|
7
6
|
import classNames from 'classnames';
|
|
8
7
|
|
|
@@ -27,7 +26,7 @@ export const SocialButton = ({
|
|
|
27
26
|
const typeString: string = type;
|
|
28
27
|
const colour: string = `interactive-${typeString}`;
|
|
29
28
|
return colour as Colours;
|
|
30
|
-
}
|
|
29
|
+
};
|
|
31
30
|
|
|
32
31
|
const classList = classNames(
|
|
33
32
|
'flex h-16 w-16 transform rounded-full duration-500',
|
|
@@ -37,15 +36,15 @@ export const SocialButton = ({
|
|
|
37
36
|
'bg-github hover:bg-interactive-github': type === 'github',
|
|
38
37
|
'': type === 'instagram',
|
|
39
38
|
'bg-linkedin hover:bg-interactive-linkedin': type === 'linkedin',
|
|
40
|
-
}
|
|
41
|
-
)
|
|
39
|
+
},
|
|
40
|
+
);
|
|
42
41
|
|
|
43
42
|
const iconType = {
|
|
44
43
|
facebook: 'facebook-f',
|
|
45
44
|
instagram: 'instagram',
|
|
46
45
|
github: 'github',
|
|
47
46
|
linkedin: 'linkedin-in',
|
|
48
|
-
}
|
|
47
|
+
};
|
|
49
48
|
|
|
50
49
|
const typeString: string = type.toString();
|
|
51
50
|
return (
|
|
@@ -57,8 +56,8 @@ export const SocialButton = ({
|
|
|
57
56
|
{...(openInNewTab && { target: '_blank' })}
|
|
58
57
|
>
|
|
59
58
|
<div id={id} className={classList}>
|
|
60
|
-
<Icon icon={faStar
|
|
59
|
+
<Icon icon={faStar} size="2x" colour="white" />
|
|
61
60
|
</div>
|
|
62
61
|
</a>
|
|
63
62
|
);
|
|
64
|
-
}
|
|
63
|
+
};
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { Meta, StoryObj } from '@storybook/react';
|
|
2
|
+
|
|
3
|
+
import { SplitCard } from '.';
|
|
4
|
+
import { Image } from '..';
|
|
5
|
+
|
|
6
|
+
const meta = {
|
|
7
|
+
title: 'V2Components/Split Card',
|
|
8
|
+
component: SplitCard,
|
|
9
|
+
args: {
|
|
10
|
+
className: 'bg-info-light',
|
|
11
|
+
swapDesktop: true,
|
|
12
|
+
swapMobile: true,
|
|
13
|
+
children: [
|
|
14
|
+
<SplitCard.LeftContent>
|
|
15
|
+
<Image src="https://picsum.photos/200/200" />
|
|
16
|
+
</SplitCard.LeftContent>,
|
|
17
|
+
<SplitCard.RightContent className="flex flex-col justify-center p-8">
|
|
18
|
+
<SplitCard.Title>This is a title</SplitCard.Title>
|
|
19
|
+
<SplitCard.Text>
|
|
20
|
+
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Voluptatibus
|
|
21
|
+
non reprehenderit quaerat unde eius quisquam enim distinctio tempora
|
|
22
|
+
animi, rerum exercitationem asperiores, consequuntur fuga ex
|
|
23
|
+
cupiditate? Cumque laudantium laborum numquam!
|
|
24
|
+
</SplitCard.Text>
|
|
25
|
+
</SplitCard.RightContent>,
|
|
26
|
+
],
|
|
27
|
+
},
|
|
28
|
+
} satisfies Meta<typeof SplitCard>;
|
|
29
|
+
|
|
30
|
+
export default meta;
|
|
31
|
+
|
|
32
|
+
type Story = StoryObj<typeof SplitCard>;
|
|
33
|
+
|
|
34
|
+
export const Default: Story = {};
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
import {
|
|
2
|
+
createContext,
|
|
3
|
+
forwardRef,
|
|
4
|
+
HTMLAttributes,
|
|
5
|
+
useContext,
|
|
6
|
+
useMemo,
|
|
7
|
+
} from 'react';
|
|
8
|
+
|
|
9
|
+
import MatchMedia from '@utils/matchMedia';
|
|
10
|
+
import { Screens } from '@utils/screens';
|
|
11
|
+
import clsx from 'clsx';
|
|
12
|
+
|
|
13
|
+
export interface SplitCardContextProps {
|
|
14
|
+
swapDesktop?: boolean;
|
|
15
|
+
swapMobile?: boolean;
|
|
16
|
+
isMd?: boolean;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
const SplitCardContext = createContext<SplitCardContextProps | null>(null);
|
|
20
|
+
|
|
21
|
+
const SplitCardComponent = forwardRef<
|
|
22
|
+
HTMLDivElement,
|
|
23
|
+
HTMLAttributes<HTMLDivElement> & SplitCardContextProps
|
|
24
|
+
>(({ id, className, children, swapDesktop, swapMobile, ...props }, ref) => {
|
|
25
|
+
const mediumScreen: string = Screens.md;
|
|
26
|
+
const mdScreenSize: string = `(min-width: ${mediumScreen})`;
|
|
27
|
+
const isMd: boolean = MatchMedia(mdScreenSize);
|
|
28
|
+
|
|
29
|
+
const state = useMemo(
|
|
30
|
+
() => ({
|
|
31
|
+
swapDesktop,
|
|
32
|
+
swapMobile,
|
|
33
|
+
isMd,
|
|
34
|
+
}),
|
|
35
|
+
[swapDesktop, swapMobile, isMd],
|
|
36
|
+
);
|
|
37
|
+
|
|
38
|
+
return (
|
|
39
|
+
<SplitCardContext.Provider value={state}>
|
|
40
|
+
<div
|
|
41
|
+
ref={ref}
|
|
42
|
+
{...props}
|
|
43
|
+
className={clsx('grid grid-cols-1 md:grid-cols-2', className)}
|
|
44
|
+
>
|
|
45
|
+
{children}
|
|
46
|
+
</div>
|
|
47
|
+
</SplitCardContext.Provider>
|
|
48
|
+
);
|
|
49
|
+
});
|
|
50
|
+
|
|
51
|
+
const SplitCardLeftContent = forwardRef<
|
|
52
|
+
HTMLDivElement,
|
|
53
|
+
HTMLAttributes<HTMLDivElement>
|
|
54
|
+
>(({ className, children, ...props }, ref) => {
|
|
55
|
+
const { swapDesktop, swapMobile, isMd } = useContext(SplitCardContext) || {};
|
|
56
|
+
|
|
57
|
+
return (
|
|
58
|
+
<div
|
|
59
|
+
ref={ref}
|
|
60
|
+
{...props}
|
|
61
|
+
className={clsx(
|
|
62
|
+
'flex h-full items-center text-center',
|
|
63
|
+
{
|
|
64
|
+
'md:order-last': swapDesktop,
|
|
65
|
+
'order-last': !isMd && swapMobile,
|
|
66
|
+
},
|
|
67
|
+
className,
|
|
68
|
+
)}
|
|
69
|
+
>
|
|
70
|
+
{children}
|
|
71
|
+
</div>
|
|
72
|
+
);
|
|
73
|
+
});
|
|
74
|
+
|
|
75
|
+
const SplitCardRightContent = forwardRef<
|
|
76
|
+
HTMLDivElement,
|
|
77
|
+
HTMLAttributes<HTMLDivElement>
|
|
78
|
+
>(({ className, children, ...props }, ref) => {
|
|
79
|
+
const { swapDesktop, swapMobile, isMd } = useContext(SplitCardContext) || {};
|
|
80
|
+
|
|
81
|
+
return (
|
|
82
|
+
<div
|
|
83
|
+
ref={ref}
|
|
84
|
+
{...props}
|
|
85
|
+
className={clsx(
|
|
86
|
+
'flex h-full items-center text-center',
|
|
87
|
+
{
|
|
88
|
+
'md:order-first': swapDesktop,
|
|
89
|
+
'order-first': !isMd && swapMobile,
|
|
90
|
+
},
|
|
91
|
+
className,
|
|
92
|
+
)}
|
|
93
|
+
>
|
|
94
|
+
{children}
|
|
95
|
+
</div>
|
|
96
|
+
);
|
|
97
|
+
});
|
|
98
|
+
|
|
99
|
+
const SplitCardTitle = forwardRef<
|
|
100
|
+
HTMLParagraphElement,
|
|
101
|
+
HTMLAttributes<HTMLParagraphElement>
|
|
102
|
+
>(({ id, children, ...props }, ref) => {
|
|
103
|
+
return (
|
|
104
|
+
<p ref={ref} className="items-center" {...props}>
|
|
105
|
+
{children}
|
|
106
|
+
</p>
|
|
107
|
+
);
|
|
108
|
+
});
|
|
109
|
+
|
|
110
|
+
const SplitCardText = forwardRef<
|
|
111
|
+
HTMLParagraphElement,
|
|
112
|
+
HTMLAttributes<HTMLParagraphElement>
|
|
113
|
+
>(({ id, children, ...props }, ref) => {
|
|
114
|
+
return (
|
|
115
|
+
<p ref={ref} className="" {...props}>
|
|
116
|
+
{children}
|
|
117
|
+
</p>
|
|
118
|
+
);
|
|
119
|
+
});
|
|
120
|
+
|
|
121
|
+
SplitCardComponent.displayName = 'SplitCard';
|
|
122
|
+
SplitCardLeftContent.displayName = 'SplitCard.LeftContent';
|
|
123
|
+
SplitCardRightContent.displayName = 'SplitCard.RightContent';
|
|
124
|
+
|
|
125
|
+
const SplitCard = Object.assign(SplitCardComponent, {
|
|
126
|
+
LeftContent: SplitCardLeftContent,
|
|
127
|
+
RightContent: SplitCardRightContent,
|
|
128
|
+
Title: SplitCardTitle,
|
|
129
|
+
Text: SplitCardText,
|
|
130
|
+
});
|
|
131
|
+
|
|
132
|
+
export { SplitCard };
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Meta, StoryObj } from '@storybook/react';
|
|
2
|
+
|
|
3
|
+
import { Stars } from '.';
|
|
4
|
+
|
|
5
|
+
const meta = {
|
|
6
|
+
title: 'V2Components/Stars',
|
|
7
|
+
component: Stars,
|
|
8
|
+
args: {
|
|
9
|
+
stars: 3,
|
|
10
|
+
size: '2x',
|
|
11
|
+
},
|
|
12
|
+
} satisfies Meta<typeof Stars>;
|
|
13
|
+
|
|
14
|
+
export default meta;
|
|
15
|
+
|
|
16
|
+
type Story = StoryObj<typeof Stars>;
|
|
17
|
+
|
|
18
|
+
export const Default: Story = {};
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { forwardRef, HTMLAttributes } from 'react';
|
|
2
|
+
|
|
3
|
+
import { Icon } from '@components/Icon';
|
|
4
|
+
import { faStar } from '@fortawesome/fontawesome-free-solid';
|
|
5
|
+
import { SizeProp } from '@fortawesome/fontawesome-svg-core';
|
|
6
|
+
import clsx from 'clsx';
|
|
7
|
+
|
|
8
|
+
export interface StarProps {
|
|
9
|
+
stars?: 1 | 2 | 3 | 4 | 5;
|
|
10
|
+
size?: SizeProp;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
const StarComponent = forwardRef<
|
|
14
|
+
HTMLDivElement,
|
|
15
|
+
HTMLAttributes<HTMLDivElement> & StarProps
|
|
16
|
+
>(({ className, stars = 0, size }, ref) => {
|
|
17
|
+
const getStarsChecked = () =>
|
|
18
|
+
[...Array(5)].map((_, i) => (
|
|
19
|
+
<Icon
|
|
20
|
+
className={i < stars ? 'text-star' : ''}
|
|
21
|
+
key={`checked_star_${i}`}
|
|
22
|
+
icon={faStar}
|
|
23
|
+
size="2x"
|
|
24
|
+
/>
|
|
25
|
+
));
|
|
26
|
+
|
|
27
|
+
return (
|
|
28
|
+
<div ref={ref} className={clsx('flex', className)}>
|
|
29
|
+
{getStarsChecked()}
|
|
30
|
+
</div>
|
|
31
|
+
);
|
|
32
|
+
});
|
|
33
|
+
|
|
34
|
+
StarComponent.displayName = 'Stars';
|
|
35
|
+
|
|
36
|
+
const Stars = Object.assign(StarComponent);
|
|
37
|
+
|
|
38
|
+
export { Stars };
|
|
@@ -1,106 +1,34 @@
|
|
|
1
|
-
import { Meta,
|
|
2
|
-
import { idAndClassName } from '@utils/controls';
|
|
1
|
+
import { Meta, StoryObj } from '@storybook/react';
|
|
3
2
|
|
|
4
3
|
import { Testimonial } from '.';
|
|
5
4
|
|
|
6
5
|
const meta = {
|
|
7
|
-
title: '
|
|
6
|
+
title: 'V2Components/Testimonial',
|
|
8
7
|
component: Testimonial,
|
|
9
|
-
argTypes: {
|
|
10
|
-
...idAndClassName,
|
|
11
|
-
text: {
|
|
12
|
-
description: 'The description to display on the component',
|
|
13
|
-
control: 'text',
|
|
14
|
-
table: {
|
|
15
|
-
type: { summary: 'default' },
|
|
16
|
-
},
|
|
17
|
-
defaultValue: { summary: 'undefined' },
|
|
18
|
-
},
|
|
19
|
-
companyName: {
|
|
20
|
-
description: 'The company name to display on the component',
|
|
21
|
-
control: 'text',
|
|
22
|
-
table: {
|
|
23
|
-
type: { summary: 'default' },
|
|
24
|
-
},
|
|
25
|
-
defaultValue: { summary: 'undefined' },
|
|
26
|
-
},
|
|
27
|
-
positionStartDate: {
|
|
28
|
-
description: 'The start date to display on the component',
|
|
29
|
-
control: 'text',
|
|
30
|
-
table: {
|
|
31
|
-
type: { summary: 'default' },
|
|
32
|
-
},
|
|
33
|
-
defaultValue: { summary: 'undefined' },
|
|
34
|
-
},
|
|
35
|
-
positionEndDate: {
|
|
36
|
-
description: 'The end date to display on the component',
|
|
37
|
-
control: 'text',
|
|
38
|
-
table: {
|
|
39
|
-
type: { summary: 'default' },
|
|
40
|
-
},
|
|
41
|
-
defaultValue: { summary: 'undefined' },
|
|
42
|
-
},
|
|
43
|
-
position: {
|
|
44
|
-
description: 'The position to display on the component',
|
|
45
|
-
control: 'text',
|
|
46
|
-
table: {
|
|
47
|
-
type: { summary: 'default' },
|
|
48
|
-
},
|
|
49
|
-
defaultValue: { summary: 'undefined' },
|
|
50
|
-
},
|
|
51
|
-
date: {
|
|
52
|
-
description: 'The date of the testimonial to display on the component',
|
|
53
|
-
control: 'text',
|
|
54
|
-
table: {
|
|
55
|
-
type: { summary: 'default' },
|
|
56
|
-
},
|
|
57
|
-
defaultValue: { summary: 'undefined' },
|
|
58
|
-
},
|
|
59
|
-
authorsName: {
|
|
60
|
-
description: 'The authors name to display on the component',
|
|
61
|
-
control: 'text',
|
|
62
|
-
table: {
|
|
63
|
-
type: { summary: 'default' },
|
|
64
|
-
},
|
|
65
|
-
defaultValue: { summary: 'undefined' },
|
|
66
|
-
},
|
|
67
|
-
authorsPosition: {
|
|
68
|
-
description: 'The authors position to display on the component',
|
|
69
|
-
control: 'text',
|
|
70
|
-
table: {
|
|
71
|
-
type: { summary: 'default' },
|
|
72
|
-
},
|
|
73
|
-
defaultValue: { summary: 'undefined' },
|
|
74
|
-
},
|
|
75
|
-
imageProps: {
|
|
76
|
-
type: { name: 'other', value: 'object' },
|
|
77
|
-
description: 'The props to pass to the image to display on the component',
|
|
78
|
-
table: {
|
|
79
|
-
type: {
|
|
80
|
-
summary: 'object',
|
|
81
|
-
},
|
|
82
|
-
defaultValue: { summary: 'undefined' },
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
},
|
|
86
8
|
args: {
|
|
87
|
-
|
|
88
|
-
src
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
9
|
+
children: [
|
|
10
|
+
<Testimonial.Image src="https://picsum.photos/100/100" />,
|
|
11
|
+
<Testimonial.Title>This is a title</Testimonial.Title>,
|
|
12
|
+
<Testimonial.Section>
|
|
13
|
+
<Testimonial.Position>Position</Testimonial.Position>
|
|
14
|
+
<Testimonial.Date>This is a date</Testimonial.Date>
|
|
15
|
+
</Testimonial.Section>,
|
|
16
|
+
<Testimonial.Text>
|
|
17
|
+
Lorem ipsum dolor sit amet consectetur adipisicing elit. Facere delectus
|
|
18
|
+
soluta voluptas, minus sequi fuga facilis rem animi reprehenderit iusto
|
|
19
|
+
recusandae. Accusantium porro possimus id quas quis a soluta cum. Lorem,
|
|
20
|
+
ipsum dolor sit amet consectetur adipisicing elit. Facere odit rem quam
|
|
21
|
+
ullam! Ipsam dolorem libero exercitationem odio atque itaque
|
|
22
|
+
repudiandae? Amet est exercitationem quas iusto magni quod, molestiae
|
|
23
|
+
eaque. Lorem ipsum dolor sit amet consectetur adipisicing elit. Beatae
|
|
24
|
+
fuga quibusdam minima assumenda. Culpa ab ea sit molestias aspernatur
|
|
25
|
+
enim ducimus quis consequatur? Ab officiis, sequi reiciendis eos quaerat
|
|
26
|
+
quisquam?
|
|
27
|
+
</Testimonial.Text>,
|
|
28
|
+
<Testimonial.AuthorDetails>Authors Name</Testimonial.AuthorDetails>,
|
|
29
|
+
],
|
|
30
|
+
},
|
|
31
|
+
} satisfies Meta<typeof Testimonial>;
|
|
104
32
|
|
|
105
33
|
export default meta;
|
|
106
34
|
|