All Downloads are FREE. Search and download functionalities are using the official Maven repository.

package.dist.components.file-upload.file-upload-item-preview-image.cjs Maven / Gradle / Ivy

Go to download

A collection of unstyled, accessible UI components for React, utilizing state machines for seamless interaction.

The newest version!
'use client';
'use strict';

Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });

const jsxRuntime = require('react/jsx-runtime');
const react$1 = require('@zag-js/react');
const react = require('react');
const factory = require('../factory.cjs');
const useFileUploadContext = require('./use-file-upload-context.cjs');
const useFileUploadItemPropsContext = require('./use-file-upload-item-props-context.cjs');

const FileUploadItemPreviewImage = react.forwardRef((props, ref) => {
  const [url, setUrl] = react.useState("");
  const fileUpload = useFileUploadContext.useFileUploadContext();
  const itemProps = useFileUploadItemPropsContext.useFileUploadItemPropsContext();
  const mergedProps = react$1.mergeProps(fileUpload.getItemPreviewImageProps({ ...itemProps, url }), props);
  react.useEffect(() => {
    return fileUpload.createFileUrl(itemProps.file, (url2) => setUrl(url2));
  }, [itemProps, fileUpload]);
  return /* @__PURE__ */ jsxRuntime.jsx(factory.ark.img, { ...mergedProps, ref });
});
FileUploadItemPreviewImage.displayName = "FileUploadItemPreviewImage";

exports.FileUploadItemPreviewImage = FileUploadItemPreviewImage;




© 2015 - 2025 Weber Informatics LLC | Privacy Policy