Overview
With a metadata plugin these things can be defined
- plugin name
- storage schema
- config and ui config schema
You can find Livingdocs metadata plugins here: plugins/metadata on the livingdocs-server.
Schema of a Metadata Plugin
module.exports = {
// Plugin name
// Use the name as plugin value in the configuration
// REQUIRED
name: 'customername-pluginname',
// JSON schema of stored value
// https://json-schema.org/learn/getting-started-step-by-step.html
// REQUIRED
storageSchema: {
// define your own Schema here
type: 'string'
},
// JSON schema of metadata configuration
// OPTIONAL
configSchema: {
// define your own Schema here
type: 'object'
},
// JSON schema of metadata ui configuration
// Define your own Schema here
// For simple schemas Livingdocs uses https://github.com/livingdocsIO/microschema
// OPTIONAL
uiSchema: ms.strictObj({
label: 'string',
config: ms.strictObj({
placeholder: 'string',
readOnly: {type: 'boolean', default: false},
}, {default: {}})
}, {default: {}})
}