@anker-in/headless-ui 1.1.28-alpha.1768202456200 → 1.1.29
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/dist/cjs/biz-components/AccordionCards/index.d.ts +3 -3
- package/dist/cjs/biz-components/AiuiProvider/index.d.ts +0 -7
- package/dist/cjs/biz-components/AiuiProvider/index.js +1 -1
- package/dist/cjs/biz-components/AiuiProvider/index.js.map +2 -2
- package/dist/cjs/biz-components/AplusDesc/index.d.ts +3 -3
- package/dist/cjs/biz-components/BrandEquity/BrandEquity.d.ts +3 -3
- package/dist/cjs/biz-components/BrandEquity/BrandEquity.js +1 -1
- package/dist/cjs/biz-components/BrandEquity/BrandEquity.js.map +2 -2
- package/dist/cjs/biz-components/BrandEquity/types.d.ts +0 -1
- package/dist/cjs/biz-components/BrandEquity/types.js +1 -1
- package/dist/cjs/biz-components/BrandEquity/types.js.map +1 -1
- package/dist/cjs/biz-components/Category/index.d.ts +3 -3
- package/dist/cjs/biz-components/CreativeModule/index.d.ts +3 -3
- package/dist/cjs/biz-components/DownLoad/index.d.ts +3 -3
- package/dist/cjs/biz-components/Evaluate/index.d.ts +3 -3
- package/dist/cjs/biz-components/Evaluate/index.js +1 -1
- package/dist/cjs/biz-components/Evaluate/index.js.map +2 -2
- package/dist/cjs/biz-components/Faq/Faq.d.ts +3 -3
- package/dist/cjs/biz-components/FeatureCards/FeatureCards.d.ts +3 -3
- package/dist/cjs/biz-components/FeatureShowcase/FeatureShowcase.d.ts +3 -3
- package/dist/cjs/biz-components/Features/index.d.ts +3 -3
- package/dist/cjs/biz-components/FootCharger/index.d.ts +3 -3
- package/dist/cjs/biz-components/FooterNavigation/index.d.ts +3 -3
- package/dist/cjs/biz-components/GiftBox/index.d.ts +3 -3
- package/dist/cjs/biz-components/Graphic/index.d.ts +3 -3
- package/dist/cjs/biz-components/GraphicAttractionBlock/index.d.ts +3 -3
- package/dist/cjs/biz-components/GraphicMore/index.d.ts +3 -3
- package/dist/cjs/biz-components/GraphicOverlay/GraphicOverlay.d.ts +3 -3
- package/dist/cjs/biz-components/HeaderNavigation/index.d.ts +3 -3
- package/dist/cjs/biz-components/HeroBanner/Countdown.js +1 -1
- package/dist/cjs/biz-components/HeroBanner/Countdown.js.map +2 -2
- package/dist/cjs/biz-components/HeroBanner/HeroBanner.d.ts +3 -6
- package/dist/cjs/biz-components/HeroBanner/HeroBanner.js +1 -1
- package/dist/cjs/biz-components/HeroBanner/HeroBanner.js.map +3 -3
- package/dist/cjs/biz-components/HeroBanner/types.d.ts +0 -4
- package/dist/cjs/biz-components/HeroBanner/types.js +1 -1
- package/dist/cjs/biz-components/HeroBanner/types.js.map +1 -1
- package/dist/cjs/biz-components/ImageTextFeature/ImageTextFeature.d.ts +3 -3
- package/dist/cjs/biz-components/ImageTextFeature/ImageTextFeature.js +1 -1
- package/dist/cjs/biz-components/ImageTextFeature/ImageTextFeature.js.map +3 -3
- package/dist/cjs/biz-components/ImageTextFeature/types.d.ts +0 -1
- package/dist/cjs/biz-components/ImageTextFeature/types.js +1 -1
- package/dist/cjs/biz-components/ImageTextFeature/types.js.map +1 -1
- package/dist/cjs/biz-components/ImageWithText/ImageWithText.d.ts +3 -3
- package/dist/cjs/biz-components/Ksp/index.d.ts +3 -3
- package/dist/cjs/biz-components/Listing/components/PaidShipping/index.d.ts +4 -4
- package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/BenefitsTab.d.ts +3 -3
- package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductBundle/index.d.ts +3 -3
- package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductExchangePurchase/index.d.ts +3 -3
- package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductFreeGift/index.d.ts +3 -3
- package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductHighlight/index.d.ts +3 -3
- package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductOptions/index.d.ts +3 -3
- package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/index.d.ts +3 -3
- package/dist/cjs/biz-components/Listing/components/ProductCard/ProductSummary/index.d.ts +3 -3
- package/dist/cjs/biz-components/Listing/components/PurchaseBar/index.d.ts +3 -3
- package/dist/cjs/biz-components/Marquee/Marquee.d.ts +3 -3
- package/dist/cjs/biz-components/Marquee/Marquee.js +1 -1
- package/dist/cjs/biz-components/Marquee/Marquee.js.map +3 -3
- package/dist/cjs/biz-components/MarqueeReview/index.d.ts +3 -3
- package/dist/cjs/biz-components/MediaPlayerBase/index.d.ts +3 -3
- package/dist/cjs/biz-components/MediaPlayerMulti/index.d.ts +3 -3
- package/dist/cjs/biz-components/MediaPlayerSticky/index.d.ts +4 -4
- package/dist/cjs/biz-components/MediaPlayerSticky/types.d.ts +0 -1
- package/dist/cjs/biz-components/MediaPlayerSticky/types.js +1 -1
- package/dist/cjs/biz-components/MediaPlayerSticky/types.js.map +1 -1
- package/dist/cjs/biz-components/MediaSceneSwitcher/MediaSceneSwitcher.d.ts +3 -3
- package/dist/cjs/biz-components/MemberEquity/index.d.ts +3 -3
- package/dist/cjs/biz-components/MultiLayoutGraphicBlock/MultiLayoutGraphicBlock.d.ts +3 -3
- package/dist/cjs/biz-components/ProductCompare/index.d.ts +3 -3
- package/dist/cjs/biz-components/ProductHero/ProductHero.d.ts +3 -3
- package/dist/cjs/biz-components/ProductNav/ProductNav.d.ts +3 -3
- package/dist/cjs/biz-components/SelectStore/index.d.ts +3 -3
- package/dist/cjs/biz-components/ShelfDisplay/index.d.ts +3 -3
- package/dist/cjs/biz-components/ShelfDisplay/shelfDisplay.d.ts +11 -0
- package/dist/cjs/biz-components/ShelfDisplay/shelfDisplay.js +1 -1
- package/dist/cjs/biz-components/ShelfDisplay/shelfDisplay.js.map +3 -3
- package/dist/cjs/biz-components/ShelfDisplay/shelfDisplayItem.js +4 -4
- package/dist/cjs/biz-components/ShelfDisplay/shelfDisplayItem.js.map +3 -3
- package/dist/cjs/biz-components/Slogan/index.d.ts +3 -3
- package/dist/cjs/biz-components/Spacer/index.d.ts +3 -3
- package/dist/cjs/biz-components/Specs/index.d.ts +3 -3
- package/dist/cjs/biz-components/SpecsComparison/SpecsComparison.d.ts +3 -3
- package/dist/cjs/biz-components/TabWithImage/TabWithImage.d.ts +3 -3
- package/dist/cjs/biz-components/Tabs/Tabs.d.ts +3 -3
- package/dist/cjs/biz-components/Tabs/Tabs.js +1 -1
- package/dist/cjs/biz-components/Tabs/Tabs.js.map +3 -3
- package/dist/cjs/biz-components/Tabs/types.d.ts +0 -9
- package/dist/cjs/biz-components/Tabs/types.js +1 -1
- package/dist/cjs/biz-components/Tabs/types.js.map +1 -1
- package/dist/cjs/biz-components/TabsGroup/index.d.ts +3 -3
- package/dist/cjs/biz-components/TabsWithMedia/TabsWithMedia.d.ts +3 -3
- package/dist/cjs/biz-components/ThreeDCarousel/ThreeDCarousel.d.ts +3 -3
- package/dist/cjs/biz-components/Title/index.d.ts +3 -3
- package/dist/cjs/biz-components/Title/index.js +1 -1
- package/dist/cjs/biz-components/Title/index.js.map +3 -3
- package/dist/cjs/biz-components/Title/types.d.ts +0 -55
- package/dist/cjs/biz-components/Title/types.js +1 -1
- package/dist/cjs/biz-components/Title/types.js.map +1 -1
- package/dist/cjs/biz-components/VideoFeature/VideoFeature.d.ts +3 -3
- package/dist/cjs/biz-components/WhyChoose/WhyChoose.d.ts +3 -3
- package/dist/cjs/biz-components/index.d.ts +0 -32
- package/dist/cjs/biz-components/index.js +1 -1
- package/dist/cjs/biz-components/index.js.map +3 -3
- package/dist/cjs/components/badge.d.ts +2 -5
- package/dist/cjs/components/badge.js +1 -1
- package/dist/cjs/components/badge.js.map +3 -3
- package/dist/cjs/components/index.d.ts +0 -2
- package/dist/cjs/components/index.js +1 -1
- package/dist/cjs/components/index.js.map +3 -3
- package/dist/cjs/components/tabs.d.ts +1 -2
- package/dist/cjs/components/tabs.js +1 -1
- package/dist/cjs/components/tabs.js.map +2 -2
- package/dist/cjs/helpers/index.d.ts +0 -1
- package/dist/cjs/helpers/index.js +1 -1
- package/dist/cjs/helpers/index.js.map +3 -3
- package/dist/cjs/shared/Styles.d.ts +4 -5
- package/dist/cjs/shared/Styles.js +1 -1
- package/dist/cjs/shared/Styles.js.map +3 -3
- package/dist/cjs/stories/HeroBanner.stories.d.ts +28 -0
- package/dist/cjs/stories/HeroBanner.stories.js +11 -0
- package/dist/cjs/stories/HeroBanner.stories.js.map +7 -0
- package/dist/cjs/stories/InlineVideo.stories.d.ts +37 -0
- package/dist/cjs/stories/InlineVideo.stories.js +164 -0
- package/dist/cjs/stories/InlineVideo.stories.js.map +7 -0
- package/dist/cjs/stories/MarqueeReview.stories.d.ts +72 -0
- package/dist/cjs/stories/MarqueeReview.stories.js +19 -0
- package/dist/cjs/stories/MarqueeReview.stories.js.map +7 -0
- package/dist/cjs/stories/MediaSceneSwitcher.stories.d.ts +47 -0
- package/dist/cjs/stories/MediaSceneSwitcher.stories.js +2 -0
- package/dist/cjs/stories/MediaSceneSwitcher.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/MultiLayoutGraphicBlock.stories.d.ts +9 -0
- package/dist/cjs/stories/MultiLayoutGraphicBlock.stories.js +2 -0
- package/dist/cjs/stories/MultiLayoutGraphicBlock.stories.js.map +7 -0
- package/dist/cjs/stories/ProductNav.stories.d.ts +55 -0
- package/dist/cjs/stories/ProductNav.stories.js +2 -0
- package/dist/cjs/stories/ProductNav.stories.js.map +7 -0
- package/dist/cjs/stories/ThreeDCarousel.stories.d.ts +27 -0
- package/dist/cjs/stories/ThreeDCarousel.stories.js +118 -0
- package/dist/cjs/stories/ThreeDCarousel.stories.js.map +7 -0
- package/dist/cjs/stories/accordionCards.stories.d.ts +38 -0
- package/dist/cjs/stories/accordionCards.stories.js +2 -0
- package/dist/cjs/stories/accordionCards.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 +39 -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 +31 -0
- package/dist/cjs/stories/badge.stories.js +2 -0
- package/dist/cjs/stories/badge.stories.js.map +7 -0
- package/dist/cjs/stories/bizTabs.stories.d.ts +7 -0
- package/dist/cjs/stories/bizTabs.stories.js +2 -0
- package/dist/cjs/stories/bizTabs.stories.js.map +7 -0
- package/dist/cjs/stories/board.stories.d.ts +6 -0
- package/dist/cjs/stories/board.stories.js +2 -0
- package/dist/cjs/stories/board.stories.js.map +7 -0
- 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/brandStrip.stories.d.ts +12 -0
- package/dist/cjs/stories/brandStrip.stories.js +2 -0
- package/dist/cjs/stories/brandStrip.stories.js.map +7 -0
- package/dist/cjs/stories/button.stories.d.ts +56 -0
- package/dist/cjs/stories/button.stories.js +2 -0
- package/dist/cjs/stories/button.stories.js.map +7 -0
- 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 +8 -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 +17 -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 +46 -0
- package/dist/cjs/stories/checkbox.stories.js +2 -0
- package/dist/cjs/stories/checkbox.stories.js.map +7 -0
- package/dist/cjs/stories/container.stories.d.ts +28 -0
- package/dist/cjs/stories/container.stories.js +15 -0
- package/dist/cjs/stories/container.stories.js.map +7 -0
- package/dist/cjs/stories/cpnBanner.stories.d.ts +14 -0
- package/dist/cjs/stories/cpnBanner.stories.js +2 -0
- package/dist/cjs/stories/cpnBanner.stories.js.map +7 -0
- package/dist/cjs/stories/cpnCountdown.stories.d.ts +12 -0
- package/dist/cjs/stories/cpnCountdown.stories.js +2 -0
- package/dist/cjs/stories/cpnCountdown.stories.js.map +7 -0
- package/dist/cjs/stories/cpnNavigation.stories.d.ts +14 -0
- package/dist/cjs/stories/cpnNavigation.stories.js +2 -0
- package/dist/cjs/stories/cpnNavigation.stories.js.map +7 -0
- package/dist/cjs/stories/cpnProductcard.stories.d.ts +14 -0
- package/dist/cjs/stories/cpnProductcard.stories.js +2 -0
- package/dist/cjs/stories/cpnProductcard.stories.js.map +7 -0
- package/dist/cjs/stories/cpnTitle.stories.d.ts +14 -0
- package/dist/cjs/stories/cpnTitle.stories.js +2 -0
- package/dist/cjs/stories/cpnTitle.stories.js.map +7 -0
- package/dist/cjs/stories/creativeModule.stories.d.ts +19 -0
- package/dist/cjs/stories/creativeModule.stories.js +2 -0
- package/dist/cjs/stories/creativeModule.stories.js.map +7 -0
- package/dist/cjs/stories/dialog.stories.d.ts +20 -0
- package/dist/cjs/stories/dialog.stories.js +2 -0
- package/dist/cjs/stories/dialog.stories.js.map +7 -0
- 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 +16 -0
- package/dist/cjs/stories/evaluate.stories.js +2 -0
- package/dist/cjs/stories/evaluate.stories.js.map +7 -0
- package/dist/cjs/stories/faq.stories.d.ts +21 -0
- package/dist/cjs/stories/faq.stories.js +2 -0
- package/dist/cjs/stories/faq.stories.js.map +7 -0
- package/dist/cjs/stories/featureCards.stories.d.ts +30 -0
- package/dist/cjs/stories/featureCards.stories.js +61 -0
- package/dist/cjs/stories/featureCards.stories.js.map +7 -0
- package/dist/cjs/stories/featureShowcase.stories.d.ts +29 -0
- package/dist/cjs/stories/featureShowcase.stories.js +44 -0
- package/dist/cjs/stories/featureShowcase.stories.js.map +7 -0
- package/dist/cjs/stories/graphic.stories.d.ts +64 -0
- package/dist/cjs/stories/graphic.stories.js +2 -0
- package/dist/cjs/stories/graphic.stories.js.map +7 -0
- package/dist/cjs/stories/graphicAttractionBlock.stories.d.ts +6 -0
- package/dist/cjs/stories/graphicAttractionBlock.stories.js +2 -0
- package/dist/cjs/stories/graphicAttractionBlock.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 +84 -0
- package/dist/cjs/stories/heading.stories.js +15 -0
- package/dist/cjs/stories/heading.stories.js.map +7 -0
- package/dist/cjs/stories/imageTextFeature.stories.d.ts +28 -0
- package/dist/cjs/stories/imageTextFeature.stories.js +50 -0
- package/dist/cjs/stories/imageTextFeature.stories.js.map +7 -0
- package/dist/cjs/stories/imageWithText.stories.d.ts +51 -0
- package/dist/cjs/stories/imageWithText.stories.js +84 -0
- package/dist/cjs/stories/imageWithText.stories.js.map +7 -0
- 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.d.ts +35 -0
- package/dist/cjs/stories/input.stories.js +2 -0
- package/dist/cjs/stories/input.stories.js.map +7 -0
- package/dist/cjs/stories/ksp.stories.d.ts +63 -0
- package/dist/cjs/stories/ksp.stories.js +128 -0
- package/dist/cjs/stories/ksp.stories.js.map +7 -0
- package/dist/cjs/stories/link.stories.d.ts +69 -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 +30 -0
- package/dist/cjs/stories/marquee.stories.js +2 -0
- package/dist/cjs/stories/marquee.stories.js.map +7 -0
- package/dist/cjs/stories/mediaplayerBase.stories.d.ts +6 -0
- package/dist/cjs/stories/mediaplayerBase.stories.js +2 -0
- package/dist/cjs/stories/mediaplayerBase.stories.js.map +7 -0
- package/dist/cjs/stories/mediaplayerMulti.stories.d.ts +16 -0
- package/dist/cjs/stories/mediaplayerMulti.stories.js +2 -0
- package/dist/cjs/stories/mediaplayerMulti.stories.js.map +7 -0
- package/dist/cjs/stories/picture.stories.d.ts +23 -0
- package/dist/cjs/stories/picture.stories.js +9 -0
- package/dist/cjs/stories/picture.stories.js.map +7 -0
- package/dist/cjs/stories/popover.stories.d.ts +17 -0
- package/dist/cjs/stories/popover.stories.js +2 -0
- package/dist/cjs/stories/popover.stories.js.map +7 -0
- package/dist/cjs/stories/productCompare.stories.d.ts +54 -0
- package/dist/cjs/stories/productCompare.stories.js +54 -0
- package/dist/cjs/stories/productCompare.stories.js.map +7 -0
- package/dist/cjs/stories/productHero.stories.d.ts +29 -0
- package/dist/cjs/stories/productHero.stories.js +50 -0
- package/dist/cjs/stories/productHero.stories.js.map +7 -0
- package/dist/cjs/stories/radio.stories.d.ts +39 -0
- package/dist/cjs/stories/radio.stories.js +2 -0
- package/dist/cjs/stories/radio.stories.js.map +7 -0
- package/dist/cjs/stories/shelfDisplay.stories.d.ts +16 -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.d.ts +20 -0
- package/dist/cjs/stories/skeleton.stories.js +2 -0
- package/dist/cjs/stories/skeleton.stories.js.map +7 -0
- package/dist/cjs/stories/slogan.stories.d.ts +20 -0
- package/dist/cjs/stories/slogan.stories.js +6 -0
- package/dist/cjs/stories/slogan.stories.js.map +7 -0
- package/dist/cjs/stories/specs.stories.d.ts +13 -0
- package/dist/cjs/stories/specs.stories.js +57 -0
- package/dist/cjs/stories/specs.stories.js.map +7 -0
- package/dist/cjs/stories/specsComparison.stories.d.ts +28 -0
- package/dist/cjs/stories/specsComparison.stories.js +105 -0
- package/dist/cjs/stories/specsComparison.stories.js.map +7 -0
- package/dist/cjs/stories/tabWithImage.stories.d.ts +28 -0
- package/dist/cjs/stories/tabWithImage.stories.js +53 -0
- package/dist/cjs/stories/tabWithImage.stories.js.map +7 -0
- package/dist/cjs/stories/tabs.stories.d.ts +373 -0
- package/dist/cjs/stories/tabs.stories.js +2 -0
- package/dist/cjs/stories/tabs.stories.js.map +7 -0
- package/dist/cjs/stories/tabsWithMedia.stories.d.ts +28 -0
- package/dist/cjs/stories/tabsWithMedia.stories.js +68 -0
- package/dist/cjs/stories/tabsWithMedia.stories.js.map +7 -0
- package/dist/cjs/stories/text.stories.d.ts +86 -0
- package/dist/cjs/stories/text.stories.js +21 -0
- package/dist/cjs/stories/text.stories.js.map +7 -0
- package/dist/cjs/stories/videoFeature.stories.d.ts +29 -0
- package/dist/cjs/stories/videoFeature.stories.js +56 -0
- package/dist/cjs/stories/videoFeature.stories.js.map +7 -0
- package/dist/cjs/stories/whychoose.stories.d.ts +21 -0
- package/dist/cjs/stories/whychoose.stories.js +2 -0
- package/dist/cjs/stories/whychoose.stories.js.map +7 -0
- package/dist/cjs/types/props.d.ts +3 -0
- package/dist/cjs/types/props.js +1 -1
- package/dist/cjs/types/props.js.map +1 -1
- package/dist/esm/biz-components/AccordionCards/index.d.ts +3 -3
- package/dist/esm/biz-components/AiuiProvider/index.d.ts +0 -7
- package/dist/esm/biz-components/AiuiProvider/index.js +1 -1
- package/dist/esm/biz-components/AiuiProvider/index.js.map +2 -2
- package/dist/esm/biz-components/AplusDesc/index.d.ts +3 -3
- package/dist/esm/biz-components/BrandEquity/BrandEquity.d.ts +3 -3
- package/dist/esm/biz-components/BrandEquity/BrandEquity.js +1 -1
- package/dist/esm/biz-components/BrandEquity/BrandEquity.js.map +2 -2
- package/dist/esm/biz-components/BrandEquity/types.d.ts +0 -1
- package/dist/esm/biz-components/Category/index.d.ts +3 -3
- package/dist/esm/biz-components/CreativeModule/index.d.ts +3 -3
- package/dist/esm/biz-components/DownLoad/index.d.ts +3 -3
- package/dist/esm/biz-components/Evaluate/index.d.ts +3 -3
- package/dist/esm/biz-components/Evaluate/index.js +1 -1
- package/dist/esm/biz-components/Evaluate/index.js.map +2 -2
- package/dist/esm/biz-components/Faq/Faq.d.ts +3 -3
- package/dist/esm/biz-components/FeatureCards/FeatureCards.d.ts +3 -3
- package/dist/esm/biz-components/FeatureShowcase/FeatureShowcase.d.ts +3 -3
- package/dist/esm/biz-components/Features/index.d.ts +3 -3
- package/dist/esm/biz-components/FootCharger/index.d.ts +3 -3
- package/dist/esm/biz-components/FooterNavigation/index.d.ts +3 -3
- package/dist/esm/biz-components/GiftBox/index.d.ts +3 -3
- package/dist/esm/biz-components/Graphic/index.d.ts +3 -3
- package/dist/esm/biz-components/GraphicAttractionBlock/index.d.ts +3 -3
- package/dist/esm/biz-components/GraphicMore/index.d.ts +3 -3
- package/dist/esm/biz-components/GraphicOverlay/GraphicOverlay.d.ts +3 -3
- package/dist/esm/biz-components/HeaderNavigation/index.d.ts +3 -3
- package/dist/esm/biz-components/HeroBanner/Countdown.js +1 -1
- package/dist/esm/biz-components/HeroBanner/Countdown.js.map +2 -2
- package/dist/esm/biz-components/HeroBanner/HeroBanner.d.ts +3 -6
- package/dist/esm/biz-components/HeroBanner/HeroBanner.js +1 -1
- package/dist/esm/biz-components/HeroBanner/HeroBanner.js.map +3 -3
- package/dist/esm/biz-components/HeroBanner/types.d.ts +0 -4
- package/dist/esm/biz-components/ImageTextFeature/ImageTextFeature.d.ts +3 -3
- package/dist/esm/biz-components/ImageTextFeature/ImageTextFeature.js +1 -1
- package/dist/esm/biz-components/ImageTextFeature/ImageTextFeature.js.map +3 -3
- package/dist/esm/biz-components/ImageTextFeature/types.d.ts +0 -1
- package/dist/esm/biz-components/ImageWithText/ImageWithText.d.ts +3 -3
- package/dist/esm/biz-components/Ksp/index.d.ts +3 -3
- package/dist/esm/biz-components/Listing/components/PaidShipping/index.d.ts +4 -4
- package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/BenefitsTab.d.ts +3 -3
- package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductBundle/index.d.ts +3 -3
- package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductExchangePurchase/index.d.ts +3 -3
- package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductFreeGift/index.d.ts +3 -3
- package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductHighlight/index.d.ts +3 -3
- package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductOptions/index.d.ts +3 -3
- package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/index.d.ts +3 -3
- package/dist/esm/biz-components/Listing/components/ProductCard/ProductSummary/index.d.ts +3 -3
- package/dist/esm/biz-components/Listing/components/PurchaseBar/index.d.ts +3 -3
- package/dist/esm/biz-components/Marquee/Marquee.d.ts +3 -3
- package/dist/esm/biz-components/Marquee/Marquee.js +1 -1
- package/dist/esm/biz-components/Marquee/Marquee.js.map +3 -3
- package/dist/esm/biz-components/MarqueeReview/index.d.ts +3 -3
- package/dist/esm/biz-components/MediaPlayerBase/index.d.ts +3 -3
- package/dist/esm/biz-components/MediaPlayerMulti/index.d.ts +3 -3
- package/dist/esm/biz-components/MediaPlayerSticky/index.d.ts +4 -4
- package/dist/esm/biz-components/MediaPlayerSticky/types.d.ts +0 -1
- package/dist/esm/biz-components/MediaSceneSwitcher/MediaSceneSwitcher.d.ts +3 -3
- package/dist/esm/biz-components/MemberEquity/index.d.ts +3 -3
- package/dist/esm/biz-components/MultiLayoutGraphicBlock/MultiLayoutGraphicBlock.d.ts +3 -3
- package/dist/esm/biz-components/ProductCompare/index.d.ts +3 -3
- package/dist/esm/biz-components/ProductHero/ProductHero.d.ts +3 -3
- package/dist/esm/biz-components/ProductNav/ProductNav.d.ts +3 -3
- package/dist/esm/biz-components/SelectStore/index.d.ts +3 -3
- package/dist/esm/biz-components/ShelfDisplay/index.d.ts +3 -3
- package/dist/esm/biz-components/ShelfDisplay/shelfDisplay.d.ts +11 -0
- package/dist/esm/biz-components/ShelfDisplay/shelfDisplay.js +1 -1
- package/dist/esm/biz-components/ShelfDisplay/shelfDisplay.js.map +3 -3
- package/dist/esm/biz-components/ShelfDisplay/shelfDisplayItem.js +5 -5
- package/dist/esm/biz-components/ShelfDisplay/shelfDisplayItem.js.map +3 -3
- package/dist/esm/biz-components/Slogan/index.d.ts +3 -3
- package/dist/esm/biz-components/Spacer/index.d.ts +3 -3
- package/dist/esm/biz-components/Specs/index.d.ts +3 -3
- package/dist/esm/biz-components/SpecsComparison/SpecsComparison.d.ts +3 -3
- package/dist/esm/biz-components/TabWithImage/TabWithImage.d.ts +3 -3
- package/dist/esm/biz-components/Tabs/Tabs.d.ts +3 -3
- package/dist/esm/biz-components/Tabs/Tabs.js +1 -1
- package/dist/esm/biz-components/Tabs/Tabs.js.map +3 -3
- package/dist/esm/biz-components/Tabs/types.d.ts +0 -9
- package/dist/esm/biz-components/TabsGroup/index.d.ts +3 -3
- package/dist/esm/biz-components/TabsWithMedia/TabsWithMedia.d.ts +3 -3
- package/dist/esm/biz-components/ThreeDCarousel/ThreeDCarousel.d.ts +3 -3
- package/dist/esm/biz-components/Title/index.d.ts +3 -3
- package/dist/esm/biz-components/Title/index.js +1 -1
- package/dist/esm/biz-components/Title/index.js.map +3 -3
- package/dist/esm/biz-components/Title/types.d.ts +0 -55
- package/dist/esm/biz-components/VideoFeature/VideoFeature.d.ts +3 -3
- package/dist/esm/biz-components/WhyChoose/WhyChoose.d.ts +3 -3
- package/dist/esm/biz-components/index.d.ts +0 -32
- package/dist/esm/biz-components/index.js +1 -1
- package/dist/esm/biz-components/index.js.map +3 -3
- package/dist/esm/components/badge.d.ts +2 -5
- package/dist/esm/components/badge.js +1 -1
- package/dist/esm/components/badge.js.map +3 -3
- package/dist/esm/components/index.d.ts +0 -2
- package/dist/esm/components/index.js +1 -1
- package/dist/esm/components/index.js.map +2 -2
- package/dist/esm/components/tabs.d.ts +1 -2
- package/dist/esm/components/tabs.js +1 -1
- package/dist/esm/components/tabs.js.map +2 -2
- package/dist/esm/helpers/index.d.ts +0 -1
- package/dist/esm/helpers/index.js +1 -1
- package/dist/esm/helpers/index.js.map +3 -3
- package/dist/esm/shared/Styles.d.ts +4 -5
- package/dist/esm/shared/Styles.js +1 -1
- package/dist/esm/shared/Styles.js.map +3 -3
- package/dist/esm/stories/HeroBanner.stories.d.ts +28 -0
- package/dist/esm/stories/HeroBanner.stories.js +11 -0
- package/dist/esm/stories/HeroBanner.stories.js.map +7 -0
- package/dist/esm/stories/InlineVideo.stories.d.ts +37 -0
- package/dist/esm/stories/InlineVideo.stories.js +164 -0
- package/dist/esm/stories/InlineVideo.stories.js.map +7 -0
- package/dist/esm/stories/MarqueeReview.stories.d.ts +72 -0
- package/dist/esm/stories/MarqueeReview.stories.js +19 -0
- package/dist/esm/stories/MarqueeReview.stories.js.map +7 -0
- package/dist/esm/stories/MediaSceneSwitcher.stories.d.ts +47 -0
- package/dist/esm/stories/MediaSceneSwitcher.stories.js +2 -0
- package/dist/esm/stories/MediaSceneSwitcher.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/MultiLayoutGraphicBlock.stories.d.ts +9 -0
- package/dist/esm/stories/MultiLayoutGraphicBlock.stories.js +2 -0
- package/dist/esm/stories/MultiLayoutGraphicBlock.stories.js.map +7 -0
- package/dist/esm/stories/ProductNav.stories.d.ts +55 -0
- package/dist/esm/stories/ProductNav.stories.js +2 -0
- package/dist/esm/stories/ProductNav.stories.js.map +7 -0
- package/dist/esm/stories/ThreeDCarousel.stories.d.ts +27 -0
- package/dist/esm/stories/ThreeDCarousel.stories.js +118 -0
- package/dist/esm/stories/ThreeDCarousel.stories.js.map +7 -0
- package/dist/esm/stories/accordionCards.stories.d.ts +38 -0
- package/dist/esm/stories/accordionCards.stories.js +2 -0
- package/dist/esm/stories/accordionCards.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 +39 -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 +31 -0
- package/dist/esm/stories/badge.stories.js +2 -0
- package/dist/esm/stories/badge.stories.js.map +7 -0
- package/dist/esm/stories/bizTabs.stories.d.ts +7 -0
- package/dist/esm/stories/bizTabs.stories.js +2 -0
- package/dist/esm/stories/bizTabs.stories.js.map +7 -0
- package/dist/esm/stories/board.stories.d.ts +6 -0
- package/dist/esm/stories/board.stories.js +2 -0
- package/dist/esm/stories/board.stories.js.map +7 -0
- 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/brandStrip.stories.d.ts +12 -0
- package/dist/esm/stories/brandStrip.stories.js +2 -0
- package/dist/esm/stories/brandStrip.stories.js.map +7 -0
- package/dist/esm/stories/button.stories.d.ts +56 -0
- package/dist/esm/stories/button.stories.js +2 -0
- package/dist/esm/stories/button.stories.js.map +7 -0
- 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 +8 -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 +17 -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 +46 -0
- package/dist/esm/stories/checkbox.stories.js +2 -0
- package/dist/esm/stories/checkbox.stories.js.map +7 -0
- package/dist/esm/stories/container.stories.d.ts +28 -0
- package/dist/esm/stories/container.stories.js +15 -0
- package/dist/esm/stories/container.stories.js.map +7 -0
- package/dist/esm/stories/cpnBanner.stories.d.ts +14 -0
- package/dist/esm/stories/cpnBanner.stories.js +2 -0
- package/dist/esm/stories/cpnBanner.stories.js.map +7 -0
- package/dist/esm/stories/cpnCountdown.stories.d.ts +12 -0
- package/dist/esm/stories/cpnCountdown.stories.js +2 -0
- package/dist/esm/stories/cpnCountdown.stories.js.map +7 -0
- package/dist/esm/stories/cpnNavigation.stories.d.ts +14 -0
- package/dist/esm/stories/cpnNavigation.stories.js +2 -0
- package/dist/esm/stories/cpnNavigation.stories.js.map +7 -0
- package/dist/esm/stories/cpnProductcard.stories.d.ts +14 -0
- package/dist/esm/stories/cpnProductcard.stories.js +2 -0
- package/dist/esm/stories/cpnProductcard.stories.js.map +7 -0
- package/dist/esm/stories/cpnTitle.stories.d.ts +14 -0
- package/dist/esm/stories/cpnTitle.stories.js +2 -0
- package/dist/esm/stories/cpnTitle.stories.js.map +7 -0
- package/dist/esm/stories/creativeModule.stories.d.ts +19 -0
- package/dist/esm/stories/creativeModule.stories.js +2 -0
- package/dist/esm/stories/creativeModule.stories.js.map +7 -0
- package/dist/esm/stories/dialog.stories.d.ts +20 -0
- package/dist/esm/stories/dialog.stories.js +2 -0
- package/dist/esm/stories/dialog.stories.js.map +7 -0
- 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 +16 -0
- package/dist/esm/stories/evaluate.stories.js +2 -0
- package/dist/esm/stories/evaluate.stories.js.map +7 -0
- package/dist/esm/stories/faq.stories.d.ts +21 -0
- package/dist/esm/stories/faq.stories.js +2 -0
- package/dist/esm/stories/faq.stories.js.map +7 -0
- package/dist/esm/stories/featureCards.stories.d.ts +30 -0
- package/dist/esm/stories/featureCards.stories.js +61 -0
- package/dist/esm/stories/featureCards.stories.js.map +7 -0
- package/dist/esm/stories/featureShowcase.stories.d.ts +29 -0
- package/dist/esm/stories/featureShowcase.stories.js +44 -0
- package/dist/esm/stories/featureShowcase.stories.js.map +7 -0
- package/dist/esm/stories/graphic.stories.d.ts +64 -0
- package/dist/esm/stories/graphic.stories.js +2 -0
- package/dist/esm/stories/graphic.stories.js.map +7 -0
- package/dist/esm/stories/graphicAttractionBlock.stories.d.ts +6 -0
- package/dist/esm/stories/graphicAttractionBlock.stories.js +2 -0
- package/dist/esm/stories/graphicAttractionBlock.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 +84 -0
- package/dist/esm/stories/heading.stories.js +15 -0
- package/dist/esm/stories/heading.stories.js.map +7 -0
- package/dist/esm/stories/imageTextFeature.stories.d.ts +28 -0
- package/dist/esm/stories/imageTextFeature.stories.js +50 -0
- package/dist/esm/stories/imageTextFeature.stories.js.map +7 -0
- package/dist/esm/stories/imageWithText.stories.d.ts +51 -0
- package/dist/esm/stories/imageWithText.stories.js +84 -0
- package/dist/esm/stories/imageWithText.stories.js.map +7 -0
- 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.d.ts +35 -0
- package/dist/esm/stories/input.stories.js +2 -0
- package/dist/esm/stories/input.stories.js.map +7 -0
- package/dist/esm/stories/ksp.stories.d.ts +63 -0
- package/dist/esm/stories/ksp.stories.js +128 -0
- package/dist/esm/stories/ksp.stories.js.map +7 -0
- package/dist/esm/stories/link.stories.d.ts +69 -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 +30 -0
- package/dist/esm/stories/marquee.stories.js +2 -0
- package/dist/esm/stories/marquee.stories.js.map +7 -0
- package/dist/esm/stories/mediaplayerBase.stories.d.ts +6 -0
- package/dist/esm/stories/mediaplayerBase.stories.js +2 -0
- package/dist/esm/stories/mediaplayerBase.stories.js.map +7 -0
- package/dist/esm/stories/mediaplayerMulti.stories.d.ts +16 -0
- package/dist/esm/stories/mediaplayerMulti.stories.js +2 -0
- package/dist/esm/stories/mediaplayerMulti.stories.js.map +7 -0
- package/dist/esm/stories/picture.stories.d.ts +23 -0
- package/dist/esm/stories/picture.stories.js +9 -0
- package/dist/esm/stories/picture.stories.js.map +7 -0
- package/dist/esm/stories/popover.stories.d.ts +17 -0
- package/dist/esm/stories/popover.stories.js +2 -0
- package/dist/esm/stories/popover.stories.js.map +7 -0
- package/dist/esm/stories/productCompare.stories.d.ts +54 -0
- package/dist/esm/stories/productCompare.stories.js +54 -0
- package/dist/esm/stories/productCompare.stories.js.map +7 -0
- package/dist/esm/stories/productHero.stories.d.ts +29 -0
- package/dist/esm/stories/productHero.stories.js +50 -0
- package/dist/esm/stories/productHero.stories.js.map +7 -0
- package/dist/esm/stories/radio.stories.d.ts +39 -0
- package/dist/esm/stories/radio.stories.js +2 -0
- package/dist/esm/stories/radio.stories.js.map +7 -0
- package/dist/esm/stories/shelfDisplay.stories.d.ts +16 -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.d.ts +20 -0
- package/dist/esm/stories/skeleton.stories.js +2 -0
- package/dist/esm/stories/skeleton.stories.js.map +7 -0
- package/dist/esm/stories/slogan.stories.d.ts +20 -0
- package/dist/esm/stories/slogan.stories.js +6 -0
- package/dist/esm/stories/slogan.stories.js.map +7 -0
- package/dist/esm/stories/specs.stories.d.ts +13 -0
- package/dist/esm/stories/specs.stories.js +57 -0
- package/dist/esm/stories/specs.stories.js.map +7 -0
- package/dist/esm/stories/specsComparison.stories.d.ts +28 -0
- package/dist/esm/stories/specsComparison.stories.js +105 -0
- package/dist/esm/stories/specsComparison.stories.js.map +7 -0
- package/dist/esm/stories/tabWithImage.stories.d.ts +28 -0
- package/dist/esm/stories/tabWithImage.stories.js +53 -0
- package/dist/esm/stories/tabWithImage.stories.js.map +7 -0
- package/dist/esm/stories/tabs.stories.d.ts +373 -0
- package/dist/esm/stories/tabs.stories.js +2 -0
- package/dist/esm/stories/tabs.stories.js.map +7 -0
- package/dist/esm/stories/tabsWithMedia.stories.d.ts +28 -0
- package/dist/esm/stories/tabsWithMedia.stories.js +68 -0
- package/dist/esm/stories/tabsWithMedia.stories.js.map +7 -0
- package/dist/esm/stories/text.stories.d.ts +86 -0
- package/dist/esm/stories/text.stories.js +21 -0
- package/dist/esm/stories/text.stories.js.map +7 -0
- package/dist/esm/stories/videoFeature.stories.d.ts +29 -0
- package/dist/esm/stories/videoFeature.stories.js +56 -0
- package/dist/esm/stories/videoFeature.stories.js.map +7 -0
- package/dist/esm/stories/whychoose.stories.d.ts +21 -0
- package/dist/esm/stories/whychoose.stories.js +2 -0
- package/dist/esm/stories/whychoose.stories.js.map +7 -0
- package/dist/esm/types/props.d.ts +3 -0
- package/dist/tokens/base.css +3 -4
- package/dist/tokens/eufy.css +0 -1
- package/dist/tokens/soundcore.css +3 -4
- package/package.json +3 -8
- package/style.css +118 -4968
- package/tailwind.config.js +2 -19
- package/dist/cjs/biz-components/ActiveShelf/index.d.ts +0 -174
- package/dist/cjs/biz-components/ActiveShelf/index.js +0 -2
- package/dist/cjs/biz-components/ActiveShelf/index.js.map +0 -7
- package/dist/cjs/biz-components/ActiveShelf/types.d.ts +0 -89
- package/dist/cjs/biz-components/ActiveShelf/types.js +0 -2
- package/dist/cjs/biz-components/ActiveShelf/types.js.map +0 -7
- package/dist/cjs/biz-components/AnchorNavigation/index.d.ts +0 -42
- package/dist/cjs/biz-components/AnchorNavigation/index.js +0 -2
- package/dist/cjs/biz-components/AnchorNavigation/index.js.map +0 -7
- package/dist/cjs/biz-components/AnchorNavigation/useAnchorPosition.d.ts +0 -2
- package/dist/cjs/biz-components/AnchorNavigation/useAnchorPosition.js +0 -2
- package/dist/cjs/biz-components/AnchorNavigation/useAnchorPosition.js.map +0 -7
- package/dist/cjs/biz-components/BrandCardLink/BrandCardLink.d.ts +0 -6
- package/dist/cjs/biz-components/BrandCardLink/BrandCardLink.js +0 -2
- package/dist/cjs/biz-components/BrandCardLink/BrandCardLink.js.map +0 -7
- package/dist/cjs/biz-components/BrandCardLink/index.d.ts +0 -1
- package/dist/cjs/biz-components/BrandCardLink/index.js +0 -2
- package/dist/cjs/biz-components/BrandCardLink/index.js.map +0 -7
- package/dist/cjs/biz-components/BrandCardLink/types.d.ts +0 -19
- package/dist/cjs/biz-components/BrandCardLink/types.js +0 -2
- package/dist/cjs/biz-components/BrandCardLink/types.js.map +0 -7
- package/dist/cjs/biz-components/BuyOneGetOneShelf/ProductCard.d.ts +0 -74
- package/dist/cjs/biz-components/BuyOneGetOneShelf/ProductCard.js +0 -2
- package/dist/cjs/biz-components/BuyOneGetOneShelf/ProductCard.js.map +0 -7
- package/dist/cjs/biz-components/BuyOneGetOneShelf/hooks/useBogoDataTransform.d.ts +0 -36
- package/dist/cjs/biz-components/BuyOneGetOneShelf/hooks/useBogoDataTransform.js +0 -2
- package/dist/cjs/biz-components/BuyOneGetOneShelf/hooks/useBogoDataTransform.js.map +0 -7
- package/dist/cjs/biz-components/BuyOneGetOneShelf/index.d.ts +0 -193
- package/dist/cjs/biz-components/BuyOneGetOneShelf/index.js +0 -2
- package/dist/cjs/biz-components/BuyOneGetOneShelf/index.js.map +0 -7
- package/dist/cjs/biz-components/EventSchedule/index.d.ts +0 -63
- package/dist/cjs/biz-components/EventSchedule/index.js +0 -2
- package/dist/cjs/biz-components/EventSchedule/index.js.map +0 -7
- package/dist/cjs/biz-components/IPRedirect/RegionBanner.d.ts +0 -37
- package/dist/cjs/biz-components/IPRedirect/RegionBanner.js +0 -60
- package/dist/cjs/biz-components/IPRedirect/RegionBanner.js.map +0 -7
- package/dist/cjs/biz-components/IPRedirect/RegionSelectorModal.d.ts +0 -47
- package/dist/cjs/biz-components/IPRedirect/RegionSelectorModal.js +0 -33
- package/dist/cjs/biz-components/IPRedirect/RegionSelectorModal.js.map +0 -7
- package/dist/cjs/biz-components/IPRedirect/index.d.ts +0 -9
- package/dist/cjs/biz-components/IPRedirect/index.js +0 -2
- package/dist/cjs/biz-components/IPRedirect/index.js.map +0 -7
- package/dist/cjs/biz-components/IPRedirect/type.d.ts +0 -36
- package/dist/cjs/biz-components/IPRedirect/type.js +0 -2
- package/dist/cjs/biz-components/IPRedirect/type.js.map +0 -7
- package/dist/cjs/biz-components/IPRedirect/useAutoRedirect.d.ts +0 -66
- package/dist/cjs/biz-components/IPRedirect/useAutoRedirect.js +0 -2
- package/dist/cjs/biz-components/IPRedirect/useAutoRedirect.js.map +0 -7
- package/dist/cjs/biz-components/IPRedirect/useDetectedRegionRedirect.d.ts +0 -51
- package/dist/cjs/biz-components/IPRedirect/useDetectedRegionRedirect.js +0 -2
- package/dist/cjs/biz-components/IPRedirect/useDetectedRegionRedirect.js.map +0 -7
- package/dist/cjs/biz-components/IPRedirect/useIPRedirect.d.ts +0 -42
- package/dist/cjs/biz-components/IPRedirect/useIPRedirect.js +0 -2
- package/dist/cjs/biz-components/IPRedirect/useIPRedirect.js.map +0 -7
- package/dist/cjs/biz-components/IPRedirect/useRedirectBanner.d.ts +0 -108
- package/dist/cjs/biz-components/IPRedirect/useRedirectBanner.js +0 -2
- package/dist/cjs/biz-components/IPRedirect/useRedirectBanner.js.map +0 -7
- package/dist/cjs/biz-components/IPRedirect/useRegionRedirectManager.d.ts +0 -152
- package/dist/cjs/biz-components/IPRedirect/useRegionRedirectManager.js +0 -2
- package/dist/cjs/biz-components/IPRedirect/useRegionRedirectManager.js.map +0 -7
- package/dist/cjs/biz-components/IPRedirect/useSavedRegionRedirect.d.ts +0 -51
- package/dist/cjs/biz-components/IPRedirect/useSavedRegionRedirect.js +0 -2
- package/dist/cjs/biz-components/IPRedirect/useSavedRegionRedirect.js.map +0 -7
- package/dist/cjs/biz-components/IPRedirect/utils.d.ts +0 -222
- package/dist/cjs/biz-components/IPRedirect/utils.js +0 -2
- package/dist/cjs/biz-components/IPRedirect/utils.js.map +0 -7
- package/dist/cjs/biz-components/ImageOverlayShelf/index.d.ts +0 -114
- package/dist/cjs/biz-components/ImageOverlayShelf/index.js +0 -2
- package/dist/cjs/biz-components/ImageOverlayShelf/index.js.map +0 -7
- package/dist/cjs/biz-components/Media/index.d.ts +0 -32
- package/dist/cjs/biz-components/Media/index.js +0 -2
- package/dist/cjs/biz-components/Media/index.js.map +0 -7
- package/dist/cjs/biz-components/MediaShelf/index.d.ts +0 -231
- package/dist/cjs/biz-components/MediaShelf/index.js +0 -2
- package/dist/cjs/biz-components/MediaShelf/index.js.map +0 -7
- package/dist/cjs/biz-components/MediaShelf/types.d.ts +0 -37
- package/dist/cjs/biz-components/MediaShelf/types.js +0 -2
- package/dist/cjs/biz-components/MediaShelf/types.js.map +0 -7
- package/dist/cjs/biz-components/MiniCart/index.d.ts +0 -88
- package/dist/cjs/biz-components/MiniCart/index.js +0 -2
- package/dist/cjs/biz-components/MiniCart/index.js.map +0 -7
- package/dist/cjs/biz-components/PromotionalBar/index.d.ts +0 -49
- package/dist/cjs/biz-components/PromotionalBar/index.js +0 -2
- package/dist/cjs/biz-components/PromotionalBar/index.js.map +0 -7
- package/dist/cjs/biz-components/SecondaryBanner/index.d.ts +0 -69
- package/dist/cjs/biz-components/SecondaryBanner/index.js +0 -2
- package/dist/cjs/biz-components/SecondaryBanner/index.js.map +0 -7
- package/dist/cjs/biz-components/Title/Countdown.d.ts +0 -14
- package/dist/cjs/biz-components/Title/Countdown.js +0 -2
- package/dist/cjs/biz-components/Title/Countdown.js.map +0 -7
- package/dist/cjs/biz-components/WheelLottery/BaseModal.d.ts +0 -55
- package/dist/cjs/biz-components/WheelLottery/BaseModal.js +0 -12
- package/dist/cjs/biz-components/WheelLottery/BaseModal.js.map +0 -7
- package/dist/cjs/biz-components/WheelLottery/ChanceMethods.d.ts +0 -30
- package/dist/cjs/biz-components/WheelLottery/ChanceMethods.js +0 -2
- package/dist/cjs/biz-components/WheelLottery/ChanceMethods.js.map +0 -7
- package/dist/cjs/biz-components/WheelLottery/ErrorModal.d.ts +0 -42
- package/dist/cjs/biz-components/WheelLottery/ErrorModal.js +0 -2
- package/dist/cjs/biz-components/WheelLottery/ErrorModal.js.map +0 -7
- package/dist/cjs/biz-components/WheelLottery/MyRewardsModal.d.ts +0 -91
- package/dist/cjs/biz-components/WheelLottery/MyRewardsModal.js +0 -2
- package/dist/cjs/biz-components/WheelLottery/MyRewardsModal.js.map +0 -7
- package/dist/cjs/biz-components/WheelLottery/PrizePool.d.ts +0 -26
- package/dist/cjs/biz-components/WheelLottery/PrizePool.js +0 -2
- package/dist/cjs/biz-components/WheelLottery/PrizePool.js.map +0 -7
- package/dist/cjs/biz-components/WheelLottery/RulesModal.d.ts +0 -47
- package/dist/cjs/biz-components/WheelLottery/RulesModal.js +0 -2
- package/dist/cjs/biz-components/WheelLottery/RulesModal.js.map +0 -7
- package/dist/cjs/biz-components/WheelLottery/ShareModal.d.ts +0 -74
- package/dist/cjs/biz-components/WheelLottery/ShareModal.js +0 -2
- package/dist/cjs/biz-components/WheelLottery/ShareModal.js.map +0 -7
- package/dist/cjs/biz-components/WheelLottery/Wheel.d.ts +0 -27
- package/dist/cjs/biz-components/WheelLottery/Wheel.js +0 -2
- package/dist/cjs/biz-components/WheelLottery/Wheel.js.map +0 -7
- package/dist/cjs/biz-components/WheelLottery/WinnerModal.d.ts +0 -25
- package/dist/cjs/biz-components/WheelLottery/WinnerModal.js +0 -2
- package/dist/cjs/biz-components/WheelLottery/WinnerModal.js.map +0 -7
- package/dist/cjs/biz-components/WheelLottery/index.d.ts +0 -52
- package/dist/cjs/biz-components/WheelLottery/index.js +0 -2
- package/dist/cjs/biz-components/WheelLottery/index.js.map +0 -7
- package/dist/cjs/biz-components/WheelLottery/types.d.ts +0 -1219
- package/dist/cjs/biz-components/WheelLottery/types.js +0 -2
- package/dist/cjs/biz-components/WheelLottery/types.js.map +0 -7
- package/dist/cjs/components/paginator.d.ts +0 -12
- package/dist/cjs/components/paginator.js +0 -7
- package/dist/cjs/components/paginator.js.map +0 -7
- package/dist/cjs/components/progress.d.ts +0 -46
- package/dist/cjs/components/progress.js +0 -2
- package/dist/cjs/components/progress.js.map +0 -7
- package/dist/cjs/helpers/priceFormatting.d.ts +0 -11
- package/dist/cjs/helpers/priceFormatting.js +0 -2
- package/dist/cjs/helpers/priceFormatting.js.map +0 -7
- package/dist/cjs/hooks/index.d.ts +0 -2
- package/dist/cjs/hooks/index.js +0 -2
- package/dist/cjs/hooks/index.js.map +0 -7
- package/dist/cjs/hooks/useCoupon.d.ts +0 -111
- package/dist/cjs/hooks/useCoupon.js +0 -2
- package/dist/cjs/hooks/useCoupon.js.map +0 -7
- package/dist/cjs/hooks/useMemberPrice.d.ts +0 -155
- package/dist/cjs/hooks/useMemberPrice.js +0 -2
- package/dist/cjs/hooks/useMemberPrice.js.map +0 -7
- package/dist/esm/biz-components/ActiveShelf/index.d.ts +0 -174
- package/dist/esm/biz-components/ActiveShelf/index.js +0 -2
- package/dist/esm/biz-components/ActiveShelf/index.js.map +0 -7
- package/dist/esm/biz-components/ActiveShelf/types.d.ts +0 -89
- package/dist/esm/biz-components/ActiveShelf/types.js +0 -2
- package/dist/esm/biz-components/ActiveShelf/types.js.map +0 -7
- package/dist/esm/biz-components/AnchorNavigation/index.d.ts +0 -42
- package/dist/esm/biz-components/AnchorNavigation/index.js +0 -2
- package/dist/esm/biz-components/AnchorNavigation/index.js.map +0 -7
- package/dist/esm/biz-components/AnchorNavigation/useAnchorPosition.d.ts +0 -2
- package/dist/esm/biz-components/AnchorNavigation/useAnchorPosition.js +0 -2
- package/dist/esm/biz-components/AnchorNavigation/useAnchorPosition.js.map +0 -7
- package/dist/esm/biz-components/BrandCardLink/BrandCardLink.d.ts +0 -6
- package/dist/esm/biz-components/BrandCardLink/BrandCardLink.js +0 -2
- package/dist/esm/biz-components/BrandCardLink/BrandCardLink.js.map +0 -7
- package/dist/esm/biz-components/BrandCardLink/index.d.ts +0 -1
- package/dist/esm/biz-components/BrandCardLink/index.js +0 -2
- package/dist/esm/biz-components/BrandCardLink/index.js.map +0 -7
- package/dist/esm/biz-components/BrandCardLink/types.d.ts +0 -19
- package/dist/esm/biz-components/BrandCardLink/types.js +0 -1
- package/dist/esm/biz-components/BrandCardLink/types.js.map +0 -7
- package/dist/esm/biz-components/BuyOneGetOneShelf/ProductCard.d.ts +0 -74
- package/dist/esm/biz-components/BuyOneGetOneShelf/ProductCard.js +0 -2
- package/dist/esm/biz-components/BuyOneGetOneShelf/ProductCard.js.map +0 -7
- package/dist/esm/biz-components/BuyOneGetOneShelf/hooks/useBogoDataTransform.d.ts +0 -36
- package/dist/esm/biz-components/BuyOneGetOneShelf/hooks/useBogoDataTransform.js +0 -2
- package/dist/esm/biz-components/BuyOneGetOneShelf/hooks/useBogoDataTransform.js.map +0 -7
- package/dist/esm/biz-components/BuyOneGetOneShelf/index.d.ts +0 -193
- package/dist/esm/biz-components/BuyOneGetOneShelf/index.js +0 -2
- package/dist/esm/biz-components/BuyOneGetOneShelf/index.js.map +0 -7
- package/dist/esm/biz-components/EventSchedule/index.d.ts +0 -63
- package/dist/esm/biz-components/EventSchedule/index.js +0 -2
- package/dist/esm/biz-components/EventSchedule/index.js.map +0 -7
- package/dist/esm/biz-components/IPRedirect/RegionBanner.d.ts +0 -37
- package/dist/esm/biz-components/IPRedirect/RegionBanner.js +0 -60
- package/dist/esm/biz-components/IPRedirect/RegionBanner.js.map +0 -7
- package/dist/esm/biz-components/IPRedirect/RegionSelectorModal.d.ts +0 -47
- package/dist/esm/biz-components/IPRedirect/RegionSelectorModal.js +0 -33
- package/dist/esm/biz-components/IPRedirect/RegionSelectorModal.js.map +0 -7
- package/dist/esm/biz-components/IPRedirect/index.d.ts +0 -9
- package/dist/esm/biz-components/IPRedirect/index.js +0 -2
- package/dist/esm/biz-components/IPRedirect/index.js.map +0 -7
- package/dist/esm/biz-components/IPRedirect/type.d.ts +0 -36
- package/dist/esm/biz-components/IPRedirect/type.js +0 -1
- package/dist/esm/biz-components/IPRedirect/type.js.map +0 -7
- package/dist/esm/biz-components/IPRedirect/useAutoRedirect.d.ts +0 -66
- package/dist/esm/biz-components/IPRedirect/useAutoRedirect.js +0 -2
- package/dist/esm/biz-components/IPRedirect/useAutoRedirect.js.map +0 -7
- package/dist/esm/biz-components/IPRedirect/useDetectedRegionRedirect.d.ts +0 -51
- package/dist/esm/biz-components/IPRedirect/useDetectedRegionRedirect.js +0 -2
- package/dist/esm/biz-components/IPRedirect/useDetectedRegionRedirect.js.map +0 -7
- package/dist/esm/biz-components/IPRedirect/useIPRedirect.d.ts +0 -42
- package/dist/esm/biz-components/IPRedirect/useIPRedirect.js +0 -2
- package/dist/esm/biz-components/IPRedirect/useIPRedirect.js.map +0 -7
- package/dist/esm/biz-components/IPRedirect/useRedirectBanner.d.ts +0 -108
- package/dist/esm/biz-components/IPRedirect/useRedirectBanner.js +0 -2
- package/dist/esm/biz-components/IPRedirect/useRedirectBanner.js.map +0 -7
- package/dist/esm/biz-components/IPRedirect/useRegionRedirectManager.d.ts +0 -152
- package/dist/esm/biz-components/IPRedirect/useRegionRedirectManager.js +0 -2
- package/dist/esm/biz-components/IPRedirect/useRegionRedirectManager.js.map +0 -7
- package/dist/esm/biz-components/IPRedirect/useSavedRegionRedirect.d.ts +0 -51
- package/dist/esm/biz-components/IPRedirect/useSavedRegionRedirect.js +0 -2
- package/dist/esm/biz-components/IPRedirect/useSavedRegionRedirect.js.map +0 -7
- package/dist/esm/biz-components/IPRedirect/utils.d.ts +0 -222
- package/dist/esm/biz-components/IPRedirect/utils.js +0 -2
- package/dist/esm/biz-components/IPRedirect/utils.js.map +0 -7
- package/dist/esm/biz-components/ImageOverlayShelf/index.d.ts +0 -114
- package/dist/esm/biz-components/ImageOverlayShelf/index.js +0 -2
- package/dist/esm/biz-components/ImageOverlayShelf/index.js.map +0 -7
- package/dist/esm/biz-components/Media/index.d.ts +0 -32
- package/dist/esm/biz-components/Media/index.js +0 -2
- package/dist/esm/biz-components/Media/index.js.map +0 -7
- package/dist/esm/biz-components/MediaShelf/index.d.ts +0 -231
- package/dist/esm/biz-components/MediaShelf/index.js +0 -2
- package/dist/esm/biz-components/MediaShelf/index.js.map +0 -7
- package/dist/esm/biz-components/MediaShelf/types.d.ts +0 -37
- package/dist/esm/biz-components/MediaShelf/types.js +0 -2
- package/dist/esm/biz-components/MediaShelf/types.js.map +0 -7
- package/dist/esm/biz-components/MiniCart/index.d.ts +0 -88
- package/dist/esm/biz-components/MiniCart/index.js +0 -2
- package/dist/esm/biz-components/MiniCart/index.js.map +0 -7
- package/dist/esm/biz-components/PromotionalBar/index.d.ts +0 -49
- package/dist/esm/biz-components/PromotionalBar/index.js +0 -2
- package/dist/esm/biz-components/PromotionalBar/index.js.map +0 -7
- package/dist/esm/biz-components/SecondaryBanner/index.d.ts +0 -69
- package/dist/esm/biz-components/SecondaryBanner/index.js +0 -2
- package/dist/esm/biz-components/SecondaryBanner/index.js.map +0 -7
- package/dist/esm/biz-components/Title/Countdown.d.ts +0 -14
- package/dist/esm/biz-components/Title/Countdown.js +0 -2
- package/dist/esm/biz-components/Title/Countdown.js.map +0 -7
- package/dist/esm/biz-components/WheelLottery/BaseModal.d.ts +0 -55
- package/dist/esm/biz-components/WheelLottery/BaseModal.js +0 -12
- package/dist/esm/biz-components/WheelLottery/BaseModal.js.map +0 -7
- package/dist/esm/biz-components/WheelLottery/ChanceMethods.d.ts +0 -30
- package/dist/esm/biz-components/WheelLottery/ChanceMethods.js +0 -2
- package/dist/esm/biz-components/WheelLottery/ChanceMethods.js.map +0 -7
- package/dist/esm/biz-components/WheelLottery/ErrorModal.d.ts +0 -42
- package/dist/esm/biz-components/WheelLottery/ErrorModal.js +0 -2
- package/dist/esm/biz-components/WheelLottery/ErrorModal.js.map +0 -7
- package/dist/esm/biz-components/WheelLottery/MyRewardsModal.d.ts +0 -91
- package/dist/esm/biz-components/WheelLottery/MyRewardsModal.js +0 -2
- package/dist/esm/biz-components/WheelLottery/MyRewardsModal.js.map +0 -7
- package/dist/esm/biz-components/WheelLottery/PrizePool.d.ts +0 -26
- package/dist/esm/biz-components/WheelLottery/PrizePool.js +0 -2
- package/dist/esm/biz-components/WheelLottery/PrizePool.js.map +0 -7
- package/dist/esm/biz-components/WheelLottery/RulesModal.d.ts +0 -47
- package/dist/esm/biz-components/WheelLottery/RulesModal.js +0 -2
- package/dist/esm/biz-components/WheelLottery/RulesModal.js.map +0 -7
- package/dist/esm/biz-components/WheelLottery/ShareModal.d.ts +0 -74
- package/dist/esm/biz-components/WheelLottery/ShareModal.js +0 -2
- package/dist/esm/biz-components/WheelLottery/ShareModal.js.map +0 -7
- package/dist/esm/biz-components/WheelLottery/Wheel.d.ts +0 -27
- package/dist/esm/biz-components/WheelLottery/Wheel.js +0 -2
- package/dist/esm/biz-components/WheelLottery/Wheel.js.map +0 -7
- package/dist/esm/biz-components/WheelLottery/WinnerModal.d.ts +0 -25
- package/dist/esm/biz-components/WheelLottery/WinnerModal.js +0 -2
- package/dist/esm/biz-components/WheelLottery/WinnerModal.js.map +0 -7
- package/dist/esm/biz-components/WheelLottery/index.d.ts +0 -52
- package/dist/esm/biz-components/WheelLottery/index.js +0 -2
- package/dist/esm/biz-components/WheelLottery/index.js.map +0 -7
- package/dist/esm/biz-components/WheelLottery/types.d.ts +0 -1219
- package/dist/esm/biz-components/WheelLottery/types.js +0 -2
- package/dist/esm/biz-components/WheelLottery/types.js.map +0 -7
- package/dist/esm/components/paginator.d.ts +0 -12
- package/dist/esm/components/paginator.js +0 -7
- package/dist/esm/components/paginator.js.map +0 -7
- package/dist/esm/components/progress.d.ts +0 -46
- package/dist/esm/components/progress.js +0 -2
- package/dist/esm/components/progress.js.map +0 -7
- package/dist/esm/helpers/priceFormatting.d.ts +0 -11
- package/dist/esm/helpers/priceFormatting.js +0 -2
- package/dist/esm/helpers/priceFormatting.js.map +0 -7
- package/dist/esm/hooks/index.d.ts +0 -2
- package/dist/esm/hooks/index.js +0 -2
- package/dist/esm/hooks/index.js.map +0 -7
- package/dist/esm/hooks/useCoupon.d.ts +0 -111
- package/dist/esm/hooks/useCoupon.js +0 -2
- package/dist/esm/hooks/useCoupon.js.map +0 -7
- package/dist/esm/hooks/useMemberPrice.d.ts +0 -155
- package/dist/esm/hooks/useMemberPrice.js +0 -2
- package/dist/esm/hooks/useMemberPrice.js.map +0 -7
|
@@ -1,222 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* 从路径中移除 locale 前缀
|
|
3
|
-
* @param path - 当前路径(如 '/uk/products/a1234' 或 '/eu-de')
|
|
4
|
-
* @param locales - locale 列表(如 ['us', 'uk', 'eu-de', 'ca'])
|
|
5
|
-
* @returns 去除 locale 后的路径(如 '/products/a1234' 或 '/')
|
|
6
|
-
*
|
|
7
|
-
* @example
|
|
8
|
-
* removeLocalePrefix('/uk/products/a1234', ['uk', 'us'])
|
|
9
|
-
* // 返回: '/products/a1234'
|
|
10
|
-
*
|
|
11
|
-
* removeLocalePrefix('/eu-de', ['eu-de', 'us'])
|
|
12
|
-
* // 返回: '/'
|
|
13
|
-
*
|
|
14
|
-
* removeLocalePrefix('/products/a1234', ['uk', 'us'])
|
|
15
|
-
* // 返回: '/products/a1234' (没有匹配的 locale,原样返回)
|
|
16
|
-
*/
|
|
17
|
-
export declare function removeLocalePrefix(path: string, locales: string[]): string;
|
|
18
|
-
/**
|
|
19
|
-
* 检查 URL 搜索参数中是否包含标准 UTM 参数
|
|
20
|
-
* (如 utm_source, utm_medium, utm_campaign 等)
|
|
21
|
-
*
|
|
22
|
-
* @param searchParams - URL 搜索参数字符串(如 '?utm_source=google&foo=bar')
|
|
23
|
-
* @returns 是否包含 UTM 参数
|
|
24
|
-
*
|
|
25
|
-
* @example
|
|
26
|
-
* hasUtmParams('?utm_source=google')
|
|
27
|
-
* // 返回: true
|
|
28
|
-
*
|
|
29
|
-
* hasUtmParams('?utm_medium=cpc&utm_campaign=summer')
|
|
30
|
-
* // 返回: true
|
|
31
|
-
*
|
|
32
|
-
* hasUtmParams('?foo=bar')
|
|
33
|
-
* // 返回: false
|
|
34
|
-
*
|
|
35
|
-
* hasUtmParams('')
|
|
36
|
-
* // 返回: false
|
|
37
|
-
*/
|
|
38
|
-
export declare function hasUtmParams(searchParams: string): boolean;
|
|
39
|
-
/**
|
|
40
|
-
* 向 URL 添加 ref 参数
|
|
41
|
-
*
|
|
42
|
-
* @param url - 目标 URL(可以是完整 URL 或相对路径)
|
|
43
|
-
* @param refValue - ref 参数的值
|
|
44
|
-
* @returns 添加了 ref 参数的 URL
|
|
45
|
-
*
|
|
46
|
-
* @example
|
|
47
|
-
* appendRefParam('https://example.com/products', 'geo_redirect_auto_de')
|
|
48
|
-
* // 返回: 'https://example.com/products?ref=geo_redirect_auto_de'
|
|
49
|
-
*
|
|
50
|
-
* appendRefParam('https://example.com/products?utm_source=google', 'geo_redirect_auto_de')
|
|
51
|
-
* // 返回: 'https://example.com/products?utm_source=google&ref=geo_redirect_auto_de'
|
|
52
|
-
*
|
|
53
|
-
* appendRefParam('/products', 'affiliate_123')
|
|
54
|
-
* // 返回: '/products?ref=affiliate_123'
|
|
55
|
-
*/
|
|
56
|
-
export declare function appendRefParam(url: string, refValue: string): string;
|
|
57
|
-
/**
|
|
58
|
-
* 构建地理重定向的 ref 参数值
|
|
59
|
-
*
|
|
60
|
-
* @param countryCode - 国家代码(如 'DE', 'US', 'HK')
|
|
61
|
-
* @returns 格式化的 ref 参数值(如 'geo_redirect_auto_de')
|
|
62
|
-
*
|
|
63
|
-
* @example
|
|
64
|
-
* buildGeoRedirectRef('DE')
|
|
65
|
-
* // 返回: 'geo_redirect_auto_de'
|
|
66
|
-
*
|
|
67
|
-
* buildGeoRedirectRef('HK')
|
|
68
|
-
* // 返回: 'geo_redirect_auto_hk'
|
|
69
|
-
*/
|
|
70
|
-
export declare function buildGeoRedirectRef(countryCode: string): string;
|
|
71
|
-
/**
|
|
72
|
-
* 构建地区重定向的 ref 参数值(手动切换)
|
|
73
|
-
*
|
|
74
|
-
* @param countryCode - 国家代码(如 'DE', 'US', 'HK')
|
|
75
|
-
* @returns 格式化的 ref 参数值(如 'geo_redirect_manual_de')
|
|
76
|
-
*
|
|
77
|
-
* @example
|
|
78
|
-
* buildGeoRedirectRefManual('DE')
|
|
79
|
-
* // 返回: 'geo_redirect_manual_de'
|
|
80
|
-
*
|
|
81
|
-
* buildGeoRedirectRefManual('HK')
|
|
82
|
-
* // 返回: 'geo_redirect_manual_hk'
|
|
83
|
-
*/
|
|
84
|
-
export declare function buildGeoRedirectRefManual(countryCode: string): string;
|
|
85
|
-
/**
|
|
86
|
-
* 解析用户地区偏好 cookie 值
|
|
87
|
-
*
|
|
88
|
-
* @param cookieValue - Cookie 值(如 'v1_CA_EN' 或 'v1_CA')
|
|
89
|
-
* @returns 解析后的地区代码和语言代码,如果格式无效返回 null
|
|
90
|
-
*
|
|
91
|
-
* @example
|
|
92
|
-
* parseRegionCookie('v1_CA_EN')
|
|
93
|
-
* // 返回: { regionCode: 'CA', languageCode: 'EN' }
|
|
94
|
-
*
|
|
95
|
-
* parseRegionCookie('v1_CA')
|
|
96
|
-
* // 返回: { regionCode: 'CA', languageCode: undefined }
|
|
97
|
-
*
|
|
98
|
-
* parseRegionCookie('invalid')
|
|
99
|
-
* // 返回: null
|
|
100
|
-
*/
|
|
101
|
-
export declare function parseRegionCookie(cookieValue: string): {
|
|
102
|
-
regionCode: string;
|
|
103
|
-
languageCode?: string;
|
|
104
|
-
} | null;
|
|
105
|
-
/**
|
|
106
|
-
* 从 regions 数组自动生成地区代码到路径前缀的映射
|
|
107
|
-
*
|
|
108
|
-
* @param regions - 地区配置数组
|
|
109
|
-
* @param customMap - 可选的自定义映射(优先级高于自动生成)
|
|
110
|
-
* @returns 地区代码到路径前缀的映射对象
|
|
111
|
-
*
|
|
112
|
-
* @example
|
|
113
|
-
* const regions = [
|
|
114
|
-
* { code: 'US', url: 'https://www.anker.com' },
|
|
115
|
-
* { code: 'CA', url: 'https://www.anker.com/ca' },
|
|
116
|
-
* { code: 'DE', url: 'https://www.anker.com/eu-de' }
|
|
117
|
-
* ]
|
|
118
|
-
* generateRegionToPathMap(regions)
|
|
119
|
-
* // 返回: { US: '', CA: 'ca', DE: 'eu-de' }
|
|
120
|
-
*
|
|
121
|
-
* generateRegionToPathMap(regions, { UK: 'uk' })
|
|
122
|
-
* // 返回: { US: '', CA: 'ca', DE: 'eu-de', UK: 'uk' }
|
|
123
|
-
*/
|
|
124
|
-
export declare function generateRegionToPathMap(regions: Array<{
|
|
125
|
-
code: string;
|
|
126
|
-
url: string;
|
|
127
|
-
}>, customMap?: Record<string, string>): Record<string, string>;
|
|
128
|
-
/**
|
|
129
|
-
* 检查路径/URL 是否在白名单中
|
|
130
|
-
* 支持:通配符匹配、忽略域名差异、忽略尾部斜杠
|
|
131
|
-
*
|
|
132
|
-
* @param path - 当前路径(如 '/ca' 或 '/products/123')
|
|
133
|
-
* @param whitelist - 白名单数组(支持路径或完整 URL,支持通配符 *)
|
|
134
|
-
* @returns 是否在白名单中
|
|
135
|
-
*
|
|
136
|
-
* @example
|
|
137
|
-
* isPathInWhitelist('/ca', ['/ca', '/uk'])
|
|
138
|
-
* // 返回: true
|
|
139
|
-
*
|
|
140
|
-
* isPathInWhitelist('/ca/', ['/ca'])
|
|
141
|
-
* // 返回: true(忽略尾部斜杠)
|
|
142
|
-
*
|
|
143
|
-
* isPathInWhitelist('/products/123', ['/products/*'])
|
|
144
|
-
* // 返回: true(通配符匹配)
|
|
145
|
-
*
|
|
146
|
-
* isPathInWhitelist('/checkout', ['https://www.anker.com/checkout'])
|
|
147
|
-
* // 返回: true(忽略域名差异)
|
|
148
|
-
*
|
|
149
|
-
* isPathInWhitelist('/about', ['/ca', '/uk'])
|
|
150
|
-
* // 返回: false
|
|
151
|
-
*/
|
|
152
|
-
export declare function isPathInWhitelist(path: string, whitelist: string[]): boolean;
|
|
153
|
-
/**
|
|
154
|
-
* 验证地区配置的完整性和正确性
|
|
155
|
-
*
|
|
156
|
-
* @param options - 验证选项
|
|
157
|
-
* @param options.regions - 地区配置数组
|
|
158
|
-
* @param options.countryToRegionMap - 国家到地区的映射
|
|
159
|
-
* @param options.userCountry - 用户的国家代码(可选)
|
|
160
|
-
* @returns 验证结果
|
|
161
|
-
*
|
|
162
|
-
* @example
|
|
163
|
-
* const validation = validateRegionConfig({
|
|
164
|
-
* regions: [{ code: 'US', ... }, { code: 'CA', ... }],
|
|
165
|
-
* countryToRegionMap: { US: 'US', CA: 'CA', HK: 'DE' },
|
|
166
|
-
* userCountry: 'HK'
|
|
167
|
-
* })
|
|
168
|
-
*
|
|
169
|
-
* if (validation.valid) {
|
|
170
|
-
* console.log('映射的地区:', validation.mappedRegion) // 'DE'
|
|
171
|
-
* } else {
|
|
172
|
-
* console.warn('验证失败:', validation.error)
|
|
173
|
-
* }
|
|
174
|
-
*/
|
|
175
|
-
export declare function validateRegionConfig(options: {
|
|
176
|
-
regions?: Array<{
|
|
177
|
-
code: string;
|
|
178
|
-
[key: string]: any;
|
|
179
|
-
}>;
|
|
180
|
-
countryToRegionMap?: Record<string, string>;
|
|
181
|
-
userCountry?: string;
|
|
182
|
-
}): {
|
|
183
|
-
valid: boolean;
|
|
184
|
-
error?: string;
|
|
185
|
-
mappedRegion?: string;
|
|
186
|
-
};
|
|
187
|
-
/**
|
|
188
|
-
* 将 locale 字符串转换为地区代码
|
|
189
|
-
*
|
|
190
|
-
* @param locale - 当前 locale(如 'us', 'ca', 'eu-de')
|
|
191
|
-
* @param regionToPathMap - 地区代码到路径前缀的映射
|
|
192
|
-
* @returns 地区代码(如 'US', 'CA', 'DE')
|
|
193
|
-
*
|
|
194
|
-
* @example
|
|
195
|
-
* const regionToPathMap = { US: '', CA: 'ca', DE: 'eu-de' }
|
|
196
|
-
*
|
|
197
|
-
* localeToRegionCode('ca', regionToPathMap)
|
|
198
|
-
* // 返回: 'CA'
|
|
199
|
-
*
|
|
200
|
-
* localeToRegionCode('eu-de', regionToPathMap)
|
|
201
|
-
* // 返回: 'DE'
|
|
202
|
-
*
|
|
203
|
-
* localeToRegionCode('us', regionToPathMap)
|
|
204
|
-
* // 返回: 'US'
|
|
205
|
-
*
|
|
206
|
-
* localeToRegionCode('unknown', regionToPathMap)
|
|
207
|
-
* // 返回: 'UNKNOWN'(找不到时使用大写形式)
|
|
208
|
-
*/
|
|
209
|
-
export declare function localeToRegionCode(locale: string | null | undefined, regionToPathMap: Record<string, string>): string;
|
|
210
|
-
/**
|
|
211
|
-
* 从 regionToPathMap 生成所有 locale 列表(用于移除路径前缀)
|
|
212
|
-
*
|
|
213
|
-
* @param regionToPathMap - 地区代码到路径前缀的映射
|
|
214
|
-
* @returns locale 列表(过滤掉空字符串)
|
|
215
|
-
*
|
|
216
|
-
* @example
|
|
217
|
-
* const regionToPathMap = { US: '', CA: 'ca', DE: 'eu-de', UK: 'uk' }
|
|
218
|
-
*
|
|
219
|
-
* generateAllLocales(regionToPathMap)
|
|
220
|
-
* // 返回: ['ca', 'eu-de', 'uk']
|
|
221
|
-
*/
|
|
222
|
-
export declare function generateAllLocales(regionToPathMap: Record<string, string>): string[];
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";var a=Object.defineProperty;var u=Object.getOwnPropertyDescriptor;var l=Object.getOwnPropertyNames;var d=Object.prototype.hasOwnProperty;var f=(e,r)=>{for(var t in r)a(e,t,{get:r[t],enumerable:!0})},p=(e,r,t,o)=>{if(r&&typeof r=="object"||typeof r=="function")for(let i of l(r))!d.call(e,i)&&i!==t&&a(e,i,{get:()=>r[i],enumerable:!(o=u(r,i))||o.enumerable});return e};var R=e=>p(a({},"__esModule",{value:!0}),e);var W={};f(W,{appendRefParam:()=>h,buildGeoRedirectRef:()=>m,buildGeoRedirectRefManual:()=>y,generateAllLocales:()=>L,generateRegionToPathMap:()=>b,hasUtmParams:()=>x,isPathInWhitelist:()=>v,localeToRegionCode:()=>_,parseRegionCookie:()=>$,removeLocalePrefix:()=>C,validateRegionConfig:()=>U});module.exports=R(W);function C(e,r){for(const t of r)if(e===`/${t}`||e.startsWith(`/${t}/`))return e.substring(`/${t}`.length)||"/";return e}function x(e){return/[?&]utm_/i.test(e)}function h(e,r){const t=e.includes("?")?"&":"?";return`${e}${t}ref=${encodeURIComponent(r)}`}function m(e){return`geo_redirect_auto_${e.toLowerCase()}`}function y(e){return`geo_redirect_manual_${e.toLowerCase()}`}function $(e){if(!e||!e.startsWith("v1_"))return null;const r=e.substring(3).split("_");return r.length===0||!r[0]?null:{regionCode:r[0],languageCode:r[1]}}function b(e,r){const t={};return e&&e.length>0&&e.forEach(o=>{try{const n=new URL(o.url).pathname.replace(/^\//,"").replace(/\/$/,"");t[o.code]=n}catch{t[o.code]=o.code==="US"?"":o.code.toLowerCase()}}),r&&Object.keys(r).length>0&&Object.assign(t,r),t}function v(e,r){if(!r||r.length===0)return!1;const t=n=>n?.endsWith("/")?n.slice(0,-1):n,o=n=>{if(!n)return"";if(n.startsWith("http://")||n.startsWith("https://"))try{return new URL(n).pathname}catch{return n}return n},i=t(e);return r.some(n=>{const g=o(n),s=t(g);if(s.includes("*")){const c=s.replace(/\*/g,".*");return new RegExp(`^${c}$`).test(i)}return i===s})}function U(e){const{regions:r,countryToRegionMap:t,userCountry:o}=e;if(!r||r.length===0)return{valid:!1,error:"\u26A0\uFE0F regions \u672A\u914D\u7F6E\uFF0C\u65E0\u6CD5\u6267\u884C\u5730\u533A\u8DF3\u8F6C"};if(!t||Object.keys(t).length===0)return{valid:!1,error:"\u26A0\uFE0F countryToRegionMap \u672A\u914D\u7F6E\uFF0C\u65E0\u6CD5\u6267\u884C\u5730\u533A\u8DF3\u8F6C"};if(o){const i=o.toUpperCase(),n=t[i];return n?r.some(s=>s.code===n)?{valid:!0,mappedRegion:n}:{valid:!1,error:`\u26A0\uFE0F \u5730\u533A\u4EE3\u7801 ${n} \u5728 regions \u4E2D\u4E0D\u5B58\u5728\uFF0C\u8BF7\u68C0\u67E5\u914D\u7F6E`}:{valid:!1,error:`\u2139\uFE0F \u56FD\u5BB6 ${i} \u672A\u914D\u7F6E\u5730\u533A\u6620\u5C04\uFF0C\u4E0D\u6267\u884C\u8DF3\u8F6C`}}return{valid:!0}}function _(e,r){return e?Object.keys(r).find(o=>r[o]===e.toLowerCase()||o===e.toUpperCase())||e.toUpperCase():"US"}function L(e){return Object.values(e).filter(r=>r!=="")}
|
|
2
|
-
//# sourceMappingURL=utils.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../src/biz-components/IPRedirect/utils.ts"],
|
|
4
|
-
"sourcesContent": ["/**\n * \u4ECE\u8DEF\u5F84\u4E2D\u79FB\u9664 locale \u524D\u7F00\n * @param path - \u5F53\u524D\u8DEF\u5F84\uFF08\u5982 '/uk/products/a1234' \u6216 '/eu-de'\uFF09\n * @param locales - locale \u5217\u8868\uFF08\u5982 ['us', 'uk', 'eu-de', 'ca']\uFF09\n * @returns \u53BB\u9664 locale \u540E\u7684\u8DEF\u5F84\uFF08\u5982 '/products/a1234' \u6216 '/'\uFF09\n *\n * @example\n * removeLocalePrefix('/uk/products/a1234', ['uk', 'us'])\n * // \u8FD4\u56DE: '/products/a1234'\n *\n * removeLocalePrefix('/eu-de', ['eu-de', 'us'])\n * // \u8FD4\u56DE: '/'\n *\n * removeLocalePrefix('/products/a1234', ['uk', 'us'])\n * // \u8FD4\u56DE: '/products/a1234' (\u6CA1\u6709\u5339\u914D\u7684 locale\uFF0C\u539F\u6837\u8FD4\u56DE)\n */\nexport function removeLocalePrefix(path: string, locales: string[]): string {\n for (const locale of locales) {\n if (path === `/${locale}` || path.startsWith(`/${locale}/`)) {\n return path.substring(`/${locale}`.length) || '/'\n }\n }\n return path\n}\n\n/**\n * \u68C0\u67E5 URL \u641C\u7D22\u53C2\u6570\u4E2D\u662F\u5426\u5305\u542B\u6807\u51C6 UTM \u53C2\u6570\n * \uFF08\u5982 utm_source, utm_medium, utm_campaign \u7B49\uFF09\n *\n * @param searchParams - URL \u641C\u7D22\u53C2\u6570\u5B57\u7B26\u4E32\uFF08\u5982 '?utm_source=google&foo=bar'\uFF09\n * @returns \u662F\u5426\u5305\u542B UTM \u53C2\u6570\n *\n * @example\n * hasUtmParams('?utm_source=google')\n * // \u8FD4\u56DE: true\n *\n * hasUtmParams('?utm_medium=cpc&utm_campaign=summer')\n * // \u8FD4\u56DE: true\n *\n * hasUtmParams('?foo=bar')\n * // \u8FD4\u56DE: false\n *\n * hasUtmParams('')\n * // \u8FD4\u56DE: false\n */\nexport function hasUtmParams(searchParams: string): boolean {\n return /[?&]utm_/i.test(searchParams)\n}\n\n/**\n * \u5411 URL \u6DFB\u52A0 ref \u53C2\u6570\n *\n * @param url - \u76EE\u6807 URL\uFF08\u53EF\u4EE5\u662F\u5B8C\u6574 URL \u6216\u76F8\u5BF9\u8DEF\u5F84\uFF09\n * @param refValue - ref \u53C2\u6570\u7684\u503C\n * @returns \u6DFB\u52A0\u4E86 ref \u53C2\u6570\u7684 URL\n *\n * @example\n * appendRefParam('https://example.com/products', 'geo_redirect_auto_de')\n * // \u8FD4\u56DE: 'https://example.com/products?ref=geo_redirect_auto_de'\n *\n * appendRefParam('https://example.com/products?utm_source=google', 'geo_redirect_auto_de')\n * // \u8FD4\u56DE: 'https://example.com/products?utm_source=google&ref=geo_redirect_auto_de'\n *\n * appendRefParam('/products', 'affiliate_123')\n * // \u8FD4\u56DE: '/products?ref=affiliate_123'\n */\nexport function appendRefParam(url: string, refValue: string): string {\n const separator = url.includes('?') ? '&' : '?'\n return `${url}${separator}ref=${encodeURIComponent(refValue)}`\n}\n\n/**\n * \u6784\u5EFA\u5730\u7406\u91CD\u5B9A\u5411\u7684 ref \u53C2\u6570\u503C\n *\n * @param countryCode - \u56FD\u5BB6\u4EE3\u7801\uFF08\u5982 'DE', 'US', 'HK'\uFF09\n * @returns \u683C\u5F0F\u5316\u7684 ref \u53C2\u6570\u503C\uFF08\u5982 'geo_redirect_auto_de'\uFF09\n *\n * @example\n * buildGeoRedirectRef('DE')\n * // \u8FD4\u56DE: 'geo_redirect_auto_de'\n *\n * buildGeoRedirectRef('HK')\n * // \u8FD4\u56DE: 'geo_redirect_auto_hk'\n */\nexport function buildGeoRedirectRef(countryCode: string): string {\n return `geo_redirect_auto_${countryCode.toLowerCase()}`\n}\n\n/**\n * \u6784\u5EFA\u5730\u533A\u91CD\u5B9A\u5411\u7684 ref \u53C2\u6570\u503C\uFF08\u624B\u52A8\u5207\u6362\uFF09\n *\n * @param countryCode - \u56FD\u5BB6\u4EE3\u7801\uFF08\u5982 'DE', 'US', 'HK'\uFF09\n * @returns \u683C\u5F0F\u5316\u7684 ref \u53C2\u6570\u503C\uFF08\u5982 'geo_redirect_manual_de'\uFF09\n *\n * @example\n * buildGeoRedirectRefManual('DE')\n * // \u8FD4\u56DE: 'geo_redirect_manual_de'\n *\n * buildGeoRedirectRefManual('HK')\n * // \u8FD4\u56DE: 'geo_redirect_manual_hk'\n */\nexport function buildGeoRedirectRefManual(countryCode: string): string {\n return `geo_redirect_manual_${countryCode.toLowerCase()}`\n}\n\n/**\n * \u89E3\u6790\u7528\u6237\u5730\u533A\u504F\u597D cookie \u503C\n *\n * @param cookieValue - Cookie \u503C\uFF08\u5982 'v1_CA_EN' \u6216 'v1_CA'\uFF09\n * @returns \u89E3\u6790\u540E\u7684\u5730\u533A\u4EE3\u7801\u548C\u8BED\u8A00\u4EE3\u7801\uFF0C\u5982\u679C\u683C\u5F0F\u65E0\u6548\u8FD4\u56DE null\n *\n * @example\n * parseRegionCookie('v1_CA_EN')\n * // \u8FD4\u56DE: { regionCode: 'CA', languageCode: 'EN' }\n *\n * parseRegionCookie('v1_CA')\n * // \u8FD4\u56DE: { regionCode: 'CA', languageCode: undefined }\n *\n * parseRegionCookie('invalid')\n * // \u8FD4\u56DE: null\n */\nexport function parseRegionCookie(cookieValue: string): {\n regionCode: string\n languageCode?: string\n} | null {\n if (!cookieValue || !cookieValue.startsWith('v1_')) {\n return null\n }\n\n // \u53BB\u9664 'v1_' \u524D\u7F00\n const parts = cookieValue.substring(3).split('_')\n\n if (parts.length === 0 || !parts[0]) {\n return null\n }\n\n return {\n regionCode: parts[0],\n languageCode: parts[1],\n }\n}\n\n/**\n * \u4ECE regions \u6570\u7EC4\u81EA\u52A8\u751F\u6210\u5730\u533A\u4EE3\u7801\u5230\u8DEF\u5F84\u524D\u7F00\u7684\u6620\u5C04\n *\n * @param regions - \u5730\u533A\u914D\u7F6E\u6570\u7EC4\n * @param customMap - \u53EF\u9009\u7684\u81EA\u5B9A\u4E49\u6620\u5C04\uFF08\u4F18\u5148\u7EA7\u9AD8\u4E8E\u81EA\u52A8\u751F\u6210\uFF09\n * @returns \u5730\u533A\u4EE3\u7801\u5230\u8DEF\u5F84\u524D\u7F00\u7684\u6620\u5C04\u5BF9\u8C61\n *\n * @example\n * const regions = [\n * { code: 'US', url: 'https://www.anker.com' },\n * { code: 'CA', url: 'https://www.anker.com/ca' },\n * { code: 'DE', url: 'https://www.anker.com/eu-de' }\n * ]\n * generateRegionToPathMap(regions)\n * // \u8FD4\u56DE: { US: '', CA: 'ca', DE: 'eu-de' }\n *\n * generateRegionToPathMap(regions, { UK: 'uk' })\n * // \u8FD4\u56DE: { US: '', CA: 'ca', DE: 'eu-de', UK: 'uk' }\n */\nexport function generateRegionToPathMap(\n regions: Array<{ code: string; url: string }>,\n customMap?: Record<string, string>\n): Record<string, string> {\n const map: Record<string, string> = {}\n\n // \u4ECE regions \u6570\u7EC4\u81EA\u52A8\u751F\u6210\u6620\u5C04\n if (regions && regions.length > 0) {\n regions.forEach(region => {\n try {\n const url = new URL(region.url)\n // \u63D0\u53D6\u8DEF\u5F84\u90E8\u5206\uFF08\u79FB\u9664\u9996\u5C3E\u659C\u6760\uFF09\n const path = url.pathname.replace(/^\\//, '').replace(/\\/$/, '')\n map[region.code] = path\n } catch (e) {\n // URL \u89E3\u6790\u5931\u8D25\uFF0C\u4F7F\u7528 code \u7684\u5C0F\u5199\u5F62\u5F0F\n // \u7279\u6B8A\u5904\u7406 US\uFF1A\u4F7F\u7528\u7A7A\u5B57\u7B26\u4E32\n map[region.code] = region.code === 'US' ? '' : region.code.toLowerCase()\n }\n })\n }\n\n // \u5408\u5E76\u81EA\u5B9A\u4E49\u6620\u5C04\uFF08\u4F18\u5148\u7EA7\u66F4\u9AD8\uFF09\n if (customMap && Object.keys(customMap).length > 0) {\n Object.assign(map, customMap)\n }\n\n return map\n}\n\n/**\n * \u68C0\u67E5\u8DEF\u5F84/URL \u662F\u5426\u5728\u767D\u540D\u5355\u4E2D\n * \u652F\u6301\uFF1A\u901A\u914D\u7B26\u5339\u914D\u3001\u5FFD\u7565\u57DF\u540D\u5DEE\u5F02\u3001\u5FFD\u7565\u5C3E\u90E8\u659C\u6760\n *\n * @param path - \u5F53\u524D\u8DEF\u5F84\uFF08\u5982 '/ca' \u6216 '/products/123'\uFF09\n * @param whitelist - \u767D\u540D\u5355\u6570\u7EC4\uFF08\u652F\u6301\u8DEF\u5F84\u6216\u5B8C\u6574 URL\uFF0C\u652F\u6301\u901A\u914D\u7B26 *\uFF09\n * @returns \u662F\u5426\u5728\u767D\u540D\u5355\u4E2D\n *\n * @example\n * isPathInWhitelist('/ca', ['/ca', '/uk'])\n * // \u8FD4\u56DE: true\n *\n * isPathInWhitelist('/ca/', ['/ca'])\n * // \u8FD4\u56DE: true\uFF08\u5FFD\u7565\u5C3E\u90E8\u659C\u6760\uFF09\n *\n * isPathInWhitelist('/products/123', ['/products/*'])\n * // \u8FD4\u56DE: true\uFF08\u901A\u914D\u7B26\u5339\u914D\uFF09\n *\n * isPathInWhitelist('/checkout', ['https://www.anker.com/checkout'])\n * // \u8FD4\u56DE: true\uFF08\u5FFD\u7565\u57DF\u540D\u5DEE\u5F02\uFF09\n *\n * isPathInWhitelist('/about', ['/ca', '/uk'])\n * // \u8FD4\u56DE: false\n */\nexport function isPathInWhitelist(path: string, whitelist: string[]): boolean {\n if (!whitelist || whitelist.length === 0) {\n return false\n }\n\n // \u8F85\u52A9\u51FD\u6570\uFF1A\u79FB\u9664\u5C3E\u90E8\u659C\u6760\n const removeTrailingSlash = (str: string): string => {\n return str?.endsWith('/') ? str.slice(0, -1) : str\n }\n\n // \u8F85\u52A9\u51FD\u6570\uFF1A\u4ECE URL \u4E2D\u63D0\u53D6\u8DEF\u5F84\u90E8\u5206\uFF08\u5FFD\u7565\u57DF\u540D\uFF09\n const extractPath = (urlOrPath: string): string => {\n if (!urlOrPath) return ''\n\n // \u5982\u679C\u662F\u5B8C\u6574 URL\uFF0C\u63D0\u53D6\u8DEF\u5F84\u90E8\u5206\n if (urlOrPath.startsWith('http://') || urlOrPath.startsWith('https://')) {\n try {\n const url = new URL(urlOrPath)\n return url.pathname\n } catch (e) {\n return urlOrPath\n }\n }\n\n // \u5426\u5219\u5DF2\u7ECF\u662F\u8DEF\u5F84\uFF0C\u76F4\u63A5\u8FD4\u56DE\n return urlOrPath\n }\n\n // \u6807\u51C6\u5316\u5F53\u524D\u8DEF\u5F84\uFF08\u79FB\u9664\u5C3E\u90E8\u659C\u6760\uFF09\n const normalizedPath = removeTrailingSlash(path)\n\n return whitelist.some(pattern => {\n // \u5982\u679C pattern \u662F\u5B8C\u6574 URL\uFF0C\u53EA\u63D0\u53D6\u8DEF\u5F84\u90E8\u5206\u8FDB\u884C\u6BD4\u8F83\n const patternPath = extractPath(pattern)\n const normalizedPatternPath = removeTrailingSlash(patternPath)\n\n // \u652F\u6301\u901A\u914D\u7B26 * \u5339\u914D\n if (normalizedPatternPath.includes('*')) {\n const regexPattern = normalizedPatternPath.replace(/\\*/g, '.*')\n const regex = new RegExp(`^${regexPattern}$`)\n return regex.test(normalizedPath)\n }\n\n // \u7CBE\u786E\u5339\u914D\u8DEF\u5F84\uFF08\u5FFD\u7565\u5C3E\u90E8\u659C\u6760\uFF0C\u5FFD\u7565\u57DF\u540D\u5DEE\u5F02\uFF09\n return normalizedPath === normalizedPatternPath\n })\n}\n\n/**\n * \u9A8C\u8BC1\u5730\u533A\u914D\u7F6E\u7684\u5B8C\u6574\u6027\u548C\u6B63\u786E\u6027\n *\n * @param options - \u9A8C\u8BC1\u9009\u9879\n * @param options.regions - \u5730\u533A\u914D\u7F6E\u6570\u7EC4\n * @param options.countryToRegionMap - \u56FD\u5BB6\u5230\u5730\u533A\u7684\u6620\u5C04\n * @param options.userCountry - \u7528\u6237\u7684\u56FD\u5BB6\u4EE3\u7801\uFF08\u53EF\u9009\uFF09\n * @returns \u9A8C\u8BC1\u7ED3\u679C\n *\n * @example\n * const validation = validateRegionConfig({\n * regions: [{ code: 'US', ... }, { code: 'CA', ... }],\n * countryToRegionMap: { US: 'US', CA: 'CA', HK: 'DE' },\n * userCountry: 'HK'\n * })\n *\n * if (validation.valid) {\n * console.log('\u6620\u5C04\u7684\u5730\u533A:', validation.mappedRegion) // 'DE'\n * } else {\n * console.warn('\u9A8C\u8BC1\u5931\u8D25:', validation.error)\n * }\n */\nexport function validateRegionConfig(options: {\n regions?: Array<{ code: string; [key: string]: any }>\n countryToRegionMap?: Record<string, string>\n userCountry?: string\n}): {\n valid: boolean\n error?: string\n mappedRegion?: string\n} {\n const { regions, countryToRegionMap, userCountry } = options\n\n // \u68C0\u67E5 regions \u662F\u5426\u914D\u7F6E\n if (!regions || regions.length === 0) {\n return {\n valid: false,\n error: '\u26A0\uFE0F regions \u672A\u914D\u7F6E\uFF0C\u65E0\u6CD5\u6267\u884C\u5730\u533A\u8DF3\u8F6C',\n }\n }\n\n // \u68C0\u67E5 countryToRegionMap \u662F\u5426\u914D\u7F6E\n if (!countryToRegionMap || Object.keys(countryToRegionMap).length === 0) {\n return {\n valid: false,\n error: '\u26A0\uFE0F countryToRegionMap \u672A\u914D\u7F6E\uFF0C\u65E0\u6CD5\u6267\u884C\u5730\u533A\u8DF3\u8F6C',\n }\n }\n\n // \u5982\u679C\u63D0\u4F9B\u4E86 userCountry\uFF0C\u9A8C\u8BC1\u6620\u5C04\u5173\u7CFB\n if (userCountry) {\n const upperUserCountry = userCountry.toUpperCase()\n const mappedRegion = countryToRegionMap[upperUserCountry]\n\n // \u68C0\u67E5\u5F53\u524D\u56FD\u5BB6\u662F\u5426\u6709\u6620\u5C04\n if (!mappedRegion) {\n return {\n valid: false,\n error: `\u2139\uFE0F \u56FD\u5BB6 ${upperUserCountry} \u672A\u914D\u7F6E\u5730\u533A\u6620\u5C04\uFF0C\u4E0D\u6267\u884C\u8DF3\u8F6C`,\n }\n }\n\n // \u786E\u4FDD\u6620\u5C04\u7684\u5730\u533A\u5728 regions \u4E2D\u5B58\u5728\n const regionExists = regions.some(r => r.code === mappedRegion)\n if (!regionExists) {\n return {\n valid: false,\n error: `\u26A0\uFE0F \u5730\u533A\u4EE3\u7801 ${mappedRegion} \u5728 regions \u4E2D\u4E0D\u5B58\u5728\uFF0C\u8BF7\u68C0\u67E5\u914D\u7F6E`,\n }\n }\n\n return {\n valid: true,\n mappedRegion,\n }\n }\n\n // \u672A\u63D0\u4F9B userCountry\uFF0C\u53EA\u9A8C\u8BC1\u914D\u7F6E\u5B58\u5728\u6027\n return {\n valid: true,\n }\n}\n\n/**\n * \u5C06 locale \u5B57\u7B26\u4E32\u8F6C\u6362\u4E3A\u5730\u533A\u4EE3\u7801\n *\n * @param locale - \u5F53\u524D locale\uFF08\u5982 'us', 'ca', 'eu-de'\uFF09\n * @param regionToPathMap - \u5730\u533A\u4EE3\u7801\u5230\u8DEF\u5F84\u524D\u7F00\u7684\u6620\u5C04\n * @returns \u5730\u533A\u4EE3\u7801\uFF08\u5982 'US', 'CA', 'DE'\uFF09\n *\n * @example\n * const regionToPathMap = { US: '', CA: 'ca', DE: 'eu-de' }\n *\n * localeToRegionCode('ca', regionToPathMap)\n * // \u8FD4\u56DE: 'CA'\n *\n * localeToRegionCode('eu-de', regionToPathMap)\n * // \u8FD4\u56DE: 'DE'\n *\n * localeToRegionCode('us', regionToPathMap)\n * // \u8FD4\u56DE: 'US'\n *\n * localeToRegionCode('unknown', regionToPathMap)\n * // \u8FD4\u56DE: 'UNKNOWN'\uFF08\u627E\u4E0D\u5230\u65F6\u4F7F\u7528\u5927\u5199\u5F62\u5F0F\uFF09\n */\nexport function localeToRegionCode(locale: string | null | undefined, regionToPathMap: Record<string, string>): string {\n if (!locale) return 'US'\n\n // \u67E5\u627E\u5BF9\u5E94\u7684 region code\n const regionCode = Object.keys(regionToPathMap).find(\n key => regionToPathMap[key] === locale.toLowerCase() || key === locale.toUpperCase()\n )\n\n return regionCode || locale.toUpperCase()\n}\n\n/**\n * \u4ECE regionToPathMap \u751F\u6210\u6240\u6709 locale \u5217\u8868\uFF08\u7528\u4E8E\u79FB\u9664\u8DEF\u5F84\u524D\u7F00\uFF09\n *\n * @param regionToPathMap - \u5730\u533A\u4EE3\u7801\u5230\u8DEF\u5F84\u524D\u7F00\u7684\u6620\u5C04\n * @returns locale \u5217\u8868\uFF08\u8FC7\u6EE4\u6389\u7A7A\u5B57\u7B26\u4E32\uFF09\n *\n * @example\n * const regionToPathMap = { US: '', CA: 'ca', DE: 'eu-de', UK: 'uk' }\n *\n * generateAllLocales(regionToPathMap)\n * // \u8FD4\u56DE: ['ca', 'eu-de', 'uk']\n */\nexport function generateAllLocales(regionToPathMap: Record<string, string>): string[] {\n return Object.values(regionToPathMap).filter(path => path !== '')\n}\n"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": ["utils_exports", "__export", "appendRefParam", "buildGeoRedirectRef", "buildGeoRedirectRefManual", "generateAllLocales", "generateRegionToPathMap", "hasUtmParams", "isPathInWhitelist", "localeToRegionCode", "parseRegionCookie", "removeLocalePrefix", "validateRegionConfig", "__toCommonJS", "path", "locales", "locale", "searchParams", "url", "refValue", "separator", "countryCode", "cookieValue", "parts", "regions", "customMap", "map", "region", "whitelist", "removeTrailingSlash", "str", "extractPath", "urlOrPath", "normalizedPath", "pattern", "patternPath", "normalizedPatternPath", "regexPattern", "options", "countryToRegionMap", "userCountry", "upperUserCountry", "mappedRegion", "r", "regionToPathMap", "key"]
|
|
7
|
-
}
|
|
@@ -1,114 +0,0 @@
|
|
|
1
|
-
import * as React from 'react';
|
|
2
|
-
/**
|
|
3
|
-
* 基础产品数据接口(来自外部数据源)
|
|
4
|
-
*/
|
|
5
|
-
export interface BaseImageOverlayProductData {
|
|
6
|
-
sku: string;
|
|
7
|
-
name?: string;
|
|
8
|
-
title?: string;
|
|
9
|
-
image?: string;
|
|
10
|
-
handle: string;
|
|
11
|
-
shopify_id?: string;
|
|
12
|
-
custom_name?: string;
|
|
13
|
-
custom_description?: string;
|
|
14
|
-
custom_image?: string;
|
|
15
|
-
custom_link?: string;
|
|
16
|
-
custom_theme?: 'light' | 'dark';
|
|
17
|
-
}
|
|
18
|
-
/**
|
|
19
|
-
* 完整的产品卡片数据接口
|
|
20
|
-
*/
|
|
21
|
-
export interface ImageOverlayProductCardData extends BaseImageOverlayProductData {
|
|
22
|
-
}
|
|
23
|
-
/**
|
|
24
|
-
* ImageOverlayShelf 业务组件数据接口
|
|
25
|
-
*/
|
|
26
|
-
export interface ImageOverlayShelfData {
|
|
27
|
-
/** 主题 */
|
|
28
|
-
theme?: 'light' | 'dark';
|
|
29
|
-
/** 组件标题 */
|
|
30
|
-
title?: string;
|
|
31
|
-
/** 组件描述 */
|
|
32
|
-
description?: string;
|
|
33
|
-
/** 产品列表 */
|
|
34
|
-
productsCard: ImageOverlayProductCardData[];
|
|
35
|
-
/** 是否显示标签 */
|
|
36
|
-
isShowTag?: boolean;
|
|
37
|
-
/** 是否显示原价 */
|
|
38
|
-
isShowOriginalPrice?: boolean;
|
|
39
|
-
/** 了解更多按钮文本 */
|
|
40
|
-
learnMoreText?: string;
|
|
41
|
-
/** 立即购买按钮文本 */
|
|
42
|
-
shopNowText?: string;
|
|
43
|
-
/** 按钮方向 */
|
|
44
|
-
direction?: 'horizontal' | 'vertical';
|
|
45
|
-
/** 按钮形状 */
|
|
46
|
-
shape?: 'round' | 'square';
|
|
47
|
-
}
|
|
48
|
-
/**
|
|
49
|
-
* ImageOverlayShelf Props 接口
|
|
50
|
-
*/
|
|
51
|
-
export interface ImageOverlayShelfProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
52
|
-
/** 业务数据 */
|
|
53
|
-
data: ImageOverlayShelfData;
|
|
54
|
-
/** 点击了解更多回调 */
|
|
55
|
-
onLearnMore?: (product: any, variant: any, coupon: any) => void;
|
|
56
|
-
/** 点击立即购买回调 */
|
|
57
|
-
onShopNow?: (product: any, variant: any, coupon: any) => void;
|
|
58
|
-
/** 外部构建数据(用于合并产品数据) */
|
|
59
|
-
buildData?: {
|
|
60
|
-
categories?: any[];
|
|
61
|
-
products?: any[];
|
|
62
|
-
};
|
|
63
|
-
/** 目标窗口 */
|
|
64
|
-
target?: '_self' | '_blank';
|
|
65
|
-
/** 元字段 */
|
|
66
|
-
metafields?: Record<string, any>;
|
|
67
|
-
/** 断点配置 */
|
|
68
|
-
breakpoints?: {
|
|
69
|
-
[key: number]: {
|
|
70
|
-
spaceBetween: number;
|
|
71
|
-
freeMode: boolean;
|
|
72
|
-
slidesPerView: number;
|
|
73
|
-
};
|
|
74
|
-
};
|
|
75
|
-
}
|
|
76
|
-
/**
|
|
77
|
-
* ImageOverlayShelf Context 配置接口
|
|
78
|
-
*/
|
|
79
|
-
export interface ImageOverlayShelfContextConfig {
|
|
80
|
-
/** 是否显示标签 */
|
|
81
|
-
isShowTag?: boolean;
|
|
82
|
-
/** 目标窗口 */
|
|
83
|
-
target?: string;
|
|
84
|
-
/** 是否显示原价 */
|
|
85
|
-
isShowOriginalPrice?: boolean;
|
|
86
|
-
/** 元字段 */
|
|
87
|
-
metafields?: Record<string, any>;
|
|
88
|
-
/** 项目数量 */
|
|
89
|
-
itemLength?: number;
|
|
90
|
-
/** 事件处理器 */
|
|
91
|
-
event?: {
|
|
92
|
-
primaryButton?: (item: any, index: number, data: any, coupon: any) => void;
|
|
93
|
-
secondaryButton?: (item: any, index: number, data: any, coupon: any) => void;
|
|
94
|
-
};
|
|
95
|
-
/** 按钮配置 */
|
|
96
|
-
learnMoreText?: string;
|
|
97
|
-
shopNowText?: string;
|
|
98
|
-
direction?: 'horizontal' | 'vertical';
|
|
99
|
-
shape?: 'round' | 'square';
|
|
100
|
-
}
|
|
101
|
-
/**
|
|
102
|
-
* ImageOverlayShelf Context 值接口
|
|
103
|
-
*/
|
|
104
|
-
interface ImageOverlayShelfContextValue extends ImageOverlayShelfContextConfig {
|
|
105
|
-
/** 当前项目索引 */
|
|
106
|
-
index?: number;
|
|
107
|
-
}
|
|
108
|
-
/**
|
|
109
|
-
* 使用 ImageOverlayShelf Context 的 Hook
|
|
110
|
-
* 返回 null 如果没有 context(向后兼容)
|
|
111
|
-
*/
|
|
112
|
-
export declare const useImageOverlayShelfContext: () => ImageOverlayShelfContextValue | null;
|
|
113
|
-
declare const ImageOverlayShelf: React.ForwardRefExoticComponent<ImageOverlayShelfProps & React.RefAttributes<HTMLDivElement>>;
|
|
114
|
-
export default ImageOverlayShelf;
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";"use client";var Z=Object.create;var C=Object.defineProperty;var ee=Object.getOwnPropertyDescriptor;var te=Object.getOwnPropertyNames;var ne=Object.getPrototypeOf,oe=Object.prototype.hasOwnProperty;var re=(e,o)=>{for(var r in o)C(e,r,{get:o[r],enumerable:!0})},E=(e,o,r,d)=>{if(o&&typeof o=="object"||typeof o=="function")for(let c of te(o))!oe.call(e,c)&&c!==r&&C(e,c,{get:()=>o[c],enumerable:!(d=ee(o,c))||d.enumerable});return e};var b=(e,o,r)=>(r=e!=null?Z(ne(e)):{},E(o||!e||!e.__esModule?C(r,"default",{value:e,enumerable:!0}):r,e)),ie=e=>E(C({},"__esModule",{value:!0}),e);var ce={};re(ce,{default:()=>le,useImageOverlayShelfContext:()=>J});module.exports=ie(ce);var t=require("react/jsx-runtime"),m=b(require("react")),w=require("../../helpers/utils.js"),U=b(require("../SwiperBox/index.js")),j=b(require("../../components/badge.js")),L=require("../../components/text.js"),V=b(require("../../components/button.js")),q=b(require("../../components/picture.js")),z=require("../../components/heading.js"),W=require("../AiuiProvider/index.js"),G=require("../ShelfDisplay/shelfDisplay.js"),f=require("react");const A=m.createContext(null),J=()=>m.useContext(A),ae=999999999e-2,se=({data:e,configuration:o})=>{const{locale:r="us",copyWriting:d,currencyDisplay:c}=(0,W.useAiuiContext)(),{custom_theme:N="dark"}=e,p=J()||o||{},{isShowTag:M,isShowOriginalPrice:S,event:u,target:R,metafields:k,learnMoreText:B,shopNowText:I,direction:g,shape:O,index:h=o?.index}=p,l=(i,a,s,y)=>u?.primaryButton?.(i,a+1,s,y),P=(i,a,s,y)=>u?.secondaryButton?.(i,a+1,s,y),n=m.useMemo(()=>e?.variants?.find(i=>i?.sku===e?.sku)||e?.variants?.[0]||{},[e?.variants,e?.sku]),x=!n?.availableForSale||n?.price?.amount===ae,[T,K]=m.useState([]),v=n?.coupons?.[0],{price:Q,basePrice:X,discount:_}=(0,G.formatVariantPrice)({locale:r,amount:S&&v?v.variant_price4wscode:n.price,baseAmount:S&&v?n.price:0,currencyCode:e?.price?.currencyCode||"USD"}),Y=()=>{const i=e?.sku,a=e?.variants;return a?.find(y=>y?.sku===i)?.image?.url||a?.[0]?.image?.url||""},D=e?.custom_name||e?.title||e?.name,$=e?.custom_description||e?.description;return m.useEffect(()=>{let i=[];if(_){const s=`${_}${k?.discounts?.off||""}`;i.push(s)}const a=e?.tags?.filter?.(s=>s?.startsWith?.("CLtag"))?.map?.(s=>s?.replace?.("CLtag:",""))?.slice?.(0,_?1:2);K(i.concat(a))},[_,k?.discounts,e?.tags]),(0,t.jsx)("div",{className:(0,w.cn)("rounded-box box-border w-full cursor-pointer overflow-hidden duration-300","desktop:h-[384px] lg-desktop:h-[480px] h-[360px]",{"aiui-dark":N==="dark"}),children:(0,t.jsxs)("div",{className:"box-border flex h-full flex-col justify-between overflow-hidden",children:[(0,t.jsx)(q.default,{alt:"",source:e?.custom_image??Y(),className:(0,w.cn)("rounded-box absolute inset-x-0 top-0 h-full overflow-hidden object-cover transition-all duration-300 [&_img]:size-full")}),(0,t.jsxs)("div",{className:"desktop:p-6 collection-shelves-product-content z-10 box-border flex flex-1 flex-col justify-end overflow-hidden p-4",children:[M&&T?.length?(0,t.jsx)("div",{className:"mb-2 box-border flex flex-wrap gap-1 overflow-hidden",children:T?.map?.((i,a)=>(0,t.jsx)(j.default,{children:i},a))}):null,D?(0,t.jsx)(z.Heading,{as:"h3",title:D||"",html:D||"",className:"lg-desktop:text-2xl lg-desktop:leading-7 tablet:text-xl collection-shelves-product-title text-info-primary tablet:leading-6 line-clamp-2 text-base font-bold"}):null,$?(0,t.jsx)(L.Text,{size:2,html:$||"",className:"lg-desktop:text-lg desktop:text-base collection-shelves-product-description text-info-primary line-clamp-1 text-sm font-bold"}):null,(0,t.jsx)("div",{className:"mb-1 mt-4 flex items-center",children:x?(0,t.jsx)("div",{className:"tablet:text-2xl text-info-primary text-xl font-bold",children:d?.soldOutText??"Sold Out"}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("div",{className:"final-price tablet:text-2xl text-info-primary text-xl font-bold",children:n?.availableForSale&&Q||""}),(0,t.jsx)("div",{className:"origin-price tablet:text-xl text-info-secondary ml-1 text-lg font-bold line-through",children:n?.availableForSale&&X||""})]})}),(0,t.jsxs)("div",{className:(0,w.cn)("shelf-flex-button-group","lg-desktop:gap-3 flex items-center gap-2",g==="vertical"?"flex-col":""),children:[(0,t.jsx)(V.default,{variant:"secondary",onClick:()=>P(e,h,p,v),className:`overflow-hidden font-bold ${g==="vertical"?"w-full":""} ${O==="round"?"rounded-2xl":""}`,children:B||"Learn More"}),(0,t.jsx)(V.default,{variant:"primary",disabled:x,onClick:()=>l(e,h,p,v),className:`overflow-hidden font-bold ${g==="vertical"?"w-full":""} ${O==="round"?"rounded-2xl":""}`,children:I||"Buy Now"})]})]})]})},e?.id||e?.handle)},F=(0,f.forwardRef)(({data:e,onLearnMore:o,onShopNow:r,buildData:d,breakpoints:c,className:N="",target:H="_self",metafields:p,...M},S)=>{const{productsCard:u=[],isShowTag:R=!1,isShowOriginalPrice:k=!0,learnMoreText:B,shopNowText:I,direction:g="horizontal",shape:O="round"}=e,h=(0,f.useRef)(null);(0,f.useImperativeHandle)(S,()=>h.current);const l=m.useMemo(()=>u?.length?u.map(n=>{const x=d?.products?.find(T=>T?.handle===n?.handle);return x?{sku:n.sku,custom_name:n.custom_name,custom_image:n.custom_image,custom_link:n.custom_link,custom_description:n.custom_description,custom_theme:n.custom_theme,...x}:null}).filter(n=>n!==null):[],[d?.products,u]),P={isShowTag:R,target:H,isShowOriginalPrice:k,metafields:p||{},itemLength:l?.length,event:{primaryButton:r,secondaryButton:o},learnMoreText:B,shopNowText:I,direction:g,shape:O};return(0,t.jsx)(A.Provider,{value:P,children:(0,t.jsxs)("div",{ref:h,className:(0,w.cn)("collection-shelves-wrap w-full",N),...M,children:[e.title&&(0,t.jsx)(z.Heading,{as:"h2",size:4,className:"text-info-primary mb-4",children:e.title}),e.description&&(0,t.jsx)(L.Text,{size:3,as:"p",className:"text-info-primary mb-6",children:e.description}),(0,t.jsx)(U.default,{data:{list:l,configuration:{itemLength:l?.length}},id:`ImageOverlayShelf${Math.random().toString(36).substring(2,9)}`,className:"!overflow-visible",Slide:se,breakpoints:c||{0:{spaceBetween:12,freeMode:!1,slidesPerView:1},374:{spaceBetween:12,freeMode:!1,slidesPerView:Math.min(2,l.length)},768:{spaceBetween:16,freeMode:!1,slidesPerView:Math.min(3,l.length)},1024:{spaceBetween:16,freeMode:!1,slidesPerView:Math.min(4,l.length)},1440:{spaceBetween:16,freeMode:!1,slidesPerView:Math.min(4,l.length)}}})]})})});F.displayName="ImageOverlayShelf";var le=F;
|
|
2
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../src/biz-components/ImageOverlayShelf/index.tsx"],
|
|
4
|
-
"sourcesContent": ["'use client'\nimport * as React from 'react'\nimport { cn } from '../../helpers/utils.js'\nimport SwiperBox from '../SwiperBox/index.js'\n\nimport Badge from '../../components/badge.js'\nimport { Text } from '../../components/text.js'\nimport Button from '../../components/button.js'\nimport Picture from '../../components/picture.js'\nimport { Heading } from '../../components/heading.js'\nimport { useAiuiContext } from '../AiuiProvider/index.js'\nimport { formatVariantPrice } from '../ShelfDisplay/shelfDisplay.js'\nimport { forwardRef, useRef, useImperativeHandle } from 'react'\n\n/**\n * \u57FA\u7840\u4EA7\u54C1\u6570\u636E\u63A5\u53E3\uFF08\u6765\u81EA\u5916\u90E8\u6570\u636E\u6E90\uFF09\n */\nexport interface BaseImageOverlayProductData {\n sku: string\n name?: string\n title?: string\n image?: string\n handle: string\n shopify_id?: string\n custom_name?: string\n custom_description?: string\n custom_image?: string\n custom_link?: string\n custom_theme?: 'light' | 'dark'\n}\n\n/**\n * \u5B8C\u6574\u7684\u4EA7\u54C1\u5361\u7247\u6570\u636E\u63A5\u53E3\n */\nexport interface ImageOverlayProductCardData extends BaseImageOverlayProductData {}\n\n/**\n * ImageOverlayShelf \u4E1A\u52A1\u7EC4\u4EF6\u6570\u636E\u63A5\u53E3\n */\nexport interface ImageOverlayShelfData {\n /** \u4E3B\u9898 */\n theme?: 'light' | 'dark'\n /** \u7EC4\u4EF6\u6807\u9898 */\n title?: string\n /** \u7EC4\u4EF6\u63CF\u8FF0 */\n description?: string\n /** \u4EA7\u54C1\u5217\u8868 */\n productsCard: ImageOverlayProductCardData[]\n /** \u662F\u5426\u663E\u793A\u6807\u7B7E */\n isShowTag?: boolean\n /** \u662F\u5426\u663E\u793A\u539F\u4EF7 */\n isShowOriginalPrice?: boolean\n /** \u4E86\u89E3\u66F4\u591A\u6309\u94AE\u6587\u672C */\n learnMoreText?: string\n /** \u7ACB\u5373\u8D2D\u4E70\u6309\u94AE\u6587\u672C */\n shopNowText?: string\n /** \u6309\u94AE\u65B9\u5411 */\n direction?: 'horizontal' | 'vertical'\n /** \u6309\u94AE\u5F62\u72B6 */\n shape?: 'round' | 'square'\n}\n\n/**\n * ImageOverlayShelf Props \u63A5\u53E3\n */\nexport interface ImageOverlayShelfProps extends React.HTMLAttributes<HTMLDivElement> {\n /** \u4E1A\u52A1\u6570\u636E */\n data: ImageOverlayShelfData\n /** \u70B9\u51FB\u4E86\u89E3\u66F4\u591A\u56DE\u8C03 */\n onLearnMore?: (product: any, variant: any, coupon: any) => void\n /** \u70B9\u51FB\u7ACB\u5373\u8D2D\u4E70\u56DE\u8C03 */\n onShopNow?: (product: any, variant: any, coupon: any) => void\n /** \u5916\u90E8\u6784\u5EFA\u6570\u636E\uFF08\u7528\u4E8E\u5408\u5E76\u4EA7\u54C1\u6570\u636E\uFF09 */\n buildData?: {\n categories?: any[]\n products?: any[]\n }\n /** \u76EE\u6807\u7A97\u53E3 */\n target?: '_self' | '_blank'\n /** \u5143\u5B57\u6BB5 */\n metafields?: Record<string, any>\n /** \u65AD\u70B9\u914D\u7F6E */\n breakpoints?: {\n [key: number]: {\n spaceBetween: number\n freeMode: boolean\n slidesPerView: number\n }\n }\n}\n\n/**\n * ImageOverlayShelf Context \u914D\u7F6E\u63A5\u53E3\n */\nexport interface ImageOverlayShelfContextConfig {\n /** \u662F\u5426\u663E\u793A\u6807\u7B7E */\n isShowTag?: boolean\n /** \u76EE\u6807\u7A97\u53E3 */\n target?: string\n /** \u662F\u5426\u663E\u793A\u539F\u4EF7 */\n isShowOriginalPrice?: boolean\n /** \u5143\u5B57\u6BB5 */\n metafields?: Record<string, any>\n /** \u9879\u76EE\u6570\u91CF */\n itemLength?: number\n /** \u4E8B\u4EF6\u5904\u7406\u5668 */\n event?: {\n primaryButton?: (item: any, index: number, data: any, coupon: any) => void\n secondaryButton?: (item: any, index: number, data: any, coupon: any) => void\n }\n /** \u6309\u94AE\u914D\u7F6E */\n learnMoreText?: string\n shopNowText?: string\n direction?: 'horizontal' | 'vertical'\n shape?: 'round' | 'square'\n}\n\n/**\n * ImageOverlayShelf Context \u503C\u63A5\u53E3\n */\ninterface ImageOverlayShelfContextValue extends ImageOverlayShelfContextConfig {\n /** \u5F53\u524D\u9879\u76EE\u7D22\u5F15 */\n index?: number\n}\n\n/**\n * ImageOverlayShelf Context\n */\nconst ImageOverlayShelfContext = React.createContext<ImageOverlayShelfContextValue | null>(null)\n\n/**\n * \u4F7F\u7528 ImageOverlayShelf Context \u7684 Hook\n * \u8FD4\u56DE null \u5982\u679C\u6CA1\u6709 context\uFF08\u5411\u540E\u517C\u5BB9\uFF09\n */\nexport const useImageOverlayShelfContext = () => {\n const context = React.useContext(ImageOverlayShelfContext)\n return context\n}\n\nconst SOLD_OUT_PRICE = 9999999.99\n\n/**\n * Item \u7EC4\u4EF6 - ImageOverlayShelf \u7684\u5355\u4E2A\u4EA7\u54C1\u9879\n */\nconst Item = ({ data, configuration }: { data: any; configuration?: any }) => {\n const { locale = 'us', copyWriting, currencyDisplay } = useAiuiContext()\n\n const { custom_theme = 'dark' } = data\n\n // \u4F7F\u7528 context \u83B7\u53D6\u914D\u7F6E\uFF0C\u56DE\u9000\u5230 configuration\uFF08\u5411\u540E\u517C\u5BB9\uFF09\n const contextConfig = useImageOverlayShelfContext()\n const config = contextConfig || configuration || {}\n\n const {\n isShowTag,\n isShowOriginalPrice,\n event,\n target,\n metafields,\n learnMoreText,\n shopNowText,\n direction,\n shape,\n index = configuration?.index,\n } = config\n\n const onPrimaryButton = (params: any, idx: number, shelfData: any, coupon?: any) =>\n event?.primaryButton?.(params, idx + 1, shelfData, coupon)\n\n const onSecondaryButton = (params: any, idx: number, shelfData: any, coupon?: any) =>\n event?.secondaryButton?.(params, idx + 1, shelfData, coupon)\n\n const variant = React.useMemo(\n () => data?.variants?.find((item: any) => item?.sku === data?.sku) || data?.variants?.[0] || {},\n [data?.variants, data?.sku]\n )\n\n const isSoldOut = !variant?.availableForSale || variant?.price?.amount === SOLD_OUT_PRICE\n\n const [showTags, setShowTags] = React.useState<string[]>([])\n\n // active \u7684 \u901A\u7528\u6298\u6263\n const coupon = variant?.coupons?.[0]\n\n const { price, basePrice, discount } = formatVariantPrice({\n locale: locale,\n amount: isShowOriginalPrice && coupon ? coupon.variant_price4wscode : variant.price,\n baseAmount: isShowOriginalPrice && coupon ? variant.price : 0,\n currencyCode: data?.price?.currencyCode || 'USD',\n })\n\n const handleUrl = () => {\n const sku = data?.sku\n const skuArray = data?.variants\n const findSku = skuArray?.find((item: any) => item?.sku === sku)\n return findSku?.image?.url || skuArray?.[0]?.image?.url || ''\n }\n\n const displayTitle = data?.custom_name || data?.title || data?.name\n const displayDescription = data?.custom_description || data?.description\n\n React.useEffect(() => {\n let handleTags: string[] = []\n if (discount) {\n const discountTag = `${discount}${metafields?.discounts?.off || ''}`\n handleTags.push(discountTag)\n }\n const newTags = data?.tags\n ?.filter?.((item: string) => item?.startsWith?.('CLtag'))\n ?.map?.((item: string) => item?.replace?.('CLtag:', ''))\n ?.slice?.(0, discount ? 1 : 2)\n setShowTags(handleTags.concat(newTags))\n }, [discount, metafields?.discounts, data?.tags])\n\n return (\n <div\n key={data?.id || data?.handle}\n className={cn(\n 'rounded-box box-border w-full cursor-pointer overflow-hidden duration-300',\n 'desktop:h-[384px] lg-desktop:h-[480px] h-[360px]',\n {\n 'aiui-dark': custom_theme === 'dark',\n }\n )}\n >\n <div className=\"box-border flex h-full flex-col justify-between overflow-hidden\">\n <Picture\n alt=\"\"\n source={data?.custom_image ?? handleUrl()}\n className={cn(\n 'rounded-box absolute inset-x-0 top-0 h-full overflow-hidden object-cover transition-all duration-300 [&_img]:size-full'\n )}\n />\n <div className=\"desktop:p-6 collection-shelves-product-content z-10 box-border flex flex-1 flex-col justify-end overflow-hidden p-4\">\n {isShowTag && showTags?.length ? (\n <div className=\"mb-2 box-border flex flex-wrap gap-1 overflow-hidden\">\n {showTags?.map?.((item: any, index: number) => (\n <Badge key={index}>{item}</Badge>\n ))}\n </div>\n ) : null}\n {displayTitle ? (\n <Heading\n as=\"h3\"\n title={displayTitle || ''}\n html={displayTitle || ''}\n className=\"lg-desktop:text-2xl lg-desktop:leading-7 tablet:text-xl collection-shelves-product-title text-info-primary tablet:leading-6 line-clamp-2 text-base font-bold\"\n />\n ) : null}\n {displayDescription ? (\n <Text\n size={2}\n html={displayDescription || ''}\n className=\"lg-desktop:text-lg desktop:text-base collection-shelves-product-description text-info-primary line-clamp-1 text-sm font-bold\"\n />\n ) : null}\n <div className=\"mb-1 mt-4 flex items-center\">\n {isSoldOut ? (\n <div className=\"tablet:text-2xl text-info-primary text-xl font-bold\">\n {copyWriting?.soldOutText ?? 'Sold Out'}\n </div>\n ) : (\n <>\n <div className=\"final-price tablet:text-2xl text-info-primary text-xl font-bold\">\n {variant?.availableForSale ? price || '' : ''}\n </div>\n <div className=\"origin-price tablet:text-xl text-info-secondary ml-1 text-lg font-bold line-through\">\n {variant?.availableForSale ? basePrice || '' : ''}\n </div>\n </>\n )}\n </div>\n\n <div\n className={cn(\n 'shelf-flex-button-group',\n 'lg-desktop:gap-3 flex items-center gap-2',\n direction === 'vertical' ? 'flex-col' : ''\n )}\n >\n <Button\n variant=\"secondary\"\n onClick={() => onSecondaryButton(data, index, config, coupon)}\n className={`overflow-hidden font-bold ${direction === 'vertical' ? 'w-full' : ''} ${shape === 'round' ? 'rounded-2xl' : ''}`}\n >\n {learnMoreText || 'Learn More'}\n </Button>\n <Button\n variant=\"primary\"\n disabled={isSoldOut}\n onClick={() => onPrimaryButton(data, index, config, coupon)}\n className={`overflow-hidden font-bold ${direction === 'vertical' ? 'w-full' : ''} ${shape === 'round' ? 'rounded-2xl' : ''}`}\n >\n {shopNowText || 'Buy Now'}\n </Button>\n </div>\n </div>\n </div>\n </div>\n )\n}\n\nconst ImageOverlayShelf = forwardRef<HTMLDivElement, ImageOverlayShelfProps>(\n (\n { data, onLearnMore, onShopNow, buildData, breakpoints, className = '', target = '_self', metafields, ...props },\n ref\n ) => {\n const {\n productsCard = [],\n isShowTag = false,\n isShowOriginalPrice = true,\n learnMoreText,\n shopNowText,\n direction = 'horizontal',\n shape = 'round',\n } = data\n\n const innerRef = useRef<HTMLDivElement>(null)\n\n useImperativeHandle(ref, () => innerRef.current as HTMLDivElement)\n\n // \u76F4\u63A5\u7528 useMemo \u8BA1\u7B97\u5408\u5E76\u540E\u7684\u6570\u636E\uFF0C\u907F\u514D\u4E0D\u5FC5\u8981\u7684 useEffect \u548C\u72B6\u6001\n const currentItems = React.useMemo(() => {\n if (!productsCard?.length) return []\n\n return productsCard\n .map(item => {\n const findData = buildData?.products?.find(params => params?.handle === item?.handle)\n if (findData) {\n return {\n sku: item.sku,\n custom_name: item.custom_name,\n custom_image: item.custom_image,\n custom_link: item.custom_link,\n custom_description: item.custom_description,\n custom_theme: item.custom_theme,\n ...findData,\n }\n }\n return null\n })\n .filter(item => item !== null)\n }, [buildData?.products, productsCard])\n\n // \u6784\u5EFA Context \u503C\n const contextValue: ImageOverlayShelfContextValue = {\n isShowTag,\n target,\n isShowOriginalPrice,\n metafields: metafields || {},\n itemLength: currentItems?.length,\n event: {\n primaryButton: onShopNow,\n secondaryButton: onLearnMore,\n },\n learnMoreText,\n shopNowText,\n direction,\n shape,\n }\n\n return (\n <ImageOverlayShelfContext.Provider value={contextValue}>\n <div ref={innerRef} className={cn('collection-shelves-wrap w-full', className)} {...props}>\n {/* \u6807\u9898\u533A\u57DF */}\n {data.title && (\n <Heading as=\"h2\" size={4} className=\"text-info-primary mb-4\">\n {data.title}\n </Heading>\n )}\n {data.description && (\n <Text size={3} as=\"p\" className=\"text-info-primary mb-6\">\n {data.description}\n </Text>\n )}\n <SwiperBox\n data={{\n list: currentItems,\n configuration: {\n // \u4FDD\u7559\u4E00\u4E9B\u57FA\u7840\u914D\u7F6E\u7ED9 SwiperBox\uFF0C\u4F46\u79FB\u9664\u90A3\u4E9B\u4F1A\u900F\u4F20\u7ED9 Item \u7684\u914D\u7F6E\n itemLength: currentItems?.length,\n },\n }}\n id={`ImageOverlayShelf${Math.random().toString(36).substring(2, 9)}`}\n className={`!overflow-visible`}\n Slide={Item}\n breakpoints={\n breakpoints || {\n 0: {\n spaceBetween: 12,\n freeMode: false,\n slidesPerView: 1,\n },\n 374: {\n spaceBetween: 12,\n freeMode: false,\n slidesPerView: Math.min(2, currentItems.length),\n },\n 768: {\n spaceBetween: 16,\n freeMode: false,\n slidesPerView: Math.min(3, currentItems.length),\n },\n 1024: {\n spaceBetween: 16,\n freeMode: false,\n slidesPerView: Math.min(4, currentItems.length),\n },\n 1440: {\n spaceBetween: 16,\n freeMode: false,\n slidesPerView: Math.min(4, currentItems.length),\n },\n }\n }\n />\n </div>\n </ImageOverlayShelfContext.Provider>\n )\n }\n)\n\nImageOverlayShelf.displayName = 'ImageOverlayShelf'\n\nexport default ImageOverlayShelf\n"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": ["ImageOverlayShelf_exports", "__export", "ImageOverlayShelf_default", "useImageOverlayShelfContext", "__toCommonJS", "import_jsx_runtime", "React", "import_utils", "import_SwiperBox", "import_badge", "import_text", "import_button", "import_picture", "import_heading", "import_AiuiProvider", "import_shelfDisplay", "import_react", "ImageOverlayShelfContext", "SOLD_OUT_PRICE", "Item", "data", "configuration", "locale", "copyWriting", "currencyDisplay", "custom_theme", "config", "isShowTag", "isShowOriginalPrice", "event", "target", "metafields", "learnMoreText", "shopNowText", "direction", "shape", "index", "onPrimaryButton", "params", "idx", "shelfData", "coupon", "onSecondaryButton", "variant", "item", "isSoldOut", "showTags", "setShowTags", "price", "basePrice", "discount", "handleUrl", "sku", "skuArray", "displayTitle", "displayDescription", "handleTags", "discountTag", "newTags", "Picture", "Badge", "Button", "ImageOverlayShelf", "onLearnMore", "onShopNow", "buildData", "breakpoints", "className", "props", "ref", "productsCard", "innerRef", "currentItems", "findData", "contextValue", "SwiperBox"]
|
|
7
|
-
}
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import type { Media as MediaType } from '../../types/props.js';
|
|
3
|
-
export interface MediaProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
4
|
-
/** PC端媒体 */
|
|
5
|
-
pcImage?: MediaType;
|
|
6
|
-
/** 平板端媒体 */
|
|
7
|
-
padImage?: MediaType;
|
|
8
|
-
/** 移动端媒体 */
|
|
9
|
-
mobileImage?: MediaType;
|
|
10
|
-
/** 视频类名 */
|
|
11
|
-
videoClassName?: string;
|
|
12
|
-
/** 图片类名 */
|
|
13
|
-
imgClassName?: string;
|
|
14
|
-
/** 是否静音播放(仅视频) */
|
|
15
|
-
muted?: boolean;
|
|
16
|
-
/** 是否循环播放(仅视频) */
|
|
17
|
-
loop?: boolean;
|
|
18
|
-
/** 是否内联播放(仅视频) */
|
|
19
|
-
playsInline?: boolean;
|
|
20
|
-
/** 是否自动播放(仅视频) */
|
|
21
|
-
autoPlay?: boolean;
|
|
22
|
-
/** 视频预览图 */
|
|
23
|
-
poster?: string;
|
|
24
|
-
}
|
|
25
|
-
/**
|
|
26
|
-
* Media - 智能媒体组件
|
|
27
|
-
*
|
|
28
|
-
* @description 根据媒体类型自动选择使用 video 标签或 Picture 组件
|
|
29
|
-
* 支持响应式媒体源,如果任意媒体类型是视频,则使用 video 标签渲染
|
|
30
|
-
*/
|
|
31
|
-
declare const Media: React.ForwardRefExoticComponent<MediaProps & React.RefAttributes<HTMLDivElement>>;
|
|
32
|
-
export default Media;
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";"use client";var L=Object.create;var s=Object.defineProperty;var R=Object.getOwnPropertyDescriptor;var $=Object.getOwnPropertyNames;var j=Object.getPrototypeOf,q=Object.prototype.hasOwnProperty;var D=(e,i)=>{for(var o in i)s(e,o,{get:i[o],enumerable:!0})},n=(e,i,o,a)=>{if(i&&typeof i=="object"||typeof i=="function")for(let r of $(i))!q.call(e,r)&&r!==o&&s(e,r,{get:()=>i[r],enumerable:!(a=R(i,r))||a.enumerable});return e};var E=(e,i,o)=>(o=e!=null?L(j(e)):{},n(i||!e||!e.__esModule?s(o,"default",{value:e,enumerable:!0}):o,e)),A=e=>n(s({},"__esModule",{value:!0}),e);var S={};D(S,{default:()=>Q});module.exports=A(S);var d=require("react/jsx-runtime"),m=E(require("react")),p=require("react-responsive"),c=require("../../components/index.js"),l=require("../../helpers/index.js");const u=m.default.forwardRef(({pcImage:e,padImage:i,mobileImage:o,className:a,videoClassName:r,imgClassName:y,muted:f=!0,loop:M=!0,playsInline:v=!0,autoPlay:T=!0,poster:N,...P},b)=>{const x=(0,p.useMediaQuery)({query:"(max-width: 768px)"}),w=(0,p.useMediaQuery)({query:"(max-width: 1024px)"}),h=[e,i,o].some(H=>H?.mimeType==="video/mp4"),t=x?o:w?i||o:e,z=t?.mimeType==="video/mp4"?t.url:void 0,C=N||(t?.mimeType!=="video/mp4"?t?.url:void 0);return(0,d.jsx)("div",{ref:b,className:(0,l.cn)("media-wrapper",a),...P,children:h?(0,d.jsx)("video",{src:z,poster:C,className:(0,l.cn)("size-full object-cover",r),muted:f,loop:M,playsInline:v,autoPlay:T,"aria-label":t?.alt||""}):(0,d.jsx)(c.Picture,{className:"size-full",imgClassName:(0,l.cn)("size-full object-cover",y),alt:e?.alt||"",source:`${e?.url||""} , ${i?.url??(o?.url||"")} 1024, ${o?.url||""} 767`})})});u.displayName="Media";var Q=u;
|
|
2
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../src/biz-components/Media/index.tsx"],
|
|
4
|
-
"sourcesContent": ["'use client'\n\nimport React from 'react'\nimport { useMediaQuery } from 'react-responsive'\nimport { Picture } from '../../components/index.js'\nimport type { Media as MediaType } from '../../types/props.js'\nimport { cn } from '../../helpers/index.js'\n\nexport interface MediaProps extends React.HTMLAttributes<HTMLDivElement> {\n /** PC\u7AEF\u5A92\u4F53 */\n pcImage?: MediaType\n /** \u5E73\u677F\u7AEF\u5A92\u4F53 */\n padImage?: MediaType\n /** \u79FB\u52A8\u7AEF\u5A92\u4F53 */\n mobileImage?: MediaType\n /** \u89C6\u9891\u7C7B\u540D */\n videoClassName?: string\n /** \u56FE\u7247\u7C7B\u540D */\n imgClassName?: string\n /** \u662F\u5426\u9759\u97F3\u64AD\u653E\uFF08\u4EC5\u89C6\u9891\uFF09 */\n muted?: boolean\n /** \u662F\u5426\u5FAA\u73AF\u64AD\u653E\uFF08\u4EC5\u89C6\u9891\uFF09 */\n loop?: boolean\n /** \u662F\u5426\u5185\u8054\u64AD\u653E\uFF08\u4EC5\u89C6\u9891\uFF09 */\n playsInline?: boolean\n /** \u662F\u5426\u81EA\u52A8\u64AD\u653E\uFF08\u4EC5\u89C6\u9891\uFF09 */\n autoPlay?: boolean\n /** \u89C6\u9891\u9884\u89C8\u56FE */\n poster?: string\n}\n\n/**\n * Media - \u667A\u80FD\u5A92\u4F53\u7EC4\u4EF6\n *\n * @description \u6839\u636E\u5A92\u4F53\u7C7B\u578B\u81EA\u52A8\u9009\u62E9\u4F7F\u7528 video \u6807\u7B7E\u6216 Picture \u7EC4\u4EF6\n * \u652F\u6301\u54CD\u5E94\u5F0F\u5A92\u4F53\u6E90\uFF0C\u5982\u679C\u4EFB\u610F\u5A92\u4F53\u7C7B\u578B\u662F\u89C6\u9891\uFF0C\u5219\u4F7F\u7528 video \u6807\u7B7E\u6E32\u67D3\n */\nconst Media = React.forwardRef<HTMLDivElement, MediaProps>(\n (\n {\n pcImage,\n padImage,\n mobileImage,\n className,\n videoClassName,\n imgClassName,\n muted = true,\n loop = true,\n playsInline = true,\n autoPlay = true,\n poster,\n ...props\n },\n ref\n ) => {\n // \u54CD\u5E94\u5F0F\u67E5\u8BE2\n const isMobile = useMediaQuery({ query: '(max-width: 768px)' })\n const isPad = useMediaQuery({ query: '(max-width: 1024px)' })\n\n // \u68C0\u67E5\u662F\u5426\u6709\u4EFB\u4F55\u5A92\u4F53\u662F\u89C6\u9891\u7C7B\u578B\n const hasVideo = [pcImage, padImage, mobileImage].some(media => media?.mimeType === 'video/mp4')\n\n // \u83B7\u53D6\u5F53\u524D\u8BBE\u5907\u5BF9\u5E94\u7684\u5A92\u4F53\n const currentMedia = isMobile ? mobileImage : isPad ? padImage || mobileImage : pcImage\n\n // \u83B7\u53D6\u89C6\u9891\u6E90\u548C\u6D77\u62A5\u56FE\u7247\n const videoSrc = currentMedia?.mimeType === 'video/mp4' ? currentMedia.url : undefined\n const imagePoster = poster || (currentMedia?.mimeType !== 'video/mp4' ? currentMedia?.url : undefined)\n\n return (\n <div ref={ref} className={cn('media-wrapper', className)} {...props}>\n {hasVideo ? (\n <video\n src={videoSrc}\n poster={imagePoster}\n className={cn('size-full object-cover', videoClassName)}\n muted={muted}\n loop={loop}\n playsInline={playsInline}\n autoPlay={autoPlay}\n aria-label={currentMedia?.alt || ''}\n />\n ) : (\n <Picture\n className=\"size-full\"\n imgClassName={cn('size-full object-cover', imgClassName)}\n alt={pcImage?.alt || ''}\n source={`${pcImage?.url || ''} , ${padImage?.url ?? (mobileImage?.url || '')} 1024, ${mobileImage?.url || ''} 767`}\n />\n )}\n </div>\n )\n }\n)\n\nMedia.displayName = 'Media'\n\nexport default Media\n"],
|
|
5
|
-
"mappings": "ukBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,aAAAE,IAAA,eAAAC,EAAAH,GAwEU,IAAAI,EAAA,6BAtEVC,EAAkB,oBAClBC,EAA8B,4BAC9BC,EAAwB,qCAExBC,EAAmB,kCA+BnB,MAAMC,EAAQ,EAAAC,QAAM,WAClB,CACE,CACE,QAAAC,EACA,SAAAC,EACA,YAAAC,EACA,UAAAC,EACA,eAAAC,EACA,aAAAC,EACA,MAAAC,EAAQ,GACR,KAAAC,EAAO,GACP,YAAAC,EAAc,GACd,SAAAC,EAAW,GACX,OAAAC,EACA,GAAGC,CACL,EACAC,IACG,CAEH,MAAMC,KAAW,iBAAc,CAAE,MAAO,oBAAqB,CAAC,EACxDC,KAAQ,iBAAc,CAAE,MAAO,qBAAsB,CAAC,EAGtDC,EAAW,CAACf,EAASC,EAAUC,CAAW,EAAE,KAAKc,GAASA,GAAO,WAAa,WAAW,EAGzFC,EAAeJ,EAAWX,EAAcY,EAAQb,GAAYC,EAAcF,EAG1EkB,EAAWD,GAAc,WAAa,YAAcA,EAAa,IAAM,OACvEE,EAAcT,IAAWO,GAAc,WAAa,YAAcA,GAAc,IAAM,QAE5F,SACE,OAAC,OAAI,IAAKL,EAAK,aAAW,MAAG,gBAAiBT,CAAS,EAAI,GAAGQ,EAC3D,SAAAI,KACC,OAAC,SACC,IAAKG,EACL,OAAQC,EACR,aAAW,MAAG,yBAA0Bf,CAAc,EACtD,MAAOE,EACP,KAAMC,EACN,YAAaC,EACb,SAAUC,EACV,aAAYQ,GAAc,KAAO,GACnC,KAEA,OAAC,WACC,UAAU,YACV,gBAAc,MAAG,yBAA0BZ,CAAY,EACvD,IAAKL,GAAS,KAAO,GACrB,OAAQ,GAAGA,GAAS,KAAO,EAAE,MAAMC,GAAU,MAAQC,GAAa,KAAO,GAAG,UAAUA,GAAa,KAAO,EAAE,OAC9G,EAEJ,CAEJ,CACF,EAEAJ,EAAM,YAAc,QAEpB,IAAOP,EAAQO",
|
|
6
|
-
"names": ["Media_exports", "__export", "Media_default", "__toCommonJS", "import_jsx_runtime", "import_react", "import_react_responsive", "import_components", "import_helpers", "Media", "React", "pcImage", "padImage", "mobileImage", "className", "videoClassName", "imgClassName", "muted", "loop", "playsInline", "autoPlay", "poster", "props", "ref", "isMobile", "isPad", "hasVideo", "media", "currentMedia", "videoSrc", "imagePoster"]
|
|
7
|
-
}
|