@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.)
146 lines (132 loc) • 4.51 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _router = require("part:@sanity/base/router");
var _react = _interopRequireDefault(require("react"));
var _fa = require("react-icons/fa");
var _helpers = require("../../../helpers");
var _datatype = require("../../properties/datatype");
var _object = require("../../properties/object");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
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: 'Event',
type: 'document',
title: 'Event',
initialValue: {
editorialState: 'review',
accessState: 'secret'
},
icon: _fa.FaCalendar,
fieldsets: [{
name: 'state',
title: 'Status',
options: {
collapsible: true,
collapsed: false
}
}, {
name: 'core',
title: 'Basic metadata',
options: {
collapsible: true,
collapsed: false
}
}, {
name: 'timelineMedium',
title: 'Hovedbilde (brukt i tidslinke)',
options: {
collapsible: true,
collapsed: true
}
}, {
name: 'relations',
title: 'Relations to other stuff',
options: {
collapsible: true,
collapsed: false
}
}],
fields: [_datatype.editorialState, _datatype.accessState, _datatype.labelSingleton, _objectSpread(_objectSpread({}, _object.referredToBy), {}, {
fieldset: 'core'
}), _objectSpread(_objectSpread({}, _object.timespan), {}, {
fieldset: 'core'
}), _objectSpread(_objectSpread({}, _object.tookPlaceAt), {}, {
fieldset: 'core'
}), {
name: 'hasType',
title: 'Klassifisert som',
titleEN: 'Classified as',
description: /*#__PURE__*/_react.default.createElement("span", null, "Hendelsestype som f.eks. Soppsanking. Legg til", ' ', /*#__PURE__*/_react.default.createElement(_router.Link, {
target: "blank",
href: '/desk/andreTyper;EventType'
}, "ny hendelsestype"), "."),
type: 'array',
of: [{
type: 'reference',
to: [{
type: 'EventType'
}]
}],
validation: Rule => Rule.required(),
options: {
semanticSanity: {
'@container': '@set',
'@type': '@id'
}
}
}, {
name: 'media',
title: 'Media',
titleEN: 'Media',
type: 'DigitalObjectImage',
fieldset: 'timelineMedium',
options: {
semanticSanity: {
'@type': '@json'
}
}
}, {
name: 'location',
type: 'geopoint',
title: 'Lokasjon',
titleEN: 'Location',
description: 'Where the hell did this happen?!',
options: {
semanticSanity: {
'@type': '@json'
}
}
}],
preview: {
select: {
title: 'label',
bb: 'timespan.0.beginOfTheBegin',
eb: 'timespan.0.endOfTheBegin',
date: 'timespan.0.date',
be: 'timespan.0.beginOfTheEnd',
ee: 'timespan.0.endOfTheEnd',
type: 'hasType.0.label'
},
prepare(selection) {
var title = selection.title,
type = selection.type,
bb = selection.bb,
eb = selection.eb,
date = selection.date,
be = selection.be,
ee = selection.ee;
var timespanString = (0, _helpers.timespanAsString)(bb, eb, date, be, ee, 'nb');
return {
title: title,
subtitle: "".concat((0, _helpers.coalesceLabel)(type), " ").concat(timespanString)
};
}
}
};
exports.default = _default;
//# sourceMappingURL=Event.js.map