@anker-in/headless-ui 1.1.17-alpha.1766385794881 → 1.1.17-alpha.1766563773661
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/AnchorNavigation/index.d.ts +13 -2
- package/dist/cjs/biz-components/AnchorNavigation/index.js +1 -1
- package/dist/cjs/biz-components/AnchorNavigation/index.js.map +3 -3
- package/dist/cjs/biz-components/EventSchedule/index.d.ts +75 -6
- package/dist/cjs/biz-components/EventSchedule/index.js +1 -1
- package/dist/cjs/biz-components/EventSchedule/index.js.map +3 -3
- package/dist/cjs/biz-components/HeaderNavigation/index.js +1 -1
- package/dist/cjs/biz-components/HeaderNavigation/index.js.map +3 -3
- package/dist/cjs/biz-components/PromotionalBar/index.d.ts +17 -10
- package/dist/cjs/biz-components/PromotionalBar/index.js +1 -1
- package/dist/cjs/biz-components/PromotionalBar/index.js.map +3 -3
- package/dist/cjs/biz-components/Title/Countdown.d.ts +11 -0
- package/dist/cjs/biz-components/Title/Countdown.js +2 -0
- package/dist/cjs/biz-components/Title/Countdown.js.map +7 -0
- 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 +50 -0
- 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 -0
- package/dist/cjs/biz-components/index.js +1 -1
- package/dist/cjs/biz-components/index.js.map +3 -3
- package/dist/cjs/stories/anchorNavigation.stories.js +1 -1
- package/dist/cjs/stories/anchorNavigation.stories.js.map +3 -3
- package/dist/cjs/stories/eventSchedule.stories.js +1 -1
- package/dist/cjs/stories/eventSchedule.stories.js.map +3 -3
- package/dist/cjs/stories/promotionalBar.stories.js +1 -1
- package/dist/cjs/stories/promotionalBar.stories.js.map +3 -3
- package/dist/cjs/stories/title.stories.js +2 -0
- package/dist/cjs/stories/title.stories.js.map +7 -0
- package/dist/esm/biz-components/AnchorNavigation/index.d.ts +13 -2
- package/dist/esm/biz-components/AnchorNavigation/index.js +1 -1
- package/dist/esm/biz-components/AnchorNavigation/index.js.map +3 -3
- package/dist/esm/biz-components/EventSchedule/index.d.ts +75 -6
- package/dist/esm/biz-components/EventSchedule/index.js +1 -1
- package/dist/esm/biz-components/EventSchedule/index.js.map +3 -3
- package/dist/esm/biz-components/HeaderNavigation/index.js +1 -1
- package/dist/esm/biz-components/HeaderNavigation/index.js.map +3 -3
- package/dist/esm/biz-components/PromotionalBar/index.d.ts +17 -10
- package/dist/esm/biz-components/PromotionalBar/index.js +1 -1
- package/dist/esm/biz-components/PromotionalBar/index.js.map +3 -3
- package/dist/esm/biz-components/Title/Countdown.d.ts +11 -0
- package/dist/esm/biz-components/Title/Countdown.js +2 -0
- package/dist/esm/biz-components/Title/Countdown.js.map +7 -0
- 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 +50 -0
- package/dist/esm/biz-components/index.d.ts +1 -0
- package/dist/esm/biz-components/index.js +1 -1
- package/dist/esm/biz-components/index.js.map +2 -2
- package/dist/esm/stories/anchorNavigation.stories.js +1 -1
- package/dist/esm/stories/anchorNavigation.stories.js.map +3 -3
- package/dist/esm/stories/eventSchedule.stories.js +1 -1
- package/dist/esm/stories/eventSchedule.stories.js.map +3 -3
- package/dist/esm/stories/promotionalBar.stories.js +1 -1
- package/dist/esm/stories/promotionalBar.stories.js.map +3 -3
- package/dist/esm/stories/title.stories.js +2 -0
- package/dist/esm/stories/title.stories.js.map +7 -0
- package/package.json +1 -1
|
@@ -1,12 +1,23 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
|
|
2
|
+
/**
|
|
3
|
+
* 响应式背景图片配置
|
|
4
|
+
*/
|
|
5
|
+
export interface ResponsiveBackgroundImage {
|
|
6
|
+
/** 移动端图片 (<768px) */
|
|
7
|
+
mobile?: string;
|
|
8
|
+
/** 平板图片 (768-1440px) */
|
|
9
|
+
tablet?: string;
|
|
10
|
+
/** 笔记本图片 (1025-1440px) */
|
|
11
|
+
laptop?: string;
|
|
12
|
+
/** 桌面图片 (1441-1920px) */
|
|
13
|
+
desktop?: string;
|
|
14
|
+
/** 超大桌面图片 (≥1921px) */
|
|
15
|
+
lgDesktop?: string;
|
|
16
|
+
}
|
|
3
17
|
/**
|
|
4
18
|
* PromotionalBar 业务组件数据接口
|
|
5
19
|
*/
|
|
6
20
|
export interface PromotionalBarData {
|
|
7
|
-
title?: string;
|
|
8
|
-
/** 组件标题 */
|
|
9
|
-
subtitle?: string;
|
|
10
21
|
/** 组件内容标题 */
|
|
11
22
|
contentTitle?: string;
|
|
12
23
|
/** 组件内容描述 */
|
|
@@ -15,12 +26,8 @@ export interface PromotionalBarData {
|
|
|
15
26
|
buttonText?: string;
|
|
16
27
|
/** 按钮链接 */
|
|
17
28
|
buttonLink?: string;
|
|
18
|
-
/** 背景图片 */
|
|
19
|
-
|
|
20
|
-
bgImage1439?: Media;
|
|
21
|
-
bgImage1023?: Media;
|
|
22
|
-
bgImage767?: Media;
|
|
23
|
-
bgImage390?: Media;
|
|
29
|
+
/** 背景图片 - 支持字符串或响应式图片对象 */
|
|
30
|
+
backgroundImage?: string | ResponsiveBackgroundImage;
|
|
24
31
|
}
|
|
25
32
|
export interface PromotionalBarProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
26
33
|
/** 业务数据 */
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use client";import{jsx as
|
|
1
|
+
"use client";import{jsx as r,jsxs as c}from"react/jsx-runtime";import*as a from"react";import{cn as u}from"../../helpers/index.js";import{Heading as m,Button as f,Picture as d,Container as g}from"../../components/index.js";const x=p=>{if(!p)return;if(typeof p=="string")return p;const{mobile:t,tablet:i,laptop:n,desktop:o,lgDesktop:s}=p,e=[];return s?e.push(s):o?e.push(o):n?e.push(n):i?e.push(i):t&&e.push(t),o&&s&&e.push(`${o} 1920`),n&&(o||s)&&e.push(`${n} 1440`),i&&(n||o||s)&&e.push(`${i} 1024`),t&&(i||n||o||s)&&e.push(`${t} 768`),e.length>0?e.join(", "):void 0},l=a.forwardRef(({className:p,data:t,...i},n)=>{const{backgroundImage:o}=t,s=a.useMemo(()=>x(o),[o]);return r("div",{ref:n,className:u("w-full",p),...i,children:r(g,{className:"laptop:h-[192px] lg-desktop:h-[240px] h-[240px]",children:c("div",{className:"promotional-bar-content rounded-box relative h-full overflow-hidden",children:[c("div",{className:"laptop:px-8 laptop:justify-center lg-desktop:max-w-[620px] laptop:max-w-[392px] desktop:max-w-[584px] laptop:py-0 relative z-20 flex h-full flex-col p-4",children:[t.contentTitle&&r(m,{className:"text-[#F5F6F7]",size:3,children:t.contentTitle}),t.contentDesc&&r("p",{className:"laptop:text-[16px] laptop:line-clamp-2 lg-desktop:text-[18px] text-[14px] font-bold leading-[1.4] text-[#F5F6F7]",children:t.contentDesc}),r("div",{className:"laptop:mt-4 mt-1",children:t.buttonText&&r(f,{as:"a",variant:"link",className:"!p-0 text-[#F5F6F7]",href:t.buttonLink,children:t.buttonText})})]}),r(d,{source:s,className:"absolute inset-0 z-10",imgClassName:"h-full object-cover"})]})})})});l.displayName="PromotionalBar";var b=l;export{b as default};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/biz-components/PromotionalBar/index.tsx"],
|
|
4
|
-
"sourcesContent": ["'use client'\n\nimport * as React from 'react'\nimport { cn } from '../../helpers/index.js'\nimport { Heading, Button, Picture, Container } from '../../components/index.js'\
|
|
5
|
-
"mappings": "
|
|
6
|
-
"names": ["jsx", "jsxs", "React", "cn", "Heading", "Button", "Picture", "Container", "
|
|
4
|
+
"sourcesContent": ["'use client'\n\nimport * as React from 'react'\nimport { cn } from '../../helpers/index.js'\nimport { Heading, Button, Picture, Container } from '../../components/index.js'\n\n/**\n * \u54CD\u5E94\u5F0F\u80CC\u666F\u56FE\u7247\u914D\u7F6E\n */\nexport interface ResponsiveBackgroundImage {\n /** \u79FB\u52A8\u7AEF\u56FE\u7247 (<768px) */\n mobile?: string\n /** \u5E73\u677F\u56FE\u7247 (768-1440px) */\n tablet?: string\n /** \u7B14\u8BB0\u672C\u56FE\u7247 (1025-1440px) */\n laptop?: string\n /** \u684C\u9762\u56FE\u7247 (1441-1920px) */\n desktop?: string\n /** \u8D85\u5927\u684C\u9762\u56FE\u7247 (\u22651921px) */\n lgDesktop?: string\n}\n\n/**\n * PromotionalBar \u4E1A\u52A1\u7EC4\u4EF6\u6570\u636E\u63A5\u53E3\n */\nexport interface PromotionalBarData {\n /** \u7EC4\u4EF6\u5185\u5BB9\u6807\u9898 */\n contentTitle?: string\n /** \u7EC4\u4EF6\u5185\u5BB9\u63CF\u8FF0 */\n contentDesc?: string\n /** \u6309\u94AE\u6587\u672C */\n buttonText?: string\n /** \u6309\u94AE\u94FE\u63A5 */\n buttonLink?: string\n /** \u80CC\u666F\u56FE\u7247 - \u652F\u6301\u5B57\u7B26\u4E32\u6216\u54CD\u5E94\u5F0F\u56FE\u7247\u5BF9\u8C61 */\n backgroundImage?: string | ResponsiveBackgroundImage\n}\n\nexport interface PromotionalBarProps extends React.HTMLAttributes<HTMLDivElement> {\n /** \u4E1A\u52A1\u6570\u636E */\n data: PromotionalBarData\n}\n\n/**\n * \u5C06\u54CD\u5E94\u5F0F\u80CC\u666F\u56FE\u7247\u5BF9\u8C61\u8F6C\u6362\u4E3A Picture \u7EC4\u4EF6\u6240\u9700\u7684\u5B57\u7B26\u4E32\u683C\u5F0F\n */\nconst convertResponsiveImageToString = (\n backgroundImage: string | ResponsiveBackgroundImage | undefined\n): string | undefined => {\n if (!backgroundImage) return undefined\n if (typeof backgroundImage === 'string') return backgroundImage\n\n const { mobile, tablet, laptop, desktop, lgDesktop } = backgroundImage\n const parts: string[] = []\n\n // \u9ED8\u8BA4\u56FE\u7247\uFF08\u6700\u5927\u5C3A\u5BF8\uFF09\u653E\u5728\u6700\u524D\u9762\uFF0C\u4E0D\u9700\u8981\u65AD\u70B9\n if (lgDesktop) parts.push(lgDesktop)\n else if (desktop) parts.push(desktop)\n else if (laptop) parts.push(laptop)\n else if (tablet) parts.push(tablet)\n else if (mobile) parts.push(mobile)\n\n // \u6309\u65AD\u70B9\u4ECE\u5927\u5230\u5C0F\u6DFB\u52A0\n if (desktop && lgDesktop) parts.push(`${desktop} 1920`)\n if (laptop && (desktop || lgDesktop)) parts.push(`${laptop} 1440`)\n if (tablet && (laptop || desktop || lgDesktop)) parts.push(`${tablet} 1024`)\n if (mobile && (tablet || laptop || desktop || lgDesktop)) parts.push(`${mobile} 768`)\n\n return parts.length > 0 ? parts.join(', ') : undefined\n}\n\n/**\n * PromotionalBar - \u63A8\u5E7F\u680F\n *\n * @description \u63A8\u5E7F\u680F\n */\nconst PromotionalBar = React.forwardRef<HTMLDivElement, PromotionalBarProps>(({ className, data, ...props }, ref) => {\n const { backgroundImage } = data\n const pictureSource = React.useMemo(() => {\n return convertResponsiveImageToString(backgroundImage)\n }, [backgroundImage])\n return (\n <div ref={ref} className={cn('w-full', className)} {...props}>\n {/* \u63A8\u5E7F\u680F\u5185\u5BB9\u533A\u57DF - \u6839\u636E\u5177\u4F53\u4E1A\u52A1\u9700\u6C42\u5B9A\u5236 */}\n <Container className=\"laptop:h-[192px] lg-desktop:h-[240px] h-[240px]\">\n <div className=\"promotional-bar-content rounded-box relative h-full overflow-hidden\">\n <div className=\"laptop:px-8 laptop:justify-center lg-desktop:max-w-[620px] laptop:max-w-[392px] desktop:max-w-[584px] laptop:py-0 relative z-20 flex h-full flex-col p-4\">\n {data.contentTitle && (\n <Heading className=\"text-[#F5F6F7]\" size={3}>\n {data.contentTitle}\n </Heading>\n )}\n {data.contentDesc && (\n <p className=\"laptop:text-[16px] laptop:line-clamp-2 lg-desktop:text-[18px] text-[14px] font-bold leading-[1.4] text-[#F5F6F7]\">\n {data.contentDesc}\n </p>\n )}\n <div className=\"laptop:mt-4 mt-1\">\n {data.buttonText && (\n <Button as=\"a\" variant=\"link\" className=\"!p-0 text-[#F5F6F7]\" href={data.buttonLink}>\n {data.buttonText}\n </Button>\n )}\n </div>\n </div>\n <Picture source={pictureSource} className=\"absolute inset-0 z-10\" imgClassName=\"h-full object-cover\" />\n </div>\n </Container>\n </div>\n )\n})\n\nPromotionalBar.displayName = 'PromotionalBar'\nexport default PromotionalBar\n"],
|
|
5
|
+
"mappings": "aAsFU,OAEI,OAAAA,EAFJ,QAAAC,MAAA,oBApFV,UAAYC,MAAW,QACvB,OAAS,MAAAC,MAAU,yBACnB,OAAS,WAAAC,EAAS,UAAAC,EAAQ,WAAAC,EAAS,aAAAC,MAAiB,4BA0CpD,MAAMC,EACJC,GACuB,CACvB,GAAI,CAACA,EAAiB,OACtB,GAAI,OAAOA,GAAoB,SAAU,OAAOA,EAEhD,KAAM,CAAE,OAAAC,EAAQ,OAAAC,EAAQ,OAAAC,EAAQ,QAAAC,EAAS,UAAAC,CAAU,EAAIL,EACjDM,EAAkB,CAAC,EAGzB,OAAID,EAAWC,EAAM,KAAKD,CAAS,EAC1BD,EAASE,EAAM,KAAKF,CAAO,EAC3BD,EAAQG,EAAM,KAAKH,CAAM,EACzBD,EAAQI,EAAM,KAAKJ,CAAM,EACzBD,GAAQK,EAAM,KAAKL,CAAM,EAG9BG,GAAWC,GAAWC,EAAM,KAAK,GAAGF,CAAO,OAAO,EAClDD,IAAWC,GAAWC,IAAYC,EAAM,KAAK,GAAGH,CAAM,OAAO,EAC7DD,IAAWC,GAAUC,GAAWC,IAAYC,EAAM,KAAK,GAAGJ,CAAM,OAAO,EACvED,IAAWC,GAAUC,GAAUC,GAAWC,IAAYC,EAAM,KAAK,GAAGL,CAAM,MAAM,EAE7EK,EAAM,OAAS,EAAIA,EAAM,KAAK,IAAI,EAAI,MAC/C,EAOMC,EAAiBd,EAAM,WAAgD,CAAC,CAAE,UAAAe,EAAW,KAAAC,EAAM,GAAGC,CAAM,EAAGC,IAAQ,CACnH,KAAM,CAAE,gBAAAX,CAAgB,EAAIS,EACtBG,EAAgBnB,EAAM,QAAQ,IAC3BM,EAA+BC,CAAe,EACpD,CAACA,CAAe,CAAC,EACpB,OACET,EAAC,OAAI,IAAKoB,EAAK,UAAWjB,EAAG,SAAUc,CAAS,EAAI,GAAGE,EAErD,SAAAnB,EAACO,EAAA,CAAU,UAAU,kDACnB,SAAAN,EAAC,OAAI,UAAU,sEACb,UAAAA,EAAC,OAAI,UAAU,2JACZ,UAAAiB,EAAK,cACJlB,EAACI,EAAA,CAAQ,UAAU,iBAAiB,KAAM,EACvC,SAAAc,EAAK,aACR,EAEDA,EAAK,aACJlB,EAAC,KAAE,UAAU,mHACV,SAAAkB,EAAK,YACR,EAEFlB,EAAC,OAAI,UAAU,mBACZ,SAAAkB,EAAK,YACJlB,EAACK,EAAA,CAAO,GAAG,IAAI,QAAQ,OAAO,UAAU,sBAAsB,KAAMa,EAAK,WACtE,SAAAA,EAAK,WACR,EAEJ,GACF,EACAlB,EAACM,EAAA,CAAQ,OAAQe,EAAe,UAAU,wBAAwB,aAAa,sBAAsB,GACvG,EACF,EACF,CAEJ,CAAC,EAEDL,EAAe,YAAc,iBAC7B,IAAOM,EAAQN",
|
|
6
|
+
"names": ["jsx", "jsxs", "React", "cn", "Heading", "Button", "Picture", "Container", "convertResponsiveImageToString", "backgroundImage", "mobile", "tablet", "laptop", "desktop", "lgDesktop", "parts", "PromotionalBar", "className", "data", "props", "ref", "pictureSource", "PromotionalBar_default"]
|
|
7
7
|
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { CountdownConfig } from './types.js';
|
|
3
|
+
interface CountdownProps {
|
|
4
|
+
config: CountdownConfig;
|
|
5
|
+
className?: string;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Countdown - 倒计时组件
|
|
9
|
+
*/
|
|
10
|
+
declare const Countdown: React.ForwardRefExoticComponent<CountdownProps & React.RefAttributes<HTMLDivElement>>;
|
|
11
|
+
export default Countdown;
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use client";import{jsx as s,jsxs as b}from"react/jsx-runtime";import p,{useState as v,useEffect as C}from"react";import g from"dayjs";import{cn as k}from"../../helpers/utils.js";const x=n=>{const o=g(),e=g(n).diff(o,"second");if(e<=0)return{days:0,hours:0,minutes:0,seconds:0};const u=Math.floor(e/(24*60*60)),c=Math.floor(e%(24*60*60)/(60*60)),d=Math.floor(e%(60*60)/60),f=e%60;return{days:u,hours:c,minutes:d,seconds:f}},L=({value:n,label:o})=>b("div",{className:"lg-desktop:size-12 bg-info-primary lg-desktop:px-1 flex size-10 flex-col items-center justify-center px-[2px] text-center text-white",children:[s("p",{className:"lg-desktop:text-2xl text-[20px] font-bold leading-[1.2] tracking-[-0.96px]",children:String(n).padStart(2,"0")}),s("p",{className:"text-[12px] font-bold leading-[1.4] tracking-[-0.24px]",children:o})]}),N=()=>s("p",{className:"lg-desktop:text-2xl text-info-primary text-center text-xl font-bold leading-[1.2] tracking-[-0.96px]",children:":"}),h=p.forwardRef(({config:n,className:o},m)=>{const{targetDate:e,showDays:u=!0,showHours:c=!0,showMinutes:d=!0,showSeconds:f=!0,labels:r={}}=n,[l,y]=v(()=>x(e));C(()=>{const a=setInterval(()=>{y(x(e))},1e3);return()=>clearInterval(a)},[e]);const i={days:r.days||"Day",hours:r.hours||"Hours",minutes:r.minutes||"Mins",seconds:r.seconds||"Secs"},t=[];return u&&t.push({value:l.days,label:i.days}),c&&t.push({value:l.hours,label:i.hours}),d&&t.push({value:l.minutes,label:i.minutes}),f&&t.push({value:l.seconds,label:i.seconds}),s("div",{ref:m,className:k("flex items-center gap-1",o),children:t.map((a,w)=>b(p.Fragment,{children:[s(L,{value:a.value,label:a.label}),w<t.length-1&&s(N,{})]},a.label))})});h.displayName="Countdown";var D=h;export{D as default};
|
|
2
|
+
//# sourceMappingURL=Countdown.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/biz-components/Title/Countdown.tsx"],
|
|
4
|
+
"sourcesContent": ["'use client'\nimport React, { useState, useEffect } from 'react'\nimport dayjs from 'dayjs'\nimport { cn } from '../../helpers/utils.js'\nimport type { CountdownConfig } from './types.js'\n\ninterface CountdownProps {\n config: CountdownConfig\n className?: string\n}\n\ninterface TimeLeft {\n days: number\n hours: number\n minutes: number\n seconds: number\n}\n\n/**\n * \u8BA1\u7B97\u5269\u4F59\u65F6\u95F4\n */\nconst calculateTimeLeft = (targetDate: string): TimeLeft => {\n const now = dayjs()\n const target = dayjs(targetDate)\n const diff = target.diff(now, 'second')\n\n if (diff <= 0) {\n return { days: 0, hours: 0, minutes: 0, seconds: 0 }\n }\n\n const days = Math.floor(diff / (24 * 60 * 60))\n const hours = Math.floor((diff % (24 * 60 * 60)) / (60 * 60))\n const minutes = Math.floor((diff % (60 * 60)) / 60)\n const seconds = diff % 60\n\n return { days, hours, minutes, seconds }\n}\n\n/**\n * \u5012\u8BA1\u65F6\u6570\u5B57\u5757\u7EC4\u4EF6\n */\nconst CountdownUnit = ({ value, label }: { value: number; label: string }) => {\n return (\n <div className=\"lg-desktop:size-12 bg-info-primary lg-desktop:px-1 flex size-10 flex-col items-center justify-center px-[2px] text-center text-white\">\n <p className=\"lg-desktop:text-2xl text-[20px] font-bold leading-[1.2] tracking-[-0.96px]\">\n {String(value).padStart(2, '0')}\n </p>\n <p className=\"text-[12px] font-bold leading-[1.4] tracking-[-0.24px]\">{label}</p>\n </div>\n )\n}\n\n/**\n * \u5012\u8BA1\u65F6\u5206\u9694\u7B26\n */\nconst CountdownSeparator = () => {\n return (\n <p className=\"lg-desktop:text-2xl text-info-primary text-center text-xl font-bold leading-[1.2] tracking-[-0.96px]\">\n :\n </p>\n )\n}\n\n/**\n * Countdown - \u5012\u8BA1\u65F6\u7EC4\u4EF6\n */\nconst Countdown = React.forwardRef<HTMLDivElement, CountdownProps>(({ config, className }, ref) => {\n const { targetDate, showDays = true, showHours = true, showMinutes = true, showSeconds = true, labels = {} } = config\n\n const [timeLeft, setTimeLeft] = useState<TimeLeft>(() => calculateTimeLeft(targetDate))\n\n useEffect(() => {\n const timer = setInterval(() => {\n setTimeLeft(calculateTimeLeft(targetDate))\n }, 1000)\n\n return () => clearInterval(timer)\n }, [targetDate])\n\n const defaultLabels = {\n days: labels.days || 'Day',\n hours: labels.hours || 'Hours',\n minutes: labels.minutes || 'Mins',\n seconds: labels.seconds || 'Secs',\n }\n\n const units = []\n if (showDays) units.push({ value: timeLeft.days, label: defaultLabels.days })\n if (showHours) units.push({ value: timeLeft.hours, label: defaultLabels.hours })\n if (showMinutes) units.push({ value: timeLeft.minutes, label: defaultLabels.minutes })\n if (showSeconds) units.push({ value: timeLeft.seconds, label: defaultLabels.seconds })\n\n return (\n <div ref={ref} className={cn('flex items-center gap-1', className)}>\n {units.map((unit, index) => (\n <React.Fragment key={unit.label}>\n <CountdownUnit value={unit.value} label={unit.label} />\n {index < units.length - 1 && <CountdownSeparator />}\n </React.Fragment>\n ))}\n </div>\n )\n})\n\nCountdown.displayName = 'Countdown'\n\nexport default Countdown\n"],
|
|
5
|
+
"mappings": "aA2CI,OACE,OAAAA,EADF,QAAAC,MAAA,oBA1CJ,OAAOC,GAAS,YAAAC,EAAU,aAAAC,MAAiB,QAC3C,OAAOC,MAAW,QAClB,OAAS,MAAAC,MAAU,yBAkBnB,MAAMC,EAAqBC,GAAiC,CAC1D,MAAMC,EAAMJ,EAAM,EAEZK,EADSL,EAAMG,CAAU,EACX,KAAKC,EAAK,QAAQ,EAEtC,GAAIC,GAAQ,EACV,MAAO,CAAE,KAAM,EAAG,MAAO,EAAG,QAAS,EAAG,QAAS,CAAE,EAGrD,MAAMC,EAAO,KAAK,MAAMD,GAAQ,GAAK,GAAK,GAAG,EACvCE,EAAQ,KAAK,MAAOF,GAAQ,GAAK,GAAK,KAAQ,GAAK,GAAG,EACtDG,EAAU,KAAK,MAAOH,GAAQ,GAAK,IAAO,EAAE,EAC5CI,EAAUJ,EAAO,GAEvB,MAAO,CAAE,KAAAC,EAAM,MAAAC,EAAO,QAAAC,EAAS,QAAAC,CAAQ,CACzC,EAKMC,EAAgB,CAAC,CAAE,MAAAC,EAAO,MAAAC,CAAM,IAElChB,EAAC,OAAI,UAAU,uIACb,UAAAD,EAAC,KAAE,UAAU,6EACV,gBAAOgB,CAAK,EAAE,SAAS,EAAG,GAAG,EAChC,EACAhB,EAAC,KAAE,UAAU,yDAA0D,SAAAiB,EAAM,GAC/E,EAOEC,EAAqB,IAEvBlB,EAAC,KAAE,UAAU,uGAAuG,aAEpH,EAOEmB,EAAYjB,EAAM,WAA2C,CAAC,CAAE,OAAAkB,EAAQ,UAAAC,CAAU,EAAGC,IAAQ,CACjG,KAAM,CAAE,WAAAd,EAAY,SAAAe,EAAW,GAAM,UAAAC,EAAY,GAAM,YAAAC,EAAc,GAAM,YAAAC,EAAc,GAAM,OAAAC,EAAS,CAAC,CAAE,EAAIP,EAEzG,CAACQ,EAAUC,CAAW,EAAI1B,EAAmB,IAAMI,EAAkBC,CAAU,CAAC,EAEtFJ,EAAU,IAAM,CACd,MAAM0B,EAAQ,YAAY,IAAM,CAC9BD,EAAYtB,EAAkBC,CAAU,CAAC,CAC3C,EAAG,GAAI,EAEP,MAAO,IAAM,cAAcsB,CAAK,CAClC,EAAG,CAACtB,CAAU,CAAC,EAEf,MAAMuB,EAAgB,CACpB,KAAMJ,EAAO,MAAQ,MACrB,MAAOA,EAAO,OAAS,QACvB,QAASA,EAAO,SAAW,OAC3B,QAASA,EAAO,SAAW,MAC7B,EAEMK,EAAQ,CAAC,EACf,OAAIT,GAAUS,EAAM,KAAK,CAAE,MAAOJ,EAAS,KAAM,MAAOG,EAAc,IAAK,CAAC,EACxEP,GAAWQ,EAAM,KAAK,CAAE,MAAOJ,EAAS,MAAO,MAAOG,EAAc,KAAM,CAAC,EAC3EN,GAAaO,EAAM,KAAK,CAAE,MAAOJ,EAAS,QAAS,MAAOG,EAAc,OAAQ,CAAC,EACjFL,GAAaM,EAAM,KAAK,CAAE,MAAOJ,EAAS,QAAS,MAAOG,EAAc,OAAQ,CAAC,EAGnF/B,EAAC,OAAI,IAAKsB,EAAK,UAAWhB,EAAG,0BAA2Be,CAAS,EAC9D,SAAAW,EAAM,IAAI,CAACC,EAAMC,IAChBjC,EAACC,EAAM,SAAN,CACC,UAAAF,EAACe,EAAA,CAAc,MAAOkB,EAAK,MAAO,MAAOA,EAAK,MAAO,EACpDC,EAAQF,EAAM,OAAS,GAAKhC,EAACkB,EAAA,EAAmB,IAF9Be,EAAK,KAG1B,CACD,EACH,CAEJ,CAAC,EAEDd,EAAU,YAAc,YAExB,IAAOgB,EAAQhB",
|
|
6
|
+
"names": ["jsx", "jsxs", "React", "useState", "useEffect", "dayjs", "cn", "calculateTimeLeft", "targetDate", "now", "diff", "days", "hours", "minutes", "seconds", "CountdownUnit", "value", "label", "CountdownSeparator", "Countdown", "config", "className", "ref", "showDays", "showHours", "showMinutes", "showSeconds", "labels", "timeLeft", "setTimeLeft", "timer", "defaultLabels", "units", "unit", "index", "Countdown_default"]
|
|
7
|
+
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use client";import{jsx as
|
|
1
|
+
"use client";import{jsx as t,jsxs as w}from"react/jsx-runtime";import q,{useEffect as G,useRef as c,useImperativeHandle as J}from"react";import{gsap as x}from"gsap";import{SplitText as H}from"gsap/dist/SplitText";import{ScrollTrigger as M}from"gsap/dist/ScrollTrigger";import{cn as e}from"../../helpers/utils.js";import{Heading as K,Text as Q}from"../../components/index.js";import{withLayout as X}from"../../shared/Styles.js";import{trackUrlRef as Y}from"../../shared/trackUrlRef.js";import{useInView as Z}from"react-intersection-observer";import tt from"./Countdown.js";const E="link",$="title",P=({data:i,className:m})=>{const{theme:d,extensions:s,title:p,caption:f,align:o}=i;return s?.textLink?w("a",{className:e({"aiui-dark":d==="dark"},"flex items-center overflow-hidden text-base font-[700] leading-[1.4] text-[#777] transition-all duration-[0.4s] hover:text-[#080A0F]",{"justify-center":o==="center"},m),href:Y(s?.link,`${E}_${$}`),"data-headless-type-name":`${E}#${$}`,"data-headless-title-desc-button":`${p}#${f}`,children:[t("div",{className:e("flex-1 truncate whitespace-nowrap",{"flex-none":o==="center"}),children:s?.textLink}),t("div",{className:"size-6",children:t("svg",{width:"24",height:"24",className:"mb-[3px]",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",children:t("path",{className:"transition-all duration-[0.4s]",d:"M10.5 8L14.5 12L10.5 16",stroke:"#777",strokeWidth:"1.5",strokeLinecap:"round"})})})]}):null},j=q.forwardRef(({data:i,className:m,as:d="h2",weight:s="bold",mobFlexCol:p=!1},f)=>{const{title:o,caption:v,theme:z,extensions:S,align:r="left",subtitle:b,countdown:k}=i,T=c(null),a=c(null),n=c(null),l=c(null),{ref:B,inView:y}=Z();return J(f,()=>T.current),G(()=>{x.registerPlugin(H,M);function D(){if(!a.current)return;const I=a.current?.clientHeight||80;n.current&&n.current.revert(),l.current&&l.current.kill(),n.current=new H(a.current,{type:"words",wordsClass:"word"});const u=n.current.words;x.set(u,{opacity:0}),l.current=M.create({trigger:a.current,start:"bottom bottom-=4%",end:`bottom+=${I*1.5+60}px bottom-=4%`,scrub:!0,invalidateOnRefresh:!0,onUpdate:V=>{const A=V.progress,N=u.length||1,C=.5,g=1/N,L=g*(1-C),R=(N-1)*L+g,F=Math.min(1,R>0?A/R:0);u.forEach((U,O)=>{const W=O*L,_=g;let h=(F-W)/_;h=Math.max(0,Math.min(1,h)),x.set(U,{opacity:h})})}})}return y&&D(),()=>{n.current&&n.current.revert(),l.current&&l.current.kill()}},[y]),(o||v)&&w("div",{ref:T,id:S?.id,className:e("titleBottom title-box mb-6 flex items-end justify-between gap-2",{"md-tablet:flex-col md-tablet:items-start":p}),children:[w("div",{ref:B,className:e("flex-1 space-y-4",m,{"aiui-dark":z==="dark","text-center":r==="center","text-right":r==="right","text-left":r==="left"}),children:[t(K,{ref:a,as:d,size:4,html:v||o,weight:s}),b&&t(Q,{html:b,className:"desktop:text-base desktop:mt-2 lg-desktop:text-[18px] mt-1 text-[14px] font-bold leading-[1.4] tracking-[-0.36px] text-[#080A0F]"}),t(P,{data:i,className:e({hidden:r==="left"})}),k&&t(tt,{className:e("laptop:!mt-2 !mt-4 justify-start",{"justify-center":r==="center"}),config:k})]}),t(P,{data:i,className:e({hidden:r==="center"})})]})});j.displayName="Title";var dt=X(j);export{dt as default};
|
|
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, { useEffect, useRef, useImperativeHandle } from '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 { withLayout } from '../../shared/Styles.js'\nimport type { TitleProps } from './types.js'\nimport { trackUrlRef } from '../../shared/trackUrlRef.js'\nimport { useInView } from 'react-intersection-observer'\n\nconst componentType = 'link'\nconst componentName = 'title'\n\nconst Title = React.forwardRef<HTMLDivElement, TitleProps>(\n ({ data, className, as = 'h2', weight = 'bold', mobFlexCol = false }, ref) => {\n const { title, caption, theme, extensions, align = 'left' } = data\n const innerRef = useRef<HTMLDivElement>(null)\n const titleRef = useRef<HTMLHeadingElement>(null)\n const splitTextInstance = useRef<SplitText | null>(null)\n const scrollTriggerRef = useRef<ScrollTrigger | null>(null)\n\n const { ref: inViewRef, inView } = useInView()\n\n useImperativeHandle(ref, () => innerRef.current as HTMLDivElement)\n\n useEffect(() => {\n gsap.registerPlugin(SplitText, ScrollTrigger)\n function gsapResize() {\n if (!titleRef.current) return\n const height = titleRef.current?.clientHeight || 80\n if (splitTextInstance.current) {\n splitTextInstance.current.revert()\n }\n if (scrollTriggerRef.current) {\n scrollTriggerRef.current.kill()\n }\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 scrollTriggerRef.current = ScrollTrigger.create({\n trigger: titleRef.current,\n start: 'bottom bottom-=4%',\n end: `bottom+=${height * 1.5 + 60}px bottom-=4%`,\n scrub: true,\n invalidateOnRefresh: true,\n onUpdate: (self: any) => {\n const progress = self.progress\n const total = words.length || 1\n const overlap = 0.5\n const interval = 1 / total\n const step = interval * (1 - overlap)\n const lastEnd = (total - 1) * step + interval\n const normalizedProgress = Math.min(1, lastEnd > 0 ? progress / lastEnd : 0)\n words.forEach((word: any, i: number) => {\n const start = i * step\n const width = interval\n let opacity = (normalizedProgress - start) / width\n opacity = Math.max(0, Math.min(1, opacity))\n gsap.set(word, { opacity })\n })\n },\n })\n }\n\n if (inView) {\n gsapResize()\n }\n\n return () => {\n splitTextInstance.current && splitTextInstance.current.revert()\n // ScrollTrigger.getAll().forEach((t: { kill: () => any }) => t.kill())\n scrollTriggerRef.current && scrollTriggerRef.current.kill()\n }\n }, [inView])\n\n return (\n (title || caption) && (\n <div\n ref={innerRef}\n id={extensions?.id}\n className={cn('titleBottom title-box mb-6 flex items-end justify-between gap-2', {\n 'md-tablet:flex-col md-tablet:items-start': mobFlexCol,\n })}\n >\n <div\n ref={inViewRef}\n className={cn('flex-1 space-y-4', className, {\n 'aiui-dark': theme === 'dark',\n 'text-center': align === 'center',\n 'text-right': align === 'right',\n 'text-left': align === 'left',\n })}\n >\n <Heading ref={titleRef} as={as} size={4} html={caption || title} weight={weight} />\n
|
|
5
|
-
"mappings": "
|
|
6
|
-
"names": ["jsx", "jsxs", "React", "useEffect", "useRef", "useImperativeHandle", "gsap", "SplitText", "ScrollTrigger", "cn", "Heading", "withLayout", "trackUrlRef", "useInView", "componentType", "componentName", "
|
|
4
|
+
"sourcesContent": ["'use client'\nimport React, { useEffect, useRef, useImperativeHandle } from '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 { withLayout } from '../../shared/Styles.js'\nimport type { TitleProps } from './types.js'\nimport { trackUrlRef } from '../../shared/trackUrlRef.js'\nimport { useInView } from 'react-intersection-observer'\nimport Countdown from './Countdown.js'\n\nconst componentType = 'link'\nconst componentName = 'title'\n\nconst TitleButton = ({ data, className }: { data: TitleProps['data']; className?: string }) => {\n const { theme, extensions, title, caption, align } = data\n if (!extensions?.textLink) return null\n return (\n <a\n className={cn(\n { 'aiui-dark': theme === 'dark' },\n 'flex items-center overflow-hidden text-base font-[700] leading-[1.4] text-[#777] transition-all duration-[0.4s] hover:text-[#080A0F]',\n { 'justify-center': align === 'center' },\n className\n )}\n href={trackUrlRef(extensions?.link, `${componentType}_${componentName}`)}\n data-headless-type-name={`${componentType}#${componentName}`}\n data-headless-title-desc-button={`${title}#${caption}`}\n >\n <div\n className={cn('flex-1 truncate whitespace-nowrap', {\n 'flex-none': align === 'center',\n })}\n >\n {extensions?.textLink}\n </div>\n <div className=\"size-6\">\n <svg\n width=\"24\"\n height=\"24\"\n className=\"mb-[3px]\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n >\n <path\n className=\"transition-all duration-[0.4s]\"\n d=\"M10.5 8L14.5 12L10.5 16\"\n stroke=\"#777\"\n strokeWidth=\"1.5\"\n strokeLinecap=\"round\"\n ></path>\n </svg>\n </div>\n </a>\n )\n}\n\nconst Title = React.forwardRef<HTMLDivElement, TitleProps>(\n ({ data, className, as = 'h2', weight = 'bold', mobFlexCol = false }, ref) => {\n const { title, caption, theme, extensions, align = 'left', subtitle, countdown } = data\n const innerRef = useRef<HTMLDivElement>(null)\n const titleRef = useRef<HTMLHeadingElement>(null)\n const splitTextInstance = useRef<SplitText | null>(null)\n const scrollTriggerRef = useRef<ScrollTrigger | null>(null)\n\n const { ref: inViewRef, inView } = useInView()\n\n useImperativeHandle(ref, () => innerRef.current as HTMLDivElement)\n\n useEffect(() => {\n gsap.registerPlugin(SplitText, ScrollTrigger)\n function gsapResize() {\n if (!titleRef.current) return\n const height = titleRef.current?.clientHeight || 80\n if (splitTextInstance.current) {\n splitTextInstance.current.revert()\n }\n if (scrollTriggerRef.current) {\n scrollTriggerRef.current.kill()\n }\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 scrollTriggerRef.current = ScrollTrigger.create({\n trigger: titleRef.current,\n start: 'bottom bottom-=4%',\n end: `bottom+=${height * 1.5 + 60}px bottom-=4%`,\n scrub: true,\n invalidateOnRefresh: true,\n onUpdate: (self: any) => {\n const progress = self.progress\n const total = words.length || 1\n const overlap = 0.5\n const interval = 1 / total\n const step = interval * (1 - overlap)\n const lastEnd = (total - 1) * step + interval\n const normalizedProgress = Math.min(1, lastEnd > 0 ? progress / lastEnd : 0)\n words.forEach((word: any, i: number) => {\n const start = i * step\n const width = interval\n let opacity = (normalizedProgress - start) / width\n opacity = Math.max(0, Math.min(1, opacity))\n gsap.set(word, { opacity })\n })\n },\n })\n }\n\n if (inView) {\n gsapResize()\n }\n\n return () => {\n splitTextInstance.current && splitTextInstance.current.revert()\n // ScrollTrigger.getAll().forEach((t: { kill: () => any }) => t.kill())\n scrollTriggerRef.current && scrollTriggerRef.current.kill()\n }\n }, [inView])\n\n return (\n (title || caption) && (\n <div\n ref={innerRef}\n id={extensions?.id}\n className={cn('titleBottom title-box mb-6 flex items-end justify-between gap-2', {\n 'md-tablet:flex-col md-tablet:items-start': mobFlexCol,\n })}\n >\n <div\n ref={inViewRef}\n className={cn('flex-1 space-y-4', className, {\n 'aiui-dark': theme === 'dark',\n 'text-center': align === 'center',\n 'text-right': align === 'right',\n 'text-left': align === 'left',\n })}\n >\n <Heading ref={titleRef} as={as} size={4} html={caption || title} weight={weight} />\n {subtitle && (\n <Text\n html={subtitle}\n className=\"desktop:text-base desktop:mt-2 lg-desktop:text-[18px] mt-1 text-[14px] font-bold leading-[1.4] tracking-[-0.36px] text-[#080A0F]\"\n />\n )}\n <TitleButton data={data} className={cn({ hidden: align === 'left' })} />\n {countdown && (\n <Countdown\n className={cn('laptop:!mt-2 !mt-4 justify-start', {\n 'justify-center': align === 'center',\n })}\n config={countdown}\n />\n )}\n </div>\n <TitleButton data={data} className={cn({ hidden: align === 'center' })} />\n </div>\n )\n )\n }\n)\n\nTitle.displayName = 'Title'\n\nexport default withLayout(Title)\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["jsx", "jsxs", "React", "useEffect", "useRef", "useImperativeHandle", "gsap", "SplitText", "ScrollTrigger", "cn", "Heading", "Text", "withLayout", "trackUrlRef", "useInView", "Countdown", "componentType", "componentName", "TitleButton", "data", "className", "theme", "extensions", "title", "caption", "align", "Title", "as", "weight", "mobFlexCol", "ref", "subtitle", "countdown", "innerRef", "titleRef", "splitTextInstance", "scrollTriggerRef", "inViewRef", "inView", "gsapResize", "height", "words", "self", "progress", "total", "overlap", "interval", "step", "lastEnd", "normalizedProgress", "word", "i", "start", "width", "opacity", "Title_default"]
|
|
7
7
|
}
|
|
@@ -5,6 +5,44 @@ export interface Feature {
|
|
|
5
5
|
*/
|
|
6
6
|
title: string;
|
|
7
7
|
}
|
|
8
|
+
/**
|
|
9
|
+
* 倒计时配置
|
|
10
|
+
*/
|
|
11
|
+
export interface CountdownConfig {
|
|
12
|
+
/**
|
|
13
|
+
* 倒计时目标时间(ISO 8601 格式或任何 dayjs 支持的格式)
|
|
14
|
+
*/
|
|
15
|
+
targetDate: string;
|
|
16
|
+
/**
|
|
17
|
+
* 是否显示天数
|
|
18
|
+
* @default true
|
|
19
|
+
*/
|
|
20
|
+
showDays?: boolean;
|
|
21
|
+
/**
|
|
22
|
+
* 是否显示小时
|
|
23
|
+
* @default true
|
|
24
|
+
*/
|
|
25
|
+
showHours?: boolean;
|
|
26
|
+
/**
|
|
27
|
+
* 是否显示分钟
|
|
28
|
+
* @default true
|
|
29
|
+
*/
|
|
30
|
+
showMinutes?: boolean;
|
|
31
|
+
/**
|
|
32
|
+
* 是否显示秒数
|
|
33
|
+
* @default true
|
|
34
|
+
*/
|
|
35
|
+
showSeconds?: boolean;
|
|
36
|
+
/**
|
|
37
|
+
* 自定义标签文本
|
|
38
|
+
*/
|
|
39
|
+
labels?: {
|
|
40
|
+
days?: string;
|
|
41
|
+
hours?: string;
|
|
42
|
+
minutes?: string;
|
|
43
|
+
seconds?: string;
|
|
44
|
+
};
|
|
45
|
+
}
|
|
8
46
|
export interface TitleProps {
|
|
9
47
|
mobFlexCol?: boolean;
|
|
10
48
|
data: {
|
|
@@ -13,6 +51,14 @@ export interface TitleProps {
|
|
|
13
51
|
*/
|
|
14
52
|
title?: string;
|
|
15
53
|
caption?: string;
|
|
54
|
+
/**
|
|
55
|
+
* 副标题
|
|
56
|
+
*/
|
|
57
|
+
subtitle?: string;
|
|
58
|
+
/**
|
|
59
|
+
* 倒计时配置
|
|
60
|
+
*/
|
|
61
|
+
countdown?: CountdownConfig;
|
|
16
62
|
/**
|
|
17
63
|
* 特性列表,最多支持3个
|
|
18
64
|
*/
|
|
@@ -25,6 +71,10 @@ export interface TitleProps {
|
|
|
25
71
|
* 扩展数据
|
|
26
72
|
*/
|
|
27
73
|
extensions?: any;
|
|
74
|
+
/**
|
|
75
|
+
* 对齐方式
|
|
76
|
+
* @default 'left'
|
|
77
|
+
*/
|
|
28
78
|
align?: 'left' | 'center' | 'right';
|
|
29
79
|
};
|
|
30
80
|
weight?: 'medium' | 'semibold' | 'bold' | 'extraBold' | 'black';
|
|
@@ -99,6 +99,7 @@ export { default as PromotionalBar } from './PromotionalBar/index.js';
|
|
|
99
99
|
export { default as EventSchedule } from './EventSchedule/index.js';
|
|
100
100
|
export { default as SecondaryBanner } from './SecondaryBanner/index.js';
|
|
101
101
|
export { default as BuyOneGetOneShelf } from './BuyOneGetOneShelf/index.js';
|
|
102
|
+
export { default as StockShelf } from './StockShelf/index.js';
|
|
102
103
|
export declare const PAYLOAD_COMPONENT_MAP: {
|
|
103
104
|
'ipc-accordioncards': string;
|
|
104
105
|
'ipc-aplusdesc': string;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{default as t}from"./BrandEquity/index.js";import{default as p}from"./MemberEquity/index.js";import{default as f}from"./Slogan/index.js";import{default as u}from"./Title/index.js";import{default as l}from"./Spacer/index.js";import{default as m}from"./ShelfDisplay/index.js";import{default as n}from"./Evaluate/index.js";import{default as P}from"./Category/index.js";import{default as S}from"./HeroBanner/index.js";import{default as C}from"./AccordionCards/index.js";import{default as T}from"./Graphic/index.js";import{default as v}from"./MediaPlayerBase/index.js";import{default as b}from"./MediaPlayerSticky/index.js";import{default as q}from"./MediaPlayerMulti/index.js";import{default as j}from"./Marquee/index.js";import{default as
|
|
1
|
+
import{default as t}from"./BrandEquity/index.js";import{default as p}from"./MemberEquity/index.js";import{default as f}from"./Slogan/index.js";import{default as u}from"./Title/index.js";import{default as l}from"./Spacer/index.js";import{default as m}from"./ShelfDisplay/index.js";import{default as n}from"./Evaluate/index.js";import{default as P}from"./Category/index.js";import{default as S}from"./HeroBanner/index.js";import{default as C}from"./AccordionCards/index.js";import{default as T}from"./Graphic/index.js";import{default as v}from"./MediaPlayerBase/index.js";import{default as b}from"./MediaPlayerSticky/index.js";import{default as q}from"./MediaPlayerMulti/index.js";import{default as j}from"./Marquee/index.js";import{default as w}from"./MarqueeReview/index.js";import{default as D}from"./WhyChoose/index.js";import{default as E}from"./Faq/index.js";import{MarqueeItem as H,MarqueeImageContent as N,MarqueeTextContent as O}from"./Marquee/index.js";import{default as R}from"./MultiLayoutGraphicBlock/index.js";import{default as V}from"./GraphicAttractionBlock/index.js";import{default as Y}from"./HeaderNavigation/index.js";import{default as Q}from"./FooterNavigation/index.js";import{default as X}from"./SearchPage/index.js";import{IPC_SEARCH_PAGE as $,SearchPageTabType as ee}from"./SearchPage/types.js";import{withLayout as ae}from"../shared/Styles.js";import{default as oe}from"./AiuiProvider/index.js";import{default as se}from"./Tabs/index.js";import{default as ie}from"./CreativeModule/index.js";import{default as de}from"./GraphicOverlay/index.js";import{default as ce}from"./Specs/index.js";import{default as xe}from"./TabsGroup/index.js";import{default as he}from"./Listing/BizProductProvider.js";import{default as ye}from"./Listing/components/PurchaseBar/index.js";import{default as ge}from"./Listing/components/PurchaseBar/ProductActions/index.js";import{default as Me}from"./Listing/components/ProductCard/index.js";import{default as Be}from"./Listing/components/ProductCard/ProductDetail/ProductBenefitsTabs/index.js";import{default as Fe}from"./Listing/components/ProductCard/ProductDetail/ProductHighlight/index.js";import{default as Ie}from"./Listing/components/ProductCard/ProductDetail/ProductFreeGift/index.js";import{default as Ge}from"./Listing/components/ProductCard/ProductDetail/ProductExchangePurchase/index.js";import{default as ke}from"./Listing/components/ProductCard/ProductDetail/ProductOptions/index.js";import{default as Ae}from"./Listing/components/ProductCard/ProductDetail/ProductBundle/index.js";import{default as We}from"./Listing/components/ProductCard/ProductGridBox.js";import{default as Le}from"./Listing/components/ProductCard/ProductGallery/index.js";import{default as Ne}from"./Listing/components/ProductCard/ProductDetail/index.js";import{default as Ke}from"./Listing/components/ProductCard/ProductSummary/index.js";import{default as _e}from"./Listing/components/ProductCard/ProductDetail/BenefitsTab.js";import{default as ze}from"./Listing/components/PaidShipping/index.js";import{default as Je}from"./GraphicMore/index.js";import{default as Ue}from"./Features/index.js";import{default as Ze}from"./AplusDesc/index.js";import{default as er}from"./GiftBox/index.js";import{default as ar}from"./SelectStore/index.js";import{default as or}from"./DownLoad/index.js";import{default as sr}from"./FootCharger/index.js";import{default as ir}from"./CollectionsFilters/index.js";import{default as dr}from"./CollectionsFilters/FilterList.js";import{default as cr}from"./CollectionsFilters/FilterHeader.js";import{default as xr}from"./CollectionsFilters/FilterCardWrap.js";import{default as hr}from"./CollectionsFilters/FilterCardWrapItem.js";import{default as yr}from"./Paginator/index.js";import{default as gr}from"./CollectionsBanner/index.js";import{default as Mr}from"./TextMarquee/index.js";import{default as Br}from"./CollectionShelves/index.js";import{default as Fr}from"./ProductCompare/index.js";import{default as Ir}from"./Ksp/index.js";import{default as Gr}from"./ImageTextFeature/index.js";import{default as kr}from"./FeatureCards/index.js";import{default as Ar}from"./ImageWithText/index.js";import{default as Wr}from"./VideoFeature/index.js";import{default as Lr}from"./TabsWithMedia/index.js";import{default as Nr}from"./TabWithImage/index.js";import{default as Kr}from"./FeatureShowcase/index.js";import{default as _r}from"./ProductHero/index.js";import{default as zr}from"./SpecsComparison/index.js";import{default as Jr}from"./MediaSceneSwitcher/index.js";import{default as Ur}from"./ThreeDCarousel/index.js";import{default as Zr}from"./ProductNav/index.js";import{default as ea}from"./AnchorNavigation/index.js";import{default as aa}from"./PromotionalBar/index.js";import{default as oa}from"./EventSchedule/index.js";import{default as sa}from"./SecondaryBanner/index.js";import{default as ia}from"./BuyOneGetOneShelf/index.js";import{default as da}from"./StockShelf/index.js";const e={"ipc-accordioncards":"AccordionCards","ipc-aplusdesc":"AplusDesc","ipc-banner":"HeroBanner","ipc-brand-equity":"BrandEquity","ipc-category":"Category","ipc-collection-banner":"CollectionBanner","ipc-collection-shelves":"CollectionShelves","ipc-creativemodule":"CreativeModule","ipc-download":"DownLoad","ipc-evaluate":"Evaluate","ipc-faq":"Faq","ipc-features":"Features","ipc-footcharger":"FootCharger","ipc-ga-block":"GraphicAttractionBlock","ipc-giftbox":"GiftBox","ipc-graphic":"Graphic","ipc-graphicmore":"GraphicMore","ipc-graphicoverlay":"GraphicOverlay","ipc-marquee":"Marquee","ipc-mediaplayerbase":"MediaPlayerBase","ipc-mediaplayermulti":"MediaPlayerMulti","ipc-mediaplayersticky":"MediaPlayerSticky","ipc-member-equity":"MemberEquity","ipc-mlg-block":"MultiLayoutGraphicBlock","ipc-search-page-tabs":"SearchPageBlock","ipc-selectstore":"SelectStore","ipc-shelfdisplay":"ShelfDisplay","ipc-slogan":"Slogan","ipc-spacer":"Spacer","ipc-specs":"Specs","ipc-tabs":"Tabs","ipc-text-marquee":"TextMarquee","ipc-title":"Title","ipc-whychoose":"WhyChoose","ipc-product-nav":"ProductNav",ksp:"Ksp"};export{C as AccordionCards,oe as AiuiProvider,ea as AnchorNavigation,Ze as AplusDesc,_e as BenefitsTab,he as BizProductProvider,t as BrandEquity,ia as BuyOneGetOneShelf,P as Category,Br as CollectionShelves,gr as CollectionsBanner,ir as CollectionsFilters,ie as CreativeModule,or as DownLoad,n as Evaluate,oa as EventSchedule,E as Faq,kr as FeatureCards,Kr as FeatureShowcase,Ue as Features,xr as FilterCardWrap,hr as FilterCardWrapItem,cr as FilterHeader,dr as FilterList,sr as FootCharger,Q as FooterNavigation,er as GiftBox,T as Graphic,V as GraphicAttractionBlock,Je as GraphicMore,de as GraphicOverlay,Y as HeaderNavigation,S as HeroBanner,$ as IPC_SEARCH_PAGE,Gr as ImageTextFeature,Ar as ImageWithText,Ir as Ksp,j as Marquee,N as MarqueeImageContent,H as MarqueeItem,w as MarqueeReview,O as MarqueeTextContent,v as MediaPlayerBase,q as MediaPlayerMulti,b as MediaPlayerSticky,Jr as MediaSceneSwitcher,p as MemberEquity,R as MultiLayoutGraphicBlock,e as PAYLOAD_COMPONENT_MAP,yr as Paginator,ze as PaidShipping,ge as ProductActions,Be as ProductBenefitsTabs,Ae as ProductBundle,Me as ProductCard,Fr as ProductCompare,Ne as ProductDetail,Ge as ProductExchangePurchase,Ie as ProductFreeGift,Le as ProductGallery,We as ProductGridBox,_r as ProductHero,Fe as ProductHighlight,Zr as ProductNav,ke as ProductOptions,Ke as ProductSummary,aa as PromotionalBar,ye as PurchaseBar,X as SearchPage,ee as SearchPageTabType,sa as SecondaryBanner,ar as SelectStore,m as ShelfDisplay,f as Slogan,l as Spacer,ce as Specs,zr as SpecsComparison,da as StockShelf,xe as TabGroup,Nr as TabWithImage,se as Tabs,Lr as TabsWithMedia,Mr as TextMarquee,Ur as ThreeDCarousel,u as Title,Wr as VideoFeature,D as WhyChoose,ae as withLayout};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/biz-components/index.ts"],
|
|
4
|
-
"sourcesContent": ["export { default as BrandEquity } from './BrandEquity/index.js'\nexport { default as MemberEquity } from './MemberEquity/index.js'\nexport { default as Slogan } from './Slogan/index.js'\nexport { default as Title } from './Title/index.js'\nexport { default as Spacer } from './Spacer/index.js'\nexport { default as ShelfDisplay } from './ShelfDisplay/index.js'\nexport { default as Evaluate } from './Evaluate/index.js'\nexport { default as Category } from './Category/index.js'\nexport { default as HeroBanner } from './HeroBanner/index.js'\nexport { default as AccordionCards } from './AccordionCards/index.js'\nexport { default as Graphic } from './Graphic/index.js'\nexport { default as MediaPlayerBase } from './MediaPlayerBase/index.js'\nexport { default as MediaPlayerSticky } from './MediaPlayerSticky/index.js'\nexport { default as MediaPlayerMulti } from './MediaPlayerMulti/index.js'\nexport { default as Marquee } from './Marquee/index.js'\nexport { default as MarqueeReview } from './MarqueeReview/index.js'\nexport type { MarqueeReviewProps, MarqueeReviewData, ReviewItem } from './MarqueeReview/index.js'\nexport { default as WhyChoose } from './WhyChoose/index.js'\nexport { default as Faq } from './Faq/index.js'\nexport { MarqueeItem, MarqueeImageContent, MarqueeTextContent } from './Marquee/index.js'\nexport { default as MultiLayoutGraphicBlock } from './MultiLayoutGraphicBlock/index.js'\nexport type { MultiLayoutGraphicBlockProps } from './MultiLayoutGraphicBlock/index.js'\nexport { default as GraphicAttractionBlock } from './GraphicAttractionBlock/index.js'\nexport type { GraphicAttractionBlockProps } from './GraphicAttractionBlock/index.js'\nexport { default as HeaderNavigation } from './HeaderNavigation/index.js'\nexport { default as FooterNavigation } from './FooterNavigation/index.js'\nexport { default as SearchPage } from './SearchPage/index.js'\nexport type { SearchPageProps } from './SearchPage/types.js'\nexport { IPC_SEARCH_PAGE, SearchPageTabType } from './SearchPage/types.js'\n\nexport { withLayout } from '../shared/Styles.js'\nexport { default as AiuiProvider } from './AiuiProvider/index.js'\nexport { default as Tabs } from './Tabs/index.js'\nexport { default as CreativeModule } from './CreativeModule/index.js'\nexport { default as GraphicOverlay } from './GraphicOverlay/index.js'\nexport { default as Specs } from './Specs/index.js'\nexport { default as TabGroup } from './TabsGroup/index.js'\n\nexport { default as BizProductProvider } from './Listing/BizProductProvider.js'\nexport { default as PurchaseBar } from './Listing/components/PurchaseBar/index.js'\nexport { default as ProductActions } from './Listing/components/PurchaseBar/ProductActions/index.js'\nexport { default as ProductCard } from './Listing/components/ProductCard/index.js'\nexport { default as ProductBenefitsTabs } from './Listing/components/ProductCard/ProductDetail/ProductBenefitsTabs/index.js'\nexport { default as ProductHighlight } from './Listing/components/ProductCard/ProductDetail/ProductHighlight/index.js'\nexport { default as ProductFreeGift } from './Listing/components/ProductCard/ProductDetail/ProductFreeGift/index.js'\nexport { default as ProductExchangePurchase } from './Listing/components/ProductCard/ProductDetail/ProductExchangePurchase/index.js'\nexport { default as ProductOptions } from './Listing/components/ProductCard/ProductDetail/ProductOptions/index.js'\nexport { default as ProductBundle } from './Listing/components/ProductCard/ProductDetail/ProductBundle/index.js'\nexport { default as ProductGridBox } from './Listing/components/ProductCard/ProductGridBox.js'\nexport { default as ProductGallery } from './Listing/components/ProductCard/ProductGallery/index.js'\nexport { default as ProductDetail } from './Listing/components/ProductCard/ProductDetail/index.js'\nexport { default as ProductSummary } from './Listing/components/ProductCard/ProductSummary/index.js'\nexport { default as BenefitsTab } from './Listing/components/ProductCard/ProductDetail/BenefitsTab.js'\nexport { default as PaidShipping } from './Listing/components/PaidShipping/index.js'\n\nexport { default as GraphicMore } from './GraphicMore/index.js'\nexport { default as Features } from './Features/index.js'\nexport { default as AplusDesc } from './AplusDesc/index.js'\nexport { default as GiftBox } from './GiftBox/index.js'\nexport { default as SelectStore } from './SelectStore/index.js'\nexport { default as DownLoad } from './DownLoad/index.js'\nexport { default as FootCharger } from './FootCharger/index.js'\nexport { default as CollectionsFilters } from './CollectionsFilters/index.js'\nexport { default as FilterList } from './CollectionsFilters/FilterList.js'\nexport { default as FilterHeader } from './CollectionsFilters/FilterHeader.js'\nexport { default as FilterCardWrap } from './CollectionsFilters/FilterCardWrap.js'\nexport { default as FilterCardWrapItem } from './CollectionsFilters/FilterCardWrapItem.js'\nexport { default as Paginator } from './Paginator/index.js'\nexport { default as CollectionsBanner } from './CollectionsBanner/index.js'\nexport { default as TextMarquee } from './TextMarquee/index.js'\nexport { default as CollectionShelves } from './CollectionShelves/index.js'\n\nexport { default as ProductCompare } from './ProductCompare/index.js'\nexport type { ProductCompareProps, ProductItemData } from './ProductCompare/index.js'\nexport { default as Ksp } from './Ksp/index.js'\nexport type { KspProps, KspData, KspCardItem } from './Ksp/index.js'\nexport { default as ImageTextFeature } from './ImageTextFeature/index.js'\nexport type { ImageTextFeatureProps, ImageTextFeatureItem } from './ImageTextFeature/index.js'\nexport { default as FeatureCards } from './FeatureCards/index.js'\nexport type { FeatureCardsProps, FeatureCardItem } from './FeatureCards/index.js'\nexport { default as ImageWithText } from './ImageWithText/index.js'\nexport type { ImageWithTextProps } from './ImageWithText/index.js'\nexport { default as VideoFeature } from './VideoFeature/index.js'\nexport type { VideoFeatureProps } from './VideoFeature/index.js'\nexport { default as TabsWithMedia } from './TabsWithMedia/index.js'\nexport type { TabsWithMediaProps, TabItem, TimeIndex } from './TabsWithMedia/index.js'\nexport { default as TabWithImage } from './TabWithImage/index.js'\nexport type { TabWithImageProps, TabWithImageDataItem } from './TabWithImage/index.js'\nexport { default as FeatureShowcase } from './FeatureShowcase/index.js'\nexport type { FeatureShowcaseProps, FeatureShowcaseItem } from './FeatureShowcase/index.js'\nexport { default as ProductHero } from './ProductHero/index.js'\nexport type { ProductHeroProps } from './ProductHero/index.js'\nexport { default as SpecsComparison } from './SpecsComparison/index.js'\nexport type {\n SpecsComparisonProps,\n SpecsComparisonMenuItem,\n SpecsComparisonLeftMenuItem,\n} from './SpecsComparison/index.js'\nexport { default as MediaSceneSwitcher } from './MediaSceneSwitcher/index.js'\nexport type { MediaSceneSwitcherProps } from './MediaSceneSwitcher/types.js'\nexport { default as ThreeDCarousel } from './ThreeDCarousel/index.js'\nexport type { ThreeDCarouselProps } from './ThreeDCarousel/index.js'\nexport { default as ProductNav } from './ProductNav/index.js'\nexport type { ProductNavProps, TabLink, AnchorItem, BuyButton } from './ProductNav/index.js'\nexport { default as AnchorNavigation } from './AnchorNavigation/index.js'\nexport { default as PromotionalBar } from './PromotionalBar/index.js'\nexport { default as EventSchedule } from './EventSchedule/index.js'\nexport { default as SecondaryBanner } from './SecondaryBanner/index.js'\nexport { default as BuyOneGetOneShelf } from './BuyOneGetOneShelf/index.js'\n\nexport const PAYLOAD_COMPONENT_MAP = {\n 'ipc-accordioncards': 'AccordionCards',\n 'ipc-aplusdesc': 'AplusDesc',\n 'ipc-banner': 'HeroBanner',\n 'ipc-brand-equity': 'BrandEquity',\n 'ipc-category': 'Category',\n 'ipc-collection-banner': 'CollectionBanner',\n 'ipc-collection-shelves': 'CollectionShelves',\n 'ipc-creativemodule': 'CreativeModule',\n 'ipc-download': 'DownLoad',\n 'ipc-evaluate': 'Evaluate',\n 'ipc-faq': 'Faq',\n 'ipc-features': 'Features',\n 'ipc-footcharger': 'FootCharger',\n 'ipc-ga-block': 'GraphicAttractionBlock',\n 'ipc-giftbox': 'GiftBox',\n 'ipc-graphic': 'Graphic',\n 'ipc-graphicmore': 'GraphicMore',\n 'ipc-graphicoverlay': 'GraphicOverlay',\n 'ipc-marquee': 'Marquee',\n 'ipc-mediaplayerbase': 'MediaPlayerBase',\n 'ipc-mediaplayermulti': 'MediaPlayerMulti',\n 'ipc-mediaplayersticky': 'MediaPlayerSticky',\n 'ipc-member-equity': 'MemberEquity',\n 'ipc-mlg-block': 'MultiLayoutGraphicBlock',\n 'ipc-search-page-tabs': 'SearchPageBlock',\n 'ipc-selectstore': 'SelectStore',\n 'ipc-shelfdisplay': 'ShelfDisplay',\n 'ipc-slogan': 'Slogan',\n 'ipc-spacer': 'Spacer',\n 'ipc-specs': 'Specs',\n 'ipc-tabs': 'Tabs',\n 'ipc-text-marquee': 'TextMarquee',\n 'ipc-title': 'Title',\n 'ipc-whychoose': 'WhyChoose',\n 'ipc-product-nav': 'ProductNav',\n ksp: 'Ksp',\n}\n"],
|
|
5
|
-
"mappings": "AAAA,OAAoB,WAAXA,MAA8B,yBACvC,OAAoB,WAAXA,MAA+B,0BACxC,OAAoB,WAAXA,MAAyB,oBAClC,OAAoB,WAAXA,MAAwB,mBACjC,OAAoB,WAAXA,MAAyB,oBAClC,OAAoB,WAAXA,MAA+B,0BACxC,OAAoB,WAAXA,MAA2B,sBACpC,OAAoB,WAAXA,MAA2B,sBACpC,OAAoB,WAAXA,MAA6B,wBACtC,OAAoB,WAAXA,MAAiC,4BAC1C,OAAoB,WAAXA,MAA0B,qBACnC,OAAoB,WAAXA,MAAkC,6BAC3C,OAAoB,WAAXA,MAAoC,+BAC7C,OAAoB,WAAXA,MAAmC,8BAC5C,OAAoB,WAAXA,MAA0B,qBACnC,OAAoB,WAAXA,MAAgC,2BAEzC,OAAoB,WAAXA,MAA4B,uBACrC,OAAoB,WAAXA,MAAsB,iBAC/B,OAAS,eAAAC,EAAa,uBAAAC,EAAqB,sBAAAC,MAA0B,qBACrE,OAAoB,WAAXH,MAA0C,qCAEnD,OAAoB,WAAXA,MAAyC,oCAElD,OAAoB,WAAXA,MAAmC,8BAC5C,OAAoB,WAAXA,MAAmC,8BAC5C,OAAoB,WAAXA,MAA6B,wBAEtC,OAAS,mBAAAI,EAAiB,qBAAAC,OAAyB,wBAEnD,OAAS,cAAAC,OAAkB,sBAC3B,OAAoB,WAAXN,OAA+B,0BACxC,OAAoB,WAAXA,OAAuB,kBAChC,OAAoB,WAAXA,OAAiC,4BAC1C,OAAoB,WAAXA,OAAiC,4BAC1C,OAAoB,WAAXA,OAAwB,mBACjC,OAAoB,WAAXA,OAA2B,uBAEpC,OAAoB,WAAXA,OAAqC,kCAC9C,OAAoB,WAAXA,OAA8B,4CACvC,OAAoB,WAAXA,OAAiC,2DAC1C,OAAoB,WAAXA,OAA8B,4CACvC,OAAoB,WAAXA,OAAsC,8EAC/C,OAAoB,WAAXA,OAAmC,2EAC5C,OAAoB,WAAXA,OAAkC,0EAC3C,OAAoB,WAAXA,OAA0C,kFACnD,OAAoB,WAAXA,OAAiC,yEAC1C,OAAoB,WAAXA,OAAgC,wEACzC,OAAoB,WAAXA,OAAiC,qDAC1C,OAAoB,WAAXA,OAAiC,2DAC1C,OAAoB,WAAXA,OAAgC,0DACzC,OAAoB,WAAXA,OAAiC,2DAC1C,OAAoB,WAAXA,OAA8B,gEACvC,OAAoB,WAAXA,OAA+B,6CAExC,OAAoB,WAAXA,OAA8B,yBACvC,OAAoB,WAAXA,OAA2B,sBACpC,OAAoB,WAAXA,OAA4B,uBACrC,OAAoB,WAAXA,OAA0B,qBACnC,OAAoB,WAAXA,OAA8B,yBACvC,OAAoB,WAAXA,OAA2B,sBACpC,OAAoB,WAAXA,OAA8B,yBACvC,OAAoB,WAAXA,OAAqC,gCAC9C,OAAoB,WAAXA,OAA6B,qCACtC,OAAoB,WAAXA,OAA+B,uCACxC,OAAoB,WAAXA,OAAiC,yCAC1C,OAAoB,WAAXA,OAAqC,6CAC9C,OAAoB,WAAXA,OAA4B,uBACrC,OAAoB,WAAXA,OAAoC,+BAC7C,OAAoB,WAAXA,OAA8B,yBACvC,OAAoB,WAAXA,OAAoC,+BAE7C,OAAoB,WAAXA,OAAiC,4BAE1C,OAAoB,WAAXA,OAAsB,iBAE/B,OAAoB,WAAXA,OAAmC,8BAE5C,OAAoB,WAAXA,OAA+B,0BAExC,OAAoB,WAAXA,OAAgC,2BAEzC,OAAoB,WAAXA,OAA+B,0BAExC,OAAoB,WAAXA,OAAgC,2BAEzC,OAAoB,WAAXA,OAA+B,0BAExC,OAAoB,WAAXA,OAAkC,6BAE3C,OAAoB,WAAXA,OAA8B,yBAEvC,OAAoB,WAAXA,OAAkC,6BAM3C,OAAoB,WAAXA,OAAqC,gCAE9C,OAAoB,WAAXA,OAAiC,4BAE1C,OAAoB,WAAXA,OAA6B,wBAEtC,OAAoB,WAAXA,OAAmC,8BAC5C,OAAoB,WAAXA,OAAiC,4BAC1C,OAAoB,WAAXA,OAAgC,2BACzC,OAAoB,WAAXA,OAAkC,6BAC3C,OAAoB,WAAXA,OAAoC,+
|
|
4
|
+
"sourcesContent": ["export { default as BrandEquity } from './BrandEquity/index.js'\nexport { default as MemberEquity } from './MemberEquity/index.js'\nexport { default as Slogan } from './Slogan/index.js'\nexport { default as Title } from './Title/index.js'\nexport { default as Spacer } from './Spacer/index.js'\nexport { default as ShelfDisplay } from './ShelfDisplay/index.js'\nexport { default as Evaluate } from './Evaluate/index.js'\nexport { default as Category } from './Category/index.js'\nexport { default as HeroBanner } from './HeroBanner/index.js'\nexport { default as AccordionCards } from './AccordionCards/index.js'\nexport { default as Graphic } from './Graphic/index.js'\nexport { default as MediaPlayerBase } from './MediaPlayerBase/index.js'\nexport { default as MediaPlayerSticky } from './MediaPlayerSticky/index.js'\nexport { default as MediaPlayerMulti } from './MediaPlayerMulti/index.js'\nexport { default as Marquee } from './Marquee/index.js'\nexport { default as MarqueeReview } from './MarqueeReview/index.js'\nexport type { MarqueeReviewProps, MarqueeReviewData, ReviewItem } from './MarqueeReview/index.js'\nexport { default as WhyChoose } from './WhyChoose/index.js'\nexport { default as Faq } from './Faq/index.js'\nexport { MarqueeItem, MarqueeImageContent, MarqueeTextContent } from './Marquee/index.js'\nexport { default as MultiLayoutGraphicBlock } from './MultiLayoutGraphicBlock/index.js'\nexport type { MultiLayoutGraphicBlockProps } from './MultiLayoutGraphicBlock/index.js'\nexport { default as GraphicAttractionBlock } from './GraphicAttractionBlock/index.js'\nexport type { GraphicAttractionBlockProps } from './GraphicAttractionBlock/index.js'\nexport { default as HeaderNavigation } from './HeaderNavigation/index.js'\nexport { default as FooterNavigation } from './FooterNavigation/index.js'\nexport { default as SearchPage } from './SearchPage/index.js'\nexport type { SearchPageProps } from './SearchPage/types.js'\nexport { IPC_SEARCH_PAGE, SearchPageTabType } from './SearchPage/types.js'\n\nexport { withLayout } from '../shared/Styles.js'\nexport { default as AiuiProvider } from './AiuiProvider/index.js'\nexport { default as Tabs } from './Tabs/index.js'\nexport { default as CreativeModule } from './CreativeModule/index.js'\nexport { default as GraphicOverlay } from './GraphicOverlay/index.js'\nexport { default as Specs } from './Specs/index.js'\nexport { default as TabGroup } from './TabsGroup/index.js'\n\nexport { default as BizProductProvider } from './Listing/BizProductProvider.js'\nexport { default as PurchaseBar } from './Listing/components/PurchaseBar/index.js'\nexport { default as ProductActions } from './Listing/components/PurchaseBar/ProductActions/index.js'\nexport { default as ProductCard } from './Listing/components/ProductCard/index.js'\nexport { default as ProductBenefitsTabs } from './Listing/components/ProductCard/ProductDetail/ProductBenefitsTabs/index.js'\nexport { default as ProductHighlight } from './Listing/components/ProductCard/ProductDetail/ProductHighlight/index.js'\nexport { default as ProductFreeGift } from './Listing/components/ProductCard/ProductDetail/ProductFreeGift/index.js'\nexport { default as ProductExchangePurchase } from './Listing/components/ProductCard/ProductDetail/ProductExchangePurchase/index.js'\nexport { default as ProductOptions } from './Listing/components/ProductCard/ProductDetail/ProductOptions/index.js'\nexport { default as ProductBundle } from './Listing/components/ProductCard/ProductDetail/ProductBundle/index.js'\nexport { default as ProductGridBox } from './Listing/components/ProductCard/ProductGridBox.js'\nexport { default as ProductGallery } from './Listing/components/ProductCard/ProductGallery/index.js'\nexport { default as ProductDetail } from './Listing/components/ProductCard/ProductDetail/index.js'\nexport { default as ProductSummary } from './Listing/components/ProductCard/ProductSummary/index.js'\nexport { default as BenefitsTab } from './Listing/components/ProductCard/ProductDetail/BenefitsTab.js'\nexport { default as PaidShipping } from './Listing/components/PaidShipping/index.js'\n\nexport { default as GraphicMore } from './GraphicMore/index.js'\nexport { default as Features } from './Features/index.js'\nexport { default as AplusDesc } from './AplusDesc/index.js'\nexport { default as GiftBox } from './GiftBox/index.js'\nexport { default as SelectStore } from './SelectStore/index.js'\nexport { default as DownLoad } from './DownLoad/index.js'\nexport { default as FootCharger } from './FootCharger/index.js'\nexport { default as CollectionsFilters } from './CollectionsFilters/index.js'\nexport { default as FilterList } from './CollectionsFilters/FilterList.js'\nexport { default as FilterHeader } from './CollectionsFilters/FilterHeader.js'\nexport { default as FilterCardWrap } from './CollectionsFilters/FilterCardWrap.js'\nexport { default as FilterCardWrapItem } from './CollectionsFilters/FilterCardWrapItem.js'\nexport { default as Paginator } from './Paginator/index.js'\nexport { default as CollectionsBanner } from './CollectionsBanner/index.js'\nexport { default as TextMarquee } from './TextMarquee/index.js'\nexport { default as CollectionShelves } from './CollectionShelves/index.js'\n\nexport { default as ProductCompare } from './ProductCompare/index.js'\nexport type { ProductCompareProps, ProductItemData } from './ProductCompare/index.js'\nexport { default as Ksp } from './Ksp/index.js'\nexport type { KspProps, KspData, KspCardItem } from './Ksp/index.js'\nexport { default as ImageTextFeature } from './ImageTextFeature/index.js'\nexport type { ImageTextFeatureProps, ImageTextFeatureItem } from './ImageTextFeature/index.js'\nexport { default as FeatureCards } from './FeatureCards/index.js'\nexport type { FeatureCardsProps, FeatureCardItem } from './FeatureCards/index.js'\nexport { default as ImageWithText } from './ImageWithText/index.js'\nexport type { ImageWithTextProps } from './ImageWithText/index.js'\nexport { default as VideoFeature } from './VideoFeature/index.js'\nexport type { VideoFeatureProps } from './VideoFeature/index.js'\nexport { default as TabsWithMedia } from './TabsWithMedia/index.js'\nexport type { TabsWithMediaProps, TabItem, TimeIndex } from './TabsWithMedia/index.js'\nexport { default as TabWithImage } from './TabWithImage/index.js'\nexport type { TabWithImageProps, TabWithImageDataItem } from './TabWithImage/index.js'\nexport { default as FeatureShowcase } from './FeatureShowcase/index.js'\nexport type { FeatureShowcaseProps, FeatureShowcaseItem } from './FeatureShowcase/index.js'\nexport { default as ProductHero } from './ProductHero/index.js'\nexport type { ProductHeroProps } from './ProductHero/index.js'\nexport { default as SpecsComparison } from './SpecsComparison/index.js'\nexport type {\n SpecsComparisonProps,\n SpecsComparisonMenuItem,\n SpecsComparisonLeftMenuItem,\n} from './SpecsComparison/index.js'\nexport { default as MediaSceneSwitcher } from './MediaSceneSwitcher/index.js'\nexport type { MediaSceneSwitcherProps } from './MediaSceneSwitcher/types.js'\nexport { default as ThreeDCarousel } from './ThreeDCarousel/index.js'\nexport type { ThreeDCarouselProps } from './ThreeDCarousel/index.js'\nexport { default as ProductNav } from './ProductNav/index.js'\nexport type { ProductNavProps, TabLink, AnchorItem, BuyButton } from './ProductNav/index.js'\nexport { default as AnchorNavigation } from './AnchorNavigation/index.js'\nexport { default as PromotionalBar } from './PromotionalBar/index.js'\nexport { default as EventSchedule } from './EventSchedule/index.js'\nexport { default as SecondaryBanner } from './SecondaryBanner/index.js'\nexport { default as BuyOneGetOneShelf } from './BuyOneGetOneShelf/index.js'\nexport { default as StockShelf } from './StockShelf/index.js'\n\nexport const PAYLOAD_COMPONENT_MAP = {\n 'ipc-accordioncards': 'AccordionCards',\n 'ipc-aplusdesc': 'AplusDesc',\n 'ipc-banner': 'HeroBanner',\n 'ipc-brand-equity': 'BrandEquity',\n 'ipc-category': 'Category',\n 'ipc-collection-banner': 'CollectionBanner',\n 'ipc-collection-shelves': 'CollectionShelves',\n 'ipc-creativemodule': 'CreativeModule',\n 'ipc-download': 'DownLoad',\n 'ipc-evaluate': 'Evaluate',\n 'ipc-faq': 'Faq',\n 'ipc-features': 'Features',\n 'ipc-footcharger': 'FootCharger',\n 'ipc-ga-block': 'GraphicAttractionBlock',\n 'ipc-giftbox': 'GiftBox',\n 'ipc-graphic': 'Graphic',\n 'ipc-graphicmore': 'GraphicMore',\n 'ipc-graphicoverlay': 'GraphicOverlay',\n 'ipc-marquee': 'Marquee',\n 'ipc-mediaplayerbase': 'MediaPlayerBase',\n 'ipc-mediaplayermulti': 'MediaPlayerMulti',\n 'ipc-mediaplayersticky': 'MediaPlayerSticky',\n 'ipc-member-equity': 'MemberEquity',\n 'ipc-mlg-block': 'MultiLayoutGraphicBlock',\n 'ipc-search-page-tabs': 'SearchPageBlock',\n 'ipc-selectstore': 'SelectStore',\n 'ipc-shelfdisplay': 'ShelfDisplay',\n 'ipc-slogan': 'Slogan',\n 'ipc-spacer': 'Spacer',\n 'ipc-specs': 'Specs',\n 'ipc-tabs': 'Tabs',\n 'ipc-text-marquee': 'TextMarquee',\n 'ipc-title': 'Title',\n 'ipc-whychoose': 'WhyChoose',\n 'ipc-product-nav': 'ProductNav',\n ksp: 'Ksp',\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["default", "MarqueeItem", "MarqueeImageContent", "MarqueeTextContent", "IPC_SEARCH_PAGE", "SearchPageTabType", "withLayout", "PAYLOAD_COMPONENT_MAP"]
|
|
7
7
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsx as
|
|
1
|
+
import{jsx as r}from"react/jsx-runtime";import"react";import a from"../biz-components/AnchorNavigation/index.js";const e={sectionIds:[{targetId:"overview",label:"Overview"},{targetId:"cleaning-power",label:"Cleaning power"},{targetId:"smart-cleaning",label:"Smart cleaning"},{targetId:"ease-of-use",label:"Ease of use"}]},o={title:"Biz Components/AnchorNavigation",component:a,parameters:{layout:"centered",docs:{description:{component:"\u951A\u70B9\u5BFC\u822A - \u951A\u70B9\u5BFC\u822A"}}},tags:["autodocs"],argTypes:{data:{description:"\u4E1A\u52A1\u6570\u636E"},"data.alignment":{description:"\u5BFC\u822A\u9879\u6C34\u5E73\u5BF9\u9F50\u65B9\u5F0F",control:{type:"select"},options:["start","center","end"],table:{defaultValue:{summary:"start"},type:{summary:"string"}}},"data.theme":{description:"\u4E3B\u9898\u6A21\u5F0F",control:{type:"select"},options:["light","dark"],table:{defaultValue:{summary:"light"},type:{summary:"string"}}}},args:{data:e}};var c=o;const g={args:{data:e},render:t=>r(a,{...t})},p={args:{data:{...e,alignment:"center"}},render:t=>r(a,{...t})},d={args:{data:{...e,alignment:"end"}},render:t=>r(a,{...t})},l={args:{data:{...e,theme:"dark"}},render:t=>r(a,{...t})},m={args:{data:{...e,alignment:"center",theme:"dark"}},render:t=>r(a,{...t})};export{p as AlignCenter,d as AlignEnd,l as DarkTheme,m as DarkThemeAlignCenter,g as Default,c as default};
|
|
2
2
|
//# sourceMappingURL=anchorNavigation.stories.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/stories/anchorNavigation.stories.tsx"],
|
|
4
|
-
"sourcesContent": ["import type { Meta, StoryObj } from '@storybook/react'\n\nimport React from 'react'\n\nimport AnchorNavigation, {
|
|
5
|
-
"mappings": "
|
|
6
|
-
"names": ["jsx", "AnchorNavigation", "mockData", "meta", "anchorNavigation_stories_default", "Default", "args"]
|
|
4
|
+
"sourcesContent": ["import type { Meta, StoryObj } from '@storybook/react'\n\nimport React from 'react'\n\nimport AnchorNavigation, {\n type AnchorNavigationData,\n type AnchorNavigationProps,\n} from '../biz-components/AnchorNavigation/index.js'\n\n// \u6A21\u62DF\u4E1A\u52A1\u6570\u636E\nconst mockData: AnchorNavigationData = {\n sectionIds: [\n {\n targetId: 'overview',\n label: 'Overview',\n },\n {\n targetId: 'cleaning-power',\n label: 'Cleaning power',\n },\n {\n targetId: 'smart-cleaning',\n label: 'Smart cleaning',\n },\n {\n targetId: 'ease-of-use',\n label: 'Ease of use',\n },\n ],\n} satisfies AnchorNavigationData\n\nconst meta = {\n title: 'Biz Components/AnchorNavigation',\n component: AnchorNavigation,\n parameters: {\n layout: 'centered',\n docs: {\n description: {\n component: '\u951A\u70B9\u5BFC\u822A - \u951A\u70B9\u5BFC\u822A',\n },\n },\n },\n tags: ['autodocs'],\n argTypes: {\n data: {\n description: '\u4E1A\u52A1\u6570\u636E',\n },\n 'data.alignment': {\n description: '\u5BFC\u822A\u9879\u6C34\u5E73\u5BF9\u9F50\u65B9\u5F0F',\n control: { type: 'select' },\n options: ['start', 'center', 'end'],\n table: {\n defaultValue: { summary: 'start' },\n type: { summary: 'string' },\n },\n },\n 'data.theme': {\n description: '\u4E3B\u9898\u6A21\u5F0F',\n control: { type: 'select' },\n options: ['light', 'dark'],\n table: {\n defaultValue: { summary: 'light' },\n type: { summary: 'string' },\n },\n },\n },\n args: {\n data: mockData,\n },\n} satisfies Meta<typeof AnchorNavigation>\n\nexport default meta\ntype Story = StoryObj<typeof meta>\n\nexport const Default: Story = {\n args: {\n data: mockData,\n },\n render: (args: AnchorNavigationProps) => <AnchorNavigation {...args} />,\n}\n\nexport const AlignCenter: Story = {\n args: {\n data: {\n ...mockData,\n alignment: 'center',\n },\n },\n render: (args: AnchorNavigationProps) => <AnchorNavigation {...args} />,\n}\n\nexport const AlignEnd: Story = {\n args: {\n data: {\n ...mockData,\n alignment: 'end',\n },\n },\n render: (args: AnchorNavigationProps) => <AnchorNavigation {...args} />,\n}\n\nexport const DarkTheme: Story = {\n args: {\n data: {\n ...mockData,\n theme: 'dark',\n },\n },\n render: (args: AnchorNavigationProps) => <AnchorNavigation {...args} />,\n}\n\nexport const DarkThemeAlignCenter: Story = {\n args: {\n data: {\n ...mockData,\n alignment: 'center',\n theme: 'dark',\n },\n },\n render: (args: AnchorNavigationProps) => <AnchorNavigation {...args} />,\n}\n"],
|
|
5
|
+
"mappings": "AA8E2C,cAAAA,MAAA,oBA5E3C,MAAkB,QAElB,OAAOC,MAGA,8CAGP,MAAMC,EAAiC,CACrC,WAAY,CACV,CACE,SAAU,WACV,MAAO,UACT,EACA,CACE,SAAU,iBACV,MAAO,gBACT,EACA,CACE,SAAU,iBACV,MAAO,gBACT,EACA,CACE,SAAU,cACV,MAAO,aACT,CACF,CACF,EAEMC,EAAO,CACX,MAAO,kCACP,UAAWF,EACX,WAAY,CACV,OAAQ,WACR,KAAM,CACJ,YAAa,CACX,UAAW,qDACb,CACF,CACF,EACA,KAAM,CAAC,UAAU,EACjB,SAAU,CACR,KAAM,CACJ,YAAa,0BACf,EACA,iBAAkB,CAChB,YAAa,yDACb,QAAS,CAAE,KAAM,QAAS,EAC1B,QAAS,CAAC,QAAS,SAAU,KAAK,EAClC,MAAO,CACL,aAAc,CAAE,QAAS,OAAQ,EACjC,KAAM,CAAE,QAAS,QAAS,CAC5B,CACF,EACA,aAAc,CACZ,YAAa,2BACb,QAAS,CAAE,KAAM,QAAS,EAC1B,QAAS,CAAC,QAAS,MAAM,EACzB,MAAO,CACL,aAAc,CAAE,QAAS,OAAQ,EACjC,KAAM,CAAE,QAAS,QAAS,CAC5B,CACF,CACF,EACA,KAAM,CACJ,KAAMC,CACR,CACF,EAEA,IAAOE,EAAQD,EAGR,MAAME,EAAiB,CAC5B,KAAM,CACJ,KAAMH,CACR,EACA,OAASI,GAAgCN,EAACC,EAAA,CAAkB,GAAGK,EAAM,CACvE,EAEaC,EAAqB,CAChC,KAAM,CACJ,KAAM,CACJ,GAAGL,EACH,UAAW,QACb,CACF,EACA,OAASI,GAAgCN,EAACC,EAAA,CAAkB,GAAGK,EAAM,CACvE,EAEaE,EAAkB,CAC7B,KAAM,CACJ,KAAM,CACJ,GAAGN,EACH,UAAW,KACb,CACF,EACA,OAASI,GAAgCN,EAACC,EAAA,CAAkB,GAAGK,EAAM,CACvE,EAEaG,EAAmB,CAC9B,KAAM,CACJ,KAAM,CACJ,GAAGP,EACH,MAAO,MACT,CACF,EACA,OAASI,GAAgCN,EAACC,EAAA,CAAkB,GAAGK,EAAM,CACvE,EAEaI,EAA8B,CACzC,KAAM,CACJ,KAAM,CACJ,GAAGR,EACH,UAAW,SACX,MAAO,MACT,CACF,EACA,OAASI,GAAgCN,EAACC,EAAA,CAAkB,GAAGK,EAAM,CACvE",
|
|
6
|
+
"names": ["jsx", "AnchorNavigation", "mockData", "meta", "anchorNavigation_stories_default", "Default", "args", "AlignCenter", "AlignEnd", "DarkTheme", "DarkThemeAlignCenter"]
|
|
7
7
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsx as
|
|
1
|
+
import{jsx as e,jsxs as a}from"react/jsx-runtime";import"react";import l from"../biz-components/EventSchedule/index.js";const t=()=>a("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[e("path",{d:"M15.833 3.333h-11.666c-.92 0-1.667.746-1.667 1.667v11.667c0 .92.746 1.666 1.667 1.666h11.666c.92 0 1.667-.746 1.667-1.666V5c0-.921-.746-1.667-1.667-1.667z",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"}),e("path",{d:"M13.333 1.667V5M6.667 1.667V5M2.5 8.333h15",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})]}),o=()=>a("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[e("path",{d:"M10 18.333a8.333 8.333 0 100-16.666 8.333 8.333 0 000 16.666z",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"}),e("path",{d:"M10 5v5l3.333 1.667",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})]}),s=()=>a("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[e("path",{d:"M16.667 10v6.667c0 .442-.176.866-.489 1.179-.313.312-.737.488-1.178.488H5c-.442 0-.866-.176-1.179-.488A1.667 1.667 0 013.333 16.667V10",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"}),e("path",{d:"M18.333 5.833v4.167H1.667V5.833c0-.442.175-.866.488-1.178.313-.313.737-.489 1.179-.489h13.333c.441 0 .865.176 1.178.489.313.312.489.736.489 1.178zM10 18.333V4.167",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"}),e("path",{d:"M10 4.167H6.25A2.083 2.083 0 014.167 2.083c0-1.15.933-2.083 2.083-2.083C8.333 0 10 4.167 10 4.167zM10 4.167h3.75a2.083 2.083 0 002.083-2.084c0-1.15-.933-2.083-2.083-2.083C11.667 0 10 4.167 10 4.167z",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})]}),n={scheduleList:[{title:"\u65E9\u9E1F\u4E13\u5C5E\u798F\u5229",startDate:"2024-12-01",endDate:"2024-12-15",items:[{icon:e(t,{}),label:"12\u67081\u65E5 - 12\u670815\u65E5"},{icon:e(o,{}),label:"\u9650\u65F6\u4F18\u60E0 48 \u5C0F\u65F6"},{icon:e(s,{}),label:"\u8D2D\u4E70\u5373\u9001\u7CBE\u7F8E\u793C\u54C1"}]},{title:"\u5723\u8BDE\u7279\u60E0\u6D3B\u52A8",startDate:"2024-12-16",endDate:"2024-12-31",items:[{icon:e(t,{}),label:"12\u670816\u65E5 - 12\u670831\u65E5"},{icon:e(o,{}),label:"\u5168\u5929\u5019\u4F18\u60E0"},{icon:e(s,{}),label:"\u6EE1\u989D\u8D60\u9001\u5723\u8BDE\u793C\u76D2"}]}],backgroundImage:{active:{mobile:"https://cdn.shopify.com/s/files/1/0501/7678/6607/files/1_2_1.jpg?v=1766391000",laptop:"https://example.com/laptop.jpg",desktop:"https://cdn.shopify.com/s/files/1/0501/7678/6607/files/1_2_1_c4d0ec1e-5484-46be-af8c-273935f4ba28.jpg?v=1766398957",lgDesktop:"https://cdn.shopify.com/s/files/1/0501/7678/6607/files/1_2_1_44d92293-1f4b-483a-8233-6277b0437e7c.jpg?v=1766391004"},inactive:{mobile:"https://cdn.shopify.com/s/files/1/0501/7678/6607/files/1_2_2.jpg?v=1766390999",laptop:"https://example.com/laptop.jpg",desktop:"https://cdn.shopify.com/s/files/1/0501/7678/6607/files/1_2_2_99fd4944-58ee-4c90-9b0d-b758926386fe.jpg?v=1766398957",lgDesktop:"https://cdn.shopify.com/s/files/1/0501/7678/6607/files/1_2_2_844d5e75-a3d2-4f2b-b1a6-cad60c67c871.jpg?v=1766391005"}}},i={scheduleList:[{title:"\u65B0\u5E74\u9884\u70ED\u6D3B\u52A8",startDate:"2024-12-01",endDate:"2024-12-10",items:[{icon:e(t,{}),label:"12\u67081\u65E5 - 12\u670810\u65E5"},{icon:e(o,{}),label:"\u6BCF\u65E5\u4E0A\u534810\u70B9\u5F00\u62A2"},{icon:e(s,{}),label:"\u524D100\u540D\u9001\u795E\u79D8\u793C\u7269"}]},{title:"\u5723\u8BDE\u72C2\u6B22",startDate:"2024-12-11",endDate:"2024-12-25",items:[{icon:e(t,{}),label:"12\u670811\u65E5 - 12\u670825\u65E5"},{icon:e(o,{}),label:"\u5168\u5929\u4F18\u60E0\u4E0D\u95F4\u65AD"},{icon:e(s,{}),label:"\u6EE1\u51CF\u6D3B\u52A8\u6700\u9AD8\u7701500"}]},{title:"\u8DE8\u5E74\u7279\u60E0",startDate:"2024-12-26",endDate:"2025-01-01",items:[{icon:e(t,{}),label:"12\u670826\u65E5 - 1\u67081\u65E5"},{icon:e(o,{}),label:"\u5012\u8BA1\u65F6\u7279\u60E0"},{icon:e(s,{}),label:"\u65B0\u5E74\u793C\u5305\u9650\u91CF\u62A2\u8D2D"}]}]},r={title:"Biz Components/EventSchedule",component:l,parameters:{layout:"fullscreen",docs:{description:{component:"\u6D3B\u52A8\u65E5\u7A0B\u7EC4\u4EF6 - \u5C55\u793A\u6D3B\u52A8\u65F6\u95F4\u8F74\u548C\u8BE6\u7EC6\u4FE1\u606F\u5361\u7247\uFF0C\u652F\u6301\u591A\u4E2A\u6D3B\u52A8\u540C\u65F6\u5C55\u793A\uFF0C\u5E26\u6709\u6FC0\u6D3B\u72B6\u6001\u6307\u793A"}}},tags:["autodocs"],argTypes:{data:{description:"\u4E1A\u52A1\u6570\u636E\uFF0C\u5305\u542B\u65E5\u7A0B\u5217\u8868",control:{type:"object"}},"data.showTimeline":{description:"\u662F\u5426\u663E\u793A\u65F6\u95F4\u8F74\uFF0C\u9ED8\u8BA4\u4E3A true",control:{type:"boolean"},table:{defaultValue:{summary:"true"},type:{summary:"boolean"}}},className:{description:"\u81EA\u5B9A\u4E49\u6837\u5F0F\u7C7B\u540D",control:{type:"text"}}}};var h=r;const m={args:{data:n}},u={args:{data:i}},b={args:{data:{scheduleList:[{title:"\u9650\u65F6\u79D2\u6740\u6D3B\u52A8",startDate:"2025-12-23",endDate:"2025-12-23",items:[{icon:e(t,{}),label:"12\u67081\u65E5\u5168\u5929"},{icon:e(o,{}),label:"\u6BCF\u5C0F\u65F6\u6574\u70B9\u5F00\u62A2"},{icon:e(s,{}),label:"\u79D2\u6740\u4EF7\u4F4E\u81F33\u6298"}]}]}}},f={args:{data:{scheduleList:[{title:"\u5DF2\u7ED3\u675F\u7684\u6D3B\u52A8",startDate:"2024-01-01",endDate:"2024-01-31",items:[{icon:e(t,{}),label:"1\u67081\u65E5 - 1\u670831\u65E5"},{icon:e(o,{}),label:"\u5DF2\u7ED3\u675F"},{icon:e(s,{}),label:"\u611F\u8C22\u53C2\u4E0E"}]},{title:"\u8FDB\u884C\u4E2D\u7684\u6D3B\u52A8",startDate:"2025-01-01",endDate:"2025-12-31",items:[{icon:e(t,{}),label:"2025\u5E74\u5168\u5E74"},{icon:e(o,{}),label:"\u6B63\u5728\u8FDB\u884C\u4E2D"},{icon:e(s,{}),label:"\u9650\u65F6\u4F18\u60E0"}]},{title:"\u5373\u5C06\u5F00\u59CB\u7684\u6D3B\u52A8",startDate:"2026-01-01",endDate:"2026-12-31",items:[{icon:e(t,{}),label:"2026\u5E74\u5F00\u59CB"},{icon:e(o,{}),label:"\u656C\u8BF7\u671F\u5F85"},{icon:e(s,{}),label:"\u8D85\u503C\u798F\u5229"}]}]}}},g={args:{data:{...n,showTimeline:!1}}},k={args:{data:{...i,showTimeline:!1}}};export{f as AutoActiveStatus,m as Default,b as SingleEvent,u as ThreeEvents,k as ThreeEventsWithoutTimeline,g as WithoutTimeline,h as default};
|
|
2
2
|
//# sourceMappingURL=eventSchedule.stories.js.map
|