rosinterface 1.3.0 → 1.3.2

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 (78) hide show
  1. package/dist/cli/Generate.js +20 -1
  2. package/dist/cli/Generate.js.map +1 -1
  3. package/dist/cli/SchemaInferrer.d.ts +9 -0
  4. package/dist/cli/SchemaInferrer.js +22 -3
  5. package/dist/cli/SchemaInferrer.js.map +1 -1
  6. package/dist/client/CommandBuilder.d.ts +337 -2
  7. package/dist/client/CommandBuilder.js +483 -15
  8. package/dist/client/CommandBuilder.js.map +1 -1
  9. package/dist/client/MikrotikClient.d.ts +349 -1
  10. package/dist/client/MikrotikClient.js +364 -1
  11. package/dist/client/MikrotikClient.js.map +1 -1
  12. package/dist/client/MikrotikPool.d.ts +30 -0
  13. package/dist/client/MikrotikPool.js +31 -1
  14. package/dist/client/MikrotikPool.js.map +1 -1
  15. package/dist/client/MikrotikSwarm.d.ts +167 -0
  16. package/dist/client/MikrotikSwarm.js +178 -1
  17. package/dist/client/MikrotikSwarm.js.map +1 -1
  18. package/dist/client/MikrotikTransaction.d.ts +27 -0
  19. package/dist/client/MikrotikTransaction.js +28 -0
  20. package/dist/client/MikrotikTransaction.js.map +1 -1
  21. package/dist/client/ResultParser.d.ts +19 -0
  22. package/dist/client/ResultParser.js +31 -0
  23. package/dist/client/ResultParser.js.map +1 -1
  24. package/dist/client/SnapshotSubscription.d.ts +139 -0
  25. package/dist/client/SnapshotSubscription.js +169 -0
  26. package/dist/client/SnapshotSubscription.js.map +1 -1
  27. package/dist/core/Auth.d.ts +31 -0
  28. package/dist/core/Auth.js +46 -1
  29. package/dist/core/Auth.js.map +1 -1
  30. package/dist/core/CircuitBreaker.d.ts +26 -0
  31. package/dist/core/CircuitBreaker.js +26 -0
  32. package/dist/core/CircuitBreaker.js.map +1 -1
  33. package/dist/core/HttpConstants.d.ts +29 -16
  34. package/dist/core/HttpConstants.js +23 -7
  35. package/dist/core/HttpConstants.js.map +1 -1
  36. package/dist/core/OfflineQueue.d.ts +16 -0
  37. package/dist/core/OfflineQueue.js +10 -0
  38. package/dist/core/OfflineQueue.js.map +1 -1
  39. package/dist/core/RateLimiter.d.ts +24 -0
  40. package/dist/core/RateLimiter.js +43 -7
  41. package/dist/core/RateLimiter.js.map +1 -1
  42. package/dist/core/RestProtocol.d.ts +9 -0
  43. package/dist/core/RestProtocol.js +16 -1
  44. package/dist/core/RestProtocol.js.map +1 -1
  45. package/dist/core/RosError.d.ts +15 -0
  46. package/dist/core/RosError.js +36 -1
  47. package/dist/core/RosError.js.map +1 -1
  48. package/dist/core/RosProtocol.d.ts +21 -0
  49. package/dist/core/RosProtocol.js +40 -1
  50. package/dist/core/RosProtocol.js.map +1 -1
  51. package/dist/core/SchemaMapper.d.ts +41 -0
  52. package/dist/core/SchemaMapper.js +57 -2
  53. package/dist/core/SchemaMapper.js.map +1 -1
  54. package/dist/core/SocketClient.d.ts +34 -0
  55. package/dist/core/SocketClient.js +51 -3
  56. package/dist/core/SocketClient.js.map +1 -1
  57. package/dist/features/FileManager.d.ts +50 -0
  58. package/dist/features/FileManager.js +72 -6
  59. package/dist/features/FileManager.js.map +1 -1
  60. package/dist/features/LiveCollection.d.ts +51 -0
  61. package/dist/features/LiveCollection.js +69 -0
  62. package/dist/features/LiveCollection.js.map +1 -1
  63. package/dist/features/PrometheusExporter.d.ts +18 -1
  64. package/dist/features/PrometheusExporter.js +21 -1
  65. package/dist/features/PrometheusExporter.js.map +1 -1
  66. package/dist/index.d.ts +66 -0
  67. package/dist/index.js +78 -0
  68. package/dist/index.js.map +1 -1
  69. package/dist/types/index.d.ts +4 -0
  70. package/dist/types/index.js +24 -0
  71. package/dist/types/index.js.map +1 -1
  72. package/dist/utils/Helpers.d.ts +16 -0
  73. package/dist/utils/Helpers.js +17 -1
  74. package/dist/utils/Helpers.js.map +1 -1
  75. package/dist/utils/MikrotikCollection.d.ts +85 -0
  76. package/dist/utils/MikrotikCollection.js +97 -1
  77. package/dist/utils/MikrotikCollection.js.map +1 -1
  78. package/package.json +2 -2
@@ -1,19 +1,51 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.MikrotikCollection = void 0;
4
+ /**
5
+ * A generic wrapper around MikroTik result arrays to provide O(1) lookups,
6
+ * advanced grouping, pagination, and efficient sorting algorithms.
7
+ *
8
+ * @template T The type of the items in the collection (usually a MikroTik resource interface).
9
+ */
4
10
  class MikrotikCollection {
11
+ /**
12
+ * Creates a new instance of MikrotikCollection.
13
+ * @param items The raw array of data received from the router.
14
+ */
5
15
  constructor(items) {
6
16
  this._items = items;
7
17
  }
18
+ // ==========================================
19
+ // OUTPUT FINALIZERS (JSON Friendly)
20
+ // ==========================================
21
+ /**
22
+ * Returns the raw underlying array.
23
+ * Standard output for JSON responses.
24
+ */
8
25
  toArray() {
9
26
  return this._items;
10
27
  }
28
+ /**
29
+ * Alias for `toArray()`.
30
+ * Provides a familiar syntax for developers coming from other frameworks.
31
+ */
11
32
  toList() {
12
33
  return this._items;
13
34
  }
35
+ /**
36
+ * Returns the current instance.
37
+ * Useful for maintaining chain consistency in promises.
38
+ */
14
39
  toCollection() {
15
40
  return this;
16
41
  }
42
+ /**
43
+ * Converts the collection into a plain Object (Dictionary) indexed by a specific key.
44
+ * Useful for O(1) lookups on the frontend.
45
+ *
46
+ * @param key The property to use as the index (e.g., 'name', '.id').
47
+ * @returns A plain object where keys are the property values.
48
+ */
17
49
  toMap(key) {
18
50
  return this._items.reduce((acc, item) => {
19
51
  const indexValue = String(item[key]);
@@ -21,6 +53,13 @@ class MikrotikCollection {
21
53
  return acc;
22
54
  }, {});
23
55
  }
56
+ /**
57
+ * Groups items into a plain Object where keys are values of the specified property.
58
+ * Ideal for generating reports or charts (e.g., grouping users by 'profile').
59
+ *
60
+ * @param field The property to group by.
61
+ * @returns A plain object where keys are the group names and values are arrays of items.
62
+ */
24
63
  toGrouped(field) {
25
64
  return this._items.reduce((groups, item) => {
26
65
  const groupKey = String(item[field]);
@@ -31,6 +70,13 @@ class MikrotikCollection {
31
70
  return groups;
32
71
  }, {});
33
72
  }
73
+ /**
74
+ * Performs in-memory pagination on the results.
75
+ *
76
+ * @param page The current page number (1-based index).
77
+ * @param pageSize The number of items per page.
78
+ * @returns A subset of the original array for the requested page.
79
+ */
34
80
  toPages(page, pageSize) {
35
81
  if (page < 1)
36
82
  page = 1;
@@ -38,15 +84,33 @@ class MikrotikCollection {
38
84
  const end = start + pageSize;
39
85
  return this._items.slice(start, end);
40
86
  }
87
+ // ==========================================
88
+ // ACCESSORS AND HELPERS
89
+ // ==========================================
90
+ /**
91
+ * Returns the first item in the collection or null if empty.
92
+ */
41
93
  first() {
42
94
  return this._items.length > 0 ? this._items[0] : null;
43
95
  }
96
+ /**
97
+ * Returns the last item in the collection or null if empty.
98
+ */
44
99
  last() {
45
100
  return this._items.length > 0 ? this._items[this._items.length - 1] : null;
46
101
  }
102
+ /**
103
+ * Returns the total number of items in the collection.
104
+ */
47
105
  count() {
48
106
  return this._items.length;
49
107
  }
108
+ /**
109
+ * Converts the collection into a native JavaScript Map.
110
+ * More efficient for massive internal lookups but not automatically serializable to JSON.
111
+ *
112
+ * @param key The property to use as the Map key.
113
+ */
50
114
  keyBy(key) {
51
115
  const map = new Map();
52
116
  for (const item of this._items) {
@@ -54,6 +118,12 @@ class MikrotikCollection {
54
118
  }
55
119
  return map;
56
120
  }
121
+ /**
122
+ * Groups items into a Map where values are new MikrotikCollection instances.
123
+ * Allows chaining further operations on specific groups.
124
+ *
125
+ * @param key The property to group by.
126
+ */
57
127
  groupBy(key) {
58
128
  const map = new Map();
59
129
  for (const item of this._items) {
@@ -69,16 +139,33 @@ class MikrotikCollection {
69
139
  }
70
140
  return collectionMap;
71
141
  }
142
+ // ==========================================
143
+ // SORTING AND FILTERING ALGORITHMS
144
+ // ==========================================
145
+ /**
146
+ * Filters the collection using a predicate function.
147
+ * @param predicate A function that accepts an item and returns true to keep it.
148
+ * @returns A new MikrotikCollection instance with the filtered items.
149
+ */
72
150
  filter(predicate) {
73
151
  return new MikrotikCollection(this._items.filter(predicate));
74
152
  }
153
+ /**
154
+ * Sorts the collection by a specific key using Timsort (Node.js default).
155
+ * Handles both numbers and strings (case-insensitive) correctly.
156
+ *
157
+ * @param key The property to sort by.
158
+ * @param direction 'asc' (ascending) or 'desc' (descending).
159
+ */
75
160
  sortBy(key, direction = 'asc') {
76
161
  this._items.sort((a, b) => {
77
162
  const valA = a[key];
78
163
  const valB = b[key];
164
+ // Numeric Sort
79
165
  if (typeof valA === 'number' && typeof valB === 'number') {
80
166
  return direction === 'asc' ? valA - valB : valB - valA;
81
167
  }
168
+ // String Sort (Case Insensitive)
82
169
  const strA = String(valA).toLowerCase();
83
170
  const strB = String(valB).toLowerCase();
84
171
  if (strA < strB)
@@ -92,6 +179,11 @@ class MikrotikCollection {
92
179
  isEmpty() {
93
180
  return this._items.length === 0;
94
181
  }
182
+ /**
183
+ * Specifically sorts IP addresses numerically.
184
+ * Solves the issue where "10.0.0.2" comes after "10.0.0.10" in standard string sort.
185
+ * Handles CIDR notation (e.g., 192.168.1.1/24) automatically.
186
+ */
95
187
  sortByIp(key, direction = 'asc') {
96
188
  this._items.sort((a, b) => {
97
189
  const ipA = String(a[key]);
@@ -102,10 +194,14 @@ class MikrotikCollection {
102
194
  });
103
195
  return this;
104
196
  }
197
+ /**
198
+ * Converts an IPv4 string into a long integer for accurate numerical comparison.
199
+ * @param ip The IP address string (e.g., "192.168.1.1" or "10.5.5.0/24").
200
+ */
105
201
  ipToLong(ip) {
106
202
  if (!ip || ip.trim() === '')
107
203
  return 0;
108
- const cleanIp = ip.split('/')[0];
204
+ const cleanIp = ip.split('/')[0]; // Remove CIDR suffix
109
205
  return cleanIp.split('.').reduce((acc, octet) => (acc << 8) + parseInt(octet, 10), 0) >>> 0;
110
206
  }
111
207
  }
@@ -1 +1 @@
1
- {"version":3,"file":"MikrotikCollection.js","sourceRoot":"","sources":["../../src/utils/MikrotikCollection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MikrotikCollection.js","sourceRoot":"","sources":["../../src/utils/MikrotikCollection.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "rosinterface",
3
- "version": "1.3.0",
3
+ "version": "1.3.2",
4
4
  "description": "High-performance, Offline-First Mikrotik RouterOS API Client for Enterprise.",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -44,7 +44,7 @@
44
44
  "dotenv": "^16.6.1",
45
45
  "fs-extra": "^11.3.3",
46
46
  "ora": "^9.0.0",
47
- "rosinterface": "^1.1.0",
47
+ "rosinterface": "^1.3.1",
48
48
  "undici": "^7.18.2"
49
49
  },
50
50
  "devDependencies": {