UNPKG

@teikei/schemas

Version:

Teikei validation schemas. Teikei is the software that powers ernte-teilen.org, a website that maps out Community-supported Agriculture in Germany.

45 lines (37 loc) 1.81 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports.entryInitialValues = exports.entryDetails = exports.entry = undefined; var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; var _joiBrowser = require('joi-browser'); var _joiBrowser2 = _interopRequireDefault(_joiBrowser); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } const entry = exports.entry = { id: _joiBrowser2.default.number(), // server only legacyId: _joiBrowser2.default.number().allow(null), // server only type: _joiBrowser2.default.string(), // server only link: _joiBrowser2.default.string(), // server only name: _joiBrowser2.default.string().max(255).trim().required(), city: _joiBrowser2.default.string().max(255).trim().required(), latitude: _joiBrowser2.default.number().required(), longitude: _joiBrowser2.default.number().required() }; const entryDetails = exports.entryDetails = _extends({}, entry, { createdAt: _joiBrowser2.default.date().iso(), // server only updatedAt: _joiBrowser2.default.date().iso().allow(null), // server only address: _joiBrowser2.default.string().trim().allow('') // legacy (force address to be included in geocoder?) .allow(null), // legacy description: _joiBrowser2.default.string().allow('').allow(null), // legacy url: _joiBrowser2.default.string().max(255).uri().allow('').allow(null) // legacy .trim() }); const entryInitialValues = exports.entryInitialValues = { name: '', city: '', latitude: null, longitude: null, address: '', description: '', url: '' };