ivt
Version:
Ivt Components Library
1 lines • 9.68 kB
Source Map (JSON)
{"version":3,"file":"index.mjs","sources":["../../node_modules/@radix-ui/react-use-is-hydrated/dist/index.mjs","../../node_modules/@radix-ui/react-avatar/dist/index.mjs","../../src/components/ui/avatar/avatar.tsx"],"sourcesContent":["// src/use-is-hydrated.tsx\nimport { useSyncExternalStore } from \"use-sync-external-store/shim\";\nfunction useIsHydrated() {\n return useSyncExternalStore(\n subscribe,\n () => true,\n () => false\n );\n}\nfunction subscribe() {\n return () => {\n };\n}\nexport {\n useIsHydrated\n};\n//# sourceMappingURL=index.mjs.map\n","\"use client\";\n\n// src/avatar.tsx\nimport * as React from \"react\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { useCallbackRef } from \"@radix-ui/react-use-callback-ref\";\nimport { useLayoutEffect } from \"@radix-ui/react-use-layout-effect\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { useIsHydrated } from \"@radix-ui/react-use-is-hydrated\";\nimport { jsx } from \"react/jsx-runtime\";\nvar AVATAR_NAME = \"Avatar\";\nvar [createAvatarContext, createAvatarScope] = createContextScope(AVATAR_NAME);\nvar [AvatarProvider, useAvatarContext] = createAvatarContext(AVATAR_NAME);\nvar Avatar = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeAvatar, ...avatarProps } = props;\n const [imageLoadingStatus, setImageLoadingStatus] = React.useState(\"idle\");\n return /* @__PURE__ */ jsx(\n AvatarProvider,\n {\n scope: __scopeAvatar,\n imageLoadingStatus,\n onImageLoadingStatusChange: setImageLoadingStatus,\n children: /* @__PURE__ */ jsx(Primitive.span, { ...avatarProps, ref: forwardedRef })\n }\n );\n }\n);\nAvatar.displayName = AVATAR_NAME;\nvar IMAGE_NAME = \"AvatarImage\";\nvar AvatarImage = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeAvatar, src, onLoadingStatusChange = () => {\n }, ...imageProps } = props;\n const context = useAvatarContext(IMAGE_NAME, __scopeAvatar);\n const imageLoadingStatus = useImageLoadingStatus(src, imageProps);\n const handleLoadingStatusChange = useCallbackRef((status) => {\n onLoadingStatusChange(status);\n context.onImageLoadingStatusChange(status);\n });\n useLayoutEffect(() => {\n if (imageLoadingStatus !== \"idle\") {\n handleLoadingStatusChange(imageLoadingStatus);\n }\n }, [imageLoadingStatus, handleLoadingStatusChange]);\n return imageLoadingStatus === \"loaded\" ? /* @__PURE__ */ jsx(Primitive.img, { ...imageProps, ref: forwardedRef, src }) : null;\n }\n);\nAvatarImage.displayName = IMAGE_NAME;\nvar FALLBACK_NAME = \"AvatarFallback\";\nvar AvatarFallback = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeAvatar, delayMs, ...fallbackProps } = props;\n const context = useAvatarContext(FALLBACK_NAME, __scopeAvatar);\n const [canRender, setCanRender] = React.useState(delayMs === void 0);\n React.useEffect(() => {\n if (delayMs !== void 0) {\n const timerId = window.setTimeout(() => setCanRender(true), delayMs);\n return () => window.clearTimeout(timerId);\n }\n }, [delayMs]);\n return canRender && context.imageLoadingStatus !== \"loaded\" ? /* @__PURE__ */ jsx(Primitive.span, { ...fallbackProps, ref: forwardedRef }) : null;\n }\n);\nAvatarFallback.displayName = FALLBACK_NAME;\nfunction resolveLoadingStatus(image, src) {\n if (!image) {\n return \"idle\";\n }\n if (!src) {\n return \"error\";\n }\n if (image.src !== src) {\n image.src = src;\n }\n return image.complete && image.naturalWidth > 0 ? \"loaded\" : \"loading\";\n}\nfunction useImageLoadingStatus(src, { referrerPolicy, crossOrigin }) {\n const isHydrated = useIsHydrated();\n const imageRef = React.useRef(null);\n const image = (() => {\n if (!isHydrated) return null;\n if (!imageRef.current) {\n imageRef.current = new window.Image();\n }\n return imageRef.current;\n })();\n const [loadingStatus, setLoadingStatus] = React.useState(\n () => resolveLoadingStatus(image, src)\n );\n useLayoutEffect(() => {\n setLoadingStatus(resolveLoadingStatus(image, src));\n }, [image, src]);\n useLayoutEffect(() => {\n const updateStatus = (status) => () => {\n setLoadingStatus(status);\n };\n if (!image) return;\n const handleLoad = updateStatus(\"loaded\");\n const handleError = updateStatus(\"error\");\n image.addEventListener(\"load\", handleLoad);\n image.addEventListener(\"error\", handleError);\n if (referrerPolicy) {\n image.referrerPolicy = referrerPolicy;\n }\n if (typeof crossOrigin === \"string\") {\n image.crossOrigin = crossOrigin;\n }\n return () => {\n image.removeEventListener(\"load\", handleLoad);\n image.removeEventListener(\"error\", handleError);\n };\n }, [image, crossOrigin, referrerPolicy]);\n return loadingStatus;\n}\nvar Root = Avatar;\nvar Image = AvatarImage;\nvar Fallback = AvatarFallback;\nexport {\n Avatar,\n AvatarFallback,\n AvatarImage,\n Fallback,\n Image,\n Root,\n createAvatarScope\n};\n//# sourceMappingURL=index.mjs.map\n","import * as AvatarPrimitive from \"@radix-ui/react-avatar\";\nimport * as React from \"react\";\n\nimport { cn } from \"@/lib/utils\";\n\nfunction Avatar({ className, ...props }: React.ComponentProps<typeof AvatarPrimitive.Root>) {\n\treturn (\n\t\t<AvatarPrimitive.Root\n\t\t\tdata-slot=\"avatar\"\n\t\t\tclassName={cn(\"relative flex h-10 w-10 shrink-0 overflow-hidden rounded-full\", className)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nfunction AvatarImage({ className, ...props }: React.ComponentProps<typeof AvatarPrimitive.Image>) {\n\treturn (\n\t\t<AvatarPrimitive.Image\n\t\t\tdata-slot=\"avatar-image\"\n\t\t\tclassName={cn(\"aspect-square h-full w-full\", className)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nfunction AvatarFallback({\n\tclassName,\n\t...props\n}: React.ComponentProps<typeof AvatarPrimitive.Fallback>) {\n\treturn (\n\t\t<AvatarPrimitive.Fallback\n\t\t\tdata-slot=\"avatar-fallback\"\n\t\t\tclassName={cn(\n\t\t\t\t\"bg-muted flex h-full w-full items-center justify-center rounded-full\",\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nexport { Avatar, AvatarImage, AvatarFallback };\n"],"names":["subscribe","AVATAR_NAME","createAvatarContext","createAvatarScope","createContextScope","AvatarProvider","useAvatarContext","Avatar","React","forwardRef","props","forwardedRef","__scopeAvatar","avatarProps","imageLoadingStatus","setImageLoadingStatus","useState","jsx","scope","onImageLoadingStatusChange","children","Primitive","span","ref","displayName","IMAGE_NAME","AvatarImage","src","onLoadingStatusChange","imageProps","context","referrerPolicy","crossOrigin","isHydrated","useSyncExternalStore","imageRef","useRef","image","current","window","Image","loadingStatus","setLoadingStatus","resolveLoadingStatus","useLayoutEffect","updateStatus","status","handleLoad","handleError","addEventListener","removeEventListener","useImageLoadingStatus","handleLoadingStatusChange","useCallbackRef","img","FALLBACK_NAME","AvatarFallback","delayMs","fallbackProps","canRender","setCanRender","useEffect","timerId","setTimeout","clearTimeout","complete","naturalWidth","Root","Fallback","className","createElement","AvatarPrimitive","data-slot","cn"],"mappings":"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","x_google_ignoreList":[0,1]}