commerce-toolkit 0.0.16 → 0.0.17
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/components/card/card.d.ts +28 -0
- package/dist/components/card/card.d.ts.map +1 -0
- package/dist/components/card/index.d.ts +4 -0
- package/dist/components/card/index.d.ts.map +1 -0
- package/dist/components/card/primitives/card-link.d.ts +14 -0
- package/dist/components/card/primitives/card-link.d.ts.map +1 -0
- package/dist/components/card/primitives/card-root.d.ts +6 -0
- package/dist/components/card/primitives/card-root.d.ts.map +1 -0
- package/dist/components/card/primitives/card-skeleton.d.ts +4 -0
- package/dist/components/card/primitives/card-skeleton.d.ts.map +1 -0
- package/dist/index.cjs +1 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { ComponentProps, ElementType, ReactNode } from 'react';
|
|
2
|
+
export type CardProps<E extends ElementType = 'article'> = Omit<ComponentProps<E>, 'as'> & {
|
|
3
|
+
as?: E;
|
|
4
|
+
link?: {
|
|
5
|
+
href: string;
|
|
6
|
+
ariaLabel: string;
|
|
7
|
+
render?: (props: {
|
|
8
|
+
href: string;
|
|
9
|
+
ariaLabel: string;
|
|
10
|
+
className: string;
|
|
11
|
+
}) => ReactNode;
|
|
12
|
+
};
|
|
13
|
+
};
|
|
14
|
+
/**
|
|
15
|
+
* This component supports various CSS variables for theming. Here's a comprehensive list, along
|
|
16
|
+
* with their default values:
|
|
17
|
+
*
|
|
18
|
+
* ```css
|
|
19
|
+
* :root {
|
|
20
|
+
* --card-focus: hsl(var(--primary));
|
|
21
|
+
* --card-border-color: hsl(var(--contrast-200));
|
|
22
|
+
* --card-background: hsl(var(--background));
|
|
23
|
+
* --card-hover-background: color-mix(in oklab, hsl(var(--contrast-100)) 50%,transparent);
|
|
24
|
+
* }
|
|
25
|
+
* ```
|
|
26
|
+
*/
|
|
27
|
+
export declare function Card({ as, className, children, link, ...props }: CardProps): import("react/jsx-runtime").JSX.Element;
|
|
28
|
+
//# sourceMappingURL=card.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"card.d.ts","sourceRoot":"","sources":["../../../src/components/card/card.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAIpE,MAAM,MAAM,SAAS,CAAC,CAAC,SAAS,WAAW,GAAG,SAAS,IAAI,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG;IACzF,EAAE,CAAC,EAAE,CAAC,CAAC;IACP,IAAI,CAAC,EAAE;QACL,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,SAAS,EAAE,MAAM,CAAC;YAAC,SAAS,EAAE,MAAM,CAAA;SAAE,KAAK,SAAS,CAAC;KACvF,CAAC;CACH,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,wBAAgB,IAAI,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,KAAK,EAAE,EAAE,SAAS,2CAO1E"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { Card, type CardProps } from '../../components/card/card';
|
|
2
|
+
export { CardLink as Link, type CardLinkProps as LinkProps, } from '../../components/card/primitives/card-link';
|
|
3
|
+
export { CardRoot as Root, type CardRootProps as RootProps, } from '../../components/card/primitives/card-root';
|
|
4
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/card/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,KAAK,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EACL,QAAQ,IAAI,IAAI,EAChB,KAAK,aAAa,IAAI,SAAS,GAChC,MAAM,wCAAwC,CAAC;AAChD,OAAO,EACL,QAAQ,IAAI,IAAI,EAChB,KAAK,aAAa,IAAI,SAAS,GAChC,MAAM,wCAAwC,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { ReactNode } from 'react';
|
|
2
|
+
export interface CardLinkProps {
|
|
3
|
+
link?: {
|
|
4
|
+
href: string;
|
|
5
|
+
ariaLabel: string;
|
|
6
|
+
render?: (props: {
|
|
7
|
+
href: string;
|
|
8
|
+
ariaLabel: string;
|
|
9
|
+
className: string;
|
|
10
|
+
}) => ReactNode;
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
export declare function CardLink({ link }: CardLinkProps): string | number | bigint | boolean | Iterable<ReactNode> | Promise<string | number | bigint | boolean | import("react").ReactPortal | import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>> | Iterable<ReactNode> | null | undefined> | import("react/jsx-runtime").JSX.Element | null | undefined;
|
|
14
|
+
//# sourceMappingURL=card-link.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"card-link.d.ts","sourceRoot":"","sources":["../../../../src/components/card/primitives/card-link.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAIvC,MAAM,WAAW,aAAa;IAC5B,IAAI,CAAC,EAAE;QACL,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,SAAS,EAAE,MAAM,CAAC;YAAC,SAAS,EAAE,MAAM,CAAA;SAAE,KAAK,SAAS,CAAC;KACvF,CAAC;CACH;AAED,wBAAgB,QAAQ,CAAC,EAAE,IAAI,EAAE,EAAE,aAAa,2UAmB/C"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { ComponentProps, ElementType } from 'react';
|
|
2
|
+
export type CardRootProps<E extends ElementType = 'article'> = Omit<ComponentProps<E>, 'as'> & {
|
|
3
|
+
as?: E;
|
|
4
|
+
};
|
|
5
|
+
export declare function CardRoot<T extends ElementType = 'div'>({ as, className, children, }: CardRootProps<T>): import("react/jsx-runtime").JSX.Element;
|
|
6
|
+
//# sourceMappingURL=card-root.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"card-root.d.ts","sourceRoot":"","sources":["../../../../src/components/card/primitives/card-root.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAIzD,MAAM,MAAM,aAAa,CAAC,CAAC,SAAS,WAAW,GAAG,SAAS,IAAI,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG;IAC7F,EAAE,CAAC,EAAE,CAAC,CAAC;CACR,CAAC;AAEF,wBAAgB,QAAQ,CAAC,CAAC,SAAS,WAAW,GAAG,KAAK,EAAE,EACtD,EAAE,EACF,SAAS,EACT,QAAQ,GACT,EAAE,aAAa,CAAC,CAAC,CAAC,2CAgBlB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"card-skeleton.d.ts","sourceRoot":"","sources":["../../../../src/components/card/primitives/card-skeleton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAK5C,MAAM,MAAM,iBAAiB,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;AAEtD,wBAAgB,YAAY,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,iBAAiB,2CAMtE"}
|
package/dist/index.cjs
CHANGED
|
@@ -28,5 +28,5 @@
|
|
|
28
28
|
*
|
|
29
29
|
* This source code is licensed under the ISC license.
|
|
30
30
|
* See the LICENSE file in the root directory of this source tree.
|
|
31
|
-
*/const Do=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],Ft=Gt("x",Do);function Te({variant:e="primary",size:t="large",shape:r="pill",loading:o=!1,type:n="button",disabled:a=!1,className:i,children:l,...c}){return s.jsxs("button",{"aria-busy":o,className:y("after:ease-[cubic-bezier(0,0.25,0,1)] relative z-0 inline-flex h-fit select-none items-center justify-center overflow-hidden border text-center font-semibold leading-normal [font-family:var(--button-font-family,var(--font-family-body))] after:absolute after:inset-0 after:-z-10 after:-translate-x-[105%] after:transition-[opacity,transform] after:duration-300 focus-visible:outline-2 focus-visible:outline-[var(--button-focus,hsl(var(--primary)))] disabled:pointer-events-none disabled:opacity-30",{primary:"border-[var(--button-primary-border,hsl(var(--primary)))] bg-[var(--button-primary-background,hsl(var(--primary)))] text-[var(--button-primary-text,hsl(var(--foreground)))] after:bg-[var(--button-primary-background-hover,color-mix(in_oklab,hsl(var(--primary)),white_75%))] focus-visible:outline-offset-2",secondary:"border-[var(--button-secondary-border,hsl(var(--foreground)))] bg-[var(--button-secondary-background,hsl(var(--foreground)))] text-[var(--button-secondary-text,hsl(var(--background)))] after:bg-[var(--button-secondary-background-hover,hsl(var(--background)))] focus-visible:outline-offset-2",tertiary:"border-[var(--button-tertiary-border,hsl(var(--contrast-200)))] bg-[var(--button-tertiary-background,hsl(var(--background)))] text-[var(--button-tertiary-text,hsl(var(--foreground)))] after:bg-[var(--button-tertiary-background-hover,hsl(var(--contrast-100)))] focus-visible:outline-offset-2",ghost:"border-[var(--button-ghost-border,transparent)] bg-[var(--button-ghost-background,transparent)] text-[var(--button-ghost-text,hsl(var(--foreground)))] after:bg-[var(--button-ghost-background-hover,color-mix(in_oklab,hsl(var(--foreground))_5%,transparent))] focus-visible:outline-offset-0",danger:"border-[var(--button-danger-border,color-mix(in_oklab,hsl(var(--error)),white_30%))] bg-[var(--button-danger-background,color-mix(in_oklab,hsl(var(--error)),white_30%))] text-[var(--button-danger-text,hsl(var(--foreground)))] after:bg-[var(--button-danger-background-hover,color-mix(in_oklab,hsl(var(--error)),white_75%))] focus-visible:outline-offset-2"}[e],{pill:"rounded-full after:rounded-full",rounded:"rounded-lg after:rounded-lg",square:"rounded-none after:rounded-none",circle:"rounded-full after:rounded-full"}[r],!o&&!a&&"hover:after:translate-x-0",o&&"pointer-events-none",i),"data-slot":"button",disabled:a,type:n,...c,children:[s.jsx("span",{className:y("inline-flex items-center justify-center transition-all duration-300 ease-in-out",o?"-translate-y-10 opacity-0":"translate-y-0 opacity-100",r==="circle"&&"aspect-square",{"x-small":"min-h-8 text-xs",small:"min-h-10 text-sm",medium:"min-h-12 text-base",large:"min-h-14 text-base"}[t],r!=="circle"&&{"x-small":"gap-x-2 px-3 py-1.5",small:"gap-x-2 px-4 py-2.5",medium:"gap-x-2.5 px-5 py-3",large:"gap-x-3 px-6 py-4"}[t],e==="secondary"&&"mix-blend-difference"),children:l}),s.jsx("span",{className:y("absolute inset-0 grid place-content-center transition-all duration-300 ease-in-out",o?"translate-y-0 opacity-100":"translate-y-10 opacity-0"),children:s.jsx(Lo,{className:y("animate-spin",e==="tertiary"&&"text-[var(--button-loader-icon,hsl(var(--foreground)))]")})})]})}function Ut({children:e,...t}){const{action:r}=ee();if(!r)return null;const{label:o,onClick:n}=r;return s.jsx(Te,{"data-slot":"alert-button",onClick:n,size:"x-small",variant:"ghost",...t,children:o})}function Wt({...e}){const{dismiss:t}=ee(),{label:r,onClick:o}=t;return s.jsx(Te,{"aria-label":r,"data-slot":"alert-close-button",onClick:o,shape:"circle",size:"x-small",variant:"ghost",...e,children:s.jsx(Ft,{size:20,strokeWidth:1})})}function $o({className:e,children:t,...r}){return s.jsx("span",{className:y("origin-left font-semibold leading-normal text-[var(--animated-underline-text,hsl(var(--foreground)))] transition-[background-size] duration-300 [background:linear-gradient(0deg,var(--animated-underline-hover,hsl(var(--primary))),var(--animated-underline-hover,hsl(var(--primary))))_no-repeat_left_bottom_/_0_2px] [font-family:var(--animated-underline-font-family,var(--font-family-body))] hover:bg-[size:100%_2px] group-focus/underline:bg-[size:100%_2px]",e),...r,children:t})}function Vo({children:e,shape:t="rounded",className:r,variant:o="primary",...n}){return s.jsx("span",{className:y("px-2 py-0.5 text-xs uppercase tracking-tighter text-[var(--badge-text,hsl(var(--foreground)))] [font-family:var(--badge-font-family,var(--font-family-mono))]",{pill:"rounded-full",rounded:"rounded"}[t],{primary:"bg-[var(--badge-primary-background,color-mix(in_oklab,hsl(var(--primary)),white_75%))]",warning:"bg-[var(--badge-warning-background,color-mix(in_oklab,hsl(var(--warning)),white_75%))]",error:"bg-[var(--badge-error-background,color-mix(in_oklab,hsl(var(--error)),white_75%))]",success:"bg-[var(--badge-success-background,color-mix(in_oklab,hsl(var(--success)),white_75%))]",info:"bg-[var(--badge-info-background,color-mix(in_oklab,hsl(var(--info)),white_75%))]"}[o],r),...n,children:e})}const Go=({id:e,children:t,hideDismiss:r=!1,className:o,onDismiss:n})=>s.jsx(qt,{hideDismiss:r,id:e,onDismiss:n,children:s.jsx(Kt,{className:o,children:s.jsxs(Zt,{children:[s.jsx(Xt,{children:t}),s.jsx(Jt,{})]})})}),Ht=b.createContext(void 0);function qt({id:e,hideDismiss:t,onDismiss:r,children:o}){const[n,a]=b.useState(!1),[i,l]=b.useState(!1);b.useEffect(()=>{const p=localStorage.getItem(`${e}-hidden-banner`)==="true";a(p),l(!0)},[e]);const c=b.useCallback(()=>{a(!0),localStorage.setItem(`${e}-hidden-banner`,"true"),r?.()},[e,r]),f=b.useMemo(()=>({id:e,isInitialized:i,isDismissed:n,hideDismiss:t,handleDismiss:c}),[e,i,n,t,c]);return s.jsx(Ht.Provider,{value:f,children:i?o:null})}function ze(){const e=b.use(Ht);if(e===void 0)throw new Error("useBanner must be used within a BannerProvider");return e}function Kt({children:e,className:t,...r}){const{id:o,isDismissed:n}=ze();return s.jsx("div",{className:y("overflow-hidden bg-[var(--banner-background,hsl(var(--primary)))] transition-all duration-300 ease-in @container",n?"pointer-events-none max-h-0":"max-h-32",t),"data-slot":"banner-root",id:o,...r,children:e})}function Zt({className:e,children:t}){return s.jsx("div",{className:y("flex items-center justify-between gap-4 px-8 py-3",e),"data-slot":"banner-content",children:t})}function Xt({children:e,className:t,...r}){return s.jsx("div",{className:y("flex-1 text-sm text-[var(--banner-text,hsl(var(--foreground)))] [font-family:var(--banner-font-family,var(--font-family-body))] @xl:text-center @xl:text-base",t),"data-slot":"banner-text",...r,children:e})}function Jt({className:e,...t}){const{hideDismiss:r,handleDismiss:o}=ze();return r?null:s.jsx("button",{"aria-label":"Dismiss banner",className:y("flex h-8 w-8 items-center justify-center rounded-full bg-[var(--banner-close-background,transparent)] text-[var(--banner-close-icon,color-mix(in_oklab,hsl(var(--foreground))_50%,transparent))] transition-colors duration-300 hover:bg-[var(--banner-close-background-hover,color-mix(in_oklab,hsl(var(--background))_40%,transparent))] hover:text-[var(--banner-close-icon-hover,hsl(var(--foreground)))] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--banner-focus,hsl(var(--foreground)))]",e),"data-slot":"banner-dismiss",onClick:n=>{n.preventDefault(),o()},...t,children:s.jsx(Ft,{absoluteStrokeWidth:!0,size:20,strokeWidth:1.5})})}function Fo({author:e,content:t,date:r,link:o,image:n,title:a,className:i}){return s.jsx(Qt,{author:e,content:t,date:r,image:n,link:o,title:a,children:s.jsxs(er,{className:i,children:[s.jsx(tr,{}),s.jsx(or,{}),s.jsx(nr,{}),s.jsxs(ar,{children:[s.jsx(sr,{}),s.jsx(ir,{})]}),s.jsx(rr,{})]})})}const Yt=b.createContext(void 0);function Qt({children:e,title:t,author:r,content:o,date:n,image:a,link:i}){const l=b.useMemo(()=>({title:t,author:r,content:o,date:n,image:a,link:i}),[t,r,o,n,a,i]);return s.jsx(Yt.Provider,{value:l,children:e})}function U(){const e=b.use(Yt);if(e===void 0)throw new Error("useBlogPostCard must be used within a BlogPostCardProvider");return e}function er({as:e,className:t,children:r,...o}){const n=e??"article";return s.jsx(n,{className:y("group relative w-full max-w-md @container [font-family:var(--blog-post-card-font-family,var(--font-family-body))]",t),"data-slot":"blog-post-card-root",...o,children:r})}function Uo({children:e,className:t,...r}){return s.jsx("div",{className:y("p-4 text-5xl font-bold leading-none tracking-tighter [color:var(--blog-post-card-empty-text,color-mix(in_oklab,hsl(var(--foreground))_15%,transparent))]",t),...r,children:e})}function tr({className:e,...t}){const{image:r,title:o}=U(),n="h-full w-full object-cover transition-transform duration-500 ease-out group-hover:scale-110",a=()=>{if(!r)return s.jsx("div",{className:y("p-4 text-5xl font-bold leading-none tracking-tighter [color:var(--blog-post-card-empty-text,color-mix(in_oklab,hsl(var(--foreground))_15%,transparent))]",e),...t,children:o});const{src:i,alt:l,render:c}=r;return c?c({src:i,alt:l,className:n}):s.jsx("img",{alt:l,className:n,src:i})};return s.jsx("div",{className:y("relative aspect-[4/3] w-full overflow-hidden rounded-2xl bg-[var(--blog-post-card-image-background,hsl(var(--contrast-100)))]",e),...t,children:a()})}function rr({className:e,...t}){const{link:{href:r,ariaLabel:o,render:n}}=U(),a=y("absolute inset-0 rounded-b-lg rounded-t-2xl focus:outline-none focus-visible:ring-2 focus-visible:ring-[var(--blog-post-card-focus,hsl(var(--primary)))] focus-visible:ring-offset-4",e);return n?n({href:r,ariaLabel:o,className:a,...t}):s.jsx("a",{className:a,href:r,...t,children:s.jsx("span",{className:"sr-only",children:o})})}function or({className:e,...t}){const{title:r}=U();return s.jsx("h5",{className:y("mt-4 text-lg font-medium leading-snug text-[var(--blog-post-card-title-text,hsl(var(--foreground)))]",e),"data-slot":"blog-post-card-title",...t,children:r})}function nr({className:e,...t}){const{content:r}=U();return s.jsx("p",{className:y("mt-1.5 line-clamp-3 text-sm font-normal text-[var(--blog-post-card-content-text,hsl(var(--contrast-400)))]",e),"data-slot":"blog-post-card-content",...t,children:r})}function ar({children:e,className:t,...r}){return s.jsx("div",{className:y("mt-3 text-sm text-[var(--blog-post-card-author-date-text,hsl(var(--foreground)))]",t),"data-slot":"blog-post-card-details",...r,children:e})}function sr({className:e,...t}){const{date:r}=U();return s.jsx("time",{dateTime:r,...t,"data-slot":"blog-post-card-date",children:new Date(r).toLocaleDateString("en-US",{year:"numeric",month:"long",day:"numeric"})})}function ir({className:e,...t}){const{author:r}=U();if(r!=null)return s.jsxs(s.Fragment,{children:[s.jsx("span",{className:y("after:mx-2 after:content-['•']",e),"data-slot":"blog-post-card-author",...t}),s.jsx("span",{children:r})]})}function Wo({className:e,...t}){return s.jsx("div",{className:y("bg-[var(--skeleton,color-mix(in_oklab,hsl(var(--contrast-300))_15%,transparent))]",e),"data-slot":"skeleton-box",...t})}function X({characterCount:e=10,className:t,...r}){return s.jsx("div",{className:y("flex h-[1lh] items-center",t),"data-slot":"skeleton-text",...r,children:s.jsx("div",{className:y("h-[1ex] max-w-full rounded-[inherit] bg-[var(--skeleton,color-mix(in_oklab,hsl(var(--contrast-300))_15%,transparent))]"),style:{width:e==="full"?"100%":`${e}ch`}})})}function Ho({className:e,aspectRatio:t="4:3",...r}){return s.jsxs("div",{className:y("w-full max-w-md",e),...r,children:[s.jsx(Wo,{className:y("mb-4 w-full rounded-2xl",{"5:6":"aspect-[5/6]","3:4":"aspect-[3/4]","4:3":"aspect-[4/3]","1:1":"aspect-square"}[t])}),s.jsx(X,{characterCount:25,className:"mt-4 rounded text-lg"}),s.jsxs("div",{className:"mt-1.5",children:[s.jsx(X,{characterCount:"full",className:"rounded text-sm"}),s.jsx(X,{characterCount:"full",className:"rounded text-sm"}),s.jsx(X,{characterCount:15,className:"rounded text-sm"})]}),s.jsx(X,{characterCount:10,className:"mt-3 rounded text-sm"})]})}function qo({variant:e="primary",size:t="large",shape:r="pill",className:o,children:n,render:a,...i}){const l=y("relative z-0 inline-flex h-fit select-none items-center justify-center overflow-hidden border text-center font-semibold leading-normal [font-family:var(--button-font-family,var(--font-family-body))] after:absolute after:inset-0 after:-z-10 after:-translate-x-[105%] after:transition after:duration-300 after:[animation-timing-function:cubic-bezier(0,0.25,0,1)] hover:after:translate-x-0 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--button-focus,hsl(var(--primary)))] focus-visible:ring-offset-2",{primary:"border-[var(--button-primary-border,hsl(var(--primary)))] bg-[var(--button-primary-background,hsl(var(--primary)))] text-[var(--button-primary-text,hsl(var(--foreground)))] after:bg-[var(--button-primary-background-hover,color-mix(in_oklab,hsl(var(--primary)),white_75%))]",secondary:"border-[var(--button-secondary-border,hsl(var(--foreground)))] bg-[var(--button-secondary-background,hsl(var(--foreground)))] text-[var(--button-secondary-text,hsl(var(--background)))] after:bg-[var(--button-secondary-background-hover,hsl(var(--background)))]",tertiary:"border-[var(--button-tertiary-border,hsl(var(--contrast-200)))] bg-[var(--button-tertiary-background,hsl(var(--background)))] text-[var(--button-tertiary-text,hsl(var(--foreground)))] after:bg-[var(--button-tertiary-background-hover,hsl(var(--contrast-100)))]",ghost:"border-[var(--button-ghost-border,transparent)] bg-[var(--button-ghost-background,transparent)] text-[var(--button-ghost-text,hsl(var(--foreground)))] after:bg-[var(--button-ghost-background-hover,color-mix(in_oklab,hsl(var(--foreground))_5%,transparent))]"}[e],{pill:"rounded-full after:rounded-full",rounded:"rounded-lg after:rounded-lg",square:"rounded-none after:rounded-none",circle:"rounded-full after:rounded-full"}[r],o),c=s.jsx("span",{className:y("inline-flex items-center justify-center",r==="circle"&&"aspect-square",{"x-small":"min-h-8 text-xs",small:"min-h-10 text-sm",medium:"min-h-12 text-base",large:"min-h-14 text-base"}[t],r!=="circle"&&{"x-small":"gap-x-2 px-3 py-1.5",small:"gap-x-2 px-4 py-2.5",medium:"gap-x-2.5 px-5 py-3",large:"gap-x-3 px-6 py-4"}[t],e==="secondary"&&"mix-blend-difference"),children:n});function f(){return a?a({...i,className:l,children:c}):s.jsx("a",{...i,className:l,children:c})}return s.jsx(s.Fragment,{children:f()})}exports.Accordion=cr;exports.AccordionContent=_t;exports.AccordionItem=Pt;exports.AccordionItemProvider=Et;exports.AccordionProvider=St;exports.AccordionRoot=It;exports.AccordionTrigger=Tt;exports.Alert=Ro;exports.AlertActions=$t;exports.AlertButton=Ut;exports.AlertCloseButton=Wt;exports.AlertDescription=Dt;exports.AlertHeader=Ot;exports.AlertRoot=zt;exports.AlertTitle=Lt;exports.AnimatedUnderline=$o;exports.Badge=Vo;exports.Banner=Go;exports.BannerContent=Zt;exports.BannerDismiss=Jt;exports.BannerProvider=qt;exports.BannerRoot=Kt;exports.BannerText=Xt;exports.BlogPostCard=Fo;exports.BlogPostCardAuthor=ir;exports.BlogPostCardContent=nr;exports.BlogPostCardDate=sr;exports.BlogPostCardDetails=ar;exports.BlogPostCardFallback=Uo;exports.BlogPostCardImage=tr;exports.BlogPostCardLink=rr;exports.BlogPostCardProvider=Qt;exports.BlogPostCardRoot=er;exports.BlogPostCardSkeleton=Ho;exports.BlogPostCardTitle=or;exports.Button=Te;exports.ButtonLink=qo;exports.useAccordion=me;exports.useAccordionItem=pe;exports.useBanner=ze;exports.useBlogPostCard=U;
|
|
31
|
+
*/const Do=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],Ft=Gt("x",Do);function Te({variant:e="primary",size:t="large",shape:r="pill",loading:o=!1,type:n="button",disabled:a=!1,className:i,children:l,...c}){return s.jsxs("button",{"aria-busy":o,className:y("after:ease-[cubic-bezier(0,0.25,0,1)] relative z-0 inline-flex h-fit select-none items-center justify-center overflow-hidden border text-center font-semibold leading-normal [font-family:var(--button-font-family,var(--font-family-body))] after:absolute after:inset-0 after:-z-10 after:-translate-x-[105%] after:transition-[opacity,transform] after:duration-300 focus-visible:outline-2 focus-visible:outline-[var(--button-focus,hsl(var(--primary)))] disabled:pointer-events-none disabled:opacity-30",{primary:"border-[var(--button-primary-border,hsl(var(--primary)))] bg-[var(--button-primary-background,hsl(var(--primary)))] text-[var(--button-primary-text,hsl(var(--foreground)))] after:bg-[var(--button-primary-background-hover,color-mix(in_oklab,hsl(var(--primary)),white_75%))] focus-visible:outline-offset-2",secondary:"border-[var(--button-secondary-border,hsl(var(--foreground)))] bg-[var(--button-secondary-background,hsl(var(--foreground)))] text-[var(--button-secondary-text,hsl(var(--background)))] after:bg-[var(--button-secondary-background-hover,hsl(var(--background)))] focus-visible:outline-offset-2",tertiary:"border-[var(--button-tertiary-border,hsl(var(--contrast-200)))] bg-[var(--button-tertiary-background,hsl(var(--background)))] text-[var(--button-tertiary-text,hsl(var(--foreground)))] after:bg-[var(--button-tertiary-background-hover,hsl(var(--contrast-100)))] focus-visible:outline-offset-2",ghost:"border-[var(--button-ghost-border,transparent)] bg-[var(--button-ghost-background,transparent)] text-[var(--button-ghost-text,hsl(var(--foreground)))] after:bg-[var(--button-ghost-background-hover,color-mix(in_oklab,hsl(var(--foreground))_5%,transparent))] focus-visible:outline-offset-0",danger:"border-[var(--button-danger-border,color-mix(in_oklab,hsl(var(--error)),white_30%))] bg-[var(--button-danger-background,color-mix(in_oklab,hsl(var(--error)),white_30%))] text-[var(--button-danger-text,hsl(var(--foreground)))] after:bg-[var(--button-danger-background-hover,color-mix(in_oklab,hsl(var(--error)),white_75%))] focus-visible:outline-offset-2"}[e],{pill:"rounded-full after:rounded-full",rounded:"rounded-lg after:rounded-lg",square:"rounded-none after:rounded-none",circle:"rounded-full after:rounded-full"}[r],!o&&!a&&"hover:after:translate-x-0",o&&"pointer-events-none",i),"data-slot":"button",disabled:a,type:n,...c,children:[s.jsx("span",{className:y("inline-flex items-center justify-center transition-all duration-300 ease-in-out",o?"-translate-y-10 opacity-0":"translate-y-0 opacity-100",r==="circle"&&"aspect-square",{"x-small":"min-h-8 text-xs",small:"min-h-10 text-sm",medium:"min-h-12 text-base",large:"min-h-14 text-base"}[t],r!=="circle"&&{"x-small":"gap-x-2 px-3 py-1.5",small:"gap-x-2 px-4 py-2.5",medium:"gap-x-2.5 px-5 py-3",large:"gap-x-3 px-6 py-4"}[t],e==="secondary"&&"mix-blend-difference"),children:l}),s.jsx("span",{className:y("absolute inset-0 grid place-content-center transition-all duration-300 ease-in-out",o?"translate-y-0 opacity-100":"translate-y-10 opacity-0"),children:s.jsx(Lo,{className:y("animate-spin",e==="tertiary"&&"text-[var(--button-loader-icon,hsl(var(--foreground)))]")})})]})}function Ut({children:e,...t}){const{action:r}=ee();if(!r)return null;const{label:o,onClick:n}=r;return s.jsx(Te,{"data-slot":"alert-button",onClick:n,size:"x-small",variant:"ghost",...t,children:o})}function Wt({...e}){const{dismiss:t}=ee(),{label:r,onClick:o}=t;return s.jsx(Te,{"aria-label":r,"data-slot":"alert-close-button",onClick:o,shape:"circle",size:"x-small",variant:"ghost",...e,children:s.jsx(Ft,{size:20,strokeWidth:1})})}function $o({className:e,children:t,...r}){return s.jsx("span",{className:y("origin-left font-semibold leading-normal text-[var(--animated-underline-text,hsl(var(--foreground)))] transition-[background-size] duration-300 [background:linear-gradient(0deg,var(--animated-underline-hover,hsl(var(--primary))),var(--animated-underline-hover,hsl(var(--primary))))_no-repeat_left_bottom_/_0_2px] [font-family:var(--animated-underline-font-family,var(--font-family-body))] hover:bg-[size:100%_2px] group-focus/underline:bg-[size:100%_2px]",e),...r,children:t})}function Vo({children:e,shape:t="rounded",className:r,variant:o="primary",...n}){return s.jsx("span",{className:y("px-2 py-0.5 text-xs uppercase tracking-tighter text-[var(--badge-text,hsl(var(--foreground)))] [font-family:var(--badge-font-family,var(--font-family-mono))]",{pill:"rounded-full",rounded:"rounded"}[t],{primary:"bg-[var(--badge-primary-background,color-mix(in_oklab,hsl(var(--primary)),white_75%))]",warning:"bg-[var(--badge-warning-background,color-mix(in_oklab,hsl(var(--warning)),white_75%))]",error:"bg-[var(--badge-error-background,color-mix(in_oklab,hsl(var(--error)),white_75%))]",success:"bg-[var(--badge-success-background,color-mix(in_oklab,hsl(var(--success)),white_75%))]",info:"bg-[var(--badge-info-background,color-mix(in_oklab,hsl(var(--info)),white_75%))]"}[o],r),...n,children:e})}const Go=({id:e,children:t,hideDismiss:r=!1,className:o,onDismiss:n})=>s.jsx(qt,{hideDismiss:r,id:e,onDismiss:n,children:s.jsx(Kt,{className:o,children:s.jsxs(Zt,{children:[s.jsx(Xt,{children:t}),s.jsx(Jt,{})]})})}),Ht=b.createContext(void 0);function qt({id:e,hideDismiss:t,onDismiss:r,children:o}){const[n,a]=b.useState(!1),[i,l]=b.useState(!1);b.useEffect(()=>{const p=localStorage.getItem(`${e}-hidden-banner`)==="true";a(p),l(!0)},[e]);const c=b.useCallback(()=>{a(!0),localStorage.setItem(`${e}-hidden-banner`,"true"),r?.()},[e,r]),f=b.useMemo(()=>({id:e,isInitialized:i,isDismissed:n,hideDismiss:t,handleDismiss:c}),[e,i,n,t,c]);return s.jsx(Ht.Provider,{value:f,children:i?o:null})}function ze(){const e=b.use(Ht);if(e===void 0)throw new Error("useBanner must be used within a BannerProvider");return e}function Kt({children:e,className:t,...r}){const{id:o,isDismissed:n}=ze();return s.jsx("div",{className:y("overflow-hidden bg-[var(--banner-background,hsl(var(--primary)))] transition-all duration-300 ease-in @container",n?"pointer-events-none max-h-0":"max-h-32",t),"data-slot":"banner-root",id:o,...r,children:e})}function Zt({className:e,children:t}){return s.jsx("div",{className:y("flex items-center justify-between gap-4 px-8 py-3",e),"data-slot":"banner-content",children:t})}function Xt({children:e,className:t,...r}){return s.jsx("div",{className:y("flex-1 text-sm text-[var(--banner-text,hsl(var(--foreground)))] [font-family:var(--banner-font-family,var(--font-family-body))] @xl:text-center @xl:text-base",t),"data-slot":"banner-text",...r,children:e})}function Jt({className:e,...t}){const{hideDismiss:r,handleDismiss:o}=ze();return r?null:s.jsx("button",{"aria-label":"Dismiss banner",className:y("flex h-8 w-8 items-center justify-center rounded-full bg-[var(--banner-close-background,transparent)] text-[var(--banner-close-icon,color-mix(in_oklab,hsl(var(--foreground))_50%,transparent))] transition-colors duration-300 hover:bg-[var(--banner-close-background-hover,color-mix(in_oklab,hsl(var(--background))_40%,transparent))] hover:text-[var(--banner-close-icon-hover,hsl(var(--foreground)))] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--banner-focus,hsl(var(--foreground)))]",e),"data-slot":"banner-dismiss",onClick:n=>{n.preventDefault(),o()},...t,children:s.jsx(Ft,{absoluteStrokeWidth:!0,size:20,strokeWidth:1.5})})}function Fo({author:e,content:t,date:r,link:o,image:n,title:a,className:i}){return s.jsx(Qt,{author:e,content:t,date:r,image:n,link:o,title:a,children:s.jsxs(er,{className:i,children:[s.jsx(tr,{}),s.jsx(or,{}),s.jsx(nr,{}),s.jsxs(ar,{children:[s.jsx(sr,{}),s.jsx(ir,{})]}),s.jsx(rr,{})]})})}const Yt=b.createContext(void 0);function Qt({children:e,title:t,author:r,content:o,date:n,image:a,link:i}){const l=b.useMemo(()=>({title:t,author:r,content:o,date:n,image:a,link:i}),[t,r,o,n,a,i]);return s.jsx(Yt.Provider,{value:l,children:e})}function U(){const e=b.use(Yt);if(e===void 0)throw new Error("useBlogPostCard must be used within a BlogPostCardProvider");return e}function er({as:e,className:t,children:r,...o}){const n=e??"article";return s.jsx(n,{className:y("group relative w-full max-w-md @container [font-family:var(--blog-post-card-font-family,var(--font-family-body))]",t),"data-slot":"blog-post-card-root",...o,children:r})}function Uo({children:e,className:t,...r}){return s.jsx("div",{className:y("p-4 text-5xl font-bold leading-none tracking-tighter [color:var(--blog-post-card-empty-text,color-mix(in_oklab,hsl(var(--foreground))_15%,transparent))]",t),...r,children:e})}function tr({className:e,...t}){const{image:r,title:o}=U(),n="h-full w-full object-cover transition-transform duration-500 ease-out group-hover:scale-110",a=()=>{if(!r)return s.jsx("div",{className:y("p-4 text-5xl font-bold leading-none tracking-tighter [color:var(--blog-post-card-empty-text,color-mix(in_oklab,hsl(var(--foreground))_15%,transparent))]",e),...t,children:o});const{src:i,alt:l,render:c}=r;return c?c({src:i,alt:l,className:n}):s.jsx("img",{alt:l,className:n,src:i})};return s.jsx("div",{className:y("relative aspect-[4/3] w-full overflow-hidden rounded-2xl bg-[var(--blog-post-card-image-background,hsl(var(--contrast-100)))]",e),...t,children:a()})}function rr({className:e,...t}){const{link:{href:r,ariaLabel:o,render:n}}=U(),a=y("absolute inset-0 rounded-b-lg rounded-t-2xl focus:outline-none focus-visible:ring-2 focus-visible:ring-[var(--blog-post-card-focus,hsl(var(--primary)))] focus-visible:ring-offset-4",e);return n?n({href:r,ariaLabel:o,className:a,...t}):s.jsx("a",{className:a,href:r,...t,children:s.jsx("span",{className:"sr-only",children:o})})}function or({className:e,...t}){const{title:r}=U();return s.jsx("h5",{className:y("mt-4 text-lg font-medium leading-snug text-[var(--blog-post-card-title-text,hsl(var(--foreground)))]",e),"data-slot":"blog-post-card-title",...t,children:r})}function nr({className:e,...t}){const{content:r}=U();return s.jsx("p",{className:y("mt-1.5 line-clamp-3 text-sm font-normal text-[var(--blog-post-card-content-text,hsl(var(--contrast-400)))]",e),"data-slot":"blog-post-card-content",...t,children:r})}function ar({children:e,className:t,...r}){return s.jsx("div",{className:y("mt-3 text-sm text-[var(--blog-post-card-author-date-text,hsl(var(--foreground)))]",t),"data-slot":"blog-post-card-details",...r,children:e})}function sr({className:e,...t}){const{date:r}=U();return s.jsx("time",{dateTime:r,...t,"data-slot":"blog-post-card-date",children:new Date(r).toLocaleDateString("en-US",{year:"numeric",month:"long",day:"numeric"})})}function ir({className:e,...t}){const{author:r}=U();if(r!=null)return s.jsxs(s.Fragment,{children:[s.jsx("span",{className:y("after:mx-2 after:content-['•']",e),"data-slot":"blog-post-card-author",...t}),s.jsx("span",{children:r})]})}function Wo({className:e,...t}){return s.jsx("div",{className:y("bg-[var(--skeleton,color-mix(in_oklab,hsl(var(--contrast-300))_15%,transparent))]",e),"data-slot":"skeleton-box",...t})}function X({characterCount:e=10,className:t,...r}){return s.jsx("div",{className:y("flex h-[1lh] items-center",t),"data-slot":"skeleton-text",...r,children:s.jsx("div",{className:y("h-[1ex] max-w-full rounded-[inherit] bg-[var(--skeleton,color-mix(in_oklab,hsl(var(--contrast-300))_15%,transparent))]"),style:{width:e==="full"?"100%":`${e}ch`}})})}function Ho({className:e,aspectRatio:t="4:3",...r}){return s.jsxs("div",{className:y("w-full max-w-md @container",e),...r,children:[s.jsx(Wo,{className:y("mb-4 w-full rounded-2xl",{"5:6":"aspect-[5/6]","3:4":"aspect-[3/4]","4:3":"aspect-[4/3]","1:1":"aspect-square"}[t])}),s.jsx(X,{characterCount:25,className:"mt-4 rounded text-lg"}),s.jsxs("div",{className:"mt-1.5",children:[s.jsx(X,{characterCount:"full",className:"rounded text-sm"}),s.jsx(X,{characterCount:"full",className:"rounded text-sm"}),s.jsx(X,{characterCount:15,className:"rounded text-sm"})]}),s.jsx(X,{characterCount:10,className:"mt-3 rounded text-sm"})]})}function qo({variant:e="primary",size:t="large",shape:r="pill",className:o,children:n,render:a,...i}){const l=y("relative z-0 inline-flex h-fit select-none items-center justify-center overflow-hidden border text-center font-semibold leading-normal [font-family:var(--button-font-family,var(--font-family-body))] after:absolute after:inset-0 after:-z-10 after:-translate-x-[105%] after:transition after:duration-300 after:[animation-timing-function:cubic-bezier(0,0.25,0,1)] hover:after:translate-x-0 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--button-focus,hsl(var(--primary)))] focus-visible:ring-offset-2",{primary:"border-[var(--button-primary-border,hsl(var(--primary)))] bg-[var(--button-primary-background,hsl(var(--primary)))] text-[var(--button-primary-text,hsl(var(--foreground)))] after:bg-[var(--button-primary-background-hover,color-mix(in_oklab,hsl(var(--primary)),white_75%))]",secondary:"border-[var(--button-secondary-border,hsl(var(--foreground)))] bg-[var(--button-secondary-background,hsl(var(--foreground)))] text-[var(--button-secondary-text,hsl(var(--background)))] after:bg-[var(--button-secondary-background-hover,hsl(var(--background)))]",tertiary:"border-[var(--button-tertiary-border,hsl(var(--contrast-200)))] bg-[var(--button-tertiary-background,hsl(var(--background)))] text-[var(--button-tertiary-text,hsl(var(--foreground)))] after:bg-[var(--button-tertiary-background-hover,hsl(var(--contrast-100)))]",ghost:"border-[var(--button-ghost-border,transparent)] bg-[var(--button-ghost-background,transparent)] text-[var(--button-ghost-text,hsl(var(--foreground)))] after:bg-[var(--button-ghost-background-hover,color-mix(in_oklab,hsl(var(--foreground))_5%,transparent))]"}[e],{pill:"rounded-full after:rounded-full",rounded:"rounded-lg after:rounded-lg",square:"rounded-none after:rounded-none",circle:"rounded-full after:rounded-full"}[r],o),c=s.jsx("span",{className:y("inline-flex items-center justify-center",r==="circle"&&"aspect-square",{"x-small":"min-h-8 text-xs",small:"min-h-10 text-sm",medium:"min-h-12 text-base",large:"min-h-14 text-base"}[t],r!=="circle"&&{"x-small":"gap-x-2 px-3 py-1.5",small:"gap-x-2 px-4 py-2.5",medium:"gap-x-2.5 px-5 py-3",large:"gap-x-3 px-6 py-4"}[t],e==="secondary"&&"mix-blend-difference"),children:n});function f(){return a?a({...i,className:l,children:c}):s.jsx("a",{...i,className:l,children:c})}return s.jsx(s.Fragment,{children:f()})}exports.Accordion=cr;exports.AccordionContent=_t;exports.AccordionItem=Pt;exports.AccordionItemProvider=Et;exports.AccordionProvider=St;exports.AccordionRoot=It;exports.AccordionTrigger=Tt;exports.Alert=Ro;exports.AlertActions=$t;exports.AlertButton=Ut;exports.AlertCloseButton=Wt;exports.AlertDescription=Dt;exports.AlertHeader=Ot;exports.AlertRoot=zt;exports.AlertTitle=Lt;exports.AnimatedUnderline=$o;exports.Badge=Vo;exports.Banner=Go;exports.BannerContent=Zt;exports.BannerDismiss=Jt;exports.BannerProvider=qt;exports.BannerRoot=Kt;exports.BannerText=Xt;exports.BlogPostCard=Fo;exports.BlogPostCardAuthor=ir;exports.BlogPostCardContent=nr;exports.BlogPostCardDate=sr;exports.BlogPostCardDetails=ar;exports.BlogPostCardFallback=Uo;exports.BlogPostCardImage=tr;exports.BlogPostCardLink=rr;exports.BlogPostCardProvider=Qt;exports.BlogPostCardRoot=er;exports.BlogPostCardSkeleton=Ho;exports.BlogPostCardTitle=or;exports.Button=Te;exports.ButtonLink=qo;exports.useAccordion=me;exports.useAccordionItem=pe;exports.useBanner=ze;exports.useBlogPostCard=U;
|
|
32
32
|
//# sourceMappingURL=index.cjs.map
|