@k37z3r/jbase 2.0.1 → 2.0.3

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 (167) hide show
  1. package/CHANGELOG.md +50 -0
  2. package/README.md +59 -43
  3. package/dist/browser.d.ts +5 -6
  4. package/dist/browser.d.ts.map +1 -1
  5. package/dist/core.d.ts +9 -14
  6. package/dist/core.d.ts.map +1 -1
  7. package/dist/index.cjs +577 -452
  8. package/dist/index.cjs.map +7 -0
  9. package/dist/index.d.ts +304 -603
  10. package/dist/index.d.ts.map +1 -1
  11. package/dist/index.mjs +575 -452
  12. package/dist/index.mjs.map +7 -0
  13. package/dist/jbase.browser.js +338 -281
  14. package/dist/jbase.browser.js.map +7 -0
  15. package/dist/jbase.min.js +3 -2
  16. package/dist/jbase.min.js.map +7 -0
  17. package/dist/modules/css/classes.d.ts +15 -29
  18. package/dist/modules/css/classes.d.ts.map +1 -1
  19. package/dist/modules/css/index.d.ts +5 -9
  20. package/dist/modules/css/index.d.ts.map +1 -1
  21. package/dist/modules/css/styles.d.ts +7 -13
  22. package/dist/modules/css/styles.d.ts.map +1 -1
  23. package/dist/modules/data/arrays.d.ts +96 -64
  24. package/dist/modules/data/arrays.d.ts.map +1 -1
  25. package/dist/modules/data/index.d.ts +5 -9
  26. package/dist/modules/data/index.d.ts.map +1 -1
  27. package/dist/modules/data/objects.d.ts +86 -54
  28. package/dist/modules/data/objects.d.ts.map +1 -1
  29. package/dist/modules/data/types.d.ts +3 -22
  30. package/dist/modules/data/types.d.ts.map +1 -1
  31. package/dist/modules/dom/attributes.d.ts +10 -19
  32. package/dist/modules/dom/attributes.d.ts.map +1 -1
  33. package/dist/modules/dom/content.d.ts +9 -17
  34. package/dist/modules/dom/content.d.ts.map +1 -1
  35. package/dist/modules/dom/index.d.ts +8 -15
  36. package/dist/modules/dom/index.d.ts.map +1 -1
  37. package/dist/modules/dom/manipulation.d.ts +41 -81
  38. package/dist/modules/dom/manipulation.d.ts.map +1 -1
  39. package/dist/modules/dom/states.d.ts +12 -23
  40. package/dist/modules/dom/states.d.ts.map +1 -1
  41. package/dist/modules/dom/traversal.d.ts +64 -127
  42. package/dist/modules/dom/traversal.d.ts.map +1 -1
  43. package/dist/modules/effects/fade.d.ts +13 -31
  44. package/dist/modules/effects/fade.d.ts.map +1 -1
  45. package/dist/modules/effects/index.d.ts +15 -23
  46. package/dist/modules/effects/index.d.ts.map +1 -1
  47. package/dist/modules/effects/slide.d.ts +13 -31
  48. package/dist/modules/effects/slide.d.ts.map +1 -1
  49. package/dist/modules/effects/types.d.ts +33 -0
  50. package/dist/modules/effects/types.d.ts.map +1 -0
  51. package/dist/modules/effects/vertical.d.ts +13 -31
  52. package/dist/modules/effects/vertical.d.ts.map +1 -1
  53. package/dist/modules/events/binding.d.ts +11 -21
  54. package/dist/modules/events/binding.d.ts.map +1 -1
  55. package/dist/modules/events/form.d.ts +18 -35
  56. package/dist/modules/events/form.d.ts.map +1 -1
  57. package/dist/modules/events/index.d.ts +9 -17
  58. package/dist/modules/events/index.d.ts.map +1 -1
  59. package/dist/modules/events/keyboard.d.ts +16 -31
  60. package/dist/modules/events/keyboard.d.ts.map +1 -1
  61. package/dist/modules/events/lifecycle.d.ts +6 -11
  62. package/dist/modules/events/lifecycle.d.ts.map +1 -1
  63. package/dist/modules/events/mouse.d.ts +30 -59
  64. package/dist/modules/events/mouse.d.ts.map +1 -1
  65. package/dist/modules/events/touch.d.ts +15 -29
  66. package/dist/modules/events/touch.d.ts.map +1 -1
  67. package/dist/modules/http/get.d.ts +18 -25
  68. package/dist/modules/http/get.d.ts.map +1 -1
  69. package/dist/modules/http/index.d.ts +11 -15
  70. package/dist/modules/http/index.d.ts.map +1 -1
  71. package/dist/modules/http/post.d.ts +13 -19
  72. package/dist/modules/http/post.d.ts.map +1 -1
  73. package/dist/server.d.ts +15 -0
  74. package/dist/server.d.ts.map +1 -0
  75. package/dist/server.js +2246 -0
  76. package/dist/server.js.map +7 -0
  77. package/dist/types.d.ts +11 -21
  78. package/dist/types.d.ts.map +1 -1
  79. package/dist/utils.d.ts +20 -23
  80. package/dist/utils.d.ts.map +1 -1
  81. package/package.json +14 -4
  82. package/wiki/CSS-Classes-&-Styles.md +128 -0
  83. package/wiki/DATA-Utilities-(Arrays).md +332 -0
  84. package/wiki/DATA-Utilities-(Objects).md +263 -0
  85. package/wiki/DOM-Attributes.md +56 -0
  86. package/wiki/DOM-Content.md +48 -0
  87. package/wiki/DOM-Manipulation.md +272 -0
  88. package/wiki/DOM-States.md +73 -0
  89. package/wiki/DOM-Traversal.md +529 -0
  90. package/wiki/EFFECTS-Fade.md +76 -0
  91. package/wiki/EFFECTS-Slide-(horizontal).md +70 -0
  92. package/wiki/EFFECTS-Slide-(vertical).md +75 -0
  93. package/wiki/EVENTS-Bindings.md +55 -0
  94. package/wiki/EVENTS-Form.md +122 -0
  95. package/wiki/EVENTS-Keyboard.md +98 -0
  96. package/wiki/EVENTS-Lifecycle.md +25 -0
  97. package/wiki/EVENTS-Mouse.md +218 -0
  98. package/wiki/EVENTS-Touch.md +98 -0
  99. package/wiki/HTTP-Requests.md +93 -0
  100. package/wiki/Home.md +118 -0
  101. package/wiki/Installation.md +44 -0
  102. package/wiki/Quick-Start.md +139 -0
  103. package/dist/browser.js +0 -29
  104. package/dist/browser.js.map +0 -1
  105. package/dist/core.js +0 -78
  106. package/dist/core.js.map +0 -1
  107. package/dist/index.js +0 -100
  108. package/dist/index.js.map +0 -1
  109. package/dist/jbase.js +0 -1898
  110. package/dist/modules/css/classes.js +0 -88
  111. package/dist/modules/css/classes.js.map +0 -1
  112. package/dist/modules/css/index.js +0 -33
  113. package/dist/modules/css/index.js.map +0 -1
  114. package/dist/modules/css/styles.js +0 -49
  115. package/dist/modules/css/styles.js.map +0 -1
  116. package/dist/modules/data/arrays.js +0 -177
  117. package/dist/modules/data/arrays.js.map +0 -1
  118. package/dist/modules/data/index.js +0 -33
  119. package/dist/modules/data/index.js.map +0 -1
  120. package/dist/modules/data/objects.js +0 -168
  121. package/dist/modules/data/objects.js.map +0 -1
  122. package/dist/modules/data/types.js +0 -43
  123. package/dist/modules/data/types.js.map +0 -1
  124. package/dist/modules/dom/attributes.js +0 -69
  125. package/dist/modules/dom/attributes.js.map +0 -1
  126. package/dist/modules/dom/content.js +0 -63
  127. package/dist/modules/dom/content.js.map +0 -1
  128. package/dist/modules/dom/index.js +0 -48
  129. package/dist/modules/dom/index.js.map +0 -1
  130. package/dist/modules/dom/manipulation.js +0 -343
  131. package/dist/modules/dom/manipulation.js.map +0 -1
  132. package/dist/modules/dom/states.js +0 -89
  133. package/dist/modules/dom/states.js.map +0 -1
  134. package/dist/modules/dom/traversal.js +0 -527
  135. package/dist/modules/dom/traversal.js.map +0 -1
  136. package/dist/modules/effects/fade.js +0 -104
  137. package/dist/modules/effects/fade.js.map +0 -1
  138. package/dist/modules/effects/index.js +0 -38
  139. package/dist/modules/effects/index.js.map +0 -1
  140. package/dist/modules/effects/slide.js +0 -103
  141. package/dist/modules/effects/slide.js.map +0 -1
  142. package/dist/modules/effects/vertical.js +0 -118
  143. package/dist/modules/effects/vertical.js.map +0 -1
  144. package/dist/modules/events/binding.js +0 -60
  145. package/dist/modules/events/binding.js.map +0 -1
  146. package/dist/modules/events/form.js +0 -106
  147. package/dist/modules/events/form.js.map +0 -1
  148. package/dist/modules/events/index.js +0 -53
  149. package/dist/modules/events/index.js.map +0 -1
  150. package/dist/modules/events/keyboard.js +0 -83
  151. package/dist/modules/events/keyboard.js.map +0 -1
  152. package/dist/modules/events/lifecycle.js +0 -40
  153. package/dist/modules/events/lifecycle.js.map +0 -1
  154. package/dist/modules/events/mouse.js +0 -172
  155. package/dist/modules/events/mouse.js.map +0 -1
  156. package/dist/modules/events/touch.js +0 -74
  157. package/dist/modules/events/touch.js.map +0 -1
  158. package/dist/modules/http/get.js +0 -65
  159. package/dist/modules/http/get.js.map +0 -1
  160. package/dist/modules/http/index.js +0 -42
  161. package/dist/modules/http/index.js.map +0 -1
  162. package/dist/modules/http/post.js +0 -54
  163. package/dist/modules/http/post.js.map +0 -1
  164. package/dist/types.js +0 -15
  165. package/dist/types.js.map +0 -1
  166. package/dist/utils.js +0 -71
  167. package/dist/utils.js.map +0 -1
@@ -1,38 +0,0 @@
1
- "use strict";
2
- /**
3
- * @file src/modules/effects/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 Effects
10
- * @description
11
- * * 🇬🇧: Central entry point for visual effects. Aggregates slide, fade, and vertical animation modules.
12
- * * 🇩🇪: Zentraler Einstiegspunkt für visuelle Effekte. Aggregiert Module für Slide-, Fade- und vertikale Animationen.
13
- * @requires ./slide
14
- * * 🇬🇧: Horizontal slide effects (slideIn, slideOut).
15
- * * 🇩🇪: Horizontale Slide-Effekte (slideIn, slideOut).
16
- * @requires ./vertical
17
- * * 🇬🇧: Vertical slide effects / Accordion (slideDown, slideUp).
18
- * * 🇩🇪: Vertikale Slide-Effekte / Akkordeon (slideDown, slideUp).
19
- * @requires ./fade
20
- * * 🇬🇧: Opacity fade effects (fadeIn, fadeOut).
21
- * * 🇩🇪: Opazitäts-Fade-Effekte (fadeIn, fadeOut).
22
- */
23
- Object.defineProperty(exports, "__esModule", { value: true });
24
- exports.effectMethods = void 0;
25
- const tslib_1 = require("tslib");
26
- const slideMethods = tslib_1.__importStar(require("./slide"));
27
- const verticalMethods = tslib_1.__importStar(require("./vertical"));
28
- const fadeMethods = tslib_1.__importStar(require("./fade"));
29
- /**
30
- * * 🇬🇧: Aggregation of all visual effect methods. Bundles sliding and fading animations to extend the jBase prototype.
31
- * * 🇩🇪: Aggregation aller visuellen Effekt-Methoden. Bündelt Slide- und Fade-Animationen zur Erweiterung des jBase-Prototyps.
32
- */
33
- exports.effectMethods = {
34
- ...slideMethods,
35
- ...verticalMethods,
36
- ...fadeMethods
37
- };
38
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/modules/effects/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;;;;AAEH,8DAAwC;AACxC,oEAA8C;AAC9C,4DAAsC;AAEtC;;;GAGG;AACU,QAAA,aAAa,GAAG;IACzB,GAAG,YAAY;IACf,GAAG,eAAe;IAClB,GAAG,WAAW;CACjB,CAAC"}
@@ -1,103 +0,0 @@
1
- "use strict";
2
- /**
3
- * @file src/modules/effects/slide.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 Effects
10
- * @description
11
- * * 🇬🇧: Methods for horizontal sliding effects (slideIn, slideOut, slideToggle).
12
- * * 🇩🇪: Methoden für horizontale Slide-Effekte (slideIn, slideOut, slideToggle).
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.slideIn = slideIn;
19
- exports.slideOut = slideOut;
20
- exports.slideToggle = slideToggle;
21
- /**
22
- * * 🇬🇧: Slides an element (e.g., a menu) into view. Sets `transform: translateX(0)`.
23
- * * 🇩🇪: Schiebt ein Element (z.B. ein Menü) in den sichtbaren Bereich. Setzt `transform: translateX(0)`.
24
- * @param options
25
- * * 🇬🇧: Direction ('left'|'right') and duration in ms.
26
- * * 🇩🇪: Richtung ('left'|'right') und Dauer in ms.
27
- * @returns
28
- * * 🇬🇧: The current jBase instance.
29
- * * 🇩🇪: Die aktuelle jBase-Instanz.
30
- */
31
- function slideIn(options = {}) {
32
- const { duration = 300 } = options;
33
- this.forEach(el => {
34
- if (el instanceof HTMLElement) {
35
- // Performance: Enable hardware acceleration
36
- el.style.willChange = 'transform';
37
- el.style.transition = `transform ${duration}ms cubic-bezier(0.4, 0.0, 0.2, 1)`;
38
- // Move into view
39
- requestAnimationFrame(() => {
40
- el.style.transform = 'translateX(0%)';
41
- });
42
- // Save state
43
- el.setAttribute('data-slide-state', 'open');
44
- }
45
- });
46
- return this;
47
- }
48
- /**
49
- * * 🇬🇧: Slides an element out of view.
50
- * * 🇩🇪: Schiebt ein Element aus dem sichtbaren Bereich heraus.
51
- * @param options
52
- * * 🇬🇧: Direction ('left'|'right') and duration in ms.
53
- * * 🇩🇪: Richtung ('left'|'right') und Dauer in ms.
54
- * @returns
55
- * * 🇬🇧: The current jBase instance.
56
- * * 🇩🇪: Die aktuelle jBase-Instanz.
57
- */
58
- function slideOut(options = {}) {
59
- const { direction = 'left', duration = 300 } = options;
60
- const translateValue = direction === 'left' ? '-100%' : '100%';
61
- this.forEach(el => {
62
- if (el instanceof HTMLElement) {
63
- el.style.willChange = 'transform';
64
- el.style.transition = `transform ${duration}ms cubic-bezier(0.4, 0.0, 0.2, 1)`;
65
- requestAnimationFrame(() => {
66
- el.style.transform = `translateX(${translateValue})`;
67
- });
68
- el.setAttribute('data-slide-state', 'closed');
69
- }
70
- });
71
- return this;
72
- }
73
- /**
74
- * * 🇬🇧: Toggles between slideIn and slideOut based on the current state.
75
- * * 🇩🇪: Wechselt zwischen slideIn und slideOut basierend auf dem aktuellen Status.
76
- * @param options
77
- * * 🇬🇧: Direction ('left'|'right') and duration in ms.
78
- * * 🇩🇪: Richtung ('left'|'right') und Dauer in ms.
79
- * @returns
80
- * * 🇬🇧: The current jBase instance.
81
- * * 🇩🇪: Die aktuelle jBase-Instanz.
82
- */
83
- function slideToggle(options = {}) {
84
- this.forEach(el => {
85
- if (el instanceof HTMLElement) {
86
- // Check our own attribute or guess based on transform property
87
- const state = el.getAttribute('data-slide-state');
88
- const currentTransform = el.style.transform;
89
- // If explicitly 'open' or transform is 0 -> close
90
- if (state === 'open' || currentTransform === 'translateX(0%)') {
91
- // Wrap single element to apply slideOut logic correctly
92
- const wrapper = new this.constructor(el);
93
- wrapper.slideOut(options);
94
- }
95
- else {
96
- const wrapper = new this.constructor(el);
97
- wrapper.slideIn(options);
98
- }
99
- }
100
- });
101
- return this;
102
- }
103
- //# sourceMappingURL=slide.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"slide.js","sourceRoot":"","sources":["../../../src/modules/effects/slide.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;AAuBH,0BAmBC;AAYD,4BAiBC;AAYD,kCAmBC;AAzFD;;;;;;;;;GASG;AACH,SAAgB,OAAO,CAAc,UAAwB,EAAE;IAC3D,MAAM,EAAE,QAAQ,GAAG,GAAG,EAAE,GAAG,OAAO,CAAC;IAEnC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;QACd,IAAI,EAAE,YAAY,WAAW,EAAE,CAAC;YAC5B,4CAA4C;YAC5C,EAAE,CAAC,KAAK,CAAC,UAAU,GAAG,WAAW,CAAC;YAClC,EAAE,CAAC,KAAK,CAAC,UAAU,GAAG,aAAa,QAAQ,mCAAmC,CAAC;YAE/E,iBAAiB;YACjB,qBAAqB,CAAC,GAAG,EAAE;gBACvB,EAAE,CAAC,KAAK,CAAC,SAAS,GAAG,gBAAgB,CAAC;YAC1C,CAAC,CAAC,CAAC;YAEH,aAAa;YACb,EAAE,CAAC,YAAY,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAC;QAChD,CAAC;IACL,CAAC,CAAC,CAAC;IACH,OAAO,IAAI,CAAC;AAChB,CAAC;AAED;;;;;;;;;GASG;AACH,SAAgB,QAAQ,CAAc,UAAwB,EAAE;IAC5D,MAAM,EAAE,SAAS,GAAG,MAAM,EAAE,QAAQ,GAAG,GAAG,EAAE,GAAG,OAAO,CAAC;IACvD,MAAM,cAAc,GAAG,SAAS,KAAK,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;IAE/D,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;QACd,IAAI,EAAE,YAAY,WAAW,EAAE,CAAC;YAC5B,EAAE,CAAC,KAAK,CAAC,UAAU,GAAG,WAAW,CAAC;YAClC,EAAE,CAAC,KAAK,CAAC,UAAU,GAAG,aAAa,QAAQ,mCAAmC,CAAC;YAE/E,qBAAqB,CAAC,GAAG,EAAE;gBACvB,EAAE,CAAC,KAAK,CAAC,SAAS,GAAG,cAAc,cAAc,GAAG,CAAC;YACzD,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,YAAY,CAAC,kBAAkB,EAAE,QAAQ,CAAC,CAAC;QAClD,CAAC;IACL,CAAC,CAAC,CAAC;IACH,OAAO,IAAI,CAAC;AAChB,CAAC;AAED;;;;;;;;;GASG;AACH,SAAgB,WAAW,CAAc,UAAwB,EAAE;IAC/D,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;QACd,IAAI,EAAE,YAAY,WAAW,EAAE,CAAC;YAC5B,+DAA+D;YAC/D,MAAM,KAAK,GAAG,EAAE,CAAC,YAAY,CAAC,kBAAkB,CAAC,CAAC;YAClD,MAAM,gBAAgB,GAAG,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC;YAE5C,kDAAkD;YAClD,IAAI,KAAK,KAAK,MAAM,IAAI,gBAAgB,KAAK,gBAAgB,EAAE,CAAC;gBAC5D,wDAAwD;gBACxD,MAAM,OAAO,GAAG,IAAK,IAAI,CAAC,WAAmB,CAAC,EAAE,CAAC,CAAC;gBAClD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YAC9B,CAAC;iBAAM,CAAC;gBACJ,MAAM,OAAO,GAAG,IAAK,IAAI,CAAC,WAAmB,CAAC,EAAE,CAAC,CAAC;gBAClD,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YAC7B,CAAC;QACL,CAAC;IACL,CAAC,CAAC,CAAC;IACH,OAAO,IAAI,CAAC;AAChB,CAAC"}
@@ -1,118 +0,0 @@
1
- "use strict";
2
- /**
3
- * @file src/modules/effects/vertical.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 Effects
10
- * @description
11
- * * 🇬🇧: Methods for vertical sliding effects (slideDown, slideUp, slideToggle).
12
- * * 🇩🇪: Methoden für vertikale Slide-Effekte (slideDown, slideUp, slideToggle).
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.slideDown = slideDown;
19
- exports.slideUp = slideUp;
20
- exports.slideToggleBox = slideToggleBox;
21
- /**
22
- * * 🇬🇧: Slides an element down (animates height from 0 to auto). Sets `display` property and animates height.
23
- * * 🇩🇪: Fährt ein Element vertikal aus (animiert die Höhe von 0 auf auto). Setzt `display` und animiert die Höhe.
24
- * @param options
25
- * * 🇬🇧: Animation duration and display type.
26
- * * 🇩🇪: Dauer der Animation und Display-Typ.
27
- * @returns
28
- * * 🇬🇧: The current jBase instance.
29
- * * 🇩🇪: Die aktuelle jBase-Instanz.
30
- */
31
- function slideDown(options = {}) {
32
- const { duration = 300, displayType = 'block' } = options;
33
- this.forEach(el => {
34
- if (el instanceof HTMLElement) {
35
- // 1. If already visible, abort
36
- if (window.getComputedStyle(el).display !== 'none')
37
- return;
38
- // 2. Make element visible but hidden to measure height
39
- el.style.display = displayType;
40
- const height = el.scrollHeight; // Full content height
41
- // 3. Set start values (height to 0)
42
- el.style.height = '0px';
43
- el.style.overflow = 'hidden'; // Important to hide content immediately
44
- el.style.transition = `height ${duration}ms ease-in-out`;
45
- // 4. Force Reflow (browser must realize height is 0)
46
- void el.offsetHeight;
47
- // 5. Set target value (browser animates now)
48
- el.style.height = height + 'px';
49
- // 6. Cleanup after animation
50
- setTimeout(() => {
51
- el.style.height = 'auto'; // Allow responsive resizing
52
- el.style.overflow = 'visible';
53
- el.style.transition = '';
54
- }, duration);
55
- }
56
- });
57
- return this;
58
- }
59
- /**
60
- * * 🇬🇧: Slides an element up (animates height to 0). Sets `display: none` after animation.
61
- * * 🇩🇪: Fährt ein Element vertikal ein (animiert die Höhe auf 0). Setzt am Ende `display: none`.
62
- * @param options
63
- * * 🇬🇧: Animation duration.
64
- * * 🇩🇪: Dauer der Animation.
65
- * @returns
66
- * * 🇬🇧: The current jBase instance.
67
- * * 🇩🇪: Die aktuelle jBase-Instanz.
68
- */
69
- function slideUp(options = {}) {
70
- const { duration = 300 } = options;
71
- this.forEach(el => {
72
- if (el instanceof HTMLElement) {
73
- // 1. Fix current height (in case it is auto)
74
- el.style.height = el.scrollHeight + 'px';
75
- el.style.overflow = 'hidden';
76
- el.style.transition = `height ${duration}ms ease-in-out`;
77
- // 2. Force Reflow
78
- void el.offsetHeight;
79
- // 3. Animate to 0
80
- el.style.height = '0px';
81
- // 4. Hide after animation
82
- setTimeout(() => {
83
- el.style.display = 'none';
84
- el.style.height = '';
85
- el.style.overflow = '';
86
- el.style.transition = '';
87
- }, duration);
88
- }
89
- });
90
- return this;
91
- }
92
- /**
93
- * * 🇬🇧: Toggles between slideDown and slideUp based on the display state.
94
- * * 🇩🇪: Wechselt zwischen slideDown und slideUp basierend auf dem display-Status.
95
- * @param options
96
- * * 🇬🇧: Animation duration.
97
- * * 🇩🇪: Dauer der Animation.
98
- * @returns
99
- * * 🇬🇧: The current jBase instance.
100
- * * 🇩🇪: Die aktuelle jBase-Instanz.
101
- */
102
- function slideToggleBox(options = {}) {
103
- this.forEach(el => {
104
- if (el instanceof HTMLElement) {
105
- const display = window.getComputedStyle(el).display;
106
- // Wrap element in new jBase instance to call slideUp/Down
107
- const wrapper = new this.constructor(el);
108
- if (display === 'none') {
109
- wrapper.slideDown(options);
110
- }
111
- else {
112
- wrapper.slideUp(options);
113
- }
114
- }
115
- });
116
- return this;
117
- }
118
- //# sourceMappingURL=vertical.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"vertical.js","sourceRoot":"","sources":["../../../src/modules/effects/vertical.ts"],"names":[],"mappings":"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"}
@@ -1,60 +0,0 @@
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
@@ -1 +0,0 @@
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"}
@@ -1,106 +0,0 @@
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
@@ -1 +0,0 @@
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"}
@@ -1,53 +0,0 @@
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
@@ -1 +0,0 @@
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"}
@@ -1,83 +0,0 @@
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
@@ -1 +0,0 @@
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"}
@@ -1,40 +0,0 @@
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
@@ -1 +0,0 @@
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"}