Files
headroom/frontend/node_modules/happy-dom/lib/nodes/html-style-element/HTMLStyleElement.js
Santhosh Janardhanan de2d83092e feat: Reinitialize frontend with SvelteKit and TypeScript
- Delete old Vite+Svelte frontend
- Initialize new SvelteKit project with TypeScript
- Configure Tailwind CSS v4 + DaisyUI
- Implement JWT authentication with auto-refresh
- Create login page with form validation (Zod)
- Add protected route guards
- Update Docker configuration for single-stage build
- Add E2E tests with Playwright (6/11 passing)
- Fix Svelte 5 reactivity with $state() runes

Known issues:
- 5 E2E tests failing (timing/async issues)
- Token refresh implementation needs debugging
- Validation error display timing
2026-02-17 16:19:59 -05:00

94 lines
2.2 KiB
JavaScript

import * as PropertySymbol from '../../PropertySymbol.js';
import HTMLElement from '../html-element/HTMLElement.js';
/**
* HTML Style Element.
*
* Reference:
* https://developer.mozilla.org/en-US/docs/Web/API/HTMLStyleElement.
*/
export default class HTMLStyleElement extends HTMLElement {
[PropertySymbol.sheet] = null;
[PropertySymbol.styleNode] = this;
[PropertySymbol.disabled] = false;
/**
* Returns media.
*
* @returns Media.
*/
get media() {
return this.getAttribute('media') || '';
}
/**
* Sets media.
*
* @param media Media.
*/
set media(media) {
this.setAttribute('media', media);
}
/**
* Returns type.
*
* @deprecated
* @returns Type.
*/
get type() {
return this.getAttribute('type') || '';
}
/**
* Sets type.
*
* @deprecated
* @param type Type.
*/
set type(type) {
this.setAttribute('type', type);
}
/**
* Returns disabled.
*
* @returns Disabled.
*/
get disabled() {
return this[PropertySymbol.disabled];
}
/**
* Sets disabled.
*
* @param disabled Disabled.
*/
set disabled(disabled) {
this[PropertySymbol.disabled] = Boolean(disabled);
}
/**
* Returns CSS style sheet.
*
* @returns CSS style sheet.
*/
get sheet() {
if (!this[PropertySymbol.isConnected]) {
return null;
}
if (!this[PropertySymbol.sheet]) {
this[PropertySymbol.sheet] = new this[PropertySymbol.ownerDocument][PropertySymbol.window].CSSStyleSheet();
this[PropertySymbol.sheet].replaceSync(this.textContent);
}
return this[PropertySymbol.sheet];
}
/**
* @override
*/
[PropertySymbol.disconnectedFromDocument]() {
super[PropertySymbol.disconnectedFromDocument]();
this[PropertySymbol.sheet] = null;
}
/**
* Updates the CSSStyleSheet with the text content.
*/
[PropertySymbol.updateSheet]() {
if (this[PropertySymbol.sheet]) {
this[PropertySymbol.sheet].replaceSync(this.textContent);
}
}
}
//# sourceMappingURL=HTMLStyleElement.js.map