@anker-in/headless-ui 1.3.2 → 1.3.3

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.
Files changed (27) hide show
  1. package/dist/cjs/biz-components/AccordionCards/index.js +1 -1
  2. package/dist/cjs/biz-components/AccordionCards/index.js.map +2 -2
  3. package/dist/cjs/biz-components/EventSchedule/index.js +1 -1
  4. package/dist/cjs/biz-components/EventSchedule/index.js.map +2 -2
  5. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductBenefits/index.js +1 -1
  6. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductBenefits/index.js.map +2 -2
  7. package/dist/cjs/biz-components/Listing/utils/index.js +1 -1
  8. package/dist/cjs/biz-components/Listing/utils/index.js.map +2 -2
  9. package/dist/cjs/biz-components/SceneShelf/ProductCard.js +1 -1
  10. package/dist/cjs/biz-components/SceneShelf/ProductCard.js.map +3 -3
  11. package/dist/cjs/shared/LocalizedLink.d.ts +6 -0
  12. package/dist/cjs/shared/LocalizedLink.js +2 -0
  13. package/dist/cjs/shared/LocalizedLink.js.map +7 -0
  14. package/dist/esm/biz-components/AccordionCards/index.js +1 -1
  15. package/dist/esm/biz-components/AccordionCards/index.js.map +2 -2
  16. package/dist/esm/biz-components/EventSchedule/index.js +1 -1
  17. package/dist/esm/biz-components/EventSchedule/index.js.map +2 -2
  18. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductBenefits/index.js +1 -1
  19. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductBenefits/index.js.map +2 -2
  20. package/dist/esm/biz-components/Listing/utils/index.js +1 -1
  21. package/dist/esm/biz-components/Listing/utils/index.js.map +2 -2
  22. package/dist/esm/biz-components/SceneShelf/ProductCard.js +1 -1
  23. package/dist/esm/biz-components/SceneShelf/ProductCard.js.map +3 -3
  24. package/dist/esm/shared/LocalizedLink.d.ts +6 -0
  25. package/dist/esm/shared/LocalizedLink.js +2 -0
  26. package/dist/esm/shared/LocalizedLink.js.map +7 -0
  27. package/package.json +1 -1
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/biz-components/SceneShelf/ProductCard.tsx"],
4
- "sourcesContent": ["'use client'\n\nimport * as React from 'react'\nimport { cn } from '../../helpers/index.js'\nimport { Checkbox, Badge, Heading, Text, Picture } from '../../components/index.js'\nimport { useSceneShelfContext } from './context.js'\nimport type { SceneProductCardSemanticName, SceneProductCardData } from './types.js'\n\nexport interface SceneProductCardProps extends React.HTMLAttributes<HTMLDivElement> {\n /** \u4EA7\u54C1\u6570\u636E */\n product: SceneProductCardData\n /** \u662F\u5426\u9009\u4E2D */\n selected?: boolean\n /** \u9009\u4E2D\u72B6\u6001\u53D8\u5316\u56DE\u8C03 */\n onSelectChange?: (selected: boolean, product: SceneProductCardData) => void\n /** \u662F\u5426\u663E\u793A\u6807\u7B7E */\n showTags?: boolean\n /** \u662F\u5426\u663E\u793A\u539F\u4EF7 */\n showOriginalPrice?: boolean\n /** \u4EA7\u54C1\u56FE\u7247\u70B9\u51FB\u56DE\u8C03 */\n onProductImageClick?: (product: SceneProductCardData) => void\n /** \u8BED\u4E49\u5316\u7C7B\u540D */\n classNames?: Partial<Record<SceneProductCardSemanticName, string>>\n}\n\n/**\n * SceneProductCard - \u573A\u666F\u63A8\u8350\u8D27\u67B6\u4EA7\u54C1\u5361\u7247\n *\n * @description \u7528\u4E8E\u573A\u666F\u63A8\u8350\u8D27\u67B6\u7684\u53EF\u9009\u4E2D\u4EA7\u54C1\u5361\u7247\u7EC4\u4EF6\n */\nconst SceneProductCard = React.forwardRef<HTMLDivElement, SceneProductCardProps>(\n (\n {\n className,\n classNames: classNamesProp,\n product,\n selected: selectedProp,\n onSelectChange: onSelectChangeProp,\n showTags: showTagsProp,\n showOriginalPrice: showOriginalPriceProp,\n onProductImageClick,\n ...props\n },\n ref\n ) => {\n // \u4ECE Context \u8BFB\u53D6\u914D\u7F6E\n const context = useSceneShelfContext()\n\n // Props \u4F18\u5148\u7EA7\u9AD8\u4E8E Context\n const showTags = showTagsProp ?? context?.showTags ?? true\n const showOriginalPrice = showOriginalPriceProp ?? context?.showOriginalPrice ?? true\n const classNames = classNamesProp ?? context?.classNames ?? {}\n\n // \u9009\u4E2D\u72B6\u6001\u548C\u56DE\u8C03\u4ECE Context \u83B7\u53D6\n const selected = selectedProp ?? (context ? context.selectedIds.has(product.id) : false)\n const onSelectChange = onSelectChangeProp ?? context?.onSelectChange\n const resolvedOnProductImageClick = onProductImageClick ?? context?.onProductImageClick\n const disabled = product.soldOut ?? false\n\n const handleCheckboxChange = (checked: boolean | 'indeterminate') => {\n if (disabled) return\n if (typeof checked === 'boolean') {\n onSelectChange?.(checked, product)\n }\n }\n\n const handleCardClick = () => {\n if (disabled) return\n onSelectChange?.(!selected, product)\n }\n\n return (\n <div\n ref={ref}\n className={cn(\n 'lg-desktop:gap-2 lg-desktop:h-[362px] lg-desktop:px-6 lg-desktop:pb-6 lg-desktop:pt-4 rounded-box box-border flex h-[284px] flex-col justify-between gap-2 border-2 border-solid p-4 pb-6 transition-colors',\n disabled ? 'cursor-not-allowed opacity-50' : 'cursor-pointer',\n selected\n ? cn('border-brand-0 bg-container-secondary-0', classNames?.cardSelected)\n : cn('border-lines bg-container-primary', classNames?.card),\n className\n )}\n onClick={handleCardClick}\n data-headless-type-name=\"SceneShelf#ProductCard\"\n data-headless-title-desc-button={`${product.custom_name ?? product.title}##Select`}\n data-headless-sku={product.id}\n {...props}\n >\n {/* \u6807\u7B7E\u533A\u57DF */}\n <div\n className={cn(\n 'lg-desktop:left-6 lg-desktop:top-6 flex max-h-[24px] min-h-[24px] flex-wrap gap-1 overflow-visible pr-9',\n classNames?.tags\n )}\n >\n {showTags &&\n product.tags?.map((tag, index) => (\n <Badge key={index} variant={tag.variant || 'outline'} size=\"sm\">\n {tag.label}\n </Badge>\n ))}\n </div>\n\n {/* Checkbox */}\n <Checkbox\n checked={selected}\n disabled={disabled}\n onCheckedChange={handleCheckboxChange}\n onClick={e => e.stopPropagation()}\n className={cn(\n 'text-brand-0 border-brand-0 lg-desktop:right-6 lg-desktop:top-6 absolute right-4 top-4 size-5 shrink-0',\n classNames?.checkbox\n )}\n />\n\n {/* \u4EA7\u54C1\u56FE\u7247 */}\n <div className={cn('flex flex-1 grow-0 items-center justify-center', classNames?.image)}>\n {resolvedOnProductImageClick || product?.href ? (\n <a\n onClick={resolvedOnProductImageClick ? () => resolvedOnProductImageClick(product) : undefined}\n href={resolvedOnProductImageClick ? undefined : product?.href}\n rel=\"noreferrer\"\n >\n <Picture\n source={product.imageUrl}\n alt={product.imageAlt || product.title}\n className=\"lg-desktop:size-[175px] aspect-square size-[124px] \"\n imgClassName=\"object-contain\"\n />\n </a>\n ) : (\n <Picture\n source={product.imageUrl}\n alt={product.imageAlt || product.title}\n className=\"lg-desktop:size-[175px] aspect-square size-[124px] \"\n imgClassName=\"object-contain\"\n />\n )}\n </div>\n\n {/* \u4EA7\u54C1\u4FE1\u606F */}\n <div className=\"flex grow flex-col justify-start gap-4\">\n {/* \u4EA7\u54C1\u540D\u79F0 */}\n <Heading\n as=\"h3\"\n size={2}\n className={cn('text-info-primary line-clamp-2 h-[2.2em]', classNames?.title)}\n html={product.custom_name ?? product.title}\n />\n\n {/* \u4EF7\u683C\u533A\u57DF */}\n <div className={cn('flex flex-wrap items-center gap-1', classNames?.priceWrapper)}>\n <Text\n as=\"span\"\n size={2}\n className={cn('text-info-primary lg-desktop:text-[24px] text-[20px]', classNames?.currentPrice)}\n >\n {product.currentPrice.formatted}\n </Text>\n {showOriginalPrice && product.originalPrice && product.originalPrice.value > product.currentPrice.value && (\n <Text\n as=\"span\"\n size={2}\n className={cn(\n 'text-info-quaternary lg-desktop:text-[24px] text-[20px] line-through',\n classNames?.originalPrice\n )}\n >\n {product.originalPrice.formatted}\n </Text>\n )}\n </div>\n </div>\n </div>\n )\n }\n)\n\nSceneProductCard.displayName = 'SceneShelf.ProductCard'\n\nexport { SceneProductCard }\n"],
5
- "mappings": "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",
6
- "names": ["jsx", "jsxs", "React", "cn", "Checkbox", "Badge", "Heading", "Text", "Picture", "useSceneShelfContext", "SceneProductCard", "className", "classNamesProp", "product", "selectedProp", "onSelectChangeProp", "showTagsProp", "showOriginalPriceProp", "onProductImageClick", "props", "ref", "context", "showTags", "showOriginalPrice", "classNames", "selected", "onSelectChange", "resolvedOnProductImageClick", "disabled", "handleCheckboxChange", "checked", "handleCardClick", "tag", "index", "e"]
4
+ "sourcesContent": ["'use client'\n\nimport * as React from 'react'\nimport { cn } from '../../helpers/index.js'\nimport { Checkbox, Badge, Heading, Text, Picture } from '../../components/index.js'\nimport { useSceneShelfContext } from './context.js'\nimport { LocalizedLink } from '../../shared/LocalizedLink.js'\nimport type { SceneProductCardSemanticName, SceneProductCardData } from './types.js'\n\nexport interface SceneProductCardProps extends React.HTMLAttributes<HTMLDivElement> {\n /** \u4EA7\u54C1\u6570\u636E */\n product: SceneProductCardData\n /** \u662F\u5426\u9009\u4E2D */\n selected?: boolean\n /** \u9009\u4E2D\u72B6\u6001\u53D8\u5316\u56DE\u8C03 */\n onSelectChange?: (selected: boolean, product: SceneProductCardData) => void\n /** \u662F\u5426\u663E\u793A\u6807\u7B7E */\n showTags?: boolean\n /** \u662F\u5426\u663E\u793A\u539F\u4EF7 */\n showOriginalPrice?: boolean\n /** \u4EA7\u54C1\u56FE\u7247\u70B9\u51FB\u56DE\u8C03 */\n onProductImageClick?: (product: SceneProductCardData) => void\n /** \u8BED\u4E49\u5316\u7C7B\u540D */\n classNames?: Partial<Record<SceneProductCardSemanticName, string>>\n}\n\n/**\n * SceneProductCard - \u573A\u666F\u63A8\u8350\u8D27\u67B6\u4EA7\u54C1\u5361\u7247\n *\n * @description \u7528\u4E8E\u573A\u666F\u63A8\u8350\u8D27\u67B6\u7684\u53EF\u9009\u4E2D\u4EA7\u54C1\u5361\u7247\u7EC4\u4EF6\n */\nconst SceneProductCard = React.forwardRef<HTMLDivElement, SceneProductCardProps>(\n (\n {\n className,\n classNames: classNamesProp,\n product,\n selected: selectedProp,\n onSelectChange: onSelectChangeProp,\n showTags: showTagsProp,\n showOriginalPrice: showOriginalPriceProp,\n onProductImageClick,\n ...props\n },\n ref\n ) => {\n // \u4ECE Context \u8BFB\u53D6\u914D\u7F6E\n const context = useSceneShelfContext()\n\n // Props \u4F18\u5148\u7EA7\u9AD8\u4E8E Context\n const showTags = showTagsProp ?? context?.showTags ?? true\n const showOriginalPrice = showOriginalPriceProp ?? context?.showOriginalPrice ?? true\n const classNames = classNamesProp ?? context?.classNames ?? {}\n\n // \u9009\u4E2D\u72B6\u6001\u548C\u56DE\u8C03\u4ECE Context \u83B7\u53D6\n const selected = selectedProp ?? (context ? context.selectedIds.has(product.id) : false)\n const onSelectChange = onSelectChangeProp ?? context?.onSelectChange\n const resolvedOnProductImageClick = onProductImageClick ?? context?.onProductImageClick\n const disabled = product.soldOut ?? false\n\n const handleCheckboxChange = (checked: boolean | 'indeterminate') => {\n if (disabled) return\n if (typeof checked === 'boolean') {\n onSelectChange?.(checked, product)\n }\n }\n\n const handleCardClick = () => {\n if (disabled) return\n onSelectChange?.(!selected, product)\n }\n\n return (\n <div\n ref={ref}\n className={cn(\n 'lg-desktop:gap-2 lg-desktop:h-[362px] lg-desktop:px-6 lg-desktop:pb-6 lg-desktop:pt-4 rounded-box box-border flex h-[284px] flex-col justify-between gap-2 border-2 border-solid p-4 pb-6 transition-colors',\n disabled ? 'cursor-not-allowed opacity-50' : 'cursor-pointer',\n selected\n ? cn('border-brand-0 bg-container-secondary-0', classNames?.cardSelected)\n : cn('border-lines bg-container-primary', classNames?.card),\n className\n )}\n onClick={handleCardClick}\n data-headless-type-name=\"SceneShelf#ProductCard\"\n data-headless-title-desc-button={`${product.custom_name ?? product.title}##Select`}\n data-headless-sku={product.id}\n {...props}\n >\n {/* \u6807\u7B7E\u533A\u57DF */}\n <div\n className={cn(\n 'lg-desktop:left-6 lg-desktop:top-6 flex max-h-[24px] min-h-[24px] flex-wrap gap-1 overflow-visible pr-9',\n classNames?.tags\n )}\n >\n {showTags &&\n product.tags?.map((tag, index) => (\n <Badge key={index} variant={tag.variant || 'outline'} size=\"sm\">\n {tag.label}\n </Badge>\n ))}\n </div>\n\n {/* Checkbox */}\n <Checkbox\n checked={selected}\n disabled={disabled}\n onCheckedChange={handleCheckboxChange}\n onClick={e => e.stopPropagation()}\n className={cn(\n 'text-brand-0 border-brand-0 lg-desktop:right-6 lg-desktop:top-6 absolute right-4 top-4 size-5 shrink-0',\n classNames?.checkbox\n )}\n />\n\n {/* \u4EA7\u54C1\u56FE\u7247 */}\n <div className={cn('flex flex-1 grow-0 items-center justify-center', classNames?.image)}>\n {resolvedOnProductImageClick ? (\n <a onClick={() => resolvedOnProductImageClick(product)} role=\"button\">\n <Picture\n source={product.imageUrl}\n alt={product.imageAlt || product.title}\n className=\"lg-desktop:size-[175px] aspect-square size-[124px] \"\n imgClassName=\"object-contain\"\n />\n </a>\n ) : product?.href ? (\n <LocalizedLink href={product.href}>\n <Picture\n source={product.imageUrl}\n alt={product.imageAlt || product.title}\n className=\"lg-desktop:size-[175px] aspect-square size-[124px] \"\n imgClassName=\"object-contain\"\n />\n </LocalizedLink>\n ) : (\n <Picture\n source={product.imageUrl}\n alt={product.imageAlt || product.title}\n className=\"lg-desktop:size-[175px] aspect-square size-[124px] \"\n imgClassName=\"object-contain\"\n />\n )}\n </div>\n\n {/* \u4EA7\u54C1\u4FE1\u606F */}\n <div className=\"flex grow flex-col justify-start gap-4\">\n {/* \u4EA7\u54C1\u540D\u79F0 */}\n <Heading\n as=\"h3\"\n size={2}\n className={cn('text-info-primary line-clamp-2 h-[2.2em]', classNames?.title)}\n html={product.custom_name ?? product.title}\n />\n\n {/* \u4EF7\u683C\u533A\u57DF */}\n <div className={cn('flex flex-wrap items-center gap-1', classNames?.priceWrapper)}>\n <Text\n as=\"span\"\n size={2}\n className={cn('text-info-primary lg-desktop:text-[24px] text-[20px]', classNames?.currentPrice)}\n >\n {product.currentPrice.formatted}\n </Text>\n {showOriginalPrice && product.originalPrice && product.originalPrice.value > product.currentPrice.value && (\n <Text\n as=\"span\"\n size={2}\n className={cn(\n 'text-info-quaternary lg-desktop:text-[24px] text-[20px] line-through',\n classNames?.originalPrice\n )}\n >\n {product.originalPrice.formatted}\n </Text>\n )}\n </div>\n </div>\n </div>\n )\n }\n)\n\nSceneProductCard.displayName = 'SceneShelf.ProductCard'\n\nexport { SceneProductCard }\n"],
5
+ "mappings": "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",
6
+ "names": ["jsx", "jsxs", "React", "cn", "Checkbox", "Badge", "Heading", "Text", "Picture", "useSceneShelfContext", "LocalizedLink", "SceneProductCard", "className", "classNamesProp", "product", "selectedProp", "onSelectChangeProp", "showTagsProp", "showOriginalPriceProp", "onProductImageClick", "props", "ref", "context", "showTags", "showOriginalPrice", "classNames", "selected", "onSelectChange", "resolvedOnProductImageClick", "disabled", "handleCheckboxChange", "checked", "handleCardClick", "tag", "index", "e"]
7
7
  }
@@ -0,0 +1,6 @@
1
+ import * as React from 'react';
2
+ export interface LocalizedLinkProps extends React.AnchorHTMLAttributes<HTMLAnchorElement> {
3
+ href?: string;
4
+ }
5
+ declare const LocalizedLink: React.ForwardRefExoticComponent<LocalizedLinkProps & React.RefAttributes<HTMLAnchorElement>>;
6
+ export { LocalizedLink };
@@ -0,0 +1,2 @@
1
+ "use client";import{Fragment as m,jsx as n}from"react/jsx-runtime";import*as t from"react";import{getLocalizedPath as d}from"../helpers/index.js";import{useAiuiContext as f}from"../biz-components/AiuiProvider/index.js";const i=t.forwardRef(({href:e,className:a,children:o,rel:c="noreferrer",...s},l)=>{const{locale:r="us"}=f(),L=t.useMemo(()=>e?d(e,r):void 0,[e,r]);return e?n("a",{ref:l,href:L,rel:c,className:a,...s,children:o}):n(m,{children:o})});i.displayName="LocalizedLink";export{i as LocalizedLink};
2
+ //# sourceMappingURL=LocalizedLink.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/shared/LocalizedLink.tsx"],
4
+ "sourcesContent": ["'use client'\n\nimport * as React from 'react'\nimport { getLocalizedPath } from '../helpers/index.js'\nimport { useAiuiContext } from '../biz-components/AiuiProvider/index.js'\n\nexport interface LocalizedLinkProps extends React.AnchorHTMLAttributes<HTMLAnchorElement> {\n href?: string\n}\n\nconst LocalizedLink = React.forwardRef<HTMLAnchorElement, LocalizedLinkProps>(\n ({ href, className, children, rel = 'noreferrer', ...props }, ref) => {\n const { locale = 'us' } = useAiuiContext()\n const localizedHref = React.useMemo(() => (href ? getLocalizedPath(href, locale) : undefined), [href, locale])\n\n if (!href) {\n return <>{children}</>\n }\n\n return (\n <a ref={ref} href={localizedHref} rel={rel} className={className} {...props}>\n {children}\n </a>\n )\n }\n)\n\nLocalizedLink.displayName = 'LocalizedLink'\n\nexport { LocalizedLink }\n"],
5
+ "mappings": "aAgBa,mBAAAA,EAAA,OAAAC,MAAA,oBAdb,UAAYC,MAAW,QACvB,OAAS,oBAAAC,MAAwB,sBACjC,OAAS,kBAAAC,MAAsB,0CAM/B,MAAMC,EAAgBH,EAAM,WAC1B,CAAC,CAAE,KAAAI,EAAM,UAAAC,EAAW,SAAAC,EAAU,IAAAC,EAAM,aAAc,GAAGC,CAAM,EAAGC,IAAQ,CACpE,KAAM,CAAE,OAAAC,EAAS,IAAK,EAAIR,EAAe,EACnCS,EAAgBX,EAAM,QAAQ,IAAOI,EAAOH,EAAiBG,EAAMM,CAAM,EAAI,OAAY,CAACN,EAAMM,CAAM,CAAC,EAE7G,OAAKN,EAKHL,EAAC,KAAE,IAAKU,EAAK,KAAME,EAAe,IAAKJ,EAAK,UAAWF,EAAY,GAAGG,EACnE,SAAAF,EACH,EANOP,EAAAD,EAAA,CAAG,SAAAQ,EAAS,CAQvB,CACF,EAEAH,EAAc,YAAc",
6
+ "names": ["Fragment", "jsx", "React", "getLocalizedPath", "useAiuiContext", "LocalizedLink", "href", "className", "children", "rel", "props", "ref", "locale", "localizedHref"]
7
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@anker-in/headless-ui",
3
- "version": "1.3.2",
3
+ "version": "1.3.3",
4
4
  "type": "commonjs",
5
5
  "main": "./dist/cjs/index.js",
6
6
  "types": "./dist/cjs/index.d.ts",