xypriss 1.1.3 → 1.2.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 (125) hide show
  1. package/README.md +13 -13
  2. package/dist/cjs/mods/security/src/index.js +35 -12
  3. package/dist/cjs/mods/security/src/index.js.map +1 -1
  4. package/dist/cjs/src/index.js +56 -0
  5. package/dist/cjs/src/index.js.map +1 -1
  6. package/dist/cjs/src/plugins/modules/PluginEngine.js +378 -0
  7. package/dist/cjs/src/plugins/modules/PluginEngine.js.map +1 -0
  8. package/dist/cjs/src/plugins/modules/PluginRegistry.js +339 -0
  9. package/dist/cjs/src/plugins/modules/PluginRegistry.js.map +1 -0
  10. package/dist/cjs/src/plugins/modules/builtin/JWTAuthPlugin.js +591 -0
  11. package/dist/cjs/src/plugins/modules/builtin/JWTAuthPlugin.js.map +1 -0
  12. package/dist/cjs/src/plugins/modules/builtin/ResponseTimePlugin.js +413 -0
  13. package/dist/cjs/src/plugins/modules/builtin/ResponseTimePlugin.js.map +1 -0
  14. package/dist/cjs/src/plugins/modules/builtin/SmartCachePlugin.js +843 -0
  15. package/dist/cjs/src/plugins/modules/builtin/SmartCachePlugin.js.map +1 -0
  16. package/dist/cjs/src/plugins/modules/core/CachePlugin.js +1975 -0
  17. package/dist/cjs/src/plugins/modules/core/CachePlugin.js.map +1 -0
  18. package/dist/cjs/src/plugins/modules/core/PerformancePlugin.js +894 -0
  19. package/dist/cjs/src/plugins/modules/core/PerformancePlugin.js.map +1 -0
  20. package/dist/cjs/src/plugins/modules/core/SecurityPlugin.js +799 -0
  21. package/dist/cjs/src/plugins/modules/core/SecurityPlugin.js.map +1 -0
  22. package/dist/cjs/src/plugins/modules/index.js +304 -0
  23. package/dist/cjs/src/plugins/modules/index.js.map +1 -0
  24. package/dist/cjs/src/plugins/modules/network/builtin/CompressionPlugin.js +410 -0
  25. package/dist/cjs/src/plugins/modules/network/builtin/CompressionPlugin.js.map +1 -0
  26. package/dist/cjs/src/plugins/modules/network/builtin/ConnectionPlugin.js +797 -0
  27. package/dist/cjs/src/plugins/modules/network/builtin/ConnectionPlugin.js.map +1 -0
  28. package/dist/cjs/src/plugins/modules/network/builtin/ProxyPlugin.js +409 -0
  29. package/dist/cjs/src/plugins/modules/network/builtin/ProxyPlugin.js.map +1 -0
  30. package/dist/cjs/src/plugins/modules/network/builtin/RateLimitPlugin.js +606 -0
  31. package/dist/cjs/src/plugins/modules/network/builtin/RateLimitPlugin.js.map +1 -0
  32. package/dist/cjs/src/plugins/modules/network/core/NetworkPlugin.js +225 -0
  33. package/dist/cjs/src/plugins/modules/network/core/NetworkPlugin.js.map +1 -0
  34. package/dist/cjs/src/plugins/modules/network/core/NetworkPluginFactory.js +40 -0
  35. package/dist/cjs/src/plugins/modules/network/core/NetworkPluginFactory.js.map +1 -0
  36. package/dist/cjs/src/plugins/modules/network/index.js +120 -0
  37. package/dist/cjs/src/plugins/modules/network/index.js.map +1 -0
  38. package/dist/cjs/src/plugins/modules/network/types/NetworkTypes.js +24 -0
  39. package/dist/cjs/src/plugins/modules/network/types/NetworkTypes.js.map +1 -0
  40. package/dist/cjs/src/plugins/modules/network/utils/NetworkPluginUtils.js +63 -0
  41. package/dist/cjs/src/plugins/modules/network/utils/NetworkPluginUtils.js.map +1 -0
  42. package/dist/cjs/src/plugins/modules/types/PluginTypes.js +48 -0
  43. package/dist/cjs/src/plugins/modules/types/PluginTypes.js.map +1 -0
  44. package/dist/cjs/src/server/FastServer.js +133 -5
  45. package/dist/cjs/src/server/FastServer.js.map +1 -1
  46. package/dist/cjs/src/server/components/fastapi/PluginManager.js +5 -5
  47. package/dist/cjs/src/server/components/fastapi/PluginManager.js.map +1 -1
  48. package/dist/cjs/src/server/components/fastapi/RequestProcessor.js +1 -1
  49. package/dist/cjs/src/server/conf/networkConnectionConf.js +25 -0
  50. package/dist/cjs/src/server/conf/networkConnectionConf.js.map +1 -0
  51. package/dist/cjs/src/server/conf/proxyConfig.js +23 -0
  52. package/dist/cjs/src/server/conf/proxyConfig.js.map +1 -0
  53. package/dist/cjs/src/server/conf/rateLimitConfig.js +35 -0
  54. package/dist/cjs/src/server/conf/rateLimitConfig.js.map +1 -0
  55. package/dist/cjs/src/server/const/default.js +6 -0
  56. package/dist/cjs/src/server/const/default.js.map +1 -1
  57. package/dist/cjs/src/server/handlers/NotFoundHandler.js +217 -0
  58. package/dist/cjs/src/server/handlers/NotFoundHandler.js.map +1 -0
  59. package/dist/cjs/src/server/handlers/templates/notFoundTemp.js +163 -0
  60. package/dist/cjs/src/server/handlers/templates/notFoundTemp.js.map +1 -0
  61. package/dist/esm/mods/security/src/components/cache/UFSIMC.js +5 -5
  62. package/dist/esm/mods/security/src/components/cache/UFSIMC.js.map +1 -1
  63. package/dist/esm/mods/security/src/components/cache/cacheSys.utils.js +3 -3
  64. package/dist/esm/mods/security/src/components/cache/cacheSys.utils.js.map +1 -1
  65. package/dist/esm/mods/security/src/index.js +14 -10
  66. package/dist/esm/mods/security/src/index.js.map +1 -1
  67. package/dist/esm/src/index.js +18 -0
  68. package/dist/esm/src/index.js.map +1 -1
  69. package/dist/esm/src/plugins/modules/PluginEngine.js +376 -0
  70. package/dist/esm/src/plugins/modules/PluginEngine.js.map +1 -0
  71. package/dist/esm/src/plugins/modules/PluginRegistry.js +337 -0
  72. package/dist/esm/src/plugins/modules/PluginRegistry.js.map +1 -0
  73. package/dist/esm/src/plugins/modules/builtin/JWTAuthPlugin.js +589 -0
  74. package/dist/esm/src/plugins/modules/builtin/JWTAuthPlugin.js.map +1 -0
  75. package/dist/esm/src/plugins/modules/builtin/ResponseTimePlugin.js +411 -0
  76. package/dist/esm/src/plugins/modules/builtin/ResponseTimePlugin.js.map +1 -0
  77. package/dist/esm/src/plugins/modules/builtin/SmartCachePlugin.js +841 -0
  78. package/dist/esm/src/plugins/modules/builtin/SmartCachePlugin.js.map +1 -0
  79. package/dist/esm/src/plugins/modules/core/CachePlugin.js +1973 -0
  80. package/dist/esm/src/plugins/modules/core/CachePlugin.js.map +1 -0
  81. package/dist/esm/src/plugins/modules/core/PerformancePlugin.js +872 -0
  82. package/dist/esm/src/plugins/modules/core/PerformancePlugin.js.map +1 -0
  83. package/dist/esm/src/plugins/modules/core/SecurityPlugin.js +797 -0
  84. package/dist/esm/src/plugins/modules/core/SecurityPlugin.js.map +1 -0
  85. package/dist/esm/src/plugins/modules/index.js +275 -0
  86. package/dist/esm/src/plugins/modules/index.js.map +1 -0
  87. package/dist/esm/src/plugins/modules/network/builtin/CompressionPlugin.js +389 -0
  88. package/dist/esm/src/plugins/modules/network/builtin/CompressionPlugin.js.map +1 -0
  89. package/dist/esm/src/plugins/modules/network/builtin/ConnectionPlugin.js +776 -0
  90. package/dist/esm/src/plugins/modules/network/builtin/ConnectionPlugin.js.map +1 -0
  91. package/dist/esm/src/plugins/modules/network/builtin/ProxyPlugin.js +407 -0
  92. package/dist/esm/src/plugins/modules/network/builtin/ProxyPlugin.js.map +1 -0
  93. package/dist/esm/src/plugins/modules/network/builtin/RateLimitPlugin.js +585 -0
  94. package/dist/esm/src/plugins/modules/network/builtin/RateLimitPlugin.js.map +1 -0
  95. package/dist/esm/src/plugins/modules/network/core/NetworkPlugin.js +223 -0
  96. package/dist/esm/src/plugins/modules/network/core/NetworkPlugin.js.map +1 -0
  97. package/dist/esm/src/plugins/modules/network/core/NetworkPluginFactory.js +38 -0
  98. package/dist/esm/src/plugins/modules/network/core/NetworkPluginFactory.js.map +1 -0
  99. package/dist/esm/src/plugins/modules/network/index.js +109 -0
  100. package/dist/esm/src/plugins/modules/network/index.js.map +1 -0
  101. package/dist/esm/src/plugins/modules/network/types/NetworkTypes.js +24 -0
  102. package/dist/esm/src/plugins/modules/network/types/NetworkTypes.js.map +1 -0
  103. package/dist/esm/src/plugins/modules/network/utils/NetworkPluginUtils.js +61 -0
  104. package/dist/esm/src/plugins/modules/network/utils/NetworkPluginUtils.js.map +1 -0
  105. package/dist/esm/src/plugins/modules/types/PluginTypes.js +48 -0
  106. package/dist/esm/src/plugins/modules/types/PluginTypes.js.map +1 -0
  107. package/dist/esm/src/server/FastServer.js +133 -5
  108. package/dist/esm/src/server/FastServer.js.map +1 -1
  109. package/dist/esm/src/server/components/fastapi/PluginManager.js +5 -5
  110. package/dist/esm/src/server/components/fastapi/PluginManager.js.map +1 -1
  111. package/dist/esm/src/server/components/fastapi/RequestProcessor.js +1 -1
  112. package/dist/esm/src/server/conf/networkConnectionConf.js +23 -0
  113. package/dist/esm/src/server/conf/networkConnectionConf.js.map +1 -0
  114. package/dist/esm/src/server/conf/proxyConfig.js +21 -0
  115. package/dist/esm/src/server/conf/proxyConfig.js.map +1 -0
  116. package/dist/esm/src/server/conf/rateLimitConfig.js +33 -0
  117. package/dist/esm/src/server/conf/rateLimitConfig.js.map +1 -0
  118. package/dist/esm/src/server/const/default.js +6 -0
  119. package/dist/esm/src/server/const/default.js.map +1 -1
  120. package/dist/esm/src/server/handlers/NotFoundHandler.js +194 -0
  121. package/dist/esm/src/server/handlers/NotFoundHandler.js.map +1 -0
  122. package/dist/esm/src/server/handlers/templates/notFoundTemp.js +161 -0
  123. package/dist/esm/src/server/handlers/templates/notFoundTemp.js.map +1 -0
  124. package/dist/index.d.ts +5104 -14
  125. package/package.json +8 -7
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SecurityPlugin.js","sources":["../../../../../../src/plugins/modules/core/SecurityPlugin.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -0,0 +1,275 @@
1
+ import { JWTAuthPlugin } from './builtin/JWTAuthPlugin.js';
2
+ import { ResponseTimePlugin } from './builtin/ResponseTimePlugin.js';
3
+ import { SmartCachePlugin } from './builtin/SmartCachePlugin.js';
4
+ import { PluginEngine } from './PluginEngine.js';
5
+ import { PluginRegistry } from './PluginRegistry.js';
6
+ import { PluginPriority } from './types/PluginTypes.js';
7
+ export { PluginEventType, PluginType } from './types/PluginTypes.js';
8
+ export { SecurityPlugin as SecurityPluginBase } from './core/SecurityPlugin.js';
9
+ import '../../../mods/security/src/components/fortified-function/core/fortified-function-core.js';
10
+ import '../../../mods/security/src/components/fortified-function/core/fortified-config.js';
11
+ import '../../../mods/security/src/components/fortified-function/core/fortified-logger.js';
12
+ import 'events';
13
+ import '../../../mods/security/src/components/fortified-function/serializer/safe-serializer.js';
14
+ import 'nehoid';
15
+ import '../../../mods/security/src/utils/memory/index.js';
16
+ import 'crypto';
17
+ import '../../../mods/security/src/types/secure-memory.js';
18
+ import '../../../mods/security/src/components/secure-string/advanced/entropy-analyzer.js';
19
+ import '../../../mods/security/src/components/secure-string/advanced/quantum-safe.js';
20
+ import '../../../mods/security/src/components/secure-string/advanced/performance-monitor.js';
21
+ import '../../../mods/security/src/core/hash/hash-core.js';
22
+ import '../../../mods/security/src/core/hash/hash-types.js';
23
+ import '../../../mods/security/src/core/hash/hash-security.js';
24
+ import '../../../mods/security/src/core/hash/hash-advanced.js';
25
+ import '../../../mods/security/src/algorithms/hash-algorithms.js';
26
+ import '../../../mods/security/src/core/random/random-types.js';
27
+ import '../../../mods/security/src/core/random/random-sources.js';
28
+ import 'nehonix-uri-processor';
29
+ import '../../../mods/security/src/types.js';
30
+ import '../../../mods/security/src/components/secure-array/utils/id-generator.js';
31
+ import '../../../mods/security/src/index.js';
32
+ import '../../../shared/logger/Logger.js';
33
+ import '../../../mods/security/src/components/fortified-function/UFA/ultra-fast-allocator.js';
34
+ import 'argon2';
35
+ import 'child_process';
36
+ import 'https';
37
+ import '../../../mods/security/src/components/runtime-verification.js';
38
+ import '../../../mods/security/src/components/tamper-evident-logging.js';
39
+ import '../../../mods/security/src/core/keys/keys-types.js';
40
+ import '../../../mods/security/src/core/keys/keys-logger.js';
41
+ import '../../../mods/security/src/core/keys/keys-utils.js';
42
+ import '../../../mods/security/src/core/keys/algorithms/mods/PBKDF2Algo.js';
43
+ import '../../../mods/security/src/core/password/index.js';
44
+ import 'systeminformation';
45
+ import 'pidusage';
46
+ import 'node-os-utils';
47
+ import '../../../mods/security/src/components/cache/index.js';
48
+ import 'perf_hooks';
49
+ export { NetworkCategory } from './network/types/NetworkTypes.js';
50
+ import 'fs';
51
+ import 'path';
52
+ import 'xypriss-security';
53
+ import 'zlib';
54
+ import 'compression';
55
+ import 'http-proxy-middleware';
56
+ import 'express-rate-limit';
57
+ import 'ioredis';
58
+ import 'util';
59
+ import '../../encryption/EncryptionService.js';
60
+
61
+ /**
62
+ * XyPrissJS Ultra-Fast Plugin System
63
+ *
64
+ * Comprehensive plugin system exports for ultra-fast performance
65
+ * with <1ms execution overhead and enterprise-grade security.
66
+ */
67
+ /**
68
+ * Plugin system version and metadata
69
+ */
70
+ const PLUGIN_SYSTEM_VERSION = "1.0.0";
71
+ const PLUGIN_SYSTEM_NAME = "XyPrissJS Ultra-Fast Plugin System";
72
+ /**
73
+ * Performance targets achieved by the plugin system
74
+ */
75
+ const PERFORMANCE_TARGETS = {
76
+ PLUGIN_EXECUTION_OVERHEAD: "<1ms",
77
+ SECURITY_PLUGIN_EXECUTION: "<2ms",
78
+ CACHE_PLUGIN_EXECUTION: "<0.5ms",
79
+ PERFORMANCE_PLUGIN_EXECUTION: "<0.3ms",
80
+ PLUGIN_REGISTRATION: "<0.1ms",
81
+ };
82
+ /**
83
+ * Default plugin configurations
84
+ */
85
+ const DEFAULT_PLUGIN_CONFIG = {
86
+ maxExecutionTime: 1000, // 1 second default timeout
87
+ enableProfiling: true,
88
+ enableCaching: true,
89
+ enableEncryption: false,
90
+ enableAuditLogging: false,
91
+ securityLevel: "basic",
92
+ customSettings: {},
93
+ };
94
+ /**
95
+ * Plugin system utilities
96
+ */
97
+ class PluginSystemUtils {
98
+ /**
99
+ * Validate plugin configuration
100
+ */
101
+ static validatePluginConfig(config) {
102
+ if (!config.id || typeof config.id !== "string") {
103
+ return false;
104
+ }
105
+ if (!config.name || typeof config.name !== "string") {
106
+ return false;
107
+ }
108
+ if (!config.version || typeof config.version !== "string") {
109
+ return false;
110
+ }
111
+ if (typeof config.execute !== "function") {
112
+ return false;
113
+ }
114
+ return true;
115
+ }
116
+ /**
117
+ * Create plugin performance summary
118
+ */
119
+ static createPerformanceSummary(stats) {
120
+ if (!stats || stats.length === 0) {
121
+ return {
122
+ totalPlugins: 0,
123
+ averageExecutionTime: 0,
124
+ totalExecutions: 0,
125
+ successRate: 100,
126
+ };
127
+ }
128
+ const totalExecutions = stats.reduce((sum, stat) => sum + stat.executionCount, 0);
129
+ const totalExecutionTime = stats.reduce((sum, stat) => sum + stat.totalExecutionTime, 0);
130
+ const totalErrors = stats.reduce((sum, stat) => sum + stat.errorCount, 0);
131
+ return {
132
+ totalPlugins: stats.length,
133
+ averageExecutionTime: totalExecutions > 0 ? totalExecutionTime / totalExecutions : 0,
134
+ totalExecutions,
135
+ successRate: totalExecutions > 0
136
+ ? ((totalExecutions - totalErrors) / totalExecutions) * 100
137
+ : 100,
138
+ };
139
+ }
140
+ /**
141
+ * Generate plugin health report
142
+ */
143
+ static generateHealthReport(registryStats, engineStats) {
144
+ const isHealthy = registryStats.totalPlugins > 0 &&
145
+ registryStats.averageExecutionTime < 10 && // 10ms threshold
146
+ engineStats.circuitBreakersOpen === 0;
147
+ return {
148
+ status: isHealthy ? "healthy" : "degraded",
149
+ timestamp: new Date().toISOString(),
150
+ metrics: {
151
+ totalPlugins: registryStats.totalPlugins,
152
+ averageExecutionTime: registryStats.averageExecutionTime,
153
+ circuitBreakersOpen: engineStats.circuitBreakersOpen,
154
+ contextPoolSize: engineStats.contextPoolSize,
155
+ warmedUpPlugins: engineStats.warmedUpPlugins,
156
+ },
157
+ recommendations: this.generateRecommendations(registryStats, engineStats),
158
+ };
159
+ }
160
+ /**
161
+ * Generate performance recommendations
162
+ */
163
+ static generateRecommendations(registryStats, engineStats) {
164
+ const recommendations = [];
165
+ if (registryStats.averageExecutionTime > 5) {
166
+ recommendations.push("Consider optimizing slow plugins or increasing timeout values");
167
+ }
168
+ if (engineStats.circuitBreakersOpen > 0) {
169
+ recommendations.push("Review and fix failing plugins to restore full functionality");
170
+ }
171
+ if (engineStats.contextPoolSize < 10) {
172
+ recommendations.push("Consider increasing context pool size for better performance");
173
+ }
174
+ if (registryStats.totalPlugins === 0) {
175
+ recommendations.push("Initialize built-in plugins to enable enhanced functionality");
176
+ }
177
+ if (recommendations.length === 0) {
178
+ recommendations.push("Plugin system is performing optimally");
179
+ }
180
+ return recommendations;
181
+ }
182
+ }
183
+ /**
184
+ * Plugin system factory for easy initialization
185
+ */
186
+ class PluginSystemFactory {
187
+ /**
188
+ * Create a pre-configured plugin registry
189
+ */
190
+ static createRegistry(cache, cluster, config) {
191
+ return new PluginRegistry(cache, cluster, config);
192
+ }
193
+ /**
194
+ * Create a pre-configured plugin engine
195
+ */
196
+ static createEngine(registry, cache, cluster) {
197
+ return new PluginEngine(registry, cache, cluster);
198
+ }
199
+ /**
200
+ * Create all built-in plugins
201
+ */
202
+ static createBuiltinPlugins() {
203
+ return [
204
+ new JWTAuthPlugin(),
205
+ new ResponseTimePlugin(),
206
+ new SmartCachePlugin(),
207
+ ];
208
+ }
209
+ /**
210
+ * Initialize complete plugin system
211
+ */
212
+ static async initializeSystem(cache, cluster, config) {
213
+ const registry = this.createRegistry(cache, cluster, config);
214
+ const engine = this.createEngine(registry, cache, cluster);
215
+ const plugins = this.createBuiltinPlugins();
216
+ // Register all built-in plugins
217
+ for (const plugin of plugins) {
218
+ await registry.register(plugin);
219
+ }
220
+ return { registry, engine, plugins };
221
+ }
222
+ }
223
+ /**
224
+ * Plugin development helpers
225
+ */
226
+ class PluginDevelopmentHelpers {
227
+ /**
228
+ * Create a basic plugin template
229
+ */
230
+ static createPluginTemplate(id, name, type, priority = PluginPriority.NORMAL) {
231
+ return {
232
+ id,
233
+ name,
234
+ version: "1.0.0",
235
+ type,
236
+ priority,
237
+ isAsync: true,
238
+ isCacheable: false,
239
+ maxExecutionTime: 1000,
240
+ execute: async (context) => {
241
+ // Plugin implementation goes here
242
+ return {
243
+ success: true,
244
+ executionTime: 0,
245
+ shouldContinue: true,
246
+ };
247
+ },
248
+ };
249
+ }
250
+ /**
251
+ * Validate plugin implementation
252
+ */
253
+ static validatePlugin(plugin) {
254
+ const errors = [];
255
+ if (!plugin.id)
256
+ errors.push("Plugin must have an id");
257
+ if (!plugin.name)
258
+ errors.push("Plugin must have a name");
259
+ if (!plugin.version)
260
+ errors.push("Plugin must have a version");
261
+ if (!plugin.type)
262
+ errors.push("Plugin must have a type");
263
+ if (!plugin.execute)
264
+ errors.push("Plugin must have an execute method");
265
+ if (typeof plugin.execute !== "function")
266
+ errors.push("Plugin execute must be a function");
267
+ return {
268
+ valid: errors.length === 0,
269
+ errors,
270
+ };
271
+ }
272
+ }
273
+
274
+ export { DEFAULT_PLUGIN_CONFIG, JWTAuthPlugin, PERFORMANCE_TARGETS, PLUGIN_SYSTEM_NAME, PLUGIN_SYSTEM_VERSION, PluginDevelopmentHelpers, PluginEngine, PluginPriority, PluginRegistry, PluginSystemFactory, PluginSystemUtils, ResponseTimePlugin, SmartCachePlugin };
275
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../../src/plugins/modules/index.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}