docs(claude): document the multiline Notes field and the custom-field row
This commit is contained in:
@@ -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.
|
||||
|
||||
Reference in New Issue
Block a user