agent/ui/node_modules/@lit/reactive-element
Snider bb88604045 feat(core): wire Core framework into agentic + monitor subsystems
Phase 2 of Core DI migration:
- Add *core.Core field + SetCore() to PrepSubsystem and monitor.Subsystem
- Register agentic/monitor/brain as Core services with lifecycle hooks
- Mark SetCompletionNotifier and SetNotifier as deprecated (removed in Phase 3)
- Fix monitor test to match actual event names
- initServices() now wires Core refs before legacy callbacks

Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-24 14:44:53 +00:00
..
decorators feat(core): wire Core framework into agentic + monitor subsystems 2026-03-24 14:44:53 +00:00
development feat(core): wire Core framework into agentic + monitor subsystems 2026-03-24 14:44:53 +00:00
node feat(core): wire Core framework into agentic + monitor subsystems 2026-03-24 14:44:53 +00:00
css-tag.d.ts feat(core): wire Core framework into agentic + monitor subsystems 2026-03-24 14:44:53 +00:00
css-tag.d.ts.map feat(core): wire Core framework into agentic + monitor subsystems 2026-03-24 14:44:53 +00:00
css-tag.js feat(core): wire Core framework into agentic + monitor subsystems 2026-03-24 14:44:53 +00:00
css-tag.js.map feat(core): wire Core framework into agentic + monitor subsystems 2026-03-24 14:44:53 +00:00
decorators.d.ts feat(core): wire Core framework into agentic + monitor subsystems 2026-03-24 14:44:53 +00:00
decorators.d.ts.map feat(core): wire Core framework into agentic + monitor subsystems 2026-03-24 14:44:53 +00:00
decorators.js feat(core): wire Core framework into agentic + monitor subsystems 2026-03-24 14:44:53 +00:00
decorators.js.map feat(core): wire Core framework into agentic + monitor subsystems 2026-03-24 14:44:53 +00:00
LICENSE feat(core): wire Core framework into agentic + monitor subsystems 2026-03-24 14:44:53 +00:00
package.json feat(core): wire Core framework into agentic + monitor subsystems 2026-03-24 14:44:53 +00:00
polyfill-support.d.ts feat(core): wire Core framework into agentic + monitor subsystems 2026-03-24 14:44:53 +00:00
polyfill-support.d.ts.map feat(core): wire Core framework into agentic + monitor subsystems 2026-03-24 14:44:53 +00:00
polyfill-support.js feat(core): wire Core framework into agentic + monitor subsystems 2026-03-24 14:44:53 +00:00
polyfill-support.js.map feat(core): wire Core framework into agentic + monitor subsystems 2026-03-24 14:44:53 +00:00
reactive-controller.d.ts feat(core): wire Core framework into agentic + monitor subsystems 2026-03-24 14:44:53 +00:00
reactive-controller.d.ts.map feat(core): wire Core framework into agentic + monitor subsystems 2026-03-24 14:44:53 +00:00
reactive-controller.js feat(core): wire Core framework into agentic + monitor subsystems 2026-03-24 14:44:53 +00:00
reactive-controller.js.map feat(core): wire Core framework into agentic + monitor subsystems 2026-03-24 14:44:53 +00:00
reactive-element.d.ts feat(core): wire Core framework into agentic + monitor subsystems 2026-03-24 14:44:53 +00:00
reactive-element.d.ts.map feat(core): wire Core framework into agentic + monitor subsystems 2026-03-24 14:44:53 +00:00
reactive-element.js feat(core): wire Core framework into agentic + monitor subsystems 2026-03-24 14:44:53 +00:00
reactive-element.js.map feat(core): wire Core framework into agentic + monitor subsystems 2026-03-24 14:44:53 +00:00
README.md feat(core): wire Core framework into agentic + monitor subsystems 2026-03-24 14:44:53 +00:00

ReactiveElement

A simple low level base class for creating fast, lightweight web components.

Build Status Published on npm Join our Discord Mentioned in Awesome Lit

Documentation

Full documentation is available at lit.dev/docs/api/ReactiveElement/.

Overview

ReactiveElement is a base class for writing web components that react to changes in properties and attributes. ReactiveElement adds reactive properties and a batching, asynchronous update lifecycle to the standard web component APIs. Subclasses can respond to changes and update the DOM to reflect the element state.

ReactiveElement doesn't include a DOM template system, but can easily be extended to add one by overriding the update() method to call the template library. LitElement is such an extension that adds lit-html templating.

Example

import {
  ReactiveElement,
  html,
  css,
  customElement,
  property,
  PropertyValues,
} from '@lit/reactive-element';

// This decorator defines the element.
@customElement('my-element')
export class MyElement extends ReactiveElement {
  // This decorator creates a property accessor that triggers rendering and
  // an observed attribute.
  @property()
  mood = 'great';

  static styles = css`
    span {
      color: green;
    }
  `;

  contentEl?: HTMLSpanElement;

  // One time setup of shadowRoot content.
  createRenderRoot() {
    const shadowRoot = super.createRenderRoot();
    shadowRoot.innerHTML = `Web Components are <span></span>!`;
    this.contentEl = shadowRoot.firstElementChild;
    return shadowRoot;
  }

  // Use a DOM rendering library of your choice or manually update the DOM.
  update(changedProperties: PropertyValues) {
    super.update(changedProperties);
    this.contentEl.textContent = this.mood;
  }
}
<my-element mood="awesome"></my-element>

Note, this example uses decorators to create properties. Decorators are a proposed standard currently available in TypeScript or Babel. ReactiveElement also supports a vanilla JavaScript method of declaring reactive properties.

Installation

$ npm install @lit/reactive-element

Or use from lit:

$ npm install lit

Contributing

Please see CONTRIBUTING.md.