From 09d1dc9d5f128284734a1a3fb28d46c0026d2833 Mon Sep 17 00:00:00 2001 From: Jules Date: Sun, 27 Sep 2026 15:57:11 +0200 Subject: [PATCH] =?UTF-8?q?feat(aep):=20M1=20=E2=80=94=20formulaire=20/pro?= =?UTF-8?q?poser=20assoupli=20(liens=20+=20texte=20libre=20+=20chip)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Le contributeur colle un lien (ou plusieurs) et explique en texte libre pourquoi c'est pertinent, sans template ni minimum de caractères. Le type devient une suggestion optionnelle (chips). Les 5 formulaires typés restent disponibles derrière « Mode détaillé » (replié par défaut). - utils/submitLibre.ts : schéma Zod partagé client/serveur + mapping vers les colonnes NocoDB existantes (aucun changement de schéma) — table orgas par défaut, table ressources_references si le chip « Références » est choisi. - components/FormLibre.vue : liens dynamiques (1-10), texte libre, chips, email optionnel, honeypot. - server/api/submit/index.post.ts : branche mode=libre en amont du schéma typé existant ; email Jules remplacé par ntfy (server/utils/notify.ts) — jamais l'email ni le texte du contributeur dans la notif. - scripts/test-submit-libre.mjs : 6 cas contre le vrai schéma Zod (via jiti). Co-Authored-By: Claude Opus 5.5 --- components/FormLibre.vue | 240 ++++++++++++++++++++++++++++++++ pages/proposer.vue | 89 +++++++++--- scripts/test-submit-libre.mjs | 66 +++++++++ server/api/submit/index.post.ts | 159 ++++++++++++++++----- server/utils/notify.ts | 79 +++++++++++ utils/submitLibre.ts | 119 ++++++++++++++++ 6 files changed, 696 insertions(+), 56 deletions(-) create mode 100644 components/FormLibre.vue create mode 100644 scripts/test-submit-libre.mjs create mode 100644 server/utils/notify.ts create mode 100644 utils/submitLibre.ts diff --git a/components/FormLibre.vue b/components/FormLibre.vue new file mode 100644 index 0000000..628af1b --- /dev/null +++ b/components/FormLibre.vue @@ -0,0 +1,240 @@ +