@anker-in/headless-ui 1.0.25 → 1.0.26-alpha.1761893017767
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/FeatureCards/FeatureCards.d.ts +7 -0
- package/dist/cjs/biz-components/FeatureCards/FeatureCards.js +2 -0
- package/dist/cjs/biz-components/FeatureCards/FeatureCards.js.map +7 -0
- package/dist/cjs/biz-components/FeatureCards/index.d.ts +2 -0
- package/dist/cjs/biz-components/FeatureCards/index.js +2 -0
- package/dist/cjs/biz-components/FeatureCards/index.js.map +7 -0
- package/dist/cjs/biz-components/FeatureCards/types.d.ts +25 -0
- package/dist/cjs/biz-components/FeatureCards/types.js +2 -0
- package/dist/cjs/biz-components/FeatureCards/types.js.map +7 -0
- package/dist/cjs/biz-components/FeatureShowcase/FeatureShowcase.d.ts +7 -0
- package/dist/cjs/biz-components/FeatureShowcase/FeatureShowcase.js +2 -0
- package/dist/cjs/biz-components/FeatureShowcase/FeatureShowcase.js.map +7 -0
- package/dist/cjs/biz-components/FeatureShowcase/index.d.ts +2 -0
- package/dist/cjs/biz-components/FeatureShowcase/index.js +2 -0
- package/dist/cjs/biz-components/FeatureShowcase/index.js.map +7 -0
- package/dist/cjs/biz-components/FeatureShowcase/types.d.ts +20 -0
- package/dist/cjs/biz-components/FeatureShowcase/types.js +2 -0
- package/dist/cjs/biz-components/FeatureShowcase/types.js.map +7 -0
- package/dist/cjs/biz-components/FooterNavigation/index.js +1 -1
- package/dist/cjs/biz-components/FooterNavigation/index.js.map +2 -2
- package/dist/cjs/biz-components/HeaderNavigation/index.js +1 -1
- package/dist/cjs/biz-components/HeaderNavigation/index.js.map +2 -2
- package/dist/cjs/biz-components/ImageTextFeature/ImageTextFeature.d.ts +7 -0
- package/dist/cjs/biz-components/ImageTextFeature/ImageTextFeature.js +2 -0
- package/dist/cjs/biz-components/ImageTextFeature/ImageTextFeature.js.map +7 -0
- package/dist/cjs/biz-components/ImageTextFeature/index.d.ts +2 -0
- package/dist/cjs/biz-components/ImageTextFeature/index.js +2 -0
- package/dist/cjs/biz-components/ImageTextFeature/index.js.map +7 -0
- package/dist/cjs/biz-components/ImageTextFeature/types.d.ts +31 -0
- package/dist/cjs/biz-components/ImageTextFeature/types.js +2 -0
- package/dist/cjs/biz-components/ImageTextFeature/types.js.map +7 -0
- package/dist/cjs/biz-components/ImageWithText/ImageWithText.d.ts +7 -0
- package/dist/cjs/biz-components/ImageWithText/ImageWithText.js +2 -0
- package/dist/cjs/biz-components/ImageWithText/ImageWithText.js.map +7 -0
- package/dist/cjs/biz-components/ImageWithText/index.d.ts +2 -0
- package/dist/cjs/biz-components/ImageWithText/index.js +2 -0
- package/dist/cjs/biz-components/ImageWithText/index.js.map +7 -0
- package/dist/cjs/biz-components/ImageWithText/types.d.ts +23 -0
- package/dist/cjs/biz-components/ImageWithText/types.js +2 -0
- package/dist/cjs/biz-components/ImageWithText/types.js.map +7 -0
- package/dist/cjs/biz-components/Ksp/index.d.ts +40 -0
- package/dist/cjs/biz-components/Ksp/index.js +2 -0
- package/dist/cjs/biz-components/Ksp/index.js.map +7 -0
- package/dist/cjs/biz-components/MarqueeReview/index.d.ts +41 -0
- package/dist/cjs/biz-components/MarqueeReview/index.js +25 -0
- package/dist/cjs/biz-components/MarqueeReview/index.js.map +7 -0
- package/dist/cjs/biz-components/ProductCompare/index.d.ts +37 -0
- package/dist/cjs/biz-components/ProductCompare/index.js +2 -0
- package/dist/cjs/biz-components/ProductCompare/index.js.map +7 -0
- package/dist/cjs/biz-components/ProductHero/ProductHero.d.ts +7 -0
- package/dist/cjs/biz-components/ProductHero/ProductHero.js +2 -0
- package/dist/cjs/biz-components/ProductHero/ProductHero.js.map +7 -0
- package/dist/cjs/biz-components/ProductHero/index.d.ts +2 -0
- package/dist/cjs/biz-components/ProductHero/index.js +2 -0
- package/dist/cjs/biz-components/ProductHero/index.js.map +7 -0
- package/dist/cjs/biz-components/ProductHero/types.d.ts +20 -0
- package/dist/cjs/biz-components/ProductHero/types.js +2 -0
- package/dist/cjs/biz-components/ProductHero/types.js.map +7 -0
- package/dist/cjs/biz-components/SpecsComparison/SpecsComparison.d.ts +7 -0
- package/dist/cjs/biz-components/SpecsComparison/SpecsComparison.js +2 -0
- package/dist/cjs/biz-components/SpecsComparison/SpecsComparison.js.map +7 -0
- package/dist/cjs/biz-components/SpecsComparison/index.d.ts +2 -0
- package/dist/cjs/biz-components/SpecsComparison/index.js +2 -0
- package/dist/cjs/biz-components/SpecsComparison/index.js.map +7 -0
- package/dist/cjs/biz-components/SpecsComparison/types.d.ts +34 -0
- package/dist/cjs/biz-components/SpecsComparison/types.js +2 -0
- package/dist/cjs/biz-components/SpecsComparison/types.js.map +7 -0
- package/dist/cjs/biz-components/TabWithImage/TabWithImage.d.ts +7 -0
- package/dist/cjs/biz-components/TabWithImage/TabWithImage.js +2 -0
- package/dist/cjs/biz-components/TabWithImage/TabWithImage.js.map +7 -0
- package/dist/cjs/biz-components/TabWithImage/index.d.ts +2 -0
- package/dist/cjs/biz-components/TabWithImage/index.js +2 -0
- package/dist/cjs/biz-components/TabWithImage/index.js.map +7 -0
- package/dist/cjs/biz-components/TabWithImage/types.d.ts +28 -0
- package/dist/cjs/biz-components/TabWithImage/types.js +2 -0
- package/dist/cjs/biz-components/TabWithImage/types.js.map +7 -0
- package/dist/cjs/biz-components/TabsWithMedia/TabsWithMedia.d.ts +7 -0
- package/dist/cjs/biz-components/TabsWithMedia/TabsWithMedia.js +2 -0
- package/dist/cjs/biz-components/TabsWithMedia/TabsWithMedia.js.map +7 -0
- package/dist/cjs/biz-components/TabsWithMedia/index.d.ts +2 -0
- package/dist/cjs/biz-components/TabsWithMedia/index.js +2 -0
- package/dist/cjs/biz-components/TabsWithMedia/index.js.map +7 -0
- package/dist/cjs/biz-components/TabsWithMedia/types.d.ts +40 -0
- package/dist/cjs/biz-components/TabsWithMedia/types.js +2 -0
- package/dist/cjs/biz-components/TabsWithMedia/types.js.map +7 -0
- package/dist/cjs/biz-components/VideoFeature/VideoFeature.d.ts +7 -0
- package/dist/cjs/biz-components/VideoFeature/VideoFeature.js +2 -0
- package/dist/cjs/biz-components/VideoFeature/VideoFeature.js.map +7 -0
- package/dist/cjs/biz-components/VideoFeature/index.d.ts +2 -0
- package/dist/cjs/biz-components/VideoFeature/index.js +2 -0
- package/dist/cjs/biz-components/VideoFeature/index.js.map +7 -0
- package/dist/cjs/biz-components/VideoFeature/types.d.ts +18 -0
- package/dist/cjs/biz-components/VideoFeature/types.js +2 -0
- package/dist/cjs/biz-components/VideoFeature/types.js.map +7 -0
- package/dist/cjs/biz-components/index.d.ts +59 -0
- package/dist/cjs/biz-components/index.js +1 -1
- package/dist/cjs/biz-components/index.js.map +3 -3
- package/dist/cjs/cpn-components/CpnNavigation/index.js +1 -1
- package/dist/cjs/cpn-components/CpnNavigation/index.js.map +3 -3
- package/dist/cjs/shared/Styles.js +1 -1
- package/dist/cjs/shared/Styles.js.map +3 -3
- package/dist/cjs/stories/MarqueeReview.stories.d.ts +73 -0
- package/dist/cjs/stories/MarqueeReview.stories.js +19 -0
- package/dist/cjs/stories/MarqueeReview.stories.js.map +7 -0
- package/dist/cjs/stories/featureCards.stories.d.ts +28 -0
- package/dist/cjs/stories/featureCards.stories.js +2 -0
- package/dist/cjs/stories/featureCards.stories.js.map +7 -0
- package/dist/cjs/stories/featureShowcase.stories.d.ts +28 -0
- package/dist/cjs/stories/featureShowcase.stories.js +2 -0
- package/dist/cjs/stories/featureShowcase.stories.js.map +7 -0
- package/dist/cjs/stories/imageTextFeature.stories.d.ts +27 -0
- package/dist/cjs/stories/imageTextFeature.stories.js +2 -0
- package/dist/cjs/stories/imageTextFeature.stories.js.map +7 -0
- package/dist/cjs/stories/imageWithText.stories.d.ts +27 -0
- package/dist/cjs/stories/imageWithText.stories.js +2 -0
- package/dist/cjs/stories/imageWithText.stories.js.map +7 -0
- package/dist/cjs/stories/ksp.stories.d.ts +63 -0
- package/dist/cjs/stories/ksp.stories.js +129 -0
- package/dist/cjs/stories/ksp.stories.js.map +7 -0
- package/dist/cjs/stories/productCompare.stories.d.ts +49 -0
- package/dist/cjs/stories/productCompare.stories.js +63 -0
- package/dist/cjs/stories/productCompare.stories.js.map +7 -0
- package/dist/cjs/stories/productHero.stories.d.ts +28 -0
- package/dist/cjs/stories/productHero.stories.js +2 -0
- package/dist/cjs/stories/productHero.stories.js.map +7 -0
- package/dist/cjs/stories/specsComparison.stories.d.ts +27 -0
- package/dist/cjs/stories/specsComparison.stories.js +30 -0
- package/dist/cjs/stories/specsComparison.stories.js.map +7 -0
- package/dist/cjs/stories/tabWithImage.stories.d.ts +27 -0
- package/dist/cjs/stories/tabWithImage.stories.js +2 -0
- package/dist/cjs/stories/tabWithImage.stories.js.map +7 -0
- package/dist/cjs/stories/tabsWithMedia.stories.d.ts +27 -0
- package/dist/cjs/stories/tabsWithMedia.stories.js +2 -0
- package/dist/cjs/stories/tabsWithMedia.stories.js.map +7 -0
- package/dist/cjs/stories/videoFeature.stories.d.ts +28 -0
- package/dist/cjs/stories/videoFeature.stories.js +2 -0
- package/dist/cjs/stories/videoFeature.stories.js.map +7 -0
- package/dist/cjs/types/props.d.ts +4 -0
- package/dist/cjs/types/props.js +1 -1
- package/dist/cjs/types/props.js.map +1 -1
- package/dist/esm/biz-components/FeatureCards/FeatureCards.d.ts +7 -0
- package/dist/esm/biz-components/FeatureCards/FeatureCards.js +2 -0
- package/dist/esm/biz-components/FeatureCards/FeatureCards.js.map +7 -0
- package/dist/esm/biz-components/FeatureCards/index.d.ts +2 -0
- package/dist/esm/biz-components/FeatureCards/index.js +2 -0
- package/dist/esm/biz-components/FeatureCards/index.js.map +7 -0
- package/dist/esm/biz-components/FeatureCards/types.d.ts +25 -0
- package/dist/esm/biz-components/FeatureCards/types.js +1 -0
- package/dist/esm/biz-components/FeatureCards/types.js.map +7 -0
- package/dist/esm/biz-components/FeatureShowcase/FeatureShowcase.d.ts +7 -0
- package/dist/esm/biz-components/FeatureShowcase/FeatureShowcase.js +2 -0
- package/dist/esm/biz-components/FeatureShowcase/FeatureShowcase.js.map +7 -0
- package/dist/esm/biz-components/FeatureShowcase/index.d.ts +2 -0
- package/dist/esm/biz-components/FeatureShowcase/index.js +2 -0
- package/dist/esm/biz-components/FeatureShowcase/index.js.map +7 -0
- package/dist/esm/biz-components/FeatureShowcase/types.d.ts +20 -0
- package/dist/esm/biz-components/FeatureShowcase/types.js +1 -0
- package/dist/esm/biz-components/FeatureShowcase/types.js.map +7 -0
- package/dist/esm/biz-components/FooterNavigation/index.js +1 -1
- package/dist/esm/biz-components/FooterNavigation/index.js.map +2 -2
- package/dist/esm/biz-components/HeaderNavigation/index.js +1 -1
- package/dist/esm/biz-components/HeaderNavigation/index.js.map +2 -2
- package/dist/esm/biz-components/ImageTextFeature/ImageTextFeature.d.ts +7 -0
- package/dist/esm/biz-components/ImageTextFeature/ImageTextFeature.js +2 -0
- package/dist/esm/biz-components/ImageTextFeature/ImageTextFeature.js.map +7 -0
- package/dist/esm/biz-components/ImageTextFeature/index.d.ts +2 -0
- package/dist/esm/biz-components/ImageTextFeature/index.js +2 -0
- package/dist/esm/biz-components/ImageTextFeature/index.js.map +7 -0
- package/dist/esm/biz-components/ImageTextFeature/types.d.ts +31 -0
- package/dist/esm/biz-components/ImageTextFeature/types.js +1 -0
- package/dist/esm/biz-components/ImageTextFeature/types.js.map +7 -0
- package/dist/esm/biz-components/ImageWithText/ImageWithText.d.ts +7 -0
- package/dist/esm/biz-components/ImageWithText/ImageWithText.js +2 -0
- package/dist/esm/biz-components/ImageWithText/ImageWithText.js.map +7 -0
- package/dist/esm/biz-components/ImageWithText/index.d.ts +2 -0
- package/dist/esm/biz-components/ImageWithText/index.js +2 -0
- package/dist/esm/biz-components/ImageWithText/index.js.map +7 -0
- package/dist/esm/biz-components/ImageWithText/types.d.ts +23 -0
- package/dist/esm/biz-components/ImageWithText/types.js +1 -0
- package/dist/esm/biz-components/ImageWithText/types.js.map +7 -0
- package/dist/esm/biz-components/Ksp/index.d.ts +40 -0
- package/dist/esm/biz-components/Ksp/index.js +2 -0
- package/dist/esm/biz-components/Ksp/index.js.map +7 -0
- package/dist/esm/biz-components/MarqueeReview/index.d.ts +41 -0
- package/dist/esm/biz-components/MarqueeReview/index.js +25 -0
- package/dist/esm/biz-components/MarqueeReview/index.js.map +7 -0
- package/dist/esm/biz-components/ProductCompare/index.d.ts +37 -0
- package/dist/esm/biz-components/ProductCompare/index.js +2 -0
- package/dist/esm/biz-components/ProductCompare/index.js.map +7 -0
- package/dist/esm/biz-components/ProductHero/ProductHero.d.ts +7 -0
- package/dist/esm/biz-components/ProductHero/ProductHero.js +2 -0
- package/dist/esm/biz-components/ProductHero/ProductHero.js.map +7 -0
- package/dist/esm/biz-components/ProductHero/index.d.ts +2 -0
- package/dist/esm/biz-components/ProductHero/index.js +2 -0
- package/dist/esm/biz-components/ProductHero/index.js.map +7 -0
- package/dist/esm/biz-components/ProductHero/types.d.ts +20 -0
- package/dist/esm/biz-components/ProductHero/types.js +1 -0
- package/dist/esm/biz-components/ProductHero/types.js.map +7 -0
- package/dist/esm/biz-components/SpecsComparison/SpecsComparison.d.ts +7 -0
- package/dist/esm/biz-components/SpecsComparison/SpecsComparison.js +2 -0
- package/dist/esm/biz-components/SpecsComparison/SpecsComparison.js.map +7 -0
- package/dist/esm/biz-components/SpecsComparison/index.d.ts +2 -0
- package/dist/esm/biz-components/SpecsComparison/index.js +2 -0
- package/dist/esm/biz-components/SpecsComparison/index.js.map +7 -0
- package/dist/esm/biz-components/SpecsComparison/types.d.ts +34 -0
- package/dist/esm/biz-components/SpecsComparison/types.js +1 -0
- package/dist/esm/biz-components/SpecsComparison/types.js.map +7 -0
- package/dist/esm/biz-components/TabWithImage/TabWithImage.d.ts +7 -0
- package/dist/esm/biz-components/TabWithImage/TabWithImage.js +2 -0
- package/dist/esm/biz-components/TabWithImage/TabWithImage.js.map +7 -0
- package/dist/esm/biz-components/TabWithImage/index.d.ts +2 -0
- package/dist/esm/biz-components/TabWithImage/index.js +2 -0
- package/dist/esm/biz-components/TabWithImage/index.js.map +7 -0
- package/dist/esm/biz-components/TabWithImage/types.d.ts +28 -0
- package/dist/esm/biz-components/TabWithImage/types.js +1 -0
- package/dist/esm/biz-components/TabWithImage/types.js.map +7 -0
- package/dist/esm/biz-components/TabsWithMedia/TabsWithMedia.d.ts +7 -0
- package/dist/esm/biz-components/TabsWithMedia/TabsWithMedia.js +2 -0
- package/dist/esm/biz-components/TabsWithMedia/TabsWithMedia.js.map +7 -0
- package/dist/esm/biz-components/TabsWithMedia/index.d.ts +2 -0
- package/dist/esm/biz-components/TabsWithMedia/index.js +2 -0
- package/dist/esm/biz-components/TabsWithMedia/index.js.map +7 -0
- package/dist/esm/biz-components/TabsWithMedia/types.d.ts +40 -0
- package/dist/esm/biz-components/TabsWithMedia/types.js +1 -0
- package/dist/esm/biz-components/TabsWithMedia/types.js.map +7 -0
- package/dist/esm/biz-components/VideoFeature/VideoFeature.d.ts +7 -0
- package/dist/esm/biz-components/VideoFeature/VideoFeature.js +2 -0
- package/dist/esm/biz-components/VideoFeature/VideoFeature.js.map +7 -0
- package/dist/esm/biz-components/VideoFeature/index.d.ts +2 -0
- package/dist/esm/biz-components/VideoFeature/index.js +2 -0
- package/dist/esm/biz-components/VideoFeature/index.js.map +7 -0
- package/dist/esm/biz-components/VideoFeature/types.d.ts +18 -0
- package/dist/esm/biz-components/VideoFeature/types.js +1 -0
- package/dist/esm/biz-components/VideoFeature/types.js.map +7 -0
- package/dist/esm/biz-components/index.d.ts +59 -0
- package/dist/esm/biz-components/index.js +1 -1
- package/dist/esm/biz-components/index.js.map +3 -3
- package/dist/esm/cpn-components/CpnNavigation/index.js +1 -1
- package/dist/esm/cpn-components/CpnNavigation/index.js.map +2 -2
- package/dist/esm/shared/Styles.js +1 -1
- package/dist/esm/shared/Styles.js.map +3 -3
- package/dist/esm/stories/MarqueeReview.stories.d.ts +73 -0
- package/dist/esm/stories/MarqueeReview.stories.js +19 -0
- package/dist/esm/stories/MarqueeReview.stories.js.map +7 -0
- package/dist/esm/stories/featureCards.stories.d.ts +28 -0
- package/dist/esm/stories/featureCards.stories.js +2 -0
- package/dist/esm/stories/featureCards.stories.js.map +7 -0
- package/dist/esm/stories/featureShowcase.stories.d.ts +28 -0
- package/dist/esm/stories/featureShowcase.stories.js +2 -0
- package/dist/esm/stories/featureShowcase.stories.js.map +7 -0
- package/dist/esm/stories/imageTextFeature.stories.d.ts +27 -0
- package/dist/esm/stories/imageTextFeature.stories.js +2 -0
- package/dist/esm/stories/imageTextFeature.stories.js.map +7 -0
- package/dist/esm/stories/imageWithText.stories.d.ts +27 -0
- package/dist/esm/stories/imageWithText.stories.js +2 -0
- package/dist/esm/stories/imageWithText.stories.js.map +7 -0
- package/dist/esm/stories/ksp.stories.d.ts +63 -0
- package/dist/esm/stories/ksp.stories.js +129 -0
- package/dist/esm/stories/ksp.stories.js.map +7 -0
- package/dist/esm/stories/productCompare.stories.d.ts +49 -0
- package/dist/esm/stories/productCompare.stories.js +63 -0
- package/dist/esm/stories/productCompare.stories.js.map +7 -0
- package/dist/esm/stories/productHero.stories.d.ts +28 -0
- package/dist/esm/stories/productHero.stories.js +2 -0
- package/dist/esm/stories/productHero.stories.js.map +7 -0
- package/dist/esm/stories/specsComparison.stories.d.ts +27 -0
- package/dist/esm/stories/specsComparison.stories.js +30 -0
- package/dist/esm/stories/specsComparison.stories.js.map +7 -0
- package/dist/esm/stories/tabWithImage.stories.d.ts +27 -0
- package/dist/esm/stories/tabWithImage.stories.js +2 -0
- package/dist/esm/stories/tabWithImage.stories.js.map +7 -0
- package/dist/esm/stories/tabsWithMedia.stories.d.ts +27 -0
- package/dist/esm/stories/tabsWithMedia.stories.js +2 -0
- package/dist/esm/stories/tabsWithMedia.stories.js.map +7 -0
- package/dist/esm/stories/videoFeature.stories.d.ts +28 -0
- package/dist/esm/stories/videoFeature.stories.js +2 -0
- package/dist/esm/stories/videoFeature.stories.js.map +7 -0
- package/dist/esm/types/props.d.ts +4 -0
- package/dist/tokens/base.css +3 -0
- package/package.json +4 -1
- package/tailwind.config.js +2 -0
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
export interface SpecsComparisonMenuItem {
|
|
2
|
+
/** 产品 SKU */
|
|
3
|
+
sku: string;
|
|
4
|
+
/** 产品 handle */
|
|
5
|
+
handle: string;
|
|
6
|
+
/** 规格数据,key 为规格项名称,value 为规格值 */
|
|
7
|
+
subTitle: Record<string, string>;
|
|
8
|
+
}
|
|
9
|
+
export interface SpecsComparisonLeftMenuItem {
|
|
10
|
+
/** 分类标题 */
|
|
11
|
+
title: string;
|
|
12
|
+
/** 规格项列表 */
|
|
13
|
+
subTitle: string[];
|
|
14
|
+
/** 是否为产品规格 */
|
|
15
|
+
isProduct?: boolean;
|
|
16
|
+
}
|
|
17
|
+
export interface SpecsComparisonProps {
|
|
18
|
+
data: {
|
|
19
|
+
/** 左侧菜单配置 */
|
|
20
|
+
LeftMenu: {
|
|
21
|
+
data: SpecsComparisonLeftMenuItem[];
|
|
22
|
+
};
|
|
23
|
+
/** 右侧产品列表配置 */
|
|
24
|
+
RightMenu: {
|
|
25
|
+
menus: SpecsComparisonMenuItem[];
|
|
26
|
+
};
|
|
27
|
+
/** 默认选中菜单配置 */
|
|
28
|
+
DefaultSelectMenu: {
|
|
29
|
+
buttonText: string;
|
|
30
|
+
};
|
|
31
|
+
};
|
|
32
|
+
/** 自定义类名 */
|
|
33
|
+
className?: string;
|
|
34
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";var r=Object.defineProperty;var o=Object.getOwnPropertyDescriptor;var a=Object.getOwnPropertyNames;var p=Object.prototype.hasOwnProperty;var u=(t,e,i,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of a(e))!p.call(t,n)&&n!==i&&r(t,n,{get:()=>e[n],enumerable:!(s=o(e,n))||s.enumerable});return t};var c=t=>u(r({},"__esModule",{value:!0}),t);var m={};module.exports=c(m);
|
|
2
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/biz-components/SpecsComparison/types.ts"],
|
|
4
|
+
"sourcesContent": ["export interface SpecsComparisonMenuItem {\n /** \u4EA7\u54C1 SKU */\n sku: string\n /** \u4EA7\u54C1 handle */\n handle: string\n /** \u89C4\u683C\u6570\u636E\uFF0Ckey \u4E3A\u89C4\u683C\u9879\u540D\u79F0\uFF0Cvalue \u4E3A\u89C4\u683C\u503C */\n subTitle: Record<string, string>\n}\n\nexport interface SpecsComparisonLeftMenuItem {\n /** \u5206\u7C7B\u6807\u9898 */\n title: string\n /** \u89C4\u683C\u9879\u5217\u8868 */\n subTitle: string[]\n /** \u662F\u5426\u4E3A\u4EA7\u54C1\u89C4\u683C */\n isProduct?: boolean\n}\n\nexport interface SpecsComparisonProps {\n data: {\n /** \u5DE6\u4FA7\u83DC\u5355\u914D\u7F6E */\n LeftMenu: {\n data: SpecsComparisonLeftMenuItem[]\n }\n /** \u53F3\u4FA7\u4EA7\u54C1\u5217\u8868\u914D\u7F6E */\n RightMenu: {\n menus: SpecsComparisonMenuItem[]\n }\n /** \u9ED8\u8BA4\u9009\u4E2D\u83DC\u5355\u914D\u7F6E */\n DefaultSelectMenu: {\n buttonText: string\n }\n }\n /** \u81EA\u5B9A\u4E49\u7C7B\u540D */\n className?: string\n}\n"],
|
|
5
|
+
"mappings": "+WAAA,IAAAA,EAAA,kBAAAC,EAAAD",
|
|
6
|
+
"names": ["types_exports", "__toCommonJS"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { TabWithImageProps } from './types.js';
|
|
3
|
+
declare const _default: React.ForwardRefExoticComponent<Omit<Omit<TabWithImageProps & React.RefAttributes<HTMLDivElement>, keyof import("../../shared/Styles.js").StylesProps> & Partial<import("../../shared/Styles.js").StylesProps & import("../../shared/Styles.js").ContainerProps> & {
|
|
4
|
+
className?: string;
|
|
5
|
+
data?: Record<string, any>;
|
|
6
|
+
}, "ref"> & React.RefAttributes<any>>;
|
|
7
|
+
export default _default;
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";"use client";var E=Object.create;var d=Object.defineProperty;var H=Object.getOwnPropertyDescriptor;var L=Object.getOwnPropertyNames;var M=Object.getPrototypeOf,W=Object.prototype.hasOwnProperty;var P=(e,a)=>{for(var o in a)d(e,o,{get:a[o],enumerable:!0})},w=(e,a,o,c)=>{if(a&&typeof a=="object"||typeof a=="function")for(let n of L(a))!W.call(e,n)&&n!==o&&d(e,n,{get:()=>a[n],enumerable:!(c=H(a,n))||c.enumerable});return e};var R=(e,a,o)=>(o=e!=null?E(M(e)):{},w(a||!e||!e.__esModule?d(o,"default",{value:e,enumerable:!0}):o,e)),z=e=>w(d({},"__esModule",{value:!0}),e);var j={};P(j,{default:()=>$});module.exports=z(j);var t=require("react/jsx-runtime"),i=R(require("react")),m=require("../../components/index.js"),b=require("../../helpers/utils.js"),T=require("../../shared/Styles.js"),I=require("../../hooks/useExposure.js"),f=require("framer-motion");const A="image",S="tab_with_image",y=i.default.forwardRef(({data:e,className:a},o)=>{const{title:c,subtitle:n,desc:v,imageUrl:C,mobImageUrl:U,datalist:p=[]}=e,u=(0,i.useRef)(null);(0,I.useExposure)(u,{componentType:A,componentName:S,componentTitle:c,componentDescription:v}),(0,i.useImperativeHandle)(o,()=>u.current);const N=(r,l)=>{k(r),l.target.scrollIntoView({behavior:"smooth",inline:"center",block:"nearest"})},[s,k]=(0,i.useState)(0),h=(0,i.useRef)([]),[g,D]=(0,i.useState)({left:0,width:0});return(0,i.useEffect)(()=>{const r=h.current[s];if(r){const{offsetLeft:l,offsetWidth:x}=r;D({left:l,width:x})}},[s,p.length]),(0,t.jsxs)("section",{ref:u,"data-ui-component-id":"TabWithImage",className:(0,b.cn)("flex text-[#fff] l:gap-[24px] xl:flex-col min-md:justify-between min-l:gap-[20px]",a),children:[(0,t.jsxs)("div",{className:"inline-flex flex-col justify-center min-md:gap-[24px] laptop:basis-[36%]",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)(m.Heading,{as:"h3",size:4,html:c}),(0,t.jsx)(m.Text,{as:"p",size:1,html:v,className:"mt-[4px] text-[14px] tablet:text-[14px] laptop:text-[14px] desktop:text-[16px] lg-desktop:text-[18px]"})]}),(0,t.jsx)("div",{className:"relative md:overflow-hidden md:overflow-x-scroll md:scrollbar-hidden",children:(0,t.jsxs)("div",{className:"relative inline-flex rounded-[24px] bg-[#1D1D1F] px-[4px] md:my-[24px]",children:[(0,t.jsx)("div",{className:"absolute bottom-0 top-0 rounded-[24px] bg-white transition-all duration-300 ease-in-out",style:{left:g.left,width:g.width}}),p.map((r,l)=>(0,t.jsx)("div",{ref:x=>{h.current[l]=x},onClick:x=>N(l,x),className:(0,b.cn)("relative z-10 cursor-pointer rounded-[24px] px-[20px] py-[10px] text-center text-[12px] font-medium transition-colors duration-300 md:px-[20px] md:py-[10px] min-xxl:px-[28px] min-xxl:py-[15px]",s===l?"text-black":"text-white"),children:(0,t.jsx)(m.Heading,{as:"h1",size:1,html:r?.title,className:"text-balance-normal !whitespace-nowrap md:text-[14px]"})},l))]})})]}),(0,t.jsx)("div",{className:" relative w-full flex-shrink md:aspect-[358/360] min-xxl:aspect-[824/560] min-xxl:max-w-[824px] tablet:aspect-[704/360] laptop:aspect-[744/336] laptop:basis-[64%] desktop:aspect-[648/448]",children:(0,t.jsx)(f.AnimatePresence,{mode:"wait",children:(0,t.jsx)(f.motion.div,{initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},transition:{duration:.3},className:"absolute left-0 top-0 w-full",children:(0,t.jsx)(m.Picture,{source:`${p[s].image} ,${p[s].imgPad} 1440, ${p[s].imageMob} 767`,className:"rounded-[16px] md:aspect-[358/360] min-xxl:aspect-[824/560] min-xxl:max-w-[824px] tablet:aspect-[704/360] laptop:aspect-[744/336] desktop:aspect-[648/448] "})},p[s].image)})})]})});y.displayName="TabWithImage";var $=(0,T.withLayout)(y);
|
|
2
|
+
//# sourceMappingURL=TabWithImage.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/biz-components/TabWithImage/TabWithImage.tsx"],
|
|
4
|
+
"sourcesContent": ["'use client'\nimport React, { useState, useEffect, useRef, useImperativeHandle } from 'react'\nimport { Heading, Picture, Text } from '../../components/index.js'\nimport { cn } from '../../helpers/utils.js'\nimport { withLayout } from '../../shared/Styles.js'\nimport { useExposure } from '../../hooks/useExposure.js'\nimport type { TabWithImageProps, TabWithImageDataItem } from './types.js'\nimport { motion, AnimatePresence } from 'framer-motion'\n\nconst componentType = 'image'\nconst componentName = 'tab_with_image'\n\nconst TabWithImage = React.forwardRef<HTMLDivElement, TabWithImageProps>(({ data, className }, ref) => {\n const { title, subtitle, desc, imageUrl, mobImageUrl, datalist = [] } = data\n\n const boxRef = useRef<HTMLDivElement>(null)\n\n useExposure(boxRef, {\n componentType,\n componentName,\n componentTitle: title,\n componentDescription: desc,\n })\n\n useImperativeHandle(ref, () => boxRef.current as HTMLDivElement)\n\n const handleClick = (index: number, e: React.MouseEvent<HTMLDivElement>) => {\n setActiveIndex(index)\n ;(e.target as HTMLElement).scrollIntoView({\n behavior: 'smooth', // \u5E73\u6ED1\u6EDA\u52A8\n inline: 'center', // \u6A2A\u5411\u5C45\u4E2D\u5BF9\u9F50\n block: 'nearest', // \u5782\u76F4\u65B9\u5411\u4E0D\u52A8\n })\n }\n\n const [activeIndex, setActiveIndex] = useState(0)\n const tabRefs = useRef<Array<HTMLDivElement | null>>([]) // \u8BB0\u5F55\u6BCF\u4E2Atab\u7684\u4F4D\u7F6E\n const [sliderStyle, setSliderStyle] = useState({ left: 0, width: 0 })\n\n useEffect(() => {\n const current = tabRefs.current[activeIndex]\n if (current) {\n const { offsetLeft, offsetWidth } = current\n setSliderStyle({ left: offsetLeft, width: offsetWidth })\n }\n }, [activeIndex, datalist.length])\n\n return (\n <section\n ref={boxRef}\n data-ui-component-id=\"TabWithImage\"\n className={cn(\n 'flex text-[#fff] l:gap-[24px] xl:flex-col min-md:justify-between min-l:gap-[20px]',\n className\n )}\n >\n <div className=\"inline-flex flex-col justify-center min-md:gap-[24px] laptop:basis-[36%]\">\n <div>\n <Heading as={'h3'} size={4} html={title} />\n <Text\n as={'p'}\n size={1}\n html={desc}\n className=\"mt-[4px] text-[14px] tablet:text-[14px] laptop:text-[14px] desktop:text-[16px] lg-desktop:text-[18px]\"\n />\n </div>\n\n <div className=\"relative md:overflow-hidden md:overflow-x-scroll md:scrollbar-hidden\">\n <div className=\"relative inline-flex rounded-[24px] bg-[#1D1D1F] px-[4px] md:my-[24px]\">\n {/* \u6ED1\u52A8\u80CC\u666F */}\n <div\n className=\"absolute bottom-0 top-0 rounded-[24px] bg-white transition-all duration-300 ease-in-out\"\n style={{\n left: sliderStyle.left,\n width: sliderStyle.width,\n }}\n />\n\n {/* Tab Items */}\n {datalist.map((item: TabWithImageDataItem, index: number) => (\n <div\n key={index}\n ref={(el) => {\n tabRefs.current[index] = el\n }}\n onClick={(e) => handleClick(index, e)}\n className={cn(\n 'relative z-10 cursor-pointer rounded-[24px] px-[20px] py-[10px] text-center text-[12px] font-medium transition-colors duration-300 md:px-[20px] md:py-[10px] min-xxl:px-[28px] min-xxl:py-[15px]',\n activeIndex === index ? 'text-black' : 'text-white'\n )}\n >\n <Heading\n as=\"h1\"\n size={1}\n html={item?.title}\n className=\"text-balance-normal !whitespace-nowrap md:text-[14px]\"\n />\n </div>\n ))}\n </div>\n </div>\n </div>\n <div className=\" relative w-full flex-shrink md:aspect-[358/360] min-xxl:aspect-[824/560] min-xxl:max-w-[824px] tablet:aspect-[704/360] laptop:aspect-[744/336] laptop:basis-[64%] desktop:aspect-[648/448]\">\n <AnimatePresence mode=\"wait\">\n <motion.div\n key={datalist[activeIndex].image}\n initial={{ opacity: 0 }}\n animate={{ opacity: 1 }}\n exit={{ opacity: 0 }}\n transition={{ duration: 0.3 }}\n className=\"absolute left-0 top-0 w-full\"\n >\n <Picture\n source={`${datalist[activeIndex].image} ,${datalist[activeIndex].imgPad} 1440, ${datalist[activeIndex].imageMob} 767`}\n className=\"rounded-[16px] md:aspect-[358/360] min-xxl:aspect-[824/560] min-xxl:max-w-[824px] tablet:aspect-[704/360] laptop:aspect-[744/336] desktop:aspect-[648/448] \"\n />\n </motion.div>\n </AnimatePresence>\n </div>\n </section>\n )\n})\n\nTabWithImage.displayName = 'TabWithImage'\n\nexport default withLayout(TabWithImage)\n"],
|
|
5
|
+
"mappings": "ukBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,aAAAE,IAAA,eAAAC,EAAAH,GAyDQ,IAAAI,EAAA,6BAxDRC,EAAwE,oBACxEC,EAAuC,qCACvCC,EAAmB,kCACnBC,EAA2B,kCAC3BC,EAA4B,sCAE5BC,EAAwC,yBAExC,MAAMC,EAAgB,QAChBC,EAAgB,iBAEhBC,EAAe,EAAAC,QAAM,WAA8C,CAAC,CAAE,KAAAC,EAAM,UAAAC,CAAU,EAAGC,IAAQ,CACrG,KAAM,CAAE,MAAAC,EAAO,SAAAC,EAAU,KAAAC,EAAM,SAAAC,EAAU,YAAAC,EAAa,SAAAC,EAAW,CAAC,CAAE,EAAIR,EAElES,KAAS,UAAuB,IAAI,KAE1C,eAAYA,EAAQ,CAClB,cAAAb,EACA,cAAAC,EACA,eAAgBM,EAChB,qBAAsBE,CACxB,CAAC,KAED,uBAAoBH,EAAK,IAAMO,EAAO,OAAyB,EAE/D,MAAMC,EAAc,CAACC,EAAeC,IAAwC,CAC1EC,EAAeF,CAAK,EAClBC,EAAE,OAAuB,eAAe,CACxC,SAAU,SACV,OAAQ,SACR,MAAO,SACT,CAAC,CACH,EAEM,CAACE,EAAaD,CAAc,KAAI,YAAS,CAAC,EAC1CE,KAAU,UAAqC,CAAC,CAAC,EACjD,CAACC,EAAaC,CAAc,KAAI,YAAS,CAAE,KAAM,EAAG,MAAO,CAAE,CAAC,EAEpE,sBAAU,IAAM,CACd,MAAMC,EAAUH,EAAQ,QAAQD,CAAW,EAC3C,GAAII,EAAS,CACX,KAAM,CAAE,WAAAC,EAAY,YAAAC,CAAY,EAAIF,EACpCD,EAAe,CAAE,KAAME,EAAY,MAAOC,CAAY,CAAC,CACzD,CACF,EAAG,CAACN,EAAaN,EAAS,MAAM,CAAC,KAG/B,QAAC,WACC,IAAKC,EACL,uBAAqB,eACrB,aAAW,MACT,oFACAR,CACF,EAEA,qBAAC,OAAI,UAAU,2EACb,qBAAC,OACC,oBAAC,WAAQ,GAAI,KAAM,KAAM,EAAG,KAAME,EAAO,KACzC,OAAC,QACC,GAAI,IACJ,KAAM,EACN,KAAME,EACN,UAAU,wGACZ,GACF,KAEA,OAAC,OAAI,UAAU,uEACb,oBAAC,OAAI,UAAU,yEAEb,oBAAC,OACC,UAAU,0FACV,MAAO,CACL,KAAMW,EAAY,KAClB,MAAOA,EAAY,KACrB,EACF,EAGCR,EAAS,IAAI,CAACa,EAA4BV,OACzC,OAAC,OAEC,IAAMW,GAAO,CACXP,EAAQ,QAAQJ,CAAK,EAAIW,CAC3B,EACA,QAAUV,GAAMF,EAAYC,EAAOC,CAAC,EACpC,aAAW,MACT,mMACAE,IAAgBH,EAAQ,aAAe,YACzC,EAEA,mBAAC,WACC,GAAG,KACH,KAAM,EACN,KAAMU,GAAM,MACZ,UAAU,wDACZ,GAfKV,CAgBP,CACD,GACH,EACF,GACF,KACA,OAAC,OAAI,UAAU,8LACb,mBAAC,mBAAgB,KAAK,OACpB,mBAAC,SAAO,IAAP,CAEC,QAAS,CAAE,QAAS,CAAE,EACtB,QAAS,CAAE,QAAS,CAAE,EACtB,KAAM,CAAE,QAAS,CAAE,EACnB,WAAY,CAAE,SAAU,EAAI,EAC5B,UAAU,+BAEV,mBAAC,WACC,OAAQ,GAAGH,EAASM,CAAW,EAAE,KAAK,KAAKN,EAASM,CAAW,EAAE,MAAM,UAAUN,EAASM,CAAW,EAAE,QAAQ,OAC/G,UAAU,8JACZ,GAVKN,EAASM,CAAW,EAAE,KAW7B,EACF,EACF,GACF,CAEJ,CAAC,EAEDhB,EAAa,YAAc,eAE3B,IAAOX,KAAQ,cAAWW,CAAY",
|
|
6
|
+
"names": ["TabWithImage_exports", "__export", "TabWithImage_default", "__toCommonJS", "import_jsx_runtime", "import_react", "import_components", "import_utils", "import_Styles", "import_useExposure", "import_framer_motion", "componentType", "componentName", "TabWithImage", "React", "data", "className", "ref", "title", "subtitle", "desc", "imageUrl", "mobImageUrl", "datalist", "boxRef", "handleClick", "index", "e", "setActiveIndex", "activeIndex", "tabRefs", "sliderStyle", "setSliderStyle", "current", "offsetLeft", "offsetWidth", "item", "el"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";var s=Object.create;var o=Object.defineProperty;var I=Object.getOwnPropertyDescriptor;var b=Object.getOwnPropertyNames;var g=Object.getPrototypeOf,h=Object.prototype.hasOwnProperty;var i=(t,e)=>{for(var a in e)o(t,a,{get:e[a],enumerable:!0})},r=(t,e,a,p)=>{if(e&&typeof e=="object"||typeof e=="function")for(let m of b(e))!h.call(t,m)&&m!==a&&o(t,m,{get:()=>e[m],enumerable:!(p=I(e,m))||p.enumerable});return t};var x=(t,e,a)=>(a=t!=null?s(g(t)):{},r(e||!t||!t.__esModule?o(a,"default",{value:t,enumerable:!0}):a,t)),y=t=>r(o({},"__esModule",{value:!0}),t);var T={};i(T,{default:()=>f.default});module.exports=y(T);var f=x(require("./TabWithImage.js"));
|
|
2
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/biz-components/TabWithImage/index.ts"],
|
|
4
|
+
"sourcesContent": ["export { default } from './TabWithImage.js'\nexport type { TabWithImageProps, TabWithImageDataItem } from './types.js'\n"],
|
|
5
|
+
"mappings": "0jBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,wCAAAE,EAAAF,GAAA,IAAAG,EAAwB",
|
|
6
|
+
"names": ["TabWithImage_exports", "__export", "__toCommonJS", "import_TabWithImage"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
export interface TabWithImageDataItem {
|
|
2
|
+
/** 桌面端图片 URL */
|
|
3
|
+
image: string;
|
|
4
|
+
/** 平板端图片 URL */
|
|
5
|
+
imgPad?: string;
|
|
6
|
+
/** 移动端图片 URL */
|
|
7
|
+
imageMob?: string;
|
|
8
|
+
/** Tab 标题 */
|
|
9
|
+
title: string;
|
|
10
|
+
}
|
|
11
|
+
export interface TabWithImageProps {
|
|
12
|
+
data: {
|
|
13
|
+
/** 主标题 */
|
|
14
|
+
title: string;
|
|
15
|
+
/** 副标题(可选) */
|
|
16
|
+
subtitle?: string;
|
|
17
|
+
/** 描述文本 */
|
|
18
|
+
desc: string;
|
|
19
|
+
/** 默认图片 URL(可选) */
|
|
20
|
+
imageUrl?: string;
|
|
21
|
+
/** 默认移动端图片 URL(可选) */
|
|
22
|
+
mobImageUrl?: string;
|
|
23
|
+
/** 数据列表 */
|
|
24
|
+
datalist: TabWithImageDataItem[];
|
|
25
|
+
};
|
|
26
|
+
/** 自定义类名 */
|
|
27
|
+
className?: string;
|
|
28
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";var g=Object.defineProperty;var s=Object.getOwnPropertyDescriptor;var m=Object.getOwnPropertyNames;var n=Object.prototype.hasOwnProperty;var l=(a,t,r,e)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of m(t))!n.call(a,i)&&i!==r&&g(a,i,{get:()=>t[i],enumerable:!(e=s(t,i))||e.enumerable});return a};var b=a=>l(g({},"__esModule",{value:!0}),a);var I={};module.exports=b(I);
|
|
2
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/biz-components/TabWithImage/types.ts"],
|
|
4
|
+
"sourcesContent": ["export interface TabWithImageDataItem {\n /** \u684C\u9762\u7AEF\u56FE\u7247 URL */\n image: string\n /** \u5E73\u677F\u7AEF\u56FE\u7247 URL */\n imgPad?: string\n /** \u79FB\u52A8\u7AEF\u56FE\u7247 URL */\n imageMob?: string\n /** Tab \u6807\u9898 */\n title: string\n}\n\nexport interface TabWithImageProps {\n data: {\n /** \u4E3B\u6807\u9898 */\n title: string\n /** \u526F\u6807\u9898\uFF08\u53EF\u9009\uFF09 */\n subtitle?: string\n /** \u63CF\u8FF0\u6587\u672C */\n desc: string\n /** \u9ED8\u8BA4\u56FE\u7247 URL\uFF08\u53EF\u9009\uFF09 */\n imageUrl?: string\n /** \u9ED8\u8BA4\u79FB\u52A8\u7AEF\u56FE\u7247 URL\uFF08\u53EF\u9009\uFF09 */\n mobImageUrl?: string\n /** \u6570\u636E\u5217\u8868 */\n datalist: TabWithImageDataItem[]\n }\n /** \u81EA\u5B9A\u4E49\u7C7B\u540D */\n className?: string\n}\n"],
|
|
5
|
+
"mappings": "+WAAA,IAAAA,EAAA,kBAAAC,EAAAD",
|
|
6
|
+
"names": ["types_exports", "__toCommonJS"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { TabsWithMediaProps } from './types.js';
|
|
3
|
+
declare const _default: React.ForwardRefExoticComponent<Omit<Omit<TabsWithMediaProps & React.RefAttributes<HTMLDivElement>, keyof import("../../shared/Styles.js").StylesProps> & Partial<import("../../shared/Styles.js").StylesProps & import("../../shared/Styles.js").ContainerProps> & {
|
|
4
|
+
className?: string;
|
|
5
|
+
data?: Record<string, any>;
|
|
6
|
+
}, "ref"> & React.RefAttributes<any>>;
|
|
7
|
+
export default _default;
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";"use client";var O=Object.create;var T=Object.defineProperty;var Q=Object.getOwnPropertyDescriptor;var G=Object.getOwnPropertyNames;var J=Object.getPrototypeOf,K=Object.prototype.hasOwnProperty;var X=(s,r)=>{for(var c in r)T(s,c,{get:r[c],enumerable:!0})},W=(s,r,c,v)=>{if(r&&typeof r=="object"||typeof r=="function")for(let d of G(r))!K.call(s,d)&&d!==c&&T(s,d,{get:()=>r[d],enumerable:!(v=Q(r,d))||v.enumerable});return s};var Y=(s,r,c)=>(c=s!=null?O(J(s)):{},W(r||!s||!s.__esModule?T(c,"default",{value:s,enumerable:!0}):c,s)),Z=s=>W(T({},"__esModule",{value:!0}),s);var oe={};X(oe,{default:()=>ie});module.exports=Z(oe);var i=require("react/jsx-runtime"),n=Y(require("react")),u=require("../../components/index.js"),f=require("../../helpers/utils.js"),j=require("../../shared/Styles.js"),F=require("../../hooks/useExposure.js"),k=require("swiper/react"),I=require("swiper/modules"),N=require("framer-motion"),A=require("react-responsive");const $="video",ee="tabs_with_media",te=[{time:2.4,point:2.4,highlightIdx:0},{time:2.5,point:4.9,highlightIdx:1},{time:2.5,point:7.4,highlightIdx:2},{time:2.8,point:10.2,highlightIdx:3},{time:2.6,point:12.8,highlightIdx:4},{time:3.2,point:16,highlightIdx:5}],z=n.default.forwardRef(({data:s,className:r},c)=>{const{title:v,poster:d,videoUrl:U,mobvideoUrl:B,items:y=[],timeIdx:p=te}=s,[E,V]=(0,n.useState)(null),S=(0,n.useRef)([]),R=(0,n.useRef)(null),b=(0,n.useRef)(null),L=(0,n.useRef)(null);(0,F.useExposure)(L,{componentType:$,componentName:ee,componentTitle:v}),(0,n.useImperativeHandle)(c,()=>L.current);const ne=e=>{const o=R.current,l=S.current[e];if(o&&l){const t=o.getBoundingClientRect(),w=l.getBoundingClientRect().left-t.left-o.clientWidth/2+l.clientWidth/2;o.scrollTo({left:o.scrollLeft+w,behavior:"smooth"})}},C=(0,A.useMediaQuery)({query:"(max-width: 768px)"}),[se,M,_,x,q]=(0,n.useMemo)(()=>{const l=y.length,t=y?.map((a,m)=>({...a,key:m,index:m}))||[];return[t,t.concat(t),5,2,l]},[y,C]),[g,D]=(0,n.useState)(x),[h,H]=(0,n.useState)(M.slice(0,_)),P=(e,o,l)=>{if(e!==g&&o!==x){if(o>x){const t=o-x,a=[...h];a.splice(0,t);const m=h[h.length-1]?.key+1,w=[...M].splice(m,t);a.push(...w),H([...a])}if(o<x){const t=x-o,a=[...h];a.splice(-t);const m=h[0]?.key,w=[...M].splice(q+m-t,t);a.unshift(...w),H([...a])}if(D(e),E?.slideTo(e),!l){let t=0;p.forEach(a=>{a.highlightIdx<e&&(t+=a.time)}),b.current&&(b.current.currentTime=t)}}};return(0,n.useEffect)(()=>{const e=b.current;if(!e)return;const o=()=>{const l=e.currentTime;for(let t=0;t<p.length;t++){const a=t===0?0:p[t-1].point;if(l>=a&&l<p[t].point){P(p[t].highlightIdx,p[t].highlightIdx,!0);break}}l>=p[p.length-1].point&&(e.currentTime=0,e.play())};return e.addEventListener("timeupdate",o),()=>{e.removeEventListener("timeupdate",o)}},[E,p]),(0,i.jsxs)("section",{ref:L,"data-ui-component-id":"TabsWithMedia",className:(0,f.cn)("flex flex-col overflow-hidden text-[#fff] sm:overflow-visible",r),children:[(0,i.jsx)(u.Heading,{as:"h3",size:4,html:v,className:"text-center"}),(0,i.jsx)("div",{className:" relative w-full overflow-x-auto scrollbar-hidden sm:overflow-visible",children:(0,i.jsx)("div",{className:(0,f.cn)("mx-auto mt-[16px] w-full max-w-[824px] tablet:w-fit"),children:(0,i.jsx)("div",{className:(0,f.cn)("flex translate-x-0 items-center justify-center gap-[16px] transition-all md:gap-[8px]"),ref:R,children:(0,i.jsx)(N.AnimatePresence,{mode:"popLayout",children:h?.map((e,o)=>(0,i.jsx)(N.motion.div,{layout:!0,ref:l=>{S.current[e?.index]=l},onClick:()=>{P(e?.key,o)},className:"min-w-[28px] flex-none cursor-pointer overflow-hidden sm:overflow-visible",initial:{opacity:1},animate:{opacity:1},exit:{opacity:0},transition:{duration:.3,ease:"easeOut"},children:(0,i.jsx)("div",{className:"flex items-center justify-between",children:(0,i.jsxs)("div",{className:(0,f.cn)("flex",{"flex items-center justify-center gap-[8px] rounded-[48px] bg-[#fff] p-2 md:gap-[4px] md:p-1":g===e?.key}),children:[(0,i.jsx)("div",{className:(0,f.cn)("flex h-[28] w-[28] items-center justify-center rounded-full md:flex-shrink-0 lg-desktop:h-[48px] lg-desktop:w-[48px]",{"h-[28px] w-[28px] bg-[#ccc] bg-opacity-50 lg-desktop:h-[48px] lg-desktop:w-[48px]":g!==e?.index}),style:g===e?.key?{background:"var(--1, linear-gradient(90deg, #3AD1FF 0%, #008CD6 100%))"}:void 0,children:(0,i.jsx)(u.Picture,{source:e?.icon,className:"h-[22px] w-[22px] md:h-[14px] md:w-[14px]"})}),(0,i.jsx)("div",{className:"",children:(0,i.jsx)(u.Heading,{as:"h4",size:2,html:e?.tab,className:(0,f.cn)("dynamic-width-heading line-clamp-1 h-0 w-0 overflow-hidden whitespace-nowrap text-nowrap text-[#000] opacity-0 transition-all duration-300 ease-linear xs:text-[16px] sm:text-[18px]",{"h-auto w-[calc-size(auto,size)] px-[6px] opacity-100":g===e?.key})})})]})})},e?.key))})})})}),(0,i.jsx)("div",{className:"mt-[16px] lg-desktop:mt-[24px]",children:(0,i.jsx)(k.Swiper,{slidesPerView:1,effect:"fade",fadeEffect:{crossFade:!0},modules:[I.Pagination,I.EffectFade],onSlideChange:e=>{const o=e.realIndex;D(o)},onSwiper:e=>V(e),children:y.map((e,o)=>(0,i.jsx)(k.SwiperSlide,{style:{transition:"opacity 1s ease-in-out"},className:"rounded-[26px]",children:(0,i.jsx)("div",{children:(0,i.jsx)(u.Text,{as:"p",size:2,html:e.desc,className:"text-center desktop:text-[20px] lg-desktop:text-[18px]"})})},o))})}),(0,i.jsx)("div",{className:"mt-[24px] overflow-hidden rounded-[22px] laptop:mt-[32px] desktop:mt-[40px] lg-desktop:mt-[64px]",children:(0,i.jsx)("video",{className:"mx-auto h-[360px] w-fit desktop:h-[448px] lg-desktop:h-[560px]",src:C?B:U,poster:d,playsInline:!0,autoPlay:!0,muted:!0,loop:!0,ref:b})})]})});z.displayName="TabsWithMedia";var ie=(0,j.withLayout)(z);
|
|
2
|
+
//# sourceMappingURL=TabsWithMedia.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/biz-components/TabsWithMedia/TabsWithMedia.tsx"],
|
|
4
|
+
"sourcesContent": ["'use client'\nimport React, { useEffect, useImperativeHandle, useMemo, useRef, useState } from 'react'\nimport { Heading, Picture, Text } from '../../components/index.js'\nimport { cn } from '../../helpers/utils.js'\nimport { withLayout } from '../../shared/Styles.js'\nimport { useExposure } from '../../hooks/useExposure.js'\nimport type { TabsWithMediaProps, TabItem, TimeIndex } from './types.js'\nimport { Swiper, SwiperSlide } from 'swiper/react'\nimport { Pagination, EffectFade } from 'swiper/modules'\nimport type { Swiper as SwiperType } from 'swiper'\nimport { motion, AnimatePresence } from 'framer-motion'\nimport { useMediaQuery } from 'react-responsive'\n\nconst componentType = 'video'\nconst componentName = 'tabs_with_media'\n\n// \u9ED8\u8BA4\u65F6\u95F4\u70B9\u914D\u7F6E\nconst defaultTimeIdx: TimeIndex[] = [\n { time: 2.4, point: 2.4, highlightIdx: 0 },\n { time: 2.5, point: 4.9, highlightIdx: 1 },\n { time: 2.5, point: 7.4, highlightIdx: 2 },\n { time: 2.8, point: 10.2, highlightIdx: 3 },\n { time: 2.6, point: 12.8, highlightIdx: 4 },\n { time: 3.2, point: 16, highlightIdx: 5 },\n]\n\nconst TabsWithMedia = React.forwardRef<HTMLDivElement, TabsWithMediaProps>(({ data, className }, ref) => {\n const { title, poster, videoUrl, mobvideoUrl, items = [], timeIdx = defaultTimeIdx } = data\n\n const [swiper, setSwiper] = useState<SwiperType | null>(null)\n const tabRefs = useRef<(HTMLDivElement | null)[]>([])\n const scrollContainerRef = useRef<HTMLDivElement>(null)\n const videoRef = useRef<HTMLVideoElement>(null)\n const boxRef = useRef<HTMLDivElement>(null)\n\n useExposure(boxRef, {\n componentType,\n componentName,\n componentTitle: title,\n })\n\n useImperativeHandle(ref, () => boxRef.current as HTMLDivElement)\n\n const scrollToTabCenter = (index: number) => {\n const container = scrollContainerRef.current\n const tab = tabRefs.current[index]\n\n if (container && tab) {\n const containerRect = container.getBoundingClientRect()\n const tabRect = tab.getBoundingClientRect()\n const offset = tabRect.left - containerRect.left\n const scroll = offset - container.clientWidth / 2 + tab.clientWidth / 2\n\n container.scrollTo({\n left: container.scrollLeft + scroll,\n behavior: 'smooth',\n })\n }\n }\n\n const isMob = useMediaQuery({ query: '(max-width: 768px)' })\n\n const [list, listDouble, row, center, listLength] = useMemo(() => {\n const row = 5\n const center = 2\n const listLength = items.length\n\n const list =\n items?.map((item: TabItem, index: number) => {\n return {\n ...item,\n key: index,\n index: index,\n }\n }) || []\n\n return [list, list.concat(list), row, center, listLength]\n }, [items, isMob])\n\n const [idx, setIdx] = useState(center)\n\n const [cureentList, setCureentList] = useState(listDouble.slice(0, row))\n\n // \u70B9\u51FB tab \u8DF3\u8F6C\u5BF9\u5E94\u89C6\u9891\u4F4D\u7F6E\n const handleNavClick = (key: number, index: number, isAuto?: boolean) => {\n if (key === idx) return\n if (index === center) return\n if (index > center) {\n const gap = index - center\n const copy = [...cureentList]\n copy.splice(0, gap)\n const lastkey = (cureentList[cureentList.length - 1] as any)?.key + 1\n const add = [...listDouble].splice(lastkey, gap)\n copy.push(...add)\n setCureentList([...copy])\n }\n if (index < center) {\n const gap = center - index\n const copy = [...cureentList]\n copy.splice(-gap)\n const firstkey = (cureentList[0] as any)?.key\n const add = [...listDouble].splice(listLength + firstkey - gap, gap)\n copy.unshift(...add)\n setCureentList([...copy])\n }\n\n setIdx(key)\n swiper?.slideTo(key)\n\n if (!isAuto) {\n let time = 0\n timeIdx.forEach((item) => {\n if (item.highlightIdx < key) {\n time += item.time\n }\n })\n if (videoRef.current) {\n videoRef.current.currentTime = time\n }\n }\n }\n\n // \u64AD\u653E\u65F6\u6839\u636E\u65F6\u95F4\u5207\u6362 Swiper + tab\n useEffect(() => {\n const video = videoRef.current\n if (!video) return\n\n const handleTimeUpdate = () => {\n const currentTime = video.currentTime\n\n // \u81EA\u52A8\u5207\u6362\u5185\u5BB9\n for (let i = 0; i < timeIdx.length; i++) {\n const prev = i === 0 ? 0 : timeIdx[i - 1].point\n if (currentTime >= prev && currentTime < timeIdx[i].point) {\n handleNavClick(timeIdx[i].highlightIdx, timeIdx[i].highlightIdx, true)\n break\n }\n }\n\n // \u4FEE\u590D\uFF1A\u64AD\u653E\u5230\u6700\u540E\u540E\u81EA\u52A8\u5F52\u96F6\u5E76\u91CD\u65B0\u64AD\u653E\n if (currentTime >= timeIdx[timeIdx.length - 1].point) {\n video.currentTime = 0\n video.play()\n }\n }\n\n video.addEventListener('timeupdate', handleTimeUpdate)\n return () => {\n video.removeEventListener('timeupdate', handleTimeUpdate)\n }\n }, [swiper, timeIdx])\n\n return (\n <section\n ref={boxRef}\n data-ui-component-id=\"TabsWithMedia\"\n className={cn('flex flex-col overflow-hidden text-[#fff] sm:overflow-visible', className)}\n >\n <Heading as=\"h3\" size={4} html={title} className=\"text-center\" />\n <div className=\" relative w-full overflow-x-auto scrollbar-hidden sm:overflow-visible\">\n <div className={cn('mx-auto mt-[16px] w-full max-w-[824px] tablet:w-fit')}>\n <div\n className={cn(\n 'flex translate-x-0 items-center justify-center gap-[16px] transition-all md:gap-[8px]'\n )}\n ref={scrollContainerRef}\n >\n <AnimatePresence mode=\"popLayout\">\n {cureentList?.map((item: any, index: number) => (\n <motion.div\n layout\n key={item?.key}\n ref={(el) => {\n tabRefs.current[item?.index] = el\n }}\n onClick={() => {\n handleNavClick(item?.key, index)\n }}\n className=\"min-w-[28px] flex-none cursor-pointer overflow-hidden sm:overflow-visible\"\n initial={{ opacity: 1 }}\n animate={{ opacity: 1 }}\n exit={{ opacity: 0 }}\n transition={{\n duration: 0.3,\n ease: 'easeOut',\n }}\n >\n <div className=\"flex items-center justify-between\">\n <div\n className={cn('flex', {\n 'flex items-center justify-center gap-[8px] rounded-[48px] bg-[#fff] p-2 md:gap-[4px] md:p-1':\n idx === item?.key,\n })}\n >\n <div\n className={cn(\n 'flex h-[28] w-[28] items-center justify-center rounded-full md:flex-shrink-0 lg-desktop:h-[48px] lg-desktop:w-[48px]',\n {\n 'h-[28px] w-[28px] bg-[#ccc] bg-opacity-50 lg-desktop:h-[48px] lg-desktop:w-[48px]':\n idx !== item?.index,\n }\n )}\n style={\n idx === item?.key\n ? {\n background:\n 'var(--1, linear-gradient(90deg, #3AD1FF 0%, #008CD6 100%))',\n }\n : undefined\n }\n >\n <Picture\n source={item?.icon}\n className=\"h-[22px] w-[22px] md:h-[14px] md:w-[14px]\"\n />\n </div>\n\n <div className=\"\">\n <Heading\n as=\"h4\"\n size={2}\n html={item?.tab}\n className={cn(\n 'dynamic-width-heading line-clamp-1 h-0 w-0 overflow-hidden whitespace-nowrap text-nowrap text-[#000] opacity-0 transition-all duration-300 ease-linear xs:text-[16px] sm:text-[18px]',\n {\n 'h-auto w-[calc-size(auto,size)] px-[6px] opacity-100':\n idx === item?.key,\n }\n )}\n />\n </div>\n </div>\n </div>\n </motion.div>\n ))}\n </AnimatePresence>\n </div>\n </div>\n </div>\n <div className=\"mt-[16px] lg-desktop:mt-[24px]\">\n <Swiper\n slidesPerView={1}\n effect=\"fade\"\n fadeEffect={{ crossFade: true }}\n modules={[Pagination, EffectFade]}\n onSlideChange={(swiper) => {\n const newIndex = swiper.realIndex\n setIdx(newIndex)\n }}\n onSwiper={(swiper) => setSwiper(swiper)}\n >\n {items.map((it: TabItem, ind: number) => (\n <SwiperSlide\n key={ind}\n style={{ transition: 'opacity 1s ease-in-out' }}\n className=\"rounded-[26px]\"\n >\n <div>\n <Text\n as=\"p\"\n size={2}\n html={it.desc}\n className=\"text-center desktop:text-[20px] lg-desktop:text-[18px]\"\n />\n </div>\n </SwiperSlide>\n ))}\n </Swiper>\n </div>\n <div className=\"mt-[24px] overflow-hidden rounded-[22px] laptop:mt-[32px] desktop:mt-[40px] lg-desktop:mt-[64px]\">\n <video\n className=\"mx-auto h-[360px] w-fit desktop:h-[448px] lg-desktop:h-[560px]\"\n src={isMob ? mobvideoUrl : videoUrl}\n poster={poster}\n playsInline\n autoPlay\n muted\n loop\n ref={videoRef}\n />\n </div>\n </section>\n )\n})\n\nTabsWithMedia.displayName = 'TabsWithMedia'\n\nexport default withLayout(TabsWithMedia)\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["TabsWithMedia_exports", "__export", "TabsWithMedia_default", "__toCommonJS", "import_jsx_runtime", "import_react", "import_components", "import_utils", "import_Styles", "import_useExposure", "import_modules", "import_framer_motion", "import_react_responsive", "componentType", "componentName", "defaultTimeIdx", "TabsWithMedia", "React", "data", "className", "ref", "title", "poster", "videoUrl", "mobvideoUrl", "items", "timeIdx", "swiper", "setSwiper", "tabRefs", "scrollContainerRef", "videoRef", "boxRef", "scrollToTabCenter", "index", "container", "tab", "containerRect", "scroll", "isMob", "list", "listDouble", "row", "center", "listLength", "item", "idx", "setIdx", "cureentList", "setCureentList", "handleNavClick", "key", "isAuto", "gap", "copy", "lastkey", "add", "firstkey", "time", "video", "handleTimeUpdate", "currentTime", "i", "prev", "el", "newIndex", "it", "ind"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";var d=Object.create;var r=Object.defineProperty;var f=Object.getOwnPropertyDescriptor;var i=Object.getOwnPropertyNames;var x=Object.getPrototypeOf,T=Object.prototype.hasOwnProperty;var b=(e,t)=>{for(var o in t)r(e,o,{get:t[o],enumerable:!0})},m=(e,t,o,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let p of i(t))!T.call(e,p)&&p!==o&&r(e,p,{get:()=>t[p],enumerable:!(a=f(t,p))||a.enumerable});return e};var y=(e,t,o)=>(o=e!=null?d(x(e)):{},m(t||!e||!e.__esModule?r(o,"default",{value:e,enumerable:!0}):o,e)),I=e=>m(r({},"__esModule",{value:!0}),e);var h={};b(h,{default:()=>s.default});module.exports=I(h);var s=y(require("./TabsWithMedia.js"));
|
|
2
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/biz-components/TabsWithMedia/index.ts"],
|
|
4
|
+
"sourcesContent": ["export { default } from './TabsWithMedia.js'\nexport type { TabsWithMediaProps, TabItem, TimeIndex } from './types.js'\n"],
|
|
5
|
+
"mappings": "0jBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,wCAAAE,EAAAF,GAAA,IAAAG,EAAwB",
|
|
6
|
+
"names": ["TabsWithMedia_exports", "__export", "__toCommonJS", "import_TabsWithMedia"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
export interface TabItem {
|
|
2
|
+
/** Tab 标签文本 */
|
|
3
|
+
tab: string;
|
|
4
|
+
/** 描述文本 */
|
|
5
|
+
desc: string;
|
|
6
|
+
/** Tab 图标 URL */
|
|
7
|
+
icon: string;
|
|
8
|
+
/** 视频封面图 */
|
|
9
|
+
poster?: string;
|
|
10
|
+
/** Tab 图标(可选) */
|
|
11
|
+
tabIcon?: string;
|
|
12
|
+
/** 视频 URL(可选) */
|
|
13
|
+
videoUrl?: string;
|
|
14
|
+
}
|
|
15
|
+
export interface TimeIndex {
|
|
16
|
+
/** 片段时长 */
|
|
17
|
+
time: number;
|
|
18
|
+
/** 时间节点 */
|
|
19
|
+
point: number;
|
|
20
|
+
/** 高亮索引 */
|
|
21
|
+
highlightIdx: number;
|
|
22
|
+
}
|
|
23
|
+
export interface TabsWithMediaProps {
|
|
24
|
+
data: {
|
|
25
|
+
/** 主标题 */
|
|
26
|
+
title: string;
|
|
27
|
+
/** 默认视频封面图 */
|
|
28
|
+
poster?: string;
|
|
29
|
+
/** 桌面端视频 URL */
|
|
30
|
+
videoUrl: string;
|
|
31
|
+
/** 移动端视频 URL */
|
|
32
|
+
mobvideoUrl?: string;
|
|
33
|
+
/** Tab 项列表 */
|
|
34
|
+
items: TabItem[];
|
|
35
|
+
/** 时间点配置(可选,用于视频时间自动切换) */
|
|
36
|
+
timeIdx?: TimeIndex[];
|
|
37
|
+
};
|
|
38
|
+
/** 自定义类名 */
|
|
39
|
+
className?: string;
|
|
40
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";var n=Object.defineProperty;var a=Object.getOwnPropertyDescriptor;var g=Object.getOwnPropertyNames;var o=Object.prototype.hasOwnProperty;var m=(e,t,s,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of g(t))!o.call(e,i)&&i!==s&&n(e,i,{get:()=>t[i],enumerable:!(r=a(t,i))||r.enumerable});return e};var d=e=>m(n({},"__esModule",{value:!0}),e);var b={};module.exports=d(b);
|
|
2
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/biz-components/TabsWithMedia/types.ts"],
|
|
4
|
+
"sourcesContent": ["export interface TabItem {\n /** Tab \u6807\u7B7E\u6587\u672C */\n tab: string\n /** \u63CF\u8FF0\u6587\u672C */\n desc: string\n /** Tab \u56FE\u6807 URL */\n icon: string\n /** \u89C6\u9891\u5C01\u9762\u56FE */\n poster?: string\n /** Tab \u56FE\u6807\uFF08\u53EF\u9009\uFF09 */\n tabIcon?: string\n /** \u89C6\u9891 URL\uFF08\u53EF\u9009\uFF09 */\n videoUrl?: string\n}\n\nexport interface TimeIndex {\n /** \u7247\u6BB5\u65F6\u957F */\n time: number\n /** \u65F6\u95F4\u8282\u70B9 */\n point: number\n /** \u9AD8\u4EAE\u7D22\u5F15 */\n highlightIdx: number\n}\n\nexport interface TabsWithMediaProps {\n data: {\n /** \u4E3B\u6807\u9898 */\n title: string\n /** \u9ED8\u8BA4\u89C6\u9891\u5C01\u9762\u56FE */\n poster?: string\n /** \u684C\u9762\u7AEF\u89C6\u9891 URL */\n videoUrl: string\n /** \u79FB\u52A8\u7AEF\u89C6\u9891 URL */\n mobvideoUrl?: string\n /** Tab \u9879\u5217\u8868 */\n items: TabItem[]\n /** \u65F6\u95F4\u70B9\u914D\u7F6E\uFF08\u53EF\u9009\uFF0C\u7528\u4E8E\u89C6\u9891\u65F6\u95F4\u81EA\u52A8\u5207\u6362\uFF09 */\n timeIdx?: TimeIndex[]\n }\n /** \u81EA\u5B9A\u4E49\u7C7B\u540D */\n className?: string\n}\n"],
|
|
5
|
+
"mappings": "+WAAA,IAAAA,EAAA,kBAAAC,EAAAD",
|
|
6
|
+
"names": ["types_exports", "__toCommonJS"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { VideoFeatureProps } from './types.js';
|
|
3
|
+
declare const _default: React.ForwardRefExoticComponent<Omit<Omit<VideoFeatureProps & React.RefAttributes<HTMLDivElement>, keyof import("../../shared/Styles.js").StylesProps> & Partial<import("../../shared/Styles.js").StylesProps & import("../../shared/Styles.js").ContainerProps> & {
|
|
4
|
+
className?: string;
|
|
5
|
+
data?: Record<string, any>;
|
|
6
|
+
}, "ref"> & React.RefAttributes<any>>;
|
|
7
|
+
export default _default;
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";"use client";var w=Object.create;var d=Object.defineProperty;var H=Object.getOwnPropertyDescriptor;var M=Object.getOwnPropertyNames;var E=Object.getPrototypeOf,R=Object.prototype.hasOwnProperty;var F=(e,t)=>{for(var l in t)d(e,l,{get:t[l],enumerable:!0})},x=(e,t,l,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of M(t))!R.call(e,s)&&s!==l&&d(e,s,{get:()=>t[s],enumerable:!(r=H(t,s))||r.enumerable});return e};var P=(e,t,l)=>(l=e!=null?w(E(e)):{},x(t||!e||!e.__esModule?d(l,"default",{value:e,enumerable:!0}):l,e)),S=e=>x(d({},"__esModule",{value:!0}),e);var U={};F(U,{default:()=>z});module.exports=S(U);var i=require("react/jsx-runtime"),o=P(require("react")),a=require("../../components/index.js"),v=require("../../helpers/utils.js"),b=require("../../shared/Styles.js"),h=require("../../hooks/useExposure.js"),n=require("../../hooks/useIntersectionObserver.js");const I="video",g="video_feature",f=o.default.forwardRef(({data:e,className:t},l)=>{const{title:r,subtitle:s,poster:V,videoUrl:y,mobPoster:k,mobvideoUrl:c}=e,p=(0,o.useRef)(null),m=(0,o.useRef)(null),u=(0,o.useRef)(null),[D,L]=(0,o.useState)(""),[N,T]=(0,o.useState)("");return(0,h.useExposure)(p,{componentType:I,componentName:g,componentTitle:r,componentDescription:s}),(0,o.useImperativeHandle)(l,()=>p.current),(0,n.useIntersectionObserverDelay)(m,{once:!0,threshold:.1,callback:()=>{L(y)}}),(0,n.useIntersectionObserverDelay)(u,{once:!0,threshold:.1,callback:()=>{c&&T(c)}}),(0,i.jsxs)("section",{ref:p,"data-ui-component-id":"VideoFeature",className:(0,v.cn)("flex flex-col items-center rounded-[16px] text-white",t),children:[(0,i.jsx)(a.Heading,{as:"h2",size:4,html:r,className:"w-full text-left laptop:text-center"}),(0,i.jsx)(a.Text,{as:"p",size:4,html:s,className:"mt-[4px] w-full text-left text-[14px] tablet:text-[14px] laptop:mt-[8px] laptop:text-center laptop:text-[14px] desktop:text-[16px] lg-desktop:text-[18px]"}),(0,i.jsxs)("div",{className:"mt-[24px] overflow-hidden rounded-[16px] xl:h-[360px]",children:[(0,i.jsx)("div",{ref:m,children:(0,i.jsx)("video",{playsInline:!0,autoPlay:!0,muted:!0,poster:V,src:D,loop:!0,className:"hidden h-full w-full object-cover xl:h-[360px] tablet:block"})}),(0,i.jsx)("div",{ref:u,children:(0,i.jsx)("video",{playsInline:!0,autoPlay:!0,muted:!0,poster:k,src:N,loop:!0,className:"block tablet:hidden"})})]})]})});f.displayName="VideoFeature";var z=(0,b.withLayout)(f);
|
|
2
|
+
//# sourceMappingURL=VideoFeature.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/biz-components/VideoFeature/VideoFeature.tsx"],
|
|
4
|
+
"sourcesContent": ["'use client'\nimport React, { useImperativeHandle, useRef, useState } from 'react'\nimport { Heading, Text } from '../../components/index.js'\nimport { cn } from '../../helpers/utils.js'\nimport { withLayout } from '../../shared/Styles.js'\nimport { useExposure } from '../../hooks/useExposure.js'\nimport { useIntersectionObserverDelay } from '../../hooks/useIntersectionObserver.js'\nimport type { VideoFeatureProps } from './types.js'\n\nconst componentType = 'video'\nconst componentName = 'video_feature'\n\nconst VideoFeature = React.forwardRef<HTMLDivElement, VideoFeatureProps>(({ data, className }, ref) => {\n const { title, subtitle, poster, videoUrl, mobPoster, mobvideoUrl } = data\n\n const boxRef = useRef<HTMLDivElement>(null)\n const desktopVideoRef = useRef<HTMLDivElement>(null)\n const mobileVideoRef = useRef<HTMLDivElement>(null)\n\n // \u63A7\u5236\u89C6\u9891\u662F\u5426\u52A0\u8F7D\n const [loadedDesktopVideoSrc, setLoadedDesktopVideoSrc] = useState('')\n const [loadedMobileVideoSrc, setLoadedMobileVideoSrc] = useState('')\n\n useExposure(boxRef, {\n componentType,\n componentName,\n componentTitle: title,\n componentDescription: subtitle,\n })\n\n useImperativeHandle(ref, () => boxRef.current as HTMLDivElement)\n\n // \u684C\u9762\u7AEF\u89C6\u9891\u61D2\u52A0\u8F7D\n useIntersectionObserverDelay(desktopVideoRef, {\n once: true,\n threshold: 0.1,\n callback: () => {\n setLoadedDesktopVideoSrc(videoUrl)\n },\n })\n\n // \u79FB\u52A8\u7AEF\u89C6\u9891\u61D2\u52A0\u8F7D\n useIntersectionObserverDelay(mobileVideoRef, {\n once: true,\n threshold: 0.1,\n callback: () => {\n if (mobvideoUrl) {\n setLoadedMobileVideoSrc(mobvideoUrl)\n }\n },\n })\n\n return (\n <section\n ref={boxRef}\n data-ui-component-id=\"VideoFeature\"\n className={cn('flex flex-col items-center rounded-[16px] text-white', className)}\n >\n <Heading as={'h2'} size={4} html={title} className=\"w-full text-left laptop:text-center\" />\n <Text\n as={'p'}\n size={4}\n html={subtitle}\n className=\"mt-[4px] w-full text-left text-[14px] tablet:text-[14px] laptop:mt-[8px] laptop:text-center laptop:text-[14px] desktop:text-[16px] lg-desktop:text-[18px]\"\n />\n <div className=\"mt-[24px] overflow-hidden rounded-[16px] xl:h-[360px]\">\n <div ref={desktopVideoRef}>\n <video\n playsInline\n autoPlay\n muted\n poster={poster}\n src={loadedDesktopVideoSrc}\n loop\n className=\"hidden h-full w-full object-cover xl:h-[360px] tablet:block\"\n ></video>\n </div>\n <div ref={mobileVideoRef}>\n <video\n playsInline\n autoPlay\n muted\n poster={mobPoster}\n src={loadedMobileVideoSrc}\n loop\n className=\"block tablet:hidden\"\n ></video>\n </div>\n </div>\n </section>\n )\n})\n\nVideoFeature.displayName = 'VideoFeature'\n\nexport default withLayout(VideoFeature)\n"],
|
|
5
|
+
"mappings": "ukBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,aAAAE,IAAA,eAAAC,EAAAH,GA0DM,IAAAI,EAAA,6BAzDNC,EAA6D,oBAC7DC,EAA8B,qCAC9BC,EAAmB,kCACnBC,EAA2B,kCAC3BC,EAA4B,sCAC5BC,EAA6C,kDAG7C,MAAMC,EAAgB,QAChBC,EAAgB,gBAEhBC,EAAe,EAAAC,QAAM,WAA8C,CAAC,CAAE,KAAAC,EAAM,UAAAC,CAAU,EAAGC,IAAQ,CACrG,KAAM,CAAE,MAAAC,EAAO,SAAAC,EAAU,OAAAC,EAAQ,SAAAC,EAAU,UAAAC,EAAW,YAAAC,CAAY,EAAIR,EAEhES,KAAS,UAAuB,IAAI,EACpCC,KAAkB,UAAuB,IAAI,EAC7CC,KAAiB,UAAuB,IAAI,EAG5C,CAACC,EAAuBC,CAAwB,KAAI,YAAS,EAAE,EAC/D,CAACC,EAAsBC,CAAuB,KAAI,YAAS,EAAE,EAEnE,wBAAYN,EAAQ,CAClB,cAAAb,EACA,cAAAC,EACA,eAAgBM,EAChB,qBAAsBC,CACxB,CAAC,KAED,uBAAoBF,EAAK,IAAMO,EAAO,OAAyB,KAG/D,gCAA6BC,EAAiB,CAC5C,KAAM,GACN,UAAW,GACX,SAAU,IAAM,CACdG,EAAyBP,CAAQ,CACnC,CACF,CAAC,KAGD,gCAA6BK,EAAgB,CAC3C,KAAM,GACN,UAAW,GACX,SAAU,IAAM,CACVH,GACFO,EAAwBP,CAAW,CAEvC,CACF,CAAC,KAGC,QAAC,WACC,IAAKC,EACL,uBAAqB,eACrB,aAAW,MAAG,uDAAwDR,CAAS,EAE/E,oBAAC,WAAQ,GAAI,KAAM,KAAM,EAAG,KAAME,EAAO,UAAU,sCAAsC,KACzF,OAAC,QACC,GAAI,IACJ,KAAM,EACN,KAAMC,EACN,UAAU,4JACZ,KACA,QAAC,OAAI,UAAU,wDACb,oBAAC,OAAI,IAAKM,EACR,mBAAC,SACC,YAAW,GACX,SAAQ,GACR,MAAK,GACL,OAAQL,EACR,IAAKO,EACL,KAAI,GACJ,UAAU,8DACX,EACH,KACA,OAAC,OAAI,IAAKD,EACR,mBAAC,SACC,YAAW,GACX,SAAQ,GACR,MAAK,GACL,OAAQJ,EACR,IAAKO,EACL,KAAI,GACJ,UAAU,sBACX,EACH,GACF,GACF,CAEJ,CAAC,EAEDhB,EAAa,YAAc,eAE3B,IAAOX,KAAQ,cAAWW,CAAY",
|
|
6
|
+
"names": ["VideoFeature_exports", "__export", "VideoFeature_default", "__toCommonJS", "import_jsx_runtime", "import_react", "import_components", "import_utils", "import_Styles", "import_useExposure", "import_useIntersectionObserver", "componentType", "componentName", "VideoFeature", "React", "data", "className", "ref", "title", "subtitle", "poster", "videoUrl", "mobPoster", "mobvideoUrl", "boxRef", "desktopVideoRef", "mobileVideoRef", "loadedDesktopVideoSrc", "setLoadedDesktopVideoSrc", "loadedMobileVideoSrc", "setLoadedMobileVideoSrc"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";var d=Object.create;var p=Object.defineProperty;var m=Object.getOwnPropertyDescriptor;var u=Object.getOwnPropertyNames;var x=Object.getPrototypeOf,y=Object.prototype.hasOwnProperty;var i=(e,o)=>{for(var r in o)p(e,r,{get:o[r],enumerable:!0})},s=(e,o,r,f)=>{if(o&&typeof o=="object"||typeof o=="function")for(let t of u(o))!y.call(e,t)&&t!==r&&p(e,t,{get:()=>o[t],enumerable:!(f=m(o,t))||f.enumerable});return e};var j=(e,o,r)=>(r=e!=null?d(x(e)):{},s(o||!e||!e.__esModule?p(r,"default",{value:e,enumerable:!0}):r,e)),l=e=>s(p({},"__esModule",{value:!0}),e);var F={};i(F,{default:()=>a.default});module.exports=l(F);var a=j(require("./VideoFeature.js"));
|
|
2
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/biz-components/VideoFeature/index.ts"],
|
|
4
|
+
"sourcesContent": ["export { default } from './VideoFeature.js'\nexport type { VideoFeatureProps } from './types.js'\n"],
|
|
5
|
+
"mappings": "0jBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,wCAAAE,EAAAF,GAAA,IAAAG,EAAwB",
|
|
6
|
+
"names": ["VideoFeature_exports", "__export", "__toCommonJS", "import_VideoFeature"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export interface VideoFeatureProps {
|
|
2
|
+
data: {
|
|
3
|
+
/** 主标题 */
|
|
4
|
+
title: string;
|
|
5
|
+
/** 副标题/描述 */
|
|
6
|
+
subtitle?: string;
|
|
7
|
+
/** 桌面端视频 URL */
|
|
8
|
+
videoUrl: string;
|
|
9
|
+
/** 桌面端视频封面图 */
|
|
10
|
+
poster?: string;
|
|
11
|
+
/** 移动端视频 URL */
|
|
12
|
+
mobvideoUrl?: string;
|
|
13
|
+
/** 移动端视频封面图 */
|
|
14
|
+
mobPoster?: string;
|
|
15
|
+
};
|
|
16
|
+
/** 自定义类名 */
|
|
17
|
+
className?: string;
|
|
18
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";var s=Object.defineProperty;var n=Object.getOwnPropertyDescriptor;var g=Object.getOwnPropertyNames;var a=Object.prototype.hasOwnProperty;var l=(r,t,o,i)=>{if(t&&typeof t=="object"||typeof t=="function")for(let e of g(t))!a.call(r,e)&&e!==o&&s(r,e,{get:()=>t[e],enumerable:!(i=n(t,e))||i.enumerable});return r};var d=r=>l(s({},"__esModule",{value:!0}),r);var b={};module.exports=d(b);
|
|
2
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/biz-components/VideoFeature/types.ts"],
|
|
4
|
+
"sourcesContent": ["export interface VideoFeatureProps {\n data: {\n /** \u4E3B\u6807\u9898 */\n title: string\n /** \u526F\u6807\u9898/\u63CF\u8FF0 */\n subtitle?: string\n /** \u684C\u9762\u7AEF\u89C6\u9891 URL */\n videoUrl: string\n /** \u684C\u9762\u7AEF\u89C6\u9891\u5C01\u9762\u56FE */\n poster?: string\n /** \u79FB\u52A8\u7AEF\u89C6\u9891 URL */\n mobvideoUrl?: string\n /** \u79FB\u52A8\u7AEF\u89C6\u9891\u5C01\u9762\u56FE */\n mobPoster?: string\n }\n /** \u81EA\u5B9A\u4E49\u7C7B\u540D */\n className?: string\n}\n"],
|
|
5
|
+
"mappings": "+WAAA,IAAAA,EAAA,kBAAAC,EAAAD",
|
|
6
|
+
"names": ["types_exports", "__toCommonJS"]
|
|
7
|
+
}
|
|
@@ -13,6 +13,8 @@ export { default as MediaPlayerBase } from './MediaPlayerBase/index.js';
|
|
|
13
13
|
export { default as MediaPlayerSticky } from './MediaPlayerSticky/index.js';
|
|
14
14
|
export { default as MediaPlayerMulti } from './MediaPlayerMulti/index.js';
|
|
15
15
|
export { default as Marquee } from './Marquee/index.js';
|
|
16
|
+
export { default as MarqueeReview } from './MarqueeReview/index.js';
|
|
17
|
+
export type { MarqueeReviewProps, MarqueeReviewData, ReviewItem } from './MarqueeReview/index.js';
|
|
16
18
|
export { default as WhyChoose } from './WhyChoose/index.js';
|
|
17
19
|
export { default as Faq } from './Faq/index.js';
|
|
18
20
|
export { MarqueeItem, MarqueeImageContent, MarqueeTextContent } from './Marquee/index.js';
|
|
@@ -32,3 +34,60 @@ export { default as CreativeModule } from './CreativeModule/index.js';
|
|
|
32
34
|
export { default as GraphicOverlay } from './GraphicOverlay/index.js';
|
|
33
35
|
export { default as Specs } from './Specs/index.js';
|
|
34
36
|
export { default as TabGroup } from './TabsGroup/index.js';
|
|
37
|
+
export { default as ProductCompare } from './ProductCompare/index.js';
|
|
38
|
+
export type { ProductCompareProps, ProductItemData } from './ProductCompare/index.js';
|
|
39
|
+
export { default as Ksp } from './Ksp/index.js';
|
|
40
|
+
export type { KspProps, KspData, KspCardItem } from './Ksp/index.js';
|
|
41
|
+
export { default as ImageTextFeature } from './ImageTextFeature/index.js';
|
|
42
|
+
export type { ImageTextFeatureProps, ImageTextFeatureItem } from './ImageTextFeature/index.js';
|
|
43
|
+
export { default as FeatureCards } from './FeatureCards/index.js';
|
|
44
|
+
export type { FeatureCardsProps, FeatureCardItem } from './FeatureCards/index.js';
|
|
45
|
+
export { default as ImageWithText } from './ImageWithText/index.js';
|
|
46
|
+
export type { ImageWithTextProps } from './ImageWithText/index.js';
|
|
47
|
+
export { default as VideoFeature } from './VideoFeature/index.js';
|
|
48
|
+
export type { VideoFeatureProps } from './VideoFeature/index.js';
|
|
49
|
+
export { default as TabsWithMedia } from './TabsWithMedia/index.js';
|
|
50
|
+
export type { TabsWithMediaProps, TabItem, TimeIndex } from './TabsWithMedia/index.js';
|
|
51
|
+
export { default as TabWithImage } from './TabWithImage/index.js';
|
|
52
|
+
export type { TabWithImageProps, TabWithImageDataItem } from './TabWithImage/index.js';
|
|
53
|
+
export { default as FeatureShowcase } from './FeatureShowcase/index.js';
|
|
54
|
+
export type { FeatureShowcaseProps, FeatureShowcaseItem } from './FeatureShowcase/index.js';
|
|
55
|
+
export { default as ProductHero } from './ProductHero/index.js';
|
|
56
|
+
export type { ProductHeroProps } from './ProductHero/index.js';
|
|
57
|
+
export { default as SpecsComparison } from './SpecsComparison/index.js';
|
|
58
|
+
export type { SpecsComparisonProps, SpecsComparisonMenuItem, SpecsComparisonLeftMenuItem, } from './SpecsComparison/index.js';
|
|
59
|
+
export declare const PAYLOAD_COMPONENT_MAP: {
|
|
60
|
+
'ipc-aplusdesc': string;
|
|
61
|
+
'ipc-banner': string;
|
|
62
|
+
'ipc-brand-equity': string;
|
|
63
|
+
'ipc-category': string;
|
|
64
|
+
'ipc-collection-banner': string;
|
|
65
|
+
'ipc-collection-shelves': string;
|
|
66
|
+
'ipc-creativemodule': string;
|
|
67
|
+
'ipc-download': string;
|
|
68
|
+
'ipc-evaluate': string;
|
|
69
|
+
'ipc-faq': string;
|
|
70
|
+
'ipc-features': string;
|
|
71
|
+
'ipc-footcharger': string;
|
|
72
|
+
'ipc-ga-block': string;
|
|
73
|
+
'ipc-giftbox': string;
|
|
74
|
+
'ipc-graphic': string;
|
|
75
|
+
'ipc-graphicmore': string;
|
|
76
|
+
'ipc-graphicoverlay': string;
|
|
77
|
+
'ipc-marquee': string;
|
|
78
|
+
'ipc-mediaplayerbase': string;
|
|
79
|
+
'ipc-mediaplayermulti': string;
|
|
80
|
+
'ipc-mediaplayersticky': string;
|
|
81
|
+
'ipc-member-equity': string;
|
|
82
|
+
'ipc-mlg-block': string;
|
|
83
|
+
'ipc-search-page-tabs': string;
|
|
84
|
+
'ipc-selectstore': string;
|
|
85
|
+
'ipc-shelfdisplay': string;
|
|
86
|
+
'ipc-slogan': string;
|
|
87
|
+
'ipc-spacer': string;
|
|
88
|
+
'ipc-specs': string;
|
|
89
|
+
'ipc-tabs': string;
|
|
90
|
+
'ipc-text-marquee': string;
|
|
91
|
+
'ipc-title': string;
|
|
92
|
+
'ipc-whychoose': string;
|
|
93
|
+
};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var
|
|
1
|
+
"use strict";var X=Object.create;var i=Object.defineProperty;var Z=Object.getOwnPropertyDescriptor;var $=Object.getOwnPropertyNames;var ee=Object.getPrototypeOf,ae=Object.prototype.hasOwnProperty;var re=(a,r)=>{for(var t in r)i(a,t,{get:r[t],enumerable:!0})},f=(a,r,t,c)=>{if(r&&typeof r=="object"||typeof r=="function")for(let p of $(r))!ae.call(a,p)&&p!==t&&i(a,p,{get:()=>r[p],enumerable:!(c=Z(r,p))||c.enumerable});return a};var e=(a,r,t)=>(t=a!=null?X(ee(a)):{},f(r||!a||!a.__esModule?i(t,"default",{value:a,enumerable:!0}):t,a)),te=a=>f(i({},"__esModule",{value:!0}),a);var pe={};re(pe,{AccordionCards:()=>g.default,AiuiProvider:()=>A.default,BrandEquity:()=>u.default,Category:()=>h.default,CreativeModule:()=>D.default,Evaluate:()=>y.default,Faq:()=>F.default,FeatureCards:()=>N.default,FeatureShowcase:()=>J.default,FooterNavigation:()=>j.default,Graphic:()=>M.default,GraphicAttractionBlock:()=>B.default,GraphicOverlay:()=>E.default,HeaderNavigation:()=>G.default,HeroBanner:()=>P.default,IPC_SEARCH_PAGE:()=>s.IPC_SEARCH_PAGE,ImageTextFeature:()=>O.default,ImageWithText:()=>_.default,Ksp:()=>K.default,Marquee:()=>I.default,MarqueeImageContent:()=>o.MarqueeImageContent,MarqueeItem:()=>o.MarqueeItem,MarqueeReview:()=>b.default,MarqueeTextContent:()=>o.MarqueeTextContent,MediaPlayerBase:()=>C.default,MediaPlayerMulti:()=>T.default,MediaPlayerSticky:()=>S.default,MemberEquity:()=>l.default,MultiLayoutGraphicBlock:()=>v.default,PAYLOAD_COMPONENT_MAP:()=>oe,ProductCompare:()=>R.default,ProductHero:()=>Q.default,SearchPage:()=>k.default,SearchPageTabType:()=>s.SearchPageTabType,ShelfDisplay:()=>n.default,Slogan:()=>m.default,Spacer:()=>x.default,Specs:()=>L.default,SpecsComparison:()=>U.default,TabGroup:()=>H.default,TabWithImage:()=>z.default,Tabs:()=>W.default,TabsWithMedia:()=>Y.default,Title:()=>d.default,VideoFeature:()=>V.default,WhyChoose:()=>q.default,withLayout:()=>w.withLayout});module.exports=te(pe);var u=e(require("./BrandEquity/index.js")),l=e(require("./MemberEquity/index.js")),m=e(require("./Slogan/index.js")),d=e(require("./Title/index.js")),x=e(require("./Spacer/index.js")),n=e(require("./ShelfDisplay/index.js")),y=e(require("./Evaluate/index.js")),h=e(require("./Category/index.js")),P=e(require("./HeroBanner/index.js")),g=e(require("./AccordionCards/index.js")),M=e(require("./Graphic/index.js")),C=e(require("./MediaPlayerBase/index.js")),S=e(require("./MediaPlayerSticky/index.js")),T=e(require("./MediaPlayerMulti/index.js")),I=e(require("./Marquee/index.js")),b=e(require("./MarqueeReview/index.js")),q=e(require("./WhyChoose/index.js")),F=e(require("./Faq/index.js")),o=require("./Marquee/index.js"),v=e(require("./MultiLayoutGraphicBlock/index.js")),B=e(require("./GraphicAttractionBlock/index.js")),G=e(require("./HeaderNavigation/index.js")),j=e(require("./FooterNavigation/index.js")),k=e(require("./SearchPage/index.js")),s=require("./SearchPage/types.js"),w=require("../shared/Styles.js"),A=e(require("./AiuiProvider/index.js")),W=e(require("./Tabs/index.js")),D=e(require("./CreativeModule/index.js")),E=e(require("./GraphicOverlay/index.js")),L=e(require("./Specs/index.js")),H=e(require("./TabsGroup/index.js")),R=e(require("./ProductCompare/index.js")),K=e(require("./Ksp/index.js")),O=e(require("./ImageTextFeature/index.js")),N=e(require("./FeatureCards/index.js")),_=e(require("./ImageWithText/index.js")),V=e(require("./VideoFeature/index.js")),Y=e(require("./TabsWithMedia/index.js")),z=e(require("./TabWithImage/index.js")),J=e(require("./FeatureShowcase/index.js")),Q=e(require("./ProductHero/index.js")),U=e(require("./SpecsComparison/index.js"));const oe={"ipc-aplusdesc":"AplusDesc","ipc-banner":"Banner","ipc-brand-equity":"BrandEquity","ipc-category":"Category","ipc-collection-banner":"CollectionBanner","ipc-collection-shelves":"CollectionShelves","ipc-creativemodule":"CreativeModule","ipc-download":"DownLoad","ipc-evaluate":"Evaluate","ipc-faq":"Faq","ipc-features":"Features","ipc-footcharger":"FootCharger","ipc-ga-block":"GraphicAttractionBlock","ipc-giftbox":"GiftBox","ipc-graphic":"Graphic","ipc-graphicmore":"GraphicMore","ipc-graphicoverlay":"GraphicOverlay","ipc-marquee":"Marquee","ipc-mediaplayerbase":"MediaPlayerBase","ipc-mediaplayermulti":"MediaPlayerMulti","ipc-mediaplayersticky":"MediaPlayerSticky","ipc-member-equity":"MemberEquity","ipc-mlg-block":"MultiLayoutGraphicBlock","ipc-search-page-tabs":"SearchPageBlock","ipc-selectstore":"SelectStore","ipc-shelfdisplay":"ShelfDisplay","ipc-slogan":"Slogan","ipc-spacer":"Spacer","ipc-specs":"Specs","ipc-tabs":"Tabs","ipc-text-marquee":"TextMarquee","ipc-title":"Title","ipc-whychoose":"WhyChoose"};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/biz-components/index.ts"],
|
|
4
|
-
"sourcesContent": ["export { default as BrandEquity } from './BrandEquity/index.js'\nexport { default as MemberEquity } from './MemberEquity/index.js'\nexport { default as Slogan } from './Slogan/index.js'\nexport { default as Title } from './Title/index.js'\nexport { default as Spacer } from './Spacer/index.js'\nexport { default as ShelfDisplay } from './ShelfDisplay/index.js'\nexport { default as Evaluate } from './Evaluate/index.js'\nexport { default as Category } from './Category/index.js'\nexport { default as HeroBanner } from './HeroBanner/index.js'\nexport { default as AccordionCards } from './AccordionCards/index.js'\nexport { default as Graphic } from './Graphic/index.js'\nexport { default as MediaPlayerBase } from './MediaPlayerBase/index.js'\nexport { default as MediaPlayerSticky } from './MediaPlayerSticky/index.js'\nexport { default as MediaPlayerMulti } from './MediaPlayerMulti/index.js'\nexport { default as Marquee } from './Marquee/index.js'\nexport { default as WhyChoose } from './WhyChoose/index.js'\nexport { default as Faq } from './Faq/index.js'\nexport { MarqueeItem, MarqueeImageContent, MarqueeTextContent } from './Marquee/index.js'\nexport { default as MultiLayoutGraphicBlock } from './MultiLayoutGraphicBlock/index.js'\nexport type { MultiLayoutGraphicBlockProps } from './MultiLayoutGraphicBlock/index.js'\nexport { default as GraphicAttractionBlock } from './GraphicAttractionBlock/index.js'\nexport type { GraphicAttractionBlockProps } from './GraphicAttractionBlock/index.js'\nexport { default as HeaderNavigation } from './HeaderNavigation/index.js'\nexport { default as FooterNavigation } from './FooterNavigation/index.js'\nexport { default as SearchPage } from './SearchPage/index.js'\nexport type { SearchPageProps } from './SearchPage/types.js'\nexport { IPC_SEARCH_PAGE, SearchPageTabType } from './SearchPage/types.js'\n\nexport { withLayout } from '../shared/Styles.js'\nexport { default as AiuiProvider } from './AiuiProvider/index.js'\nexport { default as Tabs } from './Tabs/index.js'\nexport { default as CreativeModule } from './CreativeModule/index.js'\nexport { default as GraphicOverlay } from './GraphicOverlay/index.js'\nexport { default as Specs } from './Specs/index.js'\nexport { default as TabGroup } from './TabsGroup/index.js'"],
|
|
5
|
-
"mappings": "
|
|
6
|
-
"names": ["biz_components_exports", "__export", "__toCommonJS", "import_BrandEquity", "import_MemberEquity", "import_Slogan", "import_Title", "import_Spacer", "import_ShelfDisplay", "import_Evaluate", "import_Category", "import_HeroBanner", "import_AccordionCards", "import_Graphic", "import_MediaPlayerBase", "import_MediaPlayerSticky", "import_MediaPlayerMulti", "import_Marquee", "import_WhyChoose", "import_Faq", "import_MultiLayoutGraphicBlock", "import_GraphicAttractionBlock", "import_HeaderNavigation", "import_FooterNavigation", "import_SearchPage", "import_types", "import_Styles", "import_AiuiProvider", "import_Tabs", "import_CreativeModule", "import_GraphicOverlay", "import_Specs", "import_TabsGroup"]
|
|
4
|
+
"sourcesContent": ["export { default as BrandEquity } from './BrandEquity/index.js'\nexport { default as MemberEquity } from './MemberEquity/index.js'\nexport { default as Slogan } from './Slogan/index.js'\nexport { default as Title } from './Title/index.js'\nexport { default as Spacer } from './Spacer/index.js'\nexport { default as ShelfDisplay } from './ShelfDisplay/index.js'\nexport { default as Evaluate } from './Evaluate/index.js'\nexport { default as Category } from './Category/index.js'\nexport { default as HeroBanner } from './HeroBanner/index.js'\nexport { default as AccordionCards } from './AccordionCards/index.js'\nexport { default as Graphic } from './Graphic/index.js'\nexport { default as MediaPlayerBase } from './MediaPlayerBase/index.js'\nexport { default as MediaPlayerSticky } from './MediaPlayerSticky/index.js'\nexport { default as MediaPlayerMulti } from './MediaPlayerMulti/index.js'\nexport { default as Marquee } from './Marquee/index.js'\nexport { default as MarqueeReview } from './MarqueeReview/index.js'\nexport type { MarqueeReviewProps, MarqueeReviewData, ReviewItem } from './MarqueeReview/index.js'\nexport { default as WhyChoose } from './WhyChoose/index.js'\nexport { default as Faq } from './Faq/index.js'\nexport { MarqueeItem, MarqueeImageContent, MarqueeTextContent } from './Marquee/index.js'\nexport { default as MultiLayoutGraphicBlock } from './MultiLayoutGraphicBlock/index.js'\nexport type { MultiLayoutGraphicBlockProps } from './MultiLayoutGraphicBlock/index.js'\nexport { default as GraphicAttractionBlock } from './GraphicAttractionBlock/index.js'\nexport type { GraphicAttractionBlockProps } from './GraphicAttractionBlock/index.js'\nexport { default as HeaderNavigation } from './HeaderNavigation/index.js'\nexport { default as FooterNavigation } from './FooterNavigation/index.js'\nexport { default as SearchPage } from './SearchPage/index.js'\nexport type { SearchPageProps } from './SearchPage/types.js'\nexport { IPC_SEARCH_PAGE, SearchPageTabType } from './SearchPage/types.js'\n\nexport { withLayout } from '../shared/Styles.js'\nexport { default as AiuiProvider } from './AiuiProvider/index.js'\nexport { default as Tabs } from './Tabs/index.js'\nexport { default as CreativeModule } from './CreativeModule/index.js'\nexport { default as GraphicOverlay } from './GraphicOverlay/index.js'\nexport { default as Specs } from './Specs/index.js'\nexport { default as TabGroup } from './TabsGroup/index.js'\nexport { default as ProductCompare } from './ProductCompare/index.js'\nexport type { ProductCompareProps, ProductItemData } from './ProductCompare/index.js'\nexport { default as Ksp } from './Ksp/index.js'\nexport type { KspProps, KspData, KspCardItem } from './Ksp/index.js'\nexport { default as ImageTextFeature } from './ImageTextFeature/index.js'\nexport type { ImageTextFeatureProps, ImageTextFeatureItem } from './ImageTextFeature/index.js'\nexport { default as FeatureCards } from './FeatureCards/index.js'\nexport type { FeatureCardsProps, FeatureCardItem } from './FeatureCards/index.js'\nexport { default as ImageWithText } from './ImageWithText/index.js'\nexport type { ImageWithTextProps } from './ImageWithText/index.js'\nexport { default as VideoFeature } from './VideoFeature/index.js'\nexport type { VideoFeatureProps } from './VideoFeature/index.js'\nexport { default as TabsWithMedia } from './TabsWithMedia/index.js'\nexport type { TabsWithMediaProps, TabItem, TimeIndex } from './TabsWithMedia/index.js'\nexport { default as TabWithImage } from './TabWithImage/index.js'\nexport type { TabWithImageProps, TabWithImageDataItem } from './TabWithImage/index.js'\nexport { default as FeatureShowcase } from './FeatureShowcase/index.js'\nexport type { FeatureShowcaseProps, FeatureShowcaseItem } from './FeatureShowcase/index.js'\nexport { default as ProductHero } from './ProductHero/index.js'\nexport type { ProductHeroProps } from './ProductHero/index.js'\nexport { default as SpecsComparison } from './SpecsComparison/index.js'\nexport type {\n SpecsComparisonProps,\n SpecsComparisonMenuItem,\n SpecsComparisonLeftMenuItem,\n} from './SpecsComparison/index.js'\n\nexport const PAYLOAD_COMPONENT_MAP = {\n 'ipc-aplusdesc': 'AplusDesc',\n 'ipc-banner': 'Banner',\n 'ipc-brand-equity': 'BrandEquity',\n 'ipc-category': 'Category',\n 'ipc-collection-banner': 'CollectionBanner',\n 'ipc-collection-shelves': 'CollectionShelves',\n 'ipc-creativemodule': 'CreativeModule',\n 'ipc-download': 'DownLoad',\n 'ipc-evaluate': 'Evaluate',\n 'ipc-faq': 'Faq',\n 'ipc-features': 'Features',\n 'ipc-footcharger': 'FootCharger',\n 'ipc-ga-block': 'GraphicAttractionBlock',\n 'ipc-giftbox': 'GiftBox',\n 'ipc-graphic': 'Graphic',\n 'ipc-graphicmore': 'GraphicMore',\n 'ipc-graphicoverlay': 'GraphicOverlay',\n 'ipc-marquee': 'Marquee',\n 'ipc-mediaplayerbase': 'MediaPlayerBase',\n 'ipc-mediaplayermulti': 'MediaPlayerMulti',\n 'ipc-mediaplayersticky': 'MediaPlayerSticky',\n 'ipc-member-equity': 'MemberEquity',\n 'ipc-mlg-block': 'MultiLayoutGraphicBlock',\n 'ipc-search-page-tabs': 'SearchPageBlock',\n 'ipc-selectstore': 'SelectStore',\n 'ipc-shelfdisplay': 'ShelfDisplay',\n 'ipc-slogan': 'Slogan',\n 'ipc-spacer': 'Spacer',\n 'ipc-specs': 'Specs',\n 'ipc-tabs': 'Tabs',\n 'ipc-text-marquee': 'TextMarquee',\n 'ipc-title': 'Title',\n 'ipc-whychoose': 'WhyChoose',\n}\n"],
|
|
5
|
+
"mappings": "gkBAAA,IAAAA,GAAA,GAAAC,GAAAD,GAAA,62BAAAE,GAAA,scAAAC,GAAAH,IAAA,IAAAI,EAAuC,qCACvCC,EAAwC,sCACxCC,EAAkC,gCAClCC,EAAiC,+BACjCC,EAAkC,gCAClCC,EAAwC,sCACxCC,EAAoC,kCACpCC,EAAoC,kCACpCC,EAAsC,oCACtCC,EAA0C,wCAC1CC,EAAmC,iCACnCC,EAA2C,yCAC3CC,EAA6C,2CAC7CC,EAA4C,0CAC5CC,EAAmC,iCACnCC,EAAyC,uCAEzCC,EAAqC,mCACrCC,EAA+B,6BAC/BH,EAAqE,8BACrEI,EAAmD,iDAEnDC,EAAkD,gDAElDC,EAA4C,0CAC5CC,EAA4C,0CAC5CC,EAAsC,oCAEtCC,EAAmD,iCAEnDC,EAA2B,+BAC3BC,EAAwC,sCACxCC,EAAgC,8BAChCC,EAA0C,wCAC1CC,EAA0C,wCAC1CC,EAAiC,+BACjCC,EAAoC,mCACpCC,EAA0C,wCAE1CC,EAA+B,6BAE/BC,EAA4C,0CAE5CC,EAAwC,sCAExCC,EAAyC,uCAEzCC,EAAwC,sCAExCC,EAAyC,uCAEzCC,EAAwC,sCAExCC,EAA2C,yCAE3CC,EAAuC,qCAEvCC,EAA2C,yCAOpC,MAAM3C,GAAwB,CACnC,gBAAiB,YACjB,aAAc,SACd,mBAAoB,cACpB,eAAgB,WAChB,wBAAyB,mBACzB,yBAA0B,oBAC1B,qBAAsB,iBACtB,eAAgB,WAChB,eAAgB,WAChB,UAAW,MACX,eAAgB,WAChB,kBAAmB,cACnB,eAAgB,yBAChB,cAAe,UACf,cAAe,UACf,kBAAmB,cACnB,qBAAsB,iBACtB,cAAe,UACf,sBAAuB,kBACvB,uBAAwB,mBACxB,wBAAyB,oBACzB,oBAAqB,eACrB,gBAAiB,0BACjB,uBAAwB,kBACxB,kBAAmB,cACnB,mBAAoB,eACpB,aAAc,SACd,aAAc,SACd,YAAa,QACb,WAAY,OACZ,mBAAoB,cACpB,YAAa,QACb,gBAAiB,WACnB",
|
|
6
|
+
"names": ["biz_components_exports", "__export", "PAYLOAD_COMPONENT_MAP", "__toCommonJS", "import_BrandEquity", "import_MemberEquity", "import_Slogan", "import_Title", "import_Spacer", "import_ShelfDisplay", "import_Evaluate", "import_Category", "import_HeroBanner", "import_AccordionCards", "import_Graphic", "import_MediaPlayerBase", "import_MediaPlayerSticky", "import_MediaPlayerMulti", "import_Marquee", "import_MarqueeReview", "import_WhyChoose", "import_Faq", "import_MultiLayoutGraphicBlock", "import_GraphicAttractionBlock", "import_HeaderNavigation", "import_FooterNavigation", "import_SearchPage", "import_types", "import_Styles", "import_AiuiProvider", "import_Tabs", "import_CreativeModule", "import_GraphicOverlay", "import_Specs", "import_TabsGroup", "import_ProductCompare", "import_Ksp", "import_ImageTextFeature", "import_FeatureCards", "import_ImageWithText", "import_VideoFeature", "import_TabsWithMedia", "import_TabWithImage", "import_FeatureShowcase", "import_ProductHero", "import_SpecsComparison"]
|
|
7
7
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var
|
|
1
|
+
"use strict";var m=Object.defineProperty;var y=Object.getOwnPropertyDescriptor;var E=Object.getOwnPropertyNames;var N=Object.prototype.hasOwnProperty;var I=(o,e)=>{for(var n in e)m(o,n,{get:e[n],enumerable:!0})},H=(o,e,n,c)=>{if(e&&typeof e=="object"||typeof e=="function")for(let a of E(e))!N.call(o,a)&&a!==n&&m(o,a,{get:()=>e[a],enumerable:!(c=y(e,a))||c.enumerable});return o};var R=o=>H(m({},"__esModule",{value:!0}),o);var S={};I(S,{default:()=>L});module.exports=R(S);var f=require("react/jsx-runtime"),i=require("react"),v=require("../../helpers/utils.js"),g=require("es-toolkit");const k=o=>{const{lists:e,styles:n,cns:c,offset:a=0,clickHandler:u}=o,[x,d]=(0,i.useState)(0),h=(0,i.useRef)(null),C=t=>{t.scrollIntoView({behavior:"smooth",inline:"center"})},w=(t,l,r)=>{d(l);const s=r.target;C(s),t.anchor&&document.querySelector(`#${t.anchor}`)?.scrollIntoView({behavior:"smooth"}),r.preventDefault(),u&&u(t,l,r)};return(0,i.useEffect)(()=>{const t=(0,g.debounce)(()=>{const r=[];e?.forEach(p=>{const b=document.querySelector(`#${p.anchor}`);b&&r.push(b.getBoundingClientRect().top)});const s=r.findIndex(p=>p>l+a);d(s===-1?r.length-1:s===0?0:s-1)},100),l=h.current?.getBoundingClientRect().height||0;return window.addEventListener("scroll",t),()=>{window.removeEventListener("scroll",t)}},[e,a]),(0,f.jsx)("div",{id:"nav",className:(0,v.cn)("cpn-nav-container sticky top-0 z-10 w-full bg-[var(--bgColor)]",c?.container),style:{"--bgColor":n?.bgColor||"#C6F1FF","--color":n?.color||"#333","--activeColor":n?.activeColor||"#000"},children:(0,f.jsx)("div",{className:(0,v.cn)("cpn-nav-box relative flex items-center justify-start gap-[18px] overflow-scroll px-6 text-center [&::-webkit-scrollbar]:hidden","tablet:gap-[80px] tablet:justify-center",c?.box),ref:h,children:e?.map((t,l)=>(0,f.jsx)("a",{href:`#${t.anchor}`,className:(0,v.cn)("cpn-nav-item relative cursor-pointer whitespace-nowrap py-[14px] text-[16px] font-medium leading-[1.2] text-[var(--color)] transition-all duration-200",c?.item,{[`border-[var(--activeColor)] text-[var(--activeColor)] after:absolute after:bottom-0 after:left-0 after:h-[2px] after:w-full after:bg-[var(--activeColor)] after:transition-all after:duration-200 after:content-[""] ${c?.activeItem}`]:x===l}),onClick:r=>w(t,l,r),children:t.label},t.label))})})};var L=k;
|
|
2
2
|
//# sourceMappingURL=index.js.map
|