docs in sub package
This commit is contained in:
44
docs/md/projektkonfig/collections/fields/datentypen.md
Normal file
44
docs/md/projektkonfig/collections/fields/datentypen.md
Normal file
@@ -0,0 +1,44 @@
|
||||
# Datentypen
|
||||
|
||||
Via `type` wird der Datentyp des Feldes definiert. Folgende Datentypen sind möglich:
|
||||
|
||||
## string
|
||||
|
||||
String wird für Zeichenketten verwendet. Das Standardwidget ohne weitere Angabe ist bei der Ausgabe die direkte Textausgabe und bei der Eingabe ein HTML `<input ...>` Element mit dem Attribut `type="text"`.
|
||||
|
||||
## number
|
||||
|
||||
Number wird sowohl für ganze Zahlen, wie auch für Gleitkommawerte definiert. Auch hier ist das Standard-Widget für die Eingabe ein HTML `<input ...>` Element, allerdings mit dem Attribut `type="number"`.
|
||||
|
||||
## boolean
|
||||
|
||||
Ein boolcher Wert, also `true` oder `false`, wird über den Typ `"boolean"` definiert und standardmäßig als Checkbox dargestellt.
|
||||
|
||||
## date
|
||||
|
||||
`"date"` als Datentyp kann sowohl Datumsangabe mit, als auch ohne Uhrzeit aufnehmen. Das Standardwidget ist die einfache Datumseingabe ohne Uhrzeit.
|
||||
|
||||
## file
|
||||
|
||||
Der Datentyp `"file"` ist für Dateiuploads vorgesehen. Es daher standardmäßig ein Datei-Auswahl-Dialog als Widget für die Eingabe angeboten.
|
||||
|
||||
## string[]
|
||||
|
||||
Für `"string[]` Arrays ist die Angabe des Widgets zwingend notwendig.
|
||||
|
||||
## number[]
|
||||
|
||||
Auch für `"number[]"` Arrays wird die Widget-Angabe erwartet.
|
||||
|
||||
## object
|
||||
|
||||
`"object"` ist ein spezieller Datentyp der zur Strukturierung der API und der Eingabe dient. Dieser Datentyp fasst `subFields` zusammen.
|
||||
|
||||
## object[]
|
||||
|
||||
Wie `"object"` fasst auch das `"object[]"` Array `subFields` zusammen. Diese allerdings als Liste von Objekten, anstatt als Einzelobjekt.
|
||||
|
||||
## any
|
||||
|
||||
Felder vom Typ `"any"` können beliebige Daten aufnehmen. Die Validierung schlägt auf Basis der Typ-Validierung hier nie fehl.
|
||||
|
||||
39
docs/md/projektkonfig/collections/fields/widgets.md
Normal file
39
docs/md/projektkonfig/collections/fields/widgets.md
Normal file
@@ -0,0 +1,39 @@
|
||||
# Widgets
|
||||
|
||||
Das im *tibi-admin* für die Ein- und Ausgabe von Daten zu verwendente Widget wird über die Feldkonfiguration `meta.widget` festgelegt. Die Angabe erfolgt als String mit dem Widget-Namen.
|
||||
|
||||
Nicht jedes Widget kann mit jedem Datentyp umgehen, die möglichen Datentypen werden aber nachfolgend bei jedem Widget erwähnt. Außerdem wird auf individuelle Konfigurationsmöglichkeiten eingegangen.
|
||||
|
||||
## text
|
||||
|
||||
## number
|
||||
|
||||
## checkbox
|
||||
|
||||
## select
|
||||
|
||||
## date
|
||||
|
||||
## datetime
|
||||
|
||||
## richtext
|
||||
|
||||
## file
|
||||
|
||||
## image
|
||||
|
||||
## selectArray
|
||||
|
||||
## checkboxArray
|
||||
|
||||
## chipArray
|
||||
|
||||
## object
|
||||
|
||||
## objectArray
|
||||
|
||||
## tabs
|
||||
|
||||
## contentbuilder
|
||||
|
||||
siehe: [ContentBuilder](./widgets/contentbuilder.md)
|
||||
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,35 @@
|
||||
# contentbuilder
|
||||
|
||||
> Der ContentBuilder ist ein Drittanbieter-Produkt und steht nicht in jeder Lizenz zur Verfügung. Bitte kontaktieren Sie uns, wenn Sie Interesse an diesem Widget haben.
|
||||
|
||||
Für die Gestaltung von HTML-Inhalten ist der ContentBuilder eine einfache und intuitive Lösung. Es sind Layout-Hilfmittel wie Spalten und Zeilen ebenso verfügbar, wie die Möglichkeit Dateien (Bilder, Video, Downloads) direkt in den HTML-Code einzubinden.
|
||||
|
||||
Wie der ContentBuilder an einem Feld konfiguriert wird verdeutlicht folgendes Beispiel:
|
||||
|
||||
!!!include(../api/collections/fields/content.yml)!!!
|
||||
|
||||
## Mediathek Kollektion
|
||||
|
||||
<video width="100%" controls autoplay muted loop>
|
||||
<source src="contentbuilder-medialib.webm" type="video/webm">
|
||||
</video>
|
||||
|
||||
Wie aus der obigen Definition unterhalb von z.B. "imageSelect" zu lesen, bedarf es einer eigenen Kollektion für Bilder und andere Dateien. Diese Kollektion könnte wie folgt aussehen:
|
||||
|
||||
> Die Bedeutung der hier nicht beschriebenen Eigenschaften ist unter [collections](./../../../collections.md) zu finden.
|
||||
|
||||
!!!include(../api/collections/medialib.yml)!!!
|
||||
|
||||
## Module (customTags)
|
||||
|
||||
Die Einbindung des konfigurierten Beispiel-Moduls aus obiger Definition erfolgt im ContentBuilder wie im folgenden Video zu sehen ist:
|
||||
|
||||
<video width="100%" controls autoplay muted loop>
|
||||
<source src="contentbuilder-module.webm" type="video/webm">
|
||||
</video>
|
||||
|
||||
Wie oben schon erwähnt, sind die `placeholder` frei wählbar. Eine HTML5-Schreibweise bietet sich aber sowohl für das Styling, als auch für die spätere Einbindung in ein Frontend an.
|
||||
|
||||
In unserem Beispiel hier wurden zusättzlich zum eigentlichen Modul-Tag noch Attribute (`title` und `description`) definiert. Diese können dann im Frontend das eigentliche Modul beeinflussen.
|
||||
|
||||
Im Frontend könnte ein Modul dann später als "Custom Element" implementiert werden oder es wird ein HTML-Parser verwendet, der die Tags durch eigene Komponenten ersetzt, wie er im Anhang [TODO] zu finden ist.
|
||||
Reference in New Issue
Block a user