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.
Files changed (788) hide show
  1. package/README.md +2 -0
  2. package/dist/cjs/ServerFactory.js +195 -0
  3. package/dist/cjs/ServerFactory.js.map +1 -0
  4. package/dist/cjs/cache/CacheFactory.js +406 -0
  5. package/dist/cjs/cache/CacheFactory.js.map +1 -0
  6. package/dist/cjs/cache/SecureCacheAdapter.js +1227 -0
  7. package/dist/cjs/cache/SecureCacheAdapter.js.map +1 -0
  8. package/dist/cjs/cluster/cluster-manager.js +1011 -0
  9. package/dist/cjs/cluster/cluster-manager.js.map +1 -0
  10. package/dist/cjs/cluster/index.js +343 -0
  11. package/dist/cjs/cluster/index.js.map +1 -0
  12. package/dist/cjs/cluster/modules/AutoScaler.js +532 -0
  13. package/dist/cjs/cluster/modules/AutoScaler.js.map +1 -0
  14. package/dist/cjs/cluster/modules/ClusterFactory.js +518 -0
  15. package/dist/cjs/cluster/modules/ClusterFactory.js.map +1 -0
  16. package/dist/cjs/cluster/modules/ClusterPersistenceManager.js +436 -0
  17. package/dist/cjs/cluster/modules/ClusterPersistenceManager.js.map +1 -0
  18. package/dist/cjs/cluster/modules/HealthMonitor.js +461 -0
  19. package/dist/cjs/cluster/modules/HealthMonitor.js.map +1 -0
  20. package/dist/cjs/cluster/modules/IPCManager.js +781 -0
  21. package/dist/cjs/cluster/modules/IPCManager.js.map +1 -0
  22. package/dist/cjs/cluster/modules/LoadBalancer.js +1123 -0
  23. package/dist/cjs/cluster/modules/LoadBalancer.js.map +1 -0
  24. package/dist/cjs/cluster/modules/MetricsCollector.js +559 -0
  25. package/dist/cjs/cluster/modules/MetricsCollector.js.map +1 -0
  26. package/dist/cjs/cluster/modules/WorkerManager.js +1187 -0
  27. package/dist/cjs/cluster/modules/WorkerManager.js.map +1 -0
  28. package/dist/cjs/encryption/EncryptionService.js +399 -0
  29. package/dist/cjs/encryption/EncryptionService.js.map +1 -0
  30. package/dist/cjs/index.js.map +1 -0
  31. package/dist/cjs/middleware/safe-json-middleware.js +159 -0
  32. package/dist/cjs/middleware/safe-json-middleware.js.map +1 -0
  33. package/dist/cjs/mods/toolkit/src/algorithms/hash-algorithms.js +727 -0
  34. package/dist/cjs/mods/toolkit/src/algorithms/hash-algorithms.js.map +1 -0
  35. package/dist/cjs/mods/toolkit/src/algorithms/registry.js +83 -0
  36. package/dist/cjs/mods/toolkit/src/algorithms/registry.js.map +1 -0
  37. package/dist/cjs/mods/toolkit/src/components/attestation.js +1065 -0
  38. package/dist/cjs/mods/toolkit/src/components/attestation.js.map +1 -0
  39. package/dist/cjs/mods/toolkit/src/components/cache/FastLRU.js +323 -0
  40. package/dist/cjs/mods/toolkit/src/components/cache/FastLRU.js.map +1 -0
  41. package/dist/cjs/mods/toolkit/src/components/cache/UFSIMC.js +1131 -0
  42. package/dist/cjs/mods/toolkit/src/components/cache/UFSIMC.js.map +1 -0
  43. package/dist/cjs/mods/toolkit/src/components/cache/cacheSys.js +624 -0
  44. package/dist/cjs/mods/toolkit/src/components/cache/cacheSys.js.map +1 -0
  45. package/dist/cjs/mods/toolkit/src/components/cache/cacheSys.utils.js +136 -0
  46. package/dist/cjs/mods/toolkit/src/components/cache/cacheSys.utils.js.map +1 -0
  47. package/dist/cjs/mods/toolkit/src/components/cache/config/cache.config.js +39 -0
  48. package/dist/cjs/mods/toolkit/src/components/cache/config/cache.config.js.map +1 -0
  49. package/dist/cjs/mods/toolkit/src/components/cache/index.js +459 -0
  50. package/dist/cjs/mods/toolkit/src/components/cache/index.js.map +1 -0
  51. package/dist/cjs/mods/toolkit/src/components/cache/useCache.js +243 -0
  52. package/dist/cjs/mods/toolkit/src/components/cache/useCache.js.map +1 -0
  53. package/dist/cjs/mods/toolkit/src/components/canary-tokens.js +351 -0
  54. package/dist/cjs/mods/toolkit/src/components/canary-tokens.js.map +1 -0
  55. package/dist/cjs/mods/toolkit/src/components/entropy-augmentation.js +478 -0
  56. package/dist/cjs/mods/toolkit/src/components/entropy-augmentation.js.map +1 -0
  57. package/dist/cjs/mods/toolkit/src/components/fortified-function/UFA/ultra-fast-allocator.js +338 -0
  58. package/dist/cjs/mods/toolkit/src/components/fortified-function/UFA/ultra-fast-allocator.js.map +1 -0
  59. package/dist/cjs/mods/toolkit/src/components/fortified-function/UFA/ultra-fast-cache.js +536 -0
  60. package/dist/cjs/mods/toolkit/src/components/fortified-function/UFA/ultra-fast-cache.js.map +1 -0
  61. package/dist/cjs/mods/toolkit/src/components/fortified-function/UFA/ultra-fast-engine.js +631 -0
  62. package/dist/cjs/mods/toolkit/src/components/fortified-function/UFA/ultra-fast-engine.js.map +1 -0
  63. package/dist/cjs/mods/toolkit/src/components/fortified-function/const/exec.const.js +18 -0
  64. package/dist/cjs/mods/toolkit/src/components/fortified-function/const/exec.const.js.map +1 -0
  65. package/dist/cjs/mods/toolkit/src/components/fortified-function/core/fortified-config.js +356 -0
  66. package/dist/cjs/mods/toolkit/src/components/fortified-function/core/fortified-config.js.map +1 -0
  67. package/dist/cjs/mods/toolkit/src/components/fortified-function/core/fortified-function-core.js +520 -0
  68. package/dist/cjs/mods/toolkit/src/components/fortified-function/core/fortified-function-core.js.map +1 -0
  69. package/dist/cjs/mods/toolkit/src/components/fortified-function/core/fortified-logger.js +246 -0
  70. package/dist/cjs/mods/toolkit/src/components/fortified-function/core/fortified-logger.js.map +1 -0
  71. package/dist/cjs/mods/toolkit/src/components/fortified-function/core/mods/api-manager.js +189 -0
  72. package/dist/cjs/mods/toolkit/src/components/fortified-function/core/mods/api-manager.js.map +1 -0
  73. package/dist/cjs/mods/toolkit/src/components/fortified-function/core/mods/cache-manager.js +107 -0
  74. package/dist/cjs/mods/toolkit/src/components/fortified-function/core/mods/cache-manager.js.map +1 -0
  75. package/dist/cjs/mods/toolkit/src/components/fortified-function/core/mods/execution-context.js +105 -0
  76. package/dist/cjs/mods/toolkit/src/components/fortified-function/core/mods/execution-context.js.map +1 -0
  77. package/dist/cjs/mods/toolkit/src/components/fortified-function/core/mods/execution-engine.js +127 -0
  78. package/dist/cjs/mods/toolkit/src/components/fortified-function/core/mods/execution-engine.js.map +1 -0
  79. package/dist/cjs/mods/toolkit/src/components/fortified-function/core/mods/execution-router.js +93 -0
  80. package/dist/cjs/mods/toolkit/src/components/fortified-function/core/mods/execution-router.js.map +1 -0
  81. package/dist/cjs/mods/toolkit/src/components/fortified-function/core/mods/memory-manager.js +147 -0
  82. package/dist/cjs/mods/toolkit/src/components/fortified-function/core/mods/memory-manager.js.map +1 -0
  83. package/dist/cjs/mods/toolkit/src/components/fortified-function/core/mods/security-manager.js +102 -0
  84. package/dist/cjs/mods/toolkit/src/components/fortified-function/core/mods/security-manager.js.map +1 -0
  85. package/dist/cjs/mods/toolkit/src/components/fortified-function/core/mods/stats-manager.js +159 -0
  86. package/dist/cjs/mods/toolkit/src/components/fortified-function/core/mods/stats-manager.js.map +1 -0
  87. package/dist/cjs/mods/toolkit/src/components/fortified-function/core/mods/timing-manager.js +125 -0
  88. package/dist/cjs/mods/toolkit/src/components/fortified-function/core/mods/timing-manager.js.map +1 -0
  89. package/dist/cjs/mods/toolkit/src/components/fortified-function/engines/analytics-engine.js +370 -0
  90. package/dist/cjs/mods/toolkit/src/components/fortified-function/engines/analytics-engine.js.map +1 -0
  91. package/dist/cjs/mods/toolkit/src/components/fortified-function/engines/execution-engine.js +402 -0
  92. package/dist/cjs/mods/toolkit/src/components/fortified-function/engines/execution-engine.js.map +1 -0
  93. package/dist/cjs/mods/toolkit/src/components/fortified-function/index.js +172 -0
  94. package/dist/cjs/mods/toolkit/src/components/fortified-function/index.js.map +1 -0
  95. package/dist/cjs/mods/toolkit/src/components/fortified-function/performance/performance-monitor.js +240 -0
  96. package/dist/cjs/mods/toolkit/src/components/fortified-function/performance/performance-monitor.js.map +1 -0
  97. package/dist/cjs/mods/toolkit/src/components/fortified-function/performance/performance-timer.js +188 -0
  98. package/dist/cjs/mods/toolkit/src/components/fortified-function/performance/performance-timer.js.map +1 -0
  99. package/dist/cjs/mods/toolkit/src/components/fortified-function/security/security-handler.js +253 -0
  100. package/dist/cjs/mods/toolkit/src/components/fortified-function/security/security-handler.js.map +1 -0
  101. package/dist/cjs/mods/toolkit/src/components/fortified-function/serializer/safe-serializer.js +350 -0
  102. package/dist/cjs/mods/toolkit/src/components/fortified-function/serializer/safe-serializer.js.map +1 -0
  103. package/dist/cjs/mods/toolkit/src/components/fortified-function/smart-cache.js +693 -0
  104. package/dist/cjs/mods/toolkit/src/components/fortified-function/smart-cache.js.map +1 -0
  105. package/dist/cjs/mods/toolkit/src/components/fortified-function/types/types.js +16 -0
  106. package/dist/cjs/mods/toolkit/src/components/fortified-function/types/types.js.map +1 -0
  107. package/dist/cjs/mods/toolkit/src/components/fortified-function/utils/utils.js +68 -0
  108. package/dist/cjs/mods/toolkit/src/components/fortified-function/utils/utils.js.map +1 -0
  109. package/dist/cjs/mods/toolkit/src/components/memory-hard.js +922 -0
  110. package/dist/cjs/mods/toolkit/src/components/memory-hard.js.map +1 -0
  111. package/dist/cjs/mods/toolkit/src/components/post-quantum.js +323 -0
  112. package/dist/cjs/mods/toolkit/src/components/post-quantum.js.map +1 -0
  113. package/dist/cjs/mods/toolkit/src/components/runtime-verification.js +645 -0
  114. package/dist/cjs/mods/toolkit/src/components/runtime-verification.js.map +1 -0
  115. package/dist/cjs/mods/toolkit/src/components/secure-array/core/secure-array-core.js +1572 -0
  116. package/dist/cjs/mods/toolkit/src/components/secure-array/core/secure-array-core.js.map +1 -0
  117. package/dist/cjs/mods/toolkit/src/components/secure-array/crypto/ArrayCryptoHandler.js +330 -0
  118. package/dist/cjs/mods/toolkit/src/components/secure-array/crypto/ArrayCryptoHandler.js.map +1 -0
  119. package/dist/cjs/mods/toolkit/src/components/secure-array/events/event-manager.js +270 -0
  120. package/dist/cjs/mods/toolkit/src/components/secure-array/events/event-manager.js.map +1 -0
  121. package/dist/cjs/mods/toolkit/src/components/secure-array/index.js +66 -0
  122. package/dist/cjs/mods/toolkit/src/components/secure-array/index.js.map +1 -0
  123. package/dist/cjs/mods/toolkit/src/components/secure-array/metadata/metadata-manager.js +331 -0
  124. package/dist/cjs/mods/toolkit/src/components/secure-array/metadata/metadata-manager.js.map +1 -0
  125. package/dist/cjs/mods/toolkit/src/components/secure-array/serialization/ArraySerializationHandler.js +390 -0
  126. package/dist/cjs/mods/toolkit/src/components/secure-array/serialization/ArraySerializationHandler.js.map +1 -0
  127. package/dist/cjs/mods/toolkit/src/components/secure-array/types/index.js +87 -0
  128. package/dist/cjs/mods/toolkit/src/components/secure-array/types/index.js.map +1 -0
  129. package/dist/cjs/mods/toolkit/src/components/secure-array/utils/id-generator.js +80 -0
  130. package/dist/cjs/mods/toolkit/src/components/secure-array/utils/id-generator.js.map +1 -0
  131. package/dist/cjs/mods/toolkit/src/components/secure-array/utils/validation.js +275 -0
  132. package/dist/cjs/mods/toolkit/src/components/secure-array/utils/validation.js.map +1 -0
  133. package/dist/cjs/mods/toolkit/src/components/secure-memory.js +906 -0
  134. package/dist/cjs/mods/toolkit/src/components/secure-memory.js.map +1 -0
  135. package/dist/cjs/mods/toolkit/src/components/secure-object/core/secure-object-core.js +1605 -0
  136. package/dist/cjs/mods/toolkit/src/components/secure-object/core/secure-object-core.js.map +1 -0
  137. package/dist/cjs/mods/toolkit/src/components/secure-object/encryption/crypto-handler.js +362 -0
  138. package/dist/cjs/mods/toolkit/src/components/secure-object/encryption/crypto-handler.js.map +1 -0
  139. package/dist/cjs/mods/toolkit/src/components/secure-object/encryption/sensitive-keys.js +206 -0
  140. package/dist/cjs/mods/toolkit/src/components/secure-object/encryption/sensitive-keys.js.map +1 -0
  141. package/dist/cjs/mods/toolkit/src/components/secure-object/events/event-manager.js +197 -0
  142. package/dist/cjs/mods/toolkit/src/components/secure-object/events/event-manager.js.map +1 -0
  143. package/dist/cjs/mods/toolkit/src/components/secure-object/index.js +67 -0
  144. package/dist/cjs/mods/toolkit/src/components/secure-object/index.js.map +1 -0
  145. package/dist/cjs/mods/toolkit/src/components/secure-object/metadata/metadata-manager.js +183 -0
  146. package/dist/cjs/mods/toolkit/src/components/secure-object/metadata/metadata-manager.js.map +1 -0
  147. package/dist/cjs/mods/toolkit/src/components/secure-object/serialization/serialization-handler.js +197 -0
  148. package/dist/cjs/mods/toolkit/src/components/secure-object/serialization/serialization-handler.js.map +1 -0
  149. package/dist/cjs/mods/toolkit/src/components/secure-object/utils/id-generator.js +64 -0
  150. package/dist/cjs/mods/toolkit/src/components/secure-object/utils/id-generator.js.map +1 -0
  151. package/dist/cjs/mods/toolkit/src/components/secure-object/utils/validation.js +239 -0
  152. package/dist/cjs/mods/toolkit/src/components/secure-object/utils/validation.js.map +1 -0
  153. package/dist/cjs/mods/toolkit/src/components/secure-serialization.js +772 -0
  154. package/dist/cjs/mods/toolkit/src/components/secure-serialization.js.map +1 -0
  155. package/dist/cjs/mods/toolkit/src/components/secure-string/advanced/entropy-analyzer.js +308 -0
  156. package/dist/cjs/mods/toolkit/src/components/secure-string/advanced/entropy-analyzer.js.map +1 -0
  157. package/dist/cjs/mods/toolkit/src/components/secure-string/advanced/performance-monitor.js +335 -0
  158. package/dist/cjs/mods/toolkit/src/components/secure-string/advanced/performance-monitor.js.map +1 -0
  159. package/dist/cjs/mods/toolkit/src/components/secure-string/advanced/quantum-safe.js +245 -0
  160. package/dist/cjs/mods/toolkit/src/components/secure-string/advanced/quantum-safe.js.map +1 -0
  161. package/dist/cjs/mods/toolkit/src/components/secure-string/buffer/buffer-manager.js +205 -0
  162. package/dist/cjs/mods/toolkit/src/components/secure-string/buffer/buffer-manager.js.map +1 -0
  163. package/dist/cjs/mods/toolkit/src/components/secure-string/core/secure-string-core.js +788 -0
  164. package/dist/cjs/mods/toolkit/src/components/secure-string/core/secure-string-core.js.map +1 -0
  165. package/dist/cjs/mods/toolkit/src/components/secure-string/crypto/crypto-operations.js +319 -0
  166. package/dist/cjs/mods/toolkit/src/components/secure-string/crypto/crypto-operations.js.map +1 -0
  167. package/dist/cjs/mods/toolkit/src/components/secure-string/operations/comparison-operations.js +221 -0
  168. package/dist/cjs/mods/toolkit/src/components/secure-string/operations/comparison-operations.js.map +1 -0
  169. package/dist/cjs/mods/toolkit/src/components/secure-string/operations/string-operations.js +234 -0
  170. package/dist/cjs/mods/toolkit/src/components/secure-string/operations/string-operations.js.map +1 -0
  171. package/dist/cjs/mods/toolkit/src/components/secure-string/types/index.js +41 -0
  172. package/dist/cjs/mods/toolkit/src/components/secure-string/types/index.js.map +1 -0
  173. package/dist/cjs/mods/toolkit/src/components/secure-string/validation/string-validator.js +334 -0
  174. package/dist/cjs/mods/toolkit/src/components/secure-string/validation/string-validator.js.map +1 -0
  175. package/dist/cjs/mods/toolkit/src/components/side-channel.js +146 -0
  176. package/dist/cjs/mods/toolkit/src/components/side-channel.js.map +1 -0
  177. package/dist/cjs/mods/toolkit/src/components/tamper-evident-logging.js +391 -0
  178. package/dist/cjs/mods/toolkit/src/components/tamper-evident-logging.js.map +1 -0
  179. package/dist/cjs/mods/toolkit/src/const/buffer.const.js +15 -0
  180. package/dist/cjs/mods/toolkit/src/const/buffer.const.js.map +1 -0
  181. package/dist/cjs/mods/toolkit/src/core/crypto.js +722 -0
  182. package/dist/cjs/mods/toolkit/src/core/crypto.js.map +1 -0
  183. package/dist/cjs/mods/toolkit/src/core/hash/hash-advanced.js +388 -0
  184. package/dist/cjs/mods/toolkit/src/core/hash/hash-advanced.js.map +1 -0
  185. package/dist/cjs/mods/toolkit/src/core/hash/hash-core.js +376 -0
  186. package/dist/cjs/mods/toolkit/src/core/hash/hash-core.js.map +1 -0
  187. package/dist/cjs/mods/toolkit/src/core/hash/hash-entropy.js +307 -0
  188. package/dist/cjs/mods/toolkit/src/core/hash/hash-entropy.js.map +1 -0
  189. package/dist/cjs/mods/toolkit/src/core/hash/hash-security.js +372 -0
  190. package/dist/cjs/mods/toolkit/src/core/hash/hash-security.js.map +1 -0
  191. package/dist/cjs/mods/toolkit/src/core/hash/hash-types.js +16 -0
  192. package/dist/cjs/mods/toolkit/src/core/hash/hash-types.js.map +1 -0
  193. package/dist/cjs/mods/toolkit/src/core/hash/hash-utils.js +328 -0
  194. package/dist/cjs/mods/toolkit/src/core/hash/hash-utils.js.map +1 -0
  195. package/dist/cjs/mods/toolkit/src/core/hash/hash-validator.js +312 -0
  196. package/dist/cjs/mods/toolkit/src/core/hash/hash-validator.js.map +1 -0
  197. package/dist/cjs/mods/toolkit/src/core/hash.js +25 -0
  198. package/dist/cjs/mods/toolkit/src/core/hash.js.map +1 -0
  199. package/dist/cjs/mods/toolkit/src/core/keys/algorithms/mods/Argon2Algo.js +135 -0
  200. package/dist/cjs/mods/toolkit/src/core/keys/algorithms/mods/Argon2Algo.js.map +1 -0
  201. package/dist/cjs/mods/toolkit/src/core/keys/algorithms/mods/PBKDF2Algo.js +293 -0
  202. package/dist/cjs/mods/toolkit/src/core/keys/algorithms/mods/PBKDF2Algo.js.map +1 -0
  203. package/dist/cjs/mods/toolkit/src/core/keys/algorithms/mods/ScryptAlgo.js +317 -0
  204. package/dist/cjs/mods/toolkit/src/core/keys/algorithms/mods/ScryptAlgo.js.map +1 -0
  205. package/dist/cjs/mods/toolkit/src/core/keys/keys-core.js +201 -0
  206. package/dist/cjs/mods/toolkit/src/core/keys/keys-core.js.map +1 -0
  207. package/dist/cjs/mods/toolkit/src/core/keys/keys-logger.js +234 -0
  208. package/dist/cjs/mods/toolkit/src/core/keys/keys-logger.js.map +1 -0
  209. package/dist/cjs/mods/toolkit/src/core/keys/keys-types.js +65 -0
  210. package/dist/cjs/mods/toolkit/src/core/keys/keys-types.js.map +1 -0
  211. package/dist/cjs/mods/toolkit/src/core/keys/keys-utils.js +322 -0
  212. package/dist/cjs/mods/toolkit/src/core/keys/keys-utils.js.map +1 -0
  213. package/dist/cjs/mods/toolkit/src/core/keys.js +136 -0
  214. package/dist/cjs/mods/toolkit/src/core/keys.js.map +1 -0
  215. package/dist/cjs/mods/toolkit/src/core/password/index.js +122 -0
  216. package/dist/cjs/mods/toolkit/src/core/password/index.js.map +1 -0
  217. package/dist/cjs/mods/toolkit/src/core/password/password-algorithms.js +397 -0
  218. package/dist/cjs/mods/toolkit/src/core/password/password-algorithms.js.map +1 -0
  219. package/dist/cjs/mods/toolkit/src/core/password/password-core.js +294 -0
  220. package/dist/cjs/mods/toolkit/src/core/password/password-core.js.map +1 -0
  221. package/dist/cjs/mods/toolkit/src/core/password/password-generator.js +365 -0
  222. package/dist/cjs/mods/toolkit/src/core/password/password-generator.js.map +1 -0
  223. package/dist/cjs/mods/toolkit/src/core/password/password-migration.js +237 -0
  224. package/dist/cjs/mods/toolkit/src/core/password/password-migration.js.map +1 -0
  225. package/dist/cjs/mods/toolkit/src/core/password/password-security.js +534 -0
  226. package/dist/cjs/mods/toolkit/src/core/password/password-security.js.map +1 -0
  227. package/dist/cjs/mods/toolkit/src/core/password/password-types.js +39 -0
  228. package/dist/cjs/mods/toolkit/src/core/password/password-types.js.map +1 -0
  229. package/dist/cjs/mods/toolkit/src/core/password/password-utils.js +651 -0
  230. package/dist/cjs/mods/toolkit/src/core/password/password-utils.js.map +1 -0
  231. package/dist/cjs/mods/toolkit/src/core/password/swlist.js +1122 -0
  232. package/dist/cjs/mods/toolkit/src/core/password/swlist.js.map +1 -0
  233. package/dist/cjs/mods/toolkit/src/core/random/random-core.js +328 -0
  234. package/dist/cjs/mods/toolkit/src/core/random/random-core.js.map +1 -0
  235. package/dist/cjs/mods/toolkit/src/core/random/random-crypto.js +339 -0
  236. package/dist/cjs/mods/toolkit/src/core/random/random-crypto.js.map +1 -0
  237. package/dist/cjs/mods/toolkit/src/core/random/random-entropy.js +388 -0
  238. package/dist/cjs/mods/toolkit/src/core/random/random-entropy.js.map +1 -0
  239. package/dist/cjs/mods/toolkit/src/core/random/random-generators.js +344 -0
  240. package/dist/cjs/mods/toolkit/src/core/random/random-generators.js.map +1 -0
  241. package/dist/cjs/mods/toolkit/src/core/random/random-sources.js +426 -0
  242. package/dist/cjs/mods/toolkit/src/core/random/random-sources.js.map +1 -0
  243. package/dist/cjs/mods/toolkit/src/core/random/random-tokens.js +309 -0
  244. package/dist/cjs/mods/toolkit/src/core/random/random-tokens.js.map +1 -0
  245. package/dist/cjs/mods/toolkit/src/core/random/random-types.js +36 -0
  246. package/dist/cjs/mods/toolkit/src/core/random/random-types.js.map +1 -0
  247. package/dist/cjs/mods/toolkit/src/core/validators.js +200 -0
  248. package/dist/cjs/mods/toolkit/src/core/validators.js.map +1 -0
  249. package/dist/cjs/mods/toolkit/src/helpers/Uint8Array.js +335 -0
  250. package/dist/cjs/mods/toolkit/src/helpers/Uint8Array.js.map +1 -0
  251. package/dist/cjs/mods/toolkit/src/helpers/createEnu.js +27 -0
  252. package/dist/cjs/mods/toolkit/src/helpers/createEnu.js.map +1 -0
  253. package/dist/cjs/mods/toolkit/src/index.js +417 -0
  254. package/dist/cjs/mods/toolkit/src/index.js.map +1 -0
  255. package/dist/cjs/mods/toolkit/src/types/global.js +51 -0
  256. package/dist/cjs/mods/toolkit/src/types/global.js.map +1 -0
  257. package/dist/cjs/mods/toolkit/src/types/secure-mem.type.js +100 -0
  258. package/dist/cjs/mods/toolkit/src/types/secure-mem.type.js.map +1 -0
  259. package/dist/cjs/mods/toolkit/src/types/secure-memory.js +20 -0
  260. package/dist/cjs/mods/toolkit/src/types/secure-memory.js.map +1 -0
  261. package/dist/cjs/mods/toolkit/src/types.js +63 -0
  262. package/dist/cjs/mods/toolkit/src/types.js.map +1 -0
  263. package/dist/cjs/mods/toolkit/src/utils/CryptoAlgorithmUtils.js +71 -0
  264. package/dist/cjs/mods/toolkit/src/utils/CryptoAlgorithmUtils.js.map +1 -0
  265. package/dist/cjs/mods/toolkit/src/utils/constants.js +111 -0
  266. package/dist/cjs/mods/toolkit/src/utils/constants.js.map +1 -0
  267. package/dist/cjs/mods/toolkit/src/utils/dataConverter.js +74 -0
  268. package/dist/cjs/mods/toolkit/src/utils/dataConverter.js.map +1 -0
  269. package/dist/cjs/mods/toolkit/src/utils/encoding.js +290 -0
  270. package/dist/cjs/mods/toolkit/src/utils/encoding.js.map +1 -0
  271. package/dist/cjs/mods/toolkit/src/utils/errorHandler.js +140 -0
  272. package/dist/cjs/mods/toolkit/src/utils/errorHandler.js.map +1 -0
  273. package/dist/cjs/mods/toolkit/src/utils/memory/config-manager.js +282 -0
  274. package/dist/cjs/mods/toolkit/src/utils/memory/config-manager.js.map +1 -0
  275. package/dist/cjs/mods/toolkit/src/utils/memory/event-manager.js +277 -0
  276. package/dist/cjs/mods/toolkit/src/utils/memory/event-manager.js.map +1 -0
  277. package/dist/cjs/mods/toolkit/src/utils/memory/index.js +162 -0
  278. package/dist/cjs/mods/toolkit/src/utils/memory/index.js.map +1 -0
  279. package/dist/cjs/mods/toolkit/src/utils/memory/memory-manager.js +888 -0
  280. package/dist/cjs/mods/toolkit/src/utils/memory/memory-manager.js.map +1 -0
  281. package/dist/cjs/mods/toolkit/src/utils/memory/memory-pool.js +356 -0
  282. package/dist/cjs/mods/toolkit/src/utils/memory/memory-pool.js.map +1 -0
  283. package/dist/cjs/mods/toolkit/src/utils/memory/reference-tracker.js +376 -0
  284. package/dist/cjs/mods/toolkit/src/utils/memory/reference-tracker.js.map +1 -0
  285. package/dist/cjs/mods/toolkit/src/utils/memory/types.js +56 -0
  286. package/dist/cjs/mods/toolkit/src/utils/memory/types.js.map +1 -0
  287. package/dist/cjs/mods/toolkit/src/utils/patterns.js +127 -0
  288. package/dist/cjs/mods/toolkit/src/utils/patterns.js.map +1 -0
  289. package/dist/cjs/mods/toolkit/src/utils/performanceMonitor.js +249 -0
  290. package/dist/cjs/mods/toolkit/src/utils/performanceMonitor.js.map +1 -0
  291. package/dist/cjs/mods/toolkit/src/utils/stats.js +182 -0
  292. package/dist/cjs/mods/toolkit/src/utils/stats.js.map +1 -0
  293. package/dist/cjs/performance-monitor.js +162 -0
  294. package/dist/cjs/performance-monitor.js.map +1 -0
  295. package/dist/cjs/plugins/plugin-manager.js +151 -0
  296. package/dist/cjs/plugins/plugin-manager.js.map +1 -0
  297. package/dist/cjs/plugins/route-optimization-plugin.js +413 -0
  298. package/dist/cjs/plugins/route-optimization-plugin.js.map +1 -0
  299. package/dist/cjs/plugins/server-maintenance-plugin.js +510 -0
  300. package/dist/cjs/plugins/server-maintenance-plugin.js.map +1 -0
  301. package/dist/cjs/quick-start.js +47 -0
  302. package/dist/cjs/quick-start.js.map +1 -0
  303. package/dist/cjs/security-middleware.js +415 -0
  304. package/dist/cjs/security-middleware.js.map +1 -0
  305. package/dist/cjs/server/FastServer.js +988 -0
  306. package/dist/cjs/server/FastServer.js.map +1 -0
  307. package/dist/cjs/server/components/fastapi/CacheManager.js +245 -0
  308. package/dist/cjs/server/components/fastapi/CacheManager.js.map +1 -0
  309. package/dist/cjs/server/components/fastapi/ClusterManagerComponent.js +327 -0
  310. package/dist/cjs/server/components/fastapi/ClusterManagerComponent.js.map +1 -0
  311. package/dist/cjs/server/components/fastapi/FileWatcherManager.js +493 -0
  312. package/dist/cjs/server/components/fastapi/FileWatcherManager.js.map +1 -0
  313. package/dist/cjs/server/components/fastapi/MonitoringManager.js +307 -0
  314. package/dist/cjs/server/components/fastapi/MonitoringManager.js.map +1 -0
  315. package/dist/cjs/server/components/fastapi/PerformanceManager.js +297 -0
  316. package/dist/cjs/server/components/fastapi/PerformanceManager.js.map +1 -0
  317. package/dist/cjs/server/components/fastapi/PluginManager.js +312 -0
  318. package/dist/cjs/server/components/fastapi/PluginManager.js.map +1 -0
  319. package/dist/cjs/server/components/fastapi/RedirectManager.js +492 -0
  320. package/dist/cjs/server/components/fastapi/RedirectManager.js.map +1 -0
  321. package/dist/cjs/server/components/fastapi/RequestProcessor.js +213 -0
  322. package/dist/cjs/server/components/fastapi/RequestProcessor.js.map +1 -0
  323. package/dist/cjs/server/components/fastapi/RouteManager.js +272 -0
  324. package/dist/cjs/server/components/fastapi/RouteManager.js.map +1 -0
  325. package/dist/cjs/server/components/fastapi/UltraFastRequestProcessor.js +668 -0
  326. package/dist/cjs/server/components/fastapi/UltraFastRequestProcessor.js.map +1 -0
  327. package/dist/cjs/server/components/fastapi/console/ConsoleInterceptor.js +812 -0
  328. package/dist/cjs/server/components/fastapi/console/ConsoleInterceptor.js.map +1 -0
  329. package/dist/cjs/server/components/fastapi/console/encryption/ConsoleEncryption.js +216 -0
  330. package/dist/cjs/server/components/fastapi/console/encryption/ConsoleEncryption.js.map +1 -0
  331. package/dist/cjs/server/components/fastapi/console/types.js +163 -0
  332. package/dist/cjs/server/components/fastapi/console/types.js.map +1 -0
  333. package/dist/cjs/server/components/fastapi/middlewares/MiddlewareAPI.js +347 -0
  334. package/dist/cjs/server/components/fastapi/middlewares/MiddlewareAPI.js.map +1 -0
  335. package/dist/cjs/server/components/fastapi/middlewares/MiddlewareMethodsManager.js +204 -0
  336. package/dist/cjs/server/components/fastapi/middlewares/MiddlewareMethodsManager.js.map +1 -0
  337. package/dist/cjs/server/components/fastapi/middlewares/middlewareManager.js +953 -0
  338. package/dist/cjs/server/components/fastapi/middlewares/middlewareManager.js.map +1 -0
  339. package/dist/cjs/server/components/fastapi/modules/UFRP/WorkerPool.js +56 -0
  340. package/dist/cjs/server/components/fastapi/modules/UFRP/WorkerPool.js.map +1 -0
  341. package/dist/cjs/server/components/fastapi/templates/redirectTemp.js +101 -0
  342. package/dist/cjs/server/components/fastapi/templates/redirectTemp.js.map +1 -0
  343. package/dist/cjs/server/components/fastapi/typescript/TypeScriptChecker.js +373 -0
  344. package/dist/cjs/server/components/fastapi/typescript/TypeScriptChecker.js.map +1 -0
  345. package/dist/cjs/server/const/Cluster.config.js +72 -0
  346. package/dist/cjs/server/const/Cluster.config.js.map +1 -0
  347. package/dist/cjs/server/const/ExecutionPredictor_EP.const.js +73 -0
  348. package/dist/cjs/server/const/ExecutionPredictor_EP.const.js.map +1 -0
  349. package/dist/cjs/server/const/FileWatcher.config.js +98 -0
  350. package/dist/cjs/server/const/FileWatcher.config.js.map +1 -0
  351. package/dist/cjs/server/const/default.js +122 -0
  352. package/dist/cjs/server/const/default.js.map +1 -0
  353. package/dist/cjs/server/optimization/ExecutionPredictor.js +218 -0
  354. package/dist/cjs/server/optimization/ExecutionPredictor.js.map +1 -0
  355. package/dist/cjs/server/optimization/PerformanceProfiler.js +234 -0
  356. package/dist/cjs/server/optimization/PerformanceProfiler.js.map +1 -0
  357. package/dist/cjs/server/optimization/RequestPreCompiler.js +708 -0
  358. package/dist/cjs/server/optimization/RequestPreCompiler.js.map +1 -0
  359. package/dist/cjs/server/optimization/UltraFastOptimizer.js +400 -0
  360. package/dist/cjs/server/optimization/UltraFastOptimizer.js.map +1 -0
  361. package/dist/cjs/server/plugins/PluginEngine.js +378 -0
  362. package/dist/cjs/server/plugins/PluginEngine.js.map +1 -0
  363. package/dist/cjs/server/plugins/PluginRegistry.js +339 -0
  364. package/dist/cjs/server/plugins/PluginRegistry.js.map +1 -0
  365. package/dist/cjs/server/plugins/builtin/JWTAuthPlugin.js +591 -0
  366. package/dist/cjs/server/plugins/builtin/JWTAuthPlugin.js.map +1 -0
  367. package/dist/cjs/server/plugins/builtin/ResponseTimePlugin.js +413 -0
  368. package/dist/cjs/server/plugins/builtin/ResponseTimePlugin.js.map +1 -0
  369. package/dist/cjs/server/plugins/builtin/SmartCachePlugin.js +843 -0
  370. package/dist/cjs/server/plugins/builtin/SmartCachePlugin.js.map +1 -0
  371. package/dist/cjs/server/plugins/core/CachePlugin.js +1975 -0
  372. package/dist/cjs/server/plugins/core/CachePlugin.js.map +1 -0
  373. package/dist/cjs/server/plugins/core/PerformancePlugin.js +894 -0
  374. package/dist/cjs/server/plugins/core/PerformancePlugin.js.map +1 -0
  375. package/dist/cjs/server/plugins/core/SecurityPlugin.js +799 -0
  376. package/dist/cjs/server/plugins/core/SecurityPlugin.js.map +1 -0
  377. package/dist/cjs/server/plugins/types/PluginTypes.js +47 -0
  378. package/dist/cjs/server/plugins/types/PluginTypes.js.map +1 -0
  379. package/dist/cjs/server/service/Reload/FileWatcher.js +756 -0
  380. package/dist/cjs/server/service/Reload/FileWatcher.js.map +1 -0
  381. package/dist/cjs/server/service/Reload/HotReloader.js +738 -0
  382. package/dist/cjs/server/service/Reload/HotReloader.js.map +1 -0
  383. package/dist/cjs/server/service/Reload/exec/TypeScriptExecutor.js +342 -0
  384. package/dist/cjs/server/service/Reload/exec/TypeScriptExecutor.js.map +1 -0
  385. package/dist/cjs/server/utils/ConfigLoader.js +209 -0
  386. package/dist/cjs/server/utils/ConfigLoader.js.map +1 -0
  387. package/dist/cjs/server/utils/Logger.js +238 -0
  388. package/dist/cjs/server/utils/Logger.js.map +1 -0
  389. package/dist/cjs/server/utils/PortManager.js +157 -0
  390. package/dist/cjs/server/utils/PortManager.js.map +1 -0
  391. package/dist/cjs/server/utils/forceClosePort.js +126 -0
  392. package/dist/cjs/server/utils/forceClosePort.js.map +1 -0
  393. package/dist/cjs/smart-routes.js +347 -0
  394. package/dist/cjs/smart-routes.js.map +1 -0
  395. package/dist/esm/ServerFactory.js +184 -0
  396. package/dist/esm/ServerFactory.js.map +1 -0
  397. package/dist/esm/cache/CacheFactory.js +402 -0
  398. package/dist/esm/cache/CacheFactory.js.map +1 -0
  399. package/dist/esm/cache/SecureCacheAdapter.js +1225 -0
  400. package/dist/esm/cache/SecureCacheAdapter.js.map +1 -0
  401. package/dist/esm/cluster/cluster-manager.js +990 -0
  402. package/dist/esm/cluster/cluster-manager.js.map +1 -0
  403. package/dist/esm/cluster/index.js +321 -0
  404. package/dist/esm/cluster/index.js.map +1 -0
  405. package/dist/esm/cluster/modules/AutoScaler.js +530 -0
  406. package/dist/esm/cluster/modules/AutoScaler.js.map +1 -0
  407. package/dist/esm/cluster/modules/ClusterFactory.js +490 -0
  408. package/dist/esm/cluster/modules/ClusterFactory.js.map +1 -0
  409. package/dist/esm/cluster/modules/ClusterPersistenceManager.js +434 -0
  410. package/dist/esm/cluster/modules/ClusterPersistenceManager.js.map +1 -0
  411. package/dist/esm/cluster/modules/HealthMonitor.js +440 -0
  412. package/dist/esm/cluster/modules/HealthMonitor.js.map +1 -0
  413. package/dist/esm/cluster/modules/IPCManager.js +759 -0
  414. package/dist/esm/cluster/modules/IPCManager.js.map +1 -0
  415. package/dist/esm/cluster/modules/LoadBalancer.js +1102 -0
  416. package/dist/esm/cluster/modules/LoadBalancer.js.map +1 -0
  417. package/dist/esm/cluster/modules/MetricsCollector.js +538 -0
  418. package/dist/esm/cluster/modules/MetricsCollector.js.map +1 -0
  419. package/dist/esm/cluster/modules/WorkerManager.js +1165 -0
  420. package/dist/esm/cluster/modules/WorkerManager.js.map +1 -0
  421. package/dist/esm/encryption/EncryptionService.js +378 -0
  422. package/dist/esm/encryption/EncryptionService.js.map +1 -0
  423. package/dist/esm/index.js.map +1 -0
  424. package/dist/esm/middleware/safe-json-middleware.js +153 -0
  425. package/dist/esm/middleware/safe-json-middleware.js.map +1 -0
  426. package/dist/esm/mods/toolkit/src/algorithms/hash-algorithms.js +705 -0
  427. package/dist/esm/mods/toolkit/src/algorithms/hash-algorithms.js.map +1 -0
  428. package/dist/esm/mods/toolkit/src/algorithms/registry.js +81 -0
  429. package/dist/esm/mods/toolkit/src/algorithms/registry.js.map +1 -0
  430. package/dist/esm/mods/toolkit/src/components/attestation.js +1059 -0
  431. package/dist/esm/mods/toolkit/src/components/attestation.js.map +1 -0
  432. package/dist/esm/mods/toolkit/src/components/cache/FastLRU.js +320 -0
  433. package/dist/esm/mods/toolkit/src/components/cache/FastLRU.js.map +1 -0
  434. package/dist/esm/mods/toolkit/src/components/cache/UFSIMC.js +1109 -0
  435. package/dist/esm/mods/toolkit/src/components/cache/UFSIMC.js.map +1 -0
  436. package/dist/esm/mods/toolkit/src/components/cache/cacheSys.js +622 -0
  437. package/dist/esm/mods/toolkit/src/components/cache/cacheSys.js.map +1 -0
  438. package/dist/esm/mods/toolkit/src/components/cache/cacheSys.utils.js +111 -0
  439. package/dist/esm/mods/toolkit/src/components/cache/cacheSys.utils.js.map +1 -0
  440. package/dist/esm/mods/toolkit/src/components/cache/config/cache.config.js +36 -0
  441. package/dist/esm/mods/toolkit/src/components/cache/config/cache.config.js.map +1 -0
  442. package/dist/esm/mods/toolkit/src/components/cache/index.js +449 -0
  443. package/dist/esm/mods/toolkit/src/components/cache/index.js.map +1 -0
  444. package/dist/esm/mods/toolkit/src/components/cache/useCache.js +240 -0
  445. package/dist/esm/mods/toolkit/src/components/cache/useCache.js.map +1 -0
  446. package/dist/esm/mods/toolkit/src/components/canary-tokens.js +346 -0
  447. package/dist/esm/mods/toolkit/src/components/canary-tokens.js.map +1 -0
  448. package/dist/esm/mods/toolkit/src/components/entropy-augmentation.js +476 -0
  449. package/dist/esm/mods/toolkit/src/components/entropy-augmentation.js.map +1 -0
  450. package/dist/esm/mods/toolkit/src/components/fortified-function/UFA/ultra-fast-allocator.js +336 -0
  451. package/dist/esm/mods/toolkit/src/components/fortified-function/UFA/ultra-fast-allocator.js.map +1 -0
  452. package/dist/esm/mods/toolkit/src/components/fortified-function/UFA/ultra-fast-cache.js +534 -0
  453. package/dist/esm/mods/toolkit/src/components/fortified-function/UFA/ultra-fast-cache.js.map +1 -0
  454. package/dist/esm/mods/toolkit/src/components/fortified-function/UFA/ultra-fast-engine.js +629 -0
  455. package/dist/esm/mods/toolkit/src/components/fortified-function/UFA/ultra-fast-engine.js.map +1 -0
  456. package/dist/esm/mods/toolkit/src/components/fortified-function/const/exec.const.js +11 -0
  457. package/dist/esm/mods/toolkit/src/components/fortified-function/const/exec.const.js.map +1 -0
  458. package/dist/esm/mods/toolkit/src/components/fortified-function/core/fortified-config.js +351 -0
  459. package/dist/esm/mods/toolkit/src/components/fortified-function/core/fortified-config.js.map +1 -0
  460. package/dist/esm/mods/toolkit/src/components/fortified-function/core/fortified-function-core.js +518 -0
  461. package/dist/esm/mods/toolkit/src/components/fortified-function/core/fortified-function-core.js.map +1 -0
  462. package/dist/esm/mods/toolkit/src/components/fortified-function/core/fortified-logger.js +243 -0
  463. package/dist/esm/mods/toolkit/src/components/fortified-function/core/fortified-logger.js.map +1 -0
  464. package/dist/esm/mods/toolkit/src/components/fortified-function/core/mods/api-manager.js +187 -0
  465. package/dist/esm/mods/toolkit/src/components/fortified-function/core/mods/api-manager.js.map +1 -0
  466. package/dist/esm/mods/toolkit/src/components/fortified-function/core/mods/cache-manager.js +105 -0
  467. package/dist/esm/mods/toolkit/src/components/fortified-function/core/mods/cache-manager.js.map +1 -0
  468. package/dist/esm/mods/toolkit/src/components/fortified-function/core/mods/execution-context.js +103 -0
  469. package/dist/esm/mods/toolkit/src/components/fortified-function/core/mods/execution-context.js.map +1 -0
  470. package/dist/esm/mods/toolkit/src/components/fortified-function/core/mods/execution-engine.js +125 -0
  471. package/dist/esm/mods/toolkit/src/components/fortified-function/core/mods/execution-engine.js.map +1 -0
  472. package/dist/esm/mods/toolkit/src/components/fortified-function/core/mods/execution-router.js +91 -0
  473. package/dist/esm/mods/toolkit/src/components/fortified-function/core/mods/execution-router.js.map +1 -0
  474. package/dist/esm/mods/toolkit/src/components/fortified-function/core/mods/memory-manager.js +145 -0
  475. package/dist/esm/mods/toolkit/src/components/fortified-function/core/mods/memory-manager.js.map +1 -0
  476. package/dist/esm/mods/toolkit/src/components/fortified-function/core/mods/security-manager.js +100 -0
  477. package/dist/esm/mods/toolkit/src/components/fortified-function/core/mods/security-manager.js.map +1 -0
  478. package/dist/esm/mods/toolkit/src/components/fortified-function/core/mods/stats-manager.js +157 -0
  479. package/dist/esm/mods/toolkit/src/components/fortified-function/core/mods/stats-manager.js.map +1 -0
  480. package/dist/esm/mods/toolkit/src/components/fortified-function/core/mods/timing-manager.js +123 -0
  481. package/dist/esm/mods/toolkit/src/components/fortified-function/core/mods/timing-manager.js.map +1 -0
  482. package/dist/esm/mods/toolkit/src/components/fortified-function/engines/analytics-engine.js +368 -0
  483. package/dist/esm/mods/toolkit/src/components/fortified-function/engines/analytics-engine.js.map +1 -0
  484. package/dist/esm/mods/toolkit/src/components/fortified-function/engines/execution-engine.js +400 -0
  485. package/dist/esm/mods/toolkit/src/components/fortified-function/engines/execution-engine.js.map +1 -0
  486. package/dist/esm/mods/toolkit/src/components/fortified-function/index.js +165 -0
  487. package/dist/esm/mods/toolkit/src/components/fortified-function/index.js.map +1 -0
  488. package/dist/esm/mods/toolkit/src/components/fortified-function/performance/performance-monitor.js +238 -0
  489. package/dist/esm/mods/toolkit/src/components/fortified-function/performance/performance-monitor.js.map +1 -0
  490. package/dist/esm/mods/toolkit/src/components/fortified-function/performance/performance-timer.js +186 -0
  491. package/dist/esm/mods/toolkit/src/components/fortified-function/performance/performance-timer.js.map +1 -0
  492. package/dist/esm/mods/toolkit/src/components/fortified-function/security/security-handler.js +251 -0
  493. package/dist/esm/mods/toolkit/src/components/fortified-function/security/security-handler.js.map +1 -0
  494. package/dist/esm/mods/toolkit/src/components/fortified-function/serializer/safe-serializer.js +344 -0
  495. package/dist/esm/mods/toolkit/src/components/fortified-function/serializer/safe-serializer.js.map +1 -0
  496. package/dist/esm/mods/toolkit/src/components/fortified-function/smart-cache.js +691 -0
  497. package/dist/esm/mods/toolkit/src/components/fortified-function/smart-cache.js.map +1 -0
  498. package/dist/esm/mods/toolkit/src/components/fortified-function/types/types.js +14 -0
  499. package/dist/esm/mods/toolkit/src/components/fortified-function/types/types.js.map +1 -0
  500. package/dist/esm/mods/toolkit/src/components/fortified-function/utils/utils.js +66 -0
  501. package/dist/esm/mods/toolkit/src/components/fortified-function/utils/utils.js.map +1 -0
  502. package/dist/esm/mods/toolkit/src/components/memory-hard.js +919 -0
  503. package/dist/esm/mods/toolkit/src/components/memory-hard.js.map +1 -0
  504. package/dist/esm/mods/toolkit/src/components/post-quantum.js +316 -0
  505. package/dist/esm/mods/toolkit/src/components/post-quantum.js.map +1 -0
  506. package/dist/esm/mods/toolkit/src/components/runtime-verification.js +643 -0
  507. package/dist/esm/mods/toolkit/src/components/runtime-verification.js.map +1 -0
  508. package/dist/esm/mods/toolkit/src/components/secure-array/core/secure-array-core.js +1570 -0
  509. package/dist/esm/mods/toolkit/src/components/secure-array/core/secure-array-core.js.map +1 -0
  510. package/dist/esm/mods/toolkit/src/components/secure-array/crypto/ArrayCryptoHandler.js +328 -0
  511. package/dist/esm/mods/toolkit/src/components/secure-array/crypto/ArrayCryptoHandler.js.map +1 -0
  512. package/dist/esm/mods/toolkit/src/components/secure-array/events/event-manager.js +268 -0
  513. package/dist/esm/mods/toolkit/src/components/secure-array/events/event-manager.js.map +1 -0
  514. package/dist/esm/mods/toolkit/src/components/secure-array/index.js +61 -0
  515. package/dist/esm/mods/toolkit/src/components/secure-array/index.js.map +1 -0
  516. package/dist/esm/mods/toolkit/src/components/secure-array/metadata/metadata-manager.js +329 -0
  517. package/dist/esm/mods/toolkit/src/components/secure-array/metadata/metadata-manager.js.map +1 -0
  518. package/dist/esm/mods/toolkit/src/components/secure-array/serialization/ArraySerializationHandler.js +388 -0
  519. package/dist/esm/mods/toolkit/src/components/secure-array/serialization/ArraySerializationHandler.js.map +1 -0
  520. package/dist/esm/mods/toolkit/src/components/secure-array/types/index.js +84 -0
  521. package/dist/esm/mods/toolkit/src/components/secure-array/types/index.js.map +1 -0
  522. package/dist/esm/mods/toolkit/src/components/secure-array/utils/id-generator.js +78 -0
  523. package/dist/esm/mods/toolkit/src/components/secure-array/utils/id-generator.js.map +1 -0
  524. package/dist/esm/mods/toolkit/src/components/secure-array/utils/validation.js +273 -0
  525. package/dist/esm/mods/toolkit/src/components/secure-array/utils/validation.js.map +1 -0
  526. package/dist/esm/mods/toolkit/src/components/secure-memory.js +884 -0
  527. package/dist/esm/mods/toolkit/src/components/secure-memory.js.map +1 -0
  528. package/dist/esm/mods/toolkit/src/components/secure-object/core/secure-object-core.js +1603 -0
  529. package/dist/esm/mods/toolkit/src/components/secure-object/core/secure-object-core.js.map +1 -0
  530. package/dist/esm/mods/toolkit/src/components/secure-object/encryption/crypto-handler.js +360 -0
  531. package/dist/esm/mods/toolkit/src/components/secure-object/encryption/crypto-handler.js.map +1 -0
  532. package/dist/esm/mods/toolkit/src/components/secure-object/encryption/sensitive-keys.js +203 -0
  533. package/dist/esm/mods/toolkit/src/components/secure-object/encryption/sensitive-keys.js.map +1 -0
  534. package/dist/esm/mods/toolkit/src/components/secure-object/events/event-manager.js +195 -0
  535. package/dist/esm/mods/toolkit/src/components/secure-object/events/event-manager.js.map +1 -0
  536. package/dist/esm/mods/toolkit/src/components/secure-object/index.js +63 -0
  537. package/dist/esm/mods/toolkit/src/components/secure-object/index.js.map +1 -0
  538. package/dist/esm/mods/toolkit/src/components/secure-object/metadata/metadata-manager.js +181 -0
  539. package/dist/esm/mods/toolkit/src/components/secure-object/metadata/metadata-manager.js.map +1 -0
  540. package/dist/esm/mods/toolkit/src/components/secure-object/serialization/serialization-handler.js +195 -0
  541. package/dist/esm/mods/toolkit/src/components/secure-object/serialization/serialization-handler.js.map +1 -0
  542. package/dist/esm/mods/toolkit/src/components/secure-object/utils/id-generator.js +62 -0
  543. package/dist/esm/mods/toolkit/src/components/secure-object/utils/id-generator.js.map +1 -0
  544. package/dist/esm/mods/toolkit/src/components/secure-object/utils/validation.js +237 -0
  545. package/dist/esm/mods/toolkit/src/components/secure-object/utils/validation.js.map +1 -0
  546. package/dist/esm/mods/toolkit/src/components/secure-serialization.js +769 -0
  547. package/dist/esm/mods/toolkit/src/components/secure-serialization.js.map +1 -0
  548. package/dist/esm/mods/toolkit/src/components/secure-string/advanced/entropy-analyzer.js +306 -0
  549. package/dist/esm/mods/toolkit/src/components/secure-string/advanced/entropy-analyzer.js.map +1 -0
  550. package/dist/esm/mods/toolkit/src/components/secure-string/advanced/performance-monitor.js +333 -0
  551. package/dist/esm/mods/toolkit/src/components/secure-string/advanced/performance-monitor.js.map +1 -0
  552. package/dist/esm/mods/toolkit/src/components/secure-string/advanced/quantum-safe.js +243 -0
  553. package/dist/esm/mods/toolkit/src/components/secure-string/advanced/quantum-safe.js.map +1 -0
  554. package/dist/esm/mods/toolkit/src/components/secure-string/buffer/buffer-manager.js +203 -0
  555. package/dist/esm/mods/toolkit/src/components/secure-string/buffer/buffer-manager.js.map +1 -0
  556. package/dist/esm/mods/toolkit/src/components/secure-string/core/secure-string-core.js +786 -0
  557. package/dist/esm/mods/toolkit/src/components/secure-string/core/secure-string-core.js.map +1 -0
  558. package/dist/esm/mods/toolkit/src/components/secure-string/crypto/crypto-operations.js +298 -0
  559. package/dist/esm/mods/toolkit/src/components/secure-string/crypto/crypto-operations.js.map +1 -0
  560. package/dist/esm/mods/toolkit/src/components/secure-string/operations/comparison-operations.js +219 -0
  561. package/dist/esm/mods/toolkit/src/components/secure-string/operations/comparison-operations.js.map +1 -0
  562. package/dist/esm/mods/toolkit/src/components/secure-string/operations/string-operations.js +232 -0
  563. package/dist/esm/mods/toolkit/src/components/secure-string/operations/string-operations.js.map +1 -0
  564. package/dist/esm/mods/toolkit/src/components/secure-string/types/index.js +37 -0
  565. package/dist/esm/mods/toolkit/src/components/secure-string/types/index.js.map +1 -0
  566. package/dist/esm/mods/toolkit/src/components/secure-string/validation/string-validator.js +332 -0
  567. package/dist/esm/mods/toolkit/src/components/secure-string/validation/string-validator.js.map +1 -0
  568. package/dist/esm/mods/toolkit/src/components/side-channel.js +142 -0
  569. package/dist/esm/mods/toolkit/src/components/side-channel.js.map +1 -0
  570. package/dist/esm/mods/toolkit/src/components/tamper-evident-logging.js +389 -0
  571. package/dist/esm/mods/toolkit/src/components/tamper-evident-logging.js.map +1 -0
  572. package/dist/esm/mods/toolkit/src/const/buffer.const.js +13 -0
  573. package/dist/esm/mods/toolkit/src/const/buffer.const.js.map +1 -0
  574. package/dist/esm/mods/toolkit/src/core/crypto.js +720 -0
  575. package/dist/esm/mods/toolkit/src/core/crypto.js.map +1 -0
  576. package/dist/esm/mods/toolkit/src/core/hash/hash-advanced.js +367 -0
  577. package/dist/esm/mods/toolkit/src/core/hash/hash-advanced.js.map +1 -0
  578. package/dist/esm/mods/toolkit/src/core/hash/hash-core.js +355 -0
  579. package/dist/esm/mods/toolkit/src/core/hash/hash-core.js.map +1 -0
  580. package/dist/esm/mods/toolkit/src/core/hash/hash-entropy.js +286 -0
  581. package/dist/esm/mods/toolkit/src/core/hash/hash-entropy.js.map +1 -0
  582. package/dist/esm/mods/toolkit/src/core/hash/hash-security.js +351 -0
  583. package/dist/esm/mods/toolkit/src/core/hash/hash-security.js.map +1 -0
  584. package/dist/esm/mods/toolkit/src/core/hash/hash-types.js +16 -0
  585. package/dist/esm/mods/toolkit/src/core/hash/hash-types.js.map +1 -0
  586. package/dist/esm/mods/toolkit/src/core/hash/hash-utils.js +307 -0
  587. package/dist/esm/mods/toolkit/src/core/hash/hash-utils.js.map +1 -0
  588. package/dist/esm/mods/toolkit/src/core/hash/hash-validator.js +310 -0
  589. package/dist/esm/mods/toolkit/src/core/hash/hash-validator.js.map +1 -0
  590. package/dist/esm/mods/toolkit/src/core/hash.js +9 -0
  591. package/dist/esm/mods/toolkit/src/core/hash.js.map +1 -0
  592. package/dist/esm/mods/toolkit/src/core/keys/algorithms/mods/Argon2Algo.js +133 -0
  593. package/dist/esm/mods/toolkit/src/core/keys/algorithms/mods/Argon2Algo.js.map +1 -0
  594. package/dist/esm/mods/toolkit/src/core/keys/algorithms/mods/PBKDF2Algo.js +272 -0
  595. package/dist/esm/mods/toolkit/src/core/keys/algorithms/mods/PBKDF2Algo.js.map +1 -0
  596. package/dist/esm/mods/toolkit/src/core/keys/algorithms/mods/ScryptAlgo.js +296 -0
  597. package/dist/esm/mods/toolkit/src/core/keys/algorithms/mods/ScryptAlgo.js.map +1 -0
  598. package/dist/esm/mods/toolkit/src/core/keys/keys-core.js +199 -0
  599. package/dist/esm/mods/toolkit/src/core/keys/keys-core.js.map +1 -0
  600. package/dist/esm/mods/toolkit/src/core/keys/keys-logger.js +231 -0
  601. package/dist/esm/mods/toolkit/src/core/keys/keys-logger.js.map +1 -0
  602. package/dist/esm/mods/toolkit/src/core/keys/keys-types.js +63 -0
  603. package/dist/esm/mods/toolkit/src/core/keys/keys-types.js.map +1 -0
  604. package/dist/esm/mods/toolkit/src/core/keys/keys-utils.js +316 -0
  605. package/dist/esm/mods/toolkit/src/core/keys/keys-utils.js.map +1 -0
  606. package/dist/esm/mods/toolkit/src/core/keys.js +134 -0
  607. package/dist/esm/mods/toolkit/src/core/keys.js.map +1 -0
  608. package/dist/esm/mods/toolkit/src/core/password/index.js +110 -0
  609. package/dist/esm/mods/toolkit/src/core/password/index.js.map +1 -0
  610. package/dist/esm/mods/toolkit/src/core/password/password-algorithms.js +395 -0
  611. package/dist/esm/mods/toolkit/src/core/password/password-algorithms.js.map +1 -0
  612. package/dist/esm/mods/toolkit/src/core/password/password-core.js +292 -0
  613. package/dist/esm/mods/toolkit/src/core/password/password-core.js.map +1 -0
  614. package/dist/esm/mods/toolkit/src/core/password/password-generator.js +363 -0
  615. package/dist/esm/mods/toolkit/src/core/password/password-generator.js.map +1 -0
  616. package/dist/esm/mods/toolkit/src/core/password/password-migration.js +235 -0
  617. package/dist/esm/mods/toolkit/src/core/password/password-migration.js.map +1 -0
  618. package/dist/esm/mods/toolkit/src/core/password/password-security.js +532 -0
  619. package/dist/esm/mods/toolkit/src/core/password/password-security.js.map +1 -0
  620. package/dist/esm/mods/toolkit/src/core/password/password-types.js +34 -0
  621. package/dist/esm/mods/toolkit/src/core/password/password-types.js.map +1 -0
  622. package/dist/esm/mods/toolkit/src/core/password/password-utils.js +630 -0
  623. package/dist/esm/mods/toolkit/src/core/password/password-utils.js.map +1 -0
  624. package/dist/esm/mods/toolkit/src/core/password/swlist.js +1120 -0
  625. package/dist/esm/mods/toolkit/src/core/password/swlist.js.map +1 -0
  626. package/dist/esm/mods/toolkit/src/core/random/random-core.js +326 -0
  627. package/dist/esm/mods/toolkit/src/core/random/random-core.js.map +1 -0
  628. package/dist/esm/mods/toolkit/src/core/random/random-crypto.js +337 -0
  629. package/dist/esm/mods/toolkit/src/core/random/random-crypto.js.map +1 -0
  630. package/dist/esm/mods/toolkit/src/core/random/random-entropy.js +367 -0
  631. package/dist/esm/mods/toolkit/src/core/random/random-entropy.js.map +1 -0
  632. package/dist/esm/mods/toolkit/src/core/random/random-generators.js +323 -0
  633. package/dist/esm/mods/toolkit/src/core/random/random-generators.js.map +1 -0
  634. package/dist/esm/mods/toolkit/src/core/random/random-sources.js +405 -0
  635. package/dist/esm/mods/toolkit/src/core/random/random-sources.js.map +1 -0
  636. package/dist/esm/mods/toolkit/src/core/random/random-tokens.js +307 -0
  637. package/dist/esm/mods/toolkit/src/core/random/random-tokens.js.map +1 -0
  638. package/dist/esm/mods/toolkit/src/core/random/random-types.js +27 -0
  639. package/dist/esm/mods/toolkit/src/core/random/random-types.js.map +1 -0
  640. package/dist/esm/mods/toolkit/src/core/validators.js +198 -0
  641. package/dist/esm/mods/toolkit/src/core/validators.js.map +1 -0
  642. package/dist/esm/mods/toolkit/src/helpers/Uint8Array.js +333 -0
  643. package/dist/esm/mods/toolkit/src/helpers/Uint8Array.js.map +1 -0
  644. package/dist/esm/mods/toolkit/src/helpers/createEnu.js +25 -0
  645. package/dist/esm/mods/toolkit/src/helpers/createEnu.js.map +1 -0
  646. package/dist/esm/mods/toolkit/src/index.js +373 -0
  647. package/dist/esm/mods/toolkit/src/index.js.map +1 -0
  648. package/dist/esm/mods/toolkit/src/types/global.js +49 -0
  649. package/dist/esm/mods/toolkit/src/types/global.js.map +1 -0
  650. package/dist/esm/mods/toolkit/src/types/secure-mem.type.js +96 -0
  651. package/dist/esm/mods/toolkit/src/types/secure-mem.type.js.map +1 -0
  652. package/dist/esm/mods/toolkit/src/types/secure-memory.js +20 -0
  653. package/dist/esm/mods/toolkit/src/types/secure-memory.js.map +1 -0
  654. package/dist/esm/mods/toolkit/src/types.js +63 -0
  655. package/dist/esm/mods/toolkit/src/types.js.map +1 -0
  656. package/dist/esm/mods/toolkit/src/utils/CryptoAlgorithmUtils.js +69 -0
  657. package/dist/esm/mods/toolkit/src/utils/CryptoAlgorithmUtils.js.map +1 -0
  658. package/dist/esm/mods/toolkit/src/utils/constants.js +105 -0
  659. package/dist/esm/mods/toolkit/src/utils/constants.js.map +1 -0
  660. package/dist/esm/mods/toolkit/src/utils/dataConverter.js +72 -0
  661. package/dist/esm/mods/toolkit/src/utils/dataConverter.js.map +1 -0
  662. package/dist/esm/mods/toolkit/src/utils/encoding.js +279 -0
  663. package/dist/esm/mods/toolkit/src/utils/encoding.js.map +1 -0
  664. package/dist/esm/mods/toolkit/src/utils/errorHandler.js +137 -0
  665. package/dist/esm/mods/toolkit/src/utils/errorHandler.js.map +1 -0
  666. package/dist/esm/mods/toolkit/src/utils/memory/config-manager.js +280 -0
  667. package/dist/esm/mods/toolkit/src/utils/memory/config-manager.js.map +1 -0
  668. package/dist/esm/mods/toolkit/src/utils/memory/event-manager.js +275 -0
  669. package/dist/esm/mods/toolkit/src/utils/memory/event-manager.js.map +1 -0
  670. package/dist/esm/mods/toolkit/src/utils/memory/index.js +141 -0
  671. package/dist/esm/mods/toolkit/src/utils/memory/index.js.map +1 -0
  672. package/dist/esm/mods/toolkit/src/utils/memory/memory-manager.js +886 -0
  673. package/dist/esm/mods/toolkit/src/utils/memory/memory-manager.js.map +1 -0
  674. package/dist/esm/mods/toolkit/src/utils/memory/memory-pool.js +354 -0
  675. package/dist/esm/mods/toolkit/src/utils/memory/memory-pool.js.map +1 -0
  676. package/dist/esm/mods/toolkit/src/utils/memory/reference-tracker.js +374 -0
  677. package/dist/esm/mods/toolkit/src/utils/memory/reference-tracker.js.map +1 -0
  678. package/dist/esm/mods/toolkit/src/utils/memory/types.js +56 -0
  679. package/dist/esm/mods/toolkit/src/utils/memory/types.js.map +1 -0
  680. package/dist/esm/mods/toolkit/src/utils/patterns.js +124 -0
  681. package/dist/esm/mods/toolkit/src/utils/patterns.js.map +1 -0
  682. package/dist/esm/mods/toolkit/src/utils/performanceMonitor.js +246 -0
  683. package/dist/esm/mods/toolkit/src/utils/performanceMonitor.js.map +1 -0
  684. package/dist/esm/mods/toolkit/src/utils/stats.js +180 -0
  685. package/dist/esm/mods/toolkit/src/utils/stats.js.map +1 -0
  686. package/dist/esm/performance-monitor.js +160 -0
  687. package/dist/esm/performance-monitor.js.map +1 -0
  688. package/dist/esm/plugins/plugin-manager.js +149 -0
  689. package/dist/esm/plugins/plugin-manager.js.map +1 -0
  690. package/dist/esm/plugins/route-optimization-plugin.js +411 -0
  691. package/dist/esm/plugins/route-optimization-plugin.js.map +1 -0
  692. package/dist/esm/plugins/server-maintenance-plugin.js +488 -0
  693. package/dist/esm/plugins/server-maintenance-plugin.js.map +1 -0
  694. package/dist/esm/quick-start.js +45 -0
  695. package/dist/esm/quick-start.js.map +1 -0
  696. package/dist/esm/security-middleware.js +413 -0
  697. package/dist/esm/security-middleware.js.map +1 -0
  698. package/dist/esm/server/FastServer.js +985 -0
  699. package/dist/esm/server/FastServer.js.map +1 -0
  700. package/dist/esm/server/components/fastapi/CacheManager.js +243 -0
  701. package/dist/esm/server/components/fastapi/CacheManager.js.map +1 -0
  702. package/dist/esm/server/components/fastapi/ClusterManagerComponent.js +325 -0
  703. package/dist/esm/server/components/fastapi/ClusterManagerComponent.js.map +1 -0
  704. package/dist/esm/server/components/fastapi/FileWatcherManager.js +491 -0
  705. package/dist/esm/server/components/fastapi/FileWatcherManager.js.map +1 -0
  706. package/dist/esm/server/components/fastapi/MonitoringManager.js +305 -0
  707. package/dist/esm/server/components/fastapi/MonitoringManager.js.map +1 -0
  708. package/dist/esm/server/components/fastapi/PerformanceManager.js +295 -0
  709. package/dist/esm/server/components/fastapi/PerformanceManager.js.map +1 -0
  710. package/dist/esm/server/components/fastapi/PluginManager.js +310 -0
  711. package/dist/esm/server/components/fastapi/PluginManager.js.map +1 -0
  712. package/dist/esm/server/components/fastapi/RedirectManager.js +490 -0
  713. package/dist/esm/server/components/fastapi/RedirectManager.js.map +1 -0
  714. package/dist/esm/server/components/fastapi/RequestProcessor.js +211 -0
  715. package/dist/esm/server/components/fastapi/RequestProcessor.js.map +1 -0
  716. package/dist/esm/server/components/fastapi/RouteManager.js +270 -0
  717. package/dist/esm/server/components/fastapi/RouteManager.js.map +1 -0
  718. package/dist/esm/server/components/fastapi/UltraFastRequestProcessor.js +647 -0
  719. package/dist/esm/server/components/fastapi/UltraFastRequestProcessor.js.map +1 -0
  720. package/dist/esm/server/components/fastapi/console/ConsoleInterceptor.js +810 -0
  721. package/dist/esm/server/components/fastapi/console/ConsoleInterceptor.js.map +1 -0
  722. package/dist/esm/server/components/fastapi/console/encryption/ConsoleEncryption.js +214 -0
  723. package/dist/esm/server/components/fastapi/console/encryption/ConsoleEncryption.js.map +1 -0
  724. package/dist/esm/server/components/fastapi/console/types.js +160 -0
  725. package/dist/esm/server/components/fastapi/console/types.js.map +1 -0
  726. package/dist/esm/server/components/fastapi/middlewares/MiddlewareAPI.js +345 -0
  727. package/dist/esm/server/components/fastapi/middlewares/MiddlewareAPI.js.map +1 -0
  728. package/dist/esm/server/components/fastapi/middlewares/MiddlewareMethodsManager.js +202 -0
  729. package/dist/esm/server/components/fastapi/middlewares/MiddlewareMethodsManager.js.map +1 -0
  730. package/dist/esm/server/components/fastapi/middlewares/middlewareManager.js +951 -0
  731. package/dist/esm/server/components/fastapi/middlewares/middlewareManager.js.map +1 -0
  732. package/dist/esm/server/components/fastapi/modules/UFRP/WorkerPool.js +54 -0
  733. package/dist/esm/server/components/fastapi/modules/UFRP/WorkerPool.js.map +1 -0
  734. package/dist/esm/server/components/fastapi/templates/redirectTemp.js +99 -0
  735. package/dist/esm/server/components/fastapi/templates/redirectTemp.js.map +1 -0
  736. package/dist/esm/server/components/fastapi/typescript/TypeScriptChecker.js +351 -0
  737. package/dist/esm/server/components/fastapi/typescript/TypeScriptChecker.js.map +1 -0
  738. package/dist/esm/server/const/Cluster.config.js +70 -0
  739. package/dist/esm/server/const/Cluster.config.js.map +1 -0
  740. package/dist/esm/server/const/ExecutionPredictor_EP.const.js +62 -0
  741. package/dist/esm/server/const/ExecutionPredictor_EP.const.js.map +1 -0
  742. package/dist/esm/server/const/FileWatcher.config.js +96 -0
  743. package/dist/esm/server/const/FileWatcher.config.js.map +1 -0
  744. package/dist/esm/server/const/default.js +120 -0
  745. package/dist/esm/server/const/default.js.map +1 -0
  746. package/dist/esm/server/optimization/ExecutionPredictor.js +216 -0
  747. package/dist/esm/server/optimization/ExecutionPredictor.js.map +1 -0
  748. package/dist/esm/server/optimization/PerformanceProfiler.js +232 -0
  749. package/dist/esm/server/optimization/PerformanceProfiler.js.map +1 -0
  750. package/dist/esm/server/optimization/RequestPreCompiler.js +706 -0
  751. package/dist/esm/server/optimization/RequestPreCompiler.js.map +1 -0
  752. package/dist/esm/server/optimization/UltraFastOptimizer.js +398 -0
  753. package/dist/esm/server/optimization/UltraFastOptimizer.js.map +1 -0
  754. package/dist/esm/server/plugins/PluginEngine.js +376 -0
  755. package/dist/esm/server/plugins/PluginEngine.js.map +1 -0
  756. package/dist/esm/server/plugins/PluginRegistry.js +337 -0
  757. package/dist/esm/server/plugins/PluginRegistry.js.map +1 -0
  758. package/dist/esm/server/plugins/builtin/JWTAuthPlugin.js +589 -0
  759. package/dist/esm/server/plugins/builtin/JWTAuthPlugin.js.map +1 -0
  760. package/dist/esm/server/plugins/builtin/ResponseTimePlugin.js +411 -0
  761. package/dist/esm/server/plugins/builtin/ResponseTimePlugin.js.map +1 -0
  762. package/dist/esm/server/plugins/builtin/SmartCachePlugin.js +841 -0
  763. package/dist/esm/server/plugins/builtin/SmartCachePlugin.js.map +1 -0
  764. package/dist/esm/server/plugins/core/CachePlugin.js +1973 -0
  765. package/dist/esm/server/plugins/core/CachePlugin.js.map +1 -0
  766. package/dist/esm/server/plugins/core/PerformancePlugin.js +872 -0
  767. package/dist/esm/server/plugins/core/PerformancePlugin.js.map +1 -0
  768. package/dist/esm/server/plugins/core/SecurityPlugin.js +797 -0
  769. package/dist/esm/server/plugins/core/SecurityPlugin.js.map +1 -0
  770. package/dist/esm/server/plugins/types/PluginTypes.js +47 -0
  771. package/dist/esm/server/plugins/types/PluginTypes.js.map +1 -0
  772. package/dist/esm/server/service/Reload/FileWatcher.js +734 -0
  773. package/dist/esm/server/service/Reload/FileWatcher.js.map +1 -0
  774. package/dist/esm/server/service/Reload/HotReloader.js +735 -0
  775. package/dist/esm/server/service/Reload/HotReloader.js.map +1 -0
  776. package/dist/esm/server/service/Reload/exec/TypeScriptExecutor.js +339 -0
  777. package/dist/esm/server/service/Reload/exec/TypeScriptExecutor.js.map +1 -0
  778. package/dist/esm/server/utils/ConfigLoader.js +207 -0
  779. package/dist/esm/server/utils/ConfigLoader.js.map +1 -0
  780. package/dist/esm/server/utils/Logger.js +234 -0
  781. package/dist/esm/server/utils/Logger.js.map +1 -0
  782. package/dist/esm/server/utils/PortManager.js +155 -0
  783. package/dist/esm/server/utils/PortManager.js.map +1 -0
  784. package/dist/esm/server/utils/forceClosePort.js +124 -0
  785. package/dist/esm/server/utils/forceClosePort.js.map +1 -0
  786. package/dist/esm/smart-routes.js +345 -0
  787. package/dist/esm/smart-routes.js.map +1 -0
  788. package/package.json +5 -6
@@ -0,0 +1,1572 @@
1
+ 'use strict';
2
+
3
+ var index = require('../types/index.js');
4
+ var metadataManager = require('../metadata/metadata-manager.js');
5
+ var validation = require('../utils/validation.js');
6
+ var idGenerator = require('../utils/id-generator.js');
7
+ var secureMemory = require('../../secure-memory.js');
8
+ var index$1 = require('../../../utils/memory/index.js');
9
+ var eventManager = require('../events/event-manager.js');
10
+ var ArrayCryptoHandler = require('../crypto/ArrayCryptoHandler.js');
11
+ var ArraySerializationHandler = require('../serialization/ArraySerializationHandler.js');
12
+ require('../../../index.js');
13
+ var crypto = require('../../../core/crypto.js');
14
+ var types = require('../../../utils/memory/types.js');
15
+
16
+ /***************************************************************************
17
+ * XyPrissSecurity - Enhanced Secure Array Core Implementation
18
+ *
19
+ * security features and array methods
20
+ *
21
+ * @author Nehonix & Community
22
+ *
23
+ * @license MIT
24
+ ***************************************************************************** */
25
+ /**
26
+ * A secure array that can store sensitive data with enhanced security features
27
+ * T represents the type of elements stored in the array
28
+ */
29
+ class SecureArray {
30
+ /**
31
+ * Creates a new secure array
32
+ */
33
+ constructor(initialData, options) {
34
+ // Core data storage
35
+ this.elements = [];
36
+ this.secureBuffers = new Map();
37
+ // State management
38
+ this._isDestroyed = false;
39
+ this._isReadOnly = false;
40
+ this._isFrozen = false;
41
+ this._version = 1;
42
+ this._lastModified = Date.now();
43
+ this._createdAt = Date.now();
44
+ // Memory management
45
+ this._memoryTracking = false;
46
+ // Snapshot functionality
47
+ this.snapshots = new Map();
48
+ this._id = idGenerator.ArrayIdGenerator.generate();
49
+ this.options = { ...index.DEFAULT_SECURE_ARRAY_OPTIONS, ...options };
50
+ this._isReadOnly = this.options.readOnly;
51
+ this._maxSize = this.options.maxSize;
52
+ // Initialize modular components
53
+ this.metadataManager = new metadataManager.ArrayMetadataManager();
54
+ this.eventManager = new eventManager.ArrayEventManager();
55
+ this.cryptoHandler = new ArrayCryptoHandler.ArrayCryptoHandler(this._id);
56
+ this.serializationHandler = new ArraySerializationHandler.ArraySerializationHandler(this.cryptoHandler, this.metadataManager);
57
+ // Set encryption key if provided
58
+ if (this.options.encryptionKey) {
59
+ this.cryptoHandler.setEncryptionKey(this.options.encryptionKey);
60
+ }
61
+ // Enable memory tracking
62
+ this._memoryTracking = this.options.enableMemoryTracking;
63
+ // Register with advanced memory manager if tracking is enabled
64
+ if (this._memoryTracking) {
65
+ index$1.memoryManager.registerObject(this, this._id);
66
+ // Listen to memory events for proactive management
67
+ index$1.memoryManager.on(types.MemoryEventType.MEMORY_PRESSURE, (event) => {
68
+ if (event.data?.pressure > 0.8) {
69
+ this.handleMemoryPressure();
70
+ }
71
+ });
72
+ index$1.memoryManager.on(types.MemoryEventType.LEAK_DETECTED, (event) => {
73
+ if (event.data?.leaks?.includes(this._id)) {
74
+ console.warn(`Potential memory leak detected in SecureArray ${this._id}`);
75
+ }
76
+ });
77
+ }
78
+ // Initialize secure buffer pool
79
+ this.initializeSecureBufferPool();
80
+ // Set initial data
81
+ if (initialData) {
82
+ this.pushAll(initialData);
83
+ }
84
+ this.eventManager.emit("created", -1, undefined, { id: this._id });
85
+ }
86
+ // ===== MEMORY MANAGEMENT =====
87
+ /**
88
+ * Initialize secure buffer pool for efficient memory reuse
89
+ */
90
+ initializeSecureBufferPool() {
91
+ if (!this.secureBufferPool) {
92
+ try {
93
+ this.secureBufferPool =
94
+ index$1.memoryManager.getPool("secure-array-buffer-pool") ||
95
+ index$1.memoryManager.createPool({
96
+ name: "secure-array-buffer-pool",
97
+ factory: () => new Uint8Array(1024), // 1KB buffers
98
+ reset: (buffer) => {
99
+ // Secure wipe before reuse
100
+ this.secureWipe(buffer);
101
+ },
102
+ capacity: 50,
103
+ strategy: "LRU",
104
+ validator: (buffer) => buffer instanceof Uint8Array,
105
+ });
106
+ }
107
+ catch (error) {
108
+ // Pool might already exist, try to get it
109
+ this.secureBufferPool = index$1.memoryManager.getPool("secure-array-buffer-pool");
110
+ }
111
+ }
112
+ }
113
+ /**
114
+ * Handle memory pressure by cleaning up unused resources
115
+ */
116
+ handleMemoryPressure() {
117
+ // Clean up unused secure buffers
118
+ for (const [index, buffer] of this.secureBuffers.entries()) {
119
+ if (index >= this.elements.length) {
120
+ buffer.destroy();
121
+ this.secureBuffers.delete(index);
122
+ }
123
+ }
124
+ // Clear old snapshots (keep only the latest 3)
125
+ const sortedSnapshots = Array.from(this.snapshots.entries()).sort(([, a], [, b]) => b.timestamp - a.timestamp);
126
+ if (sortedSnapshots.length > 3) {
127
+ for (let i = 3; i < sortedSnapshots.length; i++) {
128
+ this.snapshots.delete(sortedSnapshots[i][0]);
129
+ }
130
+ }
131
+ // Trigger garbage collection if available
132
+ if (global.gc) {
133
+ global.gc();
134
+ }
135
+ this.eventManager.emit("gc", -1, undefined, {
136
+ operation: "memory_pressure_cleanup",
137
+ buffersCleared: this.secureBuffers.size,
138
+ });
139
+ }
140
+ /**
141
+ * Secure wipe of buffer contents
142
+ */
143
+ secureWipe(buffer) {
144
+ return crypto.XyPrissSecurity.secureWipe(buffer);
145
+ }
146
+ // ===== UTILITY METHODS =====
147
+ /**
148
+ * Ensures the array is not destroyed
149
+ */
150
+ ensureNotDestroyed() {
151
+ if (this._isDestroyed) {
152
+ console.error("Array has been destroyed and cannot be used.");
153
+ throw new Error("Cannot use destroyed fortified Array. ");
154
+ }
155
+ }
156
+ /**
157
+ * Ensures the array is not read-only
158
+ */
159
+ ensureNotReadOnly() {
160
+ if (this._isReadOnly) {
161
+ throw new Error("SecureArray is read-only");
162
+ }
163
+ }
164
+ /**
165
+ * Ensures the array is not frozen
166
+ */
167
+ ensureNotFrozen() {
168
+ if (this._isFrozen) {
169
+ throw new Error("SecureArray is frozen");
170
+ }
171
+ }
172
+ /**
173
+ * Check if adding elements would exceed max size
174
+ */
175
+ checkSizeLimit(additionalElements = 1) {
176
+ if (this._maxSize &&
177
+ this.elements.length + additionalElements > this._maxSize) {
178
+ throw new Error(`Operation would exceed maximum size limit of ${this._maxSize}`);
179
+ }
180
+ }
181
+ /**
182
+ * Updates the last modified timestamp and version
183
+ */
184
+ updateLastModified() {
185
+ this._lastModified = Date.now();
186
+ this._version++;
187
+ }
188
+ /**
189
+ * Validates an index
190
+ */
191
+ validateIndex(index) {
192
+ if (this.options.enableIndexValidation) {
193
+ if (!Number.isInteger(index) || index < 0) {
194
+ throw new Error(`Invalid index: ${index}`);
195
+ }
196
+ }
197
+ }
198
+ /**
199
+ * Validates a value
200
+ */
201
+ validateValue(value) {
202
+ if (this.options.enableTypeValidation) {
203
+ validation.ArrayValidationUtils.validateSecureArrayValue(value);
204
+ }
205
+ }
206
+ // ===== CORE ARRAY OPERATIONS =====
207
+ /**
208
+ * Gets the length of the array
209
+ */
210
+ get length() {
211
+ this.ensureNotDestroyed();
212
+ return this.elements.length;
213
+ }
214
+ /**
215
+ * Gets the unique identifier of this array
216
+ */
217
+ get id() {
218
+ return this._id;
219
+ }
220
+ /**
221
+ * Gets the version number (increments on each mutation)
222
+ */
223
+ get version() {
224
+ return this._version;
225
+ }
226
+ /**
227
+ * Gets when the array was last modified
228
+ */
229
+ get lastModified() {
230
+ return this._lastModified;
231
+ }
232
+ /**
233
+ * Gets when the array was created
234
+ */
235
+ get createdAt() {
236
+ return this._createdAt;
237
+ }
238
+ /**
239
+ * Check if the array is empty
240
+ */
241
+ get isEmpty() {
242
+ return this.elements.length === 0;
243
+ }
244
+ /**
245
+ * Check if the array is read-only
246
+ */
247
+ get isReadOnly() {
248
+ return this._isReadOnly;
249
+ }
250
+ /**
251
+ * Check if the array is frozen
252
+ */
253
+ get isFrozen() {
254
+ return this._isFrozen;
255
+ }
256
+ /**
257
+ * Check if the array is destroyed
258
+ */
259
+ get isDestroyed() {
260
+ return this._isDestroyed;
261
+ }
262
+ /**
263
+ * Gets an element at the specified index with automatic decryption
264
+ */
265
+ get(index) {
266
+ this.ensureNotDestroyed();
267
+ this.validateIndex(index);
268
+ if (index >= this.elements.length) {
269
+ return undefined;
270
+ }
271
+ const value = this.elements[index];
272
+ // Update access metadata
273
+ if (this.metadataManager.has(index)) {
274
+ const metadata = this.metadataManager.get(index);
275
+ this.metadataManager.update(index, metadata.type, metadata.isSecure, true);
276
+ }
277
+ // Check if value is encrypted (starts with [ENCRYPTED:)
278
+ if (typeof value === "string" &&
279
+ this.cryptoHandler.isEncrypted(value)) {
280
+ try {
281
+ // Decrypt the value automatically
282
+ const decryptedValue = this.cryptoHandler.decryptValue(value);
283
+ this.eventManager.emit("get", index, decryptedValue);
284
+ return decryptedValue;
285
+ }
286
+ catch (error) {
287
+ console.error(`Failed to decrypt value at index ${index}:`, error);
288
+ // Return the encrypted value if decryption fails
289
+ this.eventManager.emit("get", index, value);
290
+ return value;
291
+ }
292
+ }
293
+ // Convert SecureBuffer back to original type based on metadata
294
+ if (value instanceof secureMemory.SecureBuffer) {
295
+ const metadata = this.metadataManager.get(index);
296
+ if (metadata?.type === "string") {
297
+ // Convert SecureBuffer back to string
298
+ const buffer = value.getBuffer();
299
+ const result = new TextDecoder().decode(buffer);
300
+ this.eventManager.emit("get", index, result);
301
+ return result;
302
+ }
303
+ }
304
+ this.eventManager.emit("get", index, value);
305
+ return value;
306
+ }
307
+ /**
308
+ * Gets element at index with bounds checking
309
+ */
310
+ at(index) {
311
+ this.ensureNotDestroyed();
312
+ // Handle negative indices
313
+ if (index < 0) {
314
+ index = this.elements.length + index;
315
+ }
316
+ return this.get(index);
317
+ }
318
+ /**
319
+ * Sets an element at the specified index
320
+ */
321
+ set(index, value) {
322
+ this.ensureNotDestroyed();
323
+ this.ensureNotReadOnly();
324
+ this.ensureNotFrozen();
325
+ this.validateIndex(index);
326
+ this.validateValue(value);
327
+ // Check size limit for new indices
328
+ if (index >= this.elements.length) {
329
+ this.checkSizeLimit(index - this.elements.length + 1);
330
+ }
331
+ // Extend array if necessary
332
+ while (index >= this.elements.length) {
333
+ this.elements.push(undefined);
334
+ }
335
+ // Clean up any existing secure buffer for this index
336
+ this.cleanupIndex(index);
337
+ // Handle secure storage for strings
338
+ if (typeof value === "string") {
339
+ const secureBuffer = secureMemory.SecureBuffer.from(value);
340
+ this.secureBuffers.set(index, secureBuffer);
341
+ this.elements[index] = secureBuffer;
342
+ this.metadataManager.update(index, "string", true);
343
+ }
344
+ else {
345
+ this.elements[index] = value;
346
+ this.metadataManager.update(index, typeof value, false);
347
+ }
348
+ this.updateLastModified();
349
+ this.eventManager.emit("set", index, value);
350
+ return this;
351
+ }
352
+ /**
353
+ * Cleans up resources associated with an index
354
+ */
355
+ cleanupIndex(index) {
356
+ if (this.secureBuffers.has(index)) {
357
+ this.secureBuffers.get(index)?.destroy();
358
+ this.secureBuffers.delete(index);
359
+ }
360
+ }
361
+ /**
362
+ * Adds an element to the end of the array
363
+ */
364
+ push(value) {
365
+ this.ensureNotDestroyed();
366
+ this.ensureNotReadOnly();
367
+ this.ensureNotFrozen();
368
+ this.validateValue(value);
369
+ this.checkSizeLimit(1);
370
+ const index = this.elements.length;
371
+ // Handle secure storage for strings
372
+ if (typeof value === "string") {
373
+ const secureBuffer = secureMemory.SecureBuffer.from(value);
374
+ this.secureBuffers.set(index, secureBuffer);
375
+ this.elements.push(secureBuffer);
376
+ this.metadataManager.update(index, "string", true);
377
+ }
378
+ else {
379
+ this.elements.push(value);
380
+ this.metadataManager.update(index, typeof value, false);
381
+ }
382
+ this.updateLastModified();
383
+ this.eventManager.emit("push", index, value);
384
+ return this.elements.length;
385
+ }
386
+ /**
387
+ * Removes and returns the last element
388
+ */
389
+ pop() {
390
+ this.ensureNotDestroyed();
391
+ this.ensureNotReadOnly();
392
+ this.ensureNotFrozen();
393
+ if (this.elements.length === 0) {
394
+ return undefined;
395
+ }
396
+ const index = this.elements.length - 1;
397
+ const value = this.get(index);
398
+ // Clean up resources
399
+ this.cleanupIndex(index);
400
+ this.elements.pop();
401
+ this.metadataManager.delete(index);
402
+ this.updateLastModified();
403
+ this.eventManager.emit("pop", index, value);
404
+ return value;
405
+ }
406
+ /**
407
+ * Removes and returns the first element
408
+ */
409
+ shift() {
410
+ this.ensureNotDestroyed();
411
+ this.ensureNotReadOnly();
412
+ this.ensureNotFrozen();
413
+ if (this.elements.length === 0) {
414
+ return undefined;
415
+ }
416
+ const value = this.get(0);
417
+ // Clean up resources for index 0
418
+ this.cleanupIndex(0);
419
+ this.elements.shift();
420
+ // Shift all metadata indices down by 1
421
+ this.metadataManager.shiftIndices(0, -1);
422
+ // Shift all secure buffer indices down by 1
423
+ const newSecureBuffers = new Map();
424
+ for (const [index, buffer] of this.secureBuffers.entries()) {
425
+ if (index > 0) {
426
+ newSecureBuffers.set(index - 1, buffer);
427
+ }
428
+ }
429
+ this.secureBuffers = newSecureBuffers;
430
+ this.updateLastModified();
431
+ this.eventManager.emit("shift", 0, value);
432
+ return value;
433
+ }
434
+ /**
435
+ * Adds elements to the beginning of the array
436
+ */
437
+ unshift(...values) {
438
+ this.ensureNotDestroyed();
439
+ this.ensureNotReadOnly();
440
+ this.ensureNotFrozen();
441
+ this.checkSizeLimit(values.length);
442
+ for (const value of values) {
443
+ this.validateValue(value);
444
+ }
445
+ // Shift existing secure buffers and metadata
446
+ const shiftAmount = values.length;
447
+ this.metadataManager.shiftIndices(0, shiftAmount);
448
+ const newSecureBuffers = new Map();
449
+ for (const [index, buffer] of this.secureBuffers.entries()) {
450
+ newSecureBuffers.set(index + shiftAmount, buffer);
451
+ }
452
+ this.secureBuffers = newSecureBuffers;
453
+ // Add new values at the beginning
454
+ for (let i = 0; i < values.length; i++) {
455
+ const value = values[i];
456
+ if (typeof value === "string") {
457
+ const secureBuffer = secureMemory.SecureBuffer.from(value);
458
+ this.secureBuffers.set(i, secureBuffer);
459
+ this.metadataManager.update(i, "string", true);
460
+ }
461
+ else {
462
+ this.metadataManager.update(i, typeof value, false);
463
+ }
464
+ }
465
+ this.elements.unshift(...values);
466
+ this.updateLastModified();
467
+ this.eventManager.emit("unshift", 0, values);
468
+ return this.elements.length;
469
+ }
470
+ /**
471
+ * Adds multiple elements to the array
472
+ */
473
+ pushAll(values) {
474
+ this.ensureNotDestroyed();
475
+ this.ensureNotReadOnly();
476
+ this.ensureNotFrozen();
477
+ this.checkSizeLimit(values.length);
478
+ for (const value of values) {
479
+ this.push(value);
480
+ }
481
+ return this.elements.length;
482
+ }
483
+ // ===== ENHANCED ARRAY METHODS =====
484
+ /**
485
+ * Removes elements from array and optionally inserts new elements
486
+ */
487
+ splice(start, deleteCount, ...items) {
488
+ this.ensureNotDestroyed();
489
+ this.ensureNotReadOnly();
490
+ this.ensureNotFrozen();
491
+ if (start < 0) {
492
+ start = Math.max(0, this.elements.length + start);
493
+ }
494
+ deleteCount =
495
+ deleteCount === undefined
496
+ ? this.elements.length - start
497
+ : Math.max(0, deleteCount);
498
+ if (items.length > 0) {
499
+ this.checkSizeLimit(items.length - deleteCount);
500
+ for (const item of items) {
501
+ this.validateValue(item);
502
+ }
503
+ }
504
+ // Create a new SecureArray for removed elements
505
+ const removedElements = new SecureArray();
506
+ // Get elements to be removed
507
+ for (let i = start; i < start + deleteCount && i < this.elements.length; i++) {
508
+ const value = this.get(i);
509
+ if (value !== undefined) {
510
+ removedElements.push(value);
511
+ }
512
+ }
513
+ // Clean up secure buffers for removed elements
514
+ for (let i = start; i < start + deleteCount; i++) {
515
+ this.cleanupIndex(i);
516
+ }
517
+ // Perform the splice operation
518
+ const removed = this.elements.splice(start, deleteCount, ...items);
519
+ // Update metadata and secure buffers
520
+ this.metadataManager.splice(start, deleteCount, items.length);
521
+ // Handle secure storage for new items
522
+ for (let i = 0; i < items.length; i++) {
523
+ const value = items[i];
524
+ const index = start + i;
525
+ if (typeof value === "string") {
526
+ const secureBuffer = secureMemory.SecureBuffer.from(value);
527
+ this.secureBuffers.set(index, secureBuffer);
528
+ this.metadataManager.update(index, "string", true);
529
+ }
530
+ else {
531
+ this.metadataManager.update(index, typeof value, false);
532
+ }
533
+ }
534
+ this.updateLastModified();
535
+ this.eventManager.emit("splice", start, { removed, added: items });
536
+ return removedElements;
537
+ }
538
+ /**
539
+ * Returns a shallow copy of a portion of the array
540
+ */
541
+ slice(start, end) {
542
+ this.ensureNotDestroyed();
543
+ const slicedElements = [];
544
+ const actualStart = start === undefined
545
+ ? 0
546
+ : start < 0
547
+ ? Math.max(0, this.elements.length + start)
548
+ : start;
549
+ const actualEnd = end === undefined
550
+ ? this.elements.length
551
+ : end < 0
552
+ ? this.elements.length + end
553
+ : end;
554
+ for (let i = actualStart; i < actualEnd && i < this.elements.length; i++) {
555
+ const value = this.get(i);
556
+ if (value !== undefined) {
557
+ slicedElements.push(value);
558
+ }
559
+ }
560
+ const newArray = new SecureArray(slicedElements, {
561
+ ...this.options,
562
+ });
563
+ this.eventManager.emit("slice", actualStart, {
564
+ start: actualStart,
565
+ end: actualEnd,
566
+ result: newArray,
567
+ });
568
+ return newArray;
569
+ }
570
+ /**
571
+ * Concatenates arrays and returns a new SecureArray
572
+ */
573
+ concat(...arrays) {
574
+ this.ensureNotDestroyed();
575
+ const newElements = [];
576
+ // Add current array elements
577
+ for (let i = 0; i < this.elements.length; i++) {
578
+ const value = this.get(i);
579
+ if (value !== undefined) {
580
+ newElements.push(value);
581
+ }
582
+ }
583
+ // Add elements from other arrays
584
+ for (const arr of arrays) {
585
+ if (arr instanceof SecureArray) {
586
+ for (let i = 0; i < arr.length; i++) {
587
+ const value = arr.get(i);
588
+ if (value !== undefined) {
589
+ newElements.push(value);
590
+ }
591
+ }
592
+ }
593
+ else {
594
+ newElements.push(...arr);
595
+ }
596
+ }
597
+ return new SecureArray(newElements, { ...this.options });
598
+ }
599
+ /**
600
+ * Joins all elements into a string
601
+ */
602
+ join(separator = ",") {
603
+ this.ensureNotDestroyed();
604
+ const stringElements = [];
605
+ for (let i = 0; i < this.elements.length; i++) {
606
+ const value = this.get(i);
607
+ stringElements.push(value?.toString() ?? "");
608
+ }
609
+ return stringElements.join(separator);
610
+ }
611
+ /**
612
+ * Reverses the array in place
613
+ */
614
+ reverse() {
615
+ this.ensureNotDestroyed();
616
+ this.ensureNotReadOnly();
617
+ this.ensureNotFrozen();
618
+ // Create new mappings for secure buffers
619
+ const newSecureBuffers = new Map();
620
+ const length = this.elements.length;
621
+ for (const [index, buffer] of this.secureBuffers.entries()) {
622
+ newSecureBuffers.set(length - 1 - index, buffer);
623
+ }
624
+ this.secureBuffers = newSecureBuffers;
625
+ this.elements.reverse();
626
+ this.metadataManager.reverse(length);
627
+ this.updateLastModified();
628
+ this.eventManager.emit("reverse", -1, undefined);
629
+ return this;
630
+ }
631
+ /**
632
+ * Sorts the array in place
633
+ */
634
+ sort(compareFn) {
635
+ this.ensureNotDestroyed();
636
+ this.ensureNotReadOnly();
637
+ this.ensureNotFrozen();
638
+ // Get actual values for sorting
639
+ const indexValuePairs = [];
640
+ for (let i = 0; i < this.elements.length; i++) {
641
+ const value = this.get(i);
642
+ if (value !== undefined) {
643
+ indexValuePairs.push({ index: i, value });
644
+ }
645
+ }
646
+ // Sort the pairs
647
+ indexValuePairs.sort((a, b) => {
648
+ if (compareFn) {
649
+ return compareFn(a.value, b.value);
650
+ }
651
+ const aStr = String(a.value);
652
+ const bStr = String(b.value);
653
+ return aStr < bStr ? -1 : aStr > bStr ? 1 : 0;
654
+ });
655
+ // Rebuild the array in sorted order
656
+ const newElements = [];
657
+ const newSecureBuffers = new Map();
658
+ for (let i = 0; i < indexValuePairs.length; i++) {
659
+ const { index: oldIndex, value } = indexValuePairs[i];
660
+ newElements[i] = this.elements[oldIndex];
661
+ if (this.secureBuffers.has(oldIndex)) {
662
+ newSecureBuffers.set(i, this.secureBuffers.get(oldIndex));
663
+ }
664
+ }
665
+ this.elements = newElements;
666
+ this.secureBuffers = newSecureBuffers;
667
+ this.metadataManager.reorder(indexValuePairs.map((p) => p.index));
668
+ this.updateLastModified();
669
+ this.eventManager.emit("sort", -1, undefined);
670
+ return this;
671
+ }
672
+ // ===== FUNCTIONAL PROGRAMMING METHODS =====
673
+ /**
674
+ * Calls a function for each element
675
+ */
676
+ forEach(callback, thisArg) {
677
+ this.ensureNotDestroyed();
678
+ for (let i = 0; i < this.elements.length; i++) {
679
+ const value = this.get(i);
680
+ if (value !== undefined) {
681
+ callback.call(thisArg, value, i, this);
682
+ }
683
+ }
684
+ }
685
+ /**
686
+ * Creates a new array with results of calling a function for every element
687
+ */
688
+ map(callback, thisArg) {
689
+ this.ensureNotDestroyed();
690
+ const mappedElements = [];
691
+ for (let i = 0; i < this.elements.length; i++) {
692
+ const value = this.get(i);
693
+ if (value !== undefined) {
694
+ mappedElements.push(callback.call(thisArg, value, i, this));
695
+ }
696
+ }
697
+ return new SecureArray(mappedElements, { ...this.options });
698
+ }
699
+ /**
700
+ * Creates a new array with elements that pass a test
701
+ */
702
+ filter(predicate, thisArg) {
703
+ this.ensureNotDestroyed();
704
+ const filteredElements = [];
705
+ for (let i = 0; i < this.elements.length; i++) {
706
+ const value = this.get(i);
707
+ if (value !== undefined &&
708
+ predicate.call(thisArg, value, i, this)) {
709
+ filteredElements.push(value);
710
+ }
711
+ }
712
+ return new SecureArray(filteredElements, { ...this.options });
713
+ }
714
+ /**
715
+ * Reduces the array to a single value
716
+ */
717
+ reduce(callback, initialValue) {
718
+ this.ensureNotDestroyed();
719
+ let accumulator = initialValue;
720
+ let startIndex = 0;
721
+ if (accumulator === undefined) {
722
+ if (this.elements.length === 0) {
723
+ throw new TypeError("Reduce of empty array with no initial value");
724
+ }
725
+ accumulator = this.get(0);
726
+ startIndex = 1;
727
+ }
728
+ for (let i = startIndex; i < this.elements.length; i++) {
729
+ const value = this.get(i);
730
+ if (value !== undefined) {
731
+ accumulator = callback(accumulator, value, i, this);
732
+ }
733
+ }
734
+ return accumulator;
735
+ }
736
+ /**
737
+ * Tests whether at least one element passes the test
738
+ */
739
+ some(predicate, thisArg) {
740
+ this.ensureNotDestroyed();
741
+ for (let i = 0; i < this.elements.length; i++) {
742
+ const value = this.get(i);
743
+ if (value !== undefined &&
744
+ predicate.call(thisArg, value, i, this)) {
745
+ return true;
746
+ }
747
+ }
748
+ return false;
749
+ }
750
+ /**
751
+ * Tests whether all elements pass the test
752
+ */
753
+ every(predicate, thisArg) {
754
+ this.ensureNotDestroyed();
755
+ for (let i = 0; i < this.elements.length; i++) {
756
+ const value = this.get(i);
757
+ if (value !== undefined &&
758
+ !predicate.call(thisArg, value, i, this)) {
759
+ return false;
760
+ }
761
+ }
762
+ return true;
763
+ }
764
+ /**
765
+ * Finds the first element that satisfies the predicate
766
+ */
767
+ find(predicate, thisArg) {
768
+ this.ensureNotDestroyed();
769
+ for (let i = 0; i < this.elements.length; i++) {
770
+ const value = this.get(i);
771
+ if (value !== undefined &&
772
+ predicate.call(thisArg, value, i, this)) {
773
+ return value;
774
+ }
775
+ }
776
+ return undefined;
777
+ }
778
+ /**
779
+ * Finds the index of the first element that satisfies the predicate
780
+ */
781
+ findIndex(predicate, thisArg) {
782
+ this.ensureNotDestroyed();
783
+ for (let i = 0; i < this.elements.length; i++) {
784
+ const value = this.get(i);
785
+ if (value !== undefined &&
786
+ predicate.call(thisArg, value, i, this)) {
787
+ return i;
788
+ }
789
+ }
790
+ return -1;
791
+ }
792
+ /**
793
+ * Finds the last element that satisfies the predicate
794
+ */
795
+ findLast(predicate, thisArg) {
796
+ this.ensureNotDestroyed();
797
+ for (let i = this.elements.length - 1; i >= 0; i--) {
798
+ const value = this.get(i);
799
+ if (value !== undefined &&
800
+ predicate.call(thisArg, value, i, this)) {
801
+ return value;
802
+ }
803
+ }
804
+ return undefined;
805
+ }
806
+ /**
807
+ * Finds the index of the last element that satisfies the predicate
808
+ */
809
+ findLastIndex(predicate, thisArg) {
810
+ this.ensureNotDestroyed();
811
+ for (let i = this.elements.length - 1; i >= 0; i--) {
812
+ const value = this.get(i);
813
+ if (value !== undefined &&
814
+ predicate.call(thisArg, value, i, this)) {
815
+ return i;
816
+ }
817
+ }
818
+ return -1;
819
+ }
820
+ /**
821
+ * Returns the first index of an element
822
+ */
823
+ indexOf(searchElement, fromIndex = 0) {
824
+ this.ensureNotDestroyed();
825
+ const startIndex = fromIndex < 0
826
+ ? Math.max(0, this.elements.length + fromIndex)
827
+ : fromIndex;
828
+ for (let i = startIndex; i < this.elements.length; i++) {
829
+ const value = this.get(i);
830
+ if (value === searchElement) {
831
+ return i;
832
+ }
833
+ }
834
+ return -1;
835
+ }
836
+ /**
837
+ * Returns the last index of an element
838
+ */
839
+ lastIndexOf(searchElement, fromIndex) {
840
+ this.ensureNotDestroyed();
841
+ const startIndex = fromIndex === undefined
842
+ ? this.elements.length - 1
843
+ : fromIndex < 0
844
+ ? this.elements.length + fromIndex
845
+ : fromIndex;
846
+ for (let i = Math.min(startIndex, this.elements.length - 1); i >= 0; i--) {
847
+ const value = this.get(i);
848
+ if (value === searchElement) {
849
+ return i;
850
+ }
851
+ }
852
+ return -1;
853
+ }
854
+ /**
855
+ * Checks if an element exists in the array
856
+ */
857
+ includes(searchElement, fromIndex = 0) {
858
+ return this.indexOf(searchElement, fromIndex) !== -1;
859
+ }
860
+ // ===== ENHANCED SECURITY METHODS =====
861
+ /**
862
+ * Creates a snapshot of the current array state
863
+ */
864
+ createSnapshot(name) {
865
+ this.ensureNotDestroyed();
866
+ const snapshotId = name ||
867
+ `snapshot_${Date.now()}_${Math.random().toString(36).substr(2, 9)}`;
868
+ // Deep copy elements
869
+ const elementsCopy = [];
870
+ for (let i = 0; i < this.elements.length; i++) {
871
+ const value = this.get(i);
872
+ if (value !== undefined) {
873
+ elementsCopy.push(value);
874
+ }
875
+ }
876
+ // Copy metadata
877
+ const metadataCopy = new Map(this.metadataManager.getAllMetadata());
878
+ this.snapshots.set(snapshotId, {
879
+ elements: elementsCopy,
880
+ metadata: metadataCopy,
881
+ timestamp: Date.now(),
882
+ });
883
+ this.eventManager.emit("snapshot_created", -1, undefined, {
884
+ snapshotId,
885
+ });
886
+ return snapshotId;
887
+ }
888
+ /**
889
+ * Restores the array from a snapshot
890
+ */
891
+ restoreFromSnapshot(snapshotId) {
892
+ this.ensureNotDestroyed();
893
+ this.ensureNotReadOnly();
894
+ this.ensureNotFrozen();
895
+ const snapshot = this.snapshots.get(snapshotId);
896
+ if (!snapshot) {
897
+ return false;
898
+ }
899
+ // Clear current state
900
+ this.clear();
901
+ // Restore from snapshot
902
+ for (const element of snapshot.elements) {
903
+ this.push(element);
904
+ }
905
+ this.eventManager.emit("snapshot_restored", -1, undefined, {
906
+ snapshotId,
907
+ });
908
+ return true;
909
+ }
910
+ /**
911
+ * Lists available snapshots
912
+ */
913
+ listSnapshots() {
914
+ return Array.from(this.snapshots.entries()).map(([id, snapshot]) => ({
915
+ id,
916
+ timestamp: snapshot.timestamp,
917
+ }));
918
+ }
919
+ /**
920
+ * Deletes a snapshot
921
+ */
922
+ deleteSnapshot(snapshotId) {
923
+ return this.snapshots.delete(snapshotId);
924
+ }
925
+ /**
926
+ * Clears all elements from the array
927
+ */
928
+ clear() {
929
+ this.ensureNotDestroyed();
930
+ this.ensureNotReadOnly();
931
+ this.ensureNotFrozen();
932
+ // Clean up all secure buffers
933
+ for (const buffer of this.secureBuffers.values()) {
934
+ buffer.destroy();
935
+ }
936
+ this.secureBuffers.clear();
937
+ // Clear elements and metadata
938
+ this.elements.length = 0;
939
+ this.metadataManager.clear();
940
+ this.updateLastModified();
941
+ this.eventManager.emit("clear", -1, undefined);
942
+ return this;
943
+ }
944
+ /**
945
+ * Freezes the array to prevent modifications
946
+ */
947
+ freeze() {
948
+ this.ensureNotDestroyed();
949
+ this._isFrozen = true;
950
+ this.eventManager.emit("freeze", -1, undefined);
951
+ return this;
952
+ }
953
+ /**
954
+ * Unfreezes the array to allow modifications
955
+ */
956
+ unfreeze() {
957
+ this.ensureNotDestroyed();
958
+ this._isFrozen = false;
959
+ this.eventManager.emit("unfreeze", -1, undefined);
960
+ return this;
961
+ }
962
+ /**
963
+ * Makes the array read-only
964
+ */
965
+ makeReadOnly() {
966
+ this.ensureNotDestroyed();
967
+ this._isReadOnly = true;
968
+ this.eventManager.emit("readonly", -1, undefined);
969
+ return this;
970
+ }
971
+ /**
972
+ * Removes read-only restriction
973
+ */
974
+ makeWritable() {
975
+ this.ensureNotDestroyed();
976
+ this._isReadOnly = false;
977
+ this.eventManager.emit("writable", -1, undefined);
978
+ return this;
979
+ }
980
+ /**
981
+ * Securely wipes all data and destroys the array
982
+ * @example
983
+ * //===================== correct ===========
984
+ const x = fArray([] as number[]);
985
+ x.push(12);
986
+
987
+ console.log(x._array);
988
+ x.destroy();
989
+
990
+ //================ incorrect ===============
991
+ const x = fArray([] as number[]);
992
+ x.destroy(); // will destroy the array
993
+ x.push(12); // x.push will throw an error
994
+
995
+ console.log(x._array); // will throw an error
996
+ */
997
+ destroy() {
998
+ if (this._isDestroyed) {
999
+ return;
1000
+ }
1001
+ // Clean up all secure buffers
1002
+ for (const buffer of this.secureBuffers.values()) {
1003
+ buffer.destroy();
1004
+ }
1005
+ this.secureBuffers.clear();
1006
+ // Clear snapshots
1007
+ this.snapshots.clear();
1008
+ // Secure wipe of elements array
1009
+ if (this.elements.length > 0) {
1010
+ this.elements.fill(null);
1011
+ this.elements.length = 0;
1012
+ }
1013
+ // Clear metadata
1014
+ this.metadataManager.clear();
1015
+ // Unregister from memory manager
1016
+ if (this._memoryTracking) {
1017
+ index$1.memoryManager.unregisterObject(this._id);
1018
+ }
1019
+ this._isDestroyed = true;
1020
+ this.eventManager.emit("destroyed", -1, undefined);
1021
+ // Clear event listeners
1022
+ this.eventManager.removeAllListeners();
1023
+ }
1024
+ // ===== UTILITY AND STATISTICS METHODS =====
1025
+ /**
1026
+ * Gets comprehensive statistics about the array
1027
+ */
1028
+ getStats() {
1029
+ this.ensureNotDestroyed();
1030
+ const typeCount = new Map();
1031
+ let secureElementCount = 0;
1032
+ let totalMemoryUsage = 0;
1033
+ let totalAccesses = 0;
1034
+ for (let i = 0; i < this.elements.length; i++) {
1035
+ const metadata = this.metadataManager.get(i);
1036
+ if (metadata) {
1037
+ const type = metadata.type;
1038
+ typeCount.set(type, (typeCount.get(type) || 0) + 1);
1039
+ if (metadata.isSecure) {
1040
+ secureElementCount++;
1041
+ }
1042
+ totalAccesses += metadata.accessCount;
1043
+ }
1044
+ // Estimate memory usage
1045
+ const value = this.get(i);
1046
+ if (value !== undefined) {
1047
+ if (typeof value === "string") {
1048
+ totalMemoryUsage += value.length * 2; // UTF-16
1049
+ }
1050
+ else if (typeof value === "number") {
1051
+ totalMemoryUsage += 8; // 64-bit number
1052
+ }
1053
+ else if (typeof value === "boolean") {
1054
+ totalMemoryUsage += 1;
1055
+ }
1056
+ else {
1057
+ totalMemoryUsage += 64; // Estimate for objects
1058
+ }
1059
+ }
1060
+ }
1061
+ return {
1062
+ length: this.elements.length,
1063
+ secureElements: secureElementCount,
1064
+ totalAccesses,
1065
+ memoryUsage: totalMemoryUsage,
1066
+ lastModified: this._lastModified,
1067
+ version: this._version,
1068
+ createdAt: this._createdAt,
1069
+ isReadOnly: this._isReadOnly,
1070
+ isFrozen: this._isFrozen,
1071
+ typeDistribution: Object.fromEntries(typeCount),
1072
+ secureElementCount,
1073
+ estimatedMemoryUsage: totalMemoryUsage,
1074
+ snapshotCount: this.snapshots.size,
1075
+ encryptionEnabled: this.cryptoHandler.getEncryptionStatus().hasEncryptionKey,
1076
+ };
1077
+ }
1078
+ /**
1079
+ * Validates the integrity of the array
1080
+ */
1081
+ validateIntegrity() {
1082
+ this.ensureNotDestroyed();
1083
+ const errors = [];
1084
+ // Check if elements length matches metadata count
1085
+ const metadataCount = this.metadataManager.size();
1086
+ if (this.elements.length !== metadataCount) {
1087
+ errors.push(`Element count (${this.elements.length}) doesn't match metadata count (${metadataCount})`);
1088
+ }
1089
+ // Check secure buffer consistency
1090
+ for (const [index, buffer] of this.secureBuffers.entries()) {
1091
+ if (index >= this.elements.length) {
1092
+ errors.push(`Secure buffer exists for invalid index: ${index}`);
1093
+ }
1094
+ const metadata = this.metadataManager.get(index);
1095
+ if (!metadata || !metadata.isSecure) {
1096
+ errors.push(`Secure buffer exists but metadata indicates non-secure element at index: ${index}`);
1097
+ }
1098
+ try {
1099
+ buffer.getBuffer(); // Test if buffer is still valid
1100
+ }
1101
+ catch (error) {
1102
+ errors.push(`Invalid secure buffer at index ${index}: ${error}`);
1103
+ }
1104
+ }
1105
+ // Check for memory leaks in metadata
1106
+ for (let i = 0; i < this.metadataManager.size(); i++) {
1107
+ if (!this.metadataManager.has(i) && i < this.elements.length) {
1108
+ errors.push(`Missing metadata for element at index: ${i}`);
1109
+ }
1110
+ }
1111
+ return {
1112
+ isValid: errors.length === 0,
1113
+ errors,
1114
+ };
1115
+ }
1116
+ /**
1117
+ * Compacts the array by removing undefined/null elements
1118
+ */
1119
+ compact() {
1120
+ this.ensureNotDestroyed();
1121
+ this.ensureNotReadOnly();
1122
+ this.ensureNotFrozen();
1123
+ const compactedElements = [];
1124
+ const newSecureBuffers = new Map();
1125
+ let newIndex = 0;
1126
+ for (let i = 0; i < this.elements.length; i++) {
1127
+ const value = this.get(i);
1128
+ if (value !== null && value !== undefined) {
1129
+ compactedElements.push(this.elements[i]);
1130
+ if (this.secureBuffers.has(i)) {
1131
+ newSecureBuffers.set(newIndex, this.secureBuffers.get(i));
1132
+ }
1133
+ const metadata = this.metadataManager.get(i);
1134
+ if (metadata) {
1135
+ this.metadataManager.update(newIndex, metadata.type, metadata.isSecure);
1136
+ }
1137
+ newIndex++;
1138
+ }
1139
+ else {
1140
+ // Clean up secure buffer for removed element
1141
+ this.cleanupIndex(i);
1142
+ }
1143
+ }
1144
+ // Clean up old metadata
1145
+ this.metadataManager.clear();
1146
+ this.elements = compactedElements;
1147
+ this.secureBuffers = newSecureBuffers;
1148
+ this.updateLastModified();
1149
+ this.eventManager.emit("compact", -1, undefined, {
1150
+ originalLength: this.elements.length +
1151
+ (this.elements.length - compactedElements.length),
1152
+ newLength: compactedElements.length,
1153
+ });
1154
+ return this;
1155
+ }
1156
+ /**
1157
+ * Removes duplicate elements
1158
+ */
1159
+ unique() {
1160
+ this.ensureNotDestroyed();
1161
+ this.ensureNotReadOnly();
1162
+ this.ensureNotFrozen();
1163
+ const seen = new Set();
1164
+ const uniqueElements = [];
1165
+ const newSecureBuffers = new Map();
1166
+ let newIndex = 0;
1167
+ for (let i = 0; i < this.elements.length; i++) {
1168
+ const value = this.get(i);
1169
+ if (value !== undefined && !seen.has(value)) {
1170
+ seen.add(value);
1171
+ uniqueElements.push(this.elements[i]);
1172
+ if (this.secureBuffers.has(i)) {
1173
+ newSecureBuffers.set(newIndex, this.secureBuffers.get(i));
1174
+ }
1175
+ const metadata = this.metadataManager.get(i);
1176
+ if (metadata) {
1177
+ this.metadataManager.update(newIndex, metadata.type, metadata.isSecure);
1178
+ }
1179
+ newIndex++;
1180
+ }
1181
+ else if (value !== undefined) {
1182
+ // Clean up duplicate's secure buffer
1183
+ this.cleanupIndex(i);
1184
+ }
1185
+ }
1186
+ // Clean up old metadata
1187
+ this.metadataManager.clear();
1188
+ this.elements = uniqueElements;
1189
+ this.secureBuffers = newSecureBuffers;
1190
+ this.updateLastModified();
1191
+ this.eventManager.emit("unique", -1, undefined, {
1192
+ originalLength: this.elements.length +
1193
+ (this.elements.length - uniqueElements.length),
1194
+ newLength: uniqueElements.length,
1195
+ });
1196
+ return this;
1197
+ }
1198
+ /**
1199
+ * Groups elements by a key function
1200
+ */
1201
+ groupBy(keyFn) {
1202
+ this.ensureNotDestroyed();
1203
+ const groups = new Map();
1204
+ for (let i = 0; i < this.elements.length; i++) {
1205
+ const value = this.get(i);
1206
+ if (value !== undefined) {
1207
+ const key = keyFn(value, i);
1208
+ if (!groups.has(key)) {
1209
+ groups.set(key, new SecureArray([], { ...this.options }));
1210
+ }
1211
+ groups.get(key).push(value);
1212
+ }
1213
+ }
1214
+ return groups;
1215
+ }
1216
+ /**
1217
+ * Returns the minimum value
1218
+ */
1219
+ min(compareFn) {
1220
+ this.ensureNotDestroyed();
1221
+ if (this.elements.length === 0) {
1222
+ return undefined;
1223
+ }
1224
+ let min = this.get(0);
1225
+ if (min === undefined) {
1226
+ return undefined;
1227
+ }
1228
+ for (let i = 1; i < this.elements.length; i++) {
1229
+ const value = this.get(i);
1230
+ if (value !== undefined) {
1231
+ if (compareFn) {
1232
+ if (compareFn(value, min) < 0) {
1233
+ min = value;
1234
+ }
1235
+ }
1236
+ else {
1237
+ if (value < min) {
1238
+ min = value;
1239
+ }
1240
+ }
1241
+ }
1242
+ }
1243
+ return min;
1244
+ }
1245
+ /**
1246
+ * Returns the maximum value
1247
+ */
1248
+ max(compareFn) {
1249
+ this.ensureNotDestroyed();
1250
+ if (this.elements.length === 0) {
1251
+ return undefined;
1252
+ }
1253
+ let max = this.get(0);
1254
+ if (max === undefined) {
1255
+ return undefined;
1256
+ }
1257
+ for (let i = 1; i < this.elements.length; i++) {
1258
+ const value = this.get(i);
1259
+ if (value !== undefined) {
1260
+ if (compareFn) {
1261
+ if (compareFn(value, max) > 0) {
1262
+ max = value;
1263
+ }
1264
+ }
1265
+ else {
1266
+ if (value > max) {
1267
+ max = value;
1268
+ }
1269
+ }
1270
+ }
1271
+ }
1272
+ return max;
1273
+ }
1274
+ /**
1275
+ * Shuffles the array in place using Fisher-Yates algorithm
1276
+ */
1277
+ shuffle() {
1278
+ this.ensureNotDestroyed();
1279
+ this.ensureNotReadOnly();
1280
+ this.ensureNotFrozen();
1281
+ for (let i = this.elements.length - 1; i > 0; i--) {
1282
+ const j = Math.floor(Math.random() * (i + 1));
1283
+ // Swap elements
1284
+ [this.elements[i], this.elements[j]] = [
1285
+ this.elements[j],
1286
+ this.elements[i],
1287
+ ];
1288
+ // Swap secure buffers if they exist
1289
+ const bufferI = this.secureBuffers.get(i);
1290
+ const bufferJ = this.secureBuffers.get(j);
1291
+ if (bufferI) {
1292
+ this.secureBuffers.set(j, bufferI);
1293
+ }
1294
+ else {
1295
+ this.secureBuffers.delete(j);
1296
+ }
1297
+ if (bufferJ) {
1298
+ this.secureBuffers.set(i, bufferJ);
1299
+ }
1300
+ else {
1301
+ this.secureBuffers.delete(i);
1302
+ }
1303
+ // Swap metadata
1304
+ const metaI = this.metadataManager.get(i);
1305
+ const metaJ = this.metadataManager.get(j);
1306
+ if (metaI && metaJ) {
1307
+ this.metadataManager.update(i, metaJ.type, metaJ.isSecure);
1308
+ this.metadataManager.update(j, metaI.type, metaI.isSecure);
1309
+ }
1310
+ }
1311
+ this.updateLastModified();
1312
+ this.eventManager.emit("shuffle", -1, undefined);
1313
+ return this;
1314
+ }
1315
+ /**
1316
+ * Returns a random sample of elements
1317
+ */
1318
+ sample(count = 1) {
1319
+ this.ensureNotDestroyed();
1320
+ if (count <= 0 || this.elements.length === 0) {
1321
+ return new SecureArray([], { ...this.options });
1322
+ }
1323
+ const sampleCount = Math.min(count, this.elements.length);
1324
+ const indices = new Set();
1325
+ const sampledElements = [];
1326
+ while (indices.size < sampleCount) {
1327
+ const randomIndex = Math.floor(Math.random() * this.elements.length);
1328
+ if (!indices.has(randomIndex)) {
1329
+ indices.add(randomIndex);
1330
+ const value = this.get(randomIndex);
1331
+ if (value !== undefined) {
1332
+ sampledElements.push(value);
1333
+ }
1334
+ }
1335
+ }
1336
+ return new SecureArray(sampledElements, { ...this.options });
1337
+ }
1338
+ // ===== ITERATOR IMPLEMENTATION =====
1339
+ /**
1340
+ * Returns an iterator for the array
1341
+ */
1342
+ *[Symbol.iterator]() {
1343
+ this.ensureNotDestroyed();
1344
+ for (let i = 0; i < this.elements.length; i++) {
1345
+ const value = this.get(i);
1346
+ if (value !== undefined) {
1347
+ yield value;
1348
+ }
1349
+ }
1350
+ }
1351
+ /**
1352
+ * Returns an iterator for array entries [index, value]
1353
+ */
1354
+ *entries() {
1355
+ this.ensureNotDestroyed();
1356
+ for (let i = 0; i < this.elements.length; i++) {
1357
+ const value = this.get(i);
1358
+ if (value !== undefined) {
1359
+ yield [i, value];
1360
+ }
1361
+ }
1362
+ }
1363
+ /**
1364
+ * Returns an iterator for array indices
1365
+ */
1366
+ *keys() {
1367
+ this.ensureNotDestroyed();
1368
+ for (let i = 0; i < this.elements.length; i++) {
1369
+ yield i;
1370
+ }
1371
+ }
1372
+ /**
1373
+ * Returns an iterator for array values
1374
+ */
1375
+ *values() {
1376
+ return this[Symbol.iterator]();
1377
+ }
1378
+ // ===== EVENT MANAGEMENT =====
1379
+ /**
1380
+ * Adds an event listener
1381
+ */
1382
+ on(event, listener) {
1383
+ this.eventManager.on(event, listener);
1384
+ return this;
1385
+ }
1386
+ /**
1387
+ * Removes an event listener
1388
+ */
1389
+ off(event, listener) {
1390
+ this.eventManager.off(event, listener);
1391
+ return this;
1392
+ }
1393
+ /**
1394
+ * Adds a one-time event listener
1395
+ */
1396
+ once(event, listener) {
1397
+ this.eventManager.once(event, listener);
1398
+ return this;
1399
+ }
1400
+ // ===== SERIALIZATION AND EXPORT =====
1401
+ /**
1402
+ * Serializes the SecureArray to a secure format
1403
+ */
1404
+ serialize(options) {
1405
+ this.ensureNotDestroyed();
1406
+ return this.serializationHandler.serialize(this.elements, options);
1407
+ }
1408
+ /**
1409
+ * Exports the SecureArray data in various formats
1410
+ */
1411
+ exportData(format = "json") {
1412
+ this.ensureNotDestroyed();
1413
+ // Get the actual values (not SecureBuffers)
1414
+ const actualElements = [];
1415
+ for (let i = 0; i < this.elements.length; i++) {
1416
+ const value = this.get(i);
1417
+ if (value !== undefined) {
1418
+ actualElements.push(value);
1419
+ }
1420
+ }
1421
+ return this.serializationHandler.exportData(actualElements, format);
1422
+ }
1423
+ /**
1424
+ * Converts to a regular JavaScript array (loses security features)
1425
+ */
1426
+ toArray() {
1427
+ this.ensureNotDestroyed();
1428
+ const regularArray = [];
1429
+ for (let i = 0; i < this.elements.length; i++) {
1430
+ const value = this.get(i);
1431
+ if (value !== undefined) {
1432
+ regularArray.push(value);
1433
+ }
1434
+ }
1435
+ return regularArray;
1436
+ }
1437
+ /**
1438
+ * Converts to a regular JavaScript array (same as toArray method)
1439
+ */
1440
+ get _array() {
1441
+ return this.toArray();
1442
+ }
1443
+ /**
1444
+ * Creates a SecureArray from a regular array
1445
+ */
1446
+ static from(arrayLike, options) {
1447
+ const elements = Array.from(arrayLike);
1448
+ return new SecureArray(elements, options);
1449
+ }
1450
+ /**
1451
+ * Creates a SecureArray with specified length and fill value
1452
+ */
1453
+ static of(...elements) {
1454
+ return new SecureArray(elements);
1455
+ }
1456
+ // ===== ENCRYPTION METHODS =====
1457
+ /**
1458
+ * Gets encryption status from the crypto handler
1459
+ */
1460
+ getEncryptionStatus() {
1461
+ return this.cryptoHandler.getEncryptionStatus();
1462
+ }
1463
+ /**
1464
+ * Sets an encryption key for the array
1465
+ */
1466
+ setEncryptionKey(key) {
1467
+ this.ensureNotDestroyed();
1468
+ this.cryptoHandler.setEncryptionKey(key);
1469
+ }
1470
+ /**
1471
+ * Gets the raw encrypted data without decryption (for verification)
1472
+ */
1473
+ getRawEncryptedData() {
1474
+ this.ensureNotDestroyed();
1475
+ return [...this.elements];
1476
+ }
1477
+ /**
1478
+ * Gets a specific element's raw encrypted form (for verification)
1479
+ */
1480
+ getRawEncryptedElement(index) {
1481
+ this.ensureNotDestroyed();
1482
+ this.validateIndex(index);
1483
+ if (index >= this.elements.length) {
1484
+ return undefined;
1485
+ }
1486
+ return this.elements[index];
1487
+ }
1488
+ /**
1489
+ * Encrypts all elements in the array using AES-256-CTR-HMAC encryption
1490
+ * with proper memory management and atomic operations
1491
+ */
1492
+ encryptAll() {
1493
+ this.ensureNotDestroyed();
1494
+ this.ensureNotReadOnly();
1495
+ this.ensureNotFrozen();
1496
+ // Check if encryption key is set
1497
+ const encryptionStatus = this.cryptoHandler.getEncryptionStatus();
1498
+ if (!encryptionStatus.hasEncryptionKey) {
1499
+ throw new Error("Encryption key must be set before calling encryptAll()");
1500
+ }
1501
+ // Prepare temporary storage for atomic operation
1502
+ const encryptedValues = [];
1503
+ const originalMetadata = new Map();
1504
+ const indicesToProcess = [];
1505
+ try {
1506
+ // First pass: encrypt all values into temporary storage
1507
+ for (let i = 0; i < this.elements.length; i++) {
1508
+ const value = this.elements[i]; // Get raw value, not through get() method
1509
+ if (value !== undefined) {
1510
+ // Skip already encrypted values to avoid double encryption
1511
+ if (typeof value === "string" &&
1512
+ this.cryptoHandler.isEncrypted(value)) {
1513
+ continue;
1514
+ }
1515
+ // Store original metadata for rollback
1516
+ if (this.metadataManager.has(i)) {
1517
+ originalMetadata.set(i, this.metadataManager.get(i));
1518
+ }
1519
+ // Get the actual value to encrypt
1520
+ let valueToEncrypt = value;
1521
+ // If it's a SecureBuffer, convert it back to its original form
1522
+ if (value instanceof secureMemory.SecureBuffer) {
1523
+ const metadata = this.metadataManager.get(i);
1524
+ if (metadata?.type === "string") {
1525
+ valueToEncrypt = new TextDecoder().decode(value.getBuffer());
1526
+ }
1527
+ else if (metadata?.type === "Uint8Array") {
1528
+ valueToEncrypt = new Uint8Array(value.getBuffer());
1529
+ }
1530
+ else {
1531
+ valueToEncrypt = new TextDecoder().decode(value.getBuffer());
1532
+ }
1533
+ }
1534
+ // Encrypt the value
1535
+ const encryptedValue = this.cryptoHandler.encryptValue(valueToEncrypt);
1536
+ encryptedValues[i] = encryptedValue;
1537
+ indicesToProcess.push(i);
1538
+ }
1539
+ }
1540
+ // Second pass: atomically commit all changes
1541
+ for (const i of indicesToProcess) {
1542
+ const encryptedValue = encryptedValues[i];
1543
+ const originalValue = this.elements[i];
1544
+ // Clean up any existing SecureBuffer for this index
1545
+ this.cleanupIndex(i);
1546
+ // Store encrypted value
1547
+ this.elements[i] = encryptedValue;
1548
+ // Update metadata with correct type information
1549
+ // Store original type in the type field using special format
1550
+ const originalType = typeof originalValue;
1551
+ this.metadataManager.update(i, `encrypted:${originalType}`, true);
1552
+ }
1553
+ }
1554
+ catch (error) {
1555
+ // Rollback: restore original state on any failure
1556
+ for (const i of indicesToProcess) {
1557
+ if (originalMetadata.has(i)) {
1558
+ // Restore original metadata
1559
+ const original = originalMetadata.get(i);
1560
+ this.metadataManager.update(i, original.type, original.isSecure);
1561
+ }
1562
+ }
1563
+ throw new Error(`Encryption failed: ${error?.message || "Unknown error"}`);
1564
+ }
1565
+ this.updateLastModified();
1566
+ this.eventManager.emit("encrypt_all", -1, `${indicesToProcess.length}_elements_encrypted`);
1567
+ return this;
1568
+ }
1569
+ }
1570
+
1571
+ exports.SecureArray = SecureArray;
1572
+ //# sourceMappingURL=secure-array-core.js.map