@vlsergey/react-bootstrap-pagetable
Version:
Complex solution to work with pageable data, including sorting, filtering, actions, changing displayed columns, etc.
19 lines (18 loc) • 1.29 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
var tslib_1 = require("tslib");
/** @jsx jsx */
var react_1 = require("@emotion/react");
var react_2 = tslib_1.__importDefault(require("react"));
var react_router_dom_1 = require("react-router-dom");
var FAKE_HOST = 'somenonexistentfakehost.temp';
var FAKE_URL_BASE = "https://" + FAKE_HOST + "/";
function ReactRouterItemFieldCellLinkWrapper(_a) {
var children = _a.children, hyperlink = _a.hyperlink;
var url = new URL(hyperlink, FAKE_URL_BASE);
if (url.host !== FAKE_HOST) {
return react_1.jsx("a", { css: react_1.css("\n& {\ndisplay: block;\nheight: 100%;\n}\n.table & {\nmargin: -0.75rem;\npadding: 0.75rem;\nheight: calc(100% + 2 * 0.75rem);\n}\n.table-sm & {\nmargin: -0.3rem;\npadding: 0.3rem;\nheight: calc(100% + 2 * 0.3rem);\n}\n "), href: hyperlink }, children);
}
return react_1.jsx(react_router_dom_1.Link, { css: react_1.css("\n& {\ndisplay: block;\nheight: 100%;\n}\n.table & {\nmargin: -0.75rem;\npadding: 0.75rem;\nheight: calc(100% + 2 * 0.75rem);\n}\n.table-sm & {\nmargin: -0.3rem;\npadding: 0.3rem;\nheight: calc(100% + 2 * 0.3rem);\n}\n"), to: hyperlink }, children);
}
exports.default = react_2.default.memo(ReactRouterItemFieldCellLinkWrapper);