@vite-mf-monorepo/ui 0.4.5 → 0.4.7
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/Avatar/Avatar.d.ts +19 -0
- package/dist/Avatar/Avatar.js +62 -0
- package/dist/Avatar/Avatar.js.map +1 -0
- package/dist/Avatar/index.d.ts +3 -0
- package/dist/Avatar/index.js +5 -0
- package/dist/Avatar/index.js.map +1 -0
- package/dist/Badge/Badge.d.ts +23 -0
- package/dist/Badge/Badge.js +48 -0
- package/dist/Badge/Badge.js.map +1 -0
- package/dist/Badge/index.d.ts +4 -0
- package/dist/Badge/index.js +5 -0
- package/dist/Badge/index.js.map +1 -0
- package/dist/Button/Button.utils.d.ts +23 -0
- package/dist/{chunk-IUGKH376.js → Button/Button.utils.js} +8 -7
- package/dist/Button/Button.utils.js.map +1 -0
- package/dist/Button/index.d.ts +6 -26
- package/dist/Button/index.js +4 -5
- package/dist/Button/index.js.map +1 -1
- package/dist/Card/Card.d.ts +11 -0
- package/dist/{chunk-RZU2FFBW.js → Card/Card.js} +7 -8
- package/dist/Card/Card.js.map +1 -0
- package/dist/Card/index.d.ts +3 -11
- package/dist/Card/index.js +4 -2
- package/dist/Card/index.js.map +1 -1
- package/dist/Carousel/Carousel.d.ts +65 -0
- package/dist/Carousel/Carousel.js +268 -0
- package/dist/Carousel/Carousel.js.map +1 -0
- package/dist/Carousel/CarouselCounter.d.ts +17 -0
- package/dist/Carousel/CarouselCounter.js +28 -0
- package/dist/Carousel/CarouselCounter.js.map +1 -0
- package/dist/Carousel/CarouselError.d.ts +8 -0
- package/dist/Carousel/CarouselError.js +18 -0
- package/dist/Carousel/CarouselError.js.map +1 -0
- package/dist/Carousel/CarouselItem.d.ts +16 -0
- package/dist/Carousel/CarouselItem.js +28 -0
- package/dist/Carousel/CarouselItem.js.map +1 -0
- package/dist/Carousel/CarouselLoading.d.ts +25 -0
- package/dist/Carousel/CarouselLoading.js +63 -0
- package/dist/Carousel/CarouselLoading.js.map +1 -0
- package/dist/Carousel/CarouselNavigation.d.ts +31 -0
- package/dist/Carousel/CarouselNavigation.js +97 -0
- package/dist/Carousel/CarouselNavigation.js.map +1 -0
- package/dist/Carousel/CarouselPagination.d.ts +20 -0
- package/dist/Carousel/CarouselPagination.js +29 -0
- package/dist/Carousel/CarouselPagination.js.map +1 -0
- package/dist/Carousel/index.d.ts +8 -0
- package/dist/Carousel/index.js +15 -0
- package/dist/Carousel/index.js.map +1 -0
- package/dist/HeroImage/HeroImage.d.ts +15 -0
- package/dist/HeroImage/HeroImage.js +47 -0
- package/dist/HeroImage/HeroImage.js.map +1 -0
- package/dist/HeroImage/index.d.ts +2 -0
- package/dist/HeroImage/index.js +5 -0
- package/dist/HeroImage/index.js.map +1 -0
- package/dist/Icon/Icon.d.ts +14 -0
- package/dist/Icon/Icon.js +204 -0
- package/dist/Icon/Icon.js.map +1 -0
- package/dist/Icon/index.d.ts +3 -14
- package/dist/Icon/index.js +4 -2
- package/dist/Icon/index.js.map +1 -1
- package/dist/IconButton/IconButton.d.ts +17 -0
- package/dist/IconButton/IconButton.js +44 -0
- package/dist/IconButton/IconButton.js.map +1 -0
- package/dist/IconButton/index.d.ts +4 -0
- package/dist/IconButton/index.js +5 -0
- package/dist/IconButton/index.js.map +1 -0
- package/dist/{MovieCard.utils-D8i4d7qA.d.ts → Image/Image.d.ts} +1 -28
- package/dist/Image/Image.js +125 -0
- package/dist/Image/Image.js.map +1 -0
- package/dist/Image/index.d.ts +3 -0
- package/dist/Image/index.js +5 -0
- package/dist/Image/index.js.map +1 -0
- package/dist/Modal/Modal.d.ts +20 -0
- package/dist/Modal/Modal.js +55 -0
- package/dist/Modal/Modal.js.map +1 -0
- package/dist/Modal/index.d.ts +3 -0
- package/dist/Modal/index.js +5 -0
- package/dist/Modal/index.js.map +1 -0
- package/dist/MovieCard/MovieCard.utils.d.ts +34 -0
- package/dist/MovieCard/MovieCard.utils.js +20 -0
- package/dist/MovieCard/MovieCard.utils.js.map +1 -0
- package/dist/MovieCard/MovieCardContent.d.ts +18 -0
- package/dist/MovieCard/MovieCardContent.js +75 -0
- package/dist/MovieCard/MovieCardContent.js.map +1 -0
- package/dist/MovieCard/index.d.ts +6 -0
- package/dist/MovieCard/index.js +5 -0
- package/dist/MovieCard/index.js.map +1 -0
- package/dist/Rating/CircleRating.d.ts +20 -0
- package/dist/Rating/CircleRating.js +75 -0
- package/dist/Rating/CircleRating.js.map +1 -0
- package/dist/Rating/Rating.d.ts +23 -0
- package/dist/Rating/Rating.js +41 -0
- package/dist/Rating/Rating.js.map +1 -0
- package/dist/Rating/StarsRating.d.ts +18 -0
- package/dist/Rating/StarsRating.js +47 -0
- package/dist/Rating/StarsRating.js.map +1 -0
- package/dist/Rating/index.d.ts +2 -0
- package/dist/Rating/index.js +5 -0
- package/dist/Rating/index.js.map +1 -0
- package/dist/Skeleton/Skeleton.d.ts +23 -0
- package/dist/{chunk-FJZK3PY6.js → Skeleton/Skeleton.js} +6 -7
- package/dist/Skeleton/Skeleton.js.map +1 -0
- package/dist/Skeleton/index.d.ts +3 -0
- package/dist/Skeleton/index.js +5 -0
- package/dist/Skeleton/index.js.map +1 -0
- package/dist/Spinner/Spinner.d.ts +8 -0
- package/dist/Spinner/Spinner.js +20 -0
- package/dist/Spinner/Spinner.js.map +1 -0
- package/dist/Spinner/index.d.ts +2 -0
- package/dist/Spinner/index.js +5 -0
- package/dist/Spinner/index.js.map +1 -0
- package/dist/Tabs/Tabs.d.ts +34 -0
- package/dist/Tabs/Tabs.js +47 -0
- package/dist/Tabs/Tabs.js.map +1 -0
- package/dist/Tabs/TabsContext.d.ts +21 -0
- package/dist/Tabs/TabsContext.js +16 -0
- package/dist/Tabs/TabsContext.js.map +1 -0
- package/dist/Tabs/TabsList.d.ts +7 -0
- package/dist/Tabs/TabsList.js +51 -0
- package/dist/Tabs/TabsList.js.map +1 -0
- package/dist/Tabs/TabsListContext.d.ts +16 -0
- package/dist/Tabs/TabsListContext.js +16 -0
- package/dist/Tabs/TabsListContext.js.map +1 -0
- package/dist/Tabs/TabsPanel.d.ts +17 -0
- package/dist/Tabs/TabsPanel.js +26 -0
- package/dist/Tabs/TabsPanel.js.map +1 -0
- package/dist/Tabs/TabsTrigger.d.ts +12 -0
- package/dist/Tabs/TabsTrigger.js +124 -0
- package/dist/Tabs/TabsTrigger.js.map +1 -0
- package/dist/Tabs/index.d.ts +6 -0
- package/dist/Tabs/index.js +5 -0
- package/dist/Tabs/index.js.map +1 -0
- package/dist/Talent/Talent.d.ts +19 -0
- package/dist/Talent/Talent.js +69 -0
- package/dist/Talent/Talent.js.map +1 -0
- package/dist/Talent/index.d.ts +4 -0
- package/dist/Talent/index.js +5 -0
- package/dist/Talent/index.js.map +1 -0
- package/dist/TrailerCard/TrailerCard.d.ts +15 -0
- package/dist/TrailerCard/TrailerCard.js +86 -0
- package/dist/TrailerCard/TrailerCard.js.map +1 -0
- package/dist/TrailerCard/index.d.ts +2 -0
- package/dist/TrailerCard/index.js +5 -0
- package/dist/TrailerCard/index.js.map +1 -0
- package/dist/Typography/Typography.d.ts +17 -0
- package/dist/Typography/Typography.js +55 -0
- package/dist/Typography/Typography.js.map +1 -0
- package/dist/Typography/index.d.ts +2 -0
- package/dist/Typography/index.js +5 -0
- package/dist/Typography/index.js.map +1 -0
- package/dist/index.d.ts +31 -372
- package/dist/index.js +50 -1099
- package/dist/index.js.map +1 -1
- package/dist/next/Button/Button.d.ts +9 -0
- package/dist/{chunk-ZTQU4GMY.js → next/Button/Button.js} +13 -10
- package/dist/next/Button/Button.js.map +1 -0
- package/dist/next/Button/Button.types.d.ts +26 -0
- package/dist/next/Button/Button.types.js +1 -0
- package/dist/next/Button/Button.types.js.map +1 -0
- package/dist/next/Button/index.d.ts +6 -0
- package/dist/next/Button/index.js +5 -0
- package/dist/next/Button/index.js.map +1 -0
- package/dist/next/HeroImage/HeroImage.d.ts +11 -0
- package/dist/next/HeroImage/HeroImage.js +44 -0
- package/dist/next/HeroImage/HeroImage.js.map +1 -0
- package/dist/next/HeroImage/index.d.ts +2 -0
- package/dist/next/HeroImage/index.js +5 -0
- package/dist/next/HeroImage/index.js.map +1 -0
- package/dist/next/Image/NextImage.d.ts +8 -0
- package/dist/next/Image/NextImage.js +84 -0
- package/dist/next/Image/NextImage.js.map +1 -0
- package/dist/next/Image/NextImage.types.d.ts +13 -0
- package/dist/next/Image/NextImage.types.js +1 -0
- package/dist/next/Image/NextImage.types.js.map +1 -0
- package/dist/next/Image/index.d.ts +5 -0
- package/dist/next/Image/index.js +5 -0
- package/dist/next/Image/index.js.map +1 -0
- package/dist/next/MovieCard/MovieCard.d.ts +9 -0
- package/dist/next/MovieCard/MovieCard.js +44 -0
- package/dist/next/MovieCard/MovieCard.js.map +1 -0
- package/dist/next/MovieCard/MovieCard.types.d.ts +15 -0
- package/dist/next/MovieCard/MovieCard.types.js +1 -0
- package/dist/next/MovieCard/MovieCard.types.js.map +1 -0
- package/dist/next/MovieCard/MovieCardContent.d.ts +19 -0
- package/dist/next/MovieCard/MovieCardContent.js +79 -0
- package/dist/next/MovieCard/MovieCardContent.js.map +1 -0
- package/dist/next/MovieCard/index.d.ts +6 -0
- package/dist/next/MovieCard/index.js +5 -0
- package/dist/next/MovieCard/index.js.map +1 -0
- package/dist/next/index.d.ts +14 -60
- package/dist/next/index.js +10 -270
- package/dist/next/index.js.map +1 -1
- package/dist/react-router/Button/Button.d.ts +9 -0
- package/dist/react-router/Button/Button.js +52 -0
- package/dist/react-router/Button/Button.js.map +1 -0
- package/dist/react-router/Button/Button.types.d.ts +24 -0
- package/dist/react-router/Button/Button.types.js +1 -0
- package/dist/react-router/Button/Button.types.js.map +1 -0
- package/dist/react-router/Button/index.d.ts +6 -0
- package/dist/react-router/Button/index.js +5 -0
- package/dist/react-router/Button/index.js.map +1 -0
- package/dist/react-router/MovieCard/MovieCard.d.ts +9 -0
- package/dist/react-router/MovieCard/MovieCard.js +42 -0
- package/dist/react-router/MovieCard/MovieCard.js.map +1 -0
- package/dist/react-router/MovieCard/MovieCard.types.d.ts +15 -0
- package/dist/react-router/MovieCard/MovieCard.types.js +1 -0
- package/dist/react-router/MovieCard/MovieCard.types.js.map +1 -0
- package/dist/react-router/MovieCard/index.d.ts +6 -0
- package/dist/react-router/MovieCard/index.js +5 -0
- package/dist/react-router/MovieCard/index.js.map +1 -0
- package/dist/react-router/index.d.ts +8 -17
- package/dist/react-router/index.js +6 -7
- package/dist/react-router/index.js.map +1 -1
- package/dist/styles.css +2 -0
- package/package.json +4 -4
- package/dist/chunk-6DP3KZQG.js +0 -214
- package/dist/chunk-6DP3KZQG.js.map +0 -1
- package/dist/chunk-6FBMTGXQ.js +0 -119
- package/dist/chunk-6FBMTGXQ.js.map +0 -1
- package/dist/chunk-7IAJQE27.js +0 -228
- package/dist/chunk-7IAJQE27.js.map +0 -1
- package/dist/chunk-DGJI4VNO.js +0 -3
- package/dist/chunk-DGJI4VNO.js.map +0 -1
- package/dist/chunk-FJZK3PY6.js.map +0 -1
- package/dist/chunk-IUGKH376.js.map +0 -1
- package/dist/chunk-RZU2FFBW.js.map +0 -1
- package/dist/chunk-ZTQU4GMY.js.map +0 -1
- package/dist/index.css +0 -1313
- package/dist/index.css.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/Icon/Icon.tsx"],"names":["ArrowLeftIcon24","ArrowRightIcon24","ArrowTopRightOnSquareIcon24","Bars3Icon24","BookmarkIcon24","CalendarIcon24","CheckIcon24","ChevronDownIcon24","ChevronLeftIcon24","ChevronRightIcon24","ChevronUpIcon24","EllipsisVerticalIcon24","ExclamationCircleIcon24","ExclamationTriangleIcon24","FilmIcon24","PhotoIcon24","HeartIcon24","InformationCircleIcon24","LinkIcon24","MagnifyingGlassIcon24","MinusIcon24","PlayIcon24","PlayCircleIcon24","PlusIcon24","ShareIcon24","StarIcon24","TvIcon24","UserIcon24","UsersIcon24","XMarkIcon24","ArrowLeftIcon20","ArrowRightIcon20","ArrowTopRightOnSquareIcon20","Bars3Icon20","BookmarkIcon20","CalendarIcon20","CheckIcon20","ChevronDownIcon20","ChevronLeftIcon20","ChevronRightIcon20","ChevronUpIcon20","EllipsisVerticalIcon20","ExclamationCircleIcon20","ExclamationTriangleIcon20","FilmIcon20","PhotoIcon20","HeartIcon20","InformationCircleIcon20","LinkIcon20","MagnifyingGlassIcon20","MinusIcon20","PlayIcon20","PlayCircleIcon20","PlusIcon20","ShareIcon20","StarIcon20","TvIcon20","UserIcon20","UsersIcon20","XMarkIcon20","ArrowLeftIcon16","ArrowRightIcon16","Bars3Icon16","BookmarkIcon16","CalendarIcon16","CheckIcon16","ChevronDownIcon16","ChevronLeftIcon16","ChevronRightIcon16","ChevronUpIcon16","EllipsisVerticalIcon16","ExclamationCircleIcon16","ExclamationTriangleIcon16","HeartIcon16","InformationCircleIcon16","LinkIcon16","MagnifyingGlassIcon16","MinusIcon16","PlayIcon16","PlusIcon16","StarIcon16","UserIcon16","XMarkIcon16"],"mappings":"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","file":"chunk-6FBMTGXQ.js","sourcesContent":["import {\n ArrowLeftIcon as ArrowLeftIcon16,\n ArrowRightIcon as ArrowRightIcon16,\n Bars3Icon as Bars3Icon16,\n BookmarkIcon as BookmarkIcon16,\n CalendarIcon as CalendarIcon16,\n CheckIcon as CheckIcon16,\n ChevronDownIcon as ChevronDownIcon16,\n ChevronLeftIcon as ChevronLeftIcon16,\n ChevronRightIcon as ChevronRightIcon16,\n ChevronUpIcon as ChevronUpIcon16,\n EllipsisVerticalIcon as EllipsisVerticalIcon16,\n ExclamationCircleIcon as ExclamationCircleIcon16,\n ExclamationTriangleIcon as ExclamationTriangleIcon16,\n HeartIcon as HeartIcon16,\n InformationCircleIcon as InformationCircleIcon16,\n LinkIcon as LinkIcon16,\n MagnifyingGlassIcon as MagnifyingGlassIcon16,\n MinusIcon as MinusIcon16,\n PlayIcon as PlayIcon16,\n PlusIcon as PlusIcon16,\n StarIcon as StarIcon16,\n UserIcon as UserIcon16,\n XMarkIcon as XMarkIcon16,\n} from '@heroicons/react/16/solid'\nimport {\n ArrowLeftIcon as ArrowLeftIcon20,\n ArrowRightIcon as ArrowRightIcon20,\n ArrowTopRightOnSquareIcon as ArrowTopRightOnSquareIcon20,\n Bars3Icon as Bars3Icon20,\n BookmarkIcon as BookmarkIcon20,\n CalendarIcon as CalendarIcon20,\n CheckIcon as CheckIcon20,\n ChevronDownIcon as ChevronDownIcon20,\n ChevronLeftIcon as ChevronLeftIcon20,\n ChevronRightIcon as ChevronRightIcon20,\n ChevronUpIcon as ChevronUpIcon20,\n EllipsisVerticalIcon as EllipsisVerticalIcon20,\n ExclamationCircleIcon as ExclamationCircleIcon20,\n ExclamationTriangleIcon as ExclamationTriangleIcon20,\n FilmIcon as FilmIcon20,\n HeartIcon as HeartIcon20,\n InformationCircleIcon as InformationCircleIcon20,\n LinkIcon as LinkIcon20,\n MagnifyingGlassIcon as MagnifyingGlassIcon20,\n MinusIcon as MinusIcon20,\n PhotoIcon as PhotoIcon20,\n PlayCircleIcon as PlayCircleIcon20,\n PlayIcon as PlayIcon20,\n PlusIcon as PlusIcon20,\n ShareIcon as ShareIcon20,\n StarIcon as StarIcon20,\n TvIcon as TvIcon20,\n UserIcon as UserIcon20,\n UsersIcon as UsersIcon20,\n XMarkIcon as XMarkIcon20,\n} from '@heroicons/react/20/solid'\nimport {\n ArrowLeftIcon as ArrowLeftIcon24,\n ArrowRightIcon as ArrowRightIcon24,\n ArrowTopRightOnSquareIcon as ArrowTopRightOnSquareIcon24,\n Bars3Icon as Bars3Icon24,\n BookmarkIcon as BookmarkIcon24,\n CalendarIcon as CalendarIcon24,\n CheckIcon as CheckIcon24,\n ChevronDownIcon as ChevronDownIcon24,\n ChevronLeftIcon as ChevronLeftIcon24,\n ChevronRightIcon as ChevronRightIcon24,\n ChevronUpIcon as ChevronUpIcon24,\n EllipsisVerticalIcon as EllipsisVerticalIcon24,\n ExclamationCircleIcon as ExclamationCircleIcon24,\n ExclamationTriangleIcon as ExclamationTriangleIcon24,\n FilmIcon as FilmIcon24,\n HeartIcon as HeartIcon24,\n InformationCircleIcon as InformationCircleIcon24,\n LinkIcon as LinkIcon24,\n MagnifyingGlassIcon as MagnifyingGlassIcon24,\n MinusIcon as MinusIcon24,\n PhotoIcon as PhotoIcon24,\n PlayCircleIcon as PlayCircleIcon24,\n PlayIcon as PlayIcon24,\n PlusIcon as PlusIcon24,\n ShareIcon as ShareIcon24,\n StarIcon as StarIcon24,\n TvIcon as TvIcon24,\n UserIcon as UserIcon24,\n UsersIcon as UsersIcon24,\n XMarkIcon as XMarkIcon24,\n} from '@heroicons/react/24/outline'\n\nimport type { ComponentType, SVGProps } from 'react'\n\ntype HeroIcon = ComponentType<SVGProps<SVGSVGElement>>\n\nconst iconMap24: Record<string, HeroIcon> = {\n ArrowLeft: ArrowLeftIcon24,\n ArrowRight: ArrowRightIcon24,\n ArrowTopRightOnSquare: ArrowTopRightOnSquareIcon24,\n Bars3: Bars3Icon24,\n Bookmark: BookmarkIcon24,\n Calendar: CalendarIcon24,\n Check: CheckIcon24,\n ChevronDown: ChevronDownIcon24,\n ChevronLeft: ChevronLeftIcon24,\n ChevronRight: ChevronRightIcon24,\n ChevronUp: ChevronUpIcon24,\n EllipsisVertical: EllipsisVerticalIcon24,\n ExclamationCircle: ExclamationCircleIcon24,\n ExclamationTriangle: ExclamationTriangleIcon24,\n Film: FilmIcon24,\n Photo: PhotoIcon24,\n Heart: HeartIcon24,\n InformationCircle: InformationCircleIcon24,\n Link: LinkIcon24,\n MagnifyingGlass: MagnifyingGlassIcon24,\n Minus: MinusIcon24,\n Play: PlayIcon24,\n PlayCircle: PlayCircleIcon24,\n Plus: PlusIcon24,\n Share: ShareIcon24,\n Star: StarIcon24,\n Tv: TvIcon24,\n User: UserIcon24,\n Users: UsersIcon24,\n XMark: XMarkIcon24,\n}\n\nconst iconMap20: Record<string, HeroIcon> = {\n ArrowLeft: ArrowLeftIcon20,\n ArrowRight: ArrowRightIcon20,\n ArrowTopRightOnSquare: ArrowTopRightOnSquareIcon20,\n Bars3: Bars3Icon20,\n Bookmark: BookmarkIcon20,\n Calendar: CalendarIcon20,\n Check: CheckIcon20,\n ChevronDown: ChevronDownIcon20,\n ChevronLeft: ChevronLeftIcon20,\n ChevronRight: ChevronRightIcon20,\n ChevronUp: ChevronUpIcon20,\n EllipsisVertical: EllipsisVerticalIcon20,\n ExclamationCircle: ExclamationCircleIcon20,\n ExclamationTriangle: ExclamationTriangleIcon20,\n Film: FilmIcon20,\n Photo: PhotoIcon20,\n Heart: HeartIcon20,\n InformationCircle: InformationCircleIcon20,\n Link: LinkIcon20,\n MagnifyingGlass: MagnifyingGlassIcon20,\n Minus: MinusIcon20,\n Play: PlayIcon20,\n PlayCircle: PlayCircleIcon20,\n Plus: PlusIcon20,\n Share: ShareIcon20,\n Star: StarIcon20,\n Tv: TvIcon20,\n User: UserIcon20,\n Users: UsersIcon20,\n XMark: XMarkIcon20,\n}\n\nconst iconMap16: Record<string, HeroIcon> = {\n ArrowLeft: ArrowLeftIcon16,\n ArrowRight: ArrowRightIcon16,\n Bars3: Bars3Icon16,\n Bookmark: BookmarkIcon16,\n Calendar: CalendarIcon16,\n Check: CheckIcon16,\n ChevronDown: ChevronDownIcon16,\n ChevronLeft: ChevronLeftIcon16,\n ChevronRight: ChevronRightIcon16,\n ChevronUp: ChevronUpIcon16,\n EllipsisVertical: EllipsisVerticalIcon16,\n ExclamationCircle: ExclamationCircleIcon16,\n ExclamationTriangle: ExclamationTriangleIcon16,\n Heart: HeartIcon16,\n InformationCircle: InformationCircleIcon16,\n Link: LinkIcon16,\n MagnifyingGlass: MagnifyingGlassIcon16,\n Minus: MinusIcon16,\n Play: PlayIcon16,\n Plus: PlusIcon16,\n Star: StarIcon16,\n User: UserIcon16,\n XMark: XMarkIcon16,\n}\n\nexport type IconName =\n | 'ArrowLeft'\n | 'ArrowRight'\n | 'ArrowTopRightOnSquare'\n | 'Bars3'\n | 'Bookmark'\n | 'Check'\n | 'Calendar'\n | 'ChevronDown'\n | 'ChevronLeft'\n | 'ChevronRight'\n | 'ChevronUp'\n | 'EllipsisVertical'\n | 'ExclamationCircle'\n | 'ExclamationTriangle'\n | 'Film'\n | 'Photo'\n | 'Heart'\n | 'InformationCircle'\n | 'Link'\n | 'MagnifyingGlass'\n | 'Minus'\n | 'Play'\n | 'PlayCircle'\n | 'Plus'\n | 'Share'\n | 'Star'\n | 'Tv'\n | 'User'\n | 'Users'\n | 'XMark'\n\nexport type IconSize = 16 | 20 | 24 | 32 | 48 | 64\n\nexport interface IconProps extends SVGProps<SVGSVGElement> {\n /** Icon name from the available subset */\n name: IconName\n /** Icon size in pixels (16, 20, 24, 32, 48, 64) */\n size?: IconSize\n}\n\nfunction Icon({ name, size = 24, className, ...rest }: Readonly<IconProps>) {\n let IconComponent: HeroIcon\n\n if (size <= 16) {\n IconComponent = iconMap16[name] ?? iconMap20[name]\n } else if (size <= 20) {\n IconComponent = iconMap20[name]\n } else {\n IconComponent = iconMap24[name]\n }\n\n return (\n <IconComponent\n className={className}\n width={size}\n height={size}\n {...rest}\n aria-hidden\n />\n )\n}\n\nexport default Icon\n"]}
|
package/dist/chunk-7IAJQE27.js
DELETED
|
@@ -1,228 +0,0 @@
|
|
|
1
|
-
import { getMovieCardLinkClasses, Rating_default, Typography_default, getMovieCardClasses } from './chunk-6DP3KZQG.js';
|
|
2
|
-
import { Card_default } from './chunk-RZU2FFBW.js';
|
|
3
|
-
import { Icon_default } from './chunk-6FBMTGXQ.js';
|
|
4
|
-
import { getBlurDataUrl } from '@vite-mf-monorepo/shared';
|
|
5
|
-
import clsx from 'clsx';
|
|
6
|
-
import { useRef, useState, useEffect, useCallback } from 'react';
|
|
7
|
-
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
8
|
-
import { Link } from 'react-router-dom';
|
|
9
|
-
|
|
10
|
-
function Image({
|
|
11
|
-
src,
|
|
12
|
-
alt,
|
|
13
|
-
blurDataUrl,
|
|
14
|
-
autoBlur = false,
|
|
15
|
-
blurSize = 16,
|
|
16
|
-
blurQuality = 0.3,
|
|
17
|
-
aspectRatio = "2/3",
|
|
18
|
-
fallback,
|
|
19
|
-
className,
|
|
20
|
-
onLoad,
|
|
21
|
-
onError,
|
|
22
|
-
loading = "eager",
|
|
23
|
-
...rest
|
|
24
|
-
}) {
|
|
25
|
-
const imgRef = useRef(null);
|
|
26
|
-
const containerRef = useRef(null);
|
|
27
|
-
const [state, setState] = useState("loading");
|
|
28
|
-
const [generatedBlur, setGeneratedBlur] = useState(
|
|
29
|
-
void 0
|
|
30
|
-
);
|
|
31
|
-
const [blurReady, setBlurReady] = useState(!autoBlur || !!blurDataUrl);
|
|
32
|
-
const [isVisible, setIsVisible] = useState(loading === "eager");
|
|
33
|
-
const effectiveBlur = blurDataUrl ?? generatedBlur;
|
|
34
|
-
useEffect(() => {
|
|
35
|
-
if (loading === "eager" || !containerRef.current) {
|
|
36
|
-
return;
|
|
37
|
-
}
|
|
38
|
-
const observer = new IntersectionObserver(
|
|
39
|
-
([entry]) => {
|
|
40
|
-
if (entry.isIntersecting) {
|
|
41
|
-
setIsVisible(true);
|
|
42
|
-
observer.unobserve(entry.target);
|
|
43
|
-
}
|
|
44
|
-
},
|
|
45
|
-
{ rootMargin: "50px" }
|
|
46
|
-
);
|
|
47
|
-
observer.observe(containerRef.current);
|
|
48
|
-
return () => {
|
|
49
|
-
observer.disconnect();
|
|
50
|
-
};
|
|
51
|
-
}, [loading]);
|
|
52
|
-
useEffect(() => {
|
|
53
|
-
if (!autoBlur || blurDataUrl) {
|
|
54
|
-
setBlurReady(true);
|
|
55
|
-
return;
|
|
56
|
-
}
|
|
57
|
-
setBlurReady(false);
|
|
58
|
-
getBlurDataUrl(src, blurSize, blurQuality).then((base64) => {
|
|
59
|
-
setGeneratedBlur(base64);
|
|
60
|
-
setBlurReady(true);
|
|
61
|
-
}).catch(() => {
|
|
62
|
-
setBlurReady(true);
|
|
63
|
-
});
|
|
64
|
-
}, [autoBlur, src, blurDataUrl, blurSize, blurQuality]);
|
|
65
|
-
useEffect(() => {
|
|
66
|
-
setState("loading");
|
|
67
|
-
setGeneratedBlur(void 0);
|
|
68
|
-
if (imgRef.current?.complete && imgRef.current.naturalHeight !== 0) {
|
|
69
|
-
setState("loaded");
|
|
70
|
-
}
|
|
71
|
-
}, [src]);
|
|
72
|
-
const handleLoad = useCallback(() => {
|
|
73
|
-
setState("loaded");
|
|
74
|
-
onLoad?.();
|
|
75
|
-
}, [onLoad]);
|
|
76
|
-
const handleError = useCallback(() => {
|
|
77
|
-
setState("error");
|
|
78
|
-
onError?.();
|
|
79
|
-
}, [onError]);
|
|
80
|
-
const defaultFallback = /* @__PURE__ */ jsx("div", { className: "ui:flex ui:h-full ui:w-full ui:items-center ui:justify-center ui:bg-muted", children: /* @__PURE__ */ jsx(
|
|
81
|
-
Icon_default,
|
|
82
|
-
{
|
|
83
|
-
name: "Photo",
|
|
84
|
-
size: 48,
|
|
85
|
-
className: "ui:text-muted-foreground",
|
|
86
|
-
"aria-hidden": "true"
|
|
87
|
-
}
|
|
88
|
-
) });
|
|
89
|
-
return /* @__PURE__ */ jsx(
|
|
90
|
-
"div",
|
|
91
|
-
{
|
|
92
|
-
ref: containerRef,
|
|
93
|
-
className: clsx("ui:relative ui:overflow-hidden ui:bg-muted", className),
|
|
94
|
-
style: aspectRatio ? { aspectRatio } : void 0,
|
|
95
|
-
"data-state": state,
|
|
96
|
-
children: state === "error" ? fallback ?? defaultFallback : /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
97
|
-
effectiveBlur && state === "loading" && /* @__PURE__ */ jsx(
|
|
98
|
-
"img",
|
|
99
|
-
{
|
|
100
|
-
src: effectiveBlur,
|
|
101
|
-
alt: "",
|
|
102
|
-
"aria-hidden": "true",
|
|
103
|
-
className: "ui:absolute ui:inset-0 ui:h-full ui:w-full ui:scale-105 ui:object-cover"
|
|
104
|
-
}
|
|
105
|
-
),
|
|
106
|
-
blurReady && isVisible && /* @__PURE__ */ jsx(
|
|
107
|
-
"img",
|
|
108
|
-
{
|
|
109
|
-
ref: imgRef,
|
|
110
|
-
src,
|
|
111
|
-
alt,
|
|
112
|
-
onLoad: handleLoad,
|
|
113
|
-
onError: handleError,
|
|
114
|
-
className: clsx(
|
|
115
|
-
"ui:absolute ui:inset-0 ui:h-full ui:w-full ui:object-cover ui:transition-opacity ui:duration-300",
|
|
116
|
-
state === "loaded" ? "ui:opacity-100" : "ui:opacity-0"
|
|
117
|
-
),
|
|
118
|
-
...rest
|
|
119
|
-
}
|
|
120
|
-
)
|
|
121
|
-
] })
|
|
122
|
-
}
|
|
123
|
-
);
|
|
124
|
-
}
|
|
125
|
-
var Image_default = Image;
|
|
126
|
-
function MovieCardContent({
|
|
127
|
-
id,
|
|
128
|
-
title,
|
|
129
|
-
posterUrl,
|
|
130
|
-
voteAverage,
|
|
131
|
-
year,
|
|
132
|
-
className,
|
|
133
|
-
imageLoading = "lazy",
|
|
134
|
-
isInteractive,
|
|
135
|
-
onClick
|
|
136
|
-
}) {
|
|
137
|
-
return /* @__PURE__ */ jsxs(
|
|
138
|
-
Card_default,
|
|
139
|
-
{
|
|
140
|
-
variant: "ghost",
|
|
141
|
-
className: getMovieCardClasses(isInteractive, className),
|
|
142
|
-
onClick,
|
|
143
|
-
"data-testid": `movie-card-${String(id)}`,
|
|
144
|
-
children: [
|
|
145
|
-
/* @__PURE__ */ jsxs("div", { className: "ui:relative ui:aspect-[2/3] ui:w-full ui:overflow-hidden ui:rounded-md ui:bg-gray-200", children: [
|
|
146
|
-
/* @__PURE__ */ jsx(
|
|
147
|
-
Image_default,
|
|
148
|
-
{
|
|
149
|
-
src: posterUrl,
|
|
150
|
-
alt: title,
|
|
151
|
-
loading: imageLoading,
|
|
152
|
-
aspectRatio: void 0,
|
|
153
|
-
className: "ui:h-full ui:w-full ui:object-cover"
|
|
154
|
-
}
|
|
155
|
-
),
|
|
156
|
-
/* @__PURE__ */ jsx("div", { className: "ui:absolute ui:bottom-2 ui:right-2 ui:flex ui:items-center ui:justify-center ui:rounded-full ui:bg-white/80 ui:p-1", children: /* @__PURE__ */ jsx(
|
|
157
|
-
Rating_default,
|
|
158
|
-
{
|
|
159
|
-
value: voteAverage,
|
|
160
|
-
size: "sm",
|
|
161
|
-
variant: "circle",
|
|
162
|
-
trackClassName: "ui:text-gray-200",
|
|
163
|
-
className: "ui:drop-shadow"
|
|
164
|
-
}
|
|
165
|
-
) })
|
|
166
|
-
] }),
|
|
167
|
-
/* @__PURE__ */ jsxs("div", { className: "ui:mt-2 ui:flex ui:flex-col ui:gap-0.5 ui:px-1", children: [
|
|
168
|
-
/* @__PURE__ */ jsx(
|
|
169
|
-
Typography_default,
|
|
170
|
-
{
|
|
171
|
-
variant: "label",
|
|
172
|
-
as: "h3",
|
|
173
|
-
className: "ui:line-clamp-2",
|
|
174
|
-
title,
|
|
175
|
-
children: title
|
|
176
|
-
}
|
|
177
|
-
),
|
|
178
|
-
year && /* @__PURE__ */ jsx(
|
|
179
|
-
Typography_default,
|
|
180
|
-
{
|
|
181
|
-
variant: "caption-xs",
|
|
182
|
-
className: "ui:[.media-section:nth-of-type(odd)_&]:text-badge-foreground",
|
|
183
|
-
children: year
|
|
184
|
-
}
|
|
185
|
-
)
|
|
186
|
-
] })
|
|
187
|
-
]
|
|
188
|
-
}
|
|
189
|
-
);
|
|
190
|
-
}
|
|
191
|
-
function MovieCard({
|
|
192
|
-
id,
|
|
193
|
-
title,
|
|
194
|
-
posterUrl,
|
|
195
|
-
voteAverage,
|
|
196
|
-
year,
|
|
197
|
-
className,
|
|
198
|
-
imageLoading = "lazy",
|
|
199
|
-
as = "card",
|
|
200
|
-
...rest
|
|
201
|
-
}) {
|
|
202
|
-
const to = "to" in rest ? rest.to : void 0;
|
|
203
|
-
const onClick = "onClick" in rest ? rest.onClick : void 0;
|
|
204
|
-
const isInteractive = as === "link" || as === "button";
|
|
205
|
-
const cardContent = /* @__PURE__ */ jsx(
|
|
206
|
-
MovieCardContent,
|
|
207
|
-
{
|
|
208
|
-
id,
|
|
209
|
-
title,
|
|
210
|
-
posterUrl,
|
|
211
|
-
voteAverage,
|
|
212
|
-
year,
|
|
213
|
-
className,
|
|
214
|
-
imageLoading,
|
|
215
|
-
isInteractive,
|
|
216
|
-
onClick: as === "button" ? onClick : void 0
|
|
217
|
-
}
|
|
218
|
-
);
|
|
219
|
-
if (as === "link" && to) {
|
|
220
|
-
return /* @__PURE__ */ jsx(Link, { to, className: getMovieCardLinkClasses(), children: cardContent });
|
|
221
|
-
}
|
|
222
|
-
return cardContent;
|
|
223
|
-
}
|
|
224
|
-
var MovieCard_default = MovieCard;
|
|
225
|
-
|
|
226
|
-
export { Image_default, MovieCard_default };
|
|
227
|
-
//# sourceMappingURL=chunk-7IAJQE27.js.map
|
|
228
|
-
//# sourceMappingURL=chunk-7IAJQE27.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/Image/Image.tsx","../src/MovieCard/MovieCardContent.tsx","../src/react-router/MovieCard/MovieCard.tsx"],"names":["jsxs","jsx"],"mappings":"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","file":"chunk-7IAJQE27.js","sourcesContent":["import { getBlurDataUrl } from '@vite-mf-monorepo/shared'\nimport clsx from 'clsx'\nimport { useCallback, useEffect, useRef, useState } from 'react'\n\nimport { Icon } from '../Icon'\n\nimport type { ImgHTMLAttributes, ReactNode } from 'react'\n\nexport type ImageState = 'loading' | 'loaded' | 'error'\n\nexport type AspectRatio = '2/3' | '16/9' | '1/1' | '4/3' | '3/2'\n\nexport type ImageLoading = 'lazy' | 'eager'\n\nexport interface ImageProps\n extends Omit<ImgHTMLAttributes<HTMLImageElement>, 'placeholder'> {\n /** Image source URL */\n src: string\n /** Alt text for accessibility */\n alt: string\n /** Pre-generated blur data URL (base64) */\n blurDataUrl?: string\n /** Auto-generate blur placeholder from src using Canvas API */\n autoBlur?: boolean\n /** Size of blur canvas (smaller = more blur). Default: 16 */\n blurSize?: number\n /** JPEG quality for blur (0-1). Default: 0.3 */\n blurQuality?: number\n /** Aspect ratio of the image container */\n aspectRatio?: AspectRatio | (string & {})\n /** Fallback content when image fails to load */\n fallback?: ReactNode\n /** Callback when image loads successfully */\n onLoad?: () => void\n /** Callback when image fails to load */\n onError?: () => void\n /** Load strategy: 'lazy' waits for viewport visibility, 'eager' loads immediately. Default: 'eager' */\n loading?: ImageLoading\n}\n\nfunction Image({\n src,\n alt,\n blurDataUrl,\n autoBlur = false,\n blurSize = 16,\n blurQuality = 0.3,\n aspectRatio = '2/3',\n fallback,\n className,\n onLoad,\n onError,\n loading = 'eager',\n ...rest\n}: Readonly<ImageProps>) {\n const imgRef = useRef<HTMLImageElement>(null)\n const containerRef = useRef<HTMLDivElement>(null)\n const [state, setState] = useState<ImageState>('loading')\n const [generatedBlur, setGeneratedBlur] = useState<string | undefined>(\n undefined\n )\n const [blurReady, setBlurReady] = useState(!autoBlur || !!blurDataUrl)\n const [isVisible, setIsVisible] = useState(loading === 'eager')\n\n const effectiveBlur = blurDataUrl ?? generatedBlur\n\n // Lazy load with IntersectionObserver\n useEffect(() => {\n if (loading === 'eager' || !containerRef.current) {\n return\n }\n\n const observer = new IntersectionObserver(\n ([entry]) => {\n if (entry.isIntersecting) {\n setIsVisible(true)\n observer.unobserve(entry.target)\n }\n },\n { rootMargin: '50px' }\n )\n\n observer.observe(containerRef.current)\n\n return () => {\n observer.disconnect()\n }\n }, [loading])\n\n useEffect(() => {\n if (!autoBlur || blurDataUrl) {\n setBlurReady(true)\n return\n }\n\n setBlurReady(false)\n\n getBlurDataUrl(src, blurSize, blurQuality)\n .then((base64) => {\n setGeneratedBlur(base64)\n setBlurReady(true)\n })\n .catch(() => {\n setBlurReady(true)\n })\n }, [autoBlur, src, blurDataUrl, blurSize, blurQuality])\n\n useEffect(() => {\n setState('loading')\n setGeneratedBlur(undefined)\n\n // Check if image is already loaded from cache\n if (imgRef.current?.complete && imgRef.current.naturalHeight !== 0) {\n setState('loaded')\n }\n }, [src])\n\n const handleLoad = useCallback(() => {\n setState('loaded')\n onLoad?.()\n }, [onLoad])\n\n const handleError = useCallback(() => {\n setState('error')\n onError?.()\n }, [onError])\n\n const defaultFallback = (\n <div className=\"ui:flex ui:h-full ui:w-full ui:items-center ui:justify-center ui:bg-muted\">\n <Icon\n name=\"Photo\"\n size={48}\n className=\"ui:text-muted-foreground\"\n aria-hidden=\"true\"\n />\n </div>\n )\n\n return (\n <div\n ref={containerRef}\n className={clsx('ui:relative ui:overflow-hidden ui:bg-muted', className)}\n style={aspectRatio ? { aspectRatio } : undefined}\n data-state={state}\n >\n {state === 'error' ? (\n (fallback ?? defaultFallback)\n ) : (\n <>\n {effectiveBlur && state === 'loading' && (\n <img\n src={effectiveBlur}\n alt=\"\"\n aria-hidden=\"true\"\n className=\"ui:absolute ui:inset-0 ui:h-full ui:w-full ui:scale-105 ui:object-cover\"\n />\n )}\n\n {blurReady && isVisible && (\n <img\n ref={imgRef}\n src={src}\n alt={alt}\n onLoad={handleLoad}\n onError={handleError}\n className={clsx(\n 'ui:absolute ui:inset-0 ui:h-full ui:w-full ui:object-cover ui:transition-opacity ui:duration-300',\n state === 'loaded' ? 'ui:opacity-100' : 'ui:opacity-0'\n )}\n {...rest}\n />\n )}\n </>\n )}\n </div>\n )\n}\n\nexport default Image\n","import { Card } from '../Card'\nimport { Image } from '../Image'\nimport { Rating } from '../Rating'\nimport { Typography } from '../Typography'\n\nimport { getMovieCardClasses } from './MovieCard.utils'\n\nimport type { ImageLoading } from '../Image'\nimport type { ReactNode } from 'react'\n\ninterface MovieCardContentProps {\n id: number\n title: string\n posterUrl: string\n voteAverage: number\n year?: number | null\n className?: string\n imageLoading?: ImageLoading\n isInteractive: boolean\n onClick?: (() => void) | undefined\n}\n\nexport default function MovieCardContent({\n id,\n title,\n posterUrl,\n voteAverage,\n year,\n className,\n imageLoading = 'lazy',\n isInteractive,\n onClick,\n}: Readonly<MovieCardContentProps>): ReactNode {\n return (\n <Card\n variant=\"ghost\"\n className={getMovieCardClasses(isInteractive, className)}\n onClick={onClick}\n data-testid={`movie-card-${String(id)}`}\n >\n <div className=\"ui:relative ui:aspect-[2/3] ui:w-full ui:overflow-hidden ui:rounded-md ui:bg-gray-200\">\n <Image\n src={posterUrl}\n alt={title}\n loading={imageLoading}\n aspectRatio={undefined}\n className=\"ui:h-full ui:w-full ui:object-cover\"\n />\n <div className=\"ui:absolute ui:bottom-2 ui:right-2 ui:flex ui:items-center ui:justify-center ui:rounded-full ui:bg-white/80 ui:p-1\">\n <Rating\n value={voteAverage}\n size=\"sm\"\n variant=\"circle\"\n trackClassName=\"ui:text-gray-200\"\n className=\"ui:drop-shadow\"\n />\n </div>\n </div>\n\n <div className=\"ui:mt-2 ui:flex ui:flex-col ui:gap-0.5 ui:px-1\">\n <Typography\n variant=\"label\"\n as=\"h3\"\n className=\"ui:line-clamp-2\"\n title={title}\n >\n {title}\n </Typography>\n {year && (\n <Typography\n variant=\"caption-xs\"\n className=\"ui:[.media-section:nth-of-type(odd)_&]:text-badge-foreground\"\n >\n {year}\n </Typography>\n )}\n </div>\n </Card>\n )\n}\n","import { Link } from 'react-router-dom'\n\nimport { getMovieCardLinkClasses } from '../../MovieCard/MovieCard.utils'\nimport MovieCardContent from '../../MovieCard/MovieCardContent'\n\nimport type { MovieCardProps } from './MovieCard.types'\n\nfunction MovieCard({\n id,\n title,\n posterUrl,\n voteAverage,\n year,\n className,\n imageLoading = 'lazy',\n as = 'card',\n ...rest\n}: Readonly<MovieCardProps>) {\n const to = 'to' in rest ? rest.to : undefined\n const onClick = 'onClick' in rest ? rest.onClick : undefined\n\n const isInteractive = as === 'link' || as === 'button'\n\n const cardContent = (\n <MovieCardContent\n id={id}\n title={title}\n posterUrl={posterUrl}\n voteAverage={voteAverage}\n year={year}\n className={className}\n imageLoading={imageLoading}\n isInteractive={isInteractive}\n onClick={as === 'button' ? onClick : undefined}\n />\n )\n\n if (as === 'link' && to) {\n return (\n <Link to={to} className={getMovieCardLinkClasses()}>\n {cardContent}\n </Link>\n )\n }\n\n return cardContent\n}\n\nexport default MovieCard\n"]}
|
package/dist/chunk-DGJI4VNO.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","file":"chunk-DGJI4VNO.js"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/Skeleton/Skeleton.tsx"],"names":[],"mappings":";;;AAsBA,SAAS,QAAA,CAAS;AAAA,EAChB,OAAA,GAAU,WAAA;AAAA,EACV,KAAA;AAAA,EACA,MAAA;AAAA,EACA,WAAA;AAAA,EACA,OAAA,GAAU,IAAA;AAAA,EACV,SAAA;AAAA,EACA,GAAG;AACL,CAAA,EAA4B;AAC1B,EAAA,uBACE,GAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,IAAA;AAAA,QACT,4CAAA;AAAA,QACA,qBAAA;AAAA,QACA;AAAA,UACE,eAAA,EAAiB,YAAY,WAAA,IAAe,OAAA;AAAA,UAC5C,mBAAmB,OAAA,KAAY,QAAA;AAAA,UAC/B,YAAA,EAAc,YAAY,MAAA,IAAU;AAAA,SACtC;AAAA,QACA,KAAA;AAAA,QACA,MAAA;AAAA,QACA;AAAA,OACF;AAAA,MACA,KAAA,EAAO,WAAA,GAAc,EAAE,WAAA,EAAY,GAAI,MAAA;AAAA,MACtC,GAAG;AAAA;AAAA,GACN;AAEJ;AAEA,IAAO,gBAAA,GAAQ","file":"chunk-FJZK3PY6.js","sourcesContent":["import clsx from 'clsx'\n\nimport type { ComponentProps } from 'react'\n\nexport interface SkeletonProps extends ComponentProps<'div'> {\n /** Shape variant */\n variant?: 'rectangle' | 'circle' | 'line'\n /** Width (Tailwind class or custom value) */\n width?: string\n /** Height (Tailwind class or custom value) */\n height?: string\n /** Aspect ratio (e.g., \"2/3\", \"16/9\", \"1/1\") */\n aspectRatio?: string\n /** Apply rounded corners (default: true for rectangle/line, always true for circle) */\n rounded?: boolean\n}\n\n/**\n * Skeleton - Atomic loading placeholder component\n *\n * Composable primitive for building loading states with shimmer effect.\n */\nfunction Skeleton({\n variant = 'rectangle',\n width,\n height,\n aspectRatio,\n rounded = true,\n className,\n ...rest\n}: Readonly<SkeletonProps>) {\n return (\n <div\n className={clsx(\n 'ui:relative ui:overflow-hidden ui:bg-muted',\n 'ui-skeleton-shimmer',\n {\n 'ui:rounded-lg': variant === 'rectangle' && rounded,\n 'ui:rounded-full': variant === 'circle',\n 'ui:rounded': variant === 'line' && rounded,\n },\n width,\n height,\n className\n )}\n style={aspectRatio ? { aspectRatio } : undefined}\n {...rest}\n />\n )\n}\n\nexport default Skeleton\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/Button/Button.utils.ts"],"names":[],"mappings":";;AAaO,IAAM,WAAA,GAAc;AAAA,EACzB,EAAA,EAAI,EAAA;AAAA,EACJ,EAAA,EAAI,EAAA;AAAA,EACJ,EAAA,EAAI;AACN;AAWO,SAAS,gBAAA,CAAiB;AAAA,EAC/B,OAAA,GAAU,SAAA;AAAA,EACV,IAAA,GAAO,IAAA;AAAA,EACP,YAAA,GAAe,MAAA;AAAA,EACf;AACF,CAAA,EAAsB;AACpB,EAAA,OAAO,IAAA;AAAA,IACL,gIAAA;AAAA,IACA,4CAAA;AAAA,IACA,iFAAA;AAAA,IACA;AAAA,MACE,eAAe,YAAA,KAAiB,MAAA;AAAA,MAChC,uBAAuB,YAAA,KAAiB;AAAA,KAC1C;AAAA,IACA;AAAA,MACE,mEACE,OAAA,KAAY,SAAA;AAAA,MACd,yEACE,OAAA,KAAY,WAAA;AAAA,MACd,+EACE,OAAA,KAAY,aAAA;AAAA,MACd,uFACE,OAAA,KAAY,SAAA;AAAA,MACd,sDAAsD,OAAA,KAAY;AAAA,KACpE;AAAA,IACA;AAAA,MACE,6BAA6B,IAAA,KAAS,IAAA;AAAA,MACtC,gCAAgC,IAAA,KAAS,IAAA;AAAA,MACzC,8BAA8B,IAAA,KAAS;AAAA,KACzC;AAAA,IACA;AAAA,GACF;AACF;AAEO,SAAS,yBAAyB,OAAA,EAAiB;AACxD,EAAA,OAAO,IAAA,CAAK,SAAS,wDAAwD,CAAA;AAC/E","file":"chunk-IUGKH376.js","sourcesContent":["import clsx from 'clsx'\n\nimport type { IconName } from '../Icon'\nimport type { ReactNode } from 'react'\n\nexport type ButtonVariant =\n | 'primary'\n | 'secondary'\n | 'destructive'\n | 'outline'\n | 'ghost'\nexport type ButtonSize = 'sm' | 'md' | 'lg'\n\nexport const iconSizeMap = {\n sm: 16,\n md: 20,\n lg: 24,\n} as const\n\nexport interface ButtonVisualInput {\n variant?: ButtonVariant\n size?: ButtonSize\n icon?: IconName\n iconPosition?: 'left' | 'right'\n className?: string\n children?: ReactNode\n}\n\nexport function getButtonClasses({\n variant = 'primary',\n size = 'md',\n iconPosition = 'left',\n className,\n}: ButtonVisualInput) {\n return clsx(\n 'ui:inline-flex ui:items-center ui:justify-center ui:cursor-pointer ui:gap-2 ui:font-roboto ui:font-medium ui:transition-colors',\n 'ui:rounded ui:border ui:border-transparent',\n 'ui:focus:outline-none ui:focus:ring-2 ui:focus:ring-ring ui:focus:ring-offset-2',\n {\n 'ui:flex-row': iconPosition === 'left',\n 'ui:flex-row-reverse': iconPosition === 'right',\n },\n {\n 'ui:bg-primary ui:text-primary-foreground ui:hover:bg-primary/90':\n variant === 'primary',\n 'ui:bg-secondary ui:text-secondary-foreground ui:hover:bg-secondary/80':\n variant === 'secondary',\n 'ui:bg-destructive ui:text-destructive-foreground ui:hover:bg-destructive/90':\n variant === 'destructive',\n 'ui:border-input ui:bg-background ui:hover:bg-accent ui:hover:text-accent-foreground':\n variant === 'outline',\n 'ui:hover:bg-accent ui:hover:text-accent-foreground': variant === 'ghost',\n },\n {\n 'ui:h-8 ui:px-3 ui:text-sm': size === 'sm',\n 'ui:h-10 ui:px-4 ui:text-base': size === 'md',\n 'ui:h-12 ui:px-6 ui:text-lg': size === 'lg',\n },\n className\n )\n}\n\nexport function getButtonDisabledClasses(classes: string) {\n return clsx(classes, 'ui:disabled:pointer-events-none ui:disabled:opacity-50')\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/Card/Card.tsx"],"names":[],"mappings":";;;AAWA,IAAM,aAAA,GAA6C;AAAA,EACjD,OAAA,EACE,sEAAA;AAAA,EACF,OAAA,EAAS,mEAAA;AAAA,EACT,QAAA,EACE,sEAAA;AAAA,EACF,KAAA,EAAO;AACT,CAAA;AAEA,SAAS,IAAA,CAAK;AAAA,EACZ,SAAA;AAAA,EACA,OAAA,GAAU,SAAA;AAAA,EACV,QAAA;AAAA,EACA,GAAG;AACL,CAAA,EAAwB;AACtB,EAAA,uBACE,GAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAW,IAAA,CAAK,aAAA,CAAc,OAAO,CAAA,EAAG,SAAS,CAAA,EAAI,GAAG,IAAA,EAC1D,QAAA,EACH,CAAA;AAEJ;AAEA,IAAO,YAAA,GAAQ","file":"chunk-RZU2FFBW.js","sourcesContent":["import clsx from 'clsx'\n\nimport type { HTMLAttributes } from 'react'\n\nexport type CardVariant = 'default' | 'outline' | 'elevated' | 'ghost'\n\nexport interface CardProps extends HTMLAttributes<HTMLDivElement> {\n /** Visual variant of the card */\n variant?: CardVariant\n}\n\nconst variantStyles: Record<CardVariant, string> = {\n default:\n 'ui:rounded-md ui:p-4 ui:bg-card ui:text-card-foreground ui:shadow-md',\n outline: 'ui:rounded-md ui:p-4 ui:border ui:border-border ui:bg-transparent',\n elevated:\n 'ui:rounded-lg ui:p-6 ui:bg-card ui:text-card-foreground ui:shadow-lg',\n ghost: 'ui:rounded-md',\n}\n\nfunction Card({\n className,\n variant = 'default',\n children,\n ...rest\n}: Readonly<CardProps>) {\n return (\n <div className={clsx(variantStyles[variant], className)} {...rest}>\n {children}\n </div>\n )\n}\n\nexport default Card\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/react-router/Button/Button.tsx"],"names":["_","_v","_s","_i","_ip","_c","_ch"],"mappings":";;;;;AAWA,SAAS,OAAO,KAAA,EAA8B;AAC5C,EAAA,MAAM;AAAA,IACJ,OAAA,GAAU,SAAA;AAAA,IACV,IAAA,GAAO,IAAA;AAAA,IACP,IAAA;AAAA,IACA,YAAA,GAAe,MAAA;AAAA,IACf,SAAA;AAAA,IACA;AAAA,GACF,GAAI,KAAA;AAEJ,EAAA,MAAM,UAAU,gBAAA,CAAiB,EAAE,SAAS,IAAA,EAAM,YAAA,EAAc,WAAW,CAAA;AAE3E,EAAA,MAAM,0BACJ,IAAA,CAAA,QAAA,EAAA,EACG,QAAA,EAAA;AAAA,IAAA,IAAA,wBAAS,YAAA,EAAA,EAAK,IAAA,EAAM,MAAM,IAAA,EAAM,WAAA,CAAY,IAAI,CAAA,EAAG,CAAA;AAAA,IACnD;AAAA,GAAA,EACH,CAAA;AAGF,EAAA,IAAI,KAAA,CAAM,OAAO,MAAA,EAAQ;AACvB,IAAA,MAAM;AAAA,MACJ,EAAA,EAAIA,EAAAA;AAAA,MACJ,OAAA,EAASC,GAAAA;AAAA,MACT,IAAA,EAAMC,GAAAA;AAAA,MACN,IAAA,EAAMC,GAAAA;AAAA,MACN,YAAA,EAAcC,IAAAA;AAAA,MACd,SAAA,EAAWC,GAAAA;AAAA,MACX,QAAA,EAAUC,IAAAA;AAAA,MACV,GAAG;AAAA,KACL,GAAI,KAAA;AAEJ,IAAA,2BACG,IAAA,EAAA,EAAK,SAAA,EAAW,OAAA,EAAU,GAAG,WAC3B,QAAA,EAAA,OAAA,EACH,CAAA;AAAA,EAEJ;AAEA,EAAA,MAAM;AAAA,IACJ,EAAA,EAAI,CAAA;AAAA,IACJ,OAAA,EAAS,EAAA;AAAA,IACT,IAAA,EAAM,EAAA;AAAA,IACN,IAAA,EAAM,EAAA;AAAA,IACN,YAAA,EAAc,GAAA;AAAA,IACd,SAAA,EAAW,EAAA;AAAA,IACX,QAAA,EAAU,GAAA;AAAA,IACV,GAAG;AAAA,GACL,GAAI,KAAA;AAEJ,EAAA,uBACE,GAAA,CAAC,YAAO,SAAA,EAAW,wBAAA,CAAyB,OAAO,CAAA,EAAI,GAAG,aACvD,QAAA,EAAA,OAAA,EACH,CAAA;AAEJ;AAEA,IAAO,cAAA,GAAQ","file":"chunk-ZTQU4GMY.js","sourcesContent":["import { Link } from 'react-router-dom'\n\nimport {\n getButtonClasses,\n getButtonDisabledClasses,\n iconSizeMap,\n} from '../../Button/Button.utils'\nimport { Icon } from '../../Icon'\n\nimport type { ButtonProps } from './Button.types'\n\nfunction Button(props: Readonly<ButtonProps>) {\n const {\n variant = 'primary',\n size = 'md',\n icon,\n iconPosition = 'left',\n className,\n children,\n } = props\n\n const classes = getButtonClasses({ variant, size, iconPosition, className })\n\n const content = (\n <>\n {icon && <Icon name={icon} size={iconSizeMap[size]} />}\n {children}\n </>\n )\n\n if (props.as === 'link') {\n const {\n as: _,\n variant: _v,\n size: _s,\n icon: _i,\n iconPosition: _ip,\n className: _c,\n children: _ch,\n ...linkProps\n } = props\n\n return (\n <Link className={classes} {...linkProps}>\n {content}\n </Link>\n )\n }\n\n const {\n as: _,\n variant: _v,\n size: _s,\n icon: _i,\n iconPosition: _ip,\n className: _c,\n children: _ch,\n ...buttonProps\n } = props\n\n return (\n <button className={getButtonDisabledClasses(classes)} {...buttonProps}>\n {content}\n </button>\n )\n}\n\nexport default Button\n"]}
|