@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,88 +0,0 @@
1
- "use strict";
2
- /**
3
- * @file src/modules/css/classes.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 CSS
10
- * @description
11
- * * πŸ‡¬πŸ‡§: Methods for manipulating CSS classes (add, remove, toggle, has).
12
- * * πŸ‡©πŸ‡ͺ: Methoden zur Manipulation von CSS-Klassen (add, remove, toggle, has).
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.addClass = addClass;
19
- exports.removeClass = removeClass;
20
- exports.toggleClass = toggleClass;
21
- exports.hasClass = hasClass;
22
- /**
23
- * * πŸ‡¬πŸ‡§: Adds one or more CSS classes to each element in the collection.
24
- * * πŸ‡©πŸ‡ͺ: FΓΌgt jedem Element in der Sammlung eine oder mehrere CSS-Klassen hinzu.
25
- * @param classNames
26
- * * πŸ‡¬πŸ‡§: One or more class names to be added
27
- * * πŸ‡©πŸ‡ͺ: Eine oder mehrere Klassennamen, die hinzugefΓΌgt werden sollen
28
- * @returns
29
- * * πŸ‡¬πŸ‡§: The current jBase instance for method chaining
30
- * * πŸ‡©πŸ‡ͺ: Die aktuelle jBase-Instanz fΓΌr Method-Chaining
31
- */
32
- function addClass(...classNames) {
33
- this.forEach(el => {
34
- if (el instanceof Element)
35
- el.classList.add(...classNames);
36
- });
37
- return this;
38
- }
39
- /**
40
- * * πŸ‡¬πŸ‡§: Removes one or more CSS classes from each element in the collection.
41
- * * πŸ‡©πŸ‡ͺ: Entfernt eine oder mehrere CSS-Klassen von jedem Element in der Sammlung.
42
- * @param classNames
43
- * * πŸ‡¬πŸ‡§: One or more class names to be removed
44
- * * πŸ‡©πŸ‡ͺ: Eine oder mehrere Klassennamen, die entfernt werden sollen
45
- * @returns
46
- * * πŸ‡¬πŸ‡§: The current jBase instance for method chaining
47
- * * πŸ‡©πŸ‡ͺ: Die aktuelle jBase-Instanz fΓΌr Method-Chaining
48
- */
49
- function removeClass(...classNames) {
50
- this.forEach(el => {
51
- if (el instanceof Element)
52
- el.classList.remove(...classNames);
53
- });
54
- return this;
55
- }
56
- /**
57
- * * πŸ‡¬πŸ‡§: Toggles a CSS class (adds if missing, removes if present) for each element.
58
- * * πŸ‡©πŸ‡ͺ: Wechselt eine CSS-Klasse (fΓΌgt hinzu wenn fehlt, entfernt wenn vorhanden).
59
- * @param className
60
- * * πŸ‡¬πŸ‡§: The class name to toggle.
61
- * * πŸ‡©πŸ‡ͺ: Der Klassenname, der gewechselt werden soll.
62
- * @returns
63
- * * πŸ‡¬πŸ‡§: The current jBase instance for method chaining.
64
- * * πŸ‡©πŸ‡ͺ: Die aktuelle jBase-Instanz fΓΌr Method-Chaining.
65
- */
66
- function toggleClass(className) {
67
- this.forEach(el => {
68
- if (el instanceof Element)
69
- el.classList.toggle(className);
70
- });
71
- return this;
72
- }
73
- /**
74
- * * πŸ‡¬πŸ‡§: Checks if at least one element in the collection has the specified class.
75
- * * πŸ‡©πŸ‡ͺ: PrΓΌft, ob mindestens ein Element in der Sammlung die angegebene Klasse besitzt.
76
- * @param className
77
- * * πŸ‡¬πŸ‡§: The class name to check for.
78
- * * πŸ‡©πŸ‡ͺ: Der Klassenname, nach dem gesucht werden soll.
79
- * @returns
80
- * * πŸ‡¬πŸ‡§: True if the class exists on at least one element, otherwise false.
81
- * * πŸ‡©πŸ‡ͺ: True, wenn die Klasse bei mindestens einem Element existiert, sonst False.
82
- */
83
- function hasClass(className) {
84
- return this.some(el => {
85
- return (el instanceof Element) && el.classList.contains(className);
86
- });
87
- }
88
- //# sourceMappingURL=classes.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"classes.js","sourceRoot":"","sources":["../../../src/modules/css/classes.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;AAcH,4BAKC;AAYD,kCAKC;AAYD,kCAKC;AAYD,4BAIC;AAjED;;;;;;;;;GASG;AACH,SAAgB,QAAQ,CAAc,GAAG,UAAoB;IACzD,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;QACd,IAAI,EAAE,YAAY,OAAO;YAAE,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,CAAC;IAC/D,CAAC,CAAC,CAAC;IACH,OAAO,IAAI,CAAC;AAChB,CAAC;AAED;;;;;;;;;GASG;AACH,SAAgB,WAAW,CAAc,GAAG,UAAoB;IAC5D,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;QACd,IAAI,EAAE,YAAY,OAAO;YAAE,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,UAAU,CAAC,CAAC;IAClE,CAAC,CAAC,CAAC;IACH,OAAO,IAAI,CAAC;AAChB,CAAC;AAED;;;;;;;;;GASG;AACH,SAAgB,WAAW,CAAc,SAAiB;IACtD,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;QACd,IAAI,EAAE,YAAY,OAAO;YAAE,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAC9D,CAAC,CAAC,CAAC;IACH,OAAO,IAAI,CAAC;AAChB,CAAC;AAED;;;;;;;;;GASG;AACH,SAAgB,QAAQ,CAAc,SAAiB;IACnD,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;QAClB,OAAO,CAAC,EAAE,YAAY,OAAO,CAAC,IAAI,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IACvE,CAAC,CAAC,CAAC;AACP,CAAC"}
@@ -1,33 +0,0 @@
1
- "use strict";
2
- /**
3
- * @file src/modules/css/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 CSS
10
- * @description
11
- * * πŸ‡¬πŸ‡§: Central entry point for CSS operations. Aggregates class and style manipulation methods.
12
- * * πŸ‡©πŸ‡ͺ: Zentraler Einstiegspunkt fΓΌr CSS-Operationen. Aggregiert Methoden zur Klassen- und Style-Manipulation.
13
- * @requires ./classes
14
- * * πŸ‡¬πŸ‡§: Class manipulation methods (addClass, removeClass, etc.).
15
- * * πŸ‡©πŸ‡ͺ: Methoden zur Klassen-Manipulation (addClass, removeClass, etc.).
16
- * @requires ./styles
17
- * * πŸ‡¬πŸ‡§: Style manipulation methods (css).
18
- * * πŸ‡©πŸ‡ͺ: Methoden zur Style-Manipulation (css).
19
- */
20
- Object.defineProperty(exports, "__esModule", { value: true });
21
- exports.cssMethods = void 0;
22
- const tslib_1 = require("tslib");
23
- const classMethods = tslib_1.__importStar(require("./classes"));
24
- const styleMethods = tslib_1.__importStar(require("./styles"));
25
- /**
26
- * * πŸ‡¬πŸ‡§: Aggregation of all CSS methods. This object bundles functions for class manipulation and style manipulation. It is exported to extend the jBase prototype centrally via Object.assign.
27
- * * πŸ‡©πŸ‡ͺ: Aggregation aller CSS-Methoden. Dieses Objekt bΓΌndelt die Funktionen fΓΌr Klassen- und Style-Manipulation. Es wird exportiert, um via Object.assign den jBase-Prototyp zentral zu erweitern.
28
- */
29
- exports.cssMethods = {
30
- ...classMethods,
31
- ...styleMethods
32
- };
33
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/modules/css/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;GAiBG;;;;AAEH,gEAA0C;AAC1C,+DAAyC;AAEzC;;;GAGG;AACU,QAAA,UAAU,GAAG;IACtB,GAAG,YAAY;IACf,GAAG,YAAY;CAClB,CAAC"}
@@ -1,49 +0,0 @@
1
- "use strict";
2
- /**
3
- * @file src/modules/css/styles.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 CSS
10
- * @description
11
- * * πŸ‡¬πŸ‡§: Methods for getting and setting inline CSS styles.
12
- * * πŸ‡©πŸ‡ͺ: Methoden zum Lesen und Setzen von Inline-CSS-Styles.
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.css = css;
19
- /**
20
- * * πŸ‡¬πŸ‡§: Sets or gets the value of a style property for the selected elements.
21
- * * πŸ‡©πŸ‡ͺ: Setzt oder liest den Wert einer Stileigenschaft fΓΌr die ausgewΓ€hlten Elemente.
22
- * @param property
23
- * * πŸ‡¬πŸ‡§: The CSS property name (camelCase).
24
- * * πŸ‡©πŸ‡ͺ: Der Name der CSS-Eigenschaft (camelCase).
25
- * @param value
26
- * * πŸ‡¬πŸ‡§: (Optional) The value to set. If undefined, the method acts as a getter.
27
- * * πŸ‡©πŸ‡ͺ: (Optional) Der zu setzende Wert. Wenn undefined, fungiert die Methode als Getter.
28
- * @returns
29
- * * πŸ‡¬πŸ‡§: The computed style value (string) if acting as a getter, or the current jBase instance if setting.
30
- * * πŸ‡©πŸ‡ͺ: Der berechnete Stilwert (String) wenn als Getter genutzt, sonst die aktuelle jBase-Instanz.
31
- */
32
- function css(property, value) {
33
- // GETTER
34
- if (value === undefined) {
35
- const el = this[0];
36
- if (el instanceof HTMLElement || el instanceof SVGElement) {
37
- return window.getComputedStyle(el)[property];
38
- }
39
- return '';
40
- }
41
- // SETTER
42
- this.forEach(el => {
43
- if (el instanceof HTMLElement || el instanceof SVGElement) {
44
- el.style[property] = value;
45
- }
46
- });
47
- return this;
48
- }
49
- //# sourceMappingURL=styles.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../src/modules/css/styles.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;AAiBH,kBAiBC;AA9BD;;;;;;;;;;;;GAYG;AACH,SAAgB,GAAG,CAAc,QAAgB,EAAE,KAAuB;IACtE,SAAS;IACT,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACtB,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACnB,IAAI,EAAE,YAAY,WAAW,IAAI,EAAE,YAAY,UAAU,EAAE,CAAC;YACxD,OAAO,MAAM,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC,QAAe,CAAC,CAAC;QACxD,CAAC;QACD,OAAO,EAAE,CAAC;IACd,CAAC;IAED,SAAS;IACT,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;QACd,IAAI,EAAE,YAAY,WAAW,IAAI,EAAE,YAAY,UAAU,EAAE,CAAC;YACvD,EAAE,CAAC,KAAa,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC;QACxC,CAAC;IACL,CAAC,CAAC,CAAC;IACH,OAAO,IAAI,CAAC;AAChB,CAAC"}
@@ -1,177 +0,0 @@
1
- "use strict";
2
- /**
3
- * @file src/modules/data/arrays.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 Data
10
- * @description
11
- * * πŸ‡¬πŸ‡§: Utility functions for array manipulation and data processing.
12
- * * πŸ‡©πŸ‡ͺ: Hilfsfunktionen fΓΌr Array-Manipulation und Datenverarbeitung.
13
- * @requires ./types
14
- * * πŸ‡¬πŸ‡§: Depends on match logic and types.
15
- * * πŸ‡©πŸ‡ͺ: HΓ€ngt von Match-Logik und Typen ab.
16
- */
17
- Object.defineProperty(exports, "__esModule", { value: true });
18
- exports.find = exports.remove = void 0;
19
- exports.chunk = chunk;
20
- exports.merge = merge;
21
- exports.add = add;
22
- const types_1 = require("./types");
23
- /**
24
- * * πŸ‡¬πŸ‡§: Splits an array into smaller groups (chunks). Ideal for pagination or grid layouts.
25
- * * πŸ‡©πŸ‡ͺ: Teilt ein Array in kleinere Gruppen (Chunks) auf. Ideal fΓΌr Pagination oder Grid-Layouts.
26
- * @example
27
- * chunk([1, 2, 3, 4, 5], 2) // => [[1, 2], [3, 4], [5]]
28
- * @param array
29
- * * πŸ‡¬πŸ‡§: The source array.
30
- * * πŸ‡©πŸ‡ͺ: Das Ursprungs-Array.
31
- * @param size
32
- * * πŸ‡¬πŸ‡§: The size of each chunk.
33
- * * πŸ‡©πŸ‡ͺ: Die Grâße jedes Chunks.
34
- * @returns
35
- * * πŸ‡¬πŸ‡§: An array of arrays.
36
- * * πŸ‡©πŸ‡ͺ: Ein Array aus Arrays.
37
- */
38
- function chunk(array, size) {
39
- const chunks = [];
40
- for (let i = 0; i < array.length; i += size) {
41
- chunks.push(array.slice(i, i + size));
42
- }
43
- return chunks;
44
- }
45
- /**
46
- * * πŸ‡¬πŸ‡§: Merges multiple arrays into a single flat array.
47
- * * πŸ‡©πŸ‡ͺ: FΓΌhrt mehrere Arrays zu einem einzigen flachen Array zusammen.
48
- * @param arrays
49
- * * πŸ‡¬πŸ‡§: A list of arrays.
50
- * * πŸ‡©πŸ‡ͺ: Eine Liste von Arrays.
51
- * @returns
52
- * * πŸ‡¬πŸ‡§: A new, merged array.
53
- * * πŸ‡©πŸ‡ͺ: Ein neues, zusammengefΓΌgtes Array.
54
- */
55
- function merge(...arrays) {
56
- return [].concat(...arrays);
57
- }
58
- /**
59
- * * πŸ‡¬πŸ‡§: Safely adds an element at a specific position without mutating the original array (Immutable).
60
- * * πŸ‡©πŸ‡ͺ: FΓΌgt ein Element sicher an einer bestimmten Position hinzu, ohne das Original-Array zu mutieren (Immutable).
61
- * @param array
62
- * * πŸ‡¬πŸ‡§: The array.
63
- * * πŸ‡©πŸ‡ͺ: Das Array.
64
- * @param item
65
- * * πŸ‡¬πŸ‡§: The item to add.
66
- * * πŸ‡©πŸ‡ͺ: Das hinzuzufΓΌgende Element.
67
- * @param index
68
- * * πŸ‡¬πŸ‡§: The position (default: end). Negative values count from the back (-1 = before the last one).
69
- * * πŸ‡©πŸ‡ͺ: Die Position (Standard: Ende). Negative Werte zΓ€hlen von hinten (-1 = vor dem letzten).
70
- * @returns
71
- * * πŸ‡¬πŸ‡§: A new array including the element.
72
- * * πŸ‡©πŸ‡ͺ: Ein neues Array inklusive dem Element.
73
- */
74
- function add(array, item, index = array.length) {
75
- const copy = [...array];
76
- const idx = index < 0 ? array.length + index + 1 : index;
77
- copy.splice(idx, 0, item);
78
- return copy;
79
- }
80
- /**
81
- * * πŸ‡¬πŸ‡§: Removes elements based on index or match logic.
82
- * * πŸ‡©πŸ‡ͺ: Entfernt Elemente basierend auf Index oder Match-Logik.
83
- */
84
- exports.remove = {
85
- /**
86
- * * πŸ‡¬πŸ‡§: Removes an element at a specific index.
87
- * * πŸ‡©πŸ‡ͺ: Entfernt ein Element an einem spezifischen Index.
88
- * @param array
89
- * * πŸ‡¬πŸ‡§: The array.
90
- * * πŸ‡©πŸ‡ͺ: Das Array.
91
- * @param index
92
- * * πŸ‡¬πŸ‡§: The index (negative values allowed).
93
- * * πŸ‡©πŸ‡ͺ: Der Index (negativ mΓΆglich).
94
- */
95
- at(array, index) {
96
- const copy = [...array];
97
- const idx = index < 0 ? array.length + index : index;
98
- if (idx >= 0 && idx < copy.length) {
99
- copy.splice(idx, 1);
100
- }
101
- return copy;
102
- },
103
- /**
104
- * * πŸ‡¬πŸ‡§: Removes the first element.
105
- * * πŸ‡©πŸ‡ͺ: Entfernt das erste Element.
106
- */
107
- first(array) { return array.slice(1); },
108
- /**
109
- * * πŸ‡¬πŸ‡§: Removes the last element.
110
- * * πŸ‡©πŸ‡ͺ: Entfernt das letzte Element.
111
- */
112
- last(array) { return array.slice(0, -1); },
113
- /**
114
- * * πŸ‡¬πŸ‡§: Removes all elements matching a query condition.
115
- * * πŸ‡©πŸ‡ͺ: Entfernt alle Elemente, die einer Suchbedingung entsprechen.
116
- * @example
117
- * remove.byMatch(users, 'Admin', 'exact', 'role')
118
- * @param array
119
- * * πŸ‡¬πŸ‡§: The array.
120
- * * πŸ‡©πŸ‡ͺ: Das Array.
121
- * @param query
122
- * * πŸ‡¬πŸ‡§: The search query.
123
- * * πŸ‡©πŸ‡ͺ: Der Suchbegriff.
124
- * @param mode
125
- * * πŸ‡¬πŸ‡§: The comparison mode ('exact', 'contains', 'startsWith', 'endsWith').
126
- * * πŸ‡©πŸ‡ͺ: Der Vergleichsmodus ('exact', 'contains', 'startsWith', 'endsWith').
127
- * @param key
128
- * * πŸ‡¬πŸ‡§: (Optional) The object key if it is an array of objects.
129
- * * πŸ‡©πŸ‡ͺ: (Optional) Der ObjektschlΓΌssel, falls es ein Array von Objekten ist.
130
- */
131
- byMatch(array, query, mode = 'exact', key) {
132
- return array.filter(item => {
133
- const val = key ? item[key] : item;
134
- return !(0, types_1.checkMatch)(val, query, mode);
135
- });
136
- }
137
- };
138
- /**
139
- * * πŸ‡¬πŸ‡§: Searches for elements in the array.
140
- * * πŸ‡©πŸ‡ͺ: Sucht Elemente im Array.
141
- */
142
- exports.find = {
143
- /**
144
- * * πŸ‡¬πŸ‡§: Finds the index of the first match.
145
- * * πŸ‡©πŸ‡ͺ: Findet den Index des ersten Treffers.
146
- * @returns
147
- * * πŸ‡¬πŸ‡§: Index or -1.
148
- * * πŸ‡©πŸ‡ͺ: Index oder -1.
149
- */
150
- index(array, query, mode = 'exact', key) {
151
- return array.findIndex(item => {
152
- const val = key ? item[key] : item;
153
- return (0, types_1.checkMatch)(val, query, mode);
154
- });
155
- },
156
- /**
157
- * * πŸ‡¬πŸ‡§: Returns all elements matching the condition (Filter).
158
- * * πŸ‡©πŸ‡ͺ: Gibt alle Elemente zurΓΌck, die der Bedingung entsprechen (Filter).
159
- */
160
- all(array, query, mode = 'exact', key) {
161
- return array.filter(item => {
162
- const val = key ? item[key] : item;
163
- return (0, types_1.checkMatch)(val, query, mode);
164
- });
165
- },
166
- /**
167
- * * πŸ‡¬πŸ‡§: Returns the first matching element (or undefined).
168
- * * πŸ‡©πŸ‡ͺ: Gibt das erste gefundene Element zurΓΌck (oder undefined).
169
- */
170
- first(array, query, mode = 'exact', key) {
171
- return array.find(item => {
172
- const val = key ? item[key] : item;
173
- return (0, types_1.checkMatch)(val, query, mode);
174
- });
175
- }
176
- };
177
- //# sourceMappingURL=arrays.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"arrays.js","sourceRoot":"","sources":["../../../src/modules/data/arrays.ts"],"names":[],"mappings":"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"}
@@ -1,33 +0,0 @@
1
- "use strict";
2
- /**
3
- * @file src/modules/data/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 Data
10
- * @description
11
- * * πŸ‡¬πŸ‡§: Central entry point for data manipulation modules. Aggregates array and object utilities.
12
- * * πŸ‡©πŸ‡ͺ: Zentraler Einstiegspunkt fΓΌr Datenmanipulations-Module. Aggregiert Array- und Objekt-Hilfsmethoden.
13
- * @requires ./arrays
14
- * * πŸ‡¬πŸ‡§: Array manipulation methods.
15
- * * πŸ‡©πŸ‡ͺ: Methoden zur Array-Manipulation.
16
- * @requires ./objects
17
- * * πŸ‡¬πŸ‡§: Object manipulation methods.
18
- * * πŸ‡©πŸ‡ͺ: Methoden zur Objekt-Manipulation.
19
- */
20
- Object.defineProperty(exports, "__esModule", { value: true });
21
- exports.data = void 0;
22
- const tslib_1 = require("tslib");
23
- const arrayMethods = tslib_1.__importStar(require("./arrays"));
24
- const objectMethods = tslib_1.__importStar(require("./objects"));
25
- /**
26
- * * πŸ‡¬πŸ‡§: Central data utility object. Bundles array ('arr') and object ('obj') manipulation methods.
27
- * * πŸ‡©πŸ‡ͺ: Zentrales Daten-Utility-Objekt. BΓΌndelt Methoden zur Array- ('arr') und Objekt-Manipulation ('obj').
28
- */
29
- exports.data = {
30
- arr: arrayMethods,
31
- obj: objectMethods
32
- };
33
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/modules/data/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;GAiBG;;;;AAEH,+DAAyC;AACzC,iEAA2C;AAE3C;;;GAGG;AACU,QAAA,IAAI,GAAG;IAChB,GAAG,EAAE,YAAY;IACjB,GAAG,EAAE,aAAa;CACrB,CAAC"}
@@ -1,168 +0,0 @@
1
- "use strict";
2
- /**
3
- * @file src/modules/data/objects.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 Data
10
- * @description
11
- * * πŸ‡¬πŸ‡§: Utility functions for object manipulation (e.g., deep merging, extension).
12
- * * πŸ‡©πŸ‡ͺ: Hilfsfunktionen fΓΌr Objekt-Manipulation (z.B. Deep Merge, Erweiterung).
13
- * @requires ./types
14
- * * πŸ‡¬πŸ‡§: Depends on match logic and types.
15
- * * πŸ‡©πŸ‡ͺ: HΓ€ngt von Match-Logik und Typen ab.
16
- */
17
- Object.defineProperty(exports, "__esModule", { value: true });
18
- exports.find = void 0;
19
- exports.merge = merge;
20
- exports.pick = pick;
21
- exports.omit = omit;
22
- exports.get = get;
23
- exports.set = set;
24
- const types_1 = require("./types");
25
- /**
26
- * * πŸ‡¬πŸ‡§: Recursively merges multiple objects (Deep Merge).
27
- * * πŸ‡©πŸ‡ͺ: FΓΌhrt mehrere Objekte rekursiv zusammen (Deep Merge).
28
- * @example
29
- * merge({ a: 1, b: { x: 1 } }, { b: { y: 2 } }) // => { a: 1, b: { x: 1, y: 2 } }
30
- * @param target
31
- * * πŸ‡¬πŸ‡§: The target object (will be modified!).
32
- * * πŸ‡©πŸ‡ͺ: Das Zielobjekt (wird modifiziert!).
33
- * @param sources
34
- * * πŸ‡¬πŸ‡§: One or more source objects.
35
- * * πŸ‡©πŸ‡ͺ: Ein oder mehrere Quellobjekte.
36
- * @returns
37
- * * πŸ‡¬πŸ‡§: The modified target object.
38
- * * πŸ‡©πŸ‡ͺ: Das modifizierte Zielobjekt.
39
- */
40
- function merge(target, ...sources) {
41
- if (!sources.length)
42
- return target;
43
- const source = sources.shift();
44
- if (isObject(target) && isObject(source)) {
45
- for (const key in source) {
46
- if (key === '__proto__' || key === 'constructor')
47
- continue;
48
- if (isObject(source[key])) {
49
- if (!target[key])
50
- Object.assign(target, { [key]: {} });
51
- merge(target[key], source[key]);
52
- }
53
- else {
54
- Object.assign(target, { [key]: source[key] });
55
- }
56
- }
57
- }
58
- return merge(target, ...sources);
59
- }
60
- /**
61
- * * πŸ‡¬πŸ‡§: Creates a new object containing only the specified keys (Allowlist).
62
- * * πŸ‡©πŸ‡ͺ: Erstellt ein neues Objekt, das nur die angegebenen SchlΓΌssel enthΓ€lt (Allowlist).
63
- * @param obj
64
- * * πŸ‡¬πŸ‡§: The source object.
65
- * * πŸ‡©πŸ‡ͺ: Das Quellobjekt.
66
- * @param keys
67
- * * πŸ‡¬πŸ‡§: Array of keys to keep.
68
- * * πŸ‡©πŸ‡ͺ: Array der SchlΓΌssel, die ΓΌbernommen werden sollen.
69
- * @returns
70
- * * πŸ‡¬πŸ‡§: A new object with selected keys.
71
- * * πŸ‡©πŸ‡ͺ: Ein neues Objekt mit den gewΓ€hlten SchlΓΌsseln.
72
- */
73
- function pick(obj, keys) {
74
- const ret = {};
75
- keys.forEach(key => {
76
- if (key in obj)
77
- ret[key] = obj[key];
78
- });
79
- return ret;
80
- }
81
- /**
82
- * * πŸ‡¬πŸ‡§: Creates a new object containing all keys EXCEPT the specified ones (Blocklist).
83
- * * πŸ‡©πŸ‡ͺ: Erstellt ein neues Objekt, das alle SchlΓΌssel enthΓ€lt AUẞER den angegebenen (Blocklist).
84
- * @param obj
85
- * * πŸ‡¬πŸ‡§: The source object.
86
- * * πŸ‡©πŸ‡ͺ: Das Quellobjekt.
87
- * @param keys
88
- * * πŸ‡¬πŸ‡§: Array of keys to remove.
89
- * * πŸ‡©πŸ‡ͺ: Array der SchlΓΌssel, die entfernt werden sollen.
90
- * @returns
91
- * * πŸ‡¬πŸ‡§: A new object without the specified keys.
92
- * * πŸ‡©πŸ‡ͺ: Ein neues Objekt ohne die angegebenen SchlΓΌssel.
93
- */
94
- function omit(obj, keys) {
95
- const ret = { ...obj };
96
- keys.forEach(key => {
97
- delete ret[key];
98
- });
99
- return ret;
100
- }
101
- /**
102
- * * πŸ‡¬πŸ‡§: Safely retrieves a value from a nested object (Safe Navigation).
103
- * * πŸ‡©πŸ‡ͺ: Liest einen Wert aus einem verschachtelten Objekt sicher aus (Safe Navigation).
104
- * @example
105
- * get(user, 'address.city') // Returns city or undefined
106
- * @param obj
107
- * * πŸ‡¬πŸ‡§: The object.
108
- * * πŸ‡©πŸ‡ͺ: Das Objekt.
109
- * @param path
110
- * * πŸ‡¬πŸ‡§: The path as a dot-notation string.
111
- * * πŸ‡©πŸ‡ͺ: Der Pfad als String mit Punkt-Notation.
112
- * @returns
113
- * * πŸ‡¬πŸ‡§: The found value or undefined.
114
- * * πŸ‡©πŸ‡ͺ: Der gefundene Wert oder undefined.
115
- */
116
- function get(obj, path) {
117
- return path.split('.').reduce((acc, part) => acc && acc[part], obj);
118
- }
119
- /**
120
- * * πŸ‡¬πŸ‡§: Sets a value deeply within a nested object. Creates missing intermediate objects automatically.
121
- * * πŸ‡©πŸ‡ͺ: Setzt einen Wert tief in einem verschachtelten Objekt. Erstellt fehlende Zwischen-Objekte automatisch.
122
- * @param obj
123
- * * πŸ‡¬πŸ‡§: The object to modify.
124
- * * πŸ‡©πŸ‡ͺ: Das zu modifizierende Objekt.
125
- * @param path
126
- * * πŸ‡¬πŸ‡§: The path as a string (e.g., 'settings.theme.color').
127
- * * πŸ‡©πŸ‡ͺ: Der Pfad als String (z.B. 'settings.theme.color').
128
- * @param value
129
- * * πŸ‡¬πŸ‡§: The value to set.
130
- * * πŸ‡©πŸ‡ͺ: Der zu setzende Wert.
131
- */
132
- function set(obj, path, value) {
133
- const parts = path.split('.');
134
- let current = obj;
135
- for (let i = 0; i < parts.length - 1; i++) {
136
- const part = parts[i];
137
- if (!current[part])
138
- current[part] = {};
139
- current = current[part];
140
- }
141
- current[parts[parts.length - 1]] = value;
142
- }
143
- /**
144
- * * πŸ‡¬πŸ‡§: Searches keys or values in the object.
145
- * * πŸ‡©πŸ‡ͺ: Sucht Keys oder Values im Objekt.
146
- */
147
- exports.find = {
148
- /**
149
- * * πŸ‡¬πŸ‡§: Finds all keys matching the query.
150
- * * πŸ‡©πŸ‡ͺ: Findet alle SchlΓΌssel (Keys), die auf den Suchbegriff passen.
151
- * @example find.key(config, 'api_', 'startsWith')
152
- */
153
- key(obj, query, mode = 'exact') {
154
- return Object.keys(obj).filter(key => (0, types_1.checkMatch)(key, query, mode));
155
- },
156
- /**
157
- * * πŸ‡¬πŸ‡§: Finds all values matching the query.
158
- * * πŸ‡©πŸ‡ͺ: Findet alle Werte (Values), die auf den Suchbegriff passen.
159
- */
160
- value(obj, query, mode = 'exact') {
161
- return Object.values(obj).filter(val => (0, types_1.checkMatch)(val, query, mode));
162
- }
163
- };
164
- // Helper
165
- function isObject(item) {
166
- return (item && typeof item === 'object' && !Array.isArray(item));
167
- }
168
- //# sourceMappingURL=objects.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"objects.js","sourceRoot":"","sources":["../../../src/modules/data/objects.ts"],"names":[],"mappings":"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"}
@@ -1,43 +0,0 @@
1
- "use strict";
2
- /**
3
- * @file src/modules/data/types.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 Data
10
- * @description
11
- * * πŸ‡¬πŸ‡§: Type definitions and validation helpers for data structures.
12
- * * πŸ‡©πŸ‡ͺ: Typ-Definitionen und Validierungs-Hilfsmittel fΓΌr Datenstrukturen.
13
- */
14
- Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.checkMatch = checkMatch;
16
- /**
17
- * * πŸ‡¬πŸ‡§: Internal helper to compare values based on the specified mode. Converts values to strings and lowercase for comparison.
18
- * * πŸ‡©πŸ‡ͺ: Interner Helfer zum Vergleichen von Werten basierend auf dem angegebenen Modus. Konvertiert Werte fΓΌr den Vergleich in Strings und Kleinschreibung.
19
- * @param value
20
- * * πŸ‡¬πŸ‡§: The value to check.
21
- * * πŸ‡©πŸ‡ͺ: Der zu prΓΌfende Wert.
22
- * @param query
23
- * * πŸ‡¬πŸ‡§: The search query.
24
- * * πŸ‡©πŸ‡ͺ: Der Suchbegriff.
25
- * @param mode
26
- * * πŸ‡¬πŸ‡§: The matching mode.
27
- * * πŸ‡©πŸ‡ͺ: Der Vergleichsmodus.
28
- * @returns
29
- * * πŸ‡¬πŸ‡§: True if the value matches the query.
30
- * * πŸ‡©πŸ‡ͺ: True, wenn der Wert mit der Query ΓΌbereinstimmt.
31
- */
32
- function checkMatch(value, query, mode) {
33
- const valStr = String(value).toLowerCase();
34
- const queryStr = String(query).toLowerCase();
35
- switch (mode) {
36
- case 'exact': return valStr === queryStr;
37
- case 'startsWith': return valStr.startsWith(queryStr);
38
- case 'endsWith': return valStr.endsWith(queryStr);
39
- case 'contains': return valStr.includes(queryStr);
40
- default: return false;
41
- }
42
- }
43
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/modules/data/types.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;GAWG;;AAwBH,gCAWC;AA3BD;;;;;;;;;;;;;;;GAeG;AACH,SAAgB,UAAU,CAAC,KAAU,EAAE,KAAU,EAAE,IAAe;IAC9D,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;IAC3C,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;IAE7C,QAAQ,IAAI,EAAE,CAAC;QACX,KAAK,OAAO,CAAC,CAAC,OAAO,MAAM,KAAK,QAAQ,CAAC;QACzC,KAAK,YAAY,CAAC,CAAC,OAAO,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QACtD,KAAK,UAAU,CAAC,CAAC,OAAO,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAClD,KAAK,UAAU,CAAC,CAAC,OAAO,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAClD,OAAO,CAAC,CAAC,OAAO,KAAK,CAAC;IAC1B,CAAC;AACL,CAAC"}