@anker-in/headless-ui 0.0.26 → 0.0.27-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CONTRIBUTING.md +88 -27
- package/dist/cjs/biz-components/BrandEquity/BrandEquity.d.ts +19 -0
- package/dist/cjs/biz-components/BrandEquity/BrandEquity.js +2 -0
- package/dist/cjs/biz-components/BrandEquity/BrandEquity.js.map +7 -0
- package/dist/cjs/biz-components/BrandEquity/index.d.ts +1 -0
- package/dist/cjs/biz-components/BrandEquity/index.js +2 -0
- package/dist/cjs/biz-components/BrandEquity/index.js.map +7 -0
- package/dist/cjs/biz-components/Category/index.d.ts +16 -0
- package/dist/cjs/biz-components/Category/index.js +2 -0
- package/dist/cjs/biz-components/Category/index.js.map +7 -0
- package/dist/cjs/biz-components/Evaluate/index.d.ts +19 -0
- package/dist/cjs/biz-components/Evaluate/index.js +2 -0
- package/dist/cjs/biz-components/Evaluate/index.js.map +7 -0
- package/dist/cjs/biz-components/HeroBanner/HeroBanner.d.ts +7 -0
- package/dist/cjs/biz-components/HeroBanner/HeroBanner.js +2 -0
- package/dist/cjs/biz-components/HeroBanner/HeroBanner.js.map +7 -0
- package/dist/cjs/biz-components/HeroBanner/index.d.ts +1 -0
- package/dist/cjs/biz-components/HeroBanner/index.js +2 -0
- package/dist/cjs/biz-components/HeroBanner/index.js.map +7 -0
- package/dist/cjs/biz-components/HeroBanner/types.d.ts +26 -0
- package/dist/cjs/biz-components/HeroBanner/types.js +2 -0
- package/dist/cjs/biz-components/HeroBanner/types.js.map +7 -0
- package/dist/cjs/biz-components/Marquee/index.d.ts +23 -0
- package/dist/cjs/biz-components/Marquee/index.js +2 -0
- package/dist/cjs/biz-components/Marquee/index.js.map +7 -0
- package/dist/cjs/biz-components/MemberEquity/index.d.ts +6 -0
- package/dist/cjs/biz-components/MemberEquity/index.js +40 -0
- package/dist/cjs/biz-components/MemberEquity/index.js.map +7 -0
- package/dist/cjs/biz-components/MemberEquity/types.d.ts +25 -0
- package/dist/cjs/biz-components/MemberEquity/types.js +2 -0
- package/dist/cjs/biz-components/MemberEquity/types.js.map +7 -0
- package/dist/cjs/biz-components/Shelf/Shelf.d.ts +6 -0
- package/dist/cjs/biz-components/Shelf/Shelf.js +2 -0
- package/dist/cjs/biz-components/Shelf/Shelf.js.map +7 -0
- package/dist/cjs/biz-components/Shelf/index.d.ts +1 -0
- package/dist/cjs/biz-components/Shelf/index.js +2 -0
- package/dist/cjs/biz-components/Shelf/index.js.map +7 -0
- package/dist/cjs/biz-components/Shelf/types.d.ts +6 -0
- package/dist/cjs/biz-components/Shelf/types.js +2 -0
- package/dist/cjs/biz-components/Shelf/types.js.map +7 -0
- package/dist/cjs/biz-components/ShelfDisplay/index.d.ts +38 -0
- package/dist/cjs/biz-components/ShelfDisplay/index.js +10 -0
- package/dist/cjs/biz-components/ShelfDisplay/index.js.map +7 -0
- package/dist/cjs/biz-components/Slogan/index.d.ts +7 -0
- package/dist/cjs/biz-components/Slogan/index.js +2 -0
- package/dist/cjs/biz-components/Slogan/index.js.map +7 -0
- package/dist/cjs/biz-components/Slogan/types.d.ts +24 -0
- package/dist/cjs/biz-components/Slogan/types.js +2 -0
- package/dist/cjs/biz-components/Slogan/types.js.map +7 -0
- package/dist/cjs/biz-components/index.d.ts +9 -0
- package/dist/cjs/biz-components/index.js +2 -0
- package/dist/cjs/biz-components/index.js.map +7 -0
- package/dist/cjs/components/alert.d.ts +17 -0
- package/dist/cjs/components/alert.js +2 -0
- package/dist/cjs/components/alert.js.map +7 -0
- package/dist/cjs/components/avatar.d.ts +26 -0
- package/dist/cjs/components/avatar.js +2 -0
- package/dist/cjs/components/avatar.js.map +7 -0
- package/dist/cjs/components/badge.d.ts +2 -2
- package/dist/cjs/components/badge.js +1 -1
- package/dist/cjs/components/badge.js.map +3 -3
- package/dist/cjs/components/button.d.ts +2 -1
- package/dist/cjs/components/button.js +1 -1
- package/dist/cjs/components/button.js.map +3 -3
- package/dist/cjs/components/card.d.ts +8 -0
- package/dist/cjs/components/card.js +2 -0
- package/dist/cjs/components/card.js.map +7 -0
- package/dist/cjs/components/carousel.d.ts +28 -0
- package/dist/cjs/components/carousel.js +2 -0
- package/dist/cjs/components/carousel.js.map +7 -0
- package/dist/cjs/components/checkbox.js +1 -1
- package/dist/cjs/components/checkbox.js.map +2 -2
- package/dist/cjs/components/color.d.ts +13 -0
- package/dist/cjs/components/color.js +2 -0
- package/dist/cjs/components/color.js.map +7 -0
- package/dist/cjs/components/container.d.ts +13 -0
- package/dist/cjs/components/container.js +2 -0
- package/dist/cjs/components/container.js.map +7 -0
- package/dist/cjs/components/dialog.d.ts +2 -2
- package/dist/cjs/components/dialog.js +1 -1
- package/dist/cjs/components/dialog.js.map +2 -2
- package/dist/cjs/components/drawer.d.ts +13 -0
- package/dist/cjs/components/drawer.js +2 -0
- package/dist/cjs/components/drawer.js.map +7 -0
- package/dist/cjs/components/drop-down.d.ts +27 -0
- package/dist/cjs/components/drop-down.js +2 -0
- package/dist/cjs/components/drop-down.js.map +7 -0
- package/dist/cjs/components/gird.d.ts +17 -0
- package/dist/cjs/components/gird.js +2 -0
- package/dist/cjs/components/gird.js.map +7 -0
- package/dist/cjs/components/heading.d.ts +2 -2
- package/dist/cjs/components/heading.js +1 -1
- package/dist/cjs/components/heading.js.map +2 -2
- package/dist/cjs/components/index.d.ts +12 -1
- package/dist/cjs/components/index.js +1 -1
- package/dist/cjs/components/index.js.map +2 -2
- package/dist/cjs/components/input-number.d.ts +78 -0
- package/dist/cjs/components/input-number.js +2 -0
- package/dist/cjs/components/input-number.js.map +7 -0
- package/dist/cjs/components/input.js +1 -1
- package/dist/cjs/components/input.js.map +2 -2
- package/dist/cjs/components/link.d.ts +47 -0
- package/dist/cjs/components/link.js +2 -0
- package/dist/cjs/components/link.js.map +7 -0
- package/dist/cjs/components/picture.d.ts +1 -1
- package/dist/cjs/components/picture.js +1 -1
- package/dist/cjs/components/picture.js.map +3 -3
- package/dist/cjs/components/popover.js +1 -1
- package/dist/cjs/components/popover.js.map +2 -2
- package/dist/cjs/components/radio.js +1 -1
- package/dist/cjs/components/radio.js.map +2 -2
- package/dist/cjs/components/skeleton.js +4 -4
- package/dist/cjs/components/skeleton.js.map +1 -1
- package/dist/cjs/components/tabs.d.ts +9 -0
- package/dist/cjs/components/tabs.js +2 -0
- package/dist/cjs/components/tabs.js.map +7 -0
- package/dist/cjs/components/text.d.ts +2 -3
- package/dist/cjs/components/text.js +1 -1
- package/dist/cjs/components/text.js.map +3 -3
- package/dist/cjs/components/theme.d.ts +2 -3
- package/dist/cjs/components/theme.js +1 -1
- package/dist/cjs/components/theme.js.map +2 -2
- package/dist/cjs/helpers/constants.d.ts +0 -2
- package/dist/cjs/helpers/constants.js +1 -1
- package/dist/cjs/helpers/constants.js.map +4 -4
- package/dist/cjs/helpers/utils.js +1 -1
- package/dist/cjs/helpers/utils.js.map +3 -3
- package/dist/cjs/icons/spinner.d.ts +1 -1
- package/dist/cjs/icons/spinner.js +1 -1
- package/dist/cjs/icons/spinner.js.map +2 -2
- package/dist/cjs/shared/Styles.d.ts +33 -0
- package/dist/cjs/shared/Styles.js +2 -0
- package/dist/cjs/shared/Styles.js.map +7 -0
- package/dist/cjs/stories/HeroBanner.stories.d.ts +23 -0
- package/dist/cjs/stories/HeroBanner.stories.js +10 -0
- package/dist/cjs/stories/HeroBanner.stories.js.map +7 -0
- package/dist/cjs/stories/MemberEquity.stories.d.ts +9 -0
- package/dist/cjs/stories/MemberEquity.stories.js +31 -0
- package/dist/cjs/stories/MemberEquity.stories.js.map +7 -0
- package/dist/cjs/stories/alert.stories.d.ts +27 -0
- package/dist/cjs/stories/alert.stories.js +2 -0
- package/dist/cjs/stories/alert.stories.js.map +7 -0
- package/dist/cjs/stories/avatar.stories.d.ts +40 -0
- package/dist/cjs/stories/avatar.stories.js +2 -0
- package/dist/cjs/stories/avatar.stories.js.map +7 -0
- package/dist/cjs/stories/badge.stories.d.ts +2 -12
- package/dist/cjs/stories/badge.stories.js +1 -1
- package/dist/cjs/stories/badge.stories.js.map +2 -2
- package/dist/cjs/stories/brandEquity.stories.d.ts +16 -0
- package/dist/cjs/stories/brandEquity.stories.js +2 -0
- package/dist/cjs/stories/brandEquity.stories.js.map +7 -0
- package/dist/cjs/stories/button.stories.d.ts +14 -0
- package/dist/cjs/stories/button.stories.js +1 -1
- package/dist/cjs/stories/button.stories.js.map +3 -3
- package/dist/cjs/stories/card.stories.d.ts +27 -0
- package/dist/cjs/stories/card.stories.js +2 -0
- package/dist/cjs/stories/card.stories.js.map +7 -0
- package/dist/cjs/stories/carousel.stories.d.ts +62 -0
- package/dist/cjs/stories/carousel.stories.js +2 -0
- package/dist/cjs/stories/carousel.stories.js.map +7 -0
- package/dist/cjs/stories/category.stories.d.ts +13 -0
- package/dist/cjs/stories/category.stories.js +2 -0
- package/dist/cjs/stories/category.stories.js.map +7 -0
- package/dist/cjs/stories/checkbox.stories.d.ts +2 -2
- package/dist/cjs/stories/checkbox.stories.js +1 -1
- package/dist/cjs/stories/checkbox.stories.js.map +2 -2
- package/dist/cjs/stories/container.stories.d.ts +23 -0
- package/dist/cjs/stories/container.stories.js +15 -0
- package/dist/cjs/stories/container.stories.js.map +7 -0
- package/dist/cjs/stories/dialog.stories.js +1 -1
- package/dist/cjs/stories/dialog.stories.js.map +2 -2
- package/dist/cjs/stories/drawer.stories.d.ts +20 -0
- package/dist/cjs/stories/drawer.stories.js +2 -0
- package/dist/cjs/stories/drawer.stories.js.map +7 -0
- package/dist/cjs/stories/drop-down.stories.d.ts +16 -0
- package/dist/cjs/stories/drop-down.stories.js +2 -0
- package/dist/cjs/stories/drop-down.stories.js.map +7 -0
- package/dist/cjs/stories/evaluate.stories.d.ts +13 -0
- package/dist/cjs/stories/evaluate.stories.js +2 -0
- package/dist/cjs/stories/evaluate.stories.js.map +7 -0
- package/dist/cjs/stories/grid.stories.d.ts +22 -0
- package/dist/cjs/stories/grid.stories.js +13 -0
- package/dist/cjs/stories/grid.stories.js.map +7 -0
- package/dist/cjs/stories/heading.stories.d.ts +2 -2
- package/dist/cjs/stories/heading.stories.js +1 -1
- package/dist/cjs/stories/heading.stories.js.map +2 -2
- package/dist/cjs/stories/input-number.stories.d.ts +39 -0
- package/dist/cjs/stories/input-number.stories.js +2 -0
- package/dist/cjs/stories/input-number.stories.js.map +7 -0
- package/dist/cjs/stories/input.stories.js +1 -1
- package/dist/cjs/stories/input.stories.js.map +2 -2
- package/dist/cjs/stories/link.stories.d.ts +82 -0
- package/dist/cjs/stories/link.stories.js +2 -0
- package/dist/cjs/stories/link.stories.js.map +7 -0
- package/dist/cjs/stories/marquee.stories.d.ts +49 -0
- package/dist/cjs/stories/marquee.stories.js +2 -0
- package/dist/cjs/stories/marquee.stories.js.map +7 -0
- package/dist/cjs/stories/picture.stories.d.ts +1 -1
- package/dist/cjs/stories/picture.stories.js +2 -2
- package/dist/cjs/stories/picture.stories.js.map +2 -2
- package/dist/cjs/stories/popover.stories.d.ts +1 -1
- package/dist/cjs/stories/popover.stories.js +1 -1
- package/dist/cjs/stories/popover.stories.js.map +2 -2
- package/dist/cjs/stories/radio.stories.js +1 -1
- package/dist/cjs/stories/radio.stories.js.map +2 -2
- package/dist/cjs/stories/shelf.stories.d.ts +15 -0
- package/dist/cjs/stories/shelf.stories.js +2 -0
- package/dist/cjs/stories/shelf.stories.js.map +7 -0
- package/dist/cjs/stories/shelfDisplay.stories.d.ts +13 -0
- package/dist/cjs/stories/shelfDisplay.stories.js +2 -0
- package/dist/cjs/stories/shelfDisplay.stories.js.map +7 -0
- package/dist/cjs/stories/skeleton.stories.js +1 -1
- package/dist/cjs/stories/skeleton.stories.js.map +2 -2
- package/dist/cjs/stories/slogan.stories.d.ts +21 -0
- package/dist/cjs/stories/slogan.stories.js +26 -0
- package/dist/cjs/stories/slogan.stories.js.map +7 -0
- package/dist/cjs/stories/tabs.stories.d.ts +360 -0
- package/dist/cjs/stories/tabs.stories.js +2 -0
- package/dist/cjs/stories/tabs.stories.js.map +7 -0
- package/dist/cjs/stories/text.stories.d.ts +2 -11
- package/dist/cjs/stories/text.stories.js +1 -1
- package/dist/cjs/stories/text.stories.js.map +3 -3
- package/dist/cjs/types/index.d.ts +0 -0
- package/dist/cjs/types/index.js +2 -0
- package/dist/cjs/types/index.js.map +7 -0
- package/dist/cjs/types/props.d.ts +5 -0
- package/dist/cjs/types/props.js +2 -0
- package/dist/cjs/types/props.js.map +7 -0
- package/dist/esm/biz-components/BrandEquity/BrandEquity.d.ts +19 -0
- package/dist/esm/biz-components/BrandEquity/BrandEquity.js +2 -0
- package/dist/esm/biz-components/BrandEquity/BrandEquity.js.map +7 -0
- package/dist/esm/biz-components/BrandEquity/index.d.ts +1 -0
- package/dist/esm/biz-components/BrandEquity/index.js +2 -0
- package/dist/esm/biz-components/BrandEquity/index.js.map +7 -0
- package/dist/esm/biz-components/Category/index.d.ts +16 -0
- package/dist/esm/biz-components/Category/index.js +2 -0
- package/dist/esm/biz-components/Category/index.js.map +7 -0
- package/dist/esm/biz-components/Evaluate/index.d.ts +19 -0
- package/dist/esm/biz-components/Evaluate/index.js +2 -0
- package/dist/esm/biz-components/Evaluate/index.js.map +7 -0
- package/dist/esm/biz-components/HeroBanner/HeroBanner.d.ts +7 -0
- package/dist/esm/biz-components/HeroBanner/HeroBanner.js +2 -0
- package/dist/esm/biz-components/HeroBanner/HeroBanner.js.map +7 -0
- package/dist/esm/biz-components/HeroBanner/index.d.ts +1 -0
- package/dist/esm/biz-components/HeroBanner/index.js +2 -0
- package/dist/esm/biz-components/HeroBanner/index.js.map +7 -0
- package/dist/esm/biz-components/HeroBanner/types.d.ts +26 -0
- package/dist/esm/biz-components/HeroBanner/types.js +1 -0
- package/dist/esm/biz-components/HeroBanner/types.js.map +7 -0
- package/dist/esm/biz-components/Marquee/index.d.ts +23 -0
- package/dist/esm/biz-components/Marquee/index.js +2 -0
- package/dist/esm/biz-components/Marquee/index.js.map +7 -0
- package/dist/esm/biz-components/MemberEquity/index.d.ts +6 -0
- package/dist/esm/biz-components/MemberEquity/index.js +40 -0
- package/dist/esm/biz-components/MemberEquity/index.js.map +7 -0
- package/dist/esm/biz-components/MemberEquity/types.d.ts +25 -0
- package/dist/esm/biz-components/MemberEquity/types.js +1 -0
- package/dist/esm/biz-components/MemberEquity/types.js.map +7 -0
- package/dist/esm/biz-components/Shelf/Shelf.d.ts +6 -0
- package/dist/esm/biz-components/Shelf/Shelf.js +2 -0
- package/dist/esm/biz-components/Shelf/Shelf.js.map +7 -0
- package/dist/esm/biz-components/Shelf/index.d.ts +1 -0
- package/dist/esm/biz-components/Shelf/index.js +2 -0
- package/dist/esm/biz-components/Shelf/index.js.map +7 -0
- package/dist/esm/biz-components/Shelf/types.d.ts +6 -0
- package/dist/esm/biz-components/Shelf/types.js +1 -0
- package/dist/esm/biz-components/Shelf/types.js.map +7 -0
- package/dist/esm/biz-components/ShelfDisplay/index.d.ts +38 -0
- package/dist/esm/biz-components/ShelfDisplay/index.js +10 -0
- package/dist/esm/biz-components/ShelfDisplay/index.js.map +7 -0
- package/dist/esm/biz-components/Slogan/index.d.ts +7 -0
- package/dist/esm/biz-components/Slogan/index.js +2 -0
- package/dist/esm/biz-components/Slogan/index.js.map +7 -0
- package/dist/esm/biz-components/Slogan/types.d.ts +24 -0
- package/dist/esm/biz-components/Slogan/types.js +1 -0
- package/dist/esm/biz-components/Slogan/types.js.map +7 -0
- package/dist/esm/biz-components/index.d.ts +9 -0
- package/dist/esm/biz-components/index.js +2 -0
- package/dist/esm/biz-components/index.js.map +7 -0
- package/dist/esm/components/alert.d.ts +17 -0
- package/dist/esm/components/alert.js +2 -0
- package/dist/esm/components/alert.js.map +7 -0
- package/dist/esm/components/avatar.d.ts +26 -0
- package/dist/esm/components/avatar.js +2 -0
- package/dist/esm/components/avatar.js.map +7 -0
- package/dist/esm/components/badge.d.ts +2 -2
- package/dist/esm/components/badge.js +1 -1
- package/dist/esm/components/badge.js.map +3 -3
- package/dist/esm/components/button.d.ts +2 -1
- package/dist/esm/components/button.js +1 -1
- package/dist/esm/components/button.js.map +3 -3
- package/dist/esm/components/card.d.ts +8 -0
- package/dist/esm/components/card.js +2 -0
- package/dist/esm/components/card.js.map +7 -0
- package/dist/esm/components/carousel.d.ts +28 -0
- package/dist/esm/components/carousel.js +2 -0
- package/dist/esm/components/carousel.js.map +7 -0
- package/dist/esm/components/checkbox.js +1 -1
- package/dist/esm/components/checkbox.js.map +2 -2
- package/dist/esm/components/color.d.ts +13 -0
- package/dist/esm/components/color.js +2 -0
- package/dist/esm/components/color.js.map +7 -0
- package/dist/esm/components/container.d.ts +13 -0
- package/dist/esm/components/container.js +2 -0
- package/dist/esm/components/container.js.map +7 -0
- package/dist/esm/components/dialog.d.ts +2 -2
- package/dist/esm/components/dialog.js +1 -1
- package/dist/esm/components/dialog.js.map +2 -2
- package/dist/esm/components/drawer.d.ts +13 -0
- package/dist/esm/components/drawer.js +2 -0
- package/dist/esm/components/drawer.js.map +7 -0
- package/dist/esm/components/drop-down.d.ts +27 -0
- package/dist/esm/components/drop-down.js +2 -0
- package/dist/esm/components/drop-down.js.map +7 -0
- package/dist/esm/components/gird.d.ts +17 -0
- package/dist/esm/components/gird.js +2 -0
- package/dist/esm/components/gird.js.map +7 -0
- package/dist/esm/components/heading.d.ts +2 -2
- package/dist/esm/components/heading.js +1 -1
- package/dist/esm/components/heading.js.map +2 -2
- package/dist/esm/components/index.d.ts +12 -1
- package/dist/esm/components/index.js +1 -1
- package/dist/esm/components/index.js.map +2 -2
- package/dist/esm/components/input-number.d.ts +78 -0
- package/dist/esm/components/input-number.js +2 -0
- package/dist/esm/components/input-number.js.map +7 -0
- package/dist/esm/components/input.js +1 -1
- package/dist/esm/components/input.js.map +2 -2
- package/dist/esm/components/link.d.ts +47 -0
- package/dist/esm/components/link.js +2 -0
- package/dist/esm/components/link.js.map +7 -0
- package/dist/esm/components/picture.d.ts +1 -1
- package/dist/esm/components/picture.js +1 -1
- package/dist/esm/components/picture.js.map +3 -3
- package/dist/esm/components/popover.js +1 -1
- package/dist/esm/components/popover.js.map +2 -2
- package/dist/esm/components/radio.js +1 -1
- package/dist/esm/components/radio.js.map +2 -2
- package/dist/esm/components/skeleton.js +4 -4
- package/dist/esm/components/skeleton.js.map +1 -1
- package/dist/esm/components/tabs.d.ts +9 -0
- package/dist/esm/components/tabs.js +2 -0
- package/dist/esm/components/tabs.js.map +7 -0
- package/dist/esm/components/text.d.ts +2 -3
- package/dist/esm/components/text.js +1 -1
- package/dist/esm/components/text.js.map +3 -3
- package/dist/esm/components/theme.d.ts +2 -3
- package/dist/esm/components/theme.js +1 -1
- package/dist/esm/components/theme.js.map +2 -2
- package/dist/esm/helpers/constants.d.ts +0 -2
- package/dist/esm/helpers/constants.js +1 -1
- package/dist/esm/helpers/constants.js.map +3 -3
- package/dist/esm/helpers/utils.js +1 -1
- package/dist/esm/helpers/utils.js.map +3 -3
- package/dist/esm/icons/spinner.d.ts +1 -1
- package/dist/esm/icons/spinner.js +1 -1
- package/dist/esm/icons/spinner.js.map +2 -2
- package/dist/esm/shared/Styles.d.ts +33 -0
- package/dist/esm/shared/Styles.js +2 -0
- package/dist/esm/shared/Styles.js.map +7 -0
- package/dist/esm/stories/HeroBanner.stories.d.ts +23 -0
- package/dist/esm/stories/HeroBanner.stories.js +10 -0
- package/dist/esm/stories/HeroBanner.stories.js.map +7 -0
- package/dist/esm/stories/MemberEquity.stories.d.ts +9 -0
- package/dist/esm/stories/MemberEquity.stories.js +31 -0
- package/dist/esm/stories/MemberEquity.stories.js.map +7 -0
- package/dist/esm/stories/alert.stories.d.ts +27 -0
- package/dist/esm/stories/alert.stories.js +2 -0
- package/dist/esm/stories/alert.stories.js.map +7 -0
- package/dist/esm/stories/avatar.stories.d.ts +40 -0
- package/dist/esm/stories/avatar.stories.js +2 -0
- package/dist/esm/stories/avatar.stories.js.map +7 -0
- package/dist/esm/stories/badge.stories.d.ts +2 -12
- package/dist/esm/stories/badge.stories.js +1 -1
- package/dist/esm/stories/badge.stories.js.map +2 -2
- package/dist/esm/stories/brandEquity.stories.d.ts +16 -0
- package/dist/esm/stories/brandEquity.stories.js +2 -0
- package/dist/esm/stories/brandEquity.stories.js.map +7 -0
- package/dist/esm/stories/button.stories.d.ts +14 -0
- package/dist/esm/stories/button.stories.js +1 -1
- package/dist/esm/stories/button.stories.js.map +3 -3
- package/dist/esm/stories/card.stories.d.ts +27 -0
- package/dist/esm/stories/card.stories.js +2 -0
- package/dist/esm/stories/card.stories.js.map +7 -0
- package/dist/esm/stories/carousel.stories.d.ts +62 -0
- package/dist/esm/stories/carousel.stories.js +2 -0
- package/dist/esm/stories/carousel.stories.js.map +7 -0
- package/dist/esm/stories/category.stories.d.ts +13 -0
- package/dist/esm/stories/category.stories.js +2 -0
- package/dist/esm/stories/category.stories.js.map +7 -0
- package/dist/esm/stories/checkbox.stories.d.ts +2 -2
- package/dist/esm/stories/checkbox.stories.js +1 -1
- package/dist/esm/stories/checkbox.stories.js.map +2 -2
- package/dist/esm/stories/container.stories.d.ts +23 -0
- package/dist/esm/stories/container.stories.js +15 -0
- package/dist/esm/stories/container.stories.js.map +7 -0
- package/dist/esm/stories/dialog.stories.js +1 -1
- package/dist/esm/stories/dialog.stories.js.map +2 -2
- package/dist/esm/stories/drawer.stories.d.ts +20 -0
- package/dist/esm/stories/drawer.stories.js +2 -0
- package/dist/esm/stories/drawer.stories.js.map +7 -0
- package/dist/esm/stories/drop-down.stories.d.ts +16 -0
- package/dist/esm/stories/drop-down.stories.js +2 -0
- package/dist/esm/stories/drop-down.stories.js.map +7 -0
- package/dist/esm/stories/evaluate.stories.d.ts +13 -0
- package/dist/esm/stories/evaluate.stories.js +2 -0
- package/dist/esm/stories/evaluate.stories.js.map +7 -0
- package/dist/esm/stories/grid.stories.d.ts +22 -0
- package/dist/esm/stories/grid.stories.js +13 -0
- package/dist/esm/stories/grid.stories.js.map +7 -0
- package/dist/esm/stories/heading.stories.d.ts +2 -2
- package/dist/esm/stories/heading.stories.js +1 -1
- package/dist/esm/stories/heading.stories.js.map +2 -2
- package/dist/esm/stories/input-number.stories.d.ts +39 -0
- package/dist/esm/stories/input-number.stories.js +2 -0
- package/dist/esm/stories/input-number.stories.js.map +7 -0
- package/dist/esm/stories/input.stories.js +1 -1
- package/dist/esm/stories/input.stories.js.map +2 -2
- package/dist/esm/stories/link.stories.d.ts +82 -0
- package/dist/esm/stories/link.stories.js +2 -0
- package/dist/esm/stories/link.stories.js.map +7 -0
- package/dist/esm/stories/marquee.stories.d.ts +49 -0
- package/dist/esm/stories/marquee.stories.js +2 -0
- package/dist/esm/stories/marquee.stories.js.map +7 -0
- package/dist/esm/stories/picture.stories.d.ts +1 -1
- package/dist/esm/stories/picture.stories.js +2 -2
- package/dist/esm/stories/picture.stories.js.map +2 -2
- package/dist/esm/stories/popover.stories.d.ts +1 -1
- package/dist/esm/stories/popover.stories.js +1 -1
- package/dist/esm/stories/popover.stories.js.map +2 -2
- package/dist/esm/stories/radio.stories.js +1 -1
- package/dist/esm/stories/radio.stories.js.map +2 -2
- package/dist/esm/stories/shelf.stories.d.ts +15 -0
- package/dist/esm/stories/shelf.stories.js +2 -0
- package/dist/esm/stories/shelf.stories.js.map +7 -0
- package/dist/esm/stories/shelfDisplay.stories.d.ts +13 -0
- package/dist/esm/stories/shelfDisplay.stories.js +2 -0
- package/dist/esm/stories/shelfDisplay.stories.js.map +7 -0
- package/dist/esm/stories/skeleton.stories.js +1 -1
- package/dist/esm/stories/skeleton.stories.js.map +2 -2
- package/dist/esm/stories/slogan.stories.d.ts +21 -0
- package/dist/esm/stories/slogan.stories.js +26 -0
- package/dist/esm/stories/slogan.stories.js.map +7 -0
- package/dist/esm/stories/tabs.stories.d.ts +360 -0
- package/dist/esm/stories/tabs.stories.js +2 -0
- package/dist/esm/stories/tabs.stories.js.map +7 -0
- package/dist/esm/stories/text.stories.d.ts +2 -11
- package/dist/esm/stories/text.stories.js +2 -2
- package/dist/esm/stories/text.stories.js.map +3 -3
- package/dist/esm/types/index.d.ts +0 -0
- package/dist/esm/types/index.js +2 -0
- package/dist/esm/types/index.js.map +7 -0
- package/dist/esm/types/props.d.ts +5 -0
- package/dist/esm/types/props.js +1 -0
- package/dist/esm/types/props.js.map +7 -0
- package/package.json +28 -3
- package/src/biz-components/BrandEquity/BrandEquity.tsx +77 -0
- package/src/biz-components/BrandEquity/index.ts +1 -0
- package/src/biz-components/Category/index.tsx +57 -0
- package/src/biz-components/Evaluate/index.tsx +85 -0
- package/src/biz-components/HeroBanner/HeroBanner.tsx +103 -0
- package/src/biz-components/HeroBanner/index.tsx +1 -0
- package/src/biz-components/HeroBanner/types.ts +28 -0
- package/src/biz-components/Marquee/index.tsx +79 -0
- package/src/biz-components/MemberEquity/index.tsx +114 -0
- package/src/biz-components/MemberEquity/types.ts +26 -0
- package/src/biz-components/Shelf/Shelf.tsx +22 -0
- package/src/biz-components/Shelf/index.ts +1 -0
- package/src/biz-components/Shelf/types.ts +6 -0
- package/src/biz-components/ShelfDisplay/index.tsx +142 -0
- package/src/biz-components/Slogan/index.tsx +53 -0
- package/src/biz-components/Slogan/types.ts +25 -0
- package/src/biz-components/index.ts +11 -0
- package/src/components/alert.tsx +124 -0
- package/src/components/avatar.tsx +126 -0
- package/src/components/badge.tsx +9 -11
- package/src/components/button.tsx +40 -23
- package/src/components/card.tsx +51 -0
- package/src/components/carousel.tsx +352 -0
- package/src/components/checkbox.tsx +5 -7
- package/src/components/color.tsx +77 -0
- package/src/components/container.tsx +28 -0
- package/src/components/dialog.tsx +9 -12
- package/src/components/drawer.tsx +115 -0
- package/src/components/drop-down.tsx +182 -0
- package/src/components/gird.tsx +90 -0
- package/src/components/heading.tsx +21 -26
- package/src/components/index.ts +12 -5
- package/src/components/input-number.tsx +216 -0
- package/src/components/input.tsx +9 -9
- package/src/components/link.tsx +99 -0
- package/src/components/picture.tsx +3 -2
- package/src/components/popover.tsx +1 -1
- package/src/components/radio.tsx +6 -6
- package/src/components/skeleton.tsx +3 -3
- package/src/components/tabs.tsx +78 -0
- package/src/components/text.tsx +20 -34
- package/src/components/theme.tsx +1 -2
- package/src/helpers/constants.ts +0 -3
- package/src/helpers/utils.ts +9 -1
- package/src/icons/spinner.tsx +1 -1
- package/src/shared/Styles.tsx +94 -0
- package/src/stories/HeroBanner.stories.tsx +86 -0
- package/src/stories/MemberEquity.stories.tsx +107 -0
- package/src/stories/alert.stories.tsx +41 -0
- package/src/stories/avatar.stories.tsx +83 -0
- package/src/stories/badge.stories.tsx +10 -14
- package/src/stories/brandEquity.stories.tsx +73 -0
- package/src/stories/button.stories.tsx +24 -3
- package/src/stories/card.stories.tsx +97 -0
- package/src/stories/carousel.stories.tsx +161 -0
- package/src/stories/category.stories.tsx +52 -0
- package/src/stories/checkbox.stories.tsx +9 -9
- package/src/stories/container.stories.tsx +97 -0
- package/src/stories/dialog.stories.tsx +8 -8
- package/src/stories/drawer.stories.tsx +88 -0
- package/src/stories/drop-down.stories.tsx +83 -0
- package/src/stories/evaluate.stories.tsx +53 -0
- package/src/stories/grid.stories.tsx +190 -0
- package/src/stories/heading.stories.tsx +4 -8
- package/src/stories/input-number.stories.tsx +52 -0
- package/src/stories/input.stories.tsx +2 -2
- package/src/stories/link.stories.tsx +142 -0
- package/src/stories/marquee.stories.tsx +102 -0
- package/src/stories/picture.stories.tsx +2 -2
- package/src/stories/popover.stories.tsx +2 -2
- package/src/stories/radio.stories.tsx +2 -2
- package/src/stories/shelf.stories.tsx +35 -0
- package/src/stories/shelfDisplay.stories.tsx +69 -0
- package/src/stories/skeleton.stories.tsx +7 -7
- package/src/stories/slogan.stories.tsx +99 -0
- package/src/stories/tabs.stories.tsx +179 -0
- package/src/stories/text.stories.tsx +9 -33
- package/src/styles/global.css +0 -197
- package/src/types/index.ts +0 -0
- package/src/types/props.ts +5 -0
- package/style.css +1091 -734
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import React from 'react'
|
|
2
|
+
|
|
3
|
+
import { cn } from '../../helpers/utils'
|
|
4
|
+
import Picture from '../../components/picture'
|
|
5
|
+
import { withStyles } from '../../shared/Styles.js'
|
|
6
|
+
import type { ComponentCommonProps } from '../../types/props.js'
|
|
7
|
+
|
|
8
|
+
export interface BrandEquityItem {
|
|
9
|
+
icon?: React.ReactNode
|
|
10
|
+
title: string
|
|
11
|
+
description: string
|
|
12
|
+
avatarList?: string[]
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
export interface BrandEquityProps extends ComponentCommonProps {
|
|
16
|
+
items: BrandEquityItem[]
|
|
17
|
+
itemShape?: 'round' | 'square'
|
|
18
|
+
className?: string
|
|
19
|
+
theme?: 'light' | 'dark'
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
const BrandEquity: React.FC<BrandEquityProps> = ({ items = [], itemShape = 'square', style = '', className = '' }) => {
|
|
23
|
+
return (
|
|
24
|
+
<div className={cn('brand-equity-wrapper w-full', className)}>
|
|
25
|
+
<div
|
|
26
|
+
className={cn(
|
|
27
|
+
'grid gap-3 px-4',
|
|
28
|
+
'grid-cols-1 md:grid-cols-2 lg:grid-cols-3',
|
|
29
|
+
'md:gap-4',
|
|
30
|
+
'lg:px-[140px] xl:px-[175px] 2xl:px-[268px]'
|
|
31
|
+
)}
|
|
32
|
+
>
|
|
33
|
+
{items.map((item, index) => (
|
|
34
|
+
<div
|
|
35
|
+
key={index}
|
|
36
|
+
className={cn(
|
|
37
|
+
'brand-equity-item',
|
|
38
|
+
'bg-white p-4 flex flex-col',
|
|
39
|
+
'lg:p-6',
|
|
40
|
+
'gap-12 lg:gap-16',
|
|
41
|
+
itemShape === 'round' ? 'rounded-[16px]' : 'rounded-none'
|
|
42
|
+
)}
|
|
43
|
+
>
|
|
44
|
+
<div className="flex justify-between items-center gap-3">
|
|
45
|
+
<h3 className="text-sm font-semibold text-[#1D1D1F] leading-[1.2] tracking-[-0.02em] 2xl:text-lg">
|
|
46
|
+
{item.title}
|
|
47
|
+
</h3>
|
|
48
|
+
{item.avatarList?.length ? (
|
|
49
|
+
<div className="flex -space-x-2">
|
|
50
|
+
{item.avatarList.map((avatarUrl: string, index: number) => (
|
|
51
|
+
<div
|
|
52
|
+
key={index}
|
|
53
|
+
className={cn(
|
|
54
|
+
'size-[30px] rounded-full border-2 border-white overflow-hidden',
|
|
55
|
+
'relative inline-block',
|
|
56
|
+
'xl:size-[36px]'
|
|
57
|
+
)}
|
|
58
|
+
>
|
|
59
|
+
<Picture source={avatarUrl} className="w-full h-full object-cover" />
|
|
60
|
+
</div>
|
|
61
|
+
))}
|
|
62
|
+
</div>
|
|
63
|
+
) : (
|
|
64
|
+
<span className="text-[#1D1D1F]">{item.icon}</span>
|
|
65
|
+
)}
|
|
66
|
+
</div>
|
|
67
|
+
<p className="font-bold text-xl text-[#1D1D1F] leading-[1.2] tracking-[-0.04em] 2xl:text-2xl">
|
|
68
|
+
{item.description}
|
|
69
|
+
</p>
|
|
70
|
+
</div>
|
|
71
|
+
))}
|
|
72
|
+
</div>
|
|
73
|
+
</div>
|
|
74
|
+
)
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
export default withStyles(BrandEquity)
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default } from './BrandEquity.js'
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import React from 'react'
|
|
2
|
+
import { cn } from '../../helpers/utils'
|
|
3
|
+
import Picture from '../../components/picture'
|
|
4
|
+
|
|
5
|
+
export interface CategoryItem {
|
|
6
|
+
/** 产品图片*/
|
|
7
|
+
img: string
|
|
8
|
+
title: string
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
export interface CategoryProps {
|
|
12
|
+
products: CategoryItem[]
|
|
13
|
+
className?: string
|
|
14
|
+
/** 主题色*/
|
|
15
|
+
theme?: 'light' | 'dark'
|
|
16
|
+
/** 卡片形状 */
|
|
17
|
+
shape?: 'round' | 'square'
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
const Category: React.FC<CategoryProps> = ({
|
|
21
|
+
className = '',
|
|
22
|
+
shape = 'square',
|
|
23
|
+
products = [],
|
|
24
|
+
}) => {
|
|
25
|
+
return (
|
|
26
|
+
<>
|
|
27
|
+
<div className={cn('w-full', className)}>
|
|
28
|
+
<div className={cn('flex overflow-hidden', 'md:px-[140px] lg:px-[268px]')}>
|
|
29
|
+
<div className={cn('w-full flex', 'gap-3 md:gap-4 overflow-x-auto overflow-y-hidden')}>
|
|
30
|
+
{products?.map((item, index) => {
|
|
31
|
+
return (
|
|
32
|
+
<div
|
|
33
|
+
key={index}
|
|
34
|
+
className={cn(
|
|
35
|
+
'bg-[#EAEAEC] p-4 flex flex-col min-w-[167px] max-w-[167px] box-border overflow-hidden',
|
|
36
|
+
'md:min-w-[205px] md:max-w-[205px] lg:min-w-[264px] lg:max-w-[264px] md:p-6 lg:p-8',
|
|
37
|
+
shape === 'round' ? 'rounded-[16px]' : 'rounded-none'
|
|
38
|
+
)}
|
|
39
|
+
>
|
|
40
|
+
<Picture
|
|
41
|
+
className="w-full object-cover"
|
|
42
|
+
source={item?.img}
|
|
43
|
+
/>
|
|
44
|
+
<p className="flex-1 text-sm text-center font-semibold lg:text-lg">
|
|
45
|
+
{item?.title}
|
|
46
|
+
</p>
|
|
47
|
+
</div>
|
|
48
|
+
)
|
|
49
|
+
})}
|
|
50
|
+
</div>
|
|
51
|
+
</div>
|
|
52
|
+
</div>
|
|
53
|
+
</>
|
|
54
|
+
)
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
export default Category
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import React from 'react'
|
|
2
|
+
import { cn } from '../../helpers/utils'
|
|
3
|
+
import Picture from '../../components/picture'
|
|
4
|
+
import { Avatar, AvatarImage, AvatarFallback } from '../../components/avatar'
|
|
5
|
+
|
|
6
|
+
export interface EvaluateItem {
|
|
7
|
+
/** 产品图片*/
|
|
8
|
+
img: string
|
|
9
|
+
title: string
|
|
10
|
+
subTitle: string
|
|
11
|
+
description: string
|
|
12
|
+
avatar?: string
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
export interface EvaluateProps {
|
|
16
|
+
products: EvaluateItem[]
|
|
17
|
+
className?: string
|
|
18
|
+
/** 主题色*/
|
|
19
|
+
theme?: 'light' | 'dark'
|
|
20
|
+
/** 形状 */
|
|
21
|
+
shape?: 'round' | 'square'
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
const Evaluate: React.FC<EvaluateProps> = ({
|
|
25
|
+
className = '',
|
|
26
|
+
shape = 'square',
|
|
27
|
+
products = [],
|
|
28
|
+
}) => {
|
|
29
|
+
return (
|
|
30
|
+
<>
|
|
31
|
+
<div className={cn('w-full', className)}>
|
|
32
|
+
<div className={cn('flex overflow-hidden', 'md:px-[140px] lg:px-[268px]')}>
|
|
33
|
+
<div className={cn('w-full flex', 'gap-3 md:gap-4 overflow-x-auto overflow-y-hidden')}>
|
|
34
|
+
{products?.map((item, index) => {
|
|
35
|
+
return (
|
|
36
|
+
<div
|
|
37
|
+
key={index}
|
|
38
|
+
className={cn(
|
|
39
|
+
'bg-[#EAEAEC] p-4 flex flex-col min-w-[288px] max-w-[288px] box-border overflow-hidden',
|
|
40
|
+
'md:min-w-[316px] md:max-w-[316px] lg:min-w-[404px] lg:max-w-[404px] lg:pt-4 lg:px-6 lg:pb-6',
|
|
41
|
+
shape === 'round' ? 'rounded-2xl' : 'rounded-none'
|
|
42
|
+
)}
|
|
43
|
+
>
|
|
44
|
+
<div className={cn('mb-8 w-full flex justify-between md:mb-11 lg:mb-16')}>
|
|
45
|
+
<div className="flex-1">
|
|
46
|
+
<h4 className="text-sm font-semibold md:text-lg">{item?.title}</h4>
|
|
47
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16" fill="none">
|
|
48
|
+
<path
|
|
49
|
+
d="M7.32745 1.36274C7.60256 0.805304 8.39744 0.805305 8.67255 1.36274L10.1766 4.41035C10.2859 4.63171 10.4971 4.78514 10.7413 4.82063L14.1046 5.30934C14.7197 5.39873 14.9654 6.15471 14.5202 6.58861L12.0866 8.96084C11.9098 9.13315 11.8292 9.3814 11.8709 9.62469L12.4454 12.9743C12.5505 13.587 11.9074 14.0542 11.3572 13.765L8.349 12.1835C8.13051 12.0686 7.86949 12.0686 7.65099 12.1835L4.64282 13.765C4.0926 14.0542 3.44953 13.587 3.55461 12.9743L4.12912 9.62469C4.17085 9.3814 4.09019 9.13315 3.91342 8.96084L1.47976 6.58861C1.03462 6.15471 1.28025 5.39873 1.89542 5.30934L5.25866 4.82063C5.50294 4.78514 5.71412 4.63171 5.82336 4.41035L7.32745 1.36274Z"
|
|
50
|
+
fill="#F77234"
|
|
51
|
+
/>
|
|
52
|
+
</svg>
|
|
53
|
+
</div>
|
|
54
|
+
<div className="size-10 overflow-hidden lg:size-12">
|
|
55
|
+
<Avatar className="w-full h-full">
|
|
56
|
+
<AvatarImage src={item?.avatar} />
|
|
57
|
+
<AvatarFallback>{item?.title}</AvatarFallback>
|
|
58
|
+
</Avatar>
|
|
59
|
+
</div>
|
|
60
|
+
</div>
|
|
61
|
+
<p className="flex-1 line-clamp-6 font-bold text-xl text-[#1D1D1F] lg:text-2xl">
|
|
62
|
+
{item?.description || ''}
|
|
63
|
+
</p>
|
|
64
|
+
<div className={cn('mt-11 p-3 flex items-center bg-[#F7F8F9] overflow-hidden', shape === 'round' ? 'rounded-[8px]' : 'rounded-none')}>
|
|
65
|
+
<div className="flex items-center mr-3 size-12 md:size-16 lg:size-20">
|
|
66
|
+
<Picture
|
|
67
|
+
className="w-full object-cover"
|
|
68
|
+
source={item?.img}
|
|
69
|
+
/>
|
|
70
|
+
</div>
|
|
71
|
+
<p className="flex-1 text-sm font-semibold line-clamp-2 lg:text-lg">
|
|
72
|
+
{item?.subTitle || ''}
|
|
73
|
+
</p>
|
|
74
|
+
</div>
|
|
75
|
+
</div>
|
|
76
|
+
)
|
|
77
|
+
})}
|
|
78
|
+
</div>
|
|
79
|
+
</div>
|
|
80
|
+
</div>
|
|
81
|
+
</>
|
|
82
|
+
)
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
export default Evaluate
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
import React from "react"
|
|
2
|
+
import type { HeroBannerProps } from "./types.js"
|
|
3
|
+
import { Button, Text } from "../../components/index.js"
|
|
4
|
+
import { cn } from "../../helpers/index.js"
|
|
5
|
+
import { withStyles } from "../../shared/Styles.js"
|
|
6
|
+
|
|
7
|
+
const HeroBanner = React.forwardRef<HTMLDivElement, HeroBannerProps>(
|
|
8
|
+
({
|
|
9
|
+
title,
|
|
10
|
+
subtitle,
|
|
11
|
+
background,
|
|
12
|
+
primaryButton,
|
|
13
|
+
secondaryButton,
|
|
14
|
+
theme = "light",
|
|
15
|
+
className,
|
|
16
|
+
products = []
|
|
17
|
+
}, ref) => {
|
|
18
|
+
const textColorClass = theme === "dark" ? "text-white" : "text-[#1D1D1F]"
|
|
19
|
+
const dividerColorClass = theme === "dark" ? "bg-white" : "bg-[#1D1D1F]"
|
|
20
|
+
|
|
21
|
+
return (
|
|
22
|
+
<div
|
|
23
|
+
ref={ref}
|
|
24
|
+
className={cn(
|
|
25
|
+
"relative flex min-h-[720px] w-full flex-col justify-between overflow-hidden bg-cover bg-center bg-no-repeat",
|
|
26
|
+
className
|
|
27
|
+
)}
|
|
28
|
+
style={{ backgroundImage: `url(${background})` }}
|
|
29
|
+
>
|
|
30
|
+
{/* 内容区域 */}
|
|
31
|
+
<div className="relative z-10 flex flex-col gap-8 px-32 pt-[307px]">
|
|
32
|
+
<div className="max-w-[686px] space-y-4">
|
|
33
|
+
<h1 className={cn(
|
|
34
|
+
"hero-banner-title font-mont text-[64px] font-bold leading-none tracking-[-0.04em]",
|
|
35
|
+
textColorClass
|
|
36
|
+
)}>
|
|
37
|
+
{title}
|
|
38
|
+
</h1>
|
|
39
|
+
<p className={cn(
|
|
40
|
+
"hero-banner-subtitle text-lg font-medium leading-[1.2] tracking-[-0.02em]",
|
|
41
|
+
textColorClass
|
|
42
|
+
)}>
|
|
43
|
+
{subtitle}
|
|
44
|
+
</p>
|
|
45
|
+
</div>
|
|
46
|
+
|
|
47
|
+
{/* 按钮组 */}
|
|
48
|
+
<div className="flex items-center gap-4">
|
|
49
|
+
{secondaryButton && (
|
|
50
|
+
<Button
|
|
51
|
+
size="lg"
|
|
52
|
+
variant="nature"
|
|
53
|
+
theme={theme}
|
|
54
|
+
className="hero-banner-primary-button"
|
|
55
|
+
{...secondaryButton}
|
|
56
|
+
>
|
|
57
|
+
{secondaryButton.text}
|
|
58
|
+
</Button>
|
|
59
|
+
)}
|
|
60
|
+
{primaryButton && (
|
|
61
|
+
<Button
|
|
62
|
+
size="lg"
|
|
63
|
+
variant="secondary"
|
|
64
|
+
theme={theme}
|
|
65
|
+
{...primaryButton}
|
|
66
|
+
className="hero-banner-secondary-button bg-transparent border-black text-black hover:bg-black hover:text-white"
|
|
67
|
+
>
|
|
68
|
+
{primaryButton.text}
|
|
69
|
+
</Button>
|
|
70
|
+
)}
|
|
71
|
+
</div>
|
|
72
|
+
</div>
|
|
73
|
+
|
|
74
|
+
{/* 底部产品列表 */}
|
|
75
|
+
{products.length > 0 && (
|
|
76
|
+
<div className="relative z-10 flex items-center gap-3 px-32 pb-6">
|
|
77
|
+
{products.map((product, index) => (
|
|
78
|
+
<React.Fragment key={index}>
|
|
79
|
+
<Text
|
|
80
|
+
className={cn(
|
|
81
|
+
"hero-banner-product-text text-sm font-medium leading-[1.2] tracking-[-0.02em]",
|
|
82
|
+
theme === "dark" ? "text-white" : "text-[#1D1D1F]"
|
|
83
|
+
)}
|
|
84
|
+
>
|
|
85
|
+
{product.title}
|
|
86
|
+
</Text>
|
|
87
|
+
{index < products.length - 1 && (
|
|
88
|
+
<div className={cn("h-4 w-px", dividerColorClass)} />
|
|
89
|
+
)}
|
|
90
|
+
</React.Fragment>
|
|
91
|
+
))}
|
|
92
|
+
</div>
|
|
93
|
+
)}
|
|
94
|
+
</div>
|
|
95
|
+
)
|
|
96
|
+
}
|
|
97
|
+
)
|
|
98
|
+
|
|
99
|
+
HeroBanner.displayName = "HeroBanner"
|
|
100
|
+
|
|
101
|
+
export default withStyles(HeroBanner)
|
|
102
|
+
|
|
103
|
+
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default } from './HeroBanner.js'
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { ButtonProps } from "../../components/button"
|
|
2
|
+
|
|
3
|
+
export interface HeroBannerProps {
|
|
4
|
+
/** 主标题 */
|
|
5
|
+
title: string
|
|
6
|
+
/** 副标题/描述文本 */
|
|
7
|
+
subtitle: string
|
|
8
|
+
/** 背景图片URL */
|
|
9
|
+
background: string
|
|
10
|
+
/** 主按钮文本和配置 */
|
|
11
|
+
primaryButton?: {
|
|
12
|
+
text: string
|
|
13
|
+
} & Omit<ButtonProps, 'children'>
|
|
14
|
+
/** 次要按钮文本和配置 */
|
|
15
|
+
secondaryButton?: {
|
|
16
|
+
text: string
|
|
17
|
+
} & Omit<ButtonProps, 'children'>
|
|
18
|
+
/** 自定义类名 */
|
|
19
|
+
className?: string
|
|
20
|
+
/** 主题 */
|
|
21
|
+
theme?: "light" | "dark"
|
|
22
|
+
/** 底部产品列表 */
|
|
23
|
+
products?: Array<{
|
|
24
|
+
title: string
|
|
25
|
+
active?: boolean
|
|
26
|
+
}>
|
|
27
|
+
}
|
|
28
|
+
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import React from 'react'
|
|
2
|
+
import { cn } from '../../helpers/utils.js'
|
|
3
|
+
import { default as FastMarquee } from 'react-fast-marquee'
|
|
4
|
+
import { type MarqueeProps as FastMarqueeProps } from 'react-fast-marquee'
|
|
5
|
+
import { Picture, Text } from '../../components'
|
|
6
|
+
|
|
7
|
+
const Marquee = React.forwardRef<HTMLDivElement, FastMarqueeProps>(
|
|
8
|
+
({children, ...props}, ref) => {
|
|
9
|
+
return (
|
|
10
|
+
<FastMarquee
|
|
11
|
+
ref={ref}
|
|
12
|
+
{...props}
|
|
13
|
+
>
|
|
14
|
+
{children}
|
|
15
|
+
</FastMarquee>
|
|
16
|
+
)
|
|
17
|
+
}
|
|
18
|
+
)
|
|
19
|
+
|
|
20
|
+
Marquee.displayName = 'Marquee'
|
|
21
|
+
|
|
22
|
+
interface MarqueeListProps {
|
|
23
|
+
children?: React.ReactNode;
|
|
24
|
+
className?: string;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
const MarqueeList = React.forwardRef<
|
|
28
|
+
HTMLDivElement,
|
|
29
|
+
MarqueeListProps
|
|
30
|
+
>(({ className, children, ...props }, ref) => {
|
|
31
|
+
return (
|
|
32
|
+
<div className={cn("flex gap-6 items-center md:gap-16", className)} ref={ref}>
|
|
33
|
+
{children}
|
|
34
|
+
</div>
|
|
35
|
+
)
|
|
36
|
+
})
|
|
37
|
+
|
|
38
|
+
MarqueeList.displayName = 'MarqueeList'
|
|
39
|
+
|
|
40
|
+
interface MarqueeImageContentProps {
|
|
41
|
+
image: string
|
|
42
|
+
className?: string;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
const MarqueeImageContent = ({ image, className }: MarqueeImageContentProps) => {
|
|
46
|
+
return (
|
|
47
|
+
<Picture
|
|
48
|
+
source={image}
|
|
49
|
+
className={cn("aspect-w-[120] w-[72px] aspect-h-[80] md:w-[120px]", className)}
|
|
50
|
+
imgClassName="object-cover"
|
|
51
|
+
/>
|
|
52
|
+
)
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
MarqueeImageContent.displayName = 'MarqueeImageContent'
|
|
56
|
+
|
|
57
|
+
interface MarqueeTextContentProps {
|
|
58
|
+
text: string
|
|
59
|
+
className?: string;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
const MarqueeTextContent = React.forwardRef<
|
|
63
|
+
HTMLDivElement,
|
|
64
|
+
MarqueeTextContentProps
|
|
65
|
+
>(({ text, className }, ref) => {
|
|
66
|
+
return (
|
|
67
|
+
<Text
|
|
68
|
+
as="div"
|
|
69
|
+
ref={ref}
|
|
70
|
+
html={text}
|
|
71
|
+
className={cn("size-14 text-nowrap flex items-center justify-center leading-[1.2] text-lines-2 font-medium", className)}
|
|
72
|
+
/>
|
|
73
|
+
)
|
|
74
|
+
})
|
|
75
|
+
|
|
76
|
+
MarqueeTextContent.displayName = 'MarqueeTextContent'
|
|
77
|
+
|
|
78
|
+
export { Marquee, MarqueeList, MarqueeImageContent, MarqueeTextContent }
|
|
79
|
+
export type { FastMarqueeProps, MarqueeListProps, MarqueeImageContentProps, MarqueeTextContentProps }
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { Button } from '../../components/index.js';
|
|
3
|
+
import { withStyles } from '../../shared/Styles.js';
|
|
4
|
+
import type { MemberEquityProps } from './types.js';
|
|
5
|
+
|
|
6
|
+
const MemberEquity: React.FC<MemberEquityProps> = ({
|
|
7
|
+
title,
|
|
8
|
+
description,
|
|
9
|
+
backgroundImage,
|
|
10
|
+
primaryButton,
|
|
11
|
+
secondaryButton,
|
|
12
|
+
shape = 'square',
|
|
13
|
+
theme = 'light',
|
|
14
|
+
className = '',
|
|
15
|
+
}) => {
|
|
16
|
+
|
|
17
|
+
const handleButtonPrimaryClick = () => {
|
|
18
|
+
// 执行主按钮的点击事件
|
|
19
|
+
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
const handleButtonSecondaryClick = () => {
|
|
23
|
+
// 执行副按钮的点击事件
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
return (
|
|
27
|
+
<section
|
|
28
|
+
data-ui-component-id="MemberEquity"
|
|
29
|
+
className={`
|
|
30
|
+
relative w-full overflow-hidden bg-[#242426]
|
|
31
|
+
${shape === 'round' ? 'rounded-none sm:rounded-lg md:rounded-xl lg:rounded-2xl' : ''}
|
|
32
|
+
${className}
|
|
33
|
+
`}
|
|
34
|
+
>
|
|
35
|
+
|
|
36
|
+
<div
|
|
37
|
+
className="absolute inset-0 w-full h-full"
|
|
38
|
+
style={{
|
|
39
|
+
backgroundImage: `
|
|
40
|
+
radial-gradient(circle at 70% 176%, rgba(84, 85, 87, 0) 72%, rgba(84, 85, 87, 1) 100%),
|
|
41
|
+
url(${backgroundImage})
|
|
42
|
+
`,
|
|
43
|
+
backgroundSize: 'cover',
|
|
44
|
+
backgroundPosition: 'center',
|
|
45
|
+
}}
|
|
46
|
+
/>
|
|
47
|
+
<div className={`
|
|
48
|
+
relative w-full mx-auto
|
|
49
|
+
aspect-[343/200] xs:aspect-[343/200]
|
|
50
|
+
sm:aspect-[343/200]
|
|
51
|
+
md:aspect-[592/336]
|
|
52
|
+
lg:aspect-[800/448]
|
|
53
|
+
xl:aspect-[1000/560]
|
|
54
|
+
flex items-center
|
|
55
|
+
`}>
|
|
56
|
+
<div className={`
|
|
57
|
+
w-full px-4 sm:px-6 md:px-[76px] lg:px-[111px] xl:px-[139px]
|
|
58
|
+
flex flex-col gap-4 sm:gap-5 md:gap-6 lg:gap-7 xl:gap-8
|
|
59
|
+
`}>
|
|
60
|
+
<div className="flex flex-col gap-2 sm:gap-2 md:gap-3 lg:gap-3 xl:gap-4">
|
|
61
|
+
<h2 className={`
|
|
62
|
+
member-equity-title font-mont font-bold text-white tracking-[-0.04em]
|
|
63
|
+
text-xl sm:text-2xl md:text-3xl lg:text-4xl xl:text-[32px]
|
|
64
|
+
leading-[1.2]
|
|
65
|
+
max-w-[280px] sm:max-w-[300px] md:max-w-[400px] lg:max-w-[500px] xl:max-w-[547px]
|
|
66
|
+
`}>
|
|
67
|
+
{title}
|
|
68
|
+
</h2>
|
|
69
|
+
<p className={`
|
|
70
|
+
member-equity-description font-pingfang font-semibold text-white tracking-[-0.02em]
|
|
71
|
+
text-sm sm:text-sm md:text-base lg:text-lg xl:text-lg
|
|
72
|
+
leading-[1.4]
|
|
73
|
+
max-w-[260px] sm:max-w-[286px] md:max-w-[350px] lg:max-w-[426px] xl:max-w-[547px]
|
|
74
|
+
`}>
|
|
75
|
+
{description}
|
|
76
|
+
</p>
|
|
77
|
+
</div>
|
|
78
|
+
|
|
79
|
+
{/* 按钮组 */}
|
|
80
|
+
<div className="flex items-center gap-3 sm:gap-3 md:gap-4 lg:gap-4 xl:gap-4">
|
|
81
|
+
<Button
|
|
82
|
+
theme={theme}
|
|
83
|
+
variant="primary"
|
|
84
|
+
onClick={handleButtonPrimaryClick}
|
|
85
|
+
className={`
|
|
86
|
+
member-equity-button-primary bg-transparent border-white border-[1px] text-white text-xs sm:text-sm md:text-sm lg:text-base xl:text-base
|
|
87
|
+
px-4 sm:px-5 md:px-6 lg:px-7 xl:px-7 hover:bg-white hover:text-black
|
|
88
|
+
py-2 sm:py-[10px] md:py-[11px] lg:py-[12px] xl:py-[14px]
|
|
89
|
+
${shape === 'round' ? 'rounded-[16px] sm:rounded-[19px] md:rounded-[20px] lg:rounded-[22px] xl:rounded-[24px]' : ''}
|
|
90
|
+
`}
|
|
91
|
+
>
|
|
92
|
+
{primaryButton.text}
|
|
93
|
+
</Button>
|
|
94
|
+
<Button
|
|
95
|
+
theme={theme}
|
|
96
|
+
variant="secondary"
|
|
97
|
+
onClick={handleButtonSecondaryClick}
|
|
98
|
+
className={`
|
|
99
|
+
member-equity-button-secondary text-xs sm:text-sm md:text-sm lg:text-base xl:text-base
|
|
100
|
+
px-4 sm:px-5 md:px-6 lg:px-7 xl:px-7
|
|
101
|
+
py-2 sm:py-[10px] md:py-[11px] lg:py-[12px] xl:py-[14px]
|
|
102
|
+
${shape === 'round' ? 'rounded-[16px] sm:rounded-[19px] md:rounded-[20px] lg:rounded-[22px] xl:rounded-[24px]' : ''}
|
|
103
|
+
`}
|
|
104
|
+
>
|
|
105
|
+
{secondaryButton.text}
|
|
106
|
+
</Button>
|
|
107
|
+
</div>
|
|
108
|
+
</div>
|
|
109
|
+
</div>
|
|
110
|
+
</section>
|
|
111
|
+
);
|
|
112
|
+
};
|
|
113
|
+
|
|
114
|
+
export default withStyles(MemberEquity);
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { ComponentCommonProps } from '../../types/props.js';
|
|
2
|
+
|
|
3
|
+
export interface MemberEquityProps extends ComponentCommonProps {
|
|
4
|
+
/** 标题 */
|
|
5
|
+
title: string;
|
|
6
|
+
/** 描述文本 */
|
|
7
|
+
description: string;
|
|
8
|
+
/** 背景图片 URL */
|
|
9
|
+
backgroundImage: string;
|
|
10
|
+
/** 主按钮配置 */
|
|
11
|
+
primaryButton: {
|
|
12
|
+
text: string;
|
|
13
|
+
href: string;
|
|
14
|
+
};
|
|
15
|
+
/** 副按钮配置 */
|
|
16
|
+
secondaryButton: {
|
|
17
|
+
text: string;
|
|
18
|
+
href: string;
|
|
19
|
+
};
|
|
20
|
+
/** 形状 */
|
|
21
|
+
shape?: 'round' | 'square';
|
|
22
|
+
/** 主题 */
|
|
23
|
+
theme?: 'light' | 'dark';
|
|
24
|
+
/** 自定义类名 */
|
|
25
|
+
className?: string;
|
|
26
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 这是一个demo 模版
|
|
3
|
+
*/
|
|
4
|
+
import { withStyles } from '../../shared/Styles.js'
|
|
5
|
+
import type { ShelfProps } from './types.js'
|
|
6
|
+
|
|
7
|
+
const Shelf = (props: ShelfProps) => {
|
|
8
|
+
console.log('~ Shelf props', props)
|
|
9
|
+
return (
|
|
10
|
+
<div>
|
|
11
|
+
<h1 className="text-2xl font-bold">{props.title}</h1>
|
|
12
|
+
<h2>{props.subtitle}</h2>
|
|
13
|
+
<div>
|
|
14
|
+
{props.products.map(product => (
|
|
15
|
+
<div key={product.sku}>{product.name}</div>
|
|
16
|
+
))}
|
|
17
|
+
</div>
|
|
18
|
+
</div>
|
|
19
|
+
)
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
export default withStyles(Shelf)
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default } from './Shelf.js'
|