@anker-in/headless-ui 0.0.25 → 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 +3 -3
- package/dist/cjs/components/heading.js +1 -1
- package/dist/cjs/components/heading.js.map +3 -3
- 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 +3 -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 +4 -4
- 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 +5 -5
- 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 +3 -3
- package/dist/esm/components/heading.js +1 -1
- package/dist/esm/components/heading.js.map +3 -3
- 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 +3 -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 +4 -4
- 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 +5 -5
- 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 +41 -25
- 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 +24 -29
- 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 +24 -30
- 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 -2
- 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 +6 -10
- 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 +18 -22
- package/src/styles/global.css +0 -199
- package/src/types/index.ts +0 -0
- package/src/types/props.ts +5 -0
- package/style.css +1092 -748
|
@@ -0,0 +1,216 @@
|
|
|
1
|
+
'use client'
|
|
2
|
+
import { cn } from '../helpers/index.js'
|
|
3
|
+
import { Slot } from '@radix-ui/react-slot'
|
|
4
|
+
import { PlusIcon, MinusIcon } from '@radix-ui/react-icons'
|
|
5
|
+
import React, { useState, useEffect, forwardRef } from 'react'
|
|
6
|
+
import type { ChangeEvent, KeyboardEvent, FocusEvent } from 'react'
|
|
7
|
+
import { type VariantProps, cva } from 'class-variance-authority'
|
|
8
|
+
import type { ComponentPropsWithout, RemovedProps } from '../helpers/component-props.js'
|
|
9
|
+
|
|
10
|
+
// 定义 InputNumber 的样式变体
|
|
11
|
+
const InputNumberVariants = cva('size-full border bg-transparent text-center text-base outline-none', {
|
|
12
|
+
variants: {
|
|
13
|
+
status: {
|
|
14
|
+
default: 'border-lines-1 group-hover:border-lines-2',
|
|
15
|
+
success: 'border-lines-3 group-hover:border-lines-3',
|
|
16
|
+
warning: 'border-lines-4 group-hover:border-lines-4',
|
|
17
|
+
error: 'border-lines-5 group-hover:border-lines-5',
|
|
18
|
+
},
|
|
19
|
+
disabled: {
|
|
20
|
+
true: 'border-lines-1 group-hover:border-lines-1 text-info-quaternary cursor-not-allowed',
|
|
21
|
+
},
|
|
22
|
+
},
|
|
23
|
+
})
|
|
24
|
+
|
|
25
|
+
type ColorType = 'default' | 'success' | 'warning' | 'error' | null
|
|
26
|
+
|
|
27
|
+
// 定义组件类型,继承 div 标签标准属性
|
|
28
|
+
type InputNumberElement = React.ElementRef<'div'>
|
|
29
|
+
|
|
30
|
+
type InputNumberProps = {
|
|
31
|
+
/** 定义子组件作为父组件的类型,详细使用方式请参考radix-ui */
|
|
32
|
+
asChild?: boolean
|
|
33
|
+
/** 类名*/
|
|
34
|
+
className?: string
|
|
35
|
+
/** 输入框下方提示文本,会根据不同的 status 呈现不同的样式*/
|
|
36
|
+
tips?: string
|
|
37
|
+
/** 文本框状态*/
|
|
38
|
+
status?: ColorType
|
|
39
|
+
/** 数字输入框的值 */
|
|
40
|
+
value?: number
|
|
41
|
+
/** 数字输入框的初始值 */
|
|
42
|
+
defaultValue?: number
|
|
43
|
+
/** 数值改变步数 */
|
|
44
|
+
step?: number
|
|
45
|
+
/** 最小值 */
|
|
46
|
+
min?: number
|
|
47
|
+
/** 最大值 */
|
|
48
|
+
max?: number
|
|
49
|
+
/** 是否禁用*/
|
|
50
|
+
disabled?: boolean
|
|
51
|
+
/** 是否只读*/
|
|
52
|
+
readonly?: boolean
|
|
53
|
+
/** 样式*/
|
|
54
|
+
style?: React.CSSProperties
|
|
55
|
+
/** 值变化时触发*/
|
|
56
|
+
onChange?: (value: number) => void
|
|
57
|
+
/** 失去焦点时触发*/
|
|
58
|
+
onBlur?: (value: number, e: FocusEvent) => void
|
|
59
|
+
/** 按下回车键时触发*/
|
|
60
|
+
onEnter?: (value: number, e: KeyboardEvent) => void
|
|
61
|
+
} & VariantProps<typeof InputNumberVariants> &
|
|
62
|
+
ComponentPropsWithout<'div', RemovedProps>
|
|
63
|
+
|
|
64
|
+
const InputNumber = forwardRef<InputNumberElement, InputNumberProps>(
|
|
65
|
+
(
|
|
66
|
+
{
|
|
67
|
+
value,
|
|
68
|
+
defaultValue = 0,
|
|
69
|
+
step = 1,
|
|
70
|
+
min = 0,
|
|
71
|
+
max,
|
|
72
|
+
tips,
|
|
73
|
+
style,
|
|
74
|
+
children,
|
|
75
|
+
asChild = false,
|
|
76
|
+
disabled = false,
|
|
77
|
+
readonly = false,
|
|
78
|
+
status = 'default',
|
|
79
|
+
className,
|
|
80
|
+
onChange,
|
|
81
|
+
onBlur,
|
|
82
|
+
onEnter,
|
|
83
|
+
},
|
|
84
|
+
ref
|
|
85
|
+
) => {
|
|
86
|
+
const [inputValue, setInputValue] = useState<number | string>(defaultValue)
|
|
87
|
+
|
|
88
|
+
const Comp = asChild ? Slot : 'div'
|
|
89
|
+
|
|
90
|
+
const baseClassName = cn('border-lines-1 flex size-12 items-center justify-center border text-base', {
|
|
91
|
+
'group-hover:border-lines-2': !disabled,
|
|
92
|
+
'text-info-quaternary cursor-not-allowed': disabled,
|
|
93
|
+
})
|
|
94
|
+
|
|
95
|
+
const textColor = (type: ColorType, flag: boolean) => {
|
|
96
|
+
if (flag) return 'text-lines-1'
|
|
97
|
+
return {
|
|
98
|
+
default: 'text-lines-1',
|
|
99
|
+
success: 'text-lines-3',
|
|
100
|
+
warning: 'text-lines-4',
|
|
101
|
+
error: 'text-lines-5',
|
|
102
|
+
}[type || 'default']
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
const isValue = (params: string) => {
|
|
106
|
+
return params === '' || /^[0-9]+$/.test(params)
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
const handleInputChange = (e: ChangeEvent<HTMLInputElement>) => {
|
|
110
|
+
if (disabled || readonly) return
|
|
111
|
+
const value = e.target.value
|
|
112
|
+
// 允许空字符串,或仅包含整数的字符串
|
|
113
|
+
if (isValue(value)) {
|
|
114
|
+
setInputValue(value)
|
|
115
|
+
if (value !== '') {
|
|
116
|
+
let newValue = Number(value)
|
|
117
|
+
if (max !== undefined && newValue > max) {
|
|
118
|
+
newValue = max
|
|
119
|
+
}
|
|
120
|
+
if (min !== undefined && newValue < min) {
|
|
121
|
+
newValue = min
|
|
122
|
+
}
|
|
123
|
+
onChange?.(newValue)
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
const handleBlur = (e: FocusEvent<HTMLInputElement>) => {
|
|
129
|
+
if (disabled || readonly) return
|
|
130
|
+
if (inputValue === '' || isNaN(Number(inputValue))) {
|
|
131
|
+
const newValue = min !== undefined ? min : 0
|
|
132
|
+
setInputValue(newValue)
|
|
133
|
+
onBlur?.(newValue, e)
|
|
134
|
+
} else {
|
|
135
|
+
const newValue = Number(inputValue)
|
|
136
|
+
setInputValue(newValue)
|
|
137
|
+
onBlur?.(newValue, e)
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
const increment = () => {
|
|
142
|
+
if (disabled || readonly) return
|
|
143
|
+
let newValue = Number(inputValue) + (step ? Math.ceil(Number(step)) : 1)
|
|
144
|
+
if (max !== undefined && newValue > max) {
|
|
145
|
+
newValue = max
|
|
146
|
+
}
|
|
147
|
+
setInputValue(newValue)
|
|
148
|
+
onChange?.(newValue)
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
const decrement = () => {
|
|
152
|
+
if (disabled || readonly) return
|
|
153
|
+
let newValue = Number(inputValue) - (step ? Math.ceil(Number(step)) : 1)
|
|
154
|
+
if (min !== undefined && newValue < min) {
|
|
155
|
+
newValue = min
|
|
156
|
+
}
|
|
157
|
+
setInputValue(newValue)
|
|
158
|
+
onChange?.(newValue)
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
const handleKeyDown = (e: any) => {
|
|
162
|
+
if (disabled || readonly) return
|
|
163
|
+
if (e.key === 'Enter') {
|
|
164
|
+
const initalValue = e.target?.value
|
|
165
|
+
onEnter?.(initalValue, e)
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
useEffect(() => {
|
|
170
|
+
setInputValue(value || 0)
|
|
171
|
+
}, [value])
|
|
172
|
+
|
|
173
|
+
return (
|
|
174
|
+
<Comp
|
|
175
|
+
ref={ref}
|
|
176
|
+
{...(style ? { style: style } : null)}
|
|
177
|
+
className={cn({ 'group flex items-center': !asChild }, className)}
|
|
178
|
+
>
|
|
179
|
+
{asChild ? (
|
|
180
|
+
children
|
|
181
|
+
) : (
|
|
182
|
+
<>
|
|
183
|
+
<button onClick={increment} className={baseClassName}>
|
|
184
|
+
<PlusIcon />
|
|
185
|
+
</button>
|
|
186
|
+
<div className="relative mx-1.5 h-[52px] w-[105px]">
|
|
187
|
+
<input
|
|
188
|
+
type="text"
|
|
189
|
+
value={inputValue}
|
|
190
|
+
disabled={disabled}
|
|
191
|
+
readOnly={readonly}
|
|
192
|
+
onBlur={handleBlur}
|
|
193
|
+
onKeyDown={handleKeyDown}
|
|
194
|
+
onChange={handleInputChange}
|
|
195
|
+
className={cn(InputNumberVariants({ status, disabled }))}
|
|
196
|
+
/>
|
|
197
|
+
{tips ? (
|
|
198
|
+
<span className={cn(textColor(status, disabled), 'absolute -bottom-4 left-0 w-full truncate text-xs')}>
|
|
199
|
+
{tips}
|
|
200
|
+
</span>
|
|
201
|
+
) : null}
|
|
202
|
+
</div>
|
|
203
|
+
<button onClick={decrement} className={baseClassName}>
|
|
204
|
+
<MinusIcon />
|
|
205
|
+
</button>
|
|
206
|
+
</>
|
|
207
|
+
)}
|
|
208
|
+
</Comp>
|
|
209
|
+
)
|
|
210
|
+
}
|
|
211
|
+
)
|
|
212
|
+
|
|
213
|
+
InputNumber.displayName = 'InputNumber'
|
|
214
|
+
|
|
215
|
+
export default InputNumber
|
|
216
|
+
export type { InputNumberProps }
|
package/src/components/input.tsx
CHANGED
|
@@ -6,13 +6,13 @@ import type { ComponentPropsWithout, RemovedProps } from '../helpers/component-p
|
|
|
6
6
|
import { cva, type VariantProps } from 'class-variance-authority'
|
|
7
7
|
|
|
8
8
|
const inputVariants = cva(
|
|
9
|
-
'
|
|
9
|
+
'border-input w-full bg-background focus-visible:outline-none flex flex-row items-center overflow-hidden rounded-md border',
|
|
10
10
|
{
|
|
11
11
|
variants: {
|
|
12
12
|
size: {
|
|
13
|
-
sm: '
|
|
14
|
-
base: '
|
|
15
|
-
lg: '
|
|
13
|
+
sm: 'h-8 text-sm',
|
|
14
|
+
base: 'h-10',
|
|
15
|
+
lg: 'h-12 text-lg',
|
|
16
16
|
},
|
|
17
17
|
},
|
|
18
18
|
defaultVariants: {
|
|
@@ -43,9 +43,9 @@ const InputSlot = React.forwardRef<InputSlotElement, InputSlotProps>((props, for
|
|
|
43
43
|
<div
|
|
44
44
|
ref={forwardedRef}
|
|
45
45
|
{...slotProps}
|
|
46
|
-
className={cn('
|
|
47
|
-
'-
|
|
48
|
-
'
|
|
46
|
+
className={cn('flex h-full items-center', className, {
|
|
47
|
+
'-order-1': side === 'left',
|
|
48
|
+
'order-2': side === 'right',
|
|
49
49
|
})}
|
|
50
50
|
>
|
|
51
51
|
{children}
|
|
@@ -56,14 +56,14 @@ const InputSlot = React.forwardRef<InputSlotElement, InputSlotProps>((props, for
|
|
|
56
56
|
const Input = React.forwardRef<React.ElementRef<'input'>, InputProps>(
|
|
57
57
|
({ className, type, size, children, ...props }, ref) => {
|
|
58
58
|
if (!React.isValidElement(children)) {
|
|
59
|
-
return <input type={type} className={cn(inputVariants({ size }), '
|
|
59
|
+
return <input type={type} className={cn(inputVariants({ size }), 'px-3', className)} ref={ref} {...props} />
|
|
60
60
|
}
|
|
61
61
|
return (
|
|
62
62
|
<div className={cn(inputVariants({ size }), className)}>
|
|
63
63
|
<input
|
|
64
64
|
type={type}
|
|
65
65
|
className={cn(
|
|
66
|
-
'placeholder:
|
|
66
|
+
'placeholder:text-muted-foreground flex size-full file:border-0 file:bg-transparent file:font-medium focus-visible:outline-none disabled:cursor-not-allowed disabled:opacity-50 px-3'
|
|
67
67
|
)}
|
|
68
68
|
ref={ref}
|
|
69
69
|
{...props}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import React from 'react'
|
|
2
|
+
import type { ReactNode } from 'react'
|
|
3
|
+
import { Slot } from '@radix-ui/react-slot'
|
|
4
|
+
import { cn } from '../helpers/index.js'
|
|
5
|
+
import { type VariantProps, cva } from 'class-variance-authority'
|
|
6
|
+
import type { ComponentPropsWithout, RemovedProps } from '../helpers/component-props.js'
|
|
7
|
+
|
|
8
|
+
// 定义 link 的样式变体
|
|
9
|
+
const linkVariants = cva('tracking transition-colors', {
|
|
10
|
+
variants: {
|
|
11
|
+
size: {
|
|
12
|
+
small: 'text-xs', // 小
|
|
13
|
+
medium: 'text-sm', // 中
|
|
14
|
+
large: 'text-base', // 大
|
|
15
|
+
},
|
|
16
|
+
underline: {
|
|
17
|
+
none: 'no-underline', // 不展示
|
|
18
|
+
hover: 'hover:underline', // hover展示下划线
|
|
19
|
+
always: 'underline', // 永久展示
|
|
20
|
+
},
|
|
21
|
+
hoverColor: {
|
|
22
|
+
none: 'text-current', // 鼠标进入无变化
|
|
23
|
+
hover: 'hover:text-brand-0', // 鼠标进入改变字体颜色
|
|
24
|
+
},
|
|
25
|
+
},
|
|
26
|
+
})
|
|
27
|
+
// 定义组件类型,继承 a 标签标准属性
|
|
28
|
+
type LinkElement = React.ElementRef<'a'>
|
|
29
|
+
type LinkProps = {
|
|
30
|
+
/** 定义子组件作为父组件的类型,详细使用方式请参考radix-ui */
|
|
31
|
+
asChild?: boolean
|
|
32
|
+
/** 类名*/
|
|
33
|
+
className?: string
|
|
34
|
+
/** 禁用链接 */
|
|
35
|
+
disabled?: boolean
|
|
36
|
+
/** 后置图标*/
|
|
37
|
+
suffixIcon?: ReactNode
|
|
38
|
+
/** 跳转链接*/
|
|
39
|
+
href?: string
|
|
40
|
+
/** 样式*/
|
|
41
|
+
style?: React.CSSProperties
|
|
42
|
+
/** 点击事件,禁用状态无法触发*/
|
|
43
|
+
onClick?: Function
|
|
44
|
+
} & VariantProps<typeof linkVariants> &
|
|
45
|
+
ComponentPropsWithout<'a', RemovedProps>
|
|
46
|
+
|
|
47
|
+
const Link = React.forwardRef<LinkElement, LinkProps>(
|
|
48
|
+
(
|
|
49
|
+
{
|
|
50
|
+
children,
|
|
51
|
+
size = 'small',
|
|
52
|
+
hoverColor,
|
|
53
|
+
className,
|
|
54
|
+
asChild = false,
|
|
55
|
+
href,
|
|
56
|
+
style,
|
|
57
|
+
underline,
|
|
58
|
+
disabled = false,
|
|
59
|
+
suffixIcon,
|
|
60
|
+
onClick,
|
|
61
|
+
...props // 这里会包含 href、target、rel 等标准 anchor 属性
|
|
62
|
+
}: LinkProps,
|
|
63
|
+
forwardedRef
|
|
64
|
+
) => {
|
|
65
|
+
const Comp = asChild ? Slot : 'a'
|
|
66
|
+
|
|
67
|
+
const handleClick = (event: React.MouseEvent<HTMLAnchorElement>) => {
|
|
68
|
+
!disabled && onClick?.(event)
|
|
69
|
+
if (disabled || !href) {
|
|
70
|
+
event.preventDefault()
|
|
71
|
+
return
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
return (
|
|
76
|
+
<Comp
|
|
77
|
+
ref={forwardedRef}
|
|
78
|
+
onClick={handleClick}
|
|
79
|
+
href={disabled ? undefined : href}
|
|
80
|
+
className={cn(linkVariants({ size, underline, hoverColor }), className, {
|
|
81
|
+
'flex items-center': suffixIcon,
|
|
82
|
+
'cursor-pointer': !disabled,
|
|
83
|
+
'text-info-quaternary cursor-not-allowed': disabled,
|
|
84
|
+
})}
|
|
85
|
+
{...(style ? { style: style } : null)}
|
|
86
|
+
{...props}
|
|
87
|
+
>
|
|
88
|
+
<>
|
|
89
|
+
{children}
|
|
90
|
+
<span className="svg">{suffixIcon}</span>
|
|
91
|
+
</>
|
|
92
|
+
</Comp>
|
|
93
|
+
)
|
|
94
|
+
}
|
|
95
|
+
)
|
|
96
|
+
Link.displayName = 'Link'
|
|
97
|
+
|
|
98
|
+
export default Link
|
|
99
|
+
export type { LinkProps }
|
|
@@ -27,6 +27,7 @@ const Picture = ({
|
|
|
27
27
|
source = '',
|
|
28
28
|
quality = 2,
|
|
29
29
|
deviceSizes = [375, 767, 1023, 1279, 1439, 1539, 1919],
|
|
30
|
+
className,
|
|
30
31
|
...rest
|
|
31
32
|
}: PictureProps) => {
|
|
32
33
|
const imgSrcSetsize = useCallback(({ src, width }: { src: string; width: number }) => {
|
|
@@ -85,12 +86,12 @@ const Picture = ({
|
|
|
85
86
|
|
|
86
87
|
const img = imgSrcSetsize({ src: srcArr[0][0], width: 1920 * quality })
|
|
87
88
|
|
|
88
|
-
sourceList.push(<img key="default" src={img} className={`
|
|
89
|
+
sourceList.push(<img key="default" src={img} className={`w-full ${imgClassName}`} {...rest} />)
|
|
89
90
|
return sourceList
|
|
90
91
|
}, [deviceSizes, imgClassName, imgSrcSetsize, quality, rest, source, sourceSrcSet])
|
|
91
92
|
|
|
92
93
|
return (
|
|
93
|
-
<picture className={`
|
|
94
|
+
<picture className={`block overflow-hidden ${className}`}>
|
|
94
95
|
{sourceList}
|
|
95
96
|
{rest.children}
|
|
96
97
|
</picture>
|
|
@@ -19,7 +19,7 @@ const PopoverContent = React.forwardRef<
|
|
|
19
19
|
align={align}
|
|
20
20
|
sideOffset={sideOffset}
|
|
21
21
|
className={cn(
|
|
22
|
-
'
|
|
22
|
+
'bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-72 rounded-md border p-4 shadow-md outline-none',
|
|
23
23
|
className
|
|
24
24
|
)}
|
|
25
25
|
{...props}
|
package/src/components/radio.tsx
CHANGED
|
@@ -12,13 +12,13 @@ const RadioContext = React.createContext<{ size?: 'sm' | 'base' | 'lg' }>({
|
|
|
12
12
|
})
|
|
13
13
|
|
|
14
14
|
const radioGroupVariants = cva(
|
|
15
|
-
'
|
|
15
|
+
'border-primary text-primary ring-offset-background focus-visible:ring-ring aspect-square rounded-full border focus:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground',
|
|
16
16
|
{
|
|
17
17
|
variants: {
|
|
18
18
|
size: {
|
|
19
|
-
sm: '
|
|
20
|
-
base: '
|
|
21
|
-
lg: '
|
|
19
|
+
sm: 'size-[14px]',
|
|
20
|
+
base: 'size-4',
|
|
21
|
+
lg: 'size-5',
|
|
22
22
|
},
|
|
23
23
|
},
|
|
24
24
|
defaultVariants: {
|
|
@@ -62,7 +62,7 @@ const RadioGroupItem = React.forwardRef<React.ElementRef<typeof RadioGroupPrimit
|
|
|
62
62
|
)}
|
|
63
63
|
{...props}
|
|
64
64
|
>
|
|
65
|
-
<RadioGroupPrimitive.Indicator className="
|
|
65
|
+
<RadioGroupPrimitive.Indicator className="flex items-center justify-center text-current w-full h-full">
|
|
66
66
|
<CheckIcon />
|
|
67
67
|
</RadioGroupPrimitive.Indicator>
|
|
68
68
|
</RadioGroupPrimitive.Item>
|
|
@@ -70,7 +70,7 @@ const RadioGroupItem = React.forwardRef<React.ElementRef<typeof RadioGroupPrimit
|
|
|
70
70
|
|
|
71
71
|
if (children) {
|
|
72
72
|
return (
|
|
73
|
-
<Text as="label" className={cn('
|
|
73
|
+
<Text as="label" className={cn('flex items-center gap-1', className)}>
|
|
74
74
|
{ItemRadio}
|
|
75
75
|
{children}
|
|
76
76
|
</Text>
|
|
@@ -20,9 +20,9 @@ const Skeleton = React.forwardRef<SkeletonElement, SkeletonProps>((props, forwar
|
|
|
20
20
|
<Tag
|
|
21
21
|
ref={forwardedRef}
|
|
22
22
|
className={cn(
|
|
23
|
-
`
|
|
24
|
-
!
|
|
25
|
-
after:!
|
|
23
|
+
`bg-skeleton animate-pulse empty:block data-[inline-skeleton=true]:leading-[0] !bg-none !bg-clip-border !border-none !shadow-none
|
|
24
|
+
!text-transparent !outline-none !select-none !cursor-default !pointer-events-none !decoration-clone
|
|
25
|
+
after:!invisible before:!invisible [&>*]:!invisible
|
|
26
26
|
`,
|
|
27
27
|
className
|
|
28
28
|
)}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
'use client'
|
|
2
|
+
|
|
3
|
+
import * as React from 'react'
|
|
4
|
+
import { cn } from '../helpers/index.js'
|
|
5
|
+
|
|
6
|
+
import * as TabsPrimitive from '@radix-ui/react-tabs'
|
|
7
|
+
import { cva, type VariantProps } from 'class-variance-authority'
|
|
8
|
+
|
|
9
|
+
const TabListContext = React.createContext<{ algin?: 'left' | 'center' | 'right' }>({
|
|
10
|
+
algin: 'left',
|
|
11
|
+
})
|
|
12
|
+
|
|
13
|
+
const Tabs = React.forwardRef<
|
|
14
|
+
React.ElementRef<typeof TabsPrimitive.Root>,
|
|
15
|
+
React.ComponentPropsWithoutRef<typeof TabsPrimitive.Root> & { algin?: 'left' | 'center' | 'right' }
|
|
16
|
+
>(({ children, algin = 'left', ...props }, ref) => (
|
|
17
|
+
<TabsPrimitive.Root ref={ref} {...props}>
|
|
18
|
+
<TabListContext.Provider value={{ algin }}>{children}</TabListContext.Provider>
|
|
19
|
+
</TabsPrimitive.Root>
|
|
20
|
+
))
|
|
21
|
+
Tabs.displayName = 'Tabs'
|
|
22
|
+
|
|
23
|
+
const tabsListVariants = cva('', {
|
|
24
|
+
variants: {
|
|
25
|
+
algin: {
|
|
26
|
+
left: 'justify-left',
|
|
27
|
+
center: 'justify-center',
|
|
28
|
+
right: 'justify-end',
|
|
29
|
+
},
|
|
30
|
+
},
|
|
31
|
+
defaultVariants: {
|
|
32
|
+
algin: 'left',
|
|
33
|
+
},
|
|
34
|
+
})
|
|
35
|
+
|
|
36
|
+
const TabsList = React.forwardRef<
|
|
37
|
+
React.ElementRef<typeof TabsPrimitive.List>,
|
|
38
|
+
React.ComponentPropsWithoutRef<typeof TabsPrimitive.List>
|
|
39
|
+
>(({ className, ...props }, ref) => {
|
|
40
|
+
const { algin: alginFromParent } = React.useContext(TabListContext)
|
|
41
|
+
return (
|
|
42
|
+
<TabsPrimitive.List
|
|
43
|
+
ref={ref}
|
|
44
|
+
className={cn(
|
|
45
|
+
'border-b-lines flex gap-[24px] overflow-x-auto border-b',
|
|
46
|
+
tabsListVariants({
|
|
47
|
+
algin: alginFromParent,
|
|
48
|
+
}),
|
|
49
|
+
className
|
|
50
|
+
)}
|
|
51
|
+
{...props}
|
|
52
|
+
/>
|
|
53
|
+
)
|
|
54
|
+
})
|
|
55
|
+
TabsList.displayName = TabsPrimitive.List.displayName
|
|
56
|
+
|
|
57
|
+
const TabsTrigger = React.forwardRef<
|
|
58
|
+
React.ElementRef<typeof TabsPrimitive.Trigger>,
|
|
59
|
+
React.ComponentPropsWithoutRef<typeof TabsPrimitive.Trigger>
|
|
60
|
+
>(({ className, ...props }, ref) => (
|
|
61
|
+
<TabsPrimitive.Trigger
|
|
62
|
+
ref={ref}
|
|
63
|
+
className={cn(
|
|
64
|
+
'border-b-brand-0 disabled:text-btn-secondary-disabled shrink-0 text-base font-bold data-[state=active]:border-b-[3px]',
|
|
65
|
+
className
|
|
66
|
+
)}
|
|
67
|
+
{...props}
|
|
68
|
+
/>
|
|
69
|
+
))
|
|
70
|
+
TabsTrigger.displayName = TabsPrimitive.Trigger.displayName
|
|
71
|
+
|
|
72
|
+
const TabsContent = React.forwardRef<
|
|
73
|
+
React.ElementRef<typeof TabsPrimitive.Content>,
|
|
74
|
+
React.ComponentPropsWithoutRef<typeof TabsPrimitive.Content>
|
|
75
|
+
>(({ className, ...props }, ref) => <TabsPrimitive.Content ref={ref} className={cn(className)} {...props} />)
|
|
76
|
+
TabsContent.displayName = TabsPrimitive.Content.displayName
|
|
77
|
+
|
|
78
|
+
export { Tabs, TabsList, TabsTrigger, TabsContent }
|
package/src/components/text.tsx
CHANGED
|
@@ -4,35 +4,29 @@ import { cn } from '../helpers/index.js'
|
|
|
4
4
|
import { type VariantProps, cva } from 'class-variance-authority'
|
|
5
5
|
import type { ComponentPropsWithout, RemovedProps } from '../helpers/component-props.js'
|
|
6
6
|
|
|
7
|
-
const textVariants = cva('', {
|
|
7
|
+
const textVariants = cva('tracking font-body', {
|
|
8
8
|
variants: {
|
|
9
9
|
size: {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
3: 'ai-text-base',
|
|
14
|
-
4: 'ai-text-lg',
|
|
15
|
-
5: 'ai-text-xl',
|
|
16
|
-
6: 'ai-text-2xl',
|
|
17
|
-
7: 'ai-text-3xl',
|
|
18
|
-
8: 'ai-text-4xl',
|
|
19
|
-
9: 'ai-text-5xl',
|
|
10
|
+
1: 'text-text-1 text-info-primary',
|
|
11
|
+
2: 'text-text-2 text-info-primary',
|
|
12
|
+
3: 'text-text-3 text-info-primary',
|
|
20
13
|
},
|
|
21
|
-
|
|
22
|
-
light: '
|
|
23
|
-
normal: '
|
|
24
|
-
medium: '
|
|
25
|
-
|
|
14
|
+
weight: {
|
|
15
|
+
light: 'font-light',
|
|
16
|
+
normal: 'font-normal',
|
|
17
|
+
medium: 'font-medium',
|
|
18
|
+
semibold: 'font-semibold',
|
|
19
|
+
bold: 'font-bold',
|
|
26
20
|
},
|
|
27
21
|
align: {
|
|
28
|
-
left: '
|
|
29
|
-
center: '
|
|
30
|
-
right: '
|
|
22
|
+
left: 'text-left',
|
|
23
|
+
center: 'text-center',
|
|
24
|
+
right: 'text-right',
|
|
31
25
|
},
|
|
32
26
|
},
|
|
33
27
|
defaultVariants: {
|
|
34
|
-
size:
|
|
35
|
-
|
|
28
|
+
size: 3,
|
|
29
|
+
weight: 'normal',
|
|
36
30
|
},
|
|
37
31
|
})
|
|
38
32
|
|
|
@@ -55,8 +49,8 @@ type TextProps = CommonTextProps & (TextSpanProps | TextDivProps | TextLabelProp
|
|
|
55
49
|
const Text = React.forwardRef<TextElement, TextProps>((props, forwardedRef) => {
|
|
56
50
|
const {
|
|
57
51
|
children,
|
|
58
|
-
size =
|
|
59
|
-
|
|
52
|
+
size = 3,
|
|
53
|
+
weight,
|
|
60
54
|
align,
|
|
61
55
|
className,
|
|
62
56
|
asChild,
|
|
@@ -68,16 +62,16 @@ const Text = React.forwardRef<TextElement, TextProps>((props, forwardedRef) => {
|
|
|
68
62
|
|
|
69
63
|
const htmlContentProps = html
|
|
70
64
|
? {
|
|
71
|
-
|
|
72
|
-
|
|
65
|
+
dangerouslySetInnerHTML: { __html: html },
|
|
66
|
+
}
|
|
73
67
|
: null
|
|
74
68
|
|
|
75
69
|
const styleProps = color
|
|
76
70
|
? {
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
71
|
+
style: {
|
|
72
|
+
color,
|
|
73
|
+
},
|
|
74
|
+
}
|
|
81
75
|
: null
|
|
82
76
|
|
|
83
77
|
return (
|
|
@@ -87,7 +81,7 @@ const Text = React.forwardRef<TextElement, TextProps>((props, forwardedRef) => {
|
|
|
87
81
|
className={cn(
|
|
88
82
|
textVariants({
|
|
89
83
|
size,
|
|
90
|
-
|
|
84
|
+
weight,
|
|
91
85
|
align,
|
|
92
86
|
}),
|
|
93
87
|
className
|
package/src/components/theme.tsx
CHANGED
package/src/helpers/constants.ts
CHANGED
package/src/helpers/utils.ts
CHANGED
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
import { clsx, type ClassValue } from 'clsx'
|
|
2
|
-
import {
|
|
2
|
+
import { extendTailwindMerge } from 'tailwind-merge'
|
|
3
|
+
|
|
4
|
+
const twMerge = extendTailwindMerge({
|
|
5
|
+
extend: {
|
|
6
|
+
theme: {
|
|
7
|
+
borderRadius: ['btn'],
|
|
8
|
+
},
|
|
9
|
+
},
|
|
10
|
+
})
|
|
3
11
|
|
|
4
12
|
export function cn(...inputs: ClassValue[]) {
|
|
5
13
|
return twMerge(clsx(inputs))
|
package/src/icons/spinner.tsx
CHANGED
|
@@ -12,11 +12,10 @@ const Spinner = (props: SpinnerProps) => {
|
|
|
12
12
|
viewBox="0 0 20 20"
|
|
13
13
|
xmlns="http://www.w3.org/2000/svg"
|
|
14
14
|
width="1rem"
|
|
15
|
-
className={cn('
|
|
15
|
+
className={cn('animate-spin', props.className)}
|
|
16
16
|
>
|
|
17
17
|
<path
|
|
18
18
|
d="M1 10C1 14.9706 5.02944 19 10 19C14.9706 19 19 14.9706 19 10C19 5.02944 14.9706 1 10 1"
|
|
19
|
-
stroke="white"
|
|
20
19
|
strokeWidth="2"
|
|
21
20
|
strokeLinecap="round"
|
|
22
21
|
/>
|