{t(textSections.length ? 'doc.empty.seeds' : 'doc.empty')}
{/if} + + {#if !doc.inForce.length && !textSections.length}{t('doc.empty')}
{/if} {#each textSections as s, i (`${i}:${s.section}`)} - {@const label = sectionLabel(s.section)} + {@const label = readerSectionLabel(s.section)}{label}
{/if} {#if !s.order || reordering !== s.order.id} @@ -469,7 +476,22 @@ text-underline-offset: 3px; } .text { - margin-top: 2.2rem; + margin-top: 0; + } + /* The separation before the text (Yvv, 2026-11-03): a soft line in the keystone's colour of the + mood, fading at its ends — drawn by its background, never a border. */ + .opening-rule { + height: 2px; + margin: 2.2rem 0 1.6rem; + border: 0; + border-radius: 2px; + background: linear-gradient( + to right, + transparent, + color-mix(in srgb, var(--cle) 45%, transparent) 18%, + color-mix(in srgb, var(--cle) 45%, transparent) 82%, + transparent + ); } .lead { margin-bottom: 1.2rem; diff --git a/web/tests/unit/inertia.test.ts b/web/tests/unit/inertia.test.ts index ccd4efd..476be44 100644 --- a/web/tests/unit/inertia.test.ts +++ b/web/tests/unit/inertia.test.ts @@ -16,7 +16,7 @@ describe('five levels of inertia', () => { }); it('the threshold is told with the quorum, no longer with C (ADR 0013)', () => { const told = [ - 'deep.note', 'formula.reading', 'settings.reading', 'settings.share.note.one', 'settings.share.note.other', + 'deep.note', 'formula.reading', 'settings.reading', 'settings.share.note', 'settings.usual.reference.one', 'settings.usual.reference.other', ] as const; for (const cat of [fr, en, es]) { @@ -36,10 +36,10 @@ describe('five levels of inertia', () => { expect(cat['quorum.error.voted']).not.toMatch(/ne change plus|no longer changes|ya no cambia/); } expect(fr['inertia.explain']).toBe( - "Plus l'inertie est haute, plus il faut de voix pour changer ce texte. Sous le quorum, les votants qui manquent comptent comme « non » ; au-delà, la part de « pour » demandée baisse quand la participation monte.", + "Plus l'inertie est haute, plus il faut de voix pour changer ce texte. Sous le quorum de l'article, les votants qui manquent comptent comme « non » ; au-delà, la part exigée baisse quand la participation monte.", ); expect(fr['formula.reading']).toBe( - "Sous le quorum Q, les votants qui manquent comptent comme « non ». Au-delà, la part de « pour » demandée, la plus haute au quorum, baisse quand la participation monte ; quand tout le monde vote, la majorité M suffit.", + "Sous le quorum Q de l'article, les votants qui manquent comptent comme « non » : il faut autant de « pour » que si Q personnes avaient voté. Au-delà, la part de « pour » demandée, la plus haute au quorum, baisse quand la participation monte ; quand tout le monde vote, la majorité M suffit.", ); expect(fr['quorum.error.voted']).toBe("Quelqu'un a déjà voté sur cet article : son quorum ne change pas."); }); diff --git a/web/tests/unit/lexicon.test.ts b/web/tests/unit/lexicon.test.ts index c577ff3..8f8d20e 100644 --- a/web/tests/unit/lexicon.test.ts +++ b/web/tests/unit/lexicon.test.ts @@ -60,9 +60,10 @@ describe('anti-lexicon', () => { describe('the reading of the formula', () => { it('the settings say, like N1.1 and the formula, that the share falls beyond the quorum', () => { expect(fr['formula.reading']).toContain('Au-delà'); - expect(fr['settings.reading']).toContain('au-delà du quorum'); - expect(en['settings.reading']).toContain('beyond the quorum'); - expect(es['settings.reading']).toContain('más allá del quórum'); + // Lot U3: the quorum of the article, the defined term of lot T3c. + expect(fr['settings.reading']).toContain("Au-delà du quorum de l'article"); + expect(en['settings.reading']).toContain("Beyond the article's quorum"); + expect(es['settings.reading']).toContain('Más allá del quórum del artículo'); }); });