@anker-in/headless-ui 0.0.27-alpha.87 → 0.0.27-alpha.89
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/biz-components/AccordionCards/index.d.ts +1 -2
- package/dist/cjs/biz-components/AccordionCards/index.js +1 -1
- package/dist/cjs/biz-components/AccordionCards/index.js.map +3 -3
- package/dist/cjs/biz-components/Category/index.d.ts +0 -1
- package/dist/cjs/biz-components/Category/index.js +1 -1
- package/dist/cjs/biz-components/Category/index.js.map +3 -3
- package/dist/cjs/biz-components/Evaluate/index.d.ts +0 -1
- package/dist/cjs/biz-components/Evaluate/index.js +1 -1
- package/dist/cjs/biz-components/Evaluate/index.js.map +3 -3
- package/dist/cjs/biz-components/Graphic/index.d.ts +0 -1
- package/dist/cjs/biz-components/Graphic/index.js +1 -1
- package/dist/cjs/biz-components/Graphic/index.js.map +3 -3
- package/dist/cjs/biz-components/GraphicAttractionBlock/index.d.ts +0 -1
- package/dist/cjs/biz-components/GraphicAttractionBlock/index.js +1 -1
- package/dist/cjs/biz-components/GraphicAttractionBlock/index.js.map +3 -3
- package/dist/cjs/biz-components/HeroBanner/HeroBanner.js +1 -1
- package/dist/cjs/biz-components/HeroBanner/HeroBanner.js.map +3 -3
- package/dist/cjs/biz-components/Marquee/Marquee.d.ts +8 -23
- package/dist/cjs/biz-components/Marquee/Marquee.js +1 -1
- package/dist/cjs/biz-components/Marquee/Marquee.js.map +3 -3
- package/dist/cjs/biz-components/Marquee/index.d.ts +1 -2
- package/dist/cjs/biz-components/Marquee/index.js +1 -1
- package/dist/cjs/biz-components/Marquee/index.js.map +1 -1
- package/dist/cjs/biz-components/Marquee/type.d.ts +30 -0
- package/dist/cjs/biz-components/Marquee/type.js +2 -0
- package/dist/cjs/biz-components/Marquee/type.js.map +7 -0
- package/dist/cjs/biz-components/MediaPlayerBase/index.js +1 -1
- package/dist/cjs/biz-components/MediaPlayerBase/index.js.map +3 -3
- package/dist/cjs/biz-components/MediaPlayerMulti/index.js +1 -1
- package/dist/cjs/biz-components/MediaPlayerMulti/index.js.map +3 -3
- package/dist/cjs/biz-components/MediaPlayerMulti/types.d.ts +0 -1
- package/dist/cjs/biz-components/MediaPlayerMulti/types.js +1 -1
- package/dist/cjs/biz-components/MediaPlayerMulti/types.js.map +1 -1
- package/dist/cjs/biz-components/MediaPlayerSticky/index.js +1 -1
- package/dist/cjs/biz-components/MediaPlayerSticky/index.js.map +3 -3
- package/dist/cjs/biz-components/MediaPlayerSticky/types.d.ts +0 -1
- package/dist/cjs/biz-components/MediaPlayerSticky/types.js.map +1 -1
- package/dist/cjs/biz-components/MultiLayoutGraphicBlock/MultiLayoutGraphicBlock.js +1 -1
- package/dist/cjs/biz-components/MultiLayoutGraphicBlock/MultiLayoutGraphicBlock.js.map +3 -3
- package/dist/cjs/biz-components/MultiLayoutGraphicBlock/types.d.ts +0 -1
- package/dist/cjs/biz-components/MultiLayoutGraphicBlock/types.js +1 -1
- package/dist/cjs/biz-components/MultiLayoutGraphicBlock/types.js.map +1 -1
- package/dist/cjs/biz-components/ShelfDisplay/index.d.ts +0 -1
- package/dist/cjs/biz-components/ShelfDisplay/index.js +3 -3
- package/dist/cjs/biz-components/ShelfDisplay/index.js.map +3 -3
- package/dist/cjs/biz-components/Slogan/index.js +1 -1
- package/dist/cjs/biz-components/Slogan/index.js.map +3 -3
- package/dist/cjs/biz-components/Slogan/types.d.ts +0 -1
- package/dist/cjs/biz-components/Slogan/types.js.map +1 -1
- package/dist/cjs/biz-components/Tabs/Tabs.js +1 -1
- package/dist/cjs/biz-components/Tabs/Tabs.js.map +3 -3
- package/dist/cjs/biz-components/Tabs/types.d.ts +0 -1
- package/dist/cjs/biz-components/Tabs/types.js.map +1 -1
- package/dist/cjs/biz-components/Title/index.js +1 -1
- package/dist/cjs/biz-components/Title/index.js.map +3 -3
- package/dist/cjs/biz-components/Title/types.d.ts +0 -1
- package/dist/cjs/biz-components/Title/types.js +1 -1
- package/dist/cjs/biz-components/Title/types.js.map +1 -1
- package/dist/cjs/biz-components/index.d.ts +1 -1
- package/dist/cjs/biz-components/index.js +1 -1
- package/dist/cjs/biz-components/index.js.map +2 -2
- package/dist/cjs/stories/HeroBanner.stories.js +1 -1
- package/dist/cjs/stories/HeroBanner.stories.js.map +3 -3
- package/dist/cjs/stories/MultiLayoutGraphicBlock.stories.js +1 -1
- package/dist/cjs/stories/MultiLayoutGraphicBlock.stories.js.map +2 -2
- package/dist/cjs/stories/accordionCards.stories.d.ts +1 -2
- package/dist/cjs/stories/accordionCards.stories.js +1 -1
- package/dist/cjs/stories/accordionCards.stories.js.map +2 -2
- package/dist/cjs/stories/category.stories.js +1 -1
- package/dist/cjs/stories/category.stories.js.map +2 -2
- package/dist/cjs/stories/evaluate.stories.js +1 -1
- package/dist/cjs/stories/evaluate.stories.js.map +3 -3
- package/dist/cjs/stories/graphic.stories.d.ts +0 -1
- package/dist/cjs/stories/graphic.stories.js +1 -1
- package/dist/cjs/stories/graphic.stories.js.map +2 -2
- package/dist/cjs/stories/graphicAttractionBlock.stories.js +1 -1
- package/dist/cjs/stories/graphicAttractionBlock.stories.js.map +2 -2
- package/dist/cjs/stories/marquee.stories.d.ts +3 -25
- package/dist/cjs/stories/marquee.stories.js +1 -1
- package/dist/cjs/stories/marquee.stories.js.map +3 -3
- package/dist/cjs/stories/mediaplayerMulti.stories.js +1 -1
- package/dist/cjs/stories/mediaplayerMulti.stories.js.map +2 -2
- package/dist/cjs/stories/shelfDisplay.stories.js +1 -1
- package/dist/cjs/stories/shelfDisplay.stories.js.map +2 -2
- package/dist/cjs/stories/slogan.stories.js +1 -1
- package/dist/cjs/stories/slogan.stories.js.map +3 -3
- package/dist/esm/biz-components/AccordionCards/index.d.ts +1 -2
- package/dist/esm/biz-components/AccordionCards/index.js +1 -1
- package/dist/esm/biz-components/AccordionCards/index.js.map +3 -3
- package/dist/esm/biz-components/Category/index.d.ts +0 -1
- package/dist/esm/biz-components/Category/index.js +1 -1
- package/dist/esm/biz-components/Category/index.js.map +3 -3
- package/dist/esm/biz-components/Evaluate/index.d.ts +0 -1
- package/dist/esm/biz-components/Evaluate/index.js +1 -1
- package/dist/esm/biz-components/Evaluate/index.js.map +3 -3
- package/dist/esm/biz-components/Graphic/index.d.ts +0 -1
- package/dist/esm/biz-components/Graphic/index.js +1 -1
- package/dist/esm/biz-components/Graphic/index.js.map +3 -3
- package/dist/esm/biz-components/GraphicAttractionBlock/index.d.ts +0 -1
- package/dist/esm/biz-components/GraphicAttractionBlock/index.js +1 -1
- package/dist/esm/biz-components/GraphicAttractionBlock/index.js.map +3 -3
- package/dist/esm/biz-components/HeroBanner/HeroBanner.js +1 -1
- package/dist/esm/biz-components/HeroBanner/HeroBanner.js.map +3 -3
- package/dist/esm/biz-components/Marquee/Marquee.d.ts +8 -23
- package/dist/esm/biz-components/Marquee/Marquee.js +1 -1
- package/dist/esm/biz-components/Marquee/Marquee.js.map +3 -3
- package/dist/esm/biz-components/Marquee/index.d.ts +1 -2
- package/dist/esm/biz-components/Marquee/index.js +1 -1
- package/dist/esm/biz-components/Marquee/index.js.map +2 -2
- package/dist/esm/biz-components/Marquee/type.d.ts +30 -0
- package/dist/esm/biz-components/Marquee/type.js +1 -0
- package/dist/esm/biz-components/Marquee/type.js.map +7 -0
- package/dist/esm/biz-components/MediaPlayerBase/index.js +1 -1
- package/dist/esm/biz-components/MediaPlayerBase/index.js.map +3 -3
- package/dist/esm/biz-components/MediaPlayerMulti/index.js +1 -1
- package/dist/esm/biz-components/MediaPlayerMulti/index.js.map +3 -3
- package/dist/esm/biz-components/MediaPlayerMulti/types.d.ts +0 -1
- package/dist/esm/biz-components/MediaPlayerSticky/index.js +1 -1
- package/dist/esm/biz-components/MediaPlayerSticky/index.js.map +3 -3
- package/dist/esm/biz-components/MediaPlayerSticky/types.d.ts +0 -1
- package/dist/esm/biz-components/MultiLayoutGraphicBlock/MultiLayoutGraphicBlock.js +1 -1
- package/dist/esm/biz-components/MultiLayoutGraphicBlock/MultiLayoutGraphicBlock.js.map +3 -3
- package/dist/esm/biz-components/MultiLayoutGraphicBlock/types.d.ts +0 -1
- package/dist/esm/biz-components/ShelfDisplay/index.d.ts +0 -1
- package/dist/esm/biz-components/ShelfDisplay/index.js +3 -3
- package/dist/esm/biz-components/ShelfDisplay/index.js.map +3 -3
- package/dist/esm/biz-components/Slogan/index.js +1 -1
- package/dist/esm/biz-components/Slogan/index.js.map +3 -3
- package/dist/esm/biz-components/Slogan/types.d.ts +0 -1
- package/dist/esm/biz-components/Tabs/Tabs.js +1 -1
- package/dist/esm/biz-components/Tabs/Tabs.js.map +3 -3
- package/dist/esm/biz-components/Tabs/types.d.ts +0 -1
- package/dist/esm/biz-components/Title/index.js +1 -1
- package/dist/esm/biz-components/Title/index.js.map +3 -3
- package/dist/esm/biz-components/Title/types.d.ts +0 -1
- package/dist/esm/biz-components/index.d.ts +1 -1
- package/dist/esm/biz-components/index.js +1 -1
- package/dist/esm/biz-components/index.js.map +3 -3
- package/dist/esm/stories/HeroBanner.stories.js +2 -2
- package/dist/esm/stories/HeroBanner.stories.js.map +2 -2
- package/dist/esm/stories/MultiLayoutGraphicBlock.stories.js +1 -1
- package/dist/esm/stories/MultiLayoutGraphicBlock.stories.js.map +3 -3
- package/dist/esm/stories/accordionCards.stories.d.ts +1 -2
- package/dist/esm/stories/accordionCards.stories.js +1 -1
- package/dist/esm/stories/accordionCards.stories.js.map +3 -3
- package/dist/esm/stories/category.stories.js +1 -1
- package/dist/esm/stories/category.stories.js.map +3 -3
- package/dist/esm/stories/evaluate.stories.js +1 -1
- package/dist/esm/stories/evaluate.stories.js.map +3 -3
- package/dist/esm/stories/graphic.stories.d.ts +0 -1
- package/dist/esm/stories/graphic.stories.js +1 -1
- package/dist/esm/stories/graphic.stories.js.map +3 -3
- package/dist/esm/stories/graphicAttractionBlock.stories.js +1 -1
- package/dist/esm/stories/graphicAttractionBlock.stories.js.map +3 -3
- package/dist/esm/stories/marquee.stories.d.ts +3 -25
- package/dist/esm/stories/marquee.stories.js +1 -1
- package/dist/esm/stories/marquee.stories.js.map +3 -3
- package/dist/esm/stories/mediaplayerMulti.stories.js +1 -1
- package/dist/esm/stories/mediaplayerMulti.stories.js.map +3 -3
- package/dist/esm/stories/shelfDisplay.stories.js +1 -1
- package/dist/esm/stories/shelfDisplay.stories.js.map +3 -3
- package/dist/esm/stories/slogan.stories.js +2 -2
- package/dist/esm/stories/slogan.stories.js.map +3 -3
- package/package.json +4 -3
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/biz-components/ShelfDisplay/index.tsx"],
|
|
4
|
-
"sourcesContent": ["'use client'\nimport React, { useState, useEffect } from 'react'\nimport { cn } from '../../helpers/utils.js'\nimport Picture from '../../components/picture.js'\nimport { Tabs, TabsList, TabsTrigger } from '../../components/tabs.js'\nimport Button from '../../components/button.js'\nimport Title from '../Title/index.js'\nimport SwiperBox from '../SwiperBox/index.js'\nimport { withStyles } from '../../shared/Styles.js'\nimport { formatVariantPrice } from './shelfDisplay.js'\nimport { useMediaQuery } from 'react-responsive'\nexport interface ShelfDisplayItem {\n id?: string\n /** \u4EA7\u54C1\u56FE\u7247*/\n img?: {\n url: string\n }\n handle?: string\n sku?: string\n /** \u6298\u6263\u540E\u4EF7\u683C*/\n price?: string\n title?: string\n /** \u6298\u6263\u524D\u4EF7\u683C*/\n basePrice?: string\n subTitle?: string\n /** \u6807\u7B7E*/\n tagItems?: string[]\n tab?: string\n data?: ShelfDisplayItem[]\n}\n\ntype EventType = {\n primaryButton?: (v: any) => void\n secondaryButton?: (v: any) => void\n}\n\nexport interface ShelfDisplayProps {\n data: {\n title?: string\n isShowTab?: boolean\n direction?: 'horizontal' | 'vertical'\n align?: 'left' | 'center' | 'right'\n productsTab?: any\n productsCard?: any\n /** \u5361\u7247\u5F62\u72B6 */\n itemShape?: 'round' | 'square'\n /** \u6309\u94AE\u5F62\u72B6 */\n shape?: 'round' | 'square'\n /** \u6807\u7B7E\u9875\u5F62\u72B6*/\n tabShape?: 'rounded' | 'square'\n /** \u4E3B\u6309\u94AE\u914D\u7F6E */\n primaryButton?: string\n /** \u526F\u6309\u94AE\u914D\u7F6E */\n secondaryButton?: string\n }\n buildData?: {\n categories: any[]\n products: any[]\n }\n /** \u6309\u94AE\u4E8B\u4EF6*/\n event?: EventType\n /** \u4E3B\u9898\u8272*/\n theme?: 'light' | 'dark'\n className?: string\n key?: string\n
|
|
5
|
-
"mappings": "ukBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,aAAAE,IAAA,eAAAC,EAAAH,
|
|
6
|
-
"names": ["ShelfDisplay_exports", "__export", "ShelfDisplay_default", "__toCommonJS", "import_jsx_runtime", "import_react", "import_utils", "import_picture", "import_tabs", "import_button", "import_Title", "import_SwiperBox", "import_Styles", "import_shelfDisplay", "import_react_responsive", "ShelfDisplayItem", "data", "configuration", "onPrimaryButton", "params", "onSecondaryButton", "price", "basePrice", "handleUrl", "sku", "skuArray", "item", "Picture", "index", "Button", "ShelfDisplay", "buildData", "className", "key", "event", "
|
|
4
|
+
"sourcesContent": ["'use client'\nimport React, { useState, useEffect } from 'react'\nimport { cn } from '../../helpers/utils.js'\nimport Picture from '../../components/picture.js'\nimport { Tabs, TabsList, TabsTrigger } from '../../components/tabs.js'\nimport Button from '../../components/button.js'\nimport Title from '../Title/index.js'\nimport SwiperBox from '../SwiperBox/index.js'\nimport { withStyles } from '../../shared/Styles.js'\nimport { formatVariantPrice } from './shelfDisplay.js'\nimport { useMediaQuery } from 'react-responsive'\nexport interface ShelfDisplayItem {\n id?: string\n /** \u4EA7\u54C1\u56FE\u7247*/\n img?: {\n url: string\n }\n handle?: string\n sku?: string\n /** \u6298\u6263\u540E\u4EF7\u683C*/\n price?: string\n title?: string\n /** \u6298\u6263\u524D\u4EF7\u683C*/\n basePrice?: string\n subTitle?: string\n /** \u6807\u7B7E*/\n tagItems?: string[]\n tab?: string\n data?: ShelfDisplayItem[]\n}\n\ntype EventType = {\n primaryButton?: (v: any) => void\n secondaryButton?: (v: any) => void\n}\n\nexport interface ShelfDisplayProps {\n data: {\n title?: string\n isShowTab?: boolean\n direction?: 'horizontal' | 'vertical'\n align?: 'left' | 'center' | 'right'\n productsTab?: any\n productsCard?: any\n /** \u5361\u7247\u5F62\u72B6 */\n itemShape?: 'round' | 'square'\n /** \u6309\u94AE\u5F62\u72B6 */\n shape?: 'round' | 'square'\n /** \u6807\u7B7E\u9875\u5F62\u72B6*/\n tabShape?: 'rounded' | 'square'\n /** \u4E3B\u6309\u94AE\u914D\u7F6E */\n primaryButton?: string\n /** \u526F\u6309\u94AE\u914D\u7F6E */\n secondaryButton?: string\n }\n buildData?: {\n categories: any[]\n products: any[]\n }\n /** \u6309\u94AE\u4E8B\u4EF6*/\n event?: EventType\n /** \u4E3B\u9898\u8272*/\n theme?: 'light' | 'dark'\n className?: string\n key?: string\n}\n\nconst ShelfDisplayItem = ({ data, configuration }: { data: any; configuration?: any }) => {\n const onPrimaryButton = (params: ShelfDisplayItem) => configuration?.event?.primaryButton?.(params)\n\n const onSecondaryButton = (params: ShelfDisplayItem) => configuration?.event?.secondaryButton?.(params)\n\n const { price, basePrice } = formatVariantPrice({\n locale: 'us',\n amount: data?.price.amount || 0,\n baseAmount: data?.compareAtPrice?.amount || data?.price.amount || 0,\n currencyCode: data?.price.currencyCode || 'USD',\n })\n\n const handleUrl = () => {\n const sku = data?.sku\n const skuArray = data?.variants\n const findSku = skuArray?.find((item: any) => item?.sku === sku)\n return findSku?.image?.url || skuArray?.[0]?.image?.url || ''\n }\n\n return (\n <div\n key={data?.id || data?.handle}\n className={cn(\n 'laptop:pt-4 laptop:px-6 laptop:pb-6 flex size-full cursor-pointer flex-col overflow-hidden bg-[#EAEAEC] p-4 duration-300 hover:bg-[#FFFFFF]',\n configuration?.itemShape === 'round' ? 'rounded-2xl' : 'rounded-none'\n )}\n >\n <div className={cn('lg-desktop:mb-3 lg-desktop:h-[195px] relative mb-2 inline-block h-[140px] overflow-hidden')}>\n <Picture source={handleUrl()} className=\"flex h-full justify-center object-cover [&_img]:w-auto\" />\n </div>\n <div className=\"mb-1 box-border flex h-8 flex-wrap gap-1 overflow-hidden\">\n {data?.tags?.slice(0, 1)?.map?.((item: any, index: number) => {\n return (\n <div\n key={index}\n className=\"tablet:text-base box-border h-full rounded-2xl border-2 border-[#86868C] px-2 pt-1 text-sm font-bold text-[#1D1D1F]\"\n >\n {item}\n </div>\n )\n })}\n </div>\n <p\n title={data?.title || ''}\n className=\"desktop:text-2xl desktop:leading-7 line-clamp-2 max-h-[48px] flex-1 text-xl font-bold text-[#1D1D1F]\"\n >\n {data?.title || ''}\n </p>\n <h3\n title={data?.description || ''}\n className=\"tablet:mt-2 tablet:mb-3 desktop:text-lg mb-2 mt-1 h-6 truncate text-sm font-semibold text-[#1D1D1F]\"\n >\n {data?.description || ''}\n </h3>\n <div className=\"mb-2 flex items-center\">\n <div className=\"tablet:text-2xl text-xl font-bold text-[#1D1D1F]\">{price || ''}</div>\n <div className=\"tablet:text-2xl ml-1 text-xl font-bold text-[#86868C]\">{basePrice || ''}</div>\n </div>\n {/* \u6309\u94AE\u7EC4 */}\n <div className={cn('flex items-center gap-3', configuration.direction === 'vertical' ? 'flex-col' : '')}>\n <Button\n variant=\"primary\"\n onClick={() => onPrimaryButton(data)}\n className={`\n laptop:text-sm jus desktop:text-base laptop:px-6 desktop:px-7 laptop:py-2.5 desktop:py-3 box-border flex-1 border\n border-[#1D1D1F] bg-transparent px-4 py-2 text-xs text-[#1D1D1F] hover:bg-transparent hover:text-black\n ${configuration?.shape === 'round' ? 'desktop:rounded-3xl rounded-[20px]' : ''}\n ${configuration.direction === 'vertical' ? 'w-full' : ''}\n `}\n >\n {configuration?.primaryButton || ''}\n </Button>\n <Button\n variant=\"secondary\"\n onClick={() => onSecondaryButton(data)}\n className={`\n laptop:text-sm desktop:text-base laptop:px-6 desktop:px-7 laptop:py-2.5 desktop:py-3 box-border flex-1 border\n border-[#1D1D1F] bg-[#1D1D1F] px-4 py-2 text-xs tracking-[-0.04em] text-white\n ${configuration?.shape === 'round' ? 'desktop:rounded-3xl rounded-[20px]' : ''}\n ${configuration.direction === 'vertical' ? 'w-full' : ''}\n `}\n >\n {configuration?.secondaryButton || ''}\n </Button>\n </div>\n </div>\n )\n}\n\nconst ShelfDisplay: React.FC<ShelfDisplayProps> = ({ data, buildData, className = '', key, event }) => {\n const [tabId, setTabId] = useState<string>('')\n const [currentItems, setCurrentItems] = useState<ShelfDisplayItem[]>([])\n\n const isMobile = useMediaQuery({ query: '(max-width: 768px)' })\n\n const {\n productsTab = [],\n productsCard = [],\n title,\n align = 'left',\n isShowTab = true,\n tabShape = 'square',\n ...other\n } = data\n\n const handleCurrentTab = (currentData: ShelfDisplayItem[]) => {\n const newCurrentData = currentData\n ?.map(item => {\n const findData = buildData?.products?.find(params => params?.handle === item?.handle)\n if (findData) {\n return {\n sku: item.sku,\n ...findData,\n }\n }\n })\n ?.filter(item => item)\n setCurrentItems(newCurrentData)\n }\n\n useEffect(() => {\n if (isShowTab) {\n setTabId(productsTab?.[0]?.tab || '')\n handleCurrentTab(productsTab?.[0]?.data || [])\n return\n }\n handleCurrentTab(productsCard)\n }, [])\n\n return (\n <div className={cn('w-full', className)}>\n {title && <Title data={{ title: title }} />}\n {isShowTab && (\n <div className={`${isMobile ? 'w-full overflow-hidden' : ''}`}>\n <Tabs\n shape={tabShape}\n align={align}\n value={tabId}\n onValueChange={v => {\n setTabId(v)\n const findData = productsTab?.find((item: any) => item?.tab === v)\n handleCurrentTab(findData?.data || [])\n }}\n className=\"mb-8\"\n >\n <TabsList>\n {productsTab?.map((item: any, index: number) => {\n return (\n <TabsTrigger key={index} value={item?.tab || ''}>\n {item?.tab}\n </TabsTrigger>\n )\n })}\n </TabsList>\n </Tabs>\n </div>\n )}\n <SwiperBox\n className=\"!overflow-visible\"\n id={'ShelfDisplay' + key}\n data={{ list: currentItems, configuration: { ...other, event: event } }}\n Slide={ShelfDisplayItem}\n breakpoints={{\n 0: {\n spaceBetween: 12,\n freeMode: false,\n slidesPerView: 1,\n },\n 374: {\n spaceBetween: 12,\n freeMode: false,\n slidesPerView: 1.1,\n },\n 768: {\n spaceBetween: 16,\n freeMode: false,\n slidesPerView: 2,\n },\n 1024: {\n spaceBetween: 16,\n freeMode: false,\n slidesPerView: 3,\n },\n 1440: {\n spaceBetween: 16,\n freeMode: false,\n slidesPerView: 4,\n },\n }}\n />\n </div>\n )\n}\n\nexport default withStyles(ShelfDisplay)\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["ShelfDisplay_exports", "__export", "ShelfDisplay_default", "__toCommonJS", "import_jsx_runtime", "import_react", "import_utils", "import_picture", "import_tabs", "import_button", "import_Title", "import_SwiperBox", "import_Styles", "import_shelfDisplay", "import_react_responsive", "ShelfDisplayItem", "data", "configuration", "onPrimaryButton", "params", "onSecondaryButton", "price", "basePrice", "handleUrl", "sku", "skuArray", "item", "Picture", "index", "Button", "ShelfDisplay", "buildData", "className", "key", "event", "tabId", "setTabId", "currentItems", "setCurrentItems", "isMobile", "productsTab", "productsCard", "title", "align", "isShowTab", "tabShape", "other", "handleCurrentTab", "currentData", "newCurrentData", "findData", "Title", "v", "SwiperBox"]
|
|
7
7
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";"use client";var
|
|
1
|
+
"use strict";"use client";var q=Object.create;var d=Object.defineProperty;var B=Object.getOwnPropertyDescriptor;var J=Object.getOwnPropertyNames;var K=Object.getPrototypeOf,O=Object.prototype.hasOwnProperty;var Q=(t,e)=>{for(var r in e)d(t,r,{get:e[r],enumerable:!0})},$=(t,e,r,l)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of J(e))!O.call(t,o)&&o!==r&&d(t,o,{get:()=>e[o],enumerable:!(l=B(e,o))||l.enumerable});return t};var V=(t,e,r)=>(r=t!=null?q(K(t)):{},$(e||!t||!t.__esModule?d(r,"default",{value:t,enumerable:!0}):r,t)),W=t=>$(d({},"__esModule",{value:!0}),t);var _={};Q(_,{default:()=>Z});module.exports=W(_);var s=require("react/jsx-runtime"),n=V(require("react")),M=require("@gsap/react"),h=require("gsap"),F=require("gsap/dist/SplitText"),v=require("gsap/dist/ScrollTrigger"),c=require("../../helpers/utils.js"),w=require("../../components/index.js"),A=require("../../shared/Styles.js");function X(t=[],e=3){const r=[];for(let l=0;l<t.length;l+=e)r.push(t.slice(l,l+e));return r}const G=n.default.forwardRef(({data:t,className:e=""},r)=>{const{title:l,features:o=[],featureChunkSize:D=3,theme:H}=t,[b,N]=n.default.useState(0),[C,y]=n.default.useState(!0),g=X(o,D),T=g.length,u=o.length>D,L=u?[...g,g[0]]:g,S=40;n.default.useEffect(()=>{if(!u)return;const a=setInterval(()=>{N(i=>i+1),y(!0)},3e3);return()=>clearInterval(a)},[T,u]),n.default.useEffect(()=>{if(u)if(b===T){const a=setTimeout(()=>{y(!1),N(0)},500);return()=>clearTimeout(a)}else y(!0)},[b,T,u]);const f=(0,n.useRef)(null),E=(0,n.useRef)(null),m=(0,n.useRef)(null);return(0,M.useGSAP)(()=>{if(!f.current)return;m.current=new F.SplitText(f.current,{type:"words",wordsClass:"word"});const a=f.current?.clientHeight||100;console.log("splitTextInstance",m);const i=m.current.words;return h.gsap.set(i,{opacity:0}),v.ScrollTrigger.create({trigger:f.current,start:"bottom bottom-=6%",end:`bottom+=${a*2+80}px bottom-=6%`,scrub:!0,onUpdate:p=>{const x=p.progress,I=i.length,P=1/I,R=.5;i.forEach((j,z)=>{const U=z/I*(1-R),Y=P*(1+R);let k=(x-U)/Y;k=Math.max(0,Math.min(k,1)),h.gsap.set(j,{opacity:k})})}}),o&&o.length>0&&v.ScrollTrigger.create({trigger:E.current,start:`bottom+=${a*2}px bottom-=6%`,end:`bottom+=${a*2+100}px bottom-=6%`,onUpdate:p=>{h.gsap.set(E.current,{opacity:p.progress})}}),()=>{m.current&&m.current.revert(),v.ScrollTrigger.getAll().forEach(p=>p.kill())}},[]),(0,s.jsxs)("div",{ref:r,className:(0,c.cn)("laptop:flex-row laptop:items-end laptop:justify-between text-info-primary laptop:min-h-[64px] lg-desktop:min-h-[128px] flex h-auto w-full flex-col items-start justify-center gap-[24px] text-center",e),children:[(0,s.jsx)(w.Heading,{ref:f,as:"h2",size:2,weight:"bold",align:"left",className:(0,c.cn)("slogan-title laptop:text-[40px] desktop:text-[48px] lg-desktop:text-[64px] text-[40px] !leading-none",{"text-[#1D1D1F]":H!=="dark","text-[#fff]":H==="dark"}),children:l}),o&&o.length>0&&(0,s.jsx)("div",{className:(0,c.cn)("relative h-12 w-full max-w-[500px] overflow-hidden",`tablet:h-[${S}px]`),children:(0,s.jsx)("div",{className:(0,c.cn)(["flex flex-col",C?"transition-transform duration-500 ease-[cubic-bezier(.4,0,.2,1)]":"!transition-none"]),style:{transform:`translateY(-${b*S}px)`},children:L.map((a,i)=>(0,s.jsx)("div",{className:(0,c.cn)("flex h-12 w-full flex-row items-stretch gap-3 overflow-hidden",`tablet:h-[${S}px]`),children:a.map((p,x)=>(0,s.jsxs)(n.default.Fragment,{children:[x>0&&(0,s.jsx)("div",{className:"slogan-feature-divider w-px self-stretch bg-[#D9D9D9]"}),(0,s.jsx)(w.Text,{align:"left",as:"p",className:"slogan-feature-text tablet:text-[13px] laptop:text-[14px] line-clamp-2 text-[12px] leading-[1.4] text-[#1D1D1F]",html:p.title})]},x))},i))})})]})});G.displayName="Slogan";var Z=(0,A.withStyles)(G);
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/biz-components/Slogan/index.tsx"],
|
|
4
|
-
"sourcesContent": ["'use client'\nimport React, { useRef } from 'react'\nimport { useGSAP } from '@gsap/react'\nimport { gsap } from 'gsap'\nimport { SplitText } from 'gsap/dist/SplitText'\nimport { ScrollTrigger } from 'gsap/dist/ScrollTrigger'\nimport { cn } from '../../helpers/utils.js'\nimport { Heading, Text } from '../../components/index.js'\nimport { withStyles } from '../../shared/Styles.js'\nimport type { SloganProps } from './types.js'\n\nfunction chunkArray(array: { title: string }[] = [], size: number = 3) {\n const result = []\n for (let i = 0; i < array.length; i += size) {\n result.push(array.slice(i, i + size))\n }\n return result\n}\n\nconst Slogan = React.forwardRef<HTMLDivElement, SloganProps>(({ data, className = ''
|
|
5
|
-
"mappings": "ukBAAA,IAAAA,
|
|
6
|
-
"names": ["Slogan_exports", "__export", "Slogan_default", "__toCommonJS", "import_jsx_runtime", "import_react", "import_gsap", "import_SplitText", "import_ScrollTrigger", "import_utils", "import_components", "import_Styles", "chunkArray", "array", "size", "result", "i", "Slogan", "React", "data", "className", "
|
|
4
|
+
"sourcesContent": ["'use client'\nimport React, { useRef } from 'react'\nimport { useGSAP } from '@gsap/react'\nimport { gsap } from 'gsap'\nimport { SplitText } from 'gsap/dist/SplitText'\nimport { ScrollTrigger } from 'gsap/dist/ScrollTrigger'\nimport { cn } from '../../helpers/utils.js'\nimport { Heading, Text } from '../../components/index.js'\nimport { withStyles } from '../../shared/Styles.js'\nimport type { SloganProps } from './types.js'\n\nfunction chunkArray(array: { title: string }[] = [], size: number = 3) {\n const result = []\n for (let i = 0; i < array.length; i += size) {\n result.push(array.slice(i, i + size))\n }\n return result\n}\n\nconst Slogan = React.forwardRef<HTMLDivElement, SloganProps>(({ data, className = '' }, ref) => {\n const { title, features = [], featureChunkSize = 3, theme } = data\n const [groupIndex, setGroupIndex] = React.useState(0)\n const [isTransitioning, setIsTransitioning] = React.useState(true)\n const featuresGroups = chunkArray(features, featureChunkSize)\n const totalGroups = featuresGroups.length\n const needCarousel = features.length > featureChunkSize\n const displayGroups = needCarousel ? [...featuresGroups, featuresGroups[0]] : featuresGroups\n const groupHeight = 40\n\n // \u53EA\u5728\u9700\u8981\u8F6E\u64AD\u65F6\u542F\u7528\u5B9A\u65F6\u5668\n React.useEffect(() => {\n if (!needCarousel) return\n const timer = setInterval(() => {\n setGroupIndex(i => i + 1)\n setIsTransitioning(true)\n }, 3000)\n return () => clearInterval(timer)\n }, [totalGroups, needCarousel])\n\n // \u53EA\u5728\u9700\u8981\u8F6E\u64AD\u65F6\u5904\u7406\u65E0\u7F1D\u8DF3\u8F6C\n React.useEffect(() => {\n if (!needCarousel) return\n if (groupIndex === totalGroups) {\n const handle = setTimeout(() => {\n setIsTransitioning(false)\n setGroupIndex(0)\n }, 500) // 500ms\u7B49\u4E8E\u52A8\u753B\u65F6\u957F\n return () => clearTimeout(handle)\n } else {\n setIsTransitioning(true)\n }\n }, [groupIndex, totalGroups, needCarousel])\n\n // \u6807\u9898\u52A8\u753B\u903B\u8F91\u4FDD\u6301\u4E0D\u53D8\n const titleRef = useRef<HTMLHeadingElement>(null)\n const featuresRef = useRef<HTMLDivElement>(null)\n const splitTextInstance = useRef<SplitText | null>(null)\n useGSAP(() => {\n if (!titleRef.current) return\n splitTextInstance.current = new SplitText(titleRef.current, {\n type: 'words',\n wordsClass: 'word',\n })\n const height = titleRef.current?.clientHeight || 100\n\n console.log('splitTextInstance', splitTextInstance)\n\n const words = splitTextInstance.current.words\n gsap.set(words, { opacity: 0 })\n ScrollTrigger.create({\n trigger: titleRef.current,\n start: 'bottom bottom-=6%',\n end: `bottom+=${height * 2 + 80}px bottom-=6%`,\n scrub: true,\n onUpdate: (self: any) => {\n const progress = self.progress\n const total = words.length\n const interval = 1 / total\n const overlap = 0.5\n words.forEach((word: any, i: number) => {\n const start = (i / total) * (1 - overlap)\n const width = interval * (1 + overlap)\n let opacity = (progress - start) / width\n opacity = Math.max(0, Math.min(opacity, 1))\n gsap.set(word, { opacity })\n })\n },\n })\n\n if (features && features.length > 0) {\n ScrollTrigger.create({\n trigger: featuresRef.current,\n start: `bottom+=${height * 2}px bottom-=6%`,\n end: `bottom+=${height * 2 + 100}px bottom-=6%`,\n onUpdate: (self: any) => {\n gsap.set(featuresRef.current, { opacity: self.progress })\n },\n })\n }\n\n return () => {\n splitTextInstance.current && splitTextInstance.current.revert()\n ScrollTrigger.getAll().forEach((t: any) => t.kill())\n }\n }, [])\n\n return (\n <div\n ref={ref}\n className={cn(\n 'laptop:flex-row laptop:items-end laptop:justify-between text-info-primary laptop:min-h-[64px] lg-desktop:min-h-[128px] flex h-auto w-full flex-col items-start justify-center gap-[24px] text-center',\n className\n )}\n >\n <Heading\n ref={titleRef}\n as=\"h2\"\n size={2}\n weight={'bold'}\n align={'left'}\n className={cn(\n 'slogan-title laptop:text-[40px] desktop:text-[48px] lg-desktop:text-[64px] text-[40px] !leading-none',\n {\n 'text-[#1D1D1F]': theme !== 'dark',\n 'text-[#fff]': theme === 'dark',\n }\n )}\n >\n {title}\n </Heading>\n {features && features.length > 0 && (\n <div className={cn('relative h-12 w-full max-w-[500px] overflow-hidden', `tablet:h-[${groupHeight}px]`)}>\n <div\n className={cn([\n 'flex flex-col',\n isTransitioning ? 'transition-transform duration-500 ease-[cubic-bezier(.4,0,.2,1)]' : '!transition-none',\n ])}\n style={{\n transform: `translateY(-${groupIndex * groupHeight}px)`,\n }}\n >\n {displayGroups.map((group, idx) => (\n <div\n className={cn(\n 'flex h-12 w-full flex-row items-stretch gap-3 overflow-hidden',\n `tablet:h-[${groupHeight}px]`\n )}\n key={idx}\n >\n {group.map((feature, index) => (\n <React.Fragment key={index}>\n {index > 0 && <div className=\"slogan-feature-divider w-px self-stretch bg-[#D9D9D9]\" />}\n <Text\n align=\"left\"\n as=\"p\"\n className=\"slogan-feature-text tablet:text-[13px] laptop:text-[14px] line-clamp-2 text-[12px] leading-[1.4] text-[#1D1D1F]\"\n html={feature.title}\n />\n </React.Fragment>\n ))}\n </div>\n ))}\n </div>\n </div>\n )}\n </div>\n )\n})\n\nSlogan.displayName = 'Slogan'\n\nexport default withStyles(Slogan)\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["Slogan_exports", "__export", "Slogan_default", "__toCommonJS", "import_jsx_runtime", "import_react", "import_gsap", "import_SplitText", "import_ScrollTrigger", "import_utils", "import_components", "import_Styles", "chunkArray", "array", "size", "result", "i", "Slogan", "React", "data", "className", "ref", "title", "features", "featureChunkSize", "theme", "groupIndex", "setGroupIndex", "isTransitioning", "setIsTransitioning", "featuresGroups", "totalGroups", "needCarousel", "displayGroups", "groupHeight", "timer", "handle", "titleRef", "featuresRef", "splitTextInstance", "height", "words", "self", "progress", "total", "interval", "overlap", "word", "start", "width", "opacity", "t", "group", "idx", "feature", "index"]
|
|
7
7
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/biz-components/Slogan/types.ts"],
|
|
4
|
-
"sourcesContent": ["import type { Theme } from '../../types/props.js'\nexport interface Feature {\n /**\n * \u7279\u6027\u6807\u9898\n */\n title: string\n}\n\nexport interface SloganProps {\n
|
|
4
|
+
"sourcesContent": ["import type { Theme } from '../../types/props.js'\nexport interface Feature {\n /**\n * \u7279\u6027\u6807\u9898\n */\n title: string\n}\n\nexport interface SloganProps {\n data: {\n /**\n * \u4E3B\u6807\u9898\n */\n title: string\n /**\n * \u7279\u6027\u5206\u7EC4\u5927\u5C0F \u9ED8\u8BA4\u4E3A3\n */\n featureChunkSize?: number\n /**\n * \u7279\u6027\u5217\u8868\n */\n features?: Feature[]\n /**\n * \u4E3B\u9898\n */\n theme?: Theme\n }\n /**\n * \u81EA\u5B9A\u4E49\u7C7B\u540D\n */\n className?: string\n}\n"],
|
|
5
5
|
"mappings": "+WAAA,IAAAA,EAAA,kBAAAC,EAAAD",
|
|
6
6
|
"names": ["types_exports", "__toCommonJS"]
|
|
7
7
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";"use client";var k=Object.create;var l=Object.defineProperty;var v=Object.getOwnPropertyDescriptor;var
|
|
1
|
+
"use strict";"use client";var k=Object.create;var l=Object.defineProperty;var v=Object.getOwnPropertyDescriptor;var P=Object.getOwnPropertyNames;var L=Object.getPrototypeOf,w=Object.prototype.hasOwnProperty;var B=(a,e)=>{for(var s in e)l(a,s,{get:e[s],enumerable:!0})},T=(a,e,s,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of P(e))!w.call(a,r)&&r!==s&&l(a,r,{get:()=>e[r],enumerable:!(o=v(e,r))||o.enumerable});return a};var m=(a,e,s)=>(s=a!=null?k(L(a)):{},T(e||!a||!a.__esModule?l(s,"default",{value:a,enumerable:!0}):s,a)),C=a=>T(l({},"__esModule",{value:!0}),a);var M={};B(M,{default:()=>G});module.exports=C(M);var i=require("react/jsx-runtime"),c=require("../../shared/Styles.js"),b=m(require("../../components/tabs.js")),f=require("../../helpers/index.js"),u=m(require("react")),d=m(require("../ShelfDisplay/index.js")),y=m(require("../MultiLayoutGraphicBlock/MultiLayoutGraphicBlock.js")),N=m(require("../Title/index.js"));const D=u.default.forwardRef(({data:a,className:e},s)=>{const{theme:o,shape:r,align:g,tabs:p,sectionTitle:n}=a,h=t=>t.blockType==="ipc-shelfdisplay"?(0,i.jsx)(d.default,{data:t}):t.blockType==="ipc-multiLayoutGraphicBlock"?(0,i.jsx)(y.default,{data:t}):null;return(0,i.jsxs)("section",{ref:s,className:(0,f.cn)(o==="dark"?"aiui-dark":"",e),children:[n&&(0,i.jsx)(N.default,{className:"section-title",data:{title:n}}),(0,i.jsxs)(b.Tabs,{shape:r,align:g,defaultValue:p[0].tabName,children:[(0,i.jsx)(b.TabsList,{className:"tabs-list",children:p.map(t=>(0,i.jsx)(b.TabsTrigger,{value:t.tabName,className:"tabs-trigger",children:t.tabName},t.tabName))}),p.map(t=>(0,i.jsx)(b.TabsContent,{value:t.tabName,className:"tabs-content",children:h(t.tabContent?.[0])},t.tabName))]})]})});var G=(0,c.withStyles)(D);
|
|
2
2
|
//# sourceMappingURL=Tabs.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/biz-components/Tabs/Tabs.tsx"],
|
|
4
|
-
"sourcesContent": ["'use client'\nimport { withStyles } from '../../shared/Styles.js'\nimport * as TabsPrimitive from '../../components/tabs.js'\nimport { cn } from '../../helpers/index.js'\nimport type { TabsProps } from './types.js'\nimport React from 'react'\nimport ShelfDisplay from '../ShelfDisplay/index.js'\nimport MultiLayoutGraphicBlock from '../MultiLayoutGraphicBlock/MultiLayoutGraphicBlock.js'\nimport Title from '../Title/index.js'\n\nconst Tabs = React.forwardRef<HTMLDivElement, TabsProps>(({ data, className
|
|
5
|
-
"mappings": "ukBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,aAAAE,IAAA,eAAAC,EAAAH,GAea,IAAAI,EAAA,6BAdbC,EAA2B,kCAC3BC,EAA+B,uCAC/BC,EAAmB,kCAEnBC,EAAkB,oBAClBC,EAAyB,uCACzBC,EAAoC,oEACpCC,EAAkB,gCAElB,MAAMC,EAAO,EAAAC,QAAM,WAAsC,CAAC,CAAE,KAAAC,EAAM,UAAAC,
|
|
6
|
-
"names": ["Tabs_exports", "__export", "Tabs_default", "__toCommonJS", "import_jsx_runtime", "import_Styles", "TabsPrimitive", "import_helpers", "import_react", "import_ShelfDisplay", "import_MultiLayoutGraphicBlock", "import_Title", "Tabs", "React", "data", "className", "
|
|
4
|
+
"sourcesContent": ["'use client'\nimport { withStyles } from '../../shared/Styles.js'\nimport * as TabsPrimitive from '../../components/tabs.js'\nimport { cn } from '../../helpers/index.js'\nimport type { TabsProps } from './types.js'\nimport React from 'react'\nimport ShelfDisplay from '../ShelfDisplay/index.js'\nimport MultiLayoutGraphicBlock from '../MultiLayoutGraphicBlock/MultiLayoutGraphicBlock.js'\nimport Title from '../Title/index.js'\n\nconst Tabs = React.forwardRef<HTMLDivElement, TabsProps>(({ data, className }, forwardedRef) => {\n const { theme, shape, align, tabs, sectionTitle } = data\n\n const renderTabContent = (tabContent: TabsProps['data']['tabs'][number]['tabContent'][number]) => {\n if (tabContent.blockType === 'ipc-shelfdisplay') {\n return <ShelfDisplay data={tabContent} />\n } else if (tabContent.blockType === 'ipc-multiLayoutGraphicBlock') {\n return <MultiLayoutGraphicBlock data={tabContent} />\n } else {\n return null\n }\n }\n\n return (\n <section ref={forwardedRef} className={cn(theme === 'dark' ? 'aiui-dark' : '', className)}>\n {sectionTitle && <Title className=\"section-title\" data={{ title: sectionTitle }} />}\n <TabsPrimitive.Tabs shape={shape} align={align} defaultValue={tabs[0].tabName}>\n <TabsPrimitive.TabsList className=\"tabs-list\">\n {tabs.map(tab => (\n <TabsPrimitive.TabsTrigger key={tab.tabName} value={tab.tabName} className=\"tabs-trigger\">\n {tab.tabName}\n </TabsPrimitive.TabsTrigger>\n ))}\n </TabsPrimitive.TabsList>\n {tabs.map(tab => (\n <TabsPrimitive.TabsContent key={tab.tabName} value={tab.tabName} className=\"tabs-content\">\n {renderTabContent(tab.tabContent?.[0])}\n </TabsPrimitive.TabsContent>\n ))}\n </TabsPrimitive.Tabs>\n </section>\n )\n})\n\nexport default withStyles(Tabs)\n"],
|
|
5
|
+
"mappings": "ukBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,aAAAE,IAAA,eAAAC,EAAAH,GAea,IAAAI,EAAA,6BAdbC,EAA2B,kCAC3BC,EAA+B,uCAC/BC,EAAmB,kCAEnBC,EAAkB,oBAClBC,EAAyB,uCACzBC,EAAoC,oEACpCC,EAAkB,gCAElB,MAAMC,EAAO,EAAAC,QAAM,WAAsC,CAAC,CAAE,KAAAC,EAAM,UAAAC,CAAU,EAAGC,IAAiB,CAC9F,KAAM,CAAE,MAAAC,EAAO,MAAAC,EAAO,MAAAC,EAAO,KAAAC,EAAM,aAAAC,CAAa,EAAIP,EAE9CQ,EAAoBC,GACpBA,EAAW,YAAc,sBACpB,OAAC,EAAAC,QAAA,CAAa,KAAMD,EAAY,EAC9BA,EAAW,YAAc,iCAC3B,OAAC,EAAAE,QAAA,CAAwB,KAAMF,EAAY,EAE3C,KAIX,SACE,QAAC,WAAQ,IAAKP,EAAc,aAAW,MAAGC,IAAU,OAAS,YAAc,GAAIF,CAAS,EACrF,UAAAM,MAAgB,OAAC,EAAAK,QAAA,CAAM,UAAU,gBAAgB,KAAM,CAAE,MAAOL,CAAa,EAAG,KACjF,QAACf,EAAc,KAAd,CAAmB,MAAOY,EAAO,MAAOC,EAAO,aAAcC,EAAK,CAAC,EAAE,QACpE,oBAACd,EAAc,SAAd,CAAuB,UAAU,YAC/B,SAAAc,EAAK,IAAIO,MACR,OAACrB,EAAc,YAAd,CAA4C,MAAOqB,EAAI,QAAS,UAAU,eACxE,SAAAA,EAAI,SADyBA,EAAI,OAEpC,CACD,EACH,EACCP,EAAK,IAAIO,MACR,OAACrB,EAAc,YAAd,CAA4C,MAAOqB,EAAI,QAAS,UAAU,eACxE,SAAAL,EAAiBK,EAAI,aAAa,CAAC,CAAC,GADPA,EAAI,OAEpC,CACD,GACH,GACF,CAEJ,CAAC,EAED,IAAOzB,KAAQ,cAAWU,CAAI",
|
|
6
|
+
"names": ["Tabs_exports", "__export", "Tabs_default", "__toCommonJS", "import_jsx_runtime", "import_Styles", "TabsPrimitive", "import_helpers", "import_react", "import_ShelfDisplay", "import_MultiLayoutGraphicBlock", "import_Title", "Tabs", "React", "data", "className", "forwardedRef", "theme", "shape", "align", "tabs", "sectionTitle", "renderTabContent", "tabContent", "ShelfDisplay", "MultiLayoutGraphicBlock", "Title", "tab"]
|
|
7
7
|
}
|
|
@@ -2,7 +2,6 @@ import type { Align, Shape, Theme } from '../../types/props.js';
|
|
|
2
2
|
import type { MultiLayoutGraphicBlockProps } from '../MultiLayoutGraphicBlock/types.js';
|
|
3
3
|
import type { ShelfDisplayProps } from '../ShelfDisplay/index.js';
|
|
4
4
|
export type TabsProps = {
|
|
5
|
-
GSAP?: any;
|
|
6
5
|
data: {
|
|
7
6
|
sectionTitle?: string;
|
|
8
7
|
theme: Theme;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/biz-components/Tabs/types.ts"],
|
|
4
|
-
"sourcesContent": ["import type { Align, Shape, Theme } from '../../types/props.js'\nimport type { MultiLayoutGraphicBlockProps } from '../MultiLayoutGraphicBlock/types.js'\nimport type { ShelfDisplayProps } from '../ShelfDisplay/index.js'\n\nexport type TabsProps = {\n
|
|
4
|
+
"sourcesContent": ["import type { Align, Shape, Theme } from '../../types/props.js'\nimport type { MultiLayoutGraphicBlockProps } from '../MultiLayoutGraphicBlock/types.js'\nimport type { ShelfDisplayProps } from '../ShelfDisplay/index.js'\n\nexport type TabsProps = {\n data: {\n sectionTitle?: string\n theme: Theme\n shape: Shape\n align: Align\n tabs: {\n tabName: string\n tabContent:\n | (ShelfDisplayProps['data'] & { blockType: 'ipc-shelfdisplay' })[]\n | (MultiLayoutGraphicBlockProps['data'] & { blockType: 'ipc-multiLayoutGraphicBlock' })[]\n }[]\n }\n className?: string\n}\n"],
|
|
5
5
|
"mappings": "+WAAA,IAAAA,EAAA,kBAAAC,EAAAD",
|
|
6
6
|
"names": ["types_exports", "__toCommonJS"]
|
|
7
7
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";"use client";var
|
|
1
|
+
"use strict";"use client";var A=Object.create;var l=Object.defineProperty;var L=Object.getOwnPropertyDescriptor;var N=Object.getOwnPropertyNames;var z=Object.getPrototypeOf,C=Object.prototype.hasOwnProperty;var D=(t,r)=>{for(var e in r)l(t,e,{get:r[e],enumerable:!0})},h=(t,r,e,s)=>{if(r&&typeof r=="object"||typeof r=="function")for(let o of N(r))!C.call(t,o)&&o!==e&&l(t,o,{get:()=>r[o],enumerable:!(s=L(r,o))||s.enumerable});return t};var G=(t,r,e)=>(e=t!=null?A(z(t)):{},h(r||!t||!t.__esModule?l(e,"default",{value:t,enumerable:!0}):e,t)),I=t=>h(l({},"__esModule",{value:!0}),t);var $={};D($,{default:()=>U});module.exports=I($);var f=require("react/jsx-runtime"),n=G(require("react")),T=require("@gsap/react"),p=require("gsap"),b=require("gsap/dist/SplitText"),u=require("gsap/dist/ScrollTrigger"),w=require("../../helpers/utils.js"),x=require("../../components/index.js"),v=require("../../shared/Styles.js");const y=n.default.forwardRef(({data:t,className:r})=>{const{title:e,theme:s}=t,o=(0,n.useRef)(null),i=(0,n.useRef)(null);return(0,T.useGSAP)(()=>{if(!o.current)return;const H=o.current?.clientHeight||80;i.current=new b.SplitText(o.current,{type:"words",wordsClass:"word"});const a=i.current.words;return p.gsap.set(a,{opacity:0}),u.ScrollTrigger.create({trigger:o.current,start:"bottom bottom-=6%",end:`bottom+=${H*2+40}px bottom-=6%`,scrub:!0,onUpdate:c=>{const S=c.progress,d=a.length,k=1/d,g=.5;a.forEach((E,M)=>{const R=M/d*(1-g),P=k*(1+g);let m=(S-R)/P;m=Math.max(0,Math.min(m,1)),p.gsap.set(E,{opacity:m})})}}),()=>{i.current&&i.current.revert(),u.ScrollTrigger.getAll().forEach(c=>c.kill())}},[]),e&&(0,f.jsx)("div",{className:(0,w.cn)("tablet:mb-[32px] mb-[24px] space-y-4",r,{"aiui-dark":s==="dark"}),children:(0,f.jsx)(x.Heading,{ref:o,as:"h2",size:5,html:e})})});y.displayName="Title";var U=(0,v.withStyles)(y);
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/biz-components/Title/index.tsx"],
|
|
4
|
-
"sourcesContent": ["'use client'\nimport React, { useRef } from 'react'\nimport { useGSAP } from '@gsap/react'\nimport { gsap } from 'gsap'\nimport { SplitText } from 'gsap/dist/SplitText'\nimport { ScrollTrigger } from 'gsap/dist/ScrollTrigger'\nimport { cn } from '../../helpers/utils.js'\nimport { Heading } from '../../components/index.js'\nimport { withStyles } from '../../shared/Styles.js'\nimport type { TitleProps } from './types.js'\n\nconst Title = React.forwardRef<HTMLDivElement, TitleProps>(({ data, className
|
|
5
|
-
"mappings": "ukBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,aAAAE,IAAA,eAAAC,EAAAH,
|
|
6
|
-
"names": ["Title_exports", "__export", "Title_default", "__toCommonJS", "import_jsx_runtime", "import_react", "import_gsap", "import_SplitText", "import_ScrollTrigger", "import_utils", "import_components", "import_Styles", "Title", "React", "data", "className", "
|
|
4
|
+
"sourcesContent": ["'use client'\nimport React, { useRef } from 'react'\nimport { useGSAP } from '@gsap/react'\nimport { gsap } from 'gsap'\nimport { SplitText } from 'gsap/dist/SplitText'\nimport { ScrollTrigger } from 'gsap/dist/ScrollTrigger'\nimport { cn } from '../../helpers/utils.js'\nimport { Heading } from '../../components/index.js'\nimport { withStyles } from '../../shared/Styles.js'\nimport type { TitleProps } from './types.js'\n\nconst Title = React.forwardRef<HTMLDivElement, TitleProps>(({ data, className }) => {\n const { title, theme } = data\n const titleRef = useRef<HTMLHeadingElement>(null)\n const splitTextInstance = useRef<SplitText | null>(null)\n useGSAP(() => {\n if (!titleRef.current) return\n const height = titleRef.current?.clientHeight || 80\n splitTextInstance.current = new SplitText(titleRef.current, {\n type: 'words',\n wordsClass: 'word',\n })\n const words = splitTextInstance.current.words\n gsap.set(words, { opacity: 0 })\n ScrollTrigger.create({\n trigger: titleRef.current,\n start: 'bottom bottom-=6%',\n end: `bottom+=${height * 2 + 40}px bottom-=6%`,\n scrub: true,\n onUpdate: (self: any) => {\n const progress = self.progress\n const total = words.length\n const interval = 1 / total\n const overlap = 0.5\n words.forEach((word: any, i: number) => {\n const start = (i / total) * (1 - overlap)\n const width = interval * (1 + overlap)\n let opacity = (progress - start) / width\n opacity = Math.max(0, Math.min(opacity, 1))\n gsap.set(word, { opacity })\n })\n },\n })\n return () => {\n splitTextInstance.current && splitTextInstance.current.revert()\n ScrollTrigger.getAll().forEach((t: { kill: () => any }) => t.kill())\n }\n }, [])\n\n return (\n title && (\n <div className={cn('tablet:mb-[32px] mb-[24px] space-y-4', className, { 'aiui-dark': theme === 'dark' })}>\n <Heading ref={titleRef} as=\"h2\" size={5} html={title} />\n </div>\n )\n )\n})\n\nTitle.displayName = 'Title'\n\nexport default withStyles(Title)\n"],
|
|
5
|
+
"mappings": "ukBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,aAAAE,IAAA,eAAAC,EAAAH,GAoDQ,IAAAI,EAAA,6BAnDRC,EAA8B,oBAC9BA,EAAwB,uBACxBC,EAAqB,gBACrBC,EAA0B,+BAC1BC,EAA8B,mCAC9BC,EAAmB,kCACnBC,EAAwB,qCACxBC,EAA2B,kCAG3B,MAAMC,EAAQ,EAAAC,QAAM,WAAuC,CAAC,CAAE,KAAAC,EAAM,UAAAC,CAAU,IAAM,CAClF,KAAM,CAAE,MAAAC,EAAO,MAAAC,CAAM,EAAIH,EACnBI,KAAW,UAA2B,IAAI,EAC1CC,KAAoB,UAAyB,IAAI,EACvD,oBAAQ,IAAM,CACZ,GAAI,CAACD,EAAS,QAAS,OACvB,MAAME,EAASF,EAAS,SAAS,cAAgB,GACjDC,EAAkB,QAAU,IAAI,YAAUD,EAAS,QAAS,CAC1D,KAAM,QACN,WAAY,MACd,CAAC,EACD,MAAMG,EAAQF,EAAkB,QAAQ,MACxC,cAAK,IAAIE,EAAO,CAAE,QAAS,CAAE,CAAC,EAC9B,gBAAc,OAAO,CACnB,QAASH,EAAS,QAClB,MAAO,oBACP,IAAK,WAAWE,EAAS,EAAI,EAAE,gBAC/B,MAAO,GACP,SAAWE,GAAc,CACvB,MAAMC,EAAWD,EAAK,SAChBE,EAAQH,EAAM,OACdI,EAAW,EAAID,EACfE,EAAU,GAChBL,EAAM,QAAQ,CAACM,EAAWC,IAAc,CACtC,MAAMC,EAASD,EAAIJ,GAAU,EAAIE,GAC3BI,EAAQL,GAAY,EAAIC,GAC9B,IAAIK,GAAWR,EAAWM,GAASC,EACnCC,EAAU,KAAK,IAAI,EAAG,KAAK,IAAIA,EAAS,CAAC,CAAC,EAC1C,OAAK,IAAIJ,EAAM,CAAE,QAAAI,CAAQ,CAAC,CAC5B,CAAC,CACH,CACF,CAAC,EACM,IAAM,CACXZ,EAAkB,SAAWA,EAAkB,QAAQ,OAAO,EAC9D,gBAAc,OAAO,EAAE,QAASa,GAA2BA,EAAE,KAAK,CAAC,CACrE,CACF,EAAG,CAAC,CAAC,EAGHhB,MACE,OAAC,OAAI,aAAW,MAAG,uCAAwCD,EAAW,CAAE,YAAaE,IAAU,MAAO,CAAC,EACrG,mBAAC,WAAQ,IAAKC,EAAU,GAAG,KAAK,KAAM,EAAG,KAAMF,EAAO,EACxD,CAGN,CAAC,EAEDJ,EAAM,YAAc,QAEpB,IAAOV,KAAQ,cAAWU,CAAK",
|
|
6
|
+
"names": ["Title_exports", "__export", "Title_default", "__toCommonJS", "import_jsx_runtime", "import_react", "import_gsap", "import_SplitText", "import_ScrollTrigger", "import_utils", "import_components", "import_Styles", "Title", "React", "data", "className", "title", "theme", "titleRef", "splitTextInstance", "height", "words", "self", "progress", "total", "interval", "overlap", "word", "i", "start", "width", "opacity", "t"]
|
|
7
7
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var
|
|
1
|
+
"use strict";var a=Object.defineProperty;var p=Object.getOwnPropertyDescriptor;var m=Object.getOwnPropertyNames;var o=Object.prototype.hasOwnProperty;var n=(t,e,i,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of m(e))!o.call(t,r)&&r!==i&&a(t,r,{get:()=>e[r],enumerable:!(s=p(e,r))||s.enumerable});return t};var f=t=>n(a({},"__esModule",{value:!0}),t);var l={};module.exports=f(l);
|
|
2
2
|
//# sourceMappingURL=types.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/biz-components/Title/types.ts"],
|
|
4
|
-
"sourcesContent": ["import type { Theme } from '../../types/props.js'\n\nexport interface Feature {\n /**\n * \u7279\u6027\u6807\u9898\n */\n title: string\n}\n\nexport interface TitleProps {\n
|
|
4
|
+
"sourcesContent": ["import type { Theme } from '../../types/props.js'\n\nexport interface Feature {\n /**\n * \u7279\u6027\u6807\u9898\n */\n title: string\n}\n\nexport interface TitleProps {\n data: {\n /**\n * \u4E3B\u6807\u9898\n */\n title: string\n /**\n * \u7279\u6027\u5217\u8868\uFF0C\u6700\u591A\u652F\u63013\u4E2A\n */\n features?: Feature[]\n /**\n * \u4E3B\u9898\u8272\n */\n theme?: Theme\n }\n /**\n * \u81EA\u5B9A\u4E49\u7C7B\u540D\n */\n className?: string\n}\n"],
|
|
5
5
|
"mappings": "+WAAA,IAAAA,EAAA,kBAAAC,EAAAD",
|
|
6
6
|
"names": ["types_exports", "__toCommonJS"]
|
|
7
7
|
}
|
|
@@ -14,7 +14,7 @@ export { default as MediaPlayerBase } from './MediaPlayerBase/index.js';
|
|
|
14
14
|
export { default as MediaPlayerSticky } from './MediaPlayerSticky/index.js';
|
|
15
15
|
export { default as MediaPlayerMulti } from './MediaPlayerMulti/index.js';
|
|
16
16
|
export { default as Marquee } from './Marquee/index.js';
|
|
17
|
-
export {
|
|
17
|
+
export { MarqueeItem, MarqueeImageContent, MarqueeTextContent } from './Marquee/index.js';
|
|
18
18
|
export { default as MultiLayoutGraphicBlock } from './MultiLayoutGraphicBlock/index.js';
|
|
19
19
|
export type { MultiLayoutGraphicBlockProps } from './MultiLayoutGraphicBlock/index.js';
|
|
20
20
|
export { default as GraphicAttractionBlock } from './GraphicAttractionBlock/index.js';
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var g=Object.create;var
|
|
1
|
+
"use strict";var g=Object.create;var l=Object.defineProperty;var E=Object.getOwnPropertyDescriptor;var L=Object.getOwnPropertyNames;var j=Object.getPrototypeOf,I=Object.prototype.hasOwnProperty;var T=(a,r)=>{for(var t in r)l(a,t,{get:r[t],enumerable:!0})},u=(a,r,t,p)=>{if(r&&typeof r=="object"||typeof r=="function")for(let f of L(r))!I.call(a,f)&&f!==t&&l(a,f,{get:()=>r[f],enumerable:!(p=E(r,f))||p.enumerable});return a};var e=(a,r,t)=>(t=a!=null?g(j(a)):{},u(r||!a||!a.__esModule?l(t,"default",{value:a,enumerable:!0}):t,a)),b=a=>u(l({},"__esModule",{value:!0}),a);var v={};T(v,{AccordionCards:()=>B.default,BrandEquity:()=>i.default,Category:()=>M.default,Evaluate:()=>y.default,Graphic:()=>k.default,GraphicAttractionBlock:()=>C.default,HeroBanner:()=>h.default,Marquee:()=>S.default,MarqueeImageContent:()=>o.MarqueeImageContent,MarqueeItem:()=>o.MarqueeItem,MarqueeTextContent:()=>o.MarqueeTextContent,MediaPlayerBase:()=>G.default,MediaPlayerMulti:()=>P.default,MediaPlayerSticky:()=>q.default,MemberEquity:()=>s.default,MultiLayoutGraphicBlock:()=>A.default,Shelf:()=>d.default,ShelfDisplay:()=>n.default,Slogan:()=>m.default,Spacer:()=>c.default,Title:()=>x.default});module.exports=b(v);var d=e(require("./Shelf/index.js")),i=e(require("./BrandEquity/index.js")),s=e(require("./MemberEquity/index.js")),m=e(require("./Slogan/index.js")),x=e(require("./Title/index.js")),c=e(require("./Spacer/index.js")),n=e(require("./ShelfDisplay/index.js")),y=e(require("./Evaluate/index.js")),M=e(require("./Category/index.js")),h=e(require("./HeroBanner/index.js")),B=e(require("./AccordionCards/index.js")),k=e(require("./Graphic/index.js")),G=e(require("./MediaPlayerBase/index.js")),q=e(require("./MediaPlayerSticky/index.js")),P=e(require("./MediaPlayerMulti/index.js")),S=e(require("./Marquee/index.js")),o=require("./Marquee/index.js"),A=e(require("./MultiLayoutGraphicBlock/index.js")),C=e(require("./GraphicAttractionBlock/index.js"));
|
|
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 Shelf } from './Shelf/index.js'\nexport { 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 {
|
|
5
|
-
"mappings": "0jBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,omBAAAE,EAAAF,GAAA,IAAAG,EAAiC,+BACjCC,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,iCACnCA,
|
|
4
|
+
"sourcesContent": ["export { default as Shelf } from './Shelf/index.js'\nexport { 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 { 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'\n"],
|
|
5
|
+
"mappings": "0jBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,omBAAAE,EAAAF,GAAA,IAAAG,EAAiC,+BACjCC,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,iCACnCA,EAAqE,8BACrEC,EAAmD,iDAEnDC,EAAkD",
|
|
6
6
|
"names": ["biz_components_exports", "__export", "__toCommonJS", "import_Shelf", "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_MultiLayoutGraphicBlock", "import_GraphicAttractionBlock"]
|
|
7
7
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";var s=Object.create;var i=Object.defineProperty;var g=Object.getOwnPropertyDescriptor;var u=Object.getOwnPropertyNames;var c=Object.getPrototypeOf,h=Object.prototype.hasOwnProperty;var d=(e,t)=>{for(var r in t)i(e,r,{get:t[r],enumerable:!0})},
|
|
1
|
+
"use strict";var s=Object.create;var i=Object.defineProperty;var g=Object.getOwnPropertyDescriptor;var u=Object.getOwnPropertyNames;var c=Object.getPrototypeOf,h=Object.prototype.hasOwnProperty;var d=(e,t)=>{for(var r in t)i(e,r,{get:t[r],enumerable:!0})},p=(e,t,r,m)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of u(t))!h.call(e,a)&&a!==r&&i(e,a,{get:()=>t[a],enumerable:!(m=g(t,a))||m.enumerable});return e};var f=(e,t,r)=>(r=e!=null?s(c(e)):{},p(t||!e||!e.__esModule?i(r,"default",{value:e,enumerable:!0}):r,e)),k=e=>p(i({},"__esModule",{value:!0}),e);var S={};d(S,{DarkTheme:()=>B,LightTheme:()=>P,WithoutSecondaryButton:()=>A,default:()=>b});module.exports=k(S);var l=f(require("../biz-components/HeroBanner/HeroBanner.js")),x=require("gsap"),W=require("@gsap/react"),T=require("gsap/dist/ScrollTrigger"),C=require("gsap/dist/SplitText");const y={title:"Biz-Components/HeroBanner",component:l.default,parameters:{layout:"fullscreen",docs:{description:{component:`
|
|
2
2
|
HeroBanner \u7EC4\u4EF6\u7528\u4E8E\u5C55\u793A\u7F51\u7AD9\u7684\u4E3B\u8981\u5185\u5BB9\u533A\u57DF\uFF0C\u901A\u5E38\u5305\u542B\u6807\u9898\u3001\u526F\u6807\u9898\u548C\u884C\u52A8\u6309\u94AE\u3002
|
|
3
3
|
|
|
4
4
|
### \u7279\u70B9
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/stories/HeroBanner.stories.tsx"],
|
|
4
|
-
"sourcesContent": ["import type { Meta, StoryObj } from '@storybook/react'\nimport HeroBanner from '../biz-components/HeroBanner/HeroBanner.js'\n\nconst meta = {\n title: 'Biz-Components/HeroBanner',\n component: HeroBanner,\n parameters: {\n layout: 'fullscreen',\n docs: {\n description: {\n component: `\nHeroBanner \u7EC4\u4EF6\u7528\u4E8E\u5C55\u793A\u7F51\u7AD9\u7684\u4E3B\u8981\u5185\u5BB9\u533A\u57DF\uFF0C\u901A\u5E38\u5305\u542B\u6807\u9898\u3001\u526F\u6807\u9898\u548C\u884C\u52A8\u6309\u94AE\u3002\n\n### \u7279\u70B9\n- \u652F\u6301\u4EAE\u8272\u548C\u6697\u8272\u4E3B\u9898\n- \u4F7F\u7528 Mont For Anker \u5B57\u4F53\u4F5C\u4E3A\u6807\u9898\n- \u53EF\u914D\u7F6E\u4E3B\u6309\u94AE\u548C\u6B21\u8981\u6309\u94AE\n- \u652F\u6301\u5E95\u90E8\u4EA7\u54C1\u5217\u8868\n `,\n },\n },\n },\n tags: ['autodocs'],\n} satisfies Meta<typeof HeroBanner>\n\nexport default meta\ntype Story = StoryObj<typeof HeroBanner>\n\nconst defaultBackground =\n 'https://cdn.shopify.com/s/files/1/0521/9411/5753/files/aee13b30b2c77fc8d0a46e4f19fa48cb_6a25debf-f95e-4ca6-990b-babcad65216c.png?v=1745468206'\n\nconst darkBackground =\n 'https://cdn.shopify.com/s/files/1/0517/6767/3016/files/87e32d61fc407d5e6c8aff00f3453072.jpg?v=1745999899'\n\nexport const LightTheme: Story = {\n args: {\n data: {\n title: 'Anker Laptop Power',\n subtitle: 'Anker Prime 240W GaN Desktop Charger (4 Ports)',\n pcImage: {\n url: defaultBackground,\n alt: 'default background',\n thumbnailURL: defaultBackground,\n mimeType: 'image/jpeg',\n },\n mobileImage: {\n url: defaultBackground,\n alt: 'default background',\n thumbnailURL: defaultBackground,\n mimeType: 'image/jpeg',\n },\n theme: 'light',\n primaryButton: {\n text: 'Shop Now',\n },\n secondaryButton: {\n text: 'Learn More',\n },\n caption: [\n { title: 'Anker Prime 240W GaN Desktop Charger (4 Ports)' },\n { title: 'Anker Prime 27,650mAh Power Bank (250W)' },\n { title: 'Anker Prime 240W GaN Desktop Charger (4 Ports)' },\n ],\n },\n },\n}\n\nexport const DarkTheme: Story = {\n args: {\n data: {\n title: 'Power Your Life',\n subtitle:\n 'Experience the next generation of charging technology with our innovative solutions designed for modern life.',\n pcImage: {\n url: darkBackground,\n alt: 'dark background',\n thumbnailURL: darkBackground,\n mimeType: 'image/jpeg',\n },\n mobileImage: {\n url: darkBackground,\n alt: 'dark background',\n thumbnailURL: darkBackground,\n mimeType: 'image/jpeg',\n },\n theme: 'dark',\n primaryButton: {\n text: 'Shop Now',\n },\n secondaryButton: {\n text: 'Learn More',\n },\n caption: [\n { title: 'Anker Prime 240W GaN Desktop Charger (4 Ports)' },\n { title: 'Anker Prime 27,650mAh Power Bank (250W)' },\n { title: 'Anker Prime 240W GaN Desktop Charger (4 Ports)' },\n ],\n },\n },\n}\n\nexport const WithoutSecondaryButton: Story = {\n args: {\n data: {\n title: 'Future of Charging',\n subtitle:\n 'Step into the future with our revolutionary charging solutions that redefine the way you power your devices.',\n pcImage: {\n url: defaultBackground,\n alt: 'default background',\n thumbnailURL: defaultBackground,\n mimeType: 'image/jpeg',\n },\n mobileImage: {\n url: defaultBackground,\n alt: 'default background',\n thumbnailURL: defaultBackground,\n mimeType: 'image/jpeg',\n },\n theme: 'light',\n primaryButton: {\n text: 'Shop Now',\n },\n caption: [\n { title: 'Anker Prime 240W GaN Desktop Charger (4 Ports)' },\n { title: 'Anker Prime 27,650mAh Power Bank (250W)' },\n { title: 'Anker Prime 240W GaN Desktop Charger (4 Ports)' },\n ],\n },\n },\n}\n"],
|
|
5
|
-
"mappings": "0jBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,eAAAE,EAAA,eAAAC,EAAA,2BAAAC,EAAA,YAAAC,IAAA,eAAAC,EAAAN,GACA,IAAAO,EAAuB,
|
|
6
|
-
"names": ["HeroBanner_stories_exports", "__export", "DarkTheme", "LightTheme", "WithoutSecondaryButton", "HeroBanner_stories_default", "__toCommonJS", "import_HeroBanner", "meta", "HeroBanner", "defaultBackground", "darkBackground"]
|
|
4
|
+
"sourcesContent": ["import type { Meta, StoryObj } from '@storybook/react'\nimport HeroBanner from '../biz-components/HeroBanner/HeroBanner.js'\nimport { gsap } from 'gsap'\nimport { useGSAP } from '@gsap/react'\nimport { ScrollTrigger } from 'gsap/dist/ScrollTrigger'\nimport { SplitText } from 'gsap/dist/SplitText'\n\nconst meta = {\n title: 'Biz-Components/HeroBanner',\n component: HeroBanner,\n parameters: {\n layout: 'fullscreen',\n docs: {\n description: {\n component: `\nHeroBanner \u7EC4\u4EF6\u7528\u4E8E\u5C55\u793A\u7F51\u7AD9\u7684\u4E3B\u8981\u5185\u5BB9\u533A\u57DF\uFF0C\u901A\u5E38\u5305\u542B\u6807\u9898\u3001\u526F\u6807\u9898\u548C\u884C\u52A8\u6309\u94AE\u3002\n\n### \u7279\u70B9\n- \u652F\u6301\u4EAE\u8272\u548C\u6697\u8272\u4E3B\u9898\n- \u4F7F\u7528 Mont For Anker \u5B57\u4F53\u4F5C\u4E3A\u6807\u9898\n- \u53EF\u914D\u7F6E\u4E3B\u6309\u94AE\u548C\u6B21\u8981\u6309\u94AE\n- \u652F\u6301\u5E95\u90E8\u4EA7\u54C1\u5217\u8868\n `,\n },\n },\n },\n tags: ['autodocs'],\n} satisfies Meta<typeof HeroBanner>\n\nexport default meta\ntype Story = StoryObj<typeof HeroBanner>\n\nconst defaultBackground =\n 'https://cdn.shopify.com/s/files/1/0521/9411/5753/files/aee13b30b2c77fc8d0a46e4f19fa48cb_6a25debf-f95e-4ca6-990b-babcad65216c.png?v=1745468206'\n\nconst darkBackground =\n 'https://cdn.shopify.com/s/files/1/0517/6767/3016/files/87e32d61fc407d5e6c8aff00f3453072.jpg?v=1745999899'\n\nexport const LightTheme: Story = {\n args: {\n data: {\n title: 'Anker Laptop Power',\n subtitle: 'Anker Prime 240W GaN Desktop Charger (4 Ports)',\n pcImage: {\n url: defaultBackground,\n alt: 'default background',\n thumbnailURL: defaultBackground,\n mimeType: 'image/jpeg',\n },\n mobileImage: {\n url: defaultBackground,\n alt: 'default background',\n thumbnailURL: defaultBackground,\n mimeType: 'image/jpeg',\n },\n theme: 'light',\n primaryButton: {\n text: 'Shop Now',\n },\n secondaryButton: {\n text: 'Learn More',\n },\n caption: [\n { title: 'Anker Prime 240W GaN Desktop Charger (4 Ports)' },\n { title: 'Anker Prime 27,650mAh Power Bank (250W)' },\n { title: 'Anker Prime 240W GaN Desktop Charger (4 Ports)' },\n ],\n },\n },\n}\n\nexport const DarkTheme: Story = {\n args: {\n data: {\n title: 'Power Your Life',\n subtitle:\n 'Experience the next generation of charging technology with our innovative solutions designed for modern life.',\n pcImage: {\n url: darkBackground,\n alt: 'dark background',\n thumbnailURL: darkBackground,\n mimeType: 'image/jpeg',\n },\n mobileImage: {\n url: darkBackground,\n alt: 'dark background',\n thumbnailURL: darkBackground,\n mimeType: 'image/jpeg',\n },\n theme: 'dark',\n primaryButton: {\n text: 'Shop Now',\n },\n secondaryButton: {\n text: 'Learn More',\n },\n caption: [\n { title: 'Anker Prime 240W GaN Desktop Charger (4 Ports)' },\n { title: 'Anker Prime 27,650mAh Power Bank (250W)' },\n { title: 'Anker Prime 240W GaN Desktop Charger (4 Ports)' },\n ],\n },\n },\n}\n\nexport const WithoutSecondaryButton: Story = {\n args: {\n data: {\n title: 'Future of Charging',\n subtitle:\n 'Step into the future with our revolutionary charging solutions that redefine the way you power your devices.',\n pcImage: {\n url: defaultBackground,\n alt: 'default background',\n thumbnailURL: defaultBackground,\n mimeType: 'image/jpeg',\n },\n mobileImage: {\n url: defaultBackground,\n alt: 'default background',\n thumbnailURL: defaultBackground,\n mimeType: 'image/jpeg',\n },\n theme: 'light',\n primaryButton: {\n text: 'Shop Now',\n },\n caption: [\n { title: 'Anker Prime 240W GaN Desktop Charger (4 Ports)' },\n { title: 'Anker Prime 27,650mAh Power Bank (250W)' },\n { title: 'Anker Prime 240W GaN Desktop Charger (4 Ports)' },\n ],\n },\n },\n}\n"],
|
|
5
|
+
"mappings": "0jBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,eAAAE,EAAA,eAAAC,EAAA,2BAAAC,EAAA,YAAAC,IAAA,eAAAC,EAAAN,GACA,IAAAO,EAAuB,yDACvBC,EAAqB,gBACrBC,EAAwB,uBACxBC,EAA8B,mCAC9BC,EAA0B,+BAE1B,MAAMC,EAAO,CACX,MAAO,4BACP,UAAW,EAAAC,QACX,WAAY,CACV,OAAQ,aACR,KAAM,CACJ,YAAa,CACX,UAAW;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,SASb,CACF,CACF,EACA,KAAM,CAAC,UAAU,CACnB,EAEA,IAAOR,EAAQO,EAGf,MAAME,EACJ,gJAEIC,EACJ,2GAEWZ,EAAoB,CAC/B,KAAM,CACJ,KAAM,CACJ,MAAO,qBACP,SAAU,iDACV,QAAS,CACP,IAAKW,EACL,IAAK,qBACL,aAAcA,EACd,SAAU,YACZ,EACA,YAAa,CACX,IAAKA,EACL,IAAK,qBACL,aAAcA,EACd,SAAU,YACZ,EACA,MAAO,QACP,cAAe,CACb,KAAM,UACR,EACA,gBAAiB,CACf,KAAM,YACR,EACA,QAAS,CACP,CAAE,MAAO,gDAAiD,EAC1D,CAAE,MAAO,yCAA0C,EACnD,CAAE,MAAO,gDAAiD,CAC5D,CACF,CACF,CACF,EAEaZ,EAAmB,CAC9B,KAAM,CACJ,KAAM,CACJ,MAAO,kBACP,SACE,gHACF,QAAS,CACP,IAAKa,EACL,IAAK,kBACL,aAAcA,EACd,SAAU,YACZ,EACA,YAAa,CACX,IAAKA,EACL,IAAK,kBACL,aAAcA,EACd,SAAU,YACZ,EACA,MAAO,OACP,cAAe,CACb,KAAM,UACR,EACA,gBAAiB,CACf,KAAM,YACR,EACA,QAAS,CACP,CAAE,MAAO,gDAAiD,EAC1D,CAAE,MAAO,yCAA0C,EACnD,CAAE,MAAO,gDAAiD,CAC5D,CACF,CACF,CACF,EAEaX,EAAgC,CAC3C,KAAM,CACJ,KAAM,CACJ,MAAO,qBACP,SACE,+GACF,QAAS,CACP,IAAKU,EACL,IAAK,qBACL,aAAcA,EACd,SAAU,YACZ,EACA,YAAa,CACX,IAAKA,EACL,IAAK,qBACL,aAAcA,EACd,SAAU,YACZ,EACA,MAAO,QACP,cAAe,CACb,KAAM,UACR,EACA,QAAS,CACP,CAAE,MAAO,gDAAiD,EAC1D,CAAE,MAAO,yCAA0C,EACnD,CAAE,MAAO,gDAAiD,CAC5D,CACF,CACF,CACF",
|
|
6
|
+
"names": ["HeroBanner_stories_exports", "__export", "DarkTheme", "LightTheme", "WithoutSecondaryButton", "HeroBanner_stories_default", "__toCommonJS", "import_HeroBanner", "import_gsap", "import_react", "import_ScrollTrigger", "import_SplitText", "meta", "HeroBanner", "defaultBackground", "darkBackground"]
|
|
7
7
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var
|
|
1
|
+
"use strict";var n=Object.create;var a=Object.defineProperty;var s=Object.getOwnPropertyDescriptor;var c=Object.getOwnPropertyNames;var h=Object.getPrototypeOf,u=Object.prototype.hasOwnProperty;var x=(t,e)=>{for(var o in e)a(t,o,{get:e[o],enumerable:!0})},r=(t,e,o,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let l of c(e))!u.call(t,l)&&l!==o&&a(t,l,{get:()=>e[l],enumerable:!(i=s(e,l))||i.enumerable});return t};var d=(t,e,o)=>(o=t!=null?n(h(t)):{},r(e||!t||!t.__esModule?a(o,"default",{value:t,enumerable:!0}):o,t)),g=t=>r(a({},"__esModule",{value:!0}),t);var f={};x(f,{Default:()=>U,ThirdWidth:()=>I,WithCarousel:()=>L,default:()=>k});module.exports=g(f);var b=require("react"),m=d(require("../biz-components/MultiLayoutGraphicBlock/MultiLayoutGraphicBlock.js")),M=require("gsap"),R=require("@gsap/react"),w=require("gsap/dist/ScrollTrigger"),j=require("gsap/dist/SplitText");const y={title:"Biz-Components/MultiLayoutGraphicBlock",component:m.default,tags:["autodocs"],parameters:{layout:"fullscreen",docs:{description:{component:"\u591A\u5E03\u5C40\u56FE\u6587\u533A\u5757\uFF0C\u652F\u6301\u4E0D\u540C\u5BBD\u5EA6\u3001\u4E3B\u9898\u548C\u8F6E\u64AD\u3002"}}}};var k=y;const p=[{theme:"light",title:"\u6807\u98981",description:"\u8FD9\u662F\u7B2C\u4E00\u4E2A\u533A\u5757\u7684\u63CF\u8FF0",imageUrl:"https://placehold.co/1920x1080?text=Image1",primaryButton:{text:"\u4E3B\u6309\u94AE",link:"#"},secondaryButton:{text:"\u6B21\u6309\u94AE",link:"#"},width:"full"},{theme:"dark",title:"\u6807\u98982",description:"\u8FD9\u662F\u7B2C\u4E8C\u4E2A\u533A\u5757\u7684\u63CF\u8FF0",imageUrl:"https://placehold.co/200x240?text=Image2",primaryButton:{text:"\u4E3B\u6309\u94AE",link:"#"},secondaryButton:{text:"\u6B21\u6309\u94AE",link:"#"},width:"half"},{theme:"light",title:"\u6807\u98983",description:"\u8FD9\u662F\u7B2C\u4E09\u4E2A\u533A\u5757\u7684\u63CF\u8FF0",imageUrl:{url:"https://placehold.co/200x240?text=Image3",alt:"Image3",thumbnailURL:"https://placehold.co/200x240?text=Image3",mimeType:"image/png"},primaryButton:{text:"\u4E3B\u6309\u94AE",link:"#"},secondaryButton:{text:"\u6B21\u6309\u94AE",link:"#"},width:"half"}],B=[{theme:"dark",title:"\u8F6E\u64AD1",description:"\u8F6E\u64AD\u533A\u57571",imageUrl:{url:"https://placehold.co/200x240?text=Carousel1",alt:"Carousel1",thumbnailURL:"https://placehold.co/200x240?text=Carousel1",mimeType:"image/png"},primaryButton:{text:"\u4E3B\u6309\u94AE",link:"#"},secondaryButton:{text:"\u6B21\u6309\u94AE",link:"#"}},{theme:"light",title:"\u8F6E\u64AD2",description:"\u8F6E\u64AD\u533A\u57572",imageUrl:{url:"https://placehold.co/200x240?text=Carousel2",alt:"Carousel2",thumbnailURL:"https://placehold.co/200x240?text=Carousel2",mimeType:"image/png"},primaryButton:{text:"\u4E3B\u6309\u94AE",link:"#"},secondaryButton:{text:"\u6B21\u6309\u94AE",link:"#"}},{theme:"light",title:"\u8F6E\u64AD3",description:"\u8F6E\u64AD\u533A\u57573",imageUrl:"https://placehold.co/200x240?text=Carousel2",primaryButton:{text:"\u4E3B\u6309\u94AE",link:"#"},secondaryButton:{text:"\u6B21\u6309\u94AE",link:"#"}},{theme:"light",title:"\u8F6E\u64AD4",description:"\u8F6E\u64AD\u533A\u57574",imageUrl:{url:"https://placehold.co/200x240?text=Carousel2",alt:"Carousel2",thumbnailURL:"https://placehold.co/200x240?text=Carousel2",mimeType:"image/png"},primaryButton:{text:"\u4E3B\u6309\u94AE",link:"#"},secondaryButton:{text:"\u6B21\u6309\u94AE",link:"#"}},{theme:"light",title:"\u8F6E\u64AD5",description:"\u8F6E\u64AD\u533A\u57575",imageUrl:{url:"https://placehold.co/200x240?text=Carousel2",alt:"Carousel2",thumbnailURL:"https://placehold.co/200x240?text=Carousel2",mimeType:"image/png"},primaryButton:{text:"\u4E3B\u6309\u94AE",link:"#"},secondaryButton:{text:"\u6B21\u6309\u94AE",link:"#"}}],U={args:{data:{items:p,carousel:{items:[]}}}},I={args:{data:{items:[{theme:"light",title:"\u6807\u98981",description:"\u8FD9\u662F\u7B2C\u4E00\u4E2A\u533A\u5757\u7684\u63CF\u8FF0",imageUrl:{url:"https://placehold.co/1920x1080?text=Image1",alt:"Image1",thumbnailURL:"https://placehold.co/1920x1080?text=Image1",mimeType:"image/png"},primaryButton:{text:"\u4E3B\u6309\u94AE",link:"#"},secondaryButton:{text:"\u6B21\u6309\u94AE",link:"#"},width:"full"},{theme:"dark",title:"\u6807\u98982",description:"\u8FD9\u662F\u7B2C\u4E8C\u4E2A\u533A\u5757\u7684\u63CF\u8FF0",imageUrl:{url:"https://placehold.co/200x240?text=Image2",alt:"Image2",thumbnailURL:"https://placehold.co/200x240?text=Image2",mimeType:"image/png"},primaryButton:{text:"\u4E3B\u6309\u94AE",link:"#"},secondaryButton:{text:"\u6B21\u6309\u94AE",link:"#"},width:"one-third"},{theme:"light",title:"\u6807\u98983",description:"\u8FD9\u662F\u7B2C\u4E09\u4E2A\u533A\u5757\u7684\u63CF\u8FF0",imageUrl:{url:"https://placehold.co/200x240?text=Image3",alt:"Image3",thumbnailURL:"https://placehold.co/200x240?text=Image3",mimeType:"image/png"},primaryButton:{text:"\u4E3B\u6309\u94AE",link:"#"},secondaryButton:{text:"\u6B21\u6309\u94AE",link:"#"},width:"one-third"},{theme:"light",title:"\u6807\u98984",description:"\u8FD9\u662F\u7B2C4\u4E2A\u533A\u5757\u7684\u63CF\u8FF0",imageUrl:{url:"https://placehold.co/200x240?text=Image3",alt:"Image3",thumbnailURL:"https://placehold.co/200x240?text=Image3",mimeType:"image/png"},primaryButton:{text:"\u4E3B\u6309\u94AE",link:"#"},secondaryButton:{text:"\u6B21\u6309\u94AE",link:"#"},width:"one-third"}]}}},L={args:{data:{items:p.slice(0,1),carousel:{items:B}}}};
|
|
2
2
|
//# sourceMappingURL=MultiLayoutGraphicBlock.stories.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/stories/MultiLayoutGraphicBlock.stories.tsx"],
|
|
4
|
-
"sourcesContent": ["import type { Meta, StoryObj } from '@storybook/react'\nimport React from 'react'\nimport MultiLayoutGraphicBlock from '../biz-components/MultiLayoutGraphicBlock/MultiLayoutGraphicBlock.js'\nimport type { MultiLayoutGraphicBlockProps } from '../biz-components/MultiLayoutGraphicBlock/types.js'\nimport { gsap } from 'gsap'\nimport { useGSAP } from '@gsap/react'\nimport { ScrollTrigger } from 'gsap/dist/ScrollTrigger'\nimport { SplitText } from 'gsap/dist/SplitText'\n\nconst meta: Meta<typeof MultiLayoutGraphicBlock> = {\n title: 'Biz-Components/MultiLayoutGraphicBlock',\n component: MultiLayoutGraphicBlock,\n tags: ['autodocs'],\n parameters: {\n layout: 'fullscreen',\n docs: {\n description: {\n component: '\u591A\u5E03\u5C40\u56FE\u6587\u533A\u5757\uFF0C\u652F\u6301\u4E0D\u540C\u5BBD\u5EA6\u3001\u4E3B\u9898\u548C\u8F6E\u64AD\u3002',\n },\n },\n },\n}\n\nexport default meta\n\ntype Story = StoryObj<typeof MultiLayoutGraphicBlock>\n\nconst baseItems = [\n {\n theme: 'light',\n title: '\u6807\u98981',\n description: '\u8FD9\u662F\u7B2C\u4E00\u4E2A\u533A\u5757\u7684\u63CF\u8FF0',\n imageUrl: 'https://placehold.co/1920x1080?text=Image1',\n primaryButton: { text: '\u4E3B\u6309\u94AE', link: '#' },\n secondaryButton: { text: '\u6B21\u6309\u94AE', link: '#' },\n width: 'full' as const,\n },\n {\n theme: 'dark',\n title: '\u6807\u98982',\n description: '\u8FD9\u662F\u7B2C\u4E8C\u4E2A\u533A\u5757\u7684\u63CF\u8FF0',\n imageUrl: 'https://placehold.co/200x240?text=Image2',\n primaryButton: { text: '\u4E3B\u6309\u94AE', link: '#' },\n secondaryButton: { text: '\u6B21\u6309\u94AE', link: '#' },\n width: 'half' as const,\n },\n {\n theme: 'light',\n title: '\u6807\u98983',\n description: '\u8FD9\u662F\u7B2C\u4E09\u4E2A\u533A\u5757\u7684\u63CF\u8FF0',\n imageUrl: {\n url: 'https://placehold.co/200x240?text=Image3',\n alt: 'Image3',\n thumbnailURL: 'https://placehold.co/200x240?text=Image3',\n mimeType: 'image/png',\n },\n primaryButton: { text: '\u4E3B\u6309\u94AE', link: '#' },\n secondaryButton: { text: '\u6B21\u6309\u94AE', link: '#' },\n width: 'half' as const,\n },\n]\n\nconst carouselItems = [\n {\n theme: 'dark',\n title: '\u8F6E\u64AD1',\n description: '\u8F6E\u64AD\u533A\u57571',\n imageUrl: {\n url: 'https://placehold.co/200x240?text=Carousel1',\n alt: 'Carousel1',\n thumbnailURL: 'https://placehold.co/200x240?text=Carousel1',\n mimeType: 'image/png',\n },\n primaryButton: { text: '\u4E3B\u6309\u94AE', link: '#' },\n secondaryButton: { text: '\u6B21\u6309\u94AE', link: '#' },\n },\n {\n theme: 'light',\n title: '\u8F6E\u64AD2',\n description: '\u8F6E\u64AD\u533A\u57572',\n imageUrl: {\n url: 'https://placehold.co/200x240?text=Carousel2',\n alt: 'Carousel2',\n thumbnailURL: 'https://placehold.co/200x240?text=Carousel2',\n mimeType: 'image/png',\n },\n primaryButton: { text: '\u4E3B\u6309\u94AE', link: '#' },\n secondaryButton: { text: '\u6B21\u6309\u94AE', link: '#' },\n },\n {\n theme: 'light',\n title: '\u8F6E\u64AD3',\n description: '\u8F6E\u64AD\u533A\u57573',\n imageUrl: 'https://placehold.co/200x240?text=Carousel2',\n primaryButton: { text: '\u4E3B\u6309\u94AE', link: '#' },\n secondaryButton: { text: '\u6B21\u6309\u94AE', link: '#' },\n },\n {\n theme: 'light',\n title: '\u8F6E\u64AD4',\n description: '\u8F6E\u64AD\u533A\u57574',\n imageUrl: {\n url: 'https://placehold.co/200x240?text=Carousel2',\n alt: 'Carousel2',\n thumbnailURL: 'https://placehold.co/200x240?text=Carousel2',\n mimeType: 'image/png',\n },\n primaryButton: { text: '\u4E3B\u6309\u94AE', link: '#' },\n secondaryButton: { text: '\u6B21\u6309\u94AE', link: '#' },\n },\n {\n theme: 'light',\n title: '\u8F6E\u64AD5',\n description: '\u8F6E\u64AD\u533A\u57575',\n imageUrl: {\n url: 'https://placehold.co/200x240?text=Carousel2',\n alt: 'Carousel2',\n thumbnailURL: 'https://placehold.co/200x240?text=Carousel2',\n mimeType: 'image/png',\n },\n primaryButton: { text: '\u4E3B\u6309\u94AE', link: '#' },\n secondaryButton: { text: '\u6B21\u6309\u94AE', link: '#' },\n },\n]\n\nexport const Default: Story = {\n args: {\n
|
|
5
|
-
"mappings": "0jBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,aAAAE,EAAA,eAAAC,EAAA,iBAAAC,EAAA,YAAAC,IAAA,eAAAC,EAAAN,GACA,IAAAO,EAAkB,iBAClBC,EAAoC,mFAEpCC,EAAqB,gBACrBF,EAAwB,uBACxBG,EAA8B,mCAC9BC,EAA0B,+BAE1B,MAAMC,EAA6C,CACjD,MAAO,yCACP,UAAW,EAAAC,QACX,KAAM,CAAC,UAAU,EACjB,WAAY,CACV,OAAQ,aACR,KAAM,CACJ,YAAa,CACX,UAAW,gIACb,CACF,CACF,CACF,EAEA,IAAOR,EAAQO,EAIf,MAAME,EAAY,CAChB,CACE,MAAO,QACP,MAAO,gBACP,YAAa,+DACb,SAAU,6CACV,cAAe,CAAE,KAAM,qBAAO,KAAM,GAAI,EACxC,gBAAiB,CAAE,KAAM,qBAAO,KAAM,GAAI,EAC1C,MAAO,MACT,EACA,CACE,MAAO,OACP,MAAO,gBACP,YAAa,+DACb,SAAU,2CACV,cAAe,CAAE,KAAM,qBAAO,KAAM,GAAI,EACxC,gBAAiB,CAAE,KAAM,qBAAO,KAAM,GAAI,EAC1C,MAAO,MACT,EACA,CACE,MAAO,QACP,MAAO,gBACP,YAAa,+DACb,SAAU,CACR,IAAK,2CACL,IAAK,SACL,aAAc,2CACd,SAAU,WACZ,EACA,cAAe,CAAE,KAAM,qBAAO,KAAM,GAAI,EACxC,gBAAiB,CAAE,KAAM,qBAAO,KAAM,GAAI,EAC1C,MAAO,MACT,CACF,EAEMC,EAAgB,CACpB,CACE,MAAO,OACP,MAAO,gBACP,YAAa,4BACb,SAAU,CACR,IAAK,8CACL,IAAK,YACL,aAAc,8CACd,SAAU,WACZ,EACA,cAAe,CAAE,KAAM,qBAAO,KAAM,GAAI,EACxC,gBAAiB,CAAE,KAAM,qBAAO,KAAM,GAAI,CAC5C,EACA,CACE,MAAO,QACP,MAAO,gBACP,YAAa,4BACb,SAAU,CACR,IAAK,8CACL,IAAK,YACL,aAAc,8CACd,SAAU,WACZ,EACA,cAAe,CAAE,KAAM,qBAAO,KAAM,GAAI,EACxC,gBAAiB,CAAE,KAAM,qBAAO,KAAM,GAAI,CAC5C,EACA,CACE,MAAO,QACP,MAAO,gBACP,YAAa,4BACb,SAAU,8CACV,cAAe,CAAE,KAAM,qBAAO,KAAM,GAAI,EACxC,gBAAiB,CAAE,KAAM,qBAAO,KAAM,GAAI,CAC5C,EACA,CACE,MAAO,QACP,MAAO,gBACP,YAAa,4BACb,SAAU,CACR,IAAK,8CACL,IAAK,YACL,aAAc,8CACd,SAAU,WACZ,EACA,cAAe,CAAE,KAAM,qBAAO,KAAM,GAAI,EACxC,gBAAiB,CAAE,KAAM,qBAAO,KAAM,GAAI,CAC5C,EACA,CACE,MAAO,QACP,MAAO,gBACP,YAAa,4BACb,SAAU,CACR,IAAK,8CACL,IAAK,YACL,aAAc,8CACd,SAAU,WACZ,EACA,cAAe,CAAE,KAAM,qBAAO,KAAM,GAAI,EACxC,gBAAiB,CAAE,KAAM,qBAAO,KAAM,GAAI,CAC5C,CACF,EAEab,EAAiB,CAC5B,KAAM,CACJ,KAAM,
|
|
4
|
+
"sourcesContent": ["import type { Meta, StoryObj } from '@storybook/react'\nimport React from 'react'\nimport MultiLayoutGraphicBlock from '../biz-components/MultiLayoutGraphicBlock/MultiLayoutGraphicBlock.js'\nimport type { MultiLayoutGraphicBlockProps } from '../biz-components/MultiLayoutGraphicBlock/types.js'\nimport { gsap } from 'gsap'\nimport { useGSAP } from '@gsap/react'\nimport { ScrollTrigger } from 'gsap/dist/ScrollTrigger'\nimport { SplitText } from 'gsap/dist/SplitText'\n\nconst meta: Meta<typeof MultiLayoutGraphicBlock> = {\n title: 'Biz-Components/MultiLayoutGraphicBlock',\n component: MultiLayoutGraphicBlock,\n tags: ['autodocs'],\n parameters: {\n layout: 'fullscreen',\n docs: {\n description: {\n component: '\u591A\u5E03\u5C40\u56FE\u6587\u533A\u5757\uFF0C\u652F\u6301\u4E0D\u540C\u5BBD\u5EA6\u3001\u4E3B\u9898\u548C\u8F6E\u64AD\u3002',\n },\n },\n },\n}\n\nexport default meta\n\ntype Story = StoryObj<typeof MultiLayoutGraphicBlock>\n\nconst baseItems = [\n {\n theme: 'light',\n title: '\u6807\u98981',\n description: '\u8FD9\u662F\u7B2C\u4E00\u4E2A\u533A\u5757\u7684\u63CF\u8FF0',\n imageUrl: 'https://placehold.co/1920x1080?text=Image1',\n primaryButton: { text: '\u4E3B\u6309\u94AE', link: '#' },\n secondaryButton: { text: '\u6B21\u6309\u94AE', link: '#' },\n width: 'full' as const,\n },\n {\n theme: 'dark',\n title: '\u6807\u98982',\n description: '\u8FD9\u662F\u7B2C\u4E8C\u4E2A\u533A\u5757\u7684\u63CF\u8FF0',\n imageUrl: 'https://placehold.co/200x240?text=Image2',\n primaryButton: { text: '\u4E3B\u6309\u94AE', link: '#' },\n secondaryButton: { text: '\u6B21\u6309\u94AE', link: '#' },\n width: 'half' as const,\n },\n {\n theme: 'light',\n title: '\u6807\u98983',\n description: '\u8FD9\u662F\u7B2C\u4E09\u4E2A\u533A\u5757\u7684\u63CF\u8FF0',\n imageUrl: {\n url: 'https://placehold.co/200x240?text=Image3',\n alt: 'Image3',\n thumbnailURL: 'https://placehold.co/200x240?text=Image3',\n mimeType: 'image/png',\n },\n primaryButton: { text: '\u4E3B\u6309\u94AE', link: '#' },\n secondaryButton: { text: '\u6B21\u6309\u94AE', link: '#' },\n width: 'half' as const,\n },\n]\n\nconst carouselItems = [\n {\n theme: 'dark',\n title: '\u8F6E\u64AD1',\n description: '\u8F6E\u64AD\u533A\u57571',\n imageUrl: {\n url: 'https://placehold.co/200x240?text=Carousel1',\n alt: 'Carousel1',\n thumbnailURL: 'https://placehold.co/200x240?text=Carousel1',\n mimeType: 'image/png',\n },\n primaryButton: { text: '\u4E3B\u6309\u94AE', link: '#' },\n secondaryButton: { text: '\u6B21\u6309\u94AE', link: '#' },\n },\n {\n theme: 'light',\n title: '\u8F6E\u64AD2',\n description: '\u8F6E\u64AD\u533A\u57572',\n imageUrl: {\n url: 'https://placehold.co/200x240?text=Carousel2',\n alt: 'Carousel2',\n thumbnailURL: 'https://placehold.co/200x240?text=Carousel2',\n mimeType: 'image/png',\n },\n primaryButton: { text: '\u4E3B\u6309\u94AE', link: '#' },\n secondaryButton: { text: '\u6B21\u6309\u94AE', link: '#' },\n },\n {\n theme: 'light',\n title: '\u8F6E\u64AD3',\n description: '\u8F6E\u64AD\u533A\u57573',\n imageUrl: 'https://placehold.co/200x240?text=Carousel2',\n primaryButton: { text: '\u4E3B\u6309\u94AE', link: '#' },\n secondaryButton: { text: '\u6B21\u6309\u94AE', link: '#' },\n },\n {\n theme: 'light',\n title: '\u8F6E\u64AD4',\n description: '\u8F6E\u64AD\u533A\u57574',\n imageUrl: {\n url: 'https://placehold.co/200x240?text=Carousel2',\n alt: 'Carousel2',\n thumbnailURL: 'https://placehold.co/200x240?text=Carousel2',\n mimeType: 'image/png',\n },\n primaryButton: { text: '\u4E3B\u6309\u94AE', link: '#' },\n secondaryButton: { text: '\u6B21\u6309\u94AE', link: '#' },\n },\n {\n theme: 'light',\n title: '\u8F6E\u64AD5',\n description: '\u8F6E\u64AD\u533A\u57575',\n imageUrl: {\n url: 'https://placehold.co/200x240?text=Carousel2',\n alt: 'Carousel2',\n thumbnailURL: 'https://placehold.co/200x240?text=Carousel2',\n mimeType: 'image/png',\n },\n primaryButton: { text: '\u4E3B\u6309\u94AE', link: '#' },\n secondaryButton: { text: '\u6B21\u6309\u94AE', link: '#' },\n },\n]\n\nexport const Default: Story = {\n args: {\n data: {\n items: baseItems,\n carousel: { items: [] },\n },\n } as MultiLayoutGraphicBlockProps,\n}\n\nexport const ThirdWidth: Story = {\n args: {\n data: {\n items: [\n {\n theme: 'light',\n title: '\u6807\u98981',\n description: '\u8FD9\u662F\u7B2C\u4E00\u4E2A\u533A\u5757\u7684\u63CF\u8FF0',\n imageUrl: {\n url: 'https://placehold.co/1920x1080?text=Image1',\n alt: 'Image1',\n thumbnailURL: 'https://placehold.co/1920x1080?text=Image1',\n mimeType: 'image/png',\n },\n primaryButton: { text: '\u4E3B\u6309\u94AE', link: '#' },\n secondaryButton: { text: '\u6B21\u6309\u94AE', link: '#' },\n width: 'full' as const,\n },\n {\n theme: 'dark',\n title: '\u6807\u98982',\n description: '\u8FD9\u662F\u7B2C\u4E8C\u4E2A\u533A\u5757\u7684\u63CF\u8FF0',\n imageUrl: {\n url: 'https://placehold.co/200x240?text=Image2',\n alt: 'Image2',\n thumbnailURL: 'https://placehold.co/200x240?text=Image2',\n mimeType: 'image/png',\n },\n primaryButton: { text: '\u4E3B\u6309\u94AE', link: '#' },\n secondaryButton: { text: '\u6B21\u6309\u94AE', link: '#' },\n width: 'one-third' as const,\n },\n {\n theme: 'light',\n title: '\u6807\u98983',\n description: '\u8FD9\u662F\u7B2C\u4E09\u4E2A\u533A\u5757\u7684\u63CF\u8FF0',\n imageUrl: {\n url: 'https://placehold.co/200x240?text=Image3',\n alt: 'Image3',\n thumbnailURL: 'https://placehold.co/200x240?text=Image3',\n mimeType: 'image/png',\n },\n primaryButton: { text: '\u4E3B\u6309\u94AE', link: '#' },\n secondaryButton: { text: '\u6B21\u6309\u94AE', link: '#' },\n width: 'one-third' as const,\n },\n {\n theme: 'light',\n title: '\u6807\u98984',\n description: '\u8FD9\u662F\u7B2C4\u4E2A\u533A\u5757\u7684\u63CF\u8FF0',\n imageUrl: {\n url: 'https://placehold.co/200x240?text=Image3',\n alt: 'Image3',\n thumbnailURL: 'https://placehold.co/200x240?text=Image3',\n mimeType: 'image/png',\n },\n primaryButton: { text: '\u4E3B\u6309\u94AE', link: '#' },\n secondaryButton: { text: '\u6B21\u6309\u94AE', link: '#' },\n width: 'one-third' as const,\n },\n ],\n },\n } as MultiLayoutGraphicBlockProps,\n}\n\nexport const WithCarousel: Story = {\n args: {\n data: {\n items: baseItems.slice(0, 1),\n carousel: { items: carouselItems },\n },\n } as MultiLayoutGraphicBlockProps,\n}\n"],
|
|
5
|
+
"mappings": "0jBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,aAAAE,EAAA,eAAAC,EAAA,iBAAAC,EAAA,YAAAC,IAAA,eAAAC,EAAAN,GACA,IAAAO,EAAkB,iBAClBC,EAAoC,mFAEpCC,EAAqB,gBACrBF,EAAwB,uBACxBG,EAA8B,mCAC9BC,EAA0B,+BAE1B,MAAMC,EAA6C,CACjD,MAAO,yCACP,UAAW,EAAAC,QACX,KAAM,CAAC,UAAU,EACjB,WAAY,CACV,OAAQ,aACR,KAAM,CACJ,YAAa,CACX,UAAW,gIACb,CACF,CACF,CACF,EAEA,IAAOR,EAAQO,EAIf,MAAME,EAAY,CAChB,CACE,MAAO,QACP,MAAO,gBACP,YAAa,+DACb,SAAU,6CACV,cAAe,CAAE,KAAM,qBAAO,KAAM,GAAI,EACxC,gBAAiB,CAAE,KAAM,qBAAO,KAAM,GAAI,EAC1C,MAAO,MACT,EACA,CACE,MAAO,OACP,MAAO,gBACP,YAAa,+DACb,SAAU,2CACV,cAAe,CAAE,KAAM,qBAAO,KAAM,GAAI,EACxC,gBAAiB,CAAE,KAAM,qBAAO,KAAM,GAAI,EAC1C,MAAO,MACT,EACA,CACE,MAAO,QACP,MAAO,gBACP,YAAa,+DACb,SAAU,CACR,IAAK,2CACL,IAAK,SACL,aAAc,2CACd,SAAU,WACZ,EACA,cAAe,CAAE,KAAM,qBAAO,KAAM,GAAI,EACxC,gBAAiB,CAAE,KAAM,qBAAO,KAAM,GAAI,EAC1C,MAAO,MACT,CACF,EAEMC,EAAgB,CACpB,CACE,MAAO,OACP,MAAO,gBACP,YAAa,4BACb,SAAU,CACR,IAAK,8CACL,IAAK,YACL,aAAc,8CACd,SAAU,WACZ,EACA,cAAe,CAAE,KAAM,qBAAO,KAAM,GAAI,EACxC,gBAAiB,CAAE,KAAM,qBAAO,KAAM,GAAI,CAC5C,EACA,CACE,MAAO,QACP,MAAO,gBACP,YAAa,4BACb,SAAU,CACR,IAAK,8CACL,IAAK,YACL,aAAc,8CACd,SAAU,WACZ,EACA,cAAe,CAAE,KAAM,qBAAO,KAAM,GAAI,EACxC,gBAAiB,CAAE,KAAM,qBAAO,KAAM,GAAI,CAC5C,EACA,CACE,MAAO,QACP,MAAO,gBACP,YAAa,4BACb,SAAU,8CACV,cAAe,CAAE,KAAM,qBAAO,KAAM,GAAI,EACxC,gBAAiB,CAAE,KAAM,qBAAO,KAAM,GAAI,CAC5C,EACA,CACE,MAAO,QACP,MAAO,gBACP,YAAa,4BACb,SAAU,CACR,IAAK,8CACL,IAAK,YACL,aAAc,8CACd,SAAU,WACZ,EACA,cAAe,CAAE,KAAM,qBAAO,KAAM,GAAI,EACxC,gBAAiB,CAAE,KAAM,qBAAO,KAAM,GAAI,CAC5C,EACA,CACE,MAAO,QACP,MAAO,gBACP,YAAa,4BACb,SAAU,CACR,IAAK,8CACL,IAAK,YACL,aAAc,8CACd,SAAU,WACZ,EACA,cAAe,CAAE,KAAM,qBAAO,KAAM,GAAI,EACxC,gBAAiB,CAAE,KAAM,qBAAO,KAAM,GAAI,CAC5C,CACF,EAEab,EAAiB,CAC5B,KAAM,CACJ,KAAM,CACJ,MAAOY,EACP,SAAU,CAAE,MAAO,CAAC,CAAE,CACxB,CACF,CACF,EAEaX,EAAoB,CAC/B,KAAM,CACJ,KAAM,CACJ,MAAO,CACL,CACE,MAAO,QACP,MAAO,gBACP,YAAa,+DACb,SAAU,CACR,IAAK,6CACL,IAAK,SACL,aAAc,6CACd,SAAU,WACZ,EACA,cAAe,CAAE,KAAM,qBAAO,KAAM,GAAI,EACxC,gBAAiB,CAAE,KAAM,qBAAO,KAAM,GAAI,EAC1C,MAAO,MACT,EACA,CACE,MAAO,OACP,MAAO,gBACP,YAAa,+DACb,SAAU,CACR,IAAK,2CACL,IAAK,SACL,aAAc,2CACd,SAAU,WACZ,EACA,cAAe,CAAE,KAAM,qBAAO,KAAM,GAAI,EACxC,gBAAiB,CAAE,KAAM,qBAAO,KAAM,GAAI,EAC1C,MAAO,WACT,EACA,CACE,MAAO,QACP,MAAO,gBACP,YAAa,+DACb,SAAU,CACR,IAAK,2CACL,IAAK,SACL,aAAc,2CACd,SAAU,WACZ,EACA,cAAe,CAAE,KAAM,qBAAO,KAAM,GAAI,EACxC,gBAAiB,CAAE,KAAM,qBAAO,KAAM,GAAI,EAC1C,MAAO,WACT,EACA,CACE,MAAO,QACP,MAAO,gBACP,YAAa,0DACb,SAAU,CACR,IAAK,2CACL,IAAK,SACL,aAAc,2CACd,SAAU,WACZ,EACA,cAAe,CAAE,KAAM,qBAAO,KAAM,GAAI,EACxC,gBAAiB,CAAE,KAAM,qBAAO,KAAM,GAAI,EAC1C,MAAO,WACT,CACF,CACF,CACF,CACF,EAEaC,EAAsB,CACjC,KAAM,CACJ,KAAM,CACJ,MAAOU,EAAU,MAAM,EAAG,CAAC,EAC3B,SAAU,CAAE,MAAOC,CAAc,CACnC,CACF,CACF",
|
|
6
6
|
"names": ["MultiLayoutGraphicBlock_stories_exports", "__export", "Default", "ThirdWidth", "WithCarousel", "MultiLayoutGraphicBlock_stories_default", "__toCommonJS", "import_react", "import_MultiLayoutGraphicBlock", "import_gsap", "import_ScrollTrigger", "import_SplitText", "meta", "MultiLayoutGraphicBlock", "baseItems", "carouselItems"]
|
|
7
7
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { StoryObj } from '@storybook/react';
|
|
2
2
|
declare const meta: {
|
|
3
3
|
title: string;
|
|
4
|
-
component: ({ data, className
|
|
4
|
+
component: ({ data, className }: {
|
|
5
5
|
className?: string;
|
|
6
6
|
data: {
|
|
7
7
|
key?: string;
|
|
@@ -18,7 +18,6 @@ declare const meta: {
|
|
|
18
18
|
itemShape?: "round" | "square";
|
|
19
19
|
primaryButton?: string;
|
|
20
20
|
};
|
|
21
|
-
GSAP?: any;
|
|
22
21
|
}) => import("react/jsx-runtime").JSX.Element;
|
|
23
22
|
parameters: {
|
|
24
23
|
layout: string;
|