UNPKG

matcha-keystone-utils

Version:

Useful features for Keystone 6: validators, fields, componentBlocks...

36 lines (35 loc) 1.44 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.Field = exports.Cell = void 0; // @ts-nocheck const react_1 = __importDefault(require("react")); const components_1 = require("@keystone-6/core/admin-ui/components"); const messageByType = { itemDeletedNow: "❌ Item deleted", itemDeletedLater: "❌🕘 Item deleted (after)", itemExists: "➡️ Go to item", entityDeleted: "❌📒 Entity deleted/renamed", }; const getUIData = ({ type, plural, entityId }) => { const message = messageByType[type]; const uri = type === "itemExists" ? `/${plural.toLowerCase()}/${entityId}` : type !== "entityDeleted" && `/${plural.toLowerCase()}`; return { message, uri }; }; const Cell = ({ item, field }) => { const value = item[field.path]; const { message, uri } = getUIData(value); return uri ? (react_1.default.createElement(components_1.CellLink, { href: uri }, message)) : (react_1.default.createElement(components_1.CellContainer, null, message)); }; exports.Cell = Cell; const Field = ({ // field, value, }) => { const { message, uri } = getUIData(value); return uri ? react_1.default.createElement("a", { href: uri }, message) : react_1.default.createElement("div", null, message); }; exports.Field = Field;