<mds-tree> <mds-tree-item label="Bacheca"></mds-tree-item> <mds-tree-item label="Documenti"></mds-tree-item> <mds-tree-item label="Impostazioni"></mds-tree-item></mds-tree><mds-tree> <mds-tree-item label="Direzione generale"> <mds-tree-item label="Segreteria"> <mds-tree-item label="Protocollo"></mds-tree-item> <mds-tree-item label="Archivio"></mds-tree-item> </mds-tree-item> <mds-tree-item label="Risorse umane"></mds-tree-item> </mds-tree-item></mds-tree><!-- A branch expanded on mount --><mds-tree id="albero-pratiche"> <mds-tree-item label="Pratiche in corso" expanded> <mds-tree-item label="Pratica 001/2025"></mds-tree-item> <mds-tree-item label="Pratica 002/2025"></mds-tree-item> </mds-tree-item></mds-tree>
<script> // Open or close the whole hierarchy later document.getElementById('albero-pratiche').expanded = true;</script><mds-tree toggle="folder" actions="visible"> <mds-tree-item label="Fascicoli"> <mds-tree-item label="2025"> <mds-tree-item label="Fascicolo 001"></mds-tree-item> <mds-tree-item label="Fascicolo 002"></mds-tree-item> </mds-tree-item> <mds-tree-item label="2024"> <mds-tree-item label="Fascicolo 099"></mds-tree-item> </mds-tree-item> </mds-tree-item></mds-tree><mds-tree toggle="chevron" toggle-position="right" appearance="none"> <mds-tree-item label="Protocollazione documenti"> <mds-tree-item label="Nuovo protocollo in arrivo"></mds-tree-item> <mds-tree-item label="Nuovo protocollo in partenza"></mds-tree-item> </mds-tree-item> <mds-tree-item label="Gestione allegati"> <mds-tree-item label="Scansione multipla"></mds-tree-item> </mds-tree-item></mds-tree><mds-tree actions="auto"> <mds-tree-item label="Relazione annuale 2025"> <mds-button slot="action" icon="mi/baseline/download" variant="dark" tone="text" title="Scarica" ></mds-button> <mds-button slot="action" icon="mi/baseline/more-vert" variant="dark" tone="text" title="Altre opzioni" ></mds-button> <mds-tree-item label="Capitolo 1"></mds-tree-item> <mds-tree-item label="Capitolo 2"></mds-tree-item> </mds-tree-item></mds-tree><mds-tree id="albero-categorie"> <mds-tree-item label="Categoria A"> <mds-tree-item label="Sottocategoria A1"></mds-tree-item> </mds-tree-item></mds-tree>
<script> // emitted only by items marked async document.getElementById('albero-categorie').addEventListener('mdsTreeItemExpand', (event) => { console.log('espanso:', event.detail.element.label); });
document.getElementById('albero-categorie').addEventListener('mdsTreeItemCollapse', (event) => { console.log('collassato:', event.detail.element.label); });</script><mds-tree> <mds-tree-item label="Comune di Rimini" icon="mgg/historic-building"> <mds-tree-item label="Ufficio" async class="ufficio-item" icon="mi/baseline/desk"> <!-- children appended by the script below --> </mds-tree-item> </mds-tree-item></mds-tree>
<script> document.querySelector('.ufficio-item').addEventListener('mdsTreeItemExpand', async (event) => { const { element } = event.detail; if (!element.async) return; const children = await fetchChildren(element.label); children.forEach((nome) => { const item = document.createElement('mds-tree-item'); item.label = nome; element.appendChild(item); }); element.expand(); element.async = false; });</script><mds-tree toggle="chevron"> <mds-tree-item label="Comune di Rimini" icon="mgg/historic-building"> <mds-tree-item label="Sindaco" icon="mdi/handshake"> <mds-tree-item label="Segretario generale" icon="mi/baseline/draw"></mds-tree-item> </mds-tree-item> </mds-tree-item></mds-tree>.navigazione-laterale mds-tree { --mds-tree-label-hover-background: rgb(var(--magma-wash-base)); --mds-tree-branch-border-color: rgb(var(--magma-border-muted)); --mds-tree-toggle-icon-chevron-default-background: rgb(var(--magma-accent-emphasis)); --mds-tree-toggle-icon-chevron-default-color: rgb(var(--magma-accent-on-emphasis)); --mds-tree-transition-duration: 200ms;}