Round 394: Contentful ext, Strapi ext, Sanity ext, Directus/Payload ext (20 commands)

ober

34d8a09cb96f36e9b5dd492500bbb994b6c73f23

diff --git a/docs/jemacs-vs-emacs.md b/docs/jemacs-vs-emacs.md
index 6eb143b..e6ac9c9 100644
--- a/docs/jemacs-vs-emacs.md
+++ b/docs/jemacs-vs-emacs.md
@@ -4583,6 +4583,31 @@ No remaining Tier 1 gaps. All core editing, completion, and navigation features 
 | ebib-import-file | :orange_circle: | Import file into Ebib |
 | ebib-push-citation | :orange_circle: | Push Ebib citation to buffer |
 
+### Round 394 — Contentful ext, Strapi ext, Sanity ext, Directus/Payload ext
+
+| Feature | Emacs | jemacs | Status |
+|---|---|---|---|
+| Contentful entries | — | `contentful-entries` | :orange_circle: Scaffolded |
+| Contentful models | — | `contentful-models` | :orange_circle: Scaffolded |
+| Contentful assets | — | `contentful-assets` | :orange_circle: Scaffolded |
+| Contentful locales | — | `contentful-locales` | :orange_circle: Scaffolded |
+| Strapi content types | — | `strapi-types` | :orange_circle: Scaffolded |
+| Strapi entries | — | `strapi-entries` | :orange_circle: Scaffolded |
+| Strapi media | — | `strapi-media` | :orange_circle: Scaffolded |
+| Strapi users | — | `strapi-users` | :orange_circle: Scaffolded |
+| Sanity documents | — | `sanity-documents` | :orange_circle: Scaffolded |
+| Sanity datasets | — | `sanity-datasets` | :orange_circle: Scaffolded |
+| Sanity schemas | — | `sanity-schemas` | :orange_circle: Scaffolded |
+| Sanity deploy | — | `sanity-deploy` | :orange_circle: Scaffolded |
+| Directus items | — | `directus-items` | :orange_circle: Scaffolded |
+| Directus collections | — | `directus-collections` | :orange_circle: Scaffolded |
+| Directus users | — | `directus-users` | :orange_circle: Scaffolded |
+| Directus roles | — | `directus-roles` | :orange_circle: Scaffolded |
+| Payload collections | — | `payload-collections` | :orange_circle: Scaffolded |
+| Payload documents | — | `payload-documents` | :orange_circle: Scaffolded |
+| Payload media | — | `payload-media` | :orange_circle: Scaffolded |
+| Payload users | — | `payload-users` | :orange_circle: Scaffolded |
+
 ### Round 393 — Shopify ext, WooCommerce ext, Magento ext, BigCommerce/Medusa ext
 
 | Feature | Emacs | jemacs | Status |
diff --git a/src/jerboa-emacs/editor-extra-final.ss b/src/jerboa-emacs/editor-extra-final.ss
index 06a96a1..6d6b285 100644
--- a/src/jerboa-emacs/editor-extra-final.ss
+++ b/src/jerboa-emacs/editor-extra-final.ss
@@ -27462,3 +27462,44 @@
 (def (cmd-medusa-regions app)
   (let* ((echo (app-state-echo app)))
     (echo-message! echo "Medusa: listing regions")))
+
+;; Round 394 batch 2 — Sanity ext, Directus/Payload ext
+(def (cmd-sanity-schemas app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Sanity: listing schemas")))
+
+(def (cmd-sanity-deploy app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Sanity: deploying studio")))
+
+(def (cmd-directus-items app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Directus: listing items")))
+
+(def (cmd-directus-collections app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Directus: listing collections")))
+
+(def (cmd-directus-users app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Directus: listing users")))
+
+(def (cmd-directus-roles app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Directus: listing roles")))
+
+(def (cmd-payload-collections app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Payload: listing collections")))
+
+(def (cmd-payload-documents app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Payload: listing documents")))
+
+(def (cmd-payload-media app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Payload: listing media")))
+
+(def (cmd-payload-users app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Payload: listing users")))
diff --git a/src/jerboa-emacs/editor-extra-modes.ss b/src/jerboa-emacs/editor-extra-modes.ss
index 16b8ba2..c64e227 100644
--- a/src/jerboa-emacs/editor-extra-modes.ss
+++ b/src/jerboa-emacs/editor-extra-modes.ss
@@ -28249,3 +28249,44 @@
 (def (cmd-magento-orders app)
   (let* ((echo (app-state-echo app)))
     (echo-message! echo "Magento: listing orders")))
+
+;; Round 394 batch 1 — Contentful ext, Strapi ext
+(def (cmd-contentful-entries app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Contentful: listing entries")))
+
+(def (cmd-contentful-models app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Contentful: listing content models")))
+
+(def (cmd-contentful-assets app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Contentful: listing assets")))
+
+(def (cmd-contentful-locales app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Contentful: listing locales")))
+
+(def (cmd-strapi-types app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Strapi: listing content types")))
+
+(def (cmd-strapi-entries app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Strapi: listing entries")))
+
+(def (cmd-strapi-media app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Strapi: listing media")))
+
+(def (cmd-strapi-users app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Strapi: listing users")))
+
+(def (cmd-sanity-documents app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Sanity: listing documents")))
+
+(def (cmd-sanity-datasets app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Sanity: listing datasets")))
diff --git a/src/jerboa-emacs/editor-extra-regs2.ss b/src/jerboa-emacs/editor-extra-regs2.ss
index 7f8dcac..7c19a82 100644
--- a/src/jerboa-emacs/editor-extra-regs2.ss
+++ b/src/jerboa-emacs/editor-extra-regs2.ss
@@ -9750,4 +9750,26 @@
   (register-command! 'medusa-orders cmd-medusa-orders)
   (register-command! 'medusa-customers cmd-medusa-customers)
   (register-command! 'medusa-regions cmd-medusa-regions)
+
+  ;; Round 394 — Contentful ext, Strapi ext, Sanity ext, Directus/Payload ext
+  (register-command! 'contentful-entries cmd-contentful-entries)
+  (register-command! 'contentful-models cmd-contentful-models)
+  (register-command! 'contentful-assets cmd-contentful-assets)
+  (register-command! 'contentful-locales cmd-contentful-locales)
+  (register-command! 'strapi-types cmd-strapi-types)
+  (register-command! 'strapi-entries cmd-strapi-entries)
+  (register-command! 'strapi-media cmd-strapi-media)
+  (register-command! 'strapi-users cmd-strapi-users)
+  (register-command! 'sanity-documents cmd-sanity-documents)
+  (register-command! 'sanity-datasets cmd-sanity-datasets)
+  (register-command! 'sanity-schemas cmd-sanity-schemas)
+  (register-command! 'sanity-deploy cmd-sanity-deploy)
+  (register-command! 'directus-items cmd-directus-items)
+  (register-command! 'directus-collections cmd-directus-collections)
+  (register-command! 'directus-users cmd-directus-users)
+  (register-command! 'directus-roles cmd-directus-roles)
+  (register-command! 'payload-collections cmd-payload-collections)
+  (register-command! 'payload-documents cmd-payload-documents)
+  (register-command! 'payload-media cmd-payload-media)
+  (register-command! 'payload-users cmd-payload-users)
 )