UNPKG

@dnb/eufemia

Version:

DNB Eufemia Design System UI Library

76 lines (75 loc) 1.93 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = exports.UploadFileLink = void 0; var _react = _interopRequireDefault(require("react")); var _Anchor = _interopRequireDefault(require("../../components/Anchor.js")); var _Button = _interopRequireDefault(require("../button/Button.js")); var _Span = _interopRequireDefault(require("../../elements/Span.js")); var _SpacingUtils = require("../space/SpacingUtils.js"); var _jsxRuntime = require("react/jsx-runtime"); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } const UploadFileLink = props => { const { onClick, text, href, download, ...rest } = props; if (!onClick && !href) { return (0, _jsxRuntime.jsx)(_Span.default, { className: "dnb-p", ...rest, children: text }); } if (onClick) { return (0, _jsxRuntime.jsx)(UploadFileButton, { text: text, onClick: onClick, ...rest }); } return (0, _jsxRuntime.jsx)(UploadFileAnchor, { text: text, href: href, download: download, ...rest }); }; exports.UploadFileLink = UploadFileLink; var _default = exports.default = UploadFileLink; const UploadFileButton = props => { const { text, onClick } = props; return (0, _jsxRuntime.jsx)(_Button.default, { size: "small", icon: false, variant: "tertiary", onClick: onClick, ...(0, _SpacingUtils.applySpacing)(props, {}), children: text }); }; const UploadFileAnchor = props => { const { text, href, download } = props; return (0, _jsxRuntime.jsx)(_Anchor.default, { target: "_blank", href: href, download: download ? text : null, ...(0, _SpacingUtils.applySpacing)(props, { className: 'dnb-anchor--no-launch-icon' }), rel: "noopener noreferrer", children: text }); }; //# sourceMappingURL=UploadFileListLink.js.map