Initial Drupal site: content model + validation + Vue dashboard

- Content type "Ligne comptable" with Paragraphs "Répartition" (Compte + Montant)
- Taxonomies: Compte (9 comptes) and Client (unified client list)
- hook_node_presave + form validate: sum(répartition) must equal montant HT
- /dashboard route (progressive decoupling): Vue 3 app fetching JSON:API,
  computing solde par compte / par client client-side
- "Ajouter une ligne" opens the real Drupal node form in an AJAX modal
- Gin as default + admin theme
- 9 opening-balance lines seeded from suivi_compta_SASFigli2026_v2.ods

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
2026-09-03 22:32:54 +02:00
co-authored by Claude Sonnet 5
commit ca800be21a
218 changed files with 21168 additions and 0 deletions
+106
View File
@@ -0,0 +1,106 @@
uuid: c1d67216-923c-49d1-b0a8-10da913aa932
langcode: en
status: true
dependencies:
config:
- filter.format.full_html
module:
- ckeditor5
_core:
default_config_hash: 4mmJmN8kEiUf9aytnx0QPOORBNL5JaF_ijXRwOm2stg
format: full_html
editor: ckeditor5
settings:
toolbar:
items:
- bold
- italic
- strikethrough
- superscript
- subscript
- removeFormat
- '|'
- link
- '|'
- bulletedList
- numberedList
- '|'
- blockQuote
- drupalInsertImage
- insertTable
- horizontalLine
- '|'
- heading
- codeBlock
- '|'
- sourceEditing
plugins:
ckeditor5_codeBlock:
languages:
-
label: 'Plain text'
language: plaintext
-
label: C
language: c
-
label: 'C#'
language: cs
-
label: C++
language: cpp
-
label: CSS
language: css
-
label: Diff
language: diff
-
label: HTML
language: html
-
label: Java
language: java
-
label: JavaScript
language: javascript
-
label: PHP
language: php
-
label: Python
language: python
-
label: Ruby
language: ruby
-
label: TypeScript
language: typescript
-
label: XML
language: xml
ckeditor5_heading:
enabled_headings:
- heading2
- heading3
- heading4
- heading5
- heading6
ckeditor5_imageResize:
allow_resize: true
ckeditor5_list:
properties:
reversed: true
startIndex: true
styles: true
multiBlock: true
ckeditor5_sourceEditing:
allowed_tags: { }
image_upload:
status: true
scheme: public
directory: inline-images
max_size: null
max_dimensions:
width: null
height: null