@adaas/are-html 0.0.2 → 0.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -4
- package/dist/browser/index.d.mts +88 -5
- package/dist/browser/index.mjs +542 -176
- package/dist/browser/index.mjs.map +1 -1
- package/dist/node/attributes/AreBinding.attribute.js +17 -4
- package/dist/node/attributes/AreBinding.attribute.js.map +1 -1
- package/dist/node/attributes/AreBinding.attribute.mjs +10 -3
- package/dist/node/attributes/AreBinding.attribute.mjs.map +1 -1
- package/dist/node/attributes/AreDirective.attribute.js +17 -4
- package/dist/node/attributes/AreDirective.attribute.js.map +1 -1
- package/dist/node/attributes/AreDirective.attribute.mjs +10 -3
- package/dist/node/attributes/AreDirective.attribute.mjs.map +1 -1
- package/dist/node/attributes/AreEvent.attribute.js +17 -4
- package/dist/node/attributes/AreEvent.attribute.js.map +1 -1
- package/dist/node/attributes/AreEvent.attribute.mjs +10 -3
- package/dist/node/attributes/AreEvent.attribute.mjs.map +1 -1
- package/dist/node/attributes/AreStatic.attribute.js +17 -4
- package/dist/node/attributes/AreStatic.attribute.js.map +1 -1
- package/dist/node/attributes/AreStatic.attribute.mjs +10 -3
- package/dist/node/attributes/AreStatic.attribute.mjs.map +1 -1
- package/dist/node/directives/AreDirectiveFor.directive.d.mts +8 -0
- package/dist/node/directives/AreDirectiveFor.directive.d.ts +8 -0
- package/dist/node/directives/AreDirectiveFor.directive.js +78 -33
- package/dist/node/directives/AreDirectiveFor.directive.js.map +1 -1
- package/dist/node/directives/AreDirectiveFor.directive.mjs +78 -33
- package/dist/node/directives/AreDirectiveFor.directive.mjs.map +1 -1
- package/dist/node/directives/AreDirectiveIf.directive.d.mts +18 -0
- package/dist/node/directives/AreDirectiveIf.directive.d.ts +18 -0
- package/dist/node/directives/AreDirectiveIf.directive.js +10 -3
- package/dist/node/directives/AreDirectiveIf.directive.js.map +1 -1
- package/dist/node/directives/AreDirectiveIf.directive.mjs +10 -3
- package/dist/node/directives/AreDirectiveIf.directive.mjs.map +1 -1
- package/dist/node/engine/AreHTML.compiler.d.mts +2 -2
- package/dist/node/engine/AreHTML.compiler.d.ts +2 -2
- package/dist/node/engine/AreHTML.compiler.js +57 -29
- package/dist/node/engine/AreHTML.compiler.js.map +1 -1
- package/dist/node/engine/AreHTML.compiler.mjs +58 -30
- package/dist/node/engine/AreHTML.compiler.mjs.map +1 -1
- package/dist/node/engine/AreHTML.constants.d.mts +53 -1
- package/dist/node/engine/AreHTML.constants.d.ts +53 -1
- package/dist/node/engine/AreHTML.constants.js +100 -0
- package/dist/node/engine/AreHTML.constants.js.map +1 -1
- package/dist/node/engine/AreHTML.constants.mjs +93 -0
- package/dist/node/engine/AreHTML.constants.mjs.map +1 -1
- package/dist/node/engine/AreHTML.context.d.mts +6 -2
- package/dist/node/engine/AreHTML.context.d.ts +6 -2
- package/dist/node/engine/AreHTML.context.js +42 -7
- package/dist/node/engine/AreHTML.context.js.map +1 -1
- package/dist/node/engine/AreHTML.context.mjs +35 -6
- package/dist/node/engine/AreHTML.context.mjs.map +1 -1
- package/dist/node/engine/AreHTML.engine.js +10 -7
- package/dist/node/engine/AreHTML.engine.js.map +1 -1
- package/dist/node/engine/AreHTML.engine.mjs +10 -7
- package/dist/node/engine/AreHTML.engine.mjs.map +1 -1
- package/dist/node/engine/AreHTML.interpreter.js +155 -43
- package/dist/node/engine/AreHTML.interpreter.js.map +1 -1
- package/dist/node/engine/AreHTML.interpreter.mjs +155 -43
- package/dist/node/engine/AreHTML.interpreter.mjs.map +1 -1
- package/dist/node/engine/AreHTML.lifecycle.js +17 -12
- package/dist/node/engine/AreHTML.lifecycle.js.map +1 -1
- package/dist/node/engine/AreHTML.lifecycle.mjs +9 -2
- package/dist/node/engine/AreHTML.lifecycle.mjs.map +1 -1
- package/dist/node/engine/AreHTML.tokenizer.js +14 -9
- package/dist/node/engine/AreHTML.tokenizer.js.map +1 -1
- package/dist/node/engine/AreHTML.tokenizer.mjs +10 -3
- package/dist/node/engine/AreHTML.tokenizer.mjs.map +1 -1
- package/dist/node/engine/AreHTML.transformer.js +13 -8
- package/dist/node/engine/AreHTML.transformer.js.map +1 -1
- package/dist/node/engine/AreHTML.transformer.mjs +9 -2
- package/dist/node/engine/AreHTML.transformer.mjs.map +1 -1
- package/dist/node/index.d.mts +2 -1
- package/dist/node/index.d.ts +2 -1
- package/dist/node/index.js +3 -3
- package/dist/node/index.mjs +1 -1
- package/dist/node/instructions/AddAttribute.instruction.js +3 -4
- package/dist/node/instructions/AddAttribute.instruction.js.map +1 -1
- package/dist/node/instructions/AddAttribute.instruction.mjs +3 -4
- package/dist/node/instructions/AddAttribute.instruction.mjs.map +1 -1
- package/dist/node/instructions/AddComment.instruction.js +3 -4
- package/dist/node/instructions/AddComment.instruction.js.map +1 -1
- package/dist/node/instructions/AddComment.instruction.mjs +3 -4
- package/dist/node/instructions/AddComment.instruction.mjs.map +1 -1
- package/dist/node/instructions/AddElement.instruction.js +3 -4
- package/dist/node/instructions/AddElement.instruction.js.map +1 -1
- package/dist/node/instructions/AddElement.instruction.mjs +3 -4
- package/dist/node/instructions/AddElement.instruction.mjs.map +1 -1
- package/dist/node/instructions/AddInterpolation.instruction.js +3 -4
- package/dist/node/instructions/AddInterpolation.instruction.js.map +1 -1
- package/dist/node/instructions/AddInterpolation.instruction.mjs +3 -4
- package/dist/node/instructions/AddInterpolation.instruction.mjs.map +1 -1
- package/dist/node/instructions/AddListener.instruction.js +3 -4
- package/dist/node/instructions/AddListener.instruction.js.map +1 -1
- package/dist/node/instructions/AddListener.instruction.mjs +3 -4
- package/dist/node/instructions/AddListener.instruction.mjs.map +1 -1
- package/dist/node/instructions/AddStyle.instruction.js +3 -4
- package/dist/node/instructions/AddStyle.instruction.js.map +1 -1
- package/dist/node/instructions/AddStyle.instruction.mjs +3 -4
- package/dist/node/instructions/AddStyle.instruction.mjs.map +1 -1
- package/dist/node/instructions/AddText.instruction.js +3 -4
- package/dist/node/instructions/AddText.instruction.js.map +1 -1
- package/dist/node/instructions/AddText.instruction.mjs +3 -4
- package/dist/node/instructions/AddText.instruction.mjs.map +1 -1
- package/dist/node/lib/AreDirective/AreDirective.component.js +5 -0
- package/dist/node/lib/AreDirective/AreDirective.component.js.map +1 -1
- package/dist/node/lib/AreDirective/AreDirective.component.mjs +5 -0
- package/dist/node/lib/AreDirective/AreDirective.component.mjs.map +1 -1
- package/dist/node/lib/AreHTMLAttribute/AreHTML.attribute.js +17 -4
- package/dist/node/lib/AreHTMLAttribute/AreHTML.attribute.js.map +1 -1
- package/dist/node/lib/AreHTMLAttribute/AreHTML.attribute.mjs +10 -3
- package/dist/node/lib/AreHTMLAttribute/AreHTML.attribute.mjs.map +1 -1
- package/dist/node/lib/AreHTMLNode/AreHTMLNode.js +3 -4
- package/dist/node/lib/AreHTMLNode/AreHTMLNode.js.map +1 -1
- package/dist/node/lib/AreHTMLNode/AreHTMLNode.mjs +3 -4
- package/dist/node/lib/AreHTMLNode/AreHTMLNode.mjs.map +1 -1
- package/dist/node/lib/AreRoot/AreRoot.component.js +3 -4
- package/dist/node/lib/AreRoot/AreRoot.component.js.map +1 -1
- package/dist/node/lib/AreRoot/AreRoot.component.mjs +3 -4
- package/dist/node/lib/AreRoot/AreRoot.component.mjs.map +1 -1
- package/dist/node/lib/{AreWatcher/AreWatcher.component.d.mts → AreRouteWatcher/AreRouteWatcher.component.d.mts} +2 -2
- package/dist/node/lib/{AreWatcher/AreWatcher.component.d.ts → AreRouteWatcher/AreRouteWatcher.component.d.ts} +2 -2
- package/dist/node/lib/{AreWatcher/AreWatcher.component.js → AreRouteWatcher/AreRouteWatcher.component.js} +9 -10
- package/dist/node/lib/AreRouteWatcher/AreRouteWatcher.component.js.map +1 -0
- package/dist/node/lib/{AreWatcher/AreWatcher.component.mjs → AreRouteWatcher/AreRouteWatcher.component.mjs} +10 -11
- package/dist/node/lib/AreRouteWatcher/AreRouteWatcher.component.mjs.map +1 -0
- package/dist/node/lib/AreStyle/AreStyle.context.js +17 -4
- package/dist/node/lib/AreStyle/AreStyle.context.js.map +1 -1
- package/dist/node/lib/AreStyle/AreStyle.context.mjs +10 -3
- package/dist/node/lib/AreStyle/AreStyle.context.mjs.map +1 -1
- package/dist/node/nodes/AreComment.js +17 -4
- package/dist/node/nodes/AreComment.js.map +1 -1
- package/dist/node/nodes/AreComment.mjs +10 -3
- package/dist/node/nodes/AreComment.mjs.map +1 -1
- package/dist/node/nodes/AreComponent.js +3 -4
- package/dist/node/nodes/AreComponent.js.map +1 -1
- package/dist/node/nodes/AreComponent.mjs +3 -4
- package/dist/node/nodes/AreComponent.mjs.map +1 -1
- package/dist/node/nodes/AreInterpolation.js +17 -4
- package/dist/node/nodes/AreInterpolation.js.map +1 -1
- package/dist/node/nodes/AreInterpolation.mjs +10 -3
- package/dist/node/nodes/AreInterpolation.mjs.map +1 -1
- package/dist/node/nodes/AreRoot.js +3 -4
- package/dist/node/nodes/AreRoot.js.map +1 -1
- package/dist/node/nodes/AreRoot.mjs +3 -4
- package/dist/node/nodes/AreRoot.mjs.map +1 -1
- package/dist/node/nodes/AreText.js +17 -4
- package/dist/node/nodes/AreText.js.map +1 -1
- package/dist/node/nodes/AreText.mjs +10 -3
- package/dist/node/nodes/AreText.mjs.map +1 -1
- package/dist/node/signals/AreRoute.signal.js +18 -5
- package/dist/node/signals/AreRoute.signal.js.map +1 -1
- package/dist/node/signals/AreRoute.signal.mjs +10 -3
- package/dist/node/signals/AreRoute.signal.mjs.map +1 -1
- package/docs/SYNTAX.md +714 -0
- package/docs/arehtml.monaco.json +235 -0
- package/docs/arehtml.monaco.ts +119 -0
- package/examples/dashboard/dist/index.html +1 -1
- package/examples/dashboard/dist/mpioi5ab-8c3oa9.js +13674 -0
- package/examples/jumpstart/dist/index.html +1 -1
- package/examples/{dashboard/dist/mnzfypsd-6zjt7w.js → jumpstart/dist/mor90p6y-0plg7g.js} +1869 -1926
- package/examples/jumpstart/dist/{mnpl1g4i-nobz9g.js → mor90p7p-1898bz.js} +2797 -2282
- package/examples/jumpstart/src/components/List.component.ts +14 -13
- package/examples/jumpstart/src/concept.ts +5 -4
- package/jest.config.ts +1 -1
- package/package.json +10 -6
- package/src/attributes/AreBinding.attribute.ts +5 -0
- package/src/attributes/AreDirective.attribute.ts +5 -0
- package/src/attributes/AreEvent.attribute.ts +5 -0
- package/src/attributes/AreStatic.attribute.ts +5 -0
- package/src/directives/AreDirectiveFor.directive.ts +97 -60
- package/src/directives/AreDirectiveIf.directive.ts +37 -15
- package/src/engine/AreHTML.compiler.ts +64 -36
- package/src/engine/AreHTML.constants.ts +144 -0
- package/src/engine/AreHTML.context.ts +33 -4
- package/src/engine/AreHTML.engine.ts +12 -7
- package/src/engine/AreHTML.interpreter.ts +195 -68
- package/src/engine/AreHTML.lifecycle.ts +5 -0
- package/src/engine/AreHTML.tokenizer.ts +6 -1
- package/src/engine/AreHTML.transformer.ts +5 -0
- package/src/index.ts +2 -2
- package/src/instructions/AddAttribute.instruction.ts +3 -4
- package/src/instructions/AddComment.instruction.ts +3 -4
- package/src/instructions/AddElement.instruction.ts +3 -4
- package/src/instructions/AddInterpolation.instruction.ts +3 -4
- package/src/instructions/AddListener.instruction.ts +3 -4
- package/src/instructions/AddStyle.instruction.ts +3 -4
- package/src/instructions/AddText.instruction.ts +3 -4
- package/src/lib/AreDirective/AreDirective.component.ts +5 -0
- package/src/lib/AreHTMLAttribute/AreHTML.attribute.ts +5 -0
- package/src/lib/AreHTMLNode/AreHTMLNode.ts +3 -4
- package/src/lib/AreRoot/AreRoot.component.ts +3 -4
- package/src/lib/{AreWatcher/AreWatcher.component.ts → AreRouteWatcher/AreRouteWatcher.component.ts} +5 -6
- package/src/lib/AreStyle/AreStyle.context.ts +5 -0
- package/src/nodes/AreComment.ts +5 -0
- package/src/nodes/AreComponent.ts +3 -4
- package/src/nodes/AreInterpolation.ts +5 -0
- package/src/nodes/AreRoot.ts +3 -4
- package/src/nodes/AreText.ts +5 -0
- package/src/signals/AreRoute.signal.ts +5 -0
- package/dist/node/lib/AreWatcher/AreWatcher.component.js.map +0 -1
- package/dist/node/lib/AreWatcher/AreWatcher.component.mjs.map +0 -1
package/README.md
CHANGED
|
@@ -615,12 +615,12 @@ Route-driven rendering uses `AreSignalsContext` / `AreSignalsMeta` to select the
|
|
|
615
615
|
|
|
616
616
|
## Watcher
|
|
617
617
|
|
|
618
|
-
`
|
|
618
|
+
`AreRouteWatcher` observes browser navigation events (`pushState`, `replaceState`, `popstate`, `hashchange`) and notifies handlers on URL change:
|
|
619
619
|
|
|
620
620
|
```typescript
|
|
621
|
-
import {
|
|
621
|
+
import { AreRouteWatcher } from '@adaas/are-html';
|
|
622
622
|
|
|
623
|
-
const watcher = new
|
|
623
|
+
const watcher = new AreRouteWatcher();
|
|
624
624
|
const unsubscribe = watcher.onChange((url: URL) => {
|
|
625
625
|
console.log('Navigated to:', url.pathname);
|
|
626
626
|
});
|
|
@@ -659,7 +659,7 @@ watcher.destroy();
|
|
|
659
659
|
| `AreDirective` | Base class for custom directives |
|
|
660
660
|
| `AreDirectiveContext` | Per-item scope context for directives |
|
|
661
661
|
| `AreRoot` | `<are-root>` component |
|
|
662
|
-
| `
|
|
662
|
+
| `AreRouteWatcher` | Browser navigation observer |
|
|
663
663
|
| `AreRoute` | Client-side routing signal |
|
|
664
664
|
| `AddElementInstruction` | DOM element creation instruction |
|
|
665
665
|
| `AddTextInstruction` | Text node instruction |
|
package/dist/browser/index.d.mts
CHANGED
|
@@ -119,6 +119,12 @@ declare class AreDirectiveFor extends AreDirective {
|
|
|
119
119
|
transform(attribute: AreDirectiveAttribute, scope: A_Scope, store: AreStore, scene: AreScene, logger: A_Logger, ...args: any[]): void;
|
|
120
120
|
compile(attribute: AreDirectiveAttribute, store: AreStore, scene: AreScene, ...args: any[]): void;
|
|
121
121
|
update(attribute: AreDirectiveAttribute, store: AreStore, scene: AreScene, ...args: any[]): void;
|
|
122
|
+
/**
|
|
123
|
+
* Build a key-function that derives a stable identity from each item.
|
|
124
|
+
* If the user provided a `track <expr>` clause, evaluate it as a path on
|
|
125
|
+
* the item; otherwise fall back to the item identity (reference equality).
|
|
126
|
+
*/
|
|
127
|
+
private makeKeyFn;
|
|
122
128
|
/**
|
|
123
129
|
* Parses the $for expression string into its constituent parts.
|
|
124
130
|
*
|
|
@@ -128,6 +134,8 @@ declare class AreDirectiveFor extends AreDirective {
|
|
|
128
134
|
* (item, index) in items
|
|
129
135
|
* item in filter(items)
|
|
130
136
|
* item, index in filter(items, 'active')
|
|
137
|
+
* item in items track item.id
|
|
138
|
+
* (item, i) in items track item.id
|
|
131
139
|
*/
|
|
132
140
|
private parseExpression;
|
|
133
141
|
/**
|
|
@@ -154,6 +162,24 @@ declare class AreDirectiveContext extends A_ExecutionContext {
|
|
|
154
162
|
constructor(aseid: ASEID | string);
|
|
155
163
|
}
|
|
156
164
|
|
|
165
|
+
/**
|
|
166
|
+
* `$if` directive — conditionally renders a node based on an expression.
|
|
167
|
+
*
|
|
168
|
+
* ⚠️ Known limitation: do NOT use `$if` and `$for` on the SAME element.
|
|
169
|
+
* Doing so produces duplicated DOM on toggle because the two directives
|
|
170
|
+
* share an owner node and clone its scope independently. Wrap one in a
|
|
171
|
+
* parent element instead, e.g.:
|
|
172
|
+
*
|
|
173
|
+
* <div $if="visible">
|
|
174
|
+
* <li $for="item in items">{{item.name}}</li>
|
|
175
|
+
* </div>
|
|
176
|
+
*
|
|
177
|
+
* or
|
|
178
|
+
*
|
|
179
|
+
* <ul $for="item in items">
|
|
180
|
+
* <li $if="item.visible">{{item.name}}</li>
|
|
181
|
+
* </ul>
|
|
182
|
+
*/
|
|
157
183
|
declare class AreDirectiveIf extends AreDirective {
|
|
158
184
|
transform(attribute: AreDirectiveAttribute, scope: A_Scope, store: AreStore, scene: AreScene, logger: A_Logger, ...args: any[]): void;
|
|
159
185
|
compile(attribute: AreDirectiveAttribute, store: AreStore, scene: AreScene, syntax: AreSyntax, directiveContext?: AreDirectiveContext, ...args: any[]): void;
|
|
@@ -285,6 +311,59 @@ declare class AreRoute extends AreSignal<A_Route> {
|
|
|
285
311
|
compare(other: A_Signal<A_Route>): boolean;
|
|
286
312
|
}
|
|
287
313
|
|
|
314
|
+
/**
|
|
315
|
+
* Boolean HTML attributes whose presence (regardless of value) implies "true",
|
|
316
|
+
* and whose absence implies "false". Setting these via `setAttribute(name, value)`
|
|
317
|
+
* always renders the attribute, which is wrong for reactive bindings.
|
|
318
|
+
*
|
|
319
|
+
* Reference: https://html.spec.whatwg.org/multipage/indices.html#attributes-3
|
|
320
|
+
*/
|
|
321
|
+
declare const BOOLEAN_ATTRIBUTES: Set<string>;
|
|
322
|
+
declare function isBooleanAttribute(name: string): boolean;
|
|
323
|
+
/**
|
|
324
|
+
* Form-control IDL properties that must be set as a JS property
|
|
325
|
+
* (not just an attribute) so live user input is reflected.
|
|
326
|
+
*
|
|
327
|
+
* `<input value="foo">` only sets the *default* value;
|
|
328
|
+
* `input.value = "foo"` updates the live state.
|
|
329
|
+
*/
|
|
330
|
+
declare const IDL_FORM_PROPERTIES: Record<string, Set<string>>;
|
|
331
|
+
declare function isIDLFormProperty(tagName: string, attrName: string): boolean;
|
|
332
|
+
/**
|
|
333
|
+
* Normalize a `:class` binding value into a single space-separated string.
|
|
334
|
+
* Supports the common shapes:
|
|
335
|
+
* - string → "a b"
|
|
336
|
+
* - array<string | object | falsy> → ["a", { b: true, c: cond }, null]
|
|
337
|
+
* - object<string, boolean> → { a: true, b: false }
|
|
338
|
+
*/
|
|
339
|
+
declare function normalizeClassValue(value: any): string;
|
|
340
|
+
/**
|
|
341
|
+
* Normalize a `:style` binding value into an inline-style string.
|
|
342
|
+
* Supports:
|
|
343
|
+
* - string → "color: red; font-size: 12px"
|
|
344
|
+
* - object<string, string|number> → { color: 'red', fontSize: '12px' }
|
|
345
|
+
* - array<string | object> → ['color: red', { fontSize: '12px' }]
|
|
346
|
+
*/
|
|
347
|
+
declare function normalizeStyleValue(value: any): string;
|
|
348
|
+
/**
|
|
349
|
+
* Parse a DOM event name with modifiers, e.g. "click.stop.prevent" or "keydown.enter".
|
|
350
|
+
* Returns the bare event name plus the modifier set.
|
|
351
|
+
*/
|
|
352
|
+
interface ParsedEventName {
|
|
353
|
+
event: string;
|
|
354
|
+
modifiers: Set<string>;
|
|
355
|
+
}
|
|
356
|
+
declare function parseEventName(raw: string): ParsedEventName;
|
|
357
|
+
/**
|
|
358
|
+
* Known event-listener modifiers that map directly to addEventListener options.
|
|
359
|
+
*/
|
|
360
|
+
declare const LISTENER_OPTION_MODIFIERS: Set<string>;
|
|
361
|
+
/**
|
|
362
|
+
* Coerce a value into a string for DOM consumption.
|
|
363
|
+
* Avoids "undefined"/"null"/"[object Object]" leaks into the DOM.
|
|
364
|
+
*/
|
|
365
|
+
declare function toDOMString(value: any): string;
|
|
366
|
+
|
|
288
367
|
type AreHTMLContextConstructor = {
|
|
289
368
|
container: Document;
|
|
290
369
|
source: string;
|
|
@@ -327,7 +406,7 @@ declare class AreHTMLEngineContext extends AreContext {
|
|
|
327
406
|
/**
|
|
328
407
|
* Event listeners attached to elements, used for proper cleanup when reverting instructions. Maps a DOM element to a map of event names and their corresponding listeners, allowing the engine to track which listeners are attached to which elements and remove them when necessary (e.g., when an instruction is reverted).
|
|
329
408
|
*/
|
|
330
|
-
elementListeners: WeakMap<Node, Map<string, EventListenerOrEventListenerObject
|
|
409
|
+
elementListeners: WeakMap<Node, Map<string, Set<EventListenerOrEventListenerObject>>>;
|
|
331
410
|
};
|
|
332
411
|
/**
|
|
333
412
|
* The root container for the HTML engine, which can be either a Document or a ShadowRoot. This is where the engine will mount the generated DOM elements. The context uses this container to manage the relationship between AreNodes, instructions, and their corresponding DOM elements, allowing for efficient updates and cleanups as the application state changes.
|
|
@@ -385,13 +464,17 @@ declare class AreHTMLEngineContext extends AreContext {
|
|
|
385
464
|
* @returns
|
|
386
465
|
*/
|
|
387
466
|
getListener(element: Node, eventName: string): EventListenerOrEventListenerObject | undefined;
|
|
467
|
+
/**
|
|
468
|
+
* Returns all listeners registered for a given element + event name.
|
|
469
|
+
*/
|
|
470
|
+
getListeners(element: Node, eventName: string): Set<EventListenerOrEventListenerObject> | undefined;
|
|
388
471
|
/**
|
|
389
472
|
* Removes an event listener from a specific DOM element and updates the context's index accordingly. This method looks up the element in the elementListeners map and deletes the listener for the specified event name. This is typically called when an instruction is reverted or when a node is removed from the DOM, ensuring that any attached event listeners are properly cleaned up to prevent memory leaks and unintended behavior.
|
|
390
473
|
*
|
|
391
474
|
* @param element
|
|
392
475
|
* @param eventName
|
|
393
476
|
*/
|
|
394
|
-
removeListener(element: Node, eventName: string): void;
|
|
477
|
+
removeListener(element: Node, eventName: string, listener?: EventListenerOrEventListenerObject): void;
|
|
395
478
|
}
|
|
396
479
|
|
|
397
480
|
declare class AreHTMLCompiler extends AreCompiler {
|
|
@@ -409,7 +492,7 @@ declare class AreHTMLCompiler extends AreCompiler {
|
|
|
409
492
|
compileStaticAttribute(attribute: AreStaticAttribute, scene: AreScene, ...args: any[]): void;
|
|
410
493
|
compileDirectiveAttribute(directive: AreDirectiveAttribute, store: AreStore, feature: A_Feature, logger?: A_Logger, ...args: any[]): void;
|
|
411
494
|
compileEventAttribute(attribute: AreEventAttribute, scene: AreScene, ...args: any[]): void;
|
|
412
|
-
compileBindingAttribute(attribute: AreBindingAttribute, scene: AreScene, parentStore: AreStore, store: AreStore, ...args: any[]): void;
|
|
495
|
+
compileBindingAttribute(attribute: AreBindingAttribute, scene: AreScene, parentStore: AreStore, store: AreStore, syntax: AreSyntax, ...args: any[]): void;
|
|
413
496
|
}
|
|
414
497
|
|
|
415
498
|
declare class AreHTMLEngine extends AreEngine {
|
|
@@ -503,7 +586,7 @@ declare class AreRoot extends Are {
|
|
|
503
586
|
}>, logger: A_Logger, signalsContext?: AreSignalsContext): Promise<void>;
|
|
504
587
|
}
|
|
505
588
|
|
|
506
|
-
declare class
|
|
589
|
+
declare class AreRouteWatcher extends A_Component {
|
|
507
590
|
private readonly handlers;
|
|
508
591
|
private current;
|
|
509
592
|
constructor();
|
|
@@ -518,4 +601,4 @@ declare class AreWatcher extends A_Component {
|
|
|
518
601
|
private notify;
|
|
519
602
|
}
|
|
520
603
|
|
|
521
|
-
export { AddAttributeInstruction, AddElementInstruction, AddInterpolationInstruction, AddListenerInstruction, AddStyleInstruction, AddTextInstruction, AreBindingAttribute, AreComment, AreComponentNode, AreDirective, AreDirectiveAttribute, AreDirectiveContext, AreDirectiveFeatures, AreDirectiveFor, AreDirectiveIf, AreDirectiveMeta, type AreDirectiveOrderDecoratorParameters, AreEventAttribute, AreHTMLAttribute, AreHTMLCompiler, type AreHTMLContextConstructor, AreHTMLEngine, AreHTMLEngineContext, AreHTMLInstructions, AreHTMLInterpreter, AreHTMLLifecycle, AreHTMLNode, AreHTMLTokenizer, AreHTMLTransformer, type AreHtmlAddAttributeInstructionPayload, type AreHtmlAddCommentInstructionPayload, type AreHtmlAddElementInstructionPayload, type AreHtmlAddInterpolationInstructionPayload, type AreHtmlAddListenerInstructionPayload, type AreHtmlAddStyleInstructionPayload, type AreHtmlAddTextInstructionPayload, AreInterpolation, AreRoot, AreRootNode, AreRoute, AreStaticAttribute, AreStyle, AreText,
|
|
604
|
+
export { AddAttributeInstruction, AddElementInstruction, AddInterpolationInstruction, AddListenerInstruction, AddStyleInstruction, AddTextInstruction, AreBindingAttribute, AreComment, AreComponentNode, AreDirective, AreDirectiveAttribute, AreDirectiveContext, AreDirectiveFeatures, AreDirectiveFor, AreDirectiveIf, AreDirectiveMeta, type AreDirectiveOrderDecoratorParameters, AreEventAttribute, AreHTMLAttribute, AreHTMLCompiler, type AreHTMLContextConstructor, AreHTMLEngine, AreHTMLEngineContext, AreHTMLInstructions, AreHTMLInterpreter, AreHTMLLifecycle, AreHTMLNode, AreHTMLTokenizer, AreHTMLTransformer, type AreHtmlAddAttributeInstructionPayload, type AreHtmlAddCommentInstructionPayload, type AreHtmlAddElementInstructionPayload, type AreHtmlAddInterpolationInstructionPayload, type AreHtmlAddListenerInstructionPayload, type AreHtmlAddStyleInstructionPayload, type AreHtmlAddTextInstructionPayload, AreInterpolation, AreRoot, AreRootNode, AreRoute, AreRouteWatcher, AreStaticAttribute, AreStyle, AreText, BOOLEAN_ATTRIBUTES, IDL_FORM_PROPERTIES, LISTENER_OPTION_MODIFIERS, type ParsedEventName, isBooleanAttribute, isIDLFormProperty, normalizeClassValue, normalizeStyleValue, parseEventName, toDOMString };
|