@navikt/ds-react
Version:
React components from the Norwegian Labour and Welfare Administration.
40 lines • 1.84 kB
JavaScript
import React from "react";
import { useThemeInternal } from "../../../../theme/Theme.js";
import { LinkAnchor } from "../../../../utils/components/link-anchor/index.js";
import ItemIcon from "./ItemIcon.js";
import { downloadFile } from "./utils/download-file.js";
import { isNativeFile } from "./utils/file-type-checker.js";
const ItemHeader = ({ file, href, onClick }) => {
const ctx = useThemeInternal();
if (onClick && href) {
return (React.createElement(LinkAnchor, { href: href, onClick: onClick, className: "aksel-file-item__link", "data-color": ctx.color },
React.createElement(ItemIcon, { file: file }),
file.name));
}
if (onClick) {
return (React.createElement(LinkAnchor, { href: "#", onClick: (event) => {
event.preventDefault();
onClick(event);
}, className: "aksel-file-item__link", "data-color": ctx.color },
React.createElement(ItemIcon, { file: file }),
file.name));
}
if (href) {
return (React.createElement(LinkAnchor, { href: href, className: "aksel-file-item__link", "data-color": ctx.color },
React.createElement(ItemIcon, { file: file }),
file.name));
}
if (isNativeFile(file)) {
return (React.createElement(LinkAnchor, { href: "#", download: file.name, onClick: (event) => {
event.preventDefault();
downloadFile(file);
}, className: "aksel-file-item__link", "data-color": ctx.color },
React.createElement(ItemIcon, { file: file }),
file.name));
}
return (React.createElement("span", { className: "aksel-file-item__link" },
React.createElement(ItemIcon, { file: file }),
file.name));
};
export { ItemHeader };
//# sourceMappingURL=ItemHeader.js.map