From a8da1904e9456d3f850ff23ae1e8a9b2754bbb41 Mon Sep 17 00:00:00 2001
From: Sebastian Frank <sebastian@webmakers.de>
Date: Wed, 2 Nov 2022 11:17:57 +0000
Subject: [PATCH] restuctured api folder

---
 api/collections/democol.yml                | 15 ++++++------
 api/collections/democol/imageFilter.yml    |  0
 api/collections/{meta => democol}/meta.yml | 12 +++++-----
 api/collections/democol/simpleList.yml     |  0
 api/collections/democol/table.yml          |  0
 api/config.yml                             |  2 +-
 api/config.yml.env                         |  1 +
 docs/projektkonfig/collections.md          | 27 +++++++++++-----------
 package.json                               |  2 +-
 yarn.lock                                  |  8 +++----
 10 files changed, 35 insertions(+), 32 deletions(-)
 create mode 100644 api/collections/democol/imageFilter.yml
 rename api/collections/{meta => democol}/meta.yml (91%)
 create mode 100644 api/collections/democol/simpleList.yml
 create mode 100644 api/collections/democol/table.yml

diff --git a/api/collections/democol.yml b/api/collections/democol.yml
index a216d04..124a488 100644
--- a/api/collections/democol.yml
+++ b/api/collections/democol.yml
@@ -11,12 +11,12 @@ uploadPath: ../media/democol
 # "meta" Objekt möglich und nötig für die Konfiguration der
 # Admin-UI.
 # Mögliche Angaben werden im seperaten Kapitel behandelt.
-meta: !include meta/meta.yml
+meta: !include democol/meta.yml
 
 # "imageFilter" definieren Filter, die Bilder bearbeiten, wie
 # z.B. Verkleinerung.
 # Mögliche Angaben werden im seperaten Kapitel behandelt.
-imageFilter: !include ../_imagefilter.yml
+imageFilter: !include democol/imageFilter.yml
 
 # Projektionen der Daten werden via GET-Parameter "projection=..."
 # referenziert.
@@ -38,7 +38,7 @@ projections:
         # Eine Mischung von Inkludieren und Auschluss ist NICHT
         # möglich.
         select:
-            comment: -1
+            comment: 0
     full:
         # Ein leeres "select" Objekt beschränkt die Ausgabe der
         # Daten nicht und ist Standard, wenn der "projection="
@@ -93,10 +93,11 @@ permissions:
     # Dieser wird hier über eine Umgebungsvariable "TOKEN" injiziert,
     # die in "config.yml.env" definiert werden kann mit "TOKEN=...".
     token:${TOKEN}:
-        get: true
-        post: true
-        put: true
-        delete: true
+        methods:
+            get: true
+            post: true
+            put: true
+            delete: true
 
     # Alle Berechtigungs-Namen, die nicht "public", "user" oder "token:..."
     # heißen, sind benutzerdefinierte Berechtigungen, die Benutzern
diff --git a/api/collections/democol/imageFilter.yml b/api/collections/democol/imageFilter.yml
new file mode 100644
index 0000000..e69de29
diff --git a/api/collections/meta/meta.yml b/api/collections/democol/meta.yml
similarity index 91%
rename from api/collections/meta/meta.yml
rename to api/collections/democol/meta.yml
index 37aa4a6..021c748 100644
--- a/api/collections/meta/meta.yml
+++ b/api/collections/democol/meta.yml
@@ -27,8 +27,8 @@ defaultImageFilter: s
 views:
     # Natürlich können die Angaben auch ausgelagert und mehrfach verwendet werden.
     # Die möglichen Angaben werden im Kapitel "views" gezeigt.
-    - !include views/simpleList.yml
-    - !include views/table.yml
+    - !include simpleList.yml
+    - !include table.yml
 
 # Wird eine Kollektion als eine Gesamtliste schnell unübersichtlich, hild die 
 # Definition von "subNavigation".
@@ -46,8 +46,8 @@ subNavigation:
           field: titel
           order: ASC
       views:
-          - !include views/simpleList.yml
-          - !include views/table.yml
+          - !include simpleList.yml
+          - !include table.yml
       # Um mehr Übersicht zu bekommen können zum Einen andere "views" und "defaultSort"
       # genutzt werden. Es kann aber auch eine Einschränkung der Daten über eine 
       # Vorfilterung via "filter" geben. "filter" ist ein Objekt mit MongoDB-Filterangaben.
@@ -64,7 +64,7 @@ subNavigation:
           field: date
           order: DESC
       views:
-          - !include views/simpleList.yml
-          - !include views/table.yml
+          - !include simpleList.yml
+          - !include table.yml
       filter:
           type: news
diff --git a/api/collections/democol/simpleList.yml b/api/collections/democol/simpleList.yml
new file mode 100644
index 0000000..e69de29
diff --git a/api/collections/democol/table.yml b/api/collections/democol/table.yml
new file mode 100644
index 0000000..e69de29
diff --git a/api/config.yml b/api/config.yml
index 4985371..bd97822 100644
--- a/api/config.yml
+++ b/api/config.yml
@@ -30,4 +30,4 @@ meta:
 # "collections" ist eine Auflistung von Kollektions-Konfigurationen. 
 # Hier bietet sich eine Auslagerung und Einbidnung via YAML-Tag "!include" an.
 collections:
-  - !include collections/democol.yml
\ No newline at end of file
+  - !include collections/democol.yml
diff --git a/api/config.yml.env b/api/config.yml.env
index e69de29..78e7887 100644
--- a/api/config.yml.env
+++ b/api/config.yml.env
@@ -0,0 +1 @@
+TOKEN=geheim
\ No newline at end of file
diff --git a/docs/projektkonfig/collections.md b/docs/projektkonfig/collections.md
index 5cd6fdf..9759d08 100644
--- a/docs/projektkonfig/collections.md
+++ b/docs/projektkonfig/collections.md
@@ -20,12 +20,12 @@ uploadPath: ../media/democol
 # "meta" Objekt möglich und nötig für die Konfiguration der
 # Admin-UI.
 # Mögliche Angaben werden im seperaten Kapitel behandelt.
-meta: !include meta/meta.yml
+meta: !include democol/meta.yml
 
 # "imageFilter" definieren Filter, die Bilder bearbeiten, wie
 # z.B. Verkleinerung.
 # Mögliche Angaben werden im seperaten Kapitel behandelt.
-imageFilter: !include ../_imagefilter.yml
+imageFilter: !include democol/imageFilter.yml
 
 # Projektionen der Daten werden via GET-Parameter "projection=..."
 # referenziert.
@@ -47,7 +47,7 @@ projections:
         # Eine Mischung von Inkludieren und Auschluss ist NICHT
         # möglich.
         select:
-            comment: -1
+            comment: 0
     full:
         # Ein leeres "select" Objekt beschränkt die Ausgabe der
         # Daten nicht und ist Standard, wenn der "projection="
@@ -102,10 +102,11 @@ permissions:
     # Dieser wird hier über eine Umgebungsvariable "TOKEN" injiziert,
     # die in "config.yml.env" definiert werden kann mit "TOKEN=...".
     token:${TOKEN}:
-        get: true
-        post: true
-        put: true
-        delete: true
+        methods:
+            get: true
+            post: true
+            put: true
+            delete: true
 
     # Alle Berechtigungs-Namen, die nicht "public", "user" oder "token:..."
     # heißen, sind benutzerdefinierte Berechtigungen, die Benutzern
@@ -251,8 +252,8 @@ defaultImageFilter: s
 views:
     # Natürlich können die Angaben auch ausgelagert und mehrfach verwendet werden.
     # Die möglichen Angaben werden im Kapitel "views" gezeigt.
-    - !include views/simpleList.yml
-    - !include views/table.yml
+    - !include simpleList.yml
+    - !include table.yml
 
 # Wird eine Kollektion als eine Gesamtliste schnell unübersichtlich, hild die 
 # Definition von "subNavigation".
@@ -270,8 +271,8 @@ subNavigation:
           field: titel
           order: ASC
       views:
-          - !include views/simpleList.yml
-          - !include views/table.yml
+          - !include simpleList.yml
+          - !include table.yml
       # Um mehr Übersicht zu bekommen können zum Einen andere "views" und "defaultSort"
       # genutzt werden. Es kann aber auch eine Einschränkung der Daten über eine 
       # Vorfilterung via "filter" geben. "filter" ist ein Objekt mit MongoDB-Filterangaben.
@@ -288,8 +289,8 @@ subNavigation:
           field: date
           order: DESC
       views:
-          - !include views/simpleList.yml
-          - !include views/table.yml
+          - !include simpleList.yml
+          - !include table.yml
       filter:
           type: news
 
diff --git a/package.json b/package.json
index c709439..b62b255 100644
--- a/package.json
+++ b/package.json
@@ -8,7 +8,7 @@
   "packageManager": "yarn@3.2.4",
   "devDependencies": {
     "docpress": "^0.8.2",
-    "tibi-types": "https://gitbase.de/cms/tibi-types.git"
+    "tibi-types": "https://gitbase.de/cms/tibi-types.git#commit=746fa80a574d9c90679cbd6b2f79270bc67ab0f8"
   },
   "scripts": {
     "serve": "docpress serve",
diff --git a/yarn.lock b/yarn.lock
index f350092..01dc4ba 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -6439,14 +6439,14 @@ __metadata:
   resolution: "tibi-docs@workspace:."
   dependencies:
     docpress: ^0.8.2
-    tibi-types: "https://gitbase.de/cms/tibi-types.git"
+    tibi-types: "https://gitbase.de/cms/tibi-types.git#commit=746fa80a574d9c90679cbd6b2f79270bc67ab0f8"
   languageName: unknown
   linkType: soft
 
-"tibi-types@https://gitbase.de/cms/tibi-types.git":
+"tibi-types@https://gitbase.de/cms/tibi-types.git#commit=746fa80a574d9c90679cbd6b2f79270bc67ab0f8":
   version: 0.0.1
-  resolution: "tibi-types@https://gitbase.de/cms/tibi-types.git#commit=30e7eb2db8ff81a0342d11d3a20ec6f421df6727"
-  checksum: cd093643346acfaf02d30e0a9a6cd554c04755d64265e2471ffafbf9411a27350a938e5348f5cd35d5e2652586a740c9394f4a26f172b1086bfa24318c8fcca1
+  resolution: "tibi-types@https://gitbase.de/cms/tibi-types.git#commit=746fa80a574d9c90679cbd6b2f79270bc67ab0f8"
+  checksum: baca1ff6b7a6d5563fc4c6db840077397b7ffa7f4d473c70689b73b076216939bdd9b3c034068914e8cb552b2a21f4cd52ed994da25de82326acf3fa3dff2eb9
   languageName: node
   linkType: hard