class GlowingButton extends HTMLElement {
connectedCallback() {
const text = this.getAttribute('text') || 'Button';
const href = this.getAttribute('href') || '#';
const size = this.getAttribute('size') || 'md';
const glow = this.hasAttribute('glow');
const variant = this.getAttribute('variant') || 'solid';
const sizes = {
sm: 'px-4 py-2 text-sm',
md: 'px-6 py-3 text-base',
lg: 'px-8 py-4 text-lg',
xl: 'px-10 py-5 text-xl'
};
const variants = {
solid: `
background: linear-gradient(135deg, #4f46e5, #ec4899);
color: white;
`,
outline: `
background: transparent;
color: white;
border: 2px solid white;
`
};
this.attachShadow({ mode: 'open' });
this.shadowRoot.innerHTML = `
${text}
${glow ? '' : ''}
`;
}
}
customElements.define('glowing-button', GlowingButton);