From 0aee524d3d8c610adb13e1c9fd1b25f0131a875d Mon Sep 17 00:00:00 2001 From: Marc Heimgartner Date: Thu, 19 Dec 2024 15:54:03 +0100 Subject: [PATCH] doc: add system metadata plugins release info --- .../operations/releases/release-2025-01.md | 10 ++++ .../metadata/plugins/li-kordiam-schedule.md | 2 +- .../metadata/plugins/li-system-boolean.md | 43 ++++++++++++++ .../metadata/plugins/li-system-date.md | 39 +++++++++++++ .../metadata/plugins/li-system-datetime.md | 38 +++++++++++++ .../metadata/plugins/li-system-enum.md | 55 ++++++++++++++++++ .../metadata/plugins/li-system-integer.md | 56 +++++++++++++++++++ .../plugins/li-system-target-length.md | 52 +++++++++++++++++ 8 files changed, 294 insertions(+), 1 deletion(-) create mode 100644 content/reference/document/metadata/plugins/li-system-boolean.md create mode 100644 content/reference/document/metadata/plugins/li-system-date.md create mode 100644 content/reference/document/metadata/plugins/li-system-datetime.md create mode 100644 content/reference/document/metadata/plugins/li-system-enum.md create mode 100644 content/reference/document/metadata/plugins/li-system-integer.md create mode 100644 content/reference/document/metadata/plugins/li-system-target-length.md diff --git a/content/operations/releases/release-2025-01.md b/content/operations/releases/release-2025-01.md index 842d7ecb1..7eefab033 100644 --- a/content/operations/releases/release-2025-01.md +++ b/content/operations/releases/release-2025-01.md @@ -479,7 +479,17 @@ For instructions on how to set it up, refer to the [li-user-needs documentation] {{< feature-info "Metadata" "server" >}} ### System metadata plugins :gift: +System Metadata Plugins are designed for internal use to support workflows, planning, and internal communication. They manage metadata that does not impact the document’s version history, meaning changes made through these plugins will not trigger an “unpublished change”. These plugins are strictly for internal purposes and are not relevant for content delivery. +Therefore we are adding the following equivalents of metadata plugins to system metadata plugins: + - li-system-boolean + - li-system-date + - li-system-datetime + - li-system-integer + - li-system-enum + - li-system-target-length + + Additionally the `li-kordiam-schedule` metadata plugin was changed to be a system metadata plugin. This plugin facilitates internal communication between Kordiam and Livingdocs. It allows users to customize their experience by selecting the platforms and categories that they want to view in the Kordiam schedule side panel. This should not have an impact on the document's version history. ## Vulnerability Patches diff --git a/content/reference/document/metadata/plugins/li-kordiam-schedule.md b/content/reference/document/metadata/plugins/li-kordiam-schedule.md index 2f3bad523..7a5b826c3 100644 --- a/content/reference/document/metadata/plugins/li-kordiam-schedule.md +++ b/content/reference/document/metadata/plugins/li-kordiam-schedule.md @@ -14,7 +14,7 @@ support: tableDashboard: false displayFilter: false searchIndexing: false - systemMetadata: false + systemMetadata: true planningSystem: false description: | {{< info >}} diff --git a/content/reference/document/metadata/plugins/li-system-boolean.md b/content/reference/document/metadata/plugins/li-system-boolean.md new file mode 100644 index 000000000..26543ed36 --- /dev/null +++ b/content/reference/document/metadata/plugins/li-system-boolean.md @@ -0,0 +1,43 @@ +--- +title: li-system-boolean +type: metadata-plugins +menus: + reference: + parent: Metadata Plugins List +summary: A simple Boolean value store as system metadata, represented in the UI with a checkbox which you can toggle on/off. +support: + document: true + media: false + include: false + creationFlow: false + pushMessage: false + tableDashboard: true + displayFilter: false + searchIndexing: true + systemMetadata: true + planningSystem: false + webhookConditions: true +description: | + A simple Boolean value store, almost identical to `li-boolean`, but as system metadata (does not increase document version). + {{< added-in "release-2025-01" >}}. + + Represented in the UI with a checkbox which you can toggle on/off. + + If you want to have the value set to `true` during document creation, you can do that via [defaultMetadata]({{< ref "/reference/project-config/content-types#default-metadata" >}}) in your project config. +defaultUI: Checkbox +storageFormat: +contentTypeConfig: |2 + handle: 'myHandle' + type: 'li-system-boolean', + config: { + // common + hideFromForm: false, // optional, default: false + index: true // optional, default: false + } + ui: { + label: 'foo', // optional, default: start case of handle + config: { + readOnly: true // optional, default: false + } + } +--- diff --git a/content/reference/document/metadata/plugins/li-system-date.md b/content/reference/document/metadata/plugins/li-system-date.md new file mode 100644 index 000000000..527bca566 --- /dev/null +++ b/content/reference/document/metadata/plugins/li-system-date.md @@ -0,0 +1,39 @@ +--- +title: li-system-date +type: metadata-plugins +menus: + reference: + parent: Metadata Plugins List +summary: +support: + document: true + media: false + include: false + creationFlow: false + pushMessage: false + tableDashboard: false + displayFilter: false + searchIndexing: true + systemMetadata: true + planningSystem: false + webhookConditions: true +defaultUI: Date input field as system metadata +storageFormat: +contentTypeConfig: |2 + handle: 'myHandle', + type: 'li-system-date', + config: { + // common + hideFromForm: false, // optional, default: false + required: true, // optional, default: false + requiredErrorMessage: 'Provide a value', // optional + translatable: false, // optional, default: false + index: true // optional, default: false + }, + ui: { + label: 'foo', // optional, takes camelized name otherwise + config: { + readOnly: true // optional, default: false + } + } +--- diff --git a/content/reference/document/metadata/plugins/li-system-datetime.md b/content/reference/document/metadata/plugins/li-system-datetime.md new file mode 100644 index 000000000..cfb2f3bf2 --- /dev/null +++ b/content/reference/document/metadata/plugins/li-system-datetime.md @@ -0,0 +1,38 @@ +--- +title: li-system-datetime +type: metadata-plugins +menus: + reference: + parent: Metadata Plugins List +summary: +support: + document: true + media: true + include: true + creationFlow: true + pushMessage: true + tableDashboard: false + displayFilter: false + searchIndexing: true + systemMetadata: true + planningSystem: false + webhookConditions: true +defaultUI: A datetime input as system metadata +storageFormat: +contentTypeConfig: |2 + handle: 'myHandle' + type: 'li-system-datetime', + config: { + // common + hideFromForm: false, // optional, default: false + required: true, // optional, default: false + requiredErrorMessage: 'Provide a value', // optional + index: true // optional, default: false + }, + ui: { + label: 'foo', // optional, takes camelized name otherwise + config: { + readOnly: true // optional, default: false + } + } +--- diff --git a/content/reference/document/metadata/plugins/li-system-enum.md b/content/reference/document/metadata/plugins/li-system-enum.md new file mode 100644 index 000000000..567063b34 --- /dev/null +++ b/content/reference/document/metadata/plugins/li-system-enum.md @@ -0,0 +1,55 @@ +--- +title: li-system-enum +type: metadata-plugins +menus: + reference: + parent: Metadata Plugins List +summary: A select form based on a statically defined list. +support: + document: true + media: false + include: false + creationFlow: false + pushMessage: false + tableDashboard: false + displayFilter: true + searchIndexing: true + systemMetadata: true + planningSystem: false + webhookConditions: true +description: | + A `li-system-enum` metadata field shows a select form based on a statically defined list. On publish the selected value gets validated against the defined static list. With that you can assure that only specific values gets published. + + [Display Filters]({{< ref "/customising/advanced/editor-configuration/display-filter#metadata-filters" >}}) support {{< added-in "release-2023-09" >}} +defaultUI: | + Select input + + ![image](https://user-images.githubusercontent.com/172394/157249103-fd951f85-edf8-48ff-acc5-1b1a04831589.png) +storageFormat: +contentTypeConfig: |2 + handle: 'myHandle' + type: 'li-system-enum', + config: { + // common + hideFromForm: false, // optional, default: false + required: true, // optional, default: false + requiredErrorMessage: 'Provide a value', // optional + index: true, // optional, default: false + // specific + dataProvider: { // required + type: 'labelValuePair', // required + items: [ + {label: 'Tag A', value: 'a'}, + {label: 'Tag B', value: 'b', isDefault: true}, // isDefault sets the value if document opened the first time + {label: 'Tag C', value: 'c'} + ] + } + }, + ui: { + label: 'foo', // optional, takes camelized name otherwise + config: { + readOnly: true, // optional, default: false + placeholder: 'foo' // optional, takes camelized name otherwise + } + } +--- diff --git a/content/reference/document/metadata/plugins/li-system-integer.md b/content/reference/document/metadata/plugins/li-system-integer.md new file mode 100644 index 000000000..9a8c71846 --- /dev/null +++ b/content/reference/document/metadata/plugins/li-system-integer.md @@ -0,0 +1,56 @@ +--- +title: li-system-integer +type: metadata-plugins +menus: + reference: + parent: Metadata Plugins List +support: + document: true + media: true + include: true + creationFlow: true + pushMessage: true + tableDashboard: true + displayFilter: true + searchIndexing: true + systemMetadata: true + planningSystem: false + webhookConditions: true +defaultUI: | + * Renders a number input. + * No UI is rendered if the `handle` is `lastProofreadRevision`. + * {{< added-in "release-2023-03" >}}: Renders a select element if a `dataProvider` is configured +storageFormat: +contentTypeConfig: |2 + handle: 'myHandle' + type: 'li-system-integer', + config: { + // common + hideFromForm: false, // optional, default: false + required: true, // optional, default: false + requiredErrorMessage: 'Provide a value', // optional + index: true, // optional, default: false + // specific + minValue: 1, // optional + maxValue: 50, // optional + translatable: true, // optional, default: false, translations are only supported for data-record and mediaLibrary + dataProvider: { // optional. {{< added-in "release-2023-03" >}} + // Option 1 - list of items + type: 'labelValuePair', + items: [ + {label: 'A', value: 1}, + {label: 'B', value: 2, isDefault: true}, // isDefault sets the value if document opened the first time + {label: 'C', value: 3} + ] + // Option 2 - DataSource + dataSource: 'labelValuePairDataSource' + } + }, + ui: { + label: 'foo', // optional, takes camelized name otherwise + config: { + placeholder: 'bar', // optional, takes camelized name otherwise + readOnly: true // optional, default: false + } + } +--- diff --git a/content/reference/document/metadata/plugins/li-system-target-length.md b/content/reference/document/metadata/plugins/li-system-target-length.md new file mode 100644 index 000000000..3a88766e5 --- /dev/null +++ b/content/reference/document/metadata/plugins/li-system-target-length.md @@ -0,0 +1,52 @@ +--- +title: li-system-target-length +type: metadata-plugins +menus: + reference: + parent: Metadata Plugins List +summary: Provide a suggested total character count for the text in the document. +support: + document: true + media: false + include: false + creationFlow: false + pushMessage: false + tableDashboard: false + displayFilter: false + searchIndexing: false + systemMetadata: true + planningSystem: false +description: | + This plugin is used to provide a suggested total character count for the text in the document. +defaultUI: | + **Input**: Number input, or slider if `steps` are defined. + + **Editor**: Difference, Total Characters, Target Range, Characters in Focussed Component + + {{< img src="../images/li-target-length.png" alt="Target Length Indicator" >}} +storageFormat: | + { + characters: + } +contentTypeConfig: |2 + handle: 'myHandle' + type: 'li-system-target-length', + ui: { + config: { + acceptedCharacterDifference: 20, // Range above and below `value` considered accepted + // optional, allows picking a step instead of entering an exact number + steps: [ + { + label: 'S', // use a short one, e.g. "S" "M" "L" + value: 100 // number of characters + }, + { + label: 'M', + value: 200 + } + ], + // optional, allows the input of an exact number besides picking a step + allowAnyNumber: true + } + } +---