domAdapter.js

Code Hygiene Score: 100

Keine Issues gefunden.

Versionen 1

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; }
};
← Übersicht