File size: 1,288 Bytes
be6944d | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | class CustomWaveVisualizer extends HTMLElement {
connectedCallback() {
this.attachShadow({ mode: 'open' });
this.shadowRoot.innerHTML = `
<style>
.wave-container {
background: linear-gradient(135deg, #1e293b 0%, #0f172a 100%);
border-radius: 1rem;
overflow: hidden;
position: relative;
height: 500px;
}
.wave-grid {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-image:
linear-gradient(rgba(255, 255, 255, 0.05) 1px, transparent 1px),
linear-gradient(90deg, rgba(255, 255, 255, 0.05) 1px, transparent 1px);
background-size: 20px 20px;
}
.wave-node {
position: absolute;
width: 8px;
height: 8px;
border-radius: 50%;
background: #7c3aed;
transform: translate(-50%, -50%);
box-shadow: 0 0 |