UNPKG

clickable-json

Version:

Interactive JSON and JSON CRDT viewer and editor

36 lines 1.37 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.Tombstones = void 0; const React = require("react"); const nano_theme_1 = require("nano-theme"); const use_t_1 = require("use-t"); const MiniTitle_1 = require("nice-ui/lib/3-list-item/MiniTitle"); const blockClass = (0, nano_theme_1.rule)({ d: 'block', bxz: 'border-box', pd: '0 4px 4px 16px', bdrad: '8px', mr: '4px 0 0 -16px', w: 'calc(100% + 16px)', bg: nano_theme_1.theme.red(0.05), }); const titleClass = (0, nano_theme_1.rule)({ d: 'block', w: '100%', bxz: 'border-box', pd: '4px 8px 3px 3px', cur: 'default', us: 'none', }); const Tombstones = ({ tombstones }) => { const [showTombstones, setShowTombstones] = React.useState(false); const [t] = (0, use_t_1.useT)(); if (!tombstones.length) return null; return (React.createElement("span", { className: blockClass }, React.createElement("style", { className: titleClass, onClick: () => setShowTombstones((x) => !x) }, React.createElement(MiniTitle_1.MiniTitle, { style: { fontSize: '0.65em', color: nano_theme_1.theme.red(0.75) } }, tombstones.length + ' ' + (tombstones.length === 1 ? t('tombstone') : t('tombstones')))), showTombstones && tombstones)); }; exports.Tombstones = Tombstones; //# sourceMappingURL=Tombstones.js.map