xypriss 1.0.0 → 1.0.1
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.
- package/README.md +2 -0
- package/dist/cjs/ServerFactory.js +195 -0
- package/dist/cjs/ServerFactory.js.map +1 -0
- package/dist/cjs/cache/CacheFactory.js +406 -0
- package/dist/cjs/cache/CacheFactory.js.map +1 -0
- package/dist/cjs/cache/SecureCacheAdapter.js +1227 -0
- package/dist/cjs/cache/SecureCacheAdapter.js.map +1 -0
- package/dist/cjs/cluster/cluster-manager.js +1011 -0
- package/dist/cjs/cluster/cluster-manager.js.map +1 -0
- package/dist/cjs/cluster/index.js +343 -0
- package/dist/cjs/cluster/index.js.map +1 -0
- package/dist/cjs/cluster/modules/AutoScaler.js +532 -0
- package/dist/cjs/cluster/modules/AutoScaler.js.map +1 -0
- package/dist/cjs/cluster/modules/ClusterFactory.js +518 -0
- package/dist/cjs/cluster/modules/ClusterFactory.js.map +1 -0
- package/dist/cjs/cluster/modules/ClusterPersistenceManager.js +436 -0
- package/dist/cjs/cluster/modules/ClusterPersistenceManager.js.map +1 -0
- package/dist/cjs/cluster/modules/HealthMonitor.js +461 -0
- package/dist/cjs/cluster/modules/HealthMonitor.js.map +1 -0
- package/dist/cjs/cluster/modules/IPCManager.js +781 -0
- package/dist/cjs/cluster/modules/IPCManager.js.map +1 -0
- package/dist/cjs/cluster/modules/LoadBalancer.js +1123 -0
- package/dist/cjs/cluster/modules/LoadBalancer.js.map +1 -0
- package/dist/cjs/cluster/modules/MetricsCollector.js +559 -0
- package/dist/cjs/cluster/modules/MetricsCollector.js.map +1 -0
- package/dist/cjs/cluster/modules/WorkerManager.js +1187 -0
- package/dist/cjs/cluster/modules/WorkerManager.js.map +1 -0
- package/dist/cjs/encryption/EncryptionService.js +399 -0
- package/dist/cjs/encryption/EncryptionService.js.map +1 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/middleware/safe-json-middleware.js +159 -0
- package/dist/cjs/middleware/safe-json-middleware.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/algorithms/hash-algorithms.js +727 -0
- package/dist/cjs/mods/toolkit/src/algorithms/hash-algorithms.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/algorithms/registry.js +83 -0
- package/dist/cjs/mods/toolkit/src/algorithms/registry.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/attestation.js +1065 -0
- package/dist/cjs/mods/toolkit/src/components/attestation.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/cache/FastLRU.js +323 -0
- package/dist/cjs/mods/toolkit/src/components/cache/FastLRU.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/cache/UFSIMC.js +1131 -0
- package/dist/cjs/mods/toolkit/src/components/cache/UFSIMC.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/cache/cacheSys.js +624 -0
- package/dist/cjs/mods/toolkit/src/components/cache/cacheSys.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/cache/cacheSys.utils.js +136 -0
- package/dist/cjs/mods/toolkit/src/components/cache/cacheSys.utils.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/cache/config/cache.config.js +39 -0
- package/dist/cjs/mods/toolkit/src/components/cache/config/cache.config.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/cache/index.js +459 -0
- package/dist/cjs/mods/toolkit/src/components/cache/index.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/cache/useCache.js +243 -0
- package/dist/cjs/mods/toolkit/src/components/cache/useCache.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/canary-tokens.js +351 -0
- package/dist/cjs/mods/toolkit/src/components/canary-tokens.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/entropy-augmentation.js +478 -0
- package/dist/cjs/mods/toolkit/src/components/entropy-augmentation.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/UFA/ultra-fast-allocator.js +338 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/UFA/ultra-fast-allocator.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/UFA/ultra-fast-cache.js +536 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/UFA/ultra-fast-cache.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/UFA/ultra-fast-engine.js +631 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/UFA/ultra-fast-engine.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/const/exec.const.js +18 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/const/exec.const.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/core/fortified-config.js +356 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/core/fortified-config.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/core/fortified-function-core.js +520 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/core/fortified-function-core.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/core/fortified-logger.js +246 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/core/fortified-logger.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/core/mods/api-manager.js +189 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/core/mods/api-manager.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/core/mods/cache-manager.js +107 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/core/mods/cache-manager.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/core/mods/execution-context.js +105 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/core/mods/execution-context.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/core/mods/execution-engine.js +127 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/core/mods/execution-engine.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/core/mods/execution-router.js +93 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/core/mods/execution-router.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/core/mods/memory-manager.js +147 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/core/mods/memory-manager.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/core/mods/security-manager.js +102 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/core/mods/security-manager.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/core/mods/stats-manager.js +159 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/core/mods/stats-manager.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/core/mods/timing-manager.js +125 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/core/mods/timing-manager.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/engines/analytics-engine.js +370 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/engines/analytics-engine.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/engines/execution-engine.js +402 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/engines/execution-engine.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/index.js +172 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/index.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/performance/performance-monitor.js +240 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/performance/performance-monitor.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/performance/performance-timer.js +188 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/performance/performance-timer.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/security/security-handler.js +253 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/security/security-handler.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/serializer/safe-serializer.js +350 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/serializer/safe-serializer.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/smart-cache.js +693 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/smart-cache.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/types/types.js +16 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/types/types.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/utils/utils.js +68 -0
- package/dist/cjs/mods/toolkit/src/components/fortified-function/utils/utils.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/memory-hard.js +922 -0
- package/dist/cjs/mods/toolkit/src/components/memory-hard.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/post-quantum.js +323 -0
- package/dist/cjs/mods/toolkit/src/components/post-quantum.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/runtime-verification.js +645 -0
- package/dist/cjs/mods/toolkit/src/components/runtime-verification.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/secure-array/core/secure-array-core.js +1572 -0
- package/dist/cjs/mods/toolkit/src/components/secure-array/core/secure-array-core.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/secure-array/crypto/ArrayCryptoHandler.js +330 -0
- package/dist/cjs/mods/toolkit/src/components/secure-array/crypto/ArrayCryptoHandler.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/secure-array/events/event-manager.js +270 -0
- package/dist/cjs/mods/toolkit/src/components/secure-array/events/event-manager.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/secure-array/index.js +66 -0
- package/dist/cjs/mods/toolkit/src/components/secure-array/index.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/secure-array/metadata/metadata-manager.js +331 -0
- package/dist/cjs/mods/toolkit/src/components/secure-array/metadata/metadata-manager.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/secure-array/serialization/ArraySerializationHandler.js +390 -0
- package/dist/cjs/mods/toolkit/src/components/secure-array/serialization/ArraySerializationHandler.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/secure-array/types/index.js +87 -0
- package/dist/cjs/mods/toolkit/src/components/secure-array/types/index.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/secure-array/utils/id-generator.js +80 -0
- package/dist/cjs/mods/toolkit/src/components/secure-array/utils/id-generator.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/secure-array/utils/validation.js +275 -0
- package/dist/cjs/mods/toolkit/src/components/secure-array/utils/validation.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/secure-memory.js +906 -0
- package/dist/cjs/mods/toolkit/src/components/secure-memory.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/secure-object/core/secure-object-core.js +1605 -0
- package/dist/cjs/mods/toolkit/src/components/secure-object/core/secure-object-core.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/secure-object/encryption/crypto-handler.js +362 -0
- package/dist/cjs/mods/toolkit/src/components/secure-object/encryption/crypto-handler.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/secure-object/encryption/sensitive-keys.js +206 -0
- package/dist/cjs/mods/toolkit/src/components/secure-object/encryption/sensitive-keys.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/secure-object/events/event-manager.js +197 -0
- package/dist/cjs/mods/toolkit/src/components/secure-object/events/event-manager.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/secure-object/index.js +67 -0
- package/dist/cjs/mods/toolkit/src/components/secure-object/index.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/secure-object/metadata/metadata-manager.js +183 -0
- package/dist/cjs/mods/toolkit/src/components/secure-object/metadata/metadata-manager.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/secure-object/serialization/serialization-handler.js +197 -0
- package/dist/cjs/mods/toolkit/src/components/secure-object/serialization/serialization-handler.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/secure-object/utils/id-generator.js +64 -0
- package/dist/cjs/mods/toolkit/src/components/secure-object/utils/id-generator.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/secure-object/utils/validation.js +239 -0
- package/dist/cjs/mods/toolkit/src/components/secure-object/utils/validation.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/secure-serialization.js +772 -0
- package/dist/cjs/mods/toolkit/src/components/secure-serialization.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/secure-string/advanced/entropy-analyzer.js +308 -0
- package/dist/cjs/mods/toolkit/src/components/secure-string/advanced/entropy-analyzer.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/secure-string/advanced/performance-monitor.js +335 -0
- package/dist/cjs/mods/toolkit/src/components/secure-string/advanced/performance-monitor.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/secure-string/advanced/quantum-safe.js +245 -0
- package/dist/cjs/mods/toolkit/src/components/secure-string/advanced/quantum-safe.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/secure-string/buffer/buffer-manager.js +205 -0
- package/dist/cjs/mods/toolkit/src/components/secure-string/buffer/buffer-manager.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/secure-string/core/secure-string-core.js +788 -0
- package/dist/cjs/mods/toolkit/src/components/secure-string/core/secure-string-core.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/secure-string/crypto/crypto-operations.js +319 -0
- package/dist/cjs/mods/toolkit/src/components/secure-string/crypto/crypto-operations.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/secure-string/operations/comparison-operations.js +221 -0
- package/dist/cjs/mods/toolkit/src/components/secure-string/operations/comparison-operations.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/secure-string/operations/string-operations.js +234 -0
- package/dist/cjs/mods/toolkit/src/components/secure-string/operations/string-operations.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/secure-string/types/index.js +41 -0
- package/dist/cjs/mods/toolkit/src/components/secure-string/types/index.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/secure-string/validation/string-validator.js +334 -0
- package/dist/cjs/mods/toolkit/src/components/secure-string/validation/string-validator.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/side-channel.js +146 -0
- package/dist/cjs/mods/toolkit/src/components/side-channel.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/components/tamper-evident-logging.js +391 -0
- package/dist/cjs/mods/toolkit/src/components/tamper-evident-logging.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/const/buffer.const.js +15 -0
- package/dist/cjs/mods/toolkit/src/const/buffer.const.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/core/crypto.js +722 -0
- package/dist/cjs/mods/toolkit/src/core/crypto.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/core/hash/hash-advanced.js +388 -0
- package/dist/cjs/mods/toolkit/src/core/hash/hash-advanced.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/core/hash/hash-core.js +376 -0
- package/dist/cjs/mods/toolkit/src/core/hash/hash-core.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/core/hash/hash-entropy.js +307 -0
- package/dist/cjs/mods/toolkit/src/core/hash/hash-entropy.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/core/hash/hash-security.js +372 -0
- package/dist/cjs/mods/toolkit/src/core/hash/hash-security.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/core/hash/hash-types.js +16 -0
- package/dist/cjs/mods/toolkit/src/core/hash/hash-types.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/core/hash/hash-utils.js +328 -0
- package/dist/cjs/mods/toolkit/src/core/hash/hash-utils.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/core/hash/hash-validator.js +312 -0
- package/dist/cjs/mods/toolkit/src/core/hash/hash-validator.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/core/hash.js +25 -0
- package/dist/cjs/mods/toolkit/src/core/hash.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/core/keys/algorithms/mods/Argon2Algo.js +135 -0
- package/dist/cjs/mods/toolkit/src/core/keys/algorithms/mods/Argon2Algo.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/core/keys/algorithms/mods/PBKDF2Algo.js +293 -0
- package/dist/cjs/mods/toolkit/src/core/keys/algorithms/mods/PBKDF2Algo.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/core/keys/algorithms/mods/ScryptAlgo.js +317 -0
- package/dist/cjs/mods/toolkit/src/core/keys/algorithms/mods/ScryptAlgo.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/core/keys/keys-core.js +201 -0
- package/dist/cjs/mods/toolkit/src/core/keys/keys-core.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/core/keys/keys-logger.js +234 -0
- package/dist/cjs/mods/toolkit/src/core/keys/keys-logger.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/core/keys/keys-types.js +65 -0
- package/dist/cjs/mods/toolkit/src/core/keys/keys-types.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/core/keys/keys-utils.js +322 -0
- package/dist/cjs/mods/toolkit/src/core/keys/keys-utils.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/core/keys.js +136 -0
- package/dist/cjs/mods/toolkit/src/core/keys.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/core/password/index.js +122 -0
- package/dist/cjs/mods/toolkit/src/core/password/index.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/core/password/password-algorithms.js +397 -0
- package/dist/cjs/mods/toolkit/src/core/password/password-algorithms.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/core/password/password-core.js +294 -0
- package/dist/cjs/mods/toolkit/src/core/password/password-core.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/core/password/password-generator.js +365 -0
- package/dist/cjs/mods/toolkit/src/core/password/password-generator.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/core/password/password-migration.js +237 -0
- package/dist/cjs/mods/toolkit/src/core/password/password-migration.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/core/password/password-security.js +534 -0
- package/dist/cjs/mods/toolkit/src/core/password/password-security.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/core/password/password-types.js +39 -0
- package/dist/cjs/mods/toolkit/src/core/password/password-types.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/core/password/password-utils.js +651 -0
- package/dist/cjs/mods/toolkit/src/core/password/password-utils.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/core/password/swlist.js +1122 -0
- package/dist/cjs/mods/toolkit/src/core/password/swlist.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/core/random/random-core.js +328 -0
- package/dist/cjs/mods/toolkit/src/core/random/random-core.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/core/random/random-crypto.js +339 -0
- package/dist/cjs/mods/toolkit/src/core/random/random-crypto.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/core/random/random-entropy.js +388 -0
- package/dist/cjs/mods/toolkit/src/core/random/random-entropy.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/core/random/random-generators.js +344 -0
- package/dist/cjs/mods/toolkit/src/core/random/random-generators.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/core/random/random-sources.js +426 -0
- package/dist/cjs/mods/toolkit/src/core/random/random-sources.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/core/random/random-tokens.js +309 -0
- package/dist/cjs/mods/toolkit/src/core/random/random-tokens.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/core/random/random-types.js +36 -0
- package/dist/cjs/mods/toolkit/src/core/random/random-types.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/core/validators.js +200 -0
- package/dist/cjs/mods/toolkit/src/core/validators.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/helpers/Uint8Array.js +335 -0
- package/dist/cjs/mods/toolkit/src/helpers/Uint8Array.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/helpers/createEnu.js +27 -0
- package/dist/cjs/mods/toolkit/src/helpers/createEnu.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/index.js +417 -0
- package/dist/cjs/mods/toolkit/src/index.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/types/global.js +51 -0
- package/dist/cjs/mods/toolkit/src/types/global.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/types/secure-mem.type.js +100 -0
- package/dist/cjs/mods/toolkit/src/types/secure-mem.type.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/types/secure-memory.js +20 -0
- package/dist/cjs/mods/toolkit/src/types/secure-memory.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/types.js +63 -0
- package/dist/cjs/mods/toolkit/src/types.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/utils/CryptoAlgorithmUtils.js +71 -0
- package/dist/cjs/mods/toolkit/src/utils/CryptoAlgorithmUtils.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/utils/constants.js +111 -0
- package/dist/cjs/mods/toolkit/src/utils/constants.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/utils/dataConverter.js +74 -0
- package/dist/cjs/mods/toolkit/src/utils/dataConverter.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/utils/encoding.js +290 -0
- package/dist/cjs/mods/toolkit/src/utils/encoding.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/utils/errorHandler.js +140 -0
- package/dist/cjs/mods/toolkit/src/utils/errorHandler.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/utils/memory/config-manager.js +282 -0
- package/dist/cjs/mods/toolkit/src/utils/memory/config-manager.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/utils/memory/event-manager.js +277 -0
- package/dist/cjs/mods/toolkit/src/utils/memory/event-manager.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/utils/memory/index.js +162 -0
- package/dist/cjs/mods/toolkit/src/utils/memory/index.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/utils/memory/memory-manager.js +888 -0
- package/dist/cjs/mods/toolkit/src/utils/memory/memory-manager.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/utils/memory/memory-pool.js +356 -0
- package/dist/cjs/mods/toolkit/src/utils/memory/memory-pool.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/utils/memory/reference-tracker.js +376 -0
- package/dist/cjs/mods/toolkit/src/utils/memory/reference-tracker.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/utils/memory/types.js +56 -0
- package/dist/cjs/mods/toolkit/src/utils/memory/types.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/utils/patterns.js +127 -0
- package/dist/cjs/mods/toolkit/src/utils/patterns.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/utils/performanceMonitor.js +249 -0
- package/dist/cjs/mods/toolkit/src/utils/performanceMonitor.js.map +1 -0
- package/dist/cjs/mods/toolkit/src/utils/stats.js +182 -0
- package/dist/cjs/mods/toolkit/src/utils/stats.js.map +1 -0
- package/dist/cjs/performance-monitor.js +162 -0
- package/dist/cjs/performance-monitor.js.map +1 -0
- package/dist/cjs/plugins/plugin-manager.js +151 -0
- package/dist/cjs/plugins/plugin-manager.js.map +1 -0
- package/dist/cjs/plugins/route-optimization-plugin.js +413 -0
- package/dist/cjs/plugins/route-optimization-plugin.js.map +1 -0
- package/dist/cjs/plugins/server-maintenance-plugin.js +510 -0
- package/dist/cjs/plugins/server-maintenance-plugin.js.map +1 -0
- package/dist/cjs/quick-start.js +47 -0
- package/dist/cjs/quick-start.js.map +1 -0
- package/dist/cjs/security-middleware.js +415 -0
- package/dist/cjs/security-middleware.js.map +1 -0
- package/dist/cjs/server/FastServer.js +988 -0
- package/dist/cjs/server/FastServer.js.map +1 -0
- package/dist/cjs/server/components/fastapi/CacheManager.js +245 -0
- package/dist/cjs/server/components/fastapi/CacheManager.js.map +1 -0
- package/dist/cjs/server/components/fastapi/ClusterManagerComponent.js +327 -0
- package/dist/cjs/server/components/fastapi/ClusterManagerComponent.js.map +1 -0
- package/dist/cjs/server/components/fastapi/FileWatcherManager.js +493 -0
- package/dist/cjs/server/components/fastapi/FileWatcherManager.js.map +1 -0
- package/dist/cjs/server/components/fastapi/MonitoringManager.js +307 -0
- package/dist/cjs/server/components/fastapi/MonitoringManager.js.map +1 -0
- package/dist/cjs/server/components/fastapi/PerformanceManager.js +297 -0
- package/dist/cjs/server/components/fastapi/PerformanceManager.js.map +1 -0
- package/dist/cjs/server/components/fastapi/PluginManager.js +312 -0
- package/dist/cjs/server/components/fastapi/PluginManager.js.map +1 -0
- package/dist/cjs/server/components/fastapi/RedirectManager.js +492 -0
- package/dist/cjs/server/components/fastapi/RedirectManager.js.map +1 -0
- package/dist/cjs/server/components/fastapi/RequestProcessor.js +213 -0
- package/dist/cjs/server/components/fastapi/RequestProcessor.js.map +1 -0
- package/dist/cjs/server/components/fastapi/RouteManager.js +272 -0
- package/dist/cjs/server/components/fastapi/RouteManager.js.map +1 -0
- package/dist/cjs/server/components/fastapi/UltraFastRequestProcessor.js +668 -0
- package/dist/cjs/server/components/fastapi/UltraFastRequestProcessor.js.map +1 -0
- package/dist/cjs/server/components/fastapi/console/ConsoleInterceptor.js +812 -0
- package/dist/cjs/server/components/fastapi/console/ConsoleInterceptor.js.map +1 -0
- package/dist/cjs/server/components/fastapi/console/encryption/ConsoleEncryption.js +216 -0
- package/dist/cjs/server/components/fastapi/console/encryption/ConsoleEncryption.js.map +1 -0
- package/dist/cjs/server/components/fastapi/console/types.js +163 -0
- package/dist/cjs/server/components/fastapi/console/types.js.map +1 -0
- package/dist/cjs/server/components/fastapi/middlewares/MiddlewareAPI.js +347 -0
- package/dist/cjs/server/components/fastapi/middlewares/MiddlewareAPI.js.map +1 -0
- package/dist/cjs/server/components/fastapi/middlewares/MiddlewareMethodsManager.js +204 -0
- package/dist/cjs/server/components/fastapi/middlewares/MiddlewareMethodsManager.js.map +1 -0
- package/dist/cjs/server/components/fastapi/middlewares/middlewareManager.js +953 -0
- package/dist/cjs/server/components/fastapi/middlewares/middlewareManager.js.map +1 -0
- package/dist/cjs/server/components/fastapi/modules/UFRP/WorkerPool.js +56 -0
- package/dist/cjs/server/components/fastapi/modules/UFRP/WorkerPool.js.map +1 -0
- package/dist/cjs/server/components/fastapi/templates/redirectTemp.js +101 -0
- package/dist/cjs/server/components/fastapi/templates/redirectTemp.js.map +1 -0
- package/dist/cjs/server/components/fastapi/typescript/TypeScriptChecker.js +373 -0
- package/dist/cjs/server/components/fastapi/typescript/TypeScriptChecker.js.map +1 -0
- package/dist/cjs/server/const/Cluster.config.js +72 -0
- package/dist/cjs/server/const/Cluster.config.js.map +1 -0
- package/dist/cjs/server/const/ExecutionPredictor_EP.const.js +73 -0
- package/dist/cjs/server/const/ExecutionPredictor_EP.const.js.map +1 -0
- package/dist/cjs/server/const/FileWatcher.config.js +98 -0
- package/dist/cjs/server/const/FileWatcher.config.js.map +1 -0
- package/dist/cjs/server/const/default.js +122 -0
- package/dist/cjs/server/const/default.js.map +1 -0
- package/dist/cjs/server/optimization/ExecutionPredictor.js +218 -0
- package/dist/cjs/server/optimization/ExecutionPredictor.js.map +1 -0
- package/dist/cjs/server/optimization/PerformanceProfiler.js +234 -0
- package/dist/cjs/server/optimization/PerformanceProfiler.js.map +1 -0
- package/dist/cjs/server/optimization/RequestPreCompiler.js +708 -0
- package/dist/cjs/server/optimization/RequestPreCompiler.js.map +1 -0
- package/dist/cjs/server/optimization/UltraFastOptimizer.js +400 -0
- package/dist/cjs/server/optimization/UltraFastOptimizer.js.map +1 -0
- package/dist/cjs/server/plugins/PluginEngine.js +378 -0
- package/dist/cjs/server/plugins/PluginEngine.js.map +1 -0
- package/dist/cjs/server/plugins/PluginRegistry.js +339 -0
- package/dist/cjs/server/plugins/PluginRegistry.js.map +1 -0
- package/dist/cjs/server/plugins/builtin/JWTAuthPlugin.js +591 -0
- package/dist/cjs/server/plugins/builtin/JWTAuthPlugin.js.map +1 -0
- package/dist/cjs/server/plugins/builtin/ResponseTimePlugin.js +413 -0
- package/dist/cjs/server/plugins/builtin/ResponseTimePlugin.js.map +1 -0
- package/dist/cjs/server/plugins/builtin/SmartCachePlugin.js +843 -0
- package/dist/cjs/server/plugins/builtin/SmartCachePlugin.js.map +1 -0
- package/dist/cjs/server/plugins/core/CachePlugin.js +1975 -0
- package/dist/cjs/server/plugins/core/CachePlugin.js.map +1 -0
- package/dist/cjs/server/plugins/core/PerformancePlugin.js +894 -0
- package/dist/cjs/server/plugins/core/PerformancePlugin.js.map +1 -0
- package/dist/cjs/server/plugins/core/SecurityPlugin.js +799 -0
- package/dist/cjs/server/plugins/core/SecurityPlugin.js.map +1 -0
- package/dist/cjs/server/plugins/types/PluginTypes.js +47 -0
- package/dist/cjs/server/plugins/types/PluginTypes.js.map +1 -0
- package/dist/cjs/server/service/Reload/FileWatcher.js +756 -0
- package/dist/cjs/server/service/Reload/FileWatcher.js.map +1 -0
- package/dist/cjs/server/service/Reload/HotReloader.js +738 -0
- package/dist/cjs/server/service/Reload/HotReloader.js.map +1 -0
- package/dist/cjs/server/service/Reload/exec/TypeScriptExecutor.js +342 -0
- package/dist/cjs/server/service/Reload/exec/TypeScriptExecutor.js.map +1 -0
- package/dist/cjs/server/utils/ConfigLoader.js +209 -0
- package/dist/cjs/server/utils/ConfigLoader.js.map +1 -0
- package/dist/cjs/server/utils/Logger.js +238 -0
- package/dist/cjs/server/utils/Logger.js.map +1 -0
- package/dist/cjs/server/utils/PortManager.js +157 -0
- package/dist/cjs/server/utils/PortManager.js.map +1 -0
- package/dist/cjs/server/utils/forceClosePort.js +126 -0
- package/dist/cjs/server/utils/forceClosePort.js.map +1 -0
- package/dist/cjs/smart-routes.js +347 -0
- package/dist/cjs/smart-routes.js.map +1 -0
- package/dist/esm/ServerFactory.js +184 -0
- package/dist/esm/ServerFactory.js.map +1 -0
- package/dist/esm/cache/CacheFactory.js +402 -0
- package/dist/esm/cache/CacheFactory.js.map +1 -0
- package/dist/esm/cache/SecureCacheAdapter.js +1225 -0
- package/dist/esm/cache/SecureCacheAdapter.js.map +1 -0
- package/dist/esm/cluster/cluster-manager.js +990 -0
- package/dist/esm/cluster/cluster-manager.js.map +1 -0
- package/dist/esm/cluster/index.js +321 -0
- package/dist/esm/cluster/index.js.map +1 -0
- package/dist/esm/cluster/modules/AutoScaler.js +530 -0
- package/dist/esm/cluster/modules/AutoScaler.js.map +1 -0
- package/dist/esm/cluster/modules/ClusterFactory.js +490 -0
- package/dist/esm/cluster/modules/ClusterFactory.js.map +1 -0
- package/dist/esm/cluster/modules/ClusterPersistenceManager.js +434 -0
- package/dist/esm/cluster/modules/ClusterPersistenceManager.js.map +1 -0
- package/dist/esm/cluster/modules/HealthMonitor.js +440 -0
- package/dist/esm/cluster/modules/HealthMonitor.js.map +1 -0
- package/dist/esm/cluster/modules/IPCManager.js +759 -0
- package/dist/esm/cluster/modules/IPCManager.js.map +1 -0
- package/dist/esm/cluster/modules/LoadBalancer.js +1102 -0
- package/dist/esm/cluster/modules/LoadBalancer.js.map +1 -0
- package/dist/esm/cluster/modules/MetricsCollector.js +538 -0
- package/dist/esm/cluster/modules/MetricsCollector.js.map +1 -0
- package/dist/esm/cluster/modules/WorkerManager.js +1165 -0
- package/dist/esm/cluster/modules/WorkerManager.js.map +1 -0
- package/dist/esm/encryption/EncryptionService.js +378 -0
- package/dist/esm/encryption/EncryptionService.js.map +1 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/middleware/safe-json-middleware.js +153 -0
- package/dist/esm/middleware/safe-json-middleware.js.map +1 -0
- package/dist/esm/mods/toolkit/src/algorithms/hash-algorithms.js +705 -0
- package/dist/esm/mods/toolkit/src/algorithms/hash-algorithms.js.map +1 -0
- package/dist/esm/mods/toolkit/src/algorithms/registry.js +81 -0
- package/dist/esm/mods/toolkit/src/algorithms/registry.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/attestation.js +1059 -0
- package/dist/esm/mods/toolkit/src/components/attestation.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/cache/FastLRU.js +320 -0
- package/dist/esm/mods/toolkit/src/components/cache/FastLRU.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/cache/UFSIMC.js +1109 -0
- package/dist/esm/mods/toolkit/src/components/cache/UFSIMC.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/cache/cacheSys.js +622 -0
- package/dist/esm/mods/toolkit/src/components/cache/cacheSys.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/cache/cacheSys.utils.js +111 -0
- package/dist/esm/mods/toolkit/src/components/cache/cacheSys.utils.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/cache/config/cache.config.js +36 -0
- package/dist/esm/mods/toolkit/src/components/cache/config/cache.config.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/cache/index.js +449 -0
- package/dist/esm/mods/toolkit/src/components/cache/index.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/cache/useCache.js +240 -0
- package/dist/esm/mods/toolkit/src/components/cache/useCache.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/canary-tokens.js +346 -0
- package/dist/esm/mods/toolkit/src/components/canary-tokens.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/entropy-augmentation.js +476 -0
- package/dist/esm/mods/toolkit/src/components/entropy-augmentation.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/UFA/ultra-fast-allocator.js +336 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/UFA/ultra-fast-allocator.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/UFA/ultra-fast-cache.js +534 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/UFA/ultra-fast-cache.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/UFA/ultra-fast-engine.js +629 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/UFA/ultra-fast-engine.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/const/exec.const.js +11 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/const/exec.const.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/core/fortified-config.js +351 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/core/fortified-config.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/core/fortified-function-core.js +518 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/core/fortified-function-core.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/core/fortified-logger.js +243 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/core/fortified-logger.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/core/mods/api-manager.js +187 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/core/mods/api-manager.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/core/mods/cache-manager.js +105 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/core/mods/cache-manager.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/core/mods/execution-context.js +103 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/core/mods/execution-context.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/core/mods/execution-engine.js +125 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/core/mods/execution-engine.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/core/mods/execution-router.js +91 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/core/mods/execution-router.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/core/mods/memory-manager.js +145 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/core/mods/memory-manager.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/core/mods/security-manager.js +100 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/core/mods/security-manager.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/core/mods/stats-manager.js +157 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/core/mods/stats-manager.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/core/mods/timing-manager.js +123 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/core/mods/timing-manager.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/engines/analytics-engine.js +368 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/engines/analytics-engine.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/engines/execution-engine.js +400 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/engines/execution-engine.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/index.js +165 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/index.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/performance/performance-monitor.js +238 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/performance/performance-monitor.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/performance/performance-timer.js +186 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/performance/performance-timer.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/security/security-handler.js +251 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/security/security-handler.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/serializer/safe-serializer.js +344 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/serializer/safe-serializer.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/smart-cache.js +691 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/smart-cache.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/types/types.js +14 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/types/types.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/utils/utils.js +66 -0
- package/dist/esm/mods/toolkit/src/components/fortified-function/utils/utils.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/memory-hard.js +919 -0
- package/dist/esm/mods/toolkit/src/components/memory-hard.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/post-quantum.js +316 -0
- package/dist/esm/mods/toolkit/src/components/post-quantum.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/runtime-verification.js +643 -0
- package/dist/esm/mods/toolkit/src/components/runtime-verification.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/secure-array/core/secure-array-core.js +1570 -0
- package/dist/esm/mods/toolkit/src/components/secure-array/core/secure-array-core.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/secure-array/crypto/ArrayCryptoHandler.js +328 -0
- package/dist/esm/mods/toolkit/src/components/secure-array/crypto/ArrayCryptoHandler.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/secure-array/events/event-manager.js +268 -0
- package/dist/esm/mods/toolkit/src/components/secure-array/events/event-manager.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/secure-array/index.js +61 -0
- package/dist/esm/mods/toolkit/src/components/secure-array/index.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/secure-array/metadata/metadata-manager.js +329 -0
- package/dist/esm/mods/toolkit/src/components/secure-array/metadata/metadata-manager.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/secure-array/serialization/ArraySerializationHandler.js +388 -0
- package/dist/esm/mods/toolkit/src/components/secure-array/serialization/ArraySerializationHandler.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/secure-array/types/index.js +84 -0
- package/dist/esm/mods/toolkit/src/components/secure-array/types/index.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/secure-array/utils/id-generator.js +78 -0
- package/dist/esm/mods/toolkit/src/components/secure-array/utils/id-generator.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/secure-array/utils/validation.js +273 -0
- package/dist/esm/mods/toolkit/src/components/secure-array/utils/validation.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/secure-memory.js +884 -0
- package/dist/esm/mods/toolkit/src/components/secure-memory.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/secure-object/core/secure-object-core.js +1603 -0
- package/dist/esm/mods/toolkit/src/components/secure-object/core/secure-object-core.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/secure-object/encryption/crypto-handler.js +360 -0
- package/dist/esm/mods/toolkit/src/components/secure-object/encryption/crypto-handler.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/secure-object/encryption/sensitive-keys.js +203 -0
- package/dist/esm/mods/toolkit/src/components/secure-object/encryption/sensitive-keys.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/secure-object/events/event-manager.js +195 -0
- package/dist/esm/mods/toolkit/src/components/secure-object/events/event-manager.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/secure-object/index.js +63 -0
- package/dist/esm/mods/toolkit/src/components/secure-object/index.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/secure-object/metadata/metadata-manager.js +181 -0
- package/dist/esm/mods/toolkit/src/components/secure-object/metadata/metadata-manager.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/secure-object/serialization/serialization-handler.js +195 -0
- package/dist/esm/mods/toolkit/src/components/secure-object/serialization/serialization-handler.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/secure-object/utils/id-generator.js +62 -0
- package/dist/esm/mods/toolkit/src/components/secure-object/utils/id-generator.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/secure-object/utils/validation.js +237 -0
- package/dist/esm/mods/toolkit/src/components/secure-object/utils/validation.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/secure-serialization.js +769 -0
- package/dist/esm/mods/toolkit/src/components/secure-serialization.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/secure-string/advanced/entropy-analyzer.js +306 -0
- package/dist/esm/mods/toolkit/src/components/secure-string/advanced/entropy-analyzer.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/secure-string/advanced/performance-monitor.js +333 -0
- package/dist/esm/mods/toolkit/src/components/secure-string/advanced/performance-monitor.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/secure-string/advanced/quantum-safe.js +243 -0
- package/dist/esm/mods/toolkit/src/components/secure-string/advanced/quantum-safe.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/secure-string/buffer/buffer-manager.js +203 -0
- package/dist/esm/mods/toolkit/src/components/secure-string/buffer/buffer-manager.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/secure-string/core/secure-string-core.js +786 -0
- package/dist/esm/mods/toolkit/src/components/secure-string/core/secure-string-core.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/secure-string/crypto/crypto-operations.js +298 -0
- package/dist/esm/mods/toolkit/src/components/secure-string/crypto/crypto-operations.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/secure-string/operations/comparison-operations.js +219 -0
- package/dist/esm/mods/toolkit/src/components/secure-string/operations/comparison-operations.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/secure-string/operations/string-operations.js +232 -0
- package/dist/esm/mods/toolkit/src/components/secure-string/operations/string-operations.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/secure-string/types/index.js +37 -0
- package/dist/esm/mods/toolkit/src/components/secure-string/types/index.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/secure-string/validation/string-validator.js +332 -0
- package/dist/esm/mods/toolkit/src/components/secure-string/validation/string-validator.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/side-channel.js +142 -0
- package/dist/esm/mods/toolkit/src/components/side-channel.js.map +1 -0
- package/dist/esm/mods/toolkit/src/components/tamper-evident-logging.js +389 -0
- package/dist/esm/mods/toolkit/src/components/tamper-evident-logging.js.map +1 -0
- package/dist/esm/mods/toolkit/src/const/buffer.const.js +13 -0
- package/dist/esm/mods/toolkit/src/const/buffer.const.js.map +1 -0
- package/dist/esm/mods/toolkit/src/core/crypto.js +720 -0
- package/dist/esm/mods/toolkit/src/core/crypto.js.map +1 -0
- package/dist/esm/mods/toolkit/src/core/hash/hash-advanced.js +367 -0
- package/dist/esm/mods/toolkit/src/core/hash/hash-advanced.js.map +1 -0
- package/dist/esm/mods/toolkit/src/core/hash/hash-core.js +355 -0
- package/dist/esm/mods/toolkit/src/core/hash/hash-core.js.map +1 -0
- package/dist/esm/mods/toolkit/src/core/hash/hash-entropy.js +286 -0
- package/dist/esm/mods/toolkit/src/core/hash/hash-entropy.js.map +1 -0
- package/dist/esm/mods/toolkit/src/core/hash/hash-security.js +351 -0
- package/dist/esm/mods/toolkit/src/core/hash/hash-security.js.map +1 -0
- package/dist/esm/mods/toolkit/src/core/hash/hash-types.js +16 -0
- package/dist/esm/mods/toolkit/src/core/hash/hash-types.js.map +1 -0
- package/dist/esm/mods/toolkit/src/core/hash/hash-utils.js +307 -0
- package/dist/esm/mods/toolkit/src/core/hash/hash-utils.js.map +1 -0
- package/dist/esm/mods/toolkit/src/core/hash/hash-validator.js +310 -0
- package/dist/esm/mods/toolkit/src/core/hash/hash-validator.js.map +1 -0
- package/dist/esm/mods/toolkit/src/core/hash.js +9 -0
- package/dist/esm/mods/toolkit/src/core/hash.js.map +1 -0
- package/dist/esm/mods/toolkit/src/core/keys/algorithms/mods/Argon2Algo.js +133 -0
- package/dist/esm/mods/toolkit/src/core/keys/algorithms/mods/Argon2Algo.js.map +1 -0
- package/dist/esm/mods/toolkit/src/core/keys/algorithms/mods/PBKDF2Algo.js +272 -0
- package/dist/esm/mods/toolkit/src/core/keys/algorithms/mods/PBKDF2Algo.js.map +1 -0
- package/dist/esm/mods/toolkit/src/core/keys/algorithms/mods/ScryptAlgo.js +296 -0
- package/dist/esm/mods/toolkit/src/core/keys/algorithms/mods/ScryptAlgo.js.map +1 -0
- package/dist/esm/mods/toolkit/src/core/keys/keys-core.js +199 -0
- package/dist/esm/mods/toolkit/src/core/keys/keys-core.js.map +1 -0
- package/dist/esm/mods/toolkit/src/core/keys/keys-logger.js +231 -0
- package/dist/esm/mods/toolkit/src/core/keys/keys-logger.js.map +1 -0
- package/dist/esm/mods/toolkit/src/core/keys/keys-types.js +63 -0
- package/dist/esm/mods/toolkit/src/core/keys/keys-types.js.map +1 -0
- package/dist/esm/mods/toolkit/src/core/keys/keys-utils.js +316 -0
- package/dist/esm/mods/toolkit/src/core/keys/keys-utils.js.map +1 -0
- package/dist/esm/mods/toolkit/src/core/keys.js +134 -0
- package/dist/esm/mods/toolkit/src/core/keys.js.map +1 -0
- package/dist/esm/mods/toolkit/src/core/password/index.js +110 -0
- package/dist/esm/mods/toolkit/src/core/password/index.js.map +1 -0
- package/dist/esm/mods/toolkit/src/core/password/password-algorithms.js +395 -0
- package/dist/esm/mods/toolkit/src/core/password/password-algorithms.js.map +1 -0
- package/dist/esm/mods/toolkit/src/core/password/password-core.js +292 -0
- package/dist/esm/mods/toolkit/src/core/password/password-core.js.map +1 -0
- package/dist/esm/mods/toolkit/src/core/password/password-generator.js +363 -0
- package/dist/esm/mods/toolkit/src/core/password/password-generator.js.map +1 -0
- package/dist/esm/mods/toolkit/src/core/password/password-migration.js +235 -0
- package/dist/esm/mods/toolkit/src/core/password/password-migration.js.map +1 -0
- package/dist/esm/mods/toolkit/src/core/password/password-security.js +532 -0
- package/dist/esm/mods/toolkit/src/core/password/password-security.js.map +1 -0
- package/dist/esm/mods/toolkit/src/core/password/password-types.js +34 -0
- package/dist/esm/mods/toolkit/src/core/password/password-types.js.map +1 -0
- package/dist/esm/mods/toolkit/src/core/password/password-utils.js +630 -0
- package/dist/esm/mods/toolkit/src/core/password/password-utils.js.map +1 -0
- package/dist/esm/mods/toolkit/src/core/password/swlist.js +1120 -0
- package/dist/esm/mods/toolkit/src/core/password/swlist.js.map +1 -0
- package/dist/esm/mods/toolkit/src/core/random/random-core.js +326 -0
- package/dist/esm/mods/toolkit/src/core/random/random-core.js.map +1 -0
- package/dist/esm/mods/toolkit/src/core/random/random-crypto.js +337 -0
- package/dist/esm/mods/toolkit/src/core/random/random-crypto.js.map +1 -0
- package/dist/esm/mods/toolkit/src/core/random/random-entropy.js +367 -0
- package/dist/esm/mods/toolkit/src/core/random/random-entropy.js.map +1 -0
- package/dist/esm/mods/toolkit/src/core/random/random-generators.js +323 -0
- package/dist/esm/mods/toolkit/src/core/random/random-generators.js.map +1 -0
- package/dist/esm/mods/toolkit/src/core/random/random-sources.js +405 -0
- package/dist/esm/mods/toolkit/src/core/random/random-sources.js.map +1 -0
- package/dist/esm/mods/toolkit/src/core/random/random-tokens.js +307 -0
- package/dist/esm/mods/toolkit/src/core/random/random-tokens.js.map +1 -0
- package/dist/esm/mods/toolkit/src/core/random/random-types.js +27 -0
- package/dist/esm/mods/toolkit/src/core/random/random-types.js.map +1 -0
- package/dist/esm/mods/toolkit/src/core/validators.js +198 -0
- package/dist/esm/mods/toolkit/src/core/validators.js.map +1 -0
- package/dist/esm/mods/toolkit/src/helpers/Uint8Array.js +333 -0
- package/dist/esm/mods/toolkit/src/helpers/Uint8Array.js.map +1 -0
- package/dist/esm/mods/toolkit/src/helpers/createEnu.js +25 -0
- package/dist/esm/mods/toolkit/src/helpers/createEnu.js.map +1 -0
- package/dist/esm/mods/toolkit/src/index.js +373 -0
- package/dist/esm/mods/toolkit/src/index.js.map +1 -0
- package/dist/esm/mods/toolkit/src/types/global.js +49 -0
- package/dist/esm/mods/toolkit/src/types/global.js.map +1 -0
- package/dist/esm/mods/toolkit/src/types/secure-mem.type.js +96 -0
- package/dist/esm/mods/toolkit/src/types/secure-mem.type.js.map +1 -0
- package/dist/esm/mods/toolkit/src/types/secure-memory.js +20 -0
- package/dist/esm/mods/toolkit/src/types/secure-memory.js.map +1 -0
- package/dist/esm/mods/toolkit/src/types.js +63 -0
- package/dist/esm/mods/toolkit/src/types.js.map +1 -0
- package/dist/esm/mods/toolkit/src/utils/CryptoAlgorithmUtils.js +69 -0
- package/dist/esm/mods/toolkit/src/utils/CryptoAlgorithmUtils.js.map +1 -0
- package/dist/esm/mods/toolkit/src/utils/constants.js +105 -0
- package/dist/esm/mods/toolkit/src/utils/constants.js.map +1 -0
- package/dist/esm/mods/toolkit/src/utils/dataConverter.js +72 -0
- package/dist/esm/mods/toolkit/src/utils/dataConverter.js.map +1 -0
- package/dist/esm/mods/toolkit/src/utils/encoding.js +279 -0
- package/dist/esm/mods/toolkit/src/utils/encoding.js.map +1 -0
- package/dist/esm/mods/toolkit/src/utils/errorHandler.js +137 -0
- package/dist/esm/mods/toolkit/src/utils/errorHandler.js.map +1 -0
- package/dist/esm/mods/toolkit/src/utils/memory/config-manager.js +280 -0
- package/dist/esm/mods/toolkit/src/utils/memory/config-manager.js.map +1 -0
- package/dist/esm/mods/toolkit/src/utils/memory/event-manager.js +275 -0
- package/dist/esm/mods/toolkit/src/utils/memory/event-manager.js.map +1 -0
- package/dist/esm/mods/toolkit/src/utils/memory/index.js +141 -0
- package/dist/esm/mods/toolkit/src/utils/memory/index.js.map +1 -0
- package/dist/esm/mods/toolkit/src/utils/memory/memory-manager.js +886 -0
- package/dist/esm/mods/toolkit/src/utils/memory/memory-manager.js.map +1 -0
- package/dist/esm/mods/toolkit/src/utils/memory/memory-pool.js +354 -0
- package/dist/esm/mods/toolkit/src/utils/memory/memory-pool.js.map +1 -0
- package/dist/esm/mods/toolkit/src/utils/memory/reference-tracker.js +374 -0
- package/dist/esm/mods/toolkit/src/utils/memory/reference-tracker.js.map +1 -0
- package/dist/esm/mods/toolkit/src/utils/memory/types.js +56 -0
- package/dist/esm/mods/toolkit/src/utils/memory/types.js.map +1 -0
- package/dist/esm/mods/toolkit/src/utils/patterns.js +124 -0
- package/dist/esm/mods/toolkit/src/utils/patterns.js.map +1 -0
- package/dist/esm/mods/toolkit/src/utils/performanceMonitor.js +246 -0
- package/dist/esm/mods/toolkit/src/utils/performanceMonitor.js.map +1 -0
- package/dist/esm/mods/toolkit/src/utils/stats.js +180 -0
- package/dist/esm/mods/toolkit/src/utils/stats.js.map +1 -0
- package/dist/esm/performance-monitor.js +160 -0
- package/dist/esm/performance-monitor.js.map +1 -0
- package/dist/esm/plugins/plugin-manager.js +149 -0
- package/dist/esm/plugins/plugin-manager.js.map +1 -0
- package/dist/esm/plugins/route-optimization-plugin.js +411 -0
- package/dist/esm/plugins/route-optimization-plugin.js.map +1 -0
- package/dist/esm/plugins/server-maintenance-plugin.js +488 -0
- package/dist/esm/plugins/server-maintenance-plugin.js.map +1 -0
- package/dist/esm/quick-start.js +45 -0
- package/dist/esm/quick-start.js.map +1 -0
- package/dist/esm/security-middleware.js +413 -0
- package/dist/esm/security-middleware.js.map +1 -0
- package/dist/esm/server/FastServer.js +985 -0
- package/dist/esm/server/FastServer.js.map +1 -0
- package/dist/esm/server/components/fastapi/CacheManager.js +243 -0
- package/dist/esm/server/components/fastapi/CacheManager.js.map +1 -0
- package/dist/esm/server/components/fastapi/ClusterManagerComponent.js +325 -0
- package/dist/esm/server/components/fastapi/ClusterManagerComponent.js.map +1 -0
- package/dist/esm/server/components/fastapi/FileWatcherManager.js +491 -0
- package/dist/esm/server/components/fastapi/FileWatcherManager.js.map +1 -0
- package/dist/esm/server/components/fastapi/MonitoringManager.js +305 -0
- package/dist/esm/server/components/fastapi/MonitoringManager.js.map +1 -0
- package/dist/esm/server/components/fastapi/PerformanceManager.js +295 -0
- package/dist/esm/server/components/fastapi/PerformanceManager.js.map +1 -0
- package/dist/esm/server/components/fastapi/PluginManager.js +310 -0
- package/dist/esm/server/components/fastapi/PluginManager.js.map +1 -0
- package/dist/esm/server/components/fastapi/RedirectManager.js +490 -0
- package/dist/esm/server/components/fastapi/RedirectManager.js.map +1 -0
- package/dist/esm/server/components/fastapi/RequestProcessor.js +211 -0
- package/dist/esm/server/components/fastapi/RequestProcessor.js.map +1 -0
- package/dist/esm/server/components/fastapi/RouteManager.js +270 -0
- package/dist/esm/server/components/fastapi/RouteManager.js.map +1 -0
- package/dist/esm/server/components/fastapi/UltraFastRequestProcessor.js +647 -0
- package/dist/esm/server/components/fastapi/UltraFastRequestProcessor.js.map +1 -0
- package/dist/esm/server/components/fastapi/console/ConsoleInterceptor.js +810 -0
- package/dist/esm/server/components/fastapi/console/ConsoleInterceptor.js.map +1 -0
- package/dist/esm/server/components/fastapi/console/encryption/ConsoleEncryption.js +214 -0
- package/dist/esm/server/components/fastapi/console/encryption/ConsoleEncryption.js.map +1 -0
- package/dist/esm/server/components/fastapi/console/types.js +160 -0
- package/dist/esm/server/components/fastapi/console/types.js.map +1 -0
- package/dist/esm/server/components/fastapi/middlewares/MiddlewareAPI.js +345 -0
- package/dist/esm/server/components/fastapi/middlewares/MiddlewareAPI.js.map +1 -0
- package/dist/esm/server/components/fastapi/middlewares/MiddlewareMethodsManager.js +202 -0
- package/dist/esm/server/components/fastapi/middlewares/MiddlewareMethodsManager.js.map +1 -0
- package/dist/esm/server/components/fastapi/middlewares/middlewareManager.js +951 -0
- package/dist/esm/server/components/fastapi/middlewares/middlewareManager.js.map +1 -0
- package/dist/esm/server/components/fastapi/modules/UFRP/WorkerPool.js +54 -0
- package/dist/esm/server/components/fastapi/modules/UFRP/WorkerPool.js.map +1 -0
- package/dist/esm/server/components/fastapi/templates/redirectTemp.js +99 -0
- package/dist/esm/server/components/fastapi/templates/redirectTemp.js.map +1 -0
- package/dist/esm/server/components/fastapi/typescript/TypeScriptChecker.js +351 -0
- package/dist/esm/server/components/fastapi/typescript/TypeScriptChecker.js.map +1 -0
- package/dist/esm/server/const/Cluster.config.js +70 -0
- package/dist/esm/server/const/Cluster.config.js.map +1 -0
- package/dist/esm/server/const/ExecutionPredictor_EP.const.js +62 -0
- package/dist/esm/server/const/ExecutionPredictor_EP.const.js.map +1 -0
- package/dist/esm/server/const/FileWatcher.config.js +96 -0
- package/dist/esm/server/const/FileWatcher.config.js.map +1 -0
- package/dist/esm/server/const/default.js +120 -0
- package/dist/esm/server/const/default.js.map +1 -0
- package/dist/esm/server/optimization/ExecutionPredictor.js +216 -0
- package/dist/esm/server/optimization/ExecutionPredictor.js.map +1 -0
- package/dist/esm/server/optimization/PerformanceProfiler.js +232 -0
- package/dist/esm/server/optimization/PerformanceProfiler.js.map +1 -0
- package/dist/esm/server/optimization/RequestPreCompiler.js +706 -0
- package/dist/esm/server/optimization/RequestPreCompiler.js.map +1 -0
- package/dist/esm/server/optimization/UltraFastOptimizer.js +398 -0
- package/dist/esm/server/optimization/UltraFastOptimizer.js.map +1 -0
- package/dist/esm/server/plugins/PluginEngine.js +376 -0
- package/dist/esm/server/plugins/PluginEngine.js.map +1 -0
- package/dist/esm/server/plugins/PluginRegistry.js +337 -0
- package/dist/esm/server/plugins/PluginRegistry.js.map +1 -0
- package/dist/esm/server/plugins/builtin/JWTAuthPlugin.js +589 -0
- package/dist/esm/server/plugins/builtin/JWTAuthPlugin.js.map +1 -0
- package/dist/esm/server/plugins/builtin/ResponseTimePlugin.js +411 -0
- package/dist/esm/server/plugins/builtin/ResponseTimePlugin.js.map +1 -0
- package/dist/esm/server/plugins/builtin/SmartCachePlugin.js +841 -0
- package/dist/esm/server/plugins/builtin/SmartCachePlugin.js.map +1 -0
- package/dist/esm/server/plugins/core/CachePlugin.js +1973 -0
- package/dist/esm/server/plugins/core/CachePlugin.js.map +1 -0
- package/dist/esm/server/plugins/core/PerformancePlugin.js +872 -0
- package/dist/esm/server/plugins/core/PerformancePlugin.js.map +1 -0
- package/dist/esm/server/plugins/core/SecurityPlugin.js +797 -0
- package/dist/esm/server/plugins/core/SecurityPlugin.js.map +1 -0
- package/dist/esm/server/plugins/types/PluginTypes.js +47 -0
- package/dist/esm/server/plugins/types/PluginTypes.js.map +1 -0
- package/dist/esm/server/service/Reload/FileWatcher.js +734 -0
- package/dist/esm/server/service/Reload/FileWatcher.js.map +1 -0
- package/dist/esm/server/service/Reload/HotReloader.js +735 -0
- package/dist/esm/server/service/Reload/HotReloader.js.map +1 -0
- package/dist/esm/server/service/Reload/exec/TypeScriptExecutor.js +339 -0
- package/dist/esm/server/service/Reload/exec/TypeScriptExecutor.js.map +1 -0
- package/dist/esm/server/utils/ConfigLoader.js +207 -0
- package/dist/esm/server/utils/ConfigLoader.js.map +1 -0
- package/dist/esm/server/utils/Logger.js +234 -0
- package/dist/esm/server/utils/Logger.js.map +1 -0
- package/dist/esm/server/utils/PortManager.js +155 -0
- package/dist/esm/server/utils/PortManager.js.map +1 -0
- package/dist/esm/server/utils/forceClosePort.js +124 -0
- package/dist/esm/server/utils/forceClosePort.js.map +1 -0
- package/dist/esm/smart-routes.js +345 -0
- package/dist/esm/smart-routes.js.map +1 -0
- package/package.json +5 -6
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
import { EventEmitter } from 'events';
|
|
2
|
+
import { RouteOptimizationPlugin } from './route-optimization-plugin.js';
|
|
3
|
+
import { ServerMaintenancePlugin } from './server-maintenance-plugin.js';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Plugin Manager
|
|
7
|
+
*
|
|
8
|
+
* Manages all server plugins including route optimization and maintenance
|
|
9
|
+
*/
|
|
10
|
+
class PluginManager extends EventEmitter {
|
|
11
|
+
constructor(config = {}) {
|
|
12
|
+
super();
|
|
13
|
+
this.config = config;
|
|
14
|
+
this.customPlugins = new Map();
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Initialize all plugins
|
|
18
|
+
*/
|
|
19
|
+
initialize(app, logger) {
|
|
20
|
+
this.logger = logger;
|
|
21
|
+
// Initialize route optimization plugin
|
|
22
|
+
if (this.config.routeOptimization?.enabled !== false) {
|
|
23
|
+
this.routeOptimizationPlugin = new RouteOptimizationPlugin(this.config.routeOptimization);
|
|
24
|
+
this.routeOptimizationPlugin.initialize(app, logger);
|
|
25
|
+
// Forward events
|
|
26
|
+
this.routeOptimizationPlugin.on("route_optimized", (data) => {
|
|
27
|
+
this.emit("route_optimized", data);
|
|
28
|
+
});
|
|
29
|
+
this.routeOptimizationPlugin.on("analysis_complete", (data) => {
|
|
30
|
+
this.emit("route_analysis_complete", data);
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
// Initialize server maintenance plugin
|
|
34
|
+
if (this.config.serverMaintenance?.enabled !== false) {
|
|
35
|
+
this.serverMaintenancePlugin = new ServerMaintenancePlugin(this.config.serverMaintenance);
|
|
36
|
+
this.serverMaintenancePlugin.initialize(app, logger);
|
|
37
|
+
// Forward events
|
|
38
|
+
this.serverMaintenancePlugin.on("issue_detected", (issue) => {
|
|
39
|
+
this.emit("maintenance_issue", issue);
|
|
40
|
+
});
|
|
41
|
+
this.serverMaintenancePlugin.on("health_check", (metrics) => {
|
|
42
|
+
this.emit("health_check", metrics);
|
|
43
|
+
});
|
|
44
|
+
this.serverMaintenancePlugin.on("maintenance_complete", (actions) => {
|
|
45
|
+
this.emit("maintenance_complete", actions);
|
|
46
|
+
});
|
|
47
|
+
this.serverMaintenancePlugin.on("critical_issue", (issue) => {
|
|
48
|
+
this.emit("critical_issue", issue);
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
// Initialize custom plugins
|
|
52
|
+
if (this.config.customPlugins) {
|
|
53
|
+
for (const { name, plugin, config } of this.config.customPlugins) {
|
|
54
|
+
try {
|
|
55
|
+
const pluginInstance = new plugin(config);
|
|
56
|
+
if (pluginInstance.initialize) {
|
|
57
|
+
pluginInstance.initialize(app, logger);
|
|
58
|
+
}
|
|
59
|
+
this.customPlugins.set(name, pluginInstance);
|
|
60
|
+
logger.info("plugins", `Custom plugin initialized: ${name}`);
|
|
61
|
+
}
|
|
62
|
+
catch (error) {
|
|
63
|
+
logger.error("plugins", `Failed to initialize custom plugin ${name}: ${error}`);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
logger.info("plugins", "Plugin Manager initialized");
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Get route optimization plugin
|
|
71
|
+
*/
|
|
72
|
+
getRouteOptimizationPlugin() {
|
|
73
|
+
return this.routeOptimizationPlugin;
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Get server maintenance plugin
|
|
77
|
+
*/
|
|
78
|
+
getServerMaintenancePlugin() {
|
|
79
|
+
return this.serverMaintenancePlugin;
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Get custom plugin by name
|
|
83
|
+
*/
|
|
84
|
+
getCustomPlugin(name) {
|
|
85
|
+
return this.customPlugins.get(name);
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Get comprehensive server status
|
|
89
|
+
*/
|
|
90
|
+
getServerStatus() {
|
|
91
|
+
const status = {
|
|
92
|
+
timestamp: new Date(),
|
|
93
|
+
uptime: process.uptime(),
|
|
94
|
+
plugins: {
|
|
95
|
+
routeOptimization: !!this.routeOptimizationPlugin,
|
|
96
|
+
serverMaintenance: !!this.serverMaintenancePlugin,
|
|
97
|
+
custom: Array.from(this.customPlugins.keys()),
|
|
98
|
+
},
|
|
99
|
+
};
|
|
100
|
+
// Add route optimization data
|
|
101
|
+
if (this.routeOptimizationPlugin) {
|
|
102
|
+
status.routeOptimization = {
|
|
103
|
+
trackedRoutes: this.routeOptimizationPlugin.getRouteStats().length,
|
|
104
|
+
optimizedRoutes: this.routeOptimizationPlugin.getOptimizedRoutes().length,
|
|
105
|
+
topRoutes: this.routeOptimizationPlugin
|
|
106
|
+
.getRouteStats()
|
|
107
|
+
.slice(0, 5),
|
|
108
|
+
};
|
|
109
|
+
}
|
|
110
|
+
// Add maintenance data
|
|
111
|
+
if (this.serverMaintenancePlugin) {
|
|
112
|
+
const healthMetrics = this.serverMaintenancePlugin.getHealthMetrics();
|
|
113
|
+
const issues = this.serverMaintenancePlugin.getUnresolvedIssues();
|
|
114
|
+
status.maintenance = {
|
|
115
|
+
health: healthMetrics,
|
|
116
|
+
unresolvedIssues: issues.length,
|
|
117
|
+
criticalIssues: issues.filter((i) => i.severity >= 8).length,
|
|
118
|
+
recentIssues: issues.slice(-5),
|
|
119
|
+
};
|
|
120
|
+
}
|
|
121
|
+
return status;
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Destroy all plugins
|
|
125
|
+
*/
|
|
126
|
+
destroy() {
|
|
127
|
+
if (this.routeOptimizationPlugin) {
|
|
128
|
+
this.routeOptimizationPlugin.destroy();
|
|
129
|
+
}
|
|
130
|
+
if (this.serverMaintenancePlugin) {
|
|
131
|
+
this.serverMaintenancePlugin.destroy();
|
|
132
|
+
}
|
|
133
|
+
for (const [name, plugin] of this.customPlugins.entries()) {
|
|
134
|
+
try {
|
|
135
|
+
if (plugin.destroy) {
|
|
136
|
+
plugin.destroy();
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
catch (error) {
|
|
140
|
+
this.logger?.error("plugins", `Error destroying custom plugin ${name}: ${error}`);
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
this.customPlugins.clear();
|
|
144
|
+
this.removeAllListeners();
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
export { PluginManager };
|
|
149
|
+
//# sourceMappingURL=plugin-manager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plugin-manager.js","sources":["../../../src/plugins/plugin-manager.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,411 @@
|
|
|
1
|
+
import { EventEmitter } from 'events';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Route Optimization Plugin
|
|
5
|
+
*
|
|
6
|
+
* Automatically detects popular routes and optimizes them in the background
|
|
7
|
+
* Features:
|
|
8
|
+
* - Route popularity tracking
|
|
9
|
+
* - Automatic caching for hot routes
|
|
10
|
+
* - Response time optimization
|
|
11
|
+
* - Predictive preloading
|
|
12
|
+
* - Route pattern analysis
|
|
13
|
+
*/
|
|
14
|
+
class RouteOptimizationPlugin extends EventEmitter {
|
|
15
|
+
constructor(config = {}) {
|
|
16
|
+
super();
|
|
17
|
+
this.routeStats = new Map();
|
|
18
|
+
this.optimizedRoutes = new Set();
|
|
19
|
+
this.config = {
|
|
20
|
+
enabled: true,
|
|
21
|
+
analysisInterval: 60000, // 1 minute
|
|
22
|
+
optimizationThreshold: 100,
|
|
23
|
+
popularityWindow: 3600000, // 1 hour
|
|
24
|
+
maxTrackedRoutes: 1000,
|
|
25
|
+
autoOptimization: true,
|
|
26
|
+
customRules: [],
|
|
27
|
+
onOptimization: () => { },
|
|
28
|
+
onAnalysis: () => { },
|
|
29
|
+
...config,
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Initialize the plugin with Express app
|
|
34
|
+
*/
|
|
35
|
+
initialize(app, logger) {
|
|
36
|
+
if (!this.config.enabled)
|
|
37
|
+
return;
|
|
38
|
+
this.app = app;
|
|
39
|
+
this.logger = logger;
|
|
40
|
+
// Install route tracking middleware
|
|
41
|
+
this.installTrackingMiddleware();
|
|
42
|
+
// Start background analysis
|
|
43
|
+
this.startBackgroundAnalysis();
|
|
44
|
+
this.logger.info("plugins", "Route Optimization Plugin initialized");
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Install middleware to track route usage
|
|
48
|
+
*/
|
|
49
|
+
installTrackingMiddleware() {
|
|
50
|
+
this.app.use((req, res, next) => {
|
|
51
|
+
const startTime = Date.now();
|
|
52
|
+
const routeKey = `${req.method}:${req.path}`;
|
|
53
|
+
// Track request start
|
|
54
|
+
this.trackRouteStart(routeKey);
|
|
55
|
+
// Override res.end to capture response time
|
|
56
|
+
const originalEnd = res.end.bind(res);
|
|
57
|
+
res.end = (...args) => {
|
|
58
|
+
const responseTime = Date.now() - startTime;
|
|
59
|
+
const statusCode = res.statusCode;
|
|
60
|
+
this.trackRouteEnd(routeKey, responseTime, statusCode);
|
|
61
|
+
return originalEnd(...args);
|
|
62
|
+
};
|
|
63
|
+
next();
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Track route request start
|
|
68
|
+
*/
|
|
69
|
+
trackRouteStart(routeKey) {
|
|
70
|
+
const [method, path] = routeKey.split(":");
|
|
71
|
+
if (!this.routeStats.has(routeKey)) {
|
|
72
|
+
this.routeStats.set(routeKey, {
|
|
73
|
+
path,
|
|
74
|
+
method,
|
|
75
|
+
hitCount: 0,
|
|
76
|
+
totalResponseTime: 0,
|
|
77
|
+
averageResponseTime: 0,
|
|
78
|
+
lastAccessed: new Date(),
|
|
79
|
+
errorCount: 0,
|
|
80
|
+
cacheHits: 0,
|
|
81
|
+
cacheMisses: 0,
|
|
82
|
+
popularity: 0,
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
const stats = this.routeStats.get(routeKey);
|
|
86
|
+
stats.hitCount++;
|
|
87
|
+
stats.lastAccessed = new Date();
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Track route request completion
|
|
91
|
+
*/
|
|
92
|
+
trackRouteEnd(routeKey, responseTime, statusCode) {
|
|
93
|
+
const stats = this.routeStats.get(routeKey);
|
|
94
|
+
if (!stats)
|
|
95
|
+
return;
|
|
96
|
+
stats.totalResponseTime += responseTime;
|
|
97
|
+
stats.averageResponseTime = stats.totalResponseTime / stats.hitCount;
|
|
98
|
+
if (statusCode >= 400) {
|
|
99
|
+
stats.errorCount++;
|
|
100
|
+
}
|
|
101
|
+
// Calculate popularity score
|
|
102
|
+
stats.popularity = this.calculatePopularity(stats);
|
|
103
|
+
// Check if route needs optimization
|
|
104
|
+
if (this.config.autoOptimization && this.shouldOptimizeRoute(stats)) {
|
|
105
|
+
this.optimizeRoute(routeKey, stats);
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Calculate route popularity score
|
|
110
|
+
*/
|
|
111
|
+
calculatePopularity(stats) {
|
|
112
|
+
const now = Date.now();
|
|
113
|
+
const timeSinceLastAccess = now - stats.lastAccessed.getTime();
|
|
114
|
+
const recencyFactor = Math.max(0, 1 - timeSinceLastAccess / this.config.popularityWindow);
|
|
115
|
+
const frequencyScore = Math.log(stats.hitCount + 1);
|
|
116
|
+
const performanceScore = Math.max(0, 1 - stats.averageResponseTime / 1000); // Normalize to 1 second
|
|
117
|
+
const reliabilityScore = Math.max(0, 1 - stats.errorCount / stats.hitCount);
|
|
118
|
+
return (frequencyScore * 0.4 +
|
|
119
|
+
performanceScore * 0.3 +
|
|
120
|
+
reliabilityScore * 0.2 +
|
|
121
|
+
recencyFactor * 0.1);
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Check if route should be optimized
|
|
125
|
+
*/
|
|
126
|
+
shouldOptimizeRoute(stats) {
|
|
127
|
+
if (this.optimizedRoutes.has(`${stats.method}:${stats.path}`)) {
|
|
128
|
+
return false; // Already optimized
|
|
129
|
+
}
|
|
130
|
+
// Check threshold
|
|
131
|
+
if (stats.hitCount < this.config.optimizationThreshold) {
|
|
132
|
+
return false;
|
|
133
|
+
}
|
|
134
|
+
// Check custom rules
|
|
135
|
+
for (const rule of this.config.customRules) {
|
|
136
|
+
if (this.matchesPattern(stats.path, rule.pattern)) {
|
|
137
|
+
return (stats.hitCount >= rule.minHits &&
|
|
138
|
+
stats.averageResponseTime <= rule.maxResponseTime);
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
// Default optimization criteria
|
|
142
|
+
return stats.popularity > 5 || stats.averageResponseTime > 500;
|
|
143
|
+
}
|
|
144
|
+
/**
|
|
145
|
+
* Optimize a specific route
|
|
146
|
+
*/
|
|
147
|
+
optimizeRoute(routeKey, stats) {
|
|
148
|
+
if (this.optimizedRoutes.has(routeKey))
|
|
149
|
+
return;
|
|
150
|
+
const optimizations = [];
|
|
151
|
+
// Apply caching optimization
|
|
152
|
+
if (stats.averageResponseTime > 200) {
|
|
153
|
+
this.applyCachingOptimization(routeKey, stats);
|
|
154
|
+
optimizations.push("caching");
|
|
155
|
+
}
|
|
156
|
+
// Apply response compression
|
|
157
|
+
if (stats.hitCount > 500) {
|
|
158
|
+
this.applyCompressionOptimization(routeKey, stats);
|
|
159
|
+
optimizations.push("compression");
|
|
160
|
+
}
|
|
161
|
+
// Apply preloading for very popular routes
|
|
162
|
+
if (stats.popularity > 8) {
|
|
163
|
+
this.applyPreloadingOptimization(routeKey, stats);
|
|
164
|
+
optimizations.push("preloading");
|
|
165
|
+
}
|
|
166
|
+
this.optimizedRoutes.add(routeKey);
|
|
167
|
+
this.logger.info("plugins", `Route optimized: ${routeKey} (${optimizations.join(", ")})`);
|
|
168
|
+
this.config.onOptimization(routeKey, optimizations.join(", "));
|
|
169
|
+
this.emit("route_optimized", { routeKey, stats, optimizations });
|
|
170
|
+
}
|
|
171
|
+
/**
|
|
172
|
+
* Apply caching optimization
|
|
173
|
+
*/
|
|
174
|
+
applyCachingOptimization(routeKey, stats) {
|
|
175
|
+
const [method, path] = routeKey.split(":");
|
|
176
|
+
// Determine cache strategy based on route performance
|
|
177
|
+
let cacheStrategy = "moderate";
|
|
178
|
+
let cacheTTL = 300; // 5 minutes default
|
|
179
|
+
if (stats.averageResponseTime > 1000) {
|
|
180
|
+
cacheStrategy = "aggressive";
|
|
181
|
+
cacheTTL = 1800; // 30 minutes for slow routes
|
|
182
|
+
}
|
|
183
|
+
else if (stats.averageResponseTime < 200) {
|
|
184
|
+
cacheStrategy = "conservative";
|
|
185
|
+
cacheTTL = 60; // 1 minute for fast routes
|
|
186
|
+
}
|
|
187
|
+
// Apply route-specific caching middleware
|
|
188
|
+
this.app.use(path, (req, res, next) => {
|
|
189
|
+
// Only cache GET requests
|
|
190
|
+
if (req.method !== "GET") {
|
|
191
|
+
return next();
|
|
192
|
+
}
|
|
193
|
+
const cacheKey = `route_cache:${method}:${req.originalUrl}:${JSON.stringify(req.query)}`;
|
|
194
|
+
// Try to get from cache first
|
|
195
|
+
if (this.app.cacheManager) {
|
|
196
|
+
this.app.cacheManager
|
|
197
|
+
.get(cacheKey)
|
|
198
|
+
.then((cachedResponse) => {
|
|
199
|
+
if (cachedResponse) {
|
|
200
|
+
stats.cacheHits++;
|
|
201
|
+
res.set("X-Cache", "HIT");
|
|
202
|
+
res.set("X-Cache-Strategy", cacheStrategy);
|
|
203
|
+
return res.json(cachedResponse);
|
|
204
|
+
}
|
|
205
|
+
// Cache miss - intercept response
|
|
206
|
+
stats.cacheMisses++;
|
|
207
|
+
const originalJson = res.json.bind(res);
|
|
208
|
+
res.json = (data) => {
|
|
209
|
+
// Cache the response
|
|
210
|
+
this.app.cacheManager.set(cacheKey, data, {
|
|
211
|
+
ttl: cacheTTL,
|
|
212
|
+
});
|
|
213
|
+
res.set("X-Cache", "MISS");
|
|
214
|
+
res.set("X-Cache-Strategy", cacheStrategy);
|
|
215
|
+
return originalJson(data);
|
|
216
|
+
};
|
|
217
|
+
next();
|
|
218
|
+
})
|
|
219
|
+
.catch(() => {
|
|
220
|
+
// Cache error - continue without caching
|
|
221
|
+
next();
|
|
222
|
+
});
|
|
223
|
+
}
|
|
224
|
+
else {
|
|
225
|
+
next();
|
|
226
|
+
}
|
|
227
|
+
});
|
|
228
|
+
this.logger.debug("plugins", `Applied ${cacheStrategy} caching optimization to ${routeKey} (TTL: ${cacheTTL}s)`);
|
|
229
|
+
}
|
|
230
|
+
/**
|
|
231
|
+
* Apply compression optimization
|
|
232
|
+
*/
|
|
233
|
+
applyCompressionOptimization(routeKey, stats) {
|
|
234
|
+
const [method, path] = routeKey.split(":");
|
|
235
|
+
// Apply compression middleware for this specific route
|
|
236
|
+
this.app.use(path, (req, res, next) => {
|
|
237
|
+
// Enable compression for responses larger than 1KB
|
|
238
|
+
const originalSend = res.send.bind(res);
|
|
239
|
+
const originalJson = res.json.bind(res);
|
|
240
|
+
res.send = (data) => {
|
|
241
|
+
if (data && typeof data === "string" && data.length > 1024) {
|
|
242
|
+
res.set("X-Compression", "ENABLED");
|
|
243
|
+
res.set("Content-Encoding", "gzip");
|
|
244
|
+
}
|
|
245
|
+
return originalSend(data);
|
|
246
|
+
};
|
|
247
|
+
res.json = (data) => {
|
|
248
|
+
const jsonString = JSON.stringify(data);
|
|
249
|
+
if (jsonString.length > 1024) {
|
|
250
|
+
res.set("X-Compression", "ENABLED");
|
|
251
|
+
res.set("Content-Encoding", "gzip");
|
|
252
|
+
}
|
|
253
|
+
return originalJson(data);
|
|
254
|
+
};
|
|
255
|
+
next();
|
|
256
|
+
});
|
|
257
|
+
this.logger.debug("plugins", `Applied compression optimization to ${routeKey} (avg response: ${stats.averageResponseTime}ms)`);
|
|
258
|
+
}
|
|
259
|
+
/**
|
|
260
|
+
* Apply preloading optimization
|
|
261
|
+
*/
|
|
262
|
+
applyPreloadingOptimization(routeKey, stats) {
|
|
263
|
+
const [method, path] = routeKey.split(":");
|
|
264
|
+
// Preload common responses for very popular routes
|
|
265
|
+
if (stats.popularity > 8 && method === "GET") {
|
|
266
|
+
// Schedule preloading during low traffic periods
|
|
267
|
+
setTimeout(() => {
|
|
268
|
+
this.preloadRouteData(path, stats);
|
|
269
|
+
}, 60000); // Preload after 1 minute
|
|
270
|
+
// Set up predictive preloading based on access patterns
|
|
271
|
+
this.app.use(path, (req, res, next) => {
|
|
272
|
+
// Track access patterns for predictive preloading
|
|
273
|
+
const userAgent = req.headers["user-agent"] || "unknown";
|
|
274
|
+
const referer = req.headers["referer"] || "direct";
|
|
275
|
+
// Store access pattern for future preloading
|
|
276
|
+
const accessPattern = {
|
|
277
|
+
path: req.originalUrl,
|
|
278
|
+
userAgent,
|
|
279
|
+
referer,
|
|
280
|
+
timestamp: Date.now(),
|
|
281
|
+
query: req.query,
|
|
282
|
+
};
|
|
283
|
+
// Add to preload queue if pattern is detected
|
|
284
|
+
this.schedulePreload(accessPattern);
|
|
285
|
+
res.set("X-Preload", "ENABLED");
|
|
286
|
+
next();
|
|
287
|
+
});
|
|
288
|
+
}
|
|
289
|
+
this.logger.debug("plugins", `Applied preloading optimization to ${routeKey} (popularity: ${stats.popularity.toFixed(2)})`);
|
|
290
|
+
}
|
|
291
|
+
/**
|
|
292
|
+
* Preload route data
|
|
293
|
+
*/
|
|
294
|
+
preloadRouteData(path, stats) {
|
|
295
|
+
// Simulate preloading by making internal requests
|
|
296
|
+
if (this.app.cacheManager) {
|
|
297
|
+
const preloadKey = `preload:${path}:${Date.now()}`;
|
|
298
|
+
// Store preload metadata
|
|
299
|
+
this.app.cacheManager.set(preloadKey, {
|
|
300
|
+
path,
|
|
301
|
+
preloadedAt: new Date(),
|
|
302
|
+
averageResponseTime: stats.averageResponseTime,
|
|
303
|
+
hitCount: stats.hitCount,
|
|
304
|
+
}, { ttl: 3600 }); // 1 hour
|
|
305
|
+
this.logger.debug("plugins", `Preloaded data for ${path}`);
|
|
306
|
+
}
|
|
307
|
+
}
|
|
308
|
+
/**
|
|
309
|
+
* Schedule predictive preloading
|
|
310
|
+
*/
|
|
311
|
+
schedulePreload(accessPattern) {
|
|
312
|
+
// Simple predictive logic - preload related resources
|
|
313
|
+
if (accessPattern.path.includes("/api/")) {
|
|
314
|
+
const relatedPaths = [
|
|
315
|
+
accessPattern.path + "/details",
|
|
316
|
+
accessPattern.path + "/related",
|
|
317
|
+
accessPattern.path.replace("/api/", "/api/meta/"),
|
|
318
|
+
];
|
|
319
|
+
relatedPaths.forEach((relatedPath) => {
|
|
320
|
+
setTimeout(() => {
|
|
321
|
+
this.logger.debug("plugins", `Predictive preload scheduled for ${relatedPath}`);
|
|
322
|
+
}, Math.random() * 30000); // Random delay up to 30 seconds
|
|
323
|
+
});
|
|
324
|
+
}
|
|
325
|
+
}
|
|
326
|
+
/**
|
|
327
|
+
* Check if path matches pattern
|
|
328
|
+
*/
|
|
329
|
+
matchesPattern(path, pattern) {
|
|
330
|
+
const regex = new RegExp(pattern.replace(/\*/g, ".*"));
|
|
331
|
+
return regex.test(path);
|
|
332
|
+
}
|
|
333
|
+
/**
|
|
334
|
+
* Start background analysis
|
|
335
|
+
*/
|
|
336
|
+
startBackgroundAnalysis() {
|
|
337
|
+
this.analysisTimer = setInterval(() => {
|
|
338
|
+
this.performAnalysis();
|
|
339
|
+
}, this.config.analysisInterval);
|
|
340
|
+
}
|
|
341
|
+
/**
|
|
342
|
+
* Perform route analysis
|
|
343
|
+
*/
|
|
344
|
+
performAnalysis() {
|
|
345
|
+
const stats = Array.from(this.routeStats.values())
|
|
346
|
+
.sort((a, b) => b.popularity - a.popularity)
|
|
347
|
+
.slice(0, 20); // Top 20 routes
|
|
348
|
+
this.logger.debug("plugins", `Analyzed ${this.routeStats.size} routes, top performers: ${stats.length}`);
|
|
349
|
+
this.config.onAnalysis(stats);
|
|
350
|
+
this.emit("analysis_complete", stats);
|
|
351
|
+
// Cleanup old routes
|
|
352
|
+
this.cleanupOldRoutes();
|
|
353
|
+
}
|
|
354
|
+
/**
|
|
355
|
+
* Cleanup old unused routes
|
|
356
|
+
*/
|
|
357
|
+
cleanupOldRoutes() {
|
|
358
|
+
const now = Date.now();
|
|
359
|
+
const cutoff = now - this.config.popularityWindow * 2; // 2x the popularity window
|
|
360
|
+
for (const [routeKey, stats] of this.routeStats.entries()) {
|
|
361
|
+
if (stats.lastAccessed.getTime() < cutoff && stats.hitCount < 10) {
|
|
362
|
+
this.routeStats.delete(routeKey);
|
|
363
|
+
this.optimizedRoutes.delete(routeKey);
|
|
364
|
+
}
|
|
365
|
+
}
|
|
366
|
+
// Limit total tracked routes
|
|
367
|
+
if (this.routeStats.size > this.config.maxTrackedRoutes) {
|
|
368
|
+
const sortedRoutes = Array.from(this.routeStats.entries()).sort(([, a], [, b]) => a.popularity - b.popularity);
|
|
369
|
+
const toRemove = sortedRoutes.slice(0, this.routeStats.size - this.config.maxTrackedRoutes);
|
|
370
|
+
toRemove.forEach(([routeKey]) => {
|
|
371
|
+
this.routeStats.delete(routeKey);
|
|
372
|
+
this.optimizedRoutes.delete(routeKey);
|
|
373
|
+
});
|
|
374
|
+
}
|
|
375
|
+
}
|
|
376
|
+
/**
|
|
377
|
+
* Get route statistics
|
|
378
|
+
*/
|
|
379
|
+
getRouteStats() {
|
|
380
|
+
return Array.from(this.routeStats.values()).sort((a, b) => b.popularity - a.popularity);
|
|
381
|
+
}
|
|
382
|
+
/**
|
|
383
|
+
* Get optimized routes
|
|
384
|
+
*/
|
|
385
|
+
getOptimizedRoutes() {
|
|
386
|
+
return Array.from(this.optimizedRoutes);
|
|
387
|
+
}
|
|
388
|
+
/**
|
|
389
|
+
* Manually optimize a route
|
|
390
|
+
*/
|
|
391
|
+
manualOptimize(routeKey) {
|
|
392
|
+
const stats = this.routeStats.get(routeKey);
|
|
393
|
+
if (stats) {
|
|
394
|
+
this.optimizeRoute(routeKey, stats);
|
|
395
|
+
}
|
|
396
|
+
}
|
|
397
|
+
/**
|
|
398
|
+
* Destroy the plugin
|
|
399
|
+
*/
|
|
400
|
+
destroy() {
|
|
401
|
+
if (this.analysisTimer) {
|
|
402
|
+
clearInterval(this.analysisTimer);
|
|
403
|
+
}
|
|
404
|
+
this.routeStats.clear();
|
|
405
|
+
this.optimizedRoutes.clear();
|
|
406
|
+
this.removeAllListeners();
|
|
407
|
+
}
|
|
408
|
+
}
|
|
409
|
+
|
|
410
|
+
export { RouteOptimizationPlugin };
|
|
411
|
+
//# sourceMappingURL=route-optimization-plugin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"route-optimization-plugin.js","sources":["../../../src/plugins/route-optimization-plugin.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|