UNPKG

@seidhr/sanity-plugin-muna-schemas

Version:

Muna or ᛗᚢᚾᚨ means remember in norse. Muna is a schema for the Sanity Studio that enables detailed descriptions of cultural heritage objects and knowledge about their contexts as well as pages about them (or anything else really.)

143 lines (130 loc) 5.04 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _helpers = require("../../../helpers"); var _datatype = require("../../properties/datatype"); var _object = require("../../properties/object"); function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } var _default = { name: 'ObjectBlockItem', title: 'Object block item', type: 'object', options: { semanticSanity: { exclude: true } }, initialValue: { view: 'single' }, fields: [{ name: 'disabled', title: 'Avslått?', titleEN: 'Disabled', type: 'boolean' }, { name: 'view', title: 'Visningsvalg', titleEN: 'View choice', description: 'Velg enkeltside-visning eller oppslagsvisning (oppslag bare mulig med Mirador).', type: 'string', options: { list: [{ title: 'Book', value: 'book' }, { title: 'Single', value: 'single' }] } }, _objectSpread(_objectSpread({}, _datatype.labelSingleton), {}, { validation: null }), { name: 'description', title: 'Beskrivelse', titleEN: 'Description', type: 'simpleBlockContent' }, { name: 'internalRef', title: 'Object in the studio', titleEN: 'Manifest', type: 'reference', to: [{ type: 'HumanMadeObject' }], /* fieldset: 'internal', */ hidden: _ref => { var value = _ref.value, parent = _ref.parent; return !value && (parent === null || parent === void 0 ? void 0 : parent.image) || (parent === null || parent === void 0 ? void 0 : parent.manifestUrl); } }, _objectSpread(_objectSpread({}, _object.image), {}, { /* fieldset: 'illustration', */ hidden: _ref2 => { var value = _ref2.value, parent = _ref2.parent; return !value && (parent === null || parent === void 0 ? void 0 : parent.manifestUrl); } }), { name: 'manifestUrl', title: 'Manifest adresse', titleEN: 'Manifest URL', type: 'url', /* fieldset: 'external', */ hidden: _ref3 => { var value = _ref3.value, parent = _ref3.parent; return !value && (parent === null || parent === void 0 ? void 0 : parent.image) || (parent === null || parent === void 0 ? void 0 : parent.internalRef); } }, { name: 'canvasUrl', title: 'Canvas URL', titleEN: 'Canvas URL', type: 'url', hidden: _ref4 => { var parent = _ref4.parent, value = _ref4.value; return !value && (parent === null || parent === void 0 ? void 0 : parent.internalRef) || (parent === null || parent === void 0 ? void 0 : parent.image); } }, { name: 'source', title: 'Kilde', description: 'Legg til kilde eller kreditering', titleEN: 'Source', type: 'simpleBlockContent' }], preview: { select: { title: 'label', internalManifest: 'internalRef.label', manifestUrl: 'manifestUrl', object: 'internalRef.image', illustration: 'image.asset', source: 'source' }, prepare(_ref5) { var _ref6; var title = _ref5.title, internalManifest = _ref5.internalManifest, manifestUrl = _ref5.manifestUrl, object = _ref5.object, illustration = _ref5.illustration, source = _ref5.source; var objectLabel = (0, _helpers.coalesceLabel)(internalManifest); var hasIllustration = illustration ? null : 'Illustration'; var sourceBlock = (source || []).find(block => block._type === 'block'); var getSubtitle = objectLabel || manifestUrl || (sourceBlock ? sourceBlock.children.filter(child => child._type === 'span').map(span => span.text).join('') : null); return { title: (_ref6 = title || objectLabel || hasIllustration) !== null && _ref6 !== void 0 ? _ref6 : 'No label', subtitle: getSubtitle, media: object !== null && object !== void 0 ? object : illustration }; } } }; exports.default = _default; //# sourceMappingURL=ObjectBlockItem.js.map