@k37z3r/jbase 2.0.0
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/LICENSE +621 -0
- package/README.md +124 -0
- package/dist/browser.d.ts +30 -0
- package/dist/browser.d.ts.map +1 -0
- package/dist/browser.js +29 -0
- package/dist/browser.js.map +1 -0
- package/dist/core.d.ts +42 -0
- package/dist/core.d.ts.map +1 -0
- package/dist/core.js +78 -0
- package/dist/core.js.map +1 -0
- package/dist/index.cjs +2150 -0
- package/dist/index.d.ts +1158 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +100 -0
- package/dist/index.js.map +1 -0
- package/dist/index.mjs +2118 -0
- package/dist/jbase.browser.js +1906 -0
- package/dist/jbase.js +1898 -0
- package/dist/jbase.min.js +9 -0
- package/dist/modules/css/classes.d.ts +61 -0
- package/dist/modules/css/classes.d.ts.map +1 -0
- package/dist/modules/css/classes.js +88 -0
- package/dist/modules/css/classes.js.map +1 -0
- package/dist/modules/css/index.d.ts +30 -0
- package/dist/modules/css/index.d.ts.map +1 -0
- package/dist/modules/css/index.js +33 -0
- package/dist/modules/css/index.js.map +1 -0
- package/dist/modules/css/styles.d.ts +31 -0
- package/dist/modules/css/styles.d.ts.map +1 -0
- package/dist/modules/css/styles.js +49 -0
- package/dist/modules/css/styles.js.map +1 -0
- package/dist/modules/data/arrays.d.ts +131 -0
- package/dist/modules/data/arrays.d.ts.map +1 -0
- package/dist/modules/data/arrays.js +177 -0
- package/dist/modules/data/arrays.js.map +1 -0
- package/dist/modules/data/index.d.ts +29 -0
- package/dist/modules/data/index.d.ts.map +1 -0
- package/dist/modules/data/index.js +33 -0
- package/dist/modules/data/index.js.map +1 -0
- package/dist/modules/data/objects.d.ts +108 -0
- package/dist/modules/data/objects.d.ts.map +1 -0
- package/dist/modules/data/objects.js +168 -0
- package/dist/modules/data/objects.js.map +1 -0
- package/dist/modules/data/types.d.ts +35 -0
- package/dist/modules/data/types.d.ts.map +1 -0
- package/dist/modules/data/types.js +43 -0
- package/dist/modules/data/types.js.map +1 -0
- package/dist/modules/dom/attributes.d.ts +42 -0
- package/dist/modules/dom/attributes.d.ts.map +1 -0
- package/dist/modules/dom/attributes.js +69 -0
- package/dist/modules/dom/attributes.js.map +1 -0
- package/dist/modules/dom/content.d.ts +39 -0
- package/dist/modules/dom/content.d.ts.map +1 -0
- package/dist/modules/dom/content.js +63 -0
- package/dist/modules/dom/content.js.map +1 -0
- package/dist/modules/dom/index.d.ts +78 -0
- package/dist/modules/dom/index.d.ts.map +1 -0
- package/dist/modules/dom/index.js +48 -0
- package/dist/modules/dom/index.js.map +1 -0
- package/dist/modules/dom/manipulation.d.ts +159 -0
- package/dist/modules/dom/manipulation.d.ts.map +1 -0
- package/dist/modules/dom/manipulation.js +343 -0
- package/dist/modules/dom/manipulation.js.map +1 -0
- package/dist/modules/dom/states.d.ts +50 -0
- package/dist/modules/dom/states.d.ts.map +1 -0
- package/dist/modules/dom/states.js +89 -0
- package/dist/modules/dom/states.js.map +1 -0
- package/dist/modules/dom/traversal.d.ts +246 -0
- package/dist/modules/dom/traversal.d.ts.map +1 -0
- package/dist/modules/dom/traversal.js +527 -0
- package/dist/modules/dom/traversal.js.map +1 -0
- package/dist/modules/effects/fade.d.ts +58 -0
- package/dist/modules/effects/fade.d.ts.map +1 -0
- package/dist/modules/effects/fade.js +104 -0
- package/dist/modules/effects/fade.js.map +1 -0
- package/dist/modules/effects/index.d.ts +40 -0
- package/dist/modules/effects/index.d.ts.map +1 -0
- package/dist/modules/effects/index.js +38 -0
- package/dist/modules/effects/index.js.map +1 -0
- package/dist/modules/effects/slide.d.ts +58 -0
- package/dist/modules/effects/slide.d.ts.map +1 -0
- package/dist/modules/effects/slide.js +103 -0
- package/dist/modules/effects/slide.js.map +1 -0
- package/dist/modules/effects/vertical.d.ts +58 -0
- package/dist/modules/effects/vertical.d.ts.map +1 -0
- package/dist/modules/effects/vertical.js +118 -0
- package/dist/modules/effects/vertical.js.map +1 -0
- package/dist/modules/events/binding.d.ts +47 -0
- package/dist/modules/events/binding.d.ts.map +1 -0
- package/dist/modules/events/binding.js +60 -0
- package/dist/modules/events/binding.js.map +1 -0
- package/dist/modules/events/form.d.ts +72 -0
- package/dist/modules/events/form.d.ts.map +1 -0
- package/dist/modules/events/form.js +106 -0
- package/dist/modules/events/form.js.map +1 -0
- package/dist/modules/events/index.d.ts +62 -0
- package/dist/modules/events/index.d.ts.map +1 -0
- package/dist/modules/events/index.js +53 -0
- package/dist/modules/events/index.js.map +1 -0
- package/dist/modules/events/keyboard.d.ts +65 -0
- package/dist/modules/events/keyboard.d.ts.map +1 -0
- package/dist/modules/events/keyboard.js +83 -0
- package/dist/modules/events/keyboard.js.map +1 -0
- package/dist/modules/events/lifecycle.d.ts +28 -0
- package/dist/modules/events/lifecycle.d.ts.map +1 -0
- package/dist/modules/events/lifecycle.js +40 -0
- package/dist/modules/events/lifecycle.js.map +1 -0
- package/dist/modules/events/mouse.d.ts +120 -0
- package/dist/modules/events/mouse.d.ts.map +1 -0
- package/dist/modules/events/mouse.js +172 -0
- package/dist/modules/events/mouse.js.map +1 -0
- package/dist/modules/events/touch.d.ts +61 -0
- package/dist/modules/events/touch.d.ts.map +1 -0
- package/dist/modules/events/touch.js +74 -0
- package/dist/modules/events/touch.js.map +1 -0
- package/dist/modules/http/get.d.ts +47 -0
- package/dist/modules/http/get.d.ts.map +1 -0
- package/dist/modules/http/get.js +65 -0
- package/dist/modules/http/get.js.map +1 -0
- package/dist/modules/http/index.d.ts +37 -0
- package/dist/modules/http/index.d.ts.map +1 -0
- package/dist/modules/http/index.js +42 -0
- package/dist/modules/http/index.js.map +1 -0
- package/dist/modules/http/post.d.ts +36 -0
- package/dist/modules/http/post.d.ts.map +1 -0
- package/dist/modules/http/post.js +54 -0
- package/dist/modules/http/post.js.map +1 -0
- package/dist/types.d.ts +61 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +15 -0
- package/dist/types.js.map +1 -0
- package/dist/utils.d.ts +51 -0
- package/dist/utils.d.ts.map +1 -0
- package/dist/utils.js +71 -0
- package/dist/utils.js.map +1 -0
- package/package.json +58 -0
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @file src/modules/events/binding.ts
|
|
4
|
+
* @version 2.0.0
|
|
5
|
+
* @since 2.0.0
|
|
6
|
+
* @license GPL-3.0-or-later
|
|
7
|
+
* @copyright Sven Minio 2026
|
|
8
|
+
* @author Sven Minio <https://sven-minio.de>
|
|
9
|
+
* @category Events
|
|
10
|
+
* @description
|
|
11
|
+
* * 🇬🇧: Core event binding methods (on, off, trigger). Handles event registration and removal.
|
|
12
|
+
* * 🇩🇪: Kern-Methoden für Event-Binding (on, off, trigger). Behandelt die Registrierung und Entfernung von Events.
|
|
13
|
+
* @requires ../../core
|
|
14
|
+
* * 🇬🇧: Depends on the core jBase class for type definitions.
|
|
15
|
+
* * 🇩🇪: Hängt von der Core-jBase-Klasse für Typ-Definitionen ab.
|
|
16
|
+
*/
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
exports.on = on;
|
|
19
|
+
exports.off = off;
|
|
20
|
+
/**
|
|
21
|
+
* * 🇬🇧: Registers an event listener for all elements in the current selection. Uses the native `addEventListener` method internally.
|
|
22
|
+
* * 🇩🇪: Registriert einen Event-Listener für alle Elemente in der aktuellen Auswahl. Nutzt intern die native `addEventListener`-Methode.
|
|
23
|
+
* @param event
|
|
24
|
+
* * 🇬🇧: The name of the event (e.g., 'click', 'mouseenter').
|
|
25
|
+
* * 🇩🇪: Der Name des Events (z.B. 'click', 'mouseenter').
|
|
26
|
+
* @param handler
|
|
27
|
+
* * 🇬🇧: The callback function to execute when the event triggers.
|
|
28
|
+
* * 🇩🇪: Die Callback-Funktion, die beim Auslösen des Events ausgeführt wird.
|
|
29
|
+
* @returns
|
|
30
|
+
* * 🇬🇧: The jBase instance for method chaining.
|
|
31
|
+
* * 🇩🇪: Die jBase-Instanz für Method-Chaining.
|
|
32
|
+
*/
|
|
33
|
+
function on(event, handler) {
|
|
34
|
+
this.forEach(el => {
|
|
35
|
+
el.addEventListener(event, handler);
|
|
36
|
+
});
|
|
37
|
+
return this;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* * 🇬🇧: Removes a previously registered event listener from all elements in the current selection. Uses the native `removeEventListener` method internally.
|
|
41
|
+
* Note: The handler passed must be the exact same reference used in `on`.
|
|
42
|
+
* * 🇩🇪: Entfernt einen zuvor registrierten Event-Listener von allen Elementen in der aktuellen Auswahl. Nutzt intern die native `removeEventListener`-Methode.
|
|
43
|
+
* Hinweis: Der übergebene Handler muss exakt dieselbe Referenz sein, die bei `on` verwendet wurde.
|
|
44
|
+
* @param event
|
|
45
|
+
* * 🇬🇧: The name of the event.
|
|
46
|
+
* * 🇩🇪: Der Name des Events.
|
|
47
|
+
* @param handler
|
|
48
|
+
* * 🇬🇧: The reference of the callback function to remove.
|
|
49
|
+
* * 🇩🇪: Die Referenz der Callback-Funktion, die entfernt werden soll.
|
|
50
|
+
* @returns
|
|
51
|
+
* * 🇬🇧: The jBase instance for method chaining.
|
|
52
|
+
* * 🇩🇪: Die jBase-Instanz für Method-Chaining.
|
|
53
|
+
*/
|
|
54
|
+
function off(event, handler) {
|
|
55
|
+
this.forEach(el => {
|
|
56
|
+
el.removeEventListener(event, handler);
|
|
57
|
+
});
|
|
58
|
+
return this;
|
|
59
|
+
}
|
|
60
|
+
//# sourceMappingURL=binding.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"binding.js","sourceRoot":"","sources":["../../../src/modules/events/binding.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;AAiBH,gBAKC;AAiBD,kBAKC;AAxCD;;;;;;;;;;;;GAYG;AACH,SAAgB,EAAE,CAAc,KAAa,EAAE,OAA2C;IACtF,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;QACd,EAAE,CAAC,gBAAgB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;IACH,OAAO,IAAI,CAAC;AAChB,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,SAAgB,GAAG,CAAc,KAAa,EAAE,OAA2C;IACvF,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;QACd,EAAE,CAAC,mBAAmB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;IACH,OAAO,IAAI,CAAC;AAChB,CAAC"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file src/modules/events/form.ts
|
|
3
|
+
* @version 2.0.0
|
|
4
|
+
* @since 2.0.0
|
|
5
|
+
* @license GPL-3.0-or-later
|
|
6
|
+
* @copyright Sven Minio 2026
|
|
7
|
+
* @author Sven Minio <https://sven-minio.de>
|
|
8
|
+
* @category Events
|
|
9
|
+
* @description
|
|
10
|
+
* * 🇬🇧: Methods for handling form events (submit, change, focus, blur, input).
|
|
11
|
+
* * 🇩🇪: Methoden zur Behandlung von Formular-Events (submit, change, focus, blur, input).
|
|
12
|
+
* @requires ../../core
|
|
13
|
+
* * 🇬🇧: Depends on the core jBase class for type definitions.
|
|
14
|
+
* * 🇩🇪: Hängt von der Core-jBase-Klasse für Typ-Definitionen ab.
|
|
15
|
+
*/
|
|
16
|
+
import { jBase } from '../../core';
|
|
17
|
+
/**
|
|
18
|
+
* * 🇬🇧: Registers an event handler for the 'submit' event. Triggered when a form is submitted.
|
|
19
|
+
* * 🇩🇪: Registriert einen Event-Handler für das 'submit'-Event. Wird ausgelöst, wenn ein Formular abgesendet wird.
|
|
20
|
+
* @param handler
|
|
21
|
+
* * 🇬🇧: The function to execute when the event occurs.
|
|
22
|
+
* * 🇩🇪: Die Funktion, die ausgeführt wird, wenn das Event eintritt.
|
|
23
|
+
* @returns
|
|
24
|
+
* * 🇬🇧: The current jBase instance for chaining.
|
|
25
|
+
* * 🇩🇪: Die aktuelle jBase-Instanz für Chaining.
|
|
26
|
+
*/
|
|
27
|
+
export declare function submit(this: jBase, handler: (event: SubmitEvent) => void): jBase;
|
|
28
|
+
/**
|
|
29
|
+
* * 🇬🇧: Registers an event handler for the 'change' event. Triggered when the value of an element (<input>, <select>, <textarea>) is changed by the user and committed (e.g., on blur).
|
|
30
|
+
* * 🇩🇪: Registriert einen Event-Handler für das 'change'-Event. Wird ausgelöst, wenn der Wert eines Elements (<input>, <select>, <textarea>) geändert und bestätigt wurde (z.B. durch Verlassen).
|
|
31
|
+
* @param handler
|
|
32
|
+
* * 🇬🇧: The function to execute when the event occurs.
|
|
33
|
+
* * 🇩🇪: Die Funktion, die ausgeführt wird, wenn das Event eintritt.
|
|
34
|
+
* @returns
|
|
35
|
+
* * 🇬🇧: The current jBase instance for chaining.
|
|
36
|
+
* * 🇩🇪: Die aktuelle jBase-Instanz für Chaining.
|
|
37
|
+
*/
|
|
38
|
+
export declare function change(this: jBase, handler: (event: Event) => void): jBase;
|
|
39
|
+
/**
|
|
40
|
+
* * 🇬🇧: Registers an event handler for the 'input' event. Triggered immediately when the value changes (real-time, e.g., every keystroke).
|
|
41
|
+
* * 🇩🇪: Registriert einen Event-Handler für das 'input'-Event. Wird sofort ausgelöst, wenn sich der Wert ändert (Echtzeit, z.B. bei jedem Tastenanschlag).
|
|
42
|
+
* @param handler
|
|
43
|
+
* * 🇬🇧: The function to execute when the event occurs.
|
|
44
|
+
* * 🇩🇪: Die Funktion, die ausgeführt wird, wenn das Event eintritt.
|
|
45
|
+
* @returns
|
|
46
|
+
* * 🇬🇧: The current jBase instance for chaining.
|
|
47
|
+
* * 🇩🇪: Die aktuelle jBase-Instanz für Chaining.
|
|
48
|
+
*/
|
|
49
|
+
export declare function input(this: jBase, handler: (event: Event) => void): jBase;
|
|
50
|
+
/**
|
|
51
|
+
* * 🇬🇧: Handles the 'focus' event. If a handler is provided, it binds the listener. If no handler is provided, it programmatically sets focus on the element(s).
|
|
52
|
+
* * 🇩🇪: Behandelt das 'focus'-Event. Wenn ein Handler übergeben wird, wird der Listener gebunden. Ohne Handler wird der Fokus programmatisch auf das/die Element(e) gesetzt.
|
|
53
|
+
* @param handler
|
|
54
|
+
* * 🇬🇧: (Optional) The function to execute when the event occurs.
|
|
55
|
+
* * 🇩🇪: (Optional) Die Funktion, die ausgeführt wird, wenn das Event eintritt.
|
|
56
|
+
* @returns
|
|
57
|
+
* * 🇬🇧: The current jBase instance for chaining.
|
|
58
|
+
* * 🇩🇪: Die aktuelle jBase-Instanz für Chaining.
|
|
59
|
+
*/
|
|
60
|
+
export declare function focus(this: jBase, handler?: (event: FocusEvent) => void): jBase;
|
|
61
|
+
/**
|
|
62
|
+
* * 🇬🇧: Handles the 'blur' event (element loses focus). If a handler is provided, it binds the listener. If no handler is provided, it programmatically removes focus.
|
|
63
|
+
* * 🇩🇪: Behandelt das 'blur'-Event (Verlust des Fokus). Wenn ein Handler übergeben wird, wird der Listener gebunden. Ohne Handler wird der Fokus programmatisch entfernt.
|
|
64
|
+
* @param handler
|
|
65
|
+
* * 🇬🇧: (Optional) The function to execute when the event occurs.
|
|
66
|
+
* * 🇩🇪: (Optional) Die Funktion, die ausgeführt wird, wenn das Event eintritt.
|
|
67
|
+
* @returns
|
|
68
|
+
* * 🇬🇧: The current jBase instance for chaining.
|
|
69
|
+
* * 🇩🇪: Die aktuelle jBase-Instanz für Chaining.
|
|
70
|
+
*/
|
|
71
|
+
export declare function blur(this: jBase, handler?: (event: FocusEvent) => void): jBase;
|
|
72
|
+
//# sourceMappingURL=form.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"form.d.ts","sourceRoot":"","sources":["../../../src/modules/events/form.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEnC;;;;;;;;;GASG;AACH,wBAAgB,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,GAAG,KAAK,CAEhF;AAED;;;;;;;;;GASG;AACH,wBAAgB,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,KAAK,CAE1E;AAED;;;;;;;;;GASG;AACH,wBAAgB,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,KAAK,CAEzE;AAED;;;;;;;;;GASG;AACH,wBAAgB,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,GAAG,KAAK,CAS/E;AAED;;;;;;;;;GASG;AACH,wBAAgB,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,GAAG,KAAK,CAS9E"}
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @file src/modules/events/form.ts
|
|
4
|
+
* @version 2.0.0
|
|
5
|
+
* @since 2.0.0
|
|
6
|
+
* @license GPL-3.0-or-later
|
|
7
|
+
* @copyright Sven Minio 2026
|
|
8
|
+
* @author Sven Minio <https://sven-minio.de>
|
|
9
|
+
* @category Events
|
|
10
|
+
* @description
|
|
11
|
+
* * 🇬🇧: Methods for handling form events (submit, change, focus, blur, input).
|
|
12
|
+
* * 🇩🇪: Methoden zur Behandlung von Formular-Events (submit, change, focus, blur, input).
|
|
13
|
+
* @requires ../../core
|
|
14
|
+
* * 🇬🇧: Depends on the core jBase class for type definitions.
|
|
15
|
+
* * 🇩🇪: Hängt von der Core-jBase-Klasse für Typ-Definitionen ab.
|
|
16
|
+
*/
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
exports.submit = submit;
|
|
19
|
+
exports.change = change;
|
|
20
|
+
exports.input = input;
|
|
21
|
+
exports.focus = focus;
|
|
22
|
+
exports.blur = blur;
|
|
23
|
+
/**
|
|
24
|
+
* * 🇬🇧: Registers an event handler for the 'submit' event. Triggered when a form is submitted.
|
|
25
|
+
* * 🇩🇪: Registriert einen Event-Handler für das 'submit'-Event. Wird ausgelöst, wenn ein Formular abgesendet wird.
|
|
26
|
+
* @param handler
|
|
27
|
+
* * 🇬🇧: The function to execute when the event occurs.
|
|
28
|
+
* * 🇩🇪: Die Funktion, die ausgeführt wird, wenn das Event eintritt.
|
|
29
|
+
* @returns
|
|
30
|
+
* * 🇬🇧: The current jBase instance for chaining.
|
|
31
|
+
* * 🇩🇪: Die aktuelle jBase-Instanz für Chaining.
|
|
32
|
+
*/
|
|
33
|
+
function submit(handler) {
|
|
34
|
+
return this.on('submit', handler);
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* * 🇬🇧: Registers an event handler for the 'change' event. Triggered when the value of an element (<input>, <select>, <textarea>) is changed by the user and committed (e.g., on blur).
|
|
38
|
+
* * 🇩🇪: Registriert einen Event-Handler für das 'change'-Event. Wird ausgelöst, wenn der Wert eines Elements (<input>, <select>, <textarea>) geändert und bestätigt wurde (z.B. durch Verlassen).
|
|
39
|
+
* @param handler
|
|
40
|
+
* * 🇬🇧: The function to execute when the event occurs.
|
|
41
|
+
* * 🇩🇪: Die Funktion, die ausgeführt wird, wenn das Event eintritt.
|
|
42
|
+
* @returns
|
|
43
|
+
* * 🇬🇧: The current jBase instance for chaining.
|
|
44
|
+
* * 🇩🇪: Die aktuelle jBase-Instanz für Chaining.
|
|
45
|
+
*/
|
|
46
|
+
function change(handler) {
|
|
47
|
+
return this.on('change', handler);
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* * 🇬🇧: Registers an event handler for the 'input' event. Triggered immediately when the value changes (real-time, e.g., every keystroke).
|
|
51
|
+
* * 🇩🇪: Registriert einen Event-Handler für das 'input'-Event. Wird sofort ausgelöst, wenn sich der Wert ändert (Echtzeit, z.B. bei jedem Tastenanschlag).
|
|
52
|
+
* @param handler
|
|
53
|
+
* * 🇬🇧: The function to execute when the event occurs.
|
|
54
|
+
* * 🇩🇪: Die Funktion, die ausgeführt wird, wenn das Event eintritt.
|
|
55
|
+
* @returns
|
|
56
|
+
* * 🇬🇧: The current jBase instance for chaining.
|
|
57
|
+
* * 🇩🇪: Die aktuelle jBase-Instanz für Chaining.
|
|
58
|
+
*/
|
|
59
|
+
function input(handler) {
|
|
60
|
+
return this.on('input', handler);
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* * 🇬🇧: Handles the 'focus' event. If a handler is provided, it binds the listener. If no handler is provided, it programmatically sets focus on the element(s).
|
|
64
|
+
* * 🇩🇪: Behandelt das 'focus'-Event. Wenn ein Handler übergeben wird, wird der Listener gebunden. Ohne Handler wird der Fokus programmatisch auf das/die Element(e) gesetzt.
|
|
65
|
+
* @param handler
|
|
66
|
+
* * 🇬🇧: (Optional) The function to execute when the event occurs.
|
|
67
|
+
* * 🇩🇪: (Optional) Die Funktion, die ausgeführt wird, wenn das Event eintritt.
|
|
68
|
+
* @returns
|
|
69
|
+
* * 🇬🇧: The current jBase instance for chaining.
|
|
70
|
+
* * 🇩🇪: Die aktuelle jBase-Instanz für Chaining.
|
|
71
|
+
*/
|
|
72
|
+
function focus(handler) {
|
|
73
|
+
if (handler) {
|
|
74
|
+
return this.on('focus', handler);
|
|
75
|
+
}
|
|
76
|
+
else {
|
|
77
|
+
this.forEach(el => {
|
|
78
|
+
if (el instanceof HTMLElement)
|
|
79
|
+
el.focus();
|
|
80
|
+
});
|
|
81
|
+
return this;
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* * 🇬🇧: Handles the 'blur' event (element loses focus). If a handler is provided, it binds the listener. If no handler is provided, it programmatically removes focus.
|
|
86
|
+
* * 🇩🇪: Behandelt das 'blur'-Event (Verlust des Fokus). Wenn ein Handler übergeben wird, wird der Listener gebunden. Ohne Handler wird der Fokus programmatisch entfernt.
|
|
87
|
+
* @param handler
|
|
88
|
+
* * 🇬🇧: (Optional) The function to execute when the event occurs.
|
|
89
|
+
* * 🇩🇪: (Optional) Die Funktion, die ausgeführt wird, wenn das Event eintritt.
|
|
90
|
+
* @returns
|
|
91
|
+
* * 🇬🇧: The current jBase instance for chaining.
|
|
92
|
+
* * 🇩🇪: Die aktuelle jBase-Instanz für Chaining.
|
|
93
|
+
*/
|
|
94
|
+
function blur(handler) {
|
|
95
|
+
if (handler) {
|
|
96
|
+
return this.on('blur', handler);
|
|
97
|
+
}
|
|
98
|
+
else {
|
|
99
|
+
this.forEach(el => {
|
|
100
|
+
if (el instanceof HTMLElement)
|
|
101
|
+
el.blur();
|
|
102
|
+
});
|
|
103
|
+
return this;
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
//# sourceMappingURL=form.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"form.js","sourceRoot":"","sources":["../../../src/modules/events/form.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;AAcH,wBAEC;AAYD,wBAEC;AAYD,sBAEC;AAYD,sBASC;AAYD,oBASC;AAlFD;;;;;;;;;GASG;AACH,SAAgB,MAAM,CAAc,OAAqC;IACrE,OAAO,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAwB,CAAC,CAAC;AACvD,CAAC;AAED;;;;;;;;;GASG;AACH,SAAgB,MAAM,CAAc,OAA+B;IAC/D,OAAO,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAwB,CAAC,CAAC;AACvD,CAAC;AAED;;;;;;;;;GASG;AACH,SAAgB,KAAK,CAAc,OAA+B;IAC9D,OAAO,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,OAAwB,CAAC,CAAC;AACtD,CAAC;AAED;;;;;;;;;GASG;AACH,SAAgB,KAAK,CAAc,OAAqC;IACpE,IAAI,OAAO,EAAE,CAAC;QACV,OAAO,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,OAAwB,CAAC,CAAC;IACtD,CAAC;SAAM,CAAC;QACJ,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;YACd,IAAI,EAAE,YAAY,WAAW;gBAAE,EAAE,CAAC,KAAK,EAAE,CAAC;QAC9C,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IAChB,CAAC;AACL,CAAC;AAED;;;;;;;;;GASG;AACH,SAAgB,IAAI,CAAc,OAAqC;IACnE,IAAI,OAAO,EAAE,CAAC;QACV,OAAO,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,OAAwB,CAAC,CAAC;IACrD,CAAC;SAAM,CAAC;QACJ,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;YACd,IAAI,EAAE,YAAY,WAAW;gBAAE,EAAE,CAAC,IAAI,EAAE,CAAC;QAC7C,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IAChB,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file src/modules/events/index.ts
|
|
3
|
+
* @version 2.0.0
|
|
4
|
+
* @since 2.0.0
|
|
5
|
+
* @license GPL-3.0-or-later
|
|
6
|
+
* @copyright Sven Minio 2026
|
|
7
|
+
* @author Sven Minio <https://sven-minio.de>
|
|
8
|
+
* @category Events
|
|
9
|
+
* @description
|
|
10
|
+
* * 🇬🇧: Central entry point for event handling. Aggregates binding, mouse, lifecycle, keyboard, form, and touch events.
|
|
11
|
+
* * 🇩🇪: Zentraler Einstiegspunkt für Event-Handling. Aggregiert Binding-, Maus-, Lebenszyklus-, Tastatur-, Formular- und Touch-Events.
|
|
12
|
+
* @requires ./binding
|
|
13
|
+
* * 🇬🇧: General event binding (on, off).
|
|
14
|
+
* * 🇩🇪: Generelle Event-Bindung (on, off).
|
|
15
|
+
* @requires ./mouse
|
|
16
|
+
* * 🇬🇧: Mouse interaction events (click, hover, etc.).
|
|
17
|
+
* * 🇩🇪: Maus-Interaktions-Events (click, hover, etc.).
|
|
18
|
+
* @requires ./lifecycle
|
|
19
|
+
* * 🇬🇧: DOM lifecycle events (ready).
|
|
20
|
+
* * 🇩🇪: DOM-Lebenszyklus-Events (ready).
|
|
21
|
+
* @requires ./keyboard
|
|
22
|
+
* * 🇬🇧: Keyboard interaction events (keydown, keyup).
|
|
23
|
+
* * 🇩🇪: Tastatur-Interaktions-Events (keydown, keyup).
|
|
24
|
+
* @requires ./form
|
|
25
|
+
* * 🇬🇧: Form handling events (submit, change, input).
|
|
26
|
+
* * 🇩🇪: Formular-Verarbeitungs-Events (submit, change, input).
|
|
27
|
+
* @requires ./touch
|
|
28
|
+
* * 🇬🇧: Touch interaction events.
|
|
29
|
+
* * 🇩🇪: Touch-Interaktions-Events.
|
|
30
|
+
*/
|
|
31
|
+
/**
|
|
32
|
+
* * 🇬🇧: Aggregated object of all event methods. Combines logic from various sub-modules into a single object. Used to extend the `jBase` prototype via `Object.assign`.
|
|
33
|
+
* * 🇩🇪: Aggregiertes Objekt aller Event-Methoden. Vereint die Logik aus verschiedenen Sub-Modulen in einem einzigen Objekt. Wird genutzt, um den Prototypen der `jBase`-Klasse via `Object.assign` zu erweitern.
|
|
34
|
+
*/
|
|
35
|
+
export declare const eventMethods: {
|
|
36
|
+
touchstart(this: import("../..").JBaseClass, handler: (event: TouchEvent) => void): import("../..").JBaseClass;
|
|
37
|
+
touchend(this: import("../..").JBaseClass, handler: (event: TouchEvent) => void): import("../..").JBaseClass;
|
|
38
|
+
touchmove(this: import("../..").JBaseClass, handler: (event: TouchEvent) => void): import("../..").JBaseClass;
|
|
39
|
+
touchcancel(this: import("../..").JBaseClass, handler: (event: TouchEvent) => void): import("../..").JBaseClass;
|
|
40
|
+
submit(this: import("../..").JBaseClass, handler: (event: SubmitEvent) => void): import("../..").JBaseClass;
|
|
41
|
+
change(this: import("../..").JBaseClass, handler: (event: Event) => void): import("../..").JBaseClass;
|
|
42
|
+
input(this: import("../..").JBaseClass, handler: (event: Event) => void): import("../..").JBaseClass;
|
|
43
|
+
focus(this: import("../..").JBaseClass, handler?: (event: FocusEvent) => void): import("../..").JBaseClass;
|
|
44
|
+
blur(this: import("../..").JBaseClass, handler?: (event: FocusEvent) => void): import("../..").JBaseClass;
|
|
45
|
+
keydown(this: import("../..").JBaseClass, handler: (event: KeyboardEvent) => void): import("../..").JBaseClass;
|
|
46
|
+
keyup(this: import("../..").JBaseClass, handler: (event: KeyboardEvent) => void): import("../..").JBaseClass;
|
|
47
|
+
keypress(this: import("../..").JBaseClass, handler: (event: KeyboardEvent) => void): import("../..").JBaseClass;
|
|
48
|
+
pressedKey(this: import("../..").JBaseClass, targetKey: string, handler: (event: KeyboardEvent) => void): import("../..").JBaseClass;
|
|
49
|
+
ready(this: import("../..").JBaseClass, handler: () => void): import("../..").JBaseClass;
|
|
50
|
+
click(this: import("../..").JBaseClass, handler?: (event: Event) => void): import("../..").JBaseClass;
|
|
51
|
+
mousemove(this: import("../..").JBaseClass, handler: (event: MouseEvent) => void): import("../..").JBaseClass;
|
|
52
|
+
mouseleave(this: import("../..").JBaseClass, handler: (event: MouseEvent) => void): import("../..").JBaseClass;
|
|
53
|
+
mouseenter(this: import("../..").JBaseClass, handler: (event: MouseEvent) => void): import("../..").JBaseClass;
|
|
54
|
+
mousedown(this: import("../..").JBaseClass, handler: (event: MouseEvent) => void): import("../..").JBaseClass;
|
|
55
|
+
mouseup(this: import("../..").JBaseClass, handler: (event: MouseEvent) => void): import("../..").JBaseClass;
|
|
56
|
+
dblclick(this: import("../..").JBaseClass, handler?: (event: MouseEvent) => void): import("../..").JBaseClass;
|
|
57
|
+
mouseout(this: import("../..").JBaseClass, handler: (event: MouseEvent) => void): import("../..").JBaseClass;
|
|
58
|
+
mouseover(this: import("../..").JBaseClass, handler: (event: MouseEvent) => void): import("../..").JBaseClass;
|
|
59
|
+
on(this: import("../..").JBaseClass, event: string, handler: EventListenerOrEventListenerObject): import("../..").JBaseClass;
|
|
60
|
+
off(this: import("../..").JBaseClass, event: string, handler: EventListenerOrEventListenerObject): import("../..").JBaseClass;
|
|
61
|
+
};
|
|
62
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/modules/events/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AASH;;;GAGG;AACH,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;CAOxB,CAAC"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @file src/modules/events/index.ts
|
|
4
|
+
* @version 2.0.0
|
|
5
|
+
* @since 2.0.0
|
|
6
|
+
* @license GPL-3.0-or-later
|
|
7
|
+
* @copyright Sven Minio 2026
|
|
8
|
+
* @author Sven Minio <https://sven-minio.de>
|
|
9
|
+
* @category Events
|
|
10
|
+
* @description
|
|
11
|
+
* * 🇬🇧: Central entry point for event handling. Aggregates binding, mouse, lifecycle, keyboard, form, and touch events.
|
|
12
|
+
* * 🇩🇪: Zentraler Einstiegspunkt für Event-Handling. Aggregiert Binding-, Maus-, Lebenszyklus-, Tastatur-, Formular- und Touch-Events.
|
|
13
|
+
* @requires ./binding
|
|
14
|
+
* * 🇬🇧: General event binding (on, off).
|
|
15
|
+
* * 🇩🇪: Generelle Event-Bindung (on, off).
|
|
16
|
+
* @requires ./mouse
|
|
17
|
+
* * 🇬🇧: Mouse interaction events (click, hover, etc.).
|
|
18
|
+
* * 🇩🇪: Maus-Interaktions-Events (click, hover, etc.).
|
|
19
|
+
* @requires ./lifecycle
|
|
20
|
+
* * 🇬🇧: DOM lifecycle events (ready).
|
|
21
|
+
* * 🇩🇪: DOM-Lebenszyklus-Events (ready).
|
|
22
|
+
* @requires ./keyboard
|
|
23
|
+
* * 🇬🇧: Keyboard interaction events (keydown, keyup).
|
|
24
|
+
* * 🇩🇪: Tastatur-Interaktions-Events (keydown, keyup).
|
|
25
|
+
* @requires ./form
|
|
26
|
+
* * 🇬🇧: Form handling events (submit, change, input).
|
|
27
|
+
* * 🇩🇪: Formular-Verarbeitungs-Events (submit, change, input).
|
|
28
|
+
* @requires ./touch
|
|
29
|
+
* * 🇬🇧: Touch interaction events.
|
|
30
|
+
* * 🇩🇪: Touch-Interaktions-Events.
|
|
31
|
+
*/
|
|
32
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
33
|
+
exports.eventMethods = void 0;
|
|
34
|
+
const tslib_1 = require("tslib");
|
|
35
|
+
const bindingMethods = tslib_1.__importStar(require("./binding"));
|
|
36
|
+
const mouseMethods = tslib_1.__importStar(require("./mouse"));
|
|
37
|
+
const lifecycleMethods = tslib_1.__importStar(require("./lifecycle"));
|
|
38
|
+
const keyboardMethods = tslib_1.__importStar(require("./keyboard"));
|
|
39
|
+
const formMethods = tslib_1.__importStar(require("./form"));
|
|
40
|
+
const touchMethods = tslib_1.__importStar(require("./touch"));
|
|
41
|
+
/**
|
|
42
|
+
* * 🇬🇧: Aggregated object of all event methods. Combines logic from various sub-modules into a single object. Used to extend the `jBase` prototype via `Object.assign`.
|
|
43
|
+
* * 🇩🇪: Aggregiertes Objekt aller Event-Methoden. Vereint die Logik aus verschiedenen Sub-Modulen in einem einzigen Objekt. Wird genutzt, um den Prototypen der `jBase`-Klasse via `Object.assign` zu erweitern.
|
|
44
|
+
*/
|
|
45
|
+
exports.eventMethods = {
|
|
46
|
+
...bindingMethods,
|
|
47
|
+
...mouseMethods,
|
|
48
|
+
...lifecycleMethods,
|
|
49
|
+
...keyboardMethods,
|
|
50
|
+
...formMethods,
|
|
51
|
+
...touchMethods
|
|
52
|
+
};
|
|
53
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/modules/events/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;;;;AAEH,kEAA4C;AAC5C,8DAAwC;AACxC,sEAAgD;AAChD,oEAA8C;AAC9C,4DAAsC;AACtC,8DAAwC;AAExC;;;GAGG;AACU,QAAA,YAAY,GAAG;IACxB,GAAG,cAAc;IACjB,GAAG,YAAY;IACf,GAAG,gBAAgB;IACnB,GAAG,eAAe;IAClB,GAAG,WAAW;IACd,GAAG,YAAY;CAClB,CAAC"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file src/modules/events/keyboard.ts
|
|
3
|
+
* @version 2.0.0
|
|
4
|
+
* @since 2.0.0
|
|
5
|
+
* @license GPL-3.0-or-later
|
|
6
|
+
* @copyright Sven Minio 2026
|
|
7
|
+
* @author Sven Minio <https://sven-minio.de>
|
|
8
|
+
* @category Events
|
|
9
|
+
* @description
|
|
10
|
+
* * 🇬🇧: Methods for handling keyboard events (keydown, keyup, keypress).
|
|
11
|
+
* * 🇩🇪: Methoden zur Behandlung von Tastatur-Events (keydown, keyup, keypress).
|
|
12
|
+
* @requires ../../core
|
|
13
|
+
* * 🇬🇧: Depends on the core jBase class for type definitions.
|
|
14
|
+
* * 🇩🇪: Hängt von der Core-jBase-Klasse für Typ-Definitionen ab.
|
|
15
|
+
*/
|
|
16
|
+
import { jBase } from '../../core';
|
|
17
|
+
/**
|
|
18
|
+
* * 🇬🇧: Binds an event handler to the 'keydown' event. Fires immediately when a key is pressed (repeats if held).
|
|
19
|
+
* * 🇩🇪: Bindet einen Event-Handler an das 'keydown'-Event. Feuert sofort, wenn eine Taste gedrückt wird (und wiederholt, wenn gehalten).
|
|
20
|
+
* @param handler
|
|
21
|
+
* * 🇬🇧: The callback function receiving the KeyboardEvent.
|
|
22
|
+
* * 🇩🇪: Die Callback-Funktion, die das KeyboardEvent empfängt.
|
|
23
|
+
* @returns
|
|
24
|
+
* * 🇬🇧: The current jBase instance for method chaining.
|
|
25
|
+
* * 🇩🇪: Die aktuelle jBase-Instanz für Method-Chaining.
|
|
26
|
+
*/
|
|
27
|
+
export declare function keydown(this: jBase, handler: (event: KeyboardEvent) => void): jBase;
|
|
28
|
+
/**
|
|
29
|
+
* * 🇬🇧: Binds an event handler to the 'keyup' event. Fires when a key is released.
|
|
30
|
+
* * 🇩🇪: Bindet einen Event-Handler an das 'keyup'-Event. Feuert, wenn eine Taste losgelassen wird.
|
|
31
|
+
* @param handler
|
|
32
|
+
* * 🇬🇧: The callback function receiving the KeyboardEvent.
|
|
33
|
+
* * 🇩🇪: Die Callback-Funktion, die das KeyboardEvent empfängt.
|
|
34
|
+
* @returns
|
|
35
|
+
* * 🇬🇧: The current jBase instance for method chaining.
|
|
36
|
+
* * 🇩🇪: Die aktuelle jBase-Instanz für Method-Chaining.
|
|
37
|
+
*/
|
|
38
|
+
export declare function keyup(this: jBase, handler: (event: KeyboardEvent) => void): jBase;
|
|
39
|
+
/**
|
|
40
|
+
* * 🇬🇧: Binds an event handler to the 'keypress' event. Deprecated in modern standards.
|
|
41
|
+
* * 🇩🇪: Bindet einen Event-Handler an das 'keypress'-Event. In modernen Standards veraltet (deprecated).
|
|
42
|
+
* @deprecated Use keydown or input instead.
|
|
43
|
+
* @param handler
|
|
44
|
+
* * 🇬🇧: The callback function receiving the KeyboardEvent.
|
|
45
|
+
* * 🇩🇪: Die Callback-Funktion, die das KeyboardEvent empfängt.
|
|
46
|
+
* @returns
|
|
47
|
+
* * 🇬🇧: The current jBase instance for method chaining.
|
|
48
|
+
* * 🇩🇪: Die aktuelle jBase-Instanz für Method-Chaining.
|
|
49
|
+
*/
|
|
50
|
+
export declare function keypress(this: jBase, handler: (event: KeyboardEvent) => void): jBase;
|
|
51
|
+
/**
|
|
52
|
+
* * 🇬🇧: Binds an event handler for a specific key (case-insensitive).
|
|
53
|
+
* * 🇩🇪: Bindet einen Event-Handler für eine spezifische Taste (Groß-/Kleinschreibung wird ignoriert).
|
|
54
|
+
* @param targetKey
|
|
55
|
+
* * 🇬🇧: The key to react to (e.g., 'm', 'Enter', 'Escape').
|
|
56
|
+
* * 🇩🇪: Die Taste, auf die reagiert werden soll (z.B. 'm', 'Enter', 'Escape').
|
|
57
|
+
* @param handler
|
|
58
|
+
* * 🇬🇧: The callback function.
|
|
59
|
+
* * 🇩🇪: Die Callback-Funktion.
|
|
60
|
+
* @returns
|
|
61
|
+
* * 🇬🇧: The current jBase instance.
|
|
62
|
+
* * 🇩🇪: Die aktuelle jBase-Instanz.
|
|
63
|
+
*/
|
|
64
|
+
export declare function pressedKey(this: jBase, targetKey: string, handler: (event: KeyboardEvent) => void): jBase;
|
|
65
|
+
//# sourceMappingURL=keyboard.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"keyboard.d.ts","sourceRoot":"","sources":["../../../src/modules/events/keyboard.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEnC;;;;;;;;;GASG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,GAAG,KAAK,CAEnF;AAED;;;;;;;;;GASG;AACH,wBAAgB,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,GAAG,KAAK,CAEjF;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,GAAG,KAAK,CAEpF;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,GAAG,KAAK,CAOzG"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @file src/modules/events/keyboard.ts
|
|
4
|
+
* @version 2.0.0
|
|
5
|
+
* @since 2.0.0
|
|
6
|
+
* @license GPL-3.0-or-later
|
|
7
|
+
* @copyright Sven Minio 2026
|
|
8
|
+
* @author Sven Minio <https://sven-minio.de>
|
|
9
|
+
* @category Events
|
|
10
|
+
* @description
|
|
11
|
+
* * 🇬🇧: Methods for handling keyboard events (keydown, keyup, keypress).
|
|
12
|
+
* * 🇩🇪: Methoden zur Behandlung von Tastatur-Events (keydown, keyup, keypress).
|
|
13
|
+
* @requires ../../core
|
|
14
|
+
* * 🇬🇧: Depends on the core jBase class for type definitions.
|
|
15
|
+
* * 🇩🇪: Hängt von der Core-jBase-Klasse für Typ-Definitionen ab.
|
|
16
|
+
*/
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
exports.keydown = keydown;
|
|
19
|
+
exports.keyup = keyup;
|
|
20
|
+
exports.keypress = keypress;
|
|
21
|
+
exports.pressedKey = pressedKey;
|
|
22
|
+
/**
|
|
23
|
+
* * 🇬🇧: Binds an event handler to the 'keydown' event. Fires immediately when a key is pressed (repeats if held).
|
|
24
|
+
* * 🇩🇪: Bindet einen Event-Handler an das 'keydown'-Event. Feuert sofort, wenn eine Taste gedrückt wird (und wiederholt, wenn gehalten).
|
|
25
|
+
* @param handler
|
|
26
|
+
* * 🇬🇧: The callback function receiving the KeyboardEvent.
|
|
27
|
+
* * 🇩🇪: Die Callback-Funktion, die das KeyboardEvent empfängt.
|
|
28
|
+
* @returns
|
|
29
|
+
* * 🇬🇧: The current jBase instance for method chaining.
|
|
30
|
+
* * 🇩🇪: Die aktuelle jBase-Instanz für Method-Chaining.
|
|
31
|
+
*/
|
|
32
|
+
function keydown(handler) {
|
|
33
|
+
return this.on('keydown', handler);
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* * 🇬🇧: Binds an event handler to the 'keyup' event. Fires when a key is released.
|
|
37
|
+
* * 🇩🇪: Bindet einen Event-Handler an das 'keyup'-Event. Feuert, wenn eine Taste losgelassen wird.
|
|
38
|
+
* @param handler
|
|
39
|
+
* * 🇬🇧: The callback function receiving the KeyboardEvent.
|
|
40
|
+
* * 🇩🇪: Die Callback-Funktion, die das KeyboardEvent empfängt.
|
|
41
|
+
* @returns
|
|
42
|
+
* * 🇬🇧: The current jBase instance for method chaining.
|
|
43
|
+
* * 🇩🇪: Die aktuelle jBase-Instanz für Method-Chaining.
|
|
44
|
+
*/
|
|
45
|
+
function keyup(handler) {
|
|
46
|
+
return this.on('keyup', handler);
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* * 🇬🇧: Binds an event handler to the 'keypress' event. Deprecated in modern standards.
|
|
50
|
+
* * 🇩🇪: Bindet einen Event-Handler an das 'keypress'-Event. In modernen Standards veraltet (deprecated).
|
|
51
|
+
* @deprecated Use keydown or input instead.
|
|
52
|
+
* @param handler
|
|
53
|
+
* * 🇬🇧: The callback function receiving the KeyboardEvent.
|
|
54
|
+
* * 🇩🇪: Die Callback-Funktion, die das KeyboardEvent empfängt.
|
|
55
|
+
* @returns
|
|
56
|
+
* * 🇬🇧: The current jBase instance for method chaining.
|
|
57
|
+
* * 🇩🇪: Die aktuelle jBase-Instanz für Method-Chaining.
|
|
58
|
+
*/
|
|
59
|
+
function keypress(handler) {
|
|
60
|
+
return this.on('keypress', handler);
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* * 🇬🇧: Binds an event handler for a specific key (case-insensitive).
|
|
64
|
+
* * 🇩🇪: Bindet einen Event-Handler für eine spezifische Taste (Groß-/Kleinschreibung wird ignoriert).
|
|
65
|
+
* @param targetKey
|
|
66
|
+
* * 🇬🇧: The key to react to (e.g., 'm', 'Enter', 'Escape').
|
|
67
|
+
* * 🇩🇪: Die Taste, auf die reagiert werden soll (z.B. 'm', 'Enter', 'Escape').
|
|
68
|
+
* @param handler
|
|
69
|
+
* * 🇬🇧: The callback function.
|
|
70
|
+
* * 🇩🇪: Die Callback-Funktion.
|
|
71
|
+
* @returns
|
|
72
|
+
* * 🇬🇧: The current jBase instance.
|
|
73
|
+
* * 🇩🇪: Die aktuelle jBase-Instanz.
|
|
74
|
+
*/
|
|
75
|
+
function pressedKey(targetKey, handler) {
|
|
76
|
+
return this.on('keydown', (e) => {
|
|
77
|
+
const event = e;
|
|
78
|
+
if (event.key.toLowerCase() === targetKey.toLowerCase()) {
|
|
79
|
+
handler(event);
|
|
80
|
+
}
|
|
81
|
+
});
|
|
82
|
+
}
|
|
83
|
+
//# sourceMappingURL=keyboard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"keyboard.js","sourceRoot":"","sources":["../../../src/modules/events/keyboard.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;AAcH,0BAEC;AAYD,sBAEC;AAaD,4BAEC;AAeD,gCAOC;AA/DD;;;;;;;;;GASG;AACH,SAAgB,OAAO,CAAc,OAAuC;IACxE,OAAO,IAAI,CAAC,EAAE,CAAC,SAAS,EAAE,OAAwB,CAAC,CAAC;AACxD,CAAC;AAED;;;;;;;;;GASG;AACH,SAAgB,KAAK,CAAc,OAAuC;IACtE,OAAO,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,OAAwB,CAAC,CAAC;AACtD,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAgB,QAAQ,CAAc,OAAuC;IACzE,OAAO,IAAI,CAAC,EAAE,CAAC,UAAU,EAAE,OAAwB,CAAC,CAAC;AACzD,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,SAAgB,UAAU,CAAc,SAAiB,EAAE,OAAuC;IAC9F,OAAO,IAAI,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,CAAQ,EAAE,EAAE;QACnC,MAAM,KAAK,GAAG,CAAkB,CAAC;QACjC,IAAI,KAAK,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,SAAS,CAAC,WAAW,EAAE,EAAE,CAAC;YACtD,OAAO,CAAC,KAAK,CAAC,CAAC;QACnB,CAAC;IACL,CAAC,CAAC,CAAC;AACP,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file src/modules/events/lifecycle.ts
|
|
3
|
+
* @version 2.0.0
|
|
4
|
+
* @since 2.0.0
|
|
5
|
+
* @license GPL-3.0-or-later
|
|
6
|
+
* @copyright Sven Minio 2026
|
|
7
|
+
* @author Sven Minio <https://sven-minio.de>
|
|
8
|
+
* @category Events
|
|
9
|
+
* @description
|
|
10
|
+
* * 🇬🇧: Methods for handling DOM lifecycle events (e.g., ready).
|
|
11
|
+
* * 🇩🇪: Methoden zur Behandlung von DOM-Lebenszyklus-Events (z.B. ready).
|
|
12
|
+
* @requires ../../core
|
|
13
|
+
* * 🇬🇧: Depends on the core jBase class for type definitions.
|
|
14
|
+
* * 🇩🇪: Hängt von der Core-jBase-Klasse für Typ-Definitionen ab.
|
|
15
|
+
*/
|
|
16
|
+
import { jBase } from '../../core';
|
|
17
|
+
/**
|
|
18
|
+
* * 🇬🇧: Executes the handler as soon as the DOM is fully loaded and parsed. If the document is already ready (readyState 'interactive' or 'complete'), the handler executes immediately to avoid race conditions.
|
|
19
|
+
* * 🇩🇪: Führt den übergebenen Handler aus, sobald das DOM vollständig geladen und geparst ist. Falls das Dokument bereits bereit ist (readyState 'interactive' oder 'complete'), wird der Handler sofort ausgeführt, um Race Conditions zu vermeiden.
|
|
20
|
+
* @param handler
|
|
21
|
+
* * 🇬🇧: The callback function to execute when the DOM is ready.
|
|
22
|
+
* * 🇩🇪: Die Callback-Funktion, die ausgeführt werden soll, sobald das DOM bereit ist.
|
|
23
|
+
* @returns
|
|
24
|
+
* * 🇬🇧: The current jBase instance for method chaining.
|
|
25
|
+
* * 🇩🇪: Die aktuelle jBase-Instanz für Method-Chaining.
|
|
26
|
+
*/
|
|
27
|
+
export declare function ready(this: jBase, handler: () => void): jBase;
|
|
28
|
+
//# sourceMappingURL=lifecycle.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lifecycle.d.ts","sourceRoot":"","sources":["../../../src/modules/events/lifecycle.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEnC;;;;;;;;;GASG;AACH,wBAAgB,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,IAAI,GAAG,KAAK,CAS7D"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @file src/modules/events/lifecycle.ts
|
|
4
|
+
* @version 2.0.0
|
|
5
|
+
* @since 2.0.0
|
|
6
|
+
* @license GPL-3.0-or-later
|
|
7
|
+
* @copyright Sven Minio 2026
|
|
8
|
+
* @author Sven Minio <https://sven-minio.de>
|
|
9
|
+
* @category Events
|
|
10
|
+
* @description
|
|
11
|
+
* * 🇬🇧: Methods for handling DOM lifecycle events (e.g., ready).
|
|
12
|
+
* * 🇩🇪: Methoden zur Behandlung von DOM-Lebenszyklus-Events (z.B. ready).
|
|
13
|
+
* @requires ../../core
|
|
14
|
+
* * 🇬🇧: Depends on the core jBase class for type definitions.
|
|
15
|
+
* * 🇩🇪: Hängt von der Core-jBase-Klasse für Typ-Definitionen ab.
|
|
16
|
+
*/
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
exports.ready = ready;
|
|
19
|
+
/**
|
|
20
|
+
* * 🇬🇧: Executes the handler as soon as the DOM is fully loaded and parsed. If the document is already ready (readyState 'interactive' or 'complete'), the handler executes immediately to avoid race conditions.
|
|
21
|
+
* * 🇩🇪: Führt den übergebenen Handler aus, sobald das DOM vollständig geladen und geparst ist. Falls das Dokument bereits bereit ist (readyState 'interactive' oder 'complete'), wird der Handler sofort ausgeführt, um Race Conditions zu vermeiden.
|
|
22
|
+
* @param handler
|
|
23
|
+
* * 🇬🇧: The callback function to execute when the DOM is ready.
|
|
24
|
+
* * 🇩🇪: Die Callback-Funktion, die ausgeführt werden soll, sobald das DOM bereit ist.
|
|
25
|
+
* @returns
|
|
26
|
+
* * 🇬🇧: The current jBase instance for method chaining.
|
|
27
|
+
* * 🇩🇪: Die aktuelle jBase-Instanz für Method-Chaining.
|
|
28
|
+
*/
|
|
29
|
+
function ready(handler) {
|
|
30
|
+
// Check if DOM is already ready (no waiting required)
|
|
31
|
+
if (document.readyState === 'complete' || document.readyState === 'interactive') {
|
|
32
|
+
handler();
|
|
33
|
+
}
|
|
34
|
+
else {
|
|
35
|
+
// Register event listener if DOM is still loading
|
|
36
|
+
this.on('DOMContentLoaded', handler);
|
|
37
|
+
}
|
|
38
|
+
return this;
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=lifecycle.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lifecycle.js","sourceRoot":"","sources":["../../../src/modules/events/lifecycle.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;AAcH,sBASC;AAnBD;;;;;;;;;GASG;AACH,SAAgB,KAAK,CAAc,OAAmB;IAClD,sDAAsD;IACtD,IAAI,QAAQ,CAAC,UAAU,KAAK,UAAU,IAAI,QAAQ,CAAC,UAAU,KAAK,aAAa,EAAE,CAAC;QAC9E,OAAO,EAAE,CAAC;IACd,CAAC;SAAM,CAAC;QACJ,kDAAkD;QAClD,IAAI,CAAC,EAAE,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAC;IACzC,CAAC;IACD,OAAO,IAAI,CAAC;AAChB,CAAC"}
|