@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.
Files changed (136) hide show
  1. package/LICENSE +621 -0
  2. package/README.md +124 -0
  3. package/dist/browser.d.ts +30 -0
  4. package/dist/browser.d.ts.map +1 -0
  5. package/dist/browser.js +29 -0
  6. package/dist/browser.js.map +1 -0
  7. package/dist/core.d.ts +42 -0
  8. package/dist/core.d.ts.map +1 -0
  9. package/dist/core.js +78 -0
  10. package/dist/core.js.map +1 -0
  11. package/dist/index.cjs +2150 -0
  12. package/dist/index.d.ts +1158 -0
  13. package/dist/index.d.ts.map +1 -0
  14. package/dist/index.js +100 -0
  15. package/dist/index.js.map +1 -0
  16. package/dist/index.mjs +2118 -0
  17. package/dist/jbase.browser.js +1906 -0
  18. package/dist/jbase.js +1898 -0
  19. package/dist/jbase.min.js +9 -0
  20. package/dist/modules/css/classes.d.ts +61 -0
  21. package/dist/modules/css/classes.d.ts.map +1 -0
  22. package/dist/modules/css/classes.js +88 -0
  23. package/dist/modules/css/classes.js.map +1 -0
  24. package/dist/modules/css/index.d.ts +30 -0
  25. package/dist/modules/css/index.d.ts.map +1 -0
  26. package/dist/modules/css/index.js +33 -0
  27. package/dist/modules/css/index.js.map +1 -0
  28. package/dist/modules/css/styles.d.ts +31 -0
  29. package/dist/modules/css/styles.d.ts.map +1 -0
  30. package/dist/modules/css/styles.js +49 -0
  31. package/dist/modules/css/styles.js.map +1 -0
  32. package/dist/modules/data/arrays.d.ts +131 -0
  33. package/dist/modules/data/arrays.d.ts.map +1 -0
  34. package/dist/modules/data/arrays.js +177 -0
  35. package/dist/modules/data/arrays.js.map +1 -0
  36. package/dist/modules/data/index.d.ts +29 -0
  37. package/dist/modules/data/index.d.ts.map +1 -0
  38. package/dist/modules/data/index.js +33 -0
  39. package/dist/modules/data/index.js.map +1 -0
  40. package/dist/modules/data/objects.d.ts +108 -0
  41. package/dist/modules/data/objects.d.ts.map +1 -0
  42. package/dist/modules/data/objects.js +168 -0
  43. package/dist/modules/data/objects.js.map +1 -0
  44. package/dist/modules/data/types.d.ts +35 -0
  45. package/dist/modules/data/types.d.ts.map +1 -0
  46. package/dist/modules/data/types.js +43 -0
  47. package/dist/modules/data/types.js.map +1 -0
  48. package/dist/modules/dom/attributes.d.ts +42 -0
  49. package/dist/modules/dom/attributes.d.ts.map +1 -0
  50. package/dist/modules/dom/attributes.js +69 -0
  51. package/dist/modules/dom/attributes.js.map +1 -0
  52. package/dist/modules/dom/content.d.ts +39 -0
  53. package/dist/modules/dom/content.d.ts.map +1 -0
  54. package/dist/modules/dom/content.js +63 -0
  55. package/dist/modules/dom/content.js.map +1 -0
  56. package/dist/modules/dom/index.d.ts +78 -0
  57. package/dist/modules/dom/index.d.ts.map +1 -0
  58. package/dist/modules/dom/index.js +48 -0
  59. package/dist/modules/dom/index.js.map +1 -0
  60. package/dist/modules/dom/manipulation.d.ts +159 -0
  61. package/dist/modules/dom/manipulation.d.ts.map +1 -0
  62. package/dist/modules/dom/manipulation.js +343 -0
  63. package/dist/modules/dom/manipulation.js.map +1 -0
  64. package/dist/modules/dom/states.d.ts +50 -0
  65. package/dist/modules/dom/states.d.ts.map +1 -0
  66. package/dist/modules/dom/states.js +89 -0
  67. package/dist/modules/dom/states.js.map +1 -0
  68. package/dist/modules/dom/traversal.d.ts +246 -0
  69. package/dist/modules/dom/traversal.d.ts.map +1 -0
  70. package/dist/modules/dom/traversal.js +527 -0
  71. package/dist/modules/dom/traversal.js.map +1 -0
  72. package/dist/modules/effects/fade.d.ts +58 -0
  73. package/dist/modules/effects/fade.d.ts.map +1 -0
  74. package/dist/modules/effects/fade.js +104 -0
  75. package/dist/modules/effects/fade.js.map +1 -0
  76. package/dist/modules/effects/index.d.ts +40 -0
  77. package/dist/modules/effects/index.d.ts.map +1 -0
  78. package/dist/modules/effects/index.js +38 -0
  79. package/dist/modules/effects/index.js.map +1 -0
  80. package/dist/modules/effects/slide.d.ts +58 -0
  81. package/dist/modules/effects/slide.d.ts.map +1 -0
  82. package/dist/modules/effects/slide.js +103 -0
  83. package/dist/modules/effects/slide.js.map +1 -0
  84. package/dist/modules/effects/vertical.d.ts +58 -0
  85. package/dist/modules/effects/vertical.d.ts.map +1 -0
  86. package/dist/modules/effects/vertical.js +118 -0
  87. package/dist/modules/effects/vertical.js.map +1 -0
  88. package/dist/modules/events/binding.d.ts +47 -0
  89. package/dist/modules/events/binding.d.ts.map +1 -0
  90. package/dist/modules/events/binding.js +60 -0
  91. package/dist/modules/events/binding.js.map +1 -0
  92. package/dist/modules/events/form.d.ts +72 -0
  93. package/dist/modules/events/form.d.ts.map +1 -0
  94. package/dist/modules/events/form.js +106 -0
  95. package/dist/modules/events/form.js.map +1 -0
  96. package/dist/modules/events/index.d.ts +62 -0
  97. package/dist/modules/events/index.d.ts.map +1 -0
  98. package/dist/modules/events/index.js +53 -0
  99. package/dist/modules/events/index.js.map +1 -0
  100. package/dist/modules/events/keyboard.d.ts +65 -0
  101. package/dist/modules/events/keyboard.d.ts.map +1 -0
  102. package/dist/modules/events/keyboard.js +83 -0
  103. package/dist/modules/events/keyboard.js.map +1 -0
  104. package/dist/modules/events/lifecycle.d.ts +28 -0
  105. package/dist/modules/events/lifecycle.d.ts.map +1 -0
  106. package/dist/modules/events/lifecycle.js +40 -0
  107. package/dist/modules/events/lifecycle.js.map +1 -0
  108. package/dist/modules/events/mouse.d.ts +120 -0
  109. package/dist/modules/events/mouse.d.ts.map +1 -0
  110. package/dist/modules/events/mouse.js +172 -0
  111. package/dist/modules/events/mouse.js.map +1 -0
  112. package/dist/modules/events/touch.d.ts +61 -0
  113. package/dist/modules/events/touch.d.ts.map +1 -0
  114. package/dist/modules/events/touch.js +74 -0
  115. package/dist/modules/events/touch.js.map +1 -0
  116. package/dist/modules/http/get.d.ts +47 -0
  117. package/dist/modules/http/get.d.ts.map +1 -0
  118. package/dist/modules/http/get.js +65 -0
  119. package/dist/modules/http/get.js.map +1 -0
  120. package/dist/modules/http/index.d.ts +37 -0
  121. package/dist/modules/http/index.d.ts.map +1 -0
  122. package/dist/modules/http/index.js +42 -0
  123. package/dist/modules/http/index.js.map +1 -0
  124. package/dist/modules/http/post.d.ts +36 -0
  125. package/dist/modules/http/post.d.ts.map +1 -0
  126. package/dist/modules/http/post.js +54 -0
  127. package/dist/modules/http/post.js.map +1 -0
  128. package/dist/types.d.ts +61 -0
  129. package/dist/types.d.ts.map +1 -0
  130. package/dist/types.js +15 -0
  131. package/dist/types.js.map +1 -0
  132. package/dist/utils.d.ts +51 -0
  133. package/dist/utils.d.ts.map +1 -0
  134. package/dist/utils.js +71 -0
  135. package/dist/utils.js.map +1 -0
  136. 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"}