docs(claude): document the multiline Notes field and the custom-field row

This commit is contained in:
r-zakarya
2026-08-01 14:00:45 +01:00
parent 4936aa78ca
commit e919a79522
+21
View File
@@ -935,6 +935,27 @@ après chaque `DELETE /attachments/{id}`. Un petit vault sain ne paie rien.
brand, expiry…) rendent un `<input>` + menu custom `.so-combo` (flèche =
toutes les options, input = frappe libre). PAS un `<datalist>` natif
(il filtre au texte tapé → n'affiche que ce qui matche, déroutant).
- **Champ Notes multiligne** (`field.multiline`) : bouton *Add note* du
panneau d'édition → champ `textarea` **secret par défaut**, masqué via
`-webkit-text-security` (un `textarea` n'a pas de `type=password`).
Hauteur dérivée du contenu (`autoSizeTextarea`, plafond 320 px) plutôt
que mémorisée — la rangée est reconstruite à chaque ouverture et
`localStorage` ne survit pas au changement de port.
**Pas de colonne `notes_enc` dédiée** : le corps d'une entrée *note* EST
`encrypted_password`, donc un vrai champ notes aurait exigé une nouvelle
colonne chiffrée + les 7 points de passage ci-dessus ; `custom_fields`
est déjà porté par rotation / duplicate / export-import / sync.
**Piège** : les champs personnalisés sont reconstruits **clé par clé** à
l'ouverture (normalisation) et au Save, et chacun jette ce qu'il ne
nomme pas → toute nouvelle clé (`multiline`, comme `options` avant elle)
doit être portée dans les **deux**, sinon elle disparaît silencieusement.
- **Rangée de champ personnalisé** : `libellé | valeur (œil dedans) | ⋮`.
L'œil n'existe que sur un champ secret (sa présence EST l'indicateur) ;
*Copy value*, *Store as secret* / *Make public* et *Remove field* sont
dans le menu `.entry-kebab-menu` réutilisé des cartes (la fermeture au
clic extérieur est déjà câblée). Basculer le flag secret se fait **en
place**, jamais via `rerender()` : reconstruire la liste fait flasher le
panneau et perd le focus + la hauteur auto du multiligne.
- **Settings search** : `#settingsSearch` filtre les `.setting-row` par
texte ; match sur le label de section garde toute la section. Esc dans
la search avec query = clear ; Esc vide = ferme Settings.