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