domAdapter.js
- Pfad:
public/js/adapters/domAdapter.js - Namespace: js.adapters
- Zeilen: 42 | Größe: 1,365 Bytes
- Geändert: 2025-12-20 20:00:46 | Gescannt: 2025-12-31 10:22:15
Code Hygiene Score: 100
- Dependencies: 100 (25%)
- LOC: 100 (20%)
- Methods: 100 (20%)
- Secrets: 100 (15%)
- Classes: 100 (10%)
- Magic Numbers: 100 (10%)
Keine Issues gefunden.
Versionen 1
-
v1
2025-12-20 20:00 | claude-code-hook | modified
Claude Code Pre-Hook Backup vor Edit-Operation
Code
/**
* DOM Adapter
* Contract: js-browser-architecture-contract_v2.yaml
*
* Wraps all DOM access. Only adapters may access document/window directly.
*/
export const domAdapter = {
getElementById: (id) => document.getElementById(id),
querySelector: (element, selector) => element.querySelector(selector),
querySelectorAll: (element, selector) => element.querySelectorAll(selector),
createElement: (tagName) => document.createElement(tagName),
appendChild: (parent, child) => parent.appendChild(child),
removeChild: (parent, child) => parent.removeChild(child),
// nosemgrep: javascript.browser.security.insecure-document-method.insecure-document-method
setInnerHTML: (element, html) => { element.innerHTML = html; },
getInnerHTML: (element) => element.innerHTML,
setAttribute: (element, name, value) => element.setAttribute(name, value),
getAttribute: (element, name) => element.getAttribute(name),
addClass: (element, className) => element.classList.add(className),
removeClass: (element, className) => element.classList.remove(className),
hasClass: (element, className) => element.classList.contains(className),
setStyle: (element, property, value) => { element.style[property] = value; },
getTextContent: (element) => element.textContent,
setTextContent: (element, text) => { element.textContent = text; }
};