/** Native layer identities; drill visibility also depends on its recorded copper span. */ export function layerVisible(id, span, selected) { if (!selected.has(id)) return false; return id !== '81' || !span.length || span.some(layer => selected.has(layer)); } export function presetLayers(layers, preset) { return new Set(layers.filter(layer => preset === 'all' || layer.id === '0' || layer.id === '81' || (preset === 'top' ? ['1','33'].includes(layer.id) : ['32','34'].includes(layer.id))).map(layer => layer.id)); }