pb-sxp-ui 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +111 -0
- package/dist/index.cjs +10752 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.css +1782 -0
- package/dist/index.js +10721 -0
- package/dist/index.js.map +1 -0
- package/dist/index.min.cjs +9 -0
- package/dist/index.min.cjs.map +1 -0
- package/dist/index.min.js +9 -0
- package/dist/index.min.js.map +1 -0
- package/dist/pb-ui.js +10748 -0
- package/dist/pb-ui.js.map +1 -0
- package/dist/pb-ui.min.js +9 -0
- package/dist/pb-ui.min.js.map +1 -0
- package/es/core/Pagebuilder/PagebuilderClass.d.ts +15 -0
- package/es/core/Pagebuilder/PagebuilderClass.js +42 -0
- package/es/core/Pagebuilder/index.d.ts +3 -0
- package/es/core/Pagebuilder/index.js +96 -0
- package/es/core/Pagebuilder/type.d.ts +55 -0
- package/es/core/Pagebuilder/type.js +1 -0
- package/es/core/components/SxpPageCore/index.d.ts +11 -0
- package/es/core/components/SxpPageCore/index.js +26 -0
- package/es/core/components/SxpPageRender/ExpandableText.d.ts +12 -0
- package/es/core/components/SxpPageRender/ExpandableText.js +54 -0
- package/es/core/components/SxpPageRender/FingerSwipeTip/index.d.ts +6 -0
- package/es/core/components/SxpPageRender/FingerSwipeTip/index.js +19 -0
- package/es/core/components/SxpPageRender/Hashtag/index.d.ts +11 -0
- package/es/core/components/SxpPageRender/Hashtag/index.js +40 -0
- package/es/core/components/SxpPageRender/LikeButton/index.d.ts +10 -0
- package/es/core/components/SxpPageRender/LikeButton/index.js +58 -0
- package/es/core/components/SxpPageRender/Modal/index.d.ts +9 -0
- package/es/core/components/SxpPageRender/Modal/index.js +44 -0
- package/es/core/components/SxpPageRender/Navbar.d.ts +8 -0
- package/es/core/components/SxpPageRender/Navbar.js +9 -0
- package/es/core/components/SxpPageRender/PictureGroup/Picture.d.ts +8 -0
- package/es/core/components/SxpPageRender/PictureGroup/Picture.js +19 -0
- package/es/core/components/SxpPageRender/PictureGroup/index.d.ts +13 -0
- package/es/core/components/SxpPageRender/PictureGroup/index.js +27 -0
- package/es/core/components/SxpPageRender/Popup/index.d.ts +3 -0
- package/es/core/components/SxpPageRender/Popup/index.js +60 -0
- package/es/core/components/SxpPageRender/ProductInfo/index.d.ts +14 -0
- package/es/core/components/SxpPageRender/ProductInfo/index.js +55 -0
- package/es/core/components/SxpPageRender/RenderCard.d.ts +11 -0
- package/es/core/components/SxpPageRender/RenderCard.js +40 -0
- package/es/core/components/SxpPageRender/ToggleButton/index.d.ts +10 -0
- package/es/core/components/SxpPageRender/ToggleButton/index.js +13 -0
- package/es/core/components/SxpPageRender/VideoWidget/index.d.ts +12 -0
- package/es/core/components/SxpPageRender/VideoWidget/index.js +219 -0
- package/es/core/components/SxpPageRender/WaterFall/List.d.ts +3 -0
- package/es/core/components/SxpPageRender/WaterFall/List.js +173 -0
- package/es/core/components/SxpPageRender/WaterFall/WaterfallList.d.ts +3 -0
- package/es/core/components/SxpPageRender/WaterFall/WaterfallList.js +317 -0
- package/es/core/components/SxpPageRender/WaterFall/index.d.ts +6 -0
- package/es/core/components/SxpPageRender/WaterFall/index.js +100 -0
- package/es/core/components/SxpPageRender/fakeData.d.ts +130 -0
- package/es/core/components/SxpPageRender/fakeData.js +899 -0
- package/es/core/components/SxpPageRender/index.d.ts +35 -0
- package/es/core/components/SxpPageRender/index.js +345 -0
- package/es/core/components/SxpPageRender/typing.d.ts +65 -0
- package/es/core/components/SxpPageRender/typing.js +1 -0
- package/es/core/components/SxpPageRender/useIconLink.d.ts +1 -0
- package/es/core/components/SxpPageRender/useIconLink.js +8 -0
- package/es/core/context/DataSourceProvider.d.ts +17 -0
- package/es/core/context/DataSourceProvider.js +45 -0
- package/es/core/context/EditorContext.d.ts +76 -0
- package/es/core/context/EditorContext.js +142 -0
- package/es/core/context/EditorDataProvider.d.ts +18 -0
- package/es/core/context/EditorDataProvider.js +20 -0
- package/es/core/context/SxpDataSourceProvider.d.ts +90 -0
- package/es/core/context/SxpDataSourceProvider.js +204 -0
- package/es/core/create.d.ts +37 -0
- package/es/core/create.js +4 -0
- package/es/core/hoc/withBindDataSource.d.ts +6 -0
- package/es/core/hoc/withBindDataSource.js +61 -0
- package/es/core/hooks/index.d.ts +4 -0
- package/es/core/hooks/index.js +4 -0
- package/es/core/hooks/useCurrentNode.d.ts +10 -0
- package/es/core/hooks/useCurrentNode.js +11 -0
- package/es/core/hooks/useDataSource.d.ts +2 -0
- package/es/core/hooks/useDataSource.js +6 -0
- package/es/core/hooks/useEditor.d.ts +1 -0
- package/es/core/hooks/useEditor.js +5 -0
- package/es/core/hooks/useEventReport.d.ts +5 -0
- package/es/core/hooks/useEventReport.js +73 -0
- package/es/core/hooks/useOnScreen.d.ts +2 -0
- package/es/core/hooks/useOnScreen.js +19 -0
- package/es/core/hooks/useSxpDataSource.d.ts +1 -0
- package/es/core/hooks/useSxpDataSource.js +5 -0
- package/es/core/index.d.ts +3 -0
- package/es/core/index.js +1 -0
- package/es/core/schema.d.ts +58 -0
- package/es/core/schema.js +1 -0
- package/es/core/utils/event.d.ts +7 -0
- package/es/core/utils/event.js +8 -0
- package/es/core/utils/getDataByDS.d.ts +6 -0
- package/es/core/utils/getDataByDS.js +39 -0
- package/es/core/utils/getSxpTokenInfo.d.ts +2 -0
- package/es/core/utils/getSxpTokenInfo.js +26 -0
- package/es/core/utils/localStore.d.ts +3 -0
- package/es/core/utils/localStore.js +14 -0
- package/es/core/utils/materials.d.ts +11 -0
- package/es/core/utils/materials.js +31 -0
- package/es/core/utils/sessionStore.d.ts +3 -0
- package/es/core/utils/sessionStore.js +26 -0
- package/es/core/utils/tool.d.ts +5 -0
- package/es/core/utils/tool.js +48 -0
- package/es/core/utils/unzip.d.ts +1 -0
- package/es/core/utils/unzip.js +10 -0
- package/es/index.d.ts +10 -0
- package/es/index.js +12 -0
- package/es/materials/index.d.ts +1 -0
- package/es/materials/index.js +1 -0
- package/es/materials/sxp/index.d.ts +2 -0
- package/es/materials/sxp/index.js +2 -0
- package/es/materials/sxp/popup/AppointForm/index.d.ts +18 -0
- package/es/materials/sxp/popup/AppointForm/index.js +77 -0
- package/es/materials/sxp/popup/AppointForm/interactionRender.d.ts +8 -0
- package/es/materials/sxp/popup/AppointForm/interactionRender.js +11 -0
- package/es/materials/sxp/popup/AppointForm/material.d.ts +2 -0
- package/es/materials/sxp/popup/AppointForm/material.js +36 -0
- package/es/materials/sxp/popup/AppointForm/settingRender.d.ts +65 -0
- package/es/materials/sxp/popup/AppointForm/settingRender.js +90 -0
- package/es/materials/sxp/popup/CommodityDetail/index.d.ts +14 -0
- package/es/materials/sxp/popup/CommodityDetail/index.js +85 -0
- package/es/materials/sxp/popup/CommodityDetail/material.d.ts +2 -0
- package/es/materials/sxp/popup/CommodityDetail/material.js +16 -0
- package/es/materials/sxp/popup/CommodityDetailDiro/index.d.ts +18 -0
- package/es/materials/sxp/popup/CommodityDetailDiro/index.js +162 -0
- package/es/materials/sxp/popup/CommodityDetailDiro/material.d.ts +2 -0
- package/es/materials/sxp/popup/CommodityDetailDiro/material.js +16 -0
- package/es/materials/sxp/popup/CommodityDetailDiroNew/index.d.ts +22 -0
- package/es/materials/sxp/popup/CommodityDetailDiroNew/index.js +129 -0
- package/es/materials/sxp/popup/CommodityDetailDiroNew/material.d.ts +2 -0
- package/es/materials/sxp/popup/CommodityDetailDiroNew/material.js +16 -0
- package/es/materials/sxp/popup/Prompt/index.d.ts +11 -0
- package/es/materials/sxp/popup/Prompt/index.js +22 -0
- package/es/materials/sxp/popup/Prompt/interactionRender.d.ts +8 -0
- package/es/materials/sxp/popup/Prompt/interactionRender.js +11 -0
- package/es/materials/sxp/popup/Prompt/material.d.ts +2 -0
- package/es/materials/sxp/popup/Prompt/material.js +28 -0
- package/es/materials/sxp/popup/Prompt/settingRender.d.ts +12 -0
- package/es/materials/sxp/popup/Prompt/settingRender.js +18 -0
- package/es/materials/sxp/popup/index.d.ts +5 -0
- package/es/materials/sxp/popup/index.js +5 -0
- package/es/materials/sxp/template/Appoint/index.d.ts +11 -0
- package/es/materials/sxp/template/Appoint/index.js +30 -0
- package/es/materials/sxp/template/Appoint/interactionRender.d.ts +8 -0
- package/es/materials/sxp/template/Appoint/interactionRender.js +11 -0
- package/es/materials/sxp/template/Appoint/material.d.ts +2 -0
- package/es/materials/sxp/template/Appoint/material.js +29 -0
- package/es/materials/sxp/template/Commodity/index.d.ts +11 -0
- package/es/materials/sxp/template/Commodity/index.js +44 -0
- package/es/materials/sxp/template/Commodity/interactionRender.d.ts +8 -0
- package/es/materials/sxp/template/Commodity/interactionRender.js +11 -0
- package/es/materials/sxp/template/Commodity/material.d.ts +2 -0
- package/es/materials/sxp/template/Commodity/material.js +26 -0
- package/es/materials/sxp/template/CommodityDiro/index.d.ts +11 -0
- package/es/materials/sxp/template/CommodityDiro/index.js +46 -0
- package/es/materials/sxp/template/CommodityDiro/interactionRender.d.ts +8 -0
- package/es/materials/sxp/template/CommodityDiro/interactionRender.js +11 -0
- package/es/materials/sxp/template/CommodityDiro/material.d.ts +2 -0
- package/es/materials/sxp/template/CommodityDiro/material.js +26 -0
- package/es/materials/sxp/template/CommodityDiroNew/index.d.ts +11 -0
- package/es/materials/sxp/template/CommodityDiroNew/index.js +46 -0
- package/es/materials/sxp/template/CommodityDiroNew/interactionRender.d.ts +8 -0
- package/es/materials/sxp/template/CommodityDiroNew/interactionRender.js +11 -0
- package/es/materials/sxp/template/CommodityDiroNew/material.d.ts +2 -0
- package/es/materials/sxp/template/CommodityDiroNew/material.js +26 -0
- package/es/materials/sxp/template/Link/index.d.ts +11 -0
- package/es/materials/sxp/template/Link/index.js +41 -0
- package/es/materials/sxp/template/Link/material.d.ts +2 -0
- package/es/materials/sxp/template/Link/material.js +26 -0
- package/es/materials/sxp/template/MultiCommodity/index.d.ts +12 -0
- package/es/materials/sxp/template/MultiCommodity/index.js +58 -0
- package/es/materials/sxp/template/MultiCommodity/interactionRender.d.ts +8 -0
- package/es/materials/sxp/template/MultiCommodity/interactionRender.js +11 -0
- package/es/materials/sxp/template/MultiCommodity/material.d.ts +2 -0
- package/es/materials/sxp/template/MultiCommodity/material.js +26 -0
- package/es/materials/sxp/template/MultiCommodityDiro/index.d.ts +12 -0
- package/es/materials/sxp/template/MultiCommodityDiro/index.js +60 -0
- package/es/materials/sxp/template/MultiCommodityDiro/interactionRender.d.ts +8 -0
- package/es/materials/sxp/template/MultiCommodityDiro/interactionRender.js +11 -0
- package/es/materials/sxp/template/MultiCommodityDiro/material.d.ts +2 -0
- package/es/materials/sxp/template/MultiCommodityDiro/material.js +26 -0
- package/es/materials/sxp/template/MultiCommodityDiroNew/index.d.ts +12 -0
- package/es/materials/sxp/template/MultiCommodityDiroNew/index.js +59 -0
- package/es/materials/sxp/template/MultiCommodityDiroNew/interactionRender.d.ts +8 -0
- package/es/materials/sxp/template/MultiCommodityDiroNew/interactionRender.js +11 -0
- package/es/materials/sxp/template/MultiCommodityDiroNew/material.d.ts +2 -0
- package/es/materials/sxp/template/MultiCommodityDiroNew/material.js +26 -0
- package/es/materials/sxp/template/components/EventProvider.d.ts +10 -0
- package/es/materials/sxp/template/components/EventProvider.js +33 -0
- package/es/materials/sxp/template/components/Img.d.ts +9 -0
- package/es/materials/sxp/template/components/Img.js +19 -0
- package/es/materials/sxp/template/components/Scroll.d.ts +9 -0
- package/es/materials/sxp/template/components/Scroll.js +10 -0
- package/es/materials/sxp/template/index.d.ts +8 -0
- package/es/materials/sxp/template/index.js +8 -0
- package/lib/core/Pagebuilder/PagebuilderClass.d.ts +15 -0
- package/lib/core/Pagebuilder/PagebuilderClass.js +45 -0
- package/lib/core/Pagebuilder/index.d.ts +3 -0
- package/lib/core/Pagebuilder/index.js +99 -0
- package/lib/core/Pagebuilder/type.d.ts +55 -0
- package/lib/core/Pagebuilder/type.js +2 -0
- package/lib/core/components/SxpPageCore/index.d.ts +11 -0
- package/lib/core/components/SxpPageCore/index.js +29 -0
- package/lib/core/components/SxpPageRender/ExpandableText.d.ts +12 -0
- package/lib/core/components/SxpPageRender/ExpandableText.js +57 -0
- package/lib/core/components/SxpPageRender/FingerSwipeTip/index.d.ts +6 -0
- package/lib/core/components/SxpPageRender/FingerSwipeTip/index.js +22 -0
- package/lib/core/components/SxpPageRender/Hashtag/index.d.ts +11 -0
- package/lib/core/components/SxpPageRender/Hashtag/index.js +43 -0
- package/lib/core/components/SxpPageRender/LikeButton/index.d.ts +10 -0
- package/lib/core/components/SxpPageRender/LikeButton/index.js +60 -0
- package/lib/core/components/SxpPageRender/Modal/index.d.ts +9 -0
- package/lib/core/components/SxpPageRender/Modal/index.js +47 -0
- package/lib/core/components/SxpPageRender/Navbar.d.ts +8 -0
- package/lib/core/components/SxpPageRender/Navbar.js +12 -0
- package/lib/core/components/SxpPageRender/PictureGroup/Picture.d.ts +8 -0
- package/lib/core/components/SxpPageRender/PictureGroup/Picture.js +22 -0
- package/lib/core/components/SxpPageRender/PictureGroup/index.d.ts +13 -0
- package/lib/core/components/SxpPageRender/PictureGroup/index.js +30 -0
- package/lib/core/components/SxpPageRender/Popup/index.d.ts +3 -0
- package/lib/core/components/SxpPageRender/Popup/index.js +63 -0
- package/lib/core/components/SxpPageRender/ProductInfo/index.d.ts +14 -0
- package/lib/core/components/SxpPageRender/ProductInfo/index.js +58 -0
- package/lib/core/components/SxpPageRender/RenderCard.d.ts +11 -0
- package/lib/core/components/SxpPageRender/RenderCard.js +43 -0
- package/lib/core/components/SxpPageRender/ToggleButton/index.d.ts +10 -0
- package/lib/core/components/SxpPageRender/ToggleButton/index.js +16 -0
- package/lib/core/components/SxpPageRender/VideoWidget/index.d.ts +12 -0
- package/lib/core/components/SxpPageRender/VideoWidget/index.js +222 -0
- package/lib/core/components/SxpPageRender/WaterFall/List.d.ts +3 -0
- package/lib/core/components/SxpPageRender/WaterFall/List.js +177 -0
- package/lib/core/components/SxpPageRender/WaterFall/WaterfallList.d.ts +3 -0
- package/lib/core/components/SxpPageRender/WaterFall/WaterfallList.js +321 -0
- package/lib/core/components/SxpPageRender/WaterFall/index.d.ts +6 -0
- package/lib/core/components/SxpPageRender/WaterFall/index.js +103 -0
- package/lib/core/components/SxpPageRender/fakeData.d.ts +130 -0
- package/lib/core/components/SxpPageRender/fakeData.js +902 -0
- package/lib/core/components/SxpPageRender/index.d.ts +35 -0
- package/lib/core/components/SxpPageRender/index.js +348 -0
- package/lib/core/components/SxpPageRender/typing.d.ts +65 -0
- package/lib/core/components/SxpPageRender/typing.js +2 -0
- package/lib/core/components/SxpPageRender/useIconLink.d.ts +1 -0
- package/lib/core/components/SxpPageRender/useIconLink.js +12 -0
- package/lib/core/context/DataSourceProvider.d.ts +17 -0
- package/lib/core/context/DataSourceProvider.js +48 -0
- package/lib/core/context/EditorContext.d.ts +76 -0
- package/lib/core/context/EditorContext.js +146 -0
- package/lib/core/context/EditorDataProvider.d.ts +18 -0
- package/lib/core/context/EditorDataProvider.js +25 -0
- package/lib/core/context/SxpDataSourceProvider.d.ts +90 -0
- package/lib/core/context/SxpDataSourceProvider.js +207 -0
- package/lib/core/create.d.ts +37 -0
- package/lib/core/create.js +8 -0
- package/lib/core/hoc/withBindDataSource.d.ts +6 -0
- package/lib/core/hoc/withBindDataSource.js +63 -0
- package/lib/core/hooks/index.d.ts +4 -0
- package/lib/core/hooks/index.js +7 -0
- package/lib/core/hooks/useCurrentNode.d.ts +10 -0
- package/lib/core/hooks/useCurrentNode.js +14 -0
- package/lib/core/hooks/useDataSource.d.ts +2 -0
- package/lib/core/hooks/useDataSource.js +9 -0
- package/lib/core/hooks/useEditor.d.ts +1 -0
- package/lib/core/hooks/useEditor.js +9 -0
- package/lib/core/hooks/useEventReport.d.ts +5 -0
- package/lib/core/hooks/useEventReport.js +77 -0
- package/lib/core/hooks/useOnScreen.d.ts +2 -0
- package/lib/core/hooks/useOnScreen.js +22 -0
- package/lib/core/hooks/useSxpDataSource.d.ts +1 -0
- package/lib/core/hooks/useSxpDataSource.js +9 -0
- package/lib/core/index.d.ts +3 -0
- package/lib/core/index.js +5 -0
- package/lib/core/schema.d.ts +58 -0
- package/lib/core/schema.js +2 -0
- package/lib/core/utils/event.d.ts +7 -0
- package/lib/core/utils/event.js +12 -0
- package/lib/core/utils/getDataByDS.d.ts +6 -0
- package/lib/core/utils/getDataByDS.js +41 -0
- package/lib/core/utils/getSxpTokenInfo.d.ts +2 -0
- package/lib/core/utils/getSxpTokenInfo.js +30 -0
- package/lib/core/utils/localStore.d.ts +3 -0
- package/lib/core/utils/localStore.js +19 -0
- package/lib/core/utils/materials.d.ts +11 -0
- package/lib/core/utils/materials.js +37 -0
- package/lib/core/utils/sessionStore.d.ts +3 -0
- package/lib/core/utils/sessionStore.js +32 -0
- package/lib/core/utils/tool.d.ts +5 -0
- package/lib/core/utils/tool.js +54 -0
- package/lib/core/utils/unzip.d.ts +1 -0
- package/lib/core/utils/unzip.js +15 -0
- package/lib/index.d.ts +10 -0
- package/lib/index.js +20 -0
- package/lib/materials/index.d.ts +1 -0
- package/lib/materials/index.js +4 -0
- package/lib/materials/sxp/index.d.ts +2 -0
- package/lib/materials/sxp/index.js +5 -0
- package/lib/materials/sxp/popup/AppointForm/index.d.ts +18 -0
- package/lib/materials/sxp/popup/AppointForm/index.js +79 -0
- package/lib/materials/sxp/popup/AppointForm/interactionRender.d.ts +8 -0
- package/lib/materials/sxp/popup/AppointForm/interactionRender.js +13 -0
- package/lib/materials/sxp/popup/AppointForm/material.d.ts +2 -0
- package/lib/materials/sxp/popup/AppointForm/material.js +40 -0
- package/lib/materials/sxp/popup/AppointForm/settingRender.d.ts +65 -0
- package/lib/materials/sxp/popup/AppointForm/settingRender.js +92 -0
- package/lib/materials/sxp/popup/CommodityDetail/index.d.ts +14 -0
- package/lib/materials/sxp/popup/CommodityDetail/index.js +87 -0
- package/lib/materials/sxp/popup/CommodityDetail/material.d.ts +2 -0
- package/lib/materials/sxp/popup/CommodityDetail/material.js +20 -0
- package/lib/materials/sxp/popup/CommodityDetailDiro/index.d.ts +18 -0
- package/lib/materials/sxp/popup/CommodityDetailDiro/index.js +164 -0
- package/lib/materials/sxp/popup/CommodityDetailDiro/material.d.ts +2 -0
- package/lib/materials/sxp/popup/CommodityDetailDiro/material.js +20 -0
- package/lib/materials/sxp/popup/CommodityDetailDiroNew/index.d.ts +22 -0
- package/lib/materials/sxp/popup/CommodityDetailDiroNew/index.js +131 -0
- package/lib/materials/sxp/popup/CommodityDetailDiroNew/material.d.ts +2 -0
- package/lib/materials/sxp/popup/CommodityDetailDiroNew/material.js +20 -0
- package/lib/materials/sxp/popup/Prompt/index.d.ts +11 -0
- package/lib/materials/sxp/popup/Prompt/index.js +24 -0
- package/lib/materials/sxp/popup/Prompt/interactionRender.d.ts +8 -0
- package/lib/materials/sxp/popup/Prompt/interactionRender.js +13 -0
- package/lib/materials/sxp/popup/Prompt/material.d.ts +2 -0
- package/lib/materials/sxp/popup/Prompt/material.js +32 -0
- package/lib/materials/sxp/popup/Prompt/settingRender.d.ts +12 -0
- package/lib/materials/sxp/popup/Prompt/settingRender.js +20 -0
- package/lib/materials/sxp/popup/index.d.ts +5 -0
- package/lib/materials/sxp/popup/index.js +8 -0
- package/lib/materials/sxp/template/Appoint/index.d.ts +11 -0
- package/lib/materials/sxp/template/Appoint/index.js +32 -0
- package/lib/materials/sxp/template/Appoint/interactionRender.d.ts +8 -0
- package/lib/materials/sxp/template/Appoint/interactionRender.js +13 -0
- package/lib/materials/sxp/template/Appoint/material.d.ts +2 -0
- package/lib/materials/sxp/template/Appoint/material.js +33 -0
- package/lib/materials/sxp/template/Commodity/index.d.ts +11 -0
- package/lib/materials/sxp/template/Commodity/index.js +46 -0
- package/lib/materials/sxp/template/Commodity/interactionRender.d.ts +8 -0
- package/lib/materials/sxp/template/Commodity/interactionRender.js +13 -0
- package/lib/materials/sxp/template/Commodity/material.d.ts +2 -0
- package/lib/materials/sxp/template/Commodity/material.js +30 -0
- package/lib/materials/sxp/template/CommodityDiro/index.d.ts +11 -0
- package/lib/materials/sxp/template/CommodityDiro/index.js +48 -0
- package/lib/materials/sxp/template/CommodityDiro/interactionRender.d.ts +8 -0
- package/lib/materials/sxp/template/CommodityDiro/interactionRender.js +13 -0
- package/lib/materials/sxp/template/CommodityDiro/material.d.ts +2 -0
- package/lib/materials/sxp/template/CommodityDiro/material.js +30 -0
- package/lib/materials/sxp/template/CommodityDiroNew/index.d.ts +11 -0
- package/lib/materials/sxp/template/CommodityDiroNew/index.js +48 -0
- package/lib/materials/sxp/template/CommodityDiroNew/interactionRender.d.ts +8 -0
- package/lib/materials/sxp/template/CommodityDiroNew/interactionRender.js +13 -0
- package/lib/materials/sxp/template/CommodityDiroNew/material.d.ts +2 -0
- package/lib/materials/sxp/template/CommodityDiroNew/material.js +30 -0
- package/lib/materials/sxp/template/Link/index.d.ts +11 -0
- package/lib/materials/sxp/template/Link/index.js +43 -0
- package/lib/materials/sxp/template/Link/material.d.ts +2 -0
- package/lib/materials/sxp/template/Link/material.js +30 -0
- package/lib/materials/sxp/template/MultiCommodity/index.d.ts +12 -0
- package/lib/materials/sxp/template/MultiCommodity/index.js +60 -0
- package/lib/materials/sxp/template/MultiCommodity/interactionRender.d.ts +8 -0
- package/lib/materials/sxp/template/MultiCommodity/interactionRender.js +13 -0
- package/lib/materials/sxp/template/MultiCommodity/material.d.ts +2 -0
- package/lib/materials/sxp/template/MultiCommodity/material.js +30 -0
- package/lib/materials/sxp/template/MultiCommodityDiro/index.d.ts +12 -0
- package/lib/materials/sxp/template/MultiCommodityDiro/index.js +62 -0
- package/lib/materials/sxp/template/MultiCommodityDiro/interactionRender.d.ts +8 -0
- package/lib/materials/sxp/template/MultiCommodityDiro/interactionRender.js +13 -0
- package/lib/materials/sxp/template/MultiCommodityDiro/material.d.ts +2 -0
- package/lib/materials/sxp/template/MultiCommodityDiro/material.js +30 -0
- package/lib/materials/sxp/template/MultiCommodityDiroNew/index.d.ts +12 -0
- package/lib/materials/sxp/template/MultiCommodityDiroNew/index.js +61 -0
- package/lib/materials/sxp/template/MultiCommodityDiroNew/interactionRender.d.ts +8 -0
- package/lib/materials/sxp/template/MultiCommodityDiroNew/interactionRender.js +13 -0
- package/lib/materials/sxp/template/MultiCommodityDiroNew/material.d.ts +2 -0
- package/lib/materials/sxp/template/MultiCommodityDiroNew/material.js +30 -0
- package/lib/materials/sxp/template/components/EventProvider.d.ts +10 -0
- package/lib/materials/sxp/template/components/EventProvider.js +35 -0
- package/lib/materials/sxp/template/components/Img.d.ts +9 -0
- package/lib/materials/sxp/template/components/Img.js +22 -0
- package/lib/materials/sxp/template/components/Scroll.d.ts +9 -0
- package/lib/materials/sxp/template/components/Scroll.js +13 -0
- package/lib/materials/sxp/template/index.d.ts +8 -0
- package/lib/materials/sxp/template/index.js +11 -0
- package/package.json +113 -0
@@ -0,0 +1,30 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.CommodityDiro = void 0;
|
4
|
+
const tslib_1 = require("tslib");
|
5
|
+
const interactionRender_1 = tslib_1.__importDefault(require("./interactionRender"));
|
6
|
+
const _1 = tslib_1.__importDefault(require("."));
|
7
|
+
const create_1 = require("../../../../core/create");
|
8
|
+
const CommodityDiro = (0, create_1.createMaterial)(_1.default, {
|
9
|
+
displayName: '推荐单商品-白底圆角按钮',
|
10
|
+
icon: '',
|
11
|
+
category: 'template',
|
12
|
+
type: 'CommodityDiro',
|
13
|
+
related: {
|
14
|
+
interactionRender: interactionRender_1.default,
|
15
|
+
bindableProps: []
|
16
|
+
},
|
17
|
+
defaulSetting: {
|
18
|
+
props: {},
|
19
|
+
style: {
|
20
|
+
padding: '7px',
|
21
|
+
display: 'flex',
|
22
|
+
borderRadius: '3px',
|
23
|
+
background: '#fff'
|
24
|
+
}
|
25
|
+
},
|
26
|
+
w: 100,
|
27
|
+
h: 40,
|
28
|
+
sort: 2
|
29
|
+
});
|
30
|
+
exports.CommodityDiro = CommodityDiro;
|
@@ -0,0 +1,11 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import { RecItemType } from '../../../../core/components/SxpPageRender/typing';
|
3
|
+
export interface ICommodityDiroNewProps {
|
4
|
+
content?: string;
|
5
|
+
style?: Record<string, any>;
|
6
|
+
bgImg?: Record<string, any> | string;
|
7
|
+
recData?: RecItemType;
|
8
|
+
bottom_image?: string;
|
9
|
+
}
|
10
|
+
declare const _default: React.NamedExoticComponent<ICommodityDiroNewProps>;
|
11
|
+
export default _default;
|
@@ -0,0 +1,48 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
const tslib_1 = require("tslib");
|
4
|
+
const css_1 = require("@emotion/css");
|
5
|
+
const react_1 = tslib_1.__importStar(require("react"));
|
6
|
+
const EventProvider_1 = tslib_1.__importDefault(require("../components/EventProvider"));
|
7
|
+
const index_module_less_1 = tslib_1.__importDefault(require("./index.module.less"));
|
8
|
+
const hooks_1 = require("../../../../core/hooks");
|
9
|
+
const CommodityDiroNew = (_a) => {
|
10
|
+
var _b, _c, _d, _e, _f, _g, _h;
|
11
|
+
var { content, style, bgImg, recData, bottom_image } = _a, props = tslib_1.__rest(_a, ["content", "style", "bgImg", "recData", "bottom_image"]);
|
12
|
+
const { sxpParameter } = (0, hooks_1.useSxpDataSource)();
|
13
|
+
const product = (_b = recData === null || recData === void 0 ? void 0 : recData.video) === null || _b === void 0 ? void 0 : _b.bindProduct;
|
14
|
+
const src = (_e = (_d = (_c = product === null || product === void 0 ? void 0 : product.homePage) === null || _c === void 0 ? void 0 : _c[0]) !== null && _d !== void 0 ? _d : sxpParameter === null || sxpParameter === void 0 ? void 0 : sxpParameter.bottom_image) !== null && _e !== void 0 ? _e : bottom_image;
|
15
|
+
return (react_1.default.createElement(EventProvider_1.default, Object.assign({ rec: recData, className: (0, css_1.css)(Object.assign(Object.assign({}, style), { maxWidth: '260px', width: '100%', padding: '4px', background: 'rgba(255,255,255,0.75)' })) }, props),
|
16
|
+
react_1.default.createElement("div", { className: (0, css_1.css)({
|
17
|
+
width: '78px',
|
18
|
+
height: '78px',
|
19
|
+
marginRight: '16px',
|
20
|
+
borderRadius: '8px',
|
21
|
+
overflow: 'hidden',
|
22
|
+
flexShrink: 0,
|
23
|
+
backgroundColor: '#f2f2f2'
|
24
|
+
}) },
|
25
|
+
react_1.default.createElement("img", { className: (0, css_1.css)({ width: '100%', objectFit: 'cover', height: '100%' }), src: src, hidden: !src, alt: '' })),
|
26
|
+
react_1.default.createElement("div", { className: (0, css_1.css)({
|
27
|
+
color: '#fff',
|
28
|
+
display: 'flex',
|
29
|
+
flexDirection: 'column',
|
30
|
+
justifyContent: 'center',
|
31
|
+
width: '100%',
|
32
|
+
overflow: 'hidden'
|
33
|
+
}) },
|
34
|
+
react_1.default.createElement("div", { className: index_module_less_1.default['tow-line-ellipsis'] }, (_f = product === null || product === void 0 ? void 0 : product.title) !== null && _f !== void 0 ? _f : 'Product Name'),
|
35
|
+
react_1.default.createElement("div", { className: (0, css_1.css)({
|
36
|
+
fontSize: '13px',
|
37
|
+
fontWeight: 'bold',
|
38
|
+
textOverflow: 'ellipsis',
|
39
|
+
overflow: 'hidden',
|
40
|
+
width: 'fit-content',
|
41
|
+
maxWidth: '100%',
|
42
|
+
whiteSpace: 'nowrap',
|
43
|
+
textDecoration: 'underline',
|
44
|
+
color: '#000',
|
45
|
+
lineHeight: '20px'
|
46
|
+
}) }, (_h = (_g = product === null || product === void 0 ? void 0 : product.bindCta) === null || _g === void 0 ? void 0 : _g.enTitle) !== null && _h !== void 0 ? _h : 'Shop now'))));
|
47
|
+
};
|
48
|
+
exports.default = (0, react_1.memo)(CommodityDiroNew);
|
@@ -0,0 +1,30 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.CommodityDiroNew = void 0;
|
4
|
+
const tslib_1 = require("tslib");
|
5
|
+
const interactionRender_1 = tslib_1.__importDefault(require("./interactionRender"));
|
6
|
+
const _1 = tslib_1.__importDefault(require("."));
|
7
|
+
const create_1 = require("../../../../core/create");
|
8
|
+
const CommodityDiroNew = (0, create_1.createMaterial)(_1.default, {
|
9
|
+
displayName: '推荐单商品-白底下划线按钮',
|
10
|
+
icon: '',
|
11
|
+
category: 'template',
|
12
|
+
type: 'CommodityDiroNew',
|
13
|
+
related: {
|
14
|
+
interactionRender: interactionRender_1.default,
|
15
|
+
bindableProps: []
|
16
|
+
},
|
17
|
+
defaulSetting: {
|
18
|
+
props: {},
|
19
|
+
style: {
|
20
|
+
padding: '7px',
|
21
|
+
display: 'flex',
|
22
|
+
borderRadius: '3px',
|
23
|
+
background: '#fff'
|
24
|
+
}
|
25
|
+
},
|
26
|
+
w: 100,
|
27
|
+
h: 40,
|
28
|
+
sort: 2
|
29
|
+
});
|
30
|
+
exports.CommodityDiroNew = CommodityDiroNew;
|
@@ -0,0 +1,11 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import { RecItemType } from '../../../../core/components/SxpPageRender/typing';
|
3
|
+
export interface ILinkProps {
|
4
|
+
content?: string;
|
5
|
+
style?: Record<string, any>;
|
6
|
+
bgImg?: Record<string, any> | string;
|
7
|
+
recData?: RecItemType;
|
8
|
+
bottom_image?: string;
|
9
|
+
}
|
10
|
+
declare const _default: React.NamedExoticComponent<ILinkProps>;
|
11
|
+
export default _default;
|
@@ -0,0 +1,43 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
const tslib_1 = require("tslib");
|
4
|
+
const css_1 = require("@emotion/css");
|
5
|
+
const react_1 = tslib_1.__importStar(require("react"));
|
6
|
+
const EventProvider_1 = tslib_1.__importDefault(require("../components/EventProvider"));
|
7
|
+
const index_module_less_1 = tslib_1.__importDefault(require("./index.module.less"));
|
8
|
+
const hooks_1 = require("../../../../core/hooks");
|
9
|
+
const useEventReport_1 = require("../../../../core/hooks/useEventReport");
|
10
|
+
const Link = (_a) => {
|
11
|
+
var _b, _c, _d, _e, _f;
|
12
|
+
var { content, style, bgImg, recData, bottom_image } = _a, props = tslib_1.__rest(_a, ["content", "style", "bgImg", "recData", "bottom_image"]);
|
13
|
+
const { sxpParameter, bffEventReport } = (0, hooks_1.useSxpDataSource)();
|
14
|
+
const { jumpToWeb } = (0, useEventReport_1.useEventReport)();
|
15
|
+
const cta = (_b = recData === null || recData === void 0 ? void 0 : recData.video) === null || _b === void 0 ? void 0 : _b.bindCta;
|
16
|
+
const product = (_c = recData === null || recData === void 0 ? void 0 : recData.video) === null || _c === void 0 ? void 0 : _c.bindProduct;
|
17
|
+
const handleTo = () => {
|
18
|
+
if (cta === null || cta === void 0 ? void 0 : cta.link) {
|
19
|
+
jumpToWeb(recData, product, cta);
|
20
|
+
window.location.href = window.getJointUtmLink(cta.link);
|
21
|
+
}
|
22
|
+
};
|
23
|
+
return (react_1.default.createElement(EventProvider_1.default, Object.assign({ rec: recData, className: (0, css_1.css)(Object.assign(Object.assign({}, style), { maxWidth: '236px', width: '100%' })) }, props, { onClick: handleTo }),
|
24
|
+
react_1.default.createElement("div", { className: (0, css_1.css)({
|
25
|
+
width: '60px',
|
26
|
+
height: '60px',
|
27
|
+
marginRight: '8px',
|
28
|
+
borderRadius: '3px',
|
29
|
+
backgroundColor: '#f2f2f2',
|
30
|
+
overflow: 'hidden',
|
31
|
+
flexShrink: 0
|
32
|
+
}) },
|
33
|
+
react_1.default.createElement("img", { className: (0, css_1.css)({ width: '100%', objectFit: 'cover', height: '100%' }), src: (_e = (_d = cta === null || cta === void 0 ? void 0 : cta.icon) !== null && _d !== void 0 ? _d : sxpParameter === null || sxpParameter === void 0 ? void 0 : sxpParameter.bottom_image) !== null && _e !== void 0 ? _e : bottom_image, alt: '' })),
|
34
|
+
react_1.default.createElement("div", { className: (0, css_1.css)({
|
35
|
+
color: '#fff',
|
36
|
+
display: 'flex',
|
37
|
+
alignItems: 'center',
|
38
|
+
width: '100%',
|
39
|
+
overflow: 'hidden'
|
40
|
+
}) },
|
41
|
+
react_1.default.createElement("div", { className: index_module_less_1.default['tow-line-ellipsis'] }, (_f = cta === null || cta === void 0 ? void 0 : cta.enTitle) !== null && _f !== void 0 ? _f : 'Product Name'))));
|
42
|
+
};
|
43
|
+
exports.default = (0, react_1.memo)(Link);
|
@@ -0,0 +1,30 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.Link = void 0;
|
4
|
+
const tslib_1 = require("tslib");
|
5
|
+
const _1 = tslib_1.__importDefault(require("."));
|
6
|
+
const create_1 = require("../../../../core/create");
|
7
|
+
const Link = (0, create_1.createMaterial)(_1.default, {
|
8
|
+
displayName: '跳转指引',
|
9
|
+
icon: '',
|
10
|
+
category: 'template',
|
11
|
+
type: 'Link',
|
12
|
+
related: {
|
13
|
+
bindableProps: []
|
14
|
+
},
|
15
|
+
defaulSetting: {
|
16
|
+
props: {
|
17
|
+
content: '按钮'
|
18
|
+
},
|
19
|
+
style: {
|
20
|
+
padding: '7px',
|
21
|
+
display: 'flex',
|
22
|
+
background: 'rgba(0,0,0,.3)',
|
23
|
+
borderRadius: '3px'
|
24
|
+
}
|
25
|
+
},
|
26
|
+
w: 100,
|
27
|
+
h: 40,
|
28
|
+
sort: 5
|
29
|
+
});
|
30
|
+
exports.Link = Link;
|
@@ -0,0 +1,12 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import { RecItemType } from '../../../../core/components/SxpPageRender/typing';
|
3
|
+
export interface IMultiCommodityProps {
|
4
|
+
content?: string;
|
5
|
+
style?: Record<string, any>;
|
6
|
+
bgImg?: Record<string, any> | string;
|
7
|
+
recData?: RecItemType;
|
8
|
+
onClick?: () => void;
|
9
|
+
bottom_image?: string;
|
10
|
+
}
|
11
|
+
declare const _default: React.NamedExoticComponent<IMultiCommodityProps>;
|
12
|
+
export default _default;
|
@@ -0,0 +1,60 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
const tslib_1 = require("tslib");
|
4
|
+
const css_1 = require("@emotion/css");
|
5
|
+
const react_1 = tslib_1.__importStar(require("react"));
|
6
|
+
const react_2 = require("swiper/react");
|
7
|
+
const lodash_1 = require("lodash");
|
8
|
+
const Img_1 = tslib_1.__importDefault(require("../components/Img"));
|
9
|
+
const Scroll_1 = tslib_1.__importDefault(require("../components/Scroll"));
|
10
|
+
const index_module_less_1 = tslib_1.__importDefault(require("./index.module.less"));
|
11
|
+
const hooks_1 = require("../../../../core/hooks");
|
12
|
+
const MultiCommodity = (_a) => {
|
13
|
+
var _b, _c;
|
14
|
+
var { content, style, bgImg, recData, onClick, bottom_image } = _a, props = tslib_1.__rest(_a, ["content", "style", "bgImg", "recData", "onClick", "bottom_image"]);
|
15
|
+
const { sxpParameter } = (0, hooks_1.useSxpDataSource)();
|
16
|
+
const { ctaEvent, setPopupDetailData } = (0, hooks_1.useSxpDataSource)();
|
17
|
+
const [products, setProducts] = (0, react_1.useState)((_c = (_b = recData === null || recData === void 0 ? void 0 : recData.video) === null || _b === void 0 ? void 0 : _b.bindProducts) !== null && _c !== void 0 ? _c : [1, 2]);
|
18
|
+
const handleClick = (0, lodash_1.throttle)((item) => {
|
19
|
+
ctaEvent === null || ctaEvent === void 0 ? void 0 : ctaEvent({
|
20
|
+
eventSubject: 'clickCta',
|
21
|
+
eventDescription: 'User clicked the CTA'
|
22
|
+
}, recData, item);
|
23
|
+
setPopupDetailData === null || setPopupDetailData === void 0 ? void 0 : setPopupDetailData(Object.assign(Object.assign({}, recData), { video: Object.assign(Object.assign({}, recData === null || recData === void 0 ? void 0 : recData.video), { bindProduct: item }) }));
|
24
|
+
onClick === null || onClick === void 0 ? void 0 : onClick();
|
25
|
+
}, 1200);
|
26
|
+
return (react_1.default.createElement(Scroll_1.default, null, products === null || products === void 0 ? void 0 : products.map((item) => {
|
27
|
+
var _a, _b, _c, _d, _e, _f;
|
28
|
+
return (react_1.default.createElement(react_2.SwiperSlide, Object.assign({ hidden: recData && !(item === null || item === void 0 ? void 0 : item.bindCta), key: item.itemId, className: (0, css_1.css)(Object.assign(Object.assign({}, style), { maxWidth: '236px', width: '100%', flexShrink: 0 })) }, props, { onClick: () => handleClick(item) }),
|
29
|
+
react_1.default.createElement("div", { className: (0, css_1.css)({
|
30
|
+
width: '60px',
|
31
|
+
height: '60px',
|
32
|
+
marginRight: '8px',
|
33
|
+
borderRadius: '3px',
|
34
|
+
overflow: 'hidden',
|
35
|
+
flexShrink: 0,
|
36
|
+
backgroundColor: '#f2f2f2'
|
37
|
+
}) },
|
38
|
+
react_1.default.createElement(Img_1.default, { src: (_c = (_b = (_a = item === null || item === void 0 ? void 0 : item.homePage) === null || _a === void 0 ? void 0 : _a[0]) !== null && _b !== void 0 ? _b : sxpParameter === null || sxpParameter === void 0 ? void 0 : sxpParameter.bottom_image) !== null && _c !== void 0 ? _c : bottom_image, rec: recData, item: item })),
|
39
|
+
react_1.default.createElement("div", { className: (0, css_1.css)({
|
40
|
+
color: '#fff',
|
41
|
+
display: 'flex',
|
42
|
+
flexDirection: 'column',
|
43
|
+
justifyContent: 'space-between',
|
44
|
+
width: '100%',
|
45
|
+
overflow: 'hidden'
|
46
|
+
}) },
|
47
|
+
react_1.default.createElement("div", { className: index_module_less_1.default['two-line-ellipsis'] }, (_d = item === null || item === void 0 ? void 0 : item.title) !== null && _d !== void 0 ? _d : 'Product Name'),
|
48
|
+
react_1.default.createElement("div", { className: (0, css_1.css)({
|
49
|
+
background: 'rgba(0,0,0,.5)',
|
50
|
+
fontSize: '10px',
|
51
|
+
padding: '2px 7px',
|
52
|
+
width: 'auto',
|
53
|
+
textAlign: 'center',
|
54
|
+
textOverflow: 'ellipsis',
|
55
|
+
overflow: 'hidden',
|
56
|
+
whiteSpace: 'nowrap'
|
57
|
+
}) }, (_f = (_e = item === null || item === void 0 ? void 0 : item.bindCta) === null || _e === void 0 ? void 0 : _e.enTitle) !== null && _f !== void 0 ? _f : 'Shop Now'))));
|
58
|
+
})));
|
59
|
+
};
|
60
|
+
exports.default = (0, react_1.memo)(MultiCommodity);
|
@@ -0,0 +1,30 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.MultiCommodity = void 0;
|
4
|
+
const tslib_1 = require("tslib");
|
5
|
+
const interactionRender_1 = tslib_1.__importDefault(require("./interactionRender"));
|
6
|
+
const _1 = tslib_1.__importDefault(require("."));
|
7
|
+
const create_1 = require("../../../../core/create");
|
8
|
+
const MultiCommodity = (0, create_1.createMaterial)(_1.default, {
|
9
|
+
displayName: '推荐多商品-透明底',
|
10
|
+
icon: '',
|
11
|
+
category: 'template',
|
12
|
+
type: 'MultiCommodity',
|
13
|
+
related: {
|
14
|
+
interactionRender: interactionRender_1.default,
|
15
|
+
bindableProps: []
|
16
|
+
},
|
17
|
+
defaulSetting: {
|
18
|
+
props: {},
|
19
|
+
style: {
|
20
|
+
padding: '7px',
|
21
|
+
display: 'flex',
|
22
|
+
background: 'rgba(0,0,0,.3)',
|
23
|
+
borderRadius: '3px'
|
24
|
+
}
|
25
|
+
},
|
26
|
+
w: 100,
|
27
|
+
h: 40,
|
28
|
+
sort: 3
|
29
|
+
});
|
30
|
+
exports.MultiCommodity = MultiCommodity;
|
@@ -0,0 +1,12 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import { RecItemType } from '../../../../core/components/SxpPageRender/typing';
|
3
|
+
export interface IMultiCommodityDiroProps {
|
4
|
+
content?: string;
|
5
|
+
style?: Record<string, any>;
|
6
|
+
bgImg?: Record<string, any> | string;
|
7
|
+
recData?: RecItemType;
|
8
|
+
onClick?: () => void;
|
9
|
+
bottom_image?: string;
|
10
|
+
}
|
11
|
+
declare const _default: React.NamedExoticComponent<IMultiCommodityDiroProps>;
|
12
|
+
export default _default;
|
@@ -0,0 +1,62 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
const tslib_1 = require("tslib");
|
4
|
+
const css_1 = require("@emotion/css");
|
5
|
+
const react_1 = tslib_1.__importStar(require("react"));
|
6
|
+
const react_2 = require("swiper/react");
|
7
|
+
const lodash_1 = require("lodash");
|
8
|
+
const Scroll_1 = tslib_1.__importDefault(require("../components/Scroll"));
|
9
|
+
const Img_1 = tslib_1.__importDefault(require("../components/Img"));
|
10
|
+
const index_module_less_1 = tslib_1.__importDefault(require("./index.module.less"));
|
11
|
+
const hooks_1 = require("../../../../core/hooks");
|
12
|
+
const MultiCommodityDiro = (_a) => {
|
13
|
+
var _b, _c;
|
14
|
+
var { content, style, bgImg, recData, onClick, bottom_image } = _a, props = tslib_1.__rest(_a, ["content", "style", "bgImg", "recData", "onClick", "bottom_image"]);
|
15
|
+
const { ctaEvent, setPopupDetailData, sxpParameter } = (0, hooks_1.useSxpDataSource)();
|
16
|
+
const [products, setProducts] = (0, react_1.useState)((_c = (_b = recData === null || recData === void 0 ? void 0 : recData.video) === null || _b === void 0 ? void 0 : _b.bindProducts) !== null && _c !== void 0 ? _c : [1, 2]);
|
17
|
+
const handleClick = (0, lodash_1.throttle)((item) => {
|
18
|
+
ctaEvent === null || ctaEvent === void 0 ? void 0 : ctaEvent({
|
19
|
+
eventSubject: 'clickCta',
|
20
|
+
eventDescription: 'User clicked the CTA'
|
21
|
+
}, recData, item);
|
22
|
+
setPopupDetailData === null || setPopupDetailData === void 0 ? void 0 : setPopupDetailData(Object.assign(Object.assign({}, recData), { video: Object.assign(Object.assign({}, recData === null || recData === void 0 ? void 0 : recData.video), { bindProduct: item }) }));
|
23
|
+
onClick === null || onClick === void 0 ? void 0 : onClick();
|
24
|
+
}, 1200);
|
25
|
+
return (react_1.default.createElement(Scroll_1.default, null, products === null || products === void 0 ? void 0 : products.map((item) => {
|
26
|
+
var _a, _b, _c, _d, _e, _f;
|
27
|
+
return (react_1.default.createElement(react_2.SwiperSlide, Object.assign({ hidden: recData && !(item === null || item === void 0 ? void 0 : item.bindCta), key: item === null || item === void 0 ? void 0 : item.itemId, className: (0, css_1.css)(Object.assign(Object.assign({}, style), { maxWidth: '236px', width: '100%', flexShrink: 0 })) }, props, { onClick: () => handleClick(item) }),
|
28
|
+
react_1.default.createElement("div", { className: (0, css_1.css)({
|
29
|
+
width: '60px',
|
30
|
+
height: '60px',
|
31
|
+
marginRight: '8px',
|
32
|
+
borderRadius: '3px',
|
33
|
+
overflow: 'hidden',
|
34
|
+
flexShrink: 0,
|
35
|
+
backgroundColor: '#f2f2f2'
|
36
|
+
}) },
|
37
|
+
react_1.default.createElement(Img_1.default, { src: (_c = (_b = (_a = item === null || item === void 0 ? void 0 : item.homePage) === null || _a === void 0 ? void 0 : _a[0]) !== null && _b !== void 0 ? _b : sxpParameter === null || sxpParameter === void 0 ? void 0 : sxpParameter.bottom_image) !== null && _c !== void 0 ? _c : bottom_image, rec: recData, item: item })),
|
38
|
+
react_1.default.createElement("div", { className: (0, css_1.css)({
|
39
|
+
color: '#000',
|
40
|
+
display: 'flex',
|
41
|
+
flexDirection: 'column',
|
42
|
+
justifyContent: 'space-between',
|
43
|
+
width: '100%',
|
44
|
+
overflow: 'hidden'
|
45
|
+
}) },
|
46
|
+
react_1.default.createElement("div", { className: index_module_less_1.default['two-line-ellipsis'] }, (_d = item === null || item === void 0 ? void 0 : item.title) !== null && _d !== void 0 ? _d : 'Product Name'),
|
47
|
+
react_1.default.createElement("div", { className: (0, css_1.css)({
|
48
|
+
background: 'rgba(0,0,0,1)',
|
49
|
+
fontSize: '10px',
|
50
|
+
padding: '2px 7px',
|
51
|
+
textAlign: 'center',
|
52
|
+
textOverflow: 'ellipsis',
|
53
|
+
overflow: 'hidden',
|
54
|
+
borderRadius: '25px',
|
55
|
+
width: 'fit-content',
|
56
|
+
maxWidth: '100%',
|
57
|
+
color: '#fff',
|
58
|
+
whiteSpace: 'nowrap'
|
59
|
+
}) }, (_f = (_e = item === null || item === void 0 ? void 0 : item.bindCta) === null || _e === void 0 ? void 0 : _e.enTitle) !== null && _f !== void 0 ? _f : 'Shop Now'))));
|
60
|
+
})));
|
61
|
+
};
|
62
|
+
exports.default = (0, react_1.memo)(MultiCommodityDiro);
|
@@ -0,0 +1,30 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.MultiCommodityDiro = void 0;
|
4
|
+
const tslib_1 = require("tslib");
|
5
|
+
const interactionRender_1 = tslib_1.__importDefault(require("./interactionRender"));
|
6
|
+
const _1 = tslib_1.__importDefault(require("."));
|
7
|
+
const create_1 = require("../../../../core/create");
|
8
|
+
const MultiCommodityDiro = (0, create_1.createMaterial)(_1.default, {
|
9
|
+
displayName: '推荐多商品-白底圆角按钮',
|
10
|
+
icon: '',
|
11
|
+
category: 'template',
|
12
|
+
type: 'MultiCommodityDiro',
|
13
|
+
related: {
|
14
|
+
interactionRender: interactionRender_1.default,
|
15
|
+
bindableProps: []
|
16
|
+
},
|
17
|
+
defaulSetting: {
|
18
|
+
props: {},
|
19
|
+
style: {
|
20
|
+
padding: '7px',
|
21
|
+
display: 'flex',
|
22
|
+
background: '#fff',
|
23
|
+
borderRadius: '3px'
|
24
|
+
}
|
25
|
+
},
|
26
|
+
w: 100,
|
27
|
+
h: 40,
|
28
|
+
sort: 4
|
29
|
+
});
|
30
|
+
exports.MultiCommodityDiro = MultiCommodityDiro;
|
@@ -0,0 +1,12 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import { RecItemType } from '../../../../core/components/SxpPageRender/typing';
|
3
|
+
export interface IMultiCommodityDiroNewProps {
|
4
|
+
content?: string;
|
5
|
+
style?: Record<string, any>;
|
6
|
+
bgImg?: Record<string, any> | string;
|
7
|
+
recData?: RecItemType;
|
8
|
+
onClick?: () => void;
|
9
|
+
bottom_image?: string;
|
10
|
+
}
|
11
|
+
declare const _default: React.NamedExoticComponent<IMultiCommodityDiroNewProps>;
|
12
|
+
export default _default;
|
@@ -0,0 +1,61 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
const tslib_1 = require("tslib");
|
4
|
+
const css_1 = require("@emotion/css");
|
5
|
+
const react_1 = tslib_1.__importStar(require("react"));
|
6
|
+
const react_2 = require("swiper/react");
|
7
|
+
const lodash_1 = require("lodash");
|
8
|
+
const Scroll_1 = tslib_1.__importDefault(require("../components/Scroll"));
|
9
|
+
const Img_1 = tslib_1.__importDefault(require("../components/Img"));
|
10
|
+
const index_module_less_1 = tslib_1.__importDefault(require("./index.module.less"));
|
11
|
+
const hooks_1 = require("../../../../core/hooks");
|
12
|
+
const MultiCommodityDiroNew = (_a) => {
|
13
|
+
var _b, _c;
|
14
|
+
var { content, style, bgImg, recData, onClick, bottom_image } = _a, props = tslib_1.__rest(_a, ["content", "style", "bgImg", "recData", "onClick", "bottom_image"]);
|
15
|
+
const { ctaEvent, setPopupDetailData, sxpParameter } = (0, hooks_1.useSxpDataSource)();
|
16
|
+
const [products, setProducts] = (0, react_1.useState)((_c = (_b = recData === null || recData === void 0 ? void 0 : recData.video) === null || _b === void 0 ? void 0 : _b.bindProducts) !== null && _c !== void 0 ? _c : [1, 2]);
|
17
|
+
const handleClick = (0, lodash_1.throttle)((item) => {
|
18
|
+
ctaEvent === null || ctaEvent === void 0 ? void 0 : ctaEvent({
|
19
|
+
eventSubject: 'clickCta',
|
20
|
+
eventDescription: 'User clicked the CTA'
|
21
|
+
}, recData, item);
|
22
|
+
setPopupDetailData === null || setPopupDetailData === void 0 ? void 0 : setPopupDetailData(Object.assign(Object.assign({}, recData), { video: Object.assign(Object.assign({}, recData === null || recData === void 0 ? void 0 : recData.video), { bindProduct: item }) }));
|
23
|
+
onClick === null || onClick === void 0 ? void 0 : onClick();
|
24
|
+
}, 1200);
|
25
|
+
return (react_1.default.createElement(Scroll_1.default, null, products === null || products === void 0 ? void 0 : products.map((item) => {
|
26
|
+
var _a, _b, _c, _d, _e, _f;
|
27
|
+
return (react_1.default.createElement(react_2.SwiperSlide, Object.assign({ hidden: recData && !(item === null || item === void 0 ? void 0 : item.bindCta), key: item === null || item === void 0 ? void 0 : item.itemId, className: (0, css_1.css)(Object.assign(Object.assign({}, style), { maxWidth: '260px', width: '100%', flexShrink: 0, padding: '4px', background: 'rgba(255,255,255,0.75)' })) }, props, { onClick: () => handleClick(item) }),
|
28
|
+
react_1.default.createElement("div", { className: (0, css_1.css)({
|
29
|
+
width: '78px',
|
30
|
+
height: '78px',
|
31
|
+
marginRight: '16px',
|
32
|
+
borderRadius: '8px',
|
33
|
+
overflow: 'hidden',
|
34
|
+
flexShrink: 0,
|
35
|
+
backgroundColor: '#f2f2f2'
|
36
|
+
}) },
|
37
|
+
react_1.default.createElement(Img_1.default, { src: (_c = (_b = (_a = item === null || item === void 0 ? void 0 : item.homePage) === null || _a === void 0 ? void 0 : _a[0]) !== null && _b !== void 0 ? _b : sxpParameter === null || sxpParameter === void 0 ? void 0 : sxpParameter.bottom_image) !== null && _c !== void 0 ? _c : bottom_image, rec: recData, item: item })),
|
38
|
+
react_1.default.createElement("div", { className: (0, css_1.css)({
|
39
|
+
color: '#fff',
|
40
|
+
display: 'flex',
|
41
|
+
flexDirection: 'column',
|
42
|
+
justifyContent: 'center',
|
43
|
+
width: '100%',
|
44
|
+
overflow: 'hidden',
|
45
|
+
lineHeight: '20px'
|
46
|
+
}) },
|
47
|
+
react_1.default.createElement("div", { className: index_module_less_1.default['tow-line-ellipsis'] }, (_d = item === null || item === void 0 ? void 0 : item.title) !== null && _d !== void 0 ? _d : 'Product Name'),
|
48
|
+
react_1.default.createElement("div", { className: (0, css_1.css)({
|
49
|
+
fontSize: '13px',
|
50
|
+
fontWeight: 'bold',
|
51
|
+
textOverflow: 'ellipsis',
|
52
|
+
overflow: 'hidden',
|
53
|
+
width: 'fit-content',
|
54
|
+
maxWidth: '100%',
|
55
|
+
whiteSpace: 'nowrap',
|
56
|
+
textDecoration: 'underline',
|
57
|
+
color: '#000'
|
58
|
+
}) }, (_f = (_e = item === null || item === void 0 ? void 0 : item.bindCta) === null || _e === void 0 ? void 0 : _e.enTitle) !== null && _f !== void 0 ? _f : 'Shop now'))));
|
59
|
+
})));
|
60
|
+
};
|
61
|
+
exports.default = (0, react_1.memo)(MultiCommodityDiroNew);
|