xypriss 9.5.55 → 9.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (61) hide show
  1. package/README.md +10 -2
  2. package/dist/cjs/src/FiUp.js +1 -1
  3. package/dist/cjs/src/index.js +1 -1
  4. package/dist/cjs/src/server/FastServer.js +3 -3
  5. package/dist/cjs/src/server/FastServer.js.map +1 -1
  6. package/dist/cjs/src/server/components/fastapi/upload/FileUploadManager.js +245 -0
  7. package/dist/cjs/src/server/components/fastapi/upload/FileUploadManager.js.map +1 -0
  8. package/dist/cjs/src/server/components/fastapi/upload/file-upload.js +257 -0
  9. package/dist/cjs/src/server/components/fastapi/upload/file-upload.js.map +1 -0
  10. package/dist/cjs/src/server/const/default.js +1 -1
  11. package/dist/cjs/src/server/const/default.js.map +1 -1
  12. package/dist/cjs/src/server/core/ResponseEnhancer.js +15 -0
  13. package/dist/cjs/src/server/core/ResponseEnhancer.js.map +1 -1
  14. package/dist/cjs/src/server/core/XHSCProtocol.js +6 -0
  15. package/dist/cjs/src/server/core/XHSCProtocol.js.map +1 -1
  16. package/dist/cjs/src/server/core/XyModuleManager.js +1 -1
  17. package/dist/cjs/src/server/routing/Router.js +94 -296
  18. package/dist/cjs/src/server/routing/Router.js.map +1 -1
  19. package/dist/cjs/src/server/routing/modules/constants.js +18 -0
  20. package/dist/cjs/src/server/routing/modules/constants.js.map +1 -0
  21. package/dist/cjs/src/server/routing/modules/groups.js +86 -0
  22. package/dist/cjs/src/server/routing/modules/groups.js.map +1 -0
  23. package/dist/cjs/src/server/routing/modules/helpers.js +76 -0
  24. package/dist/cjs/src/server/routing/modules/helpers.js.map +1 -0
  25. package/dist/cjs/src/server/routing/modules/middleware.js +140 -0
  26. package/dist/cjs/src/server/routing/modules/middleware.js.map +1 -0
  27. package/dist/cjs/src/server/routing/modules/path.js +132 -0
  28. package/dist/cjs/src/server/routing/modules/path.js.map +1 -0
  29. package/dist/cjs/src/server/routing/modules/registry.js +187 -0
  30. package/dist/cjs/src/server/routing/modules/registry.js.map +1 -0
  31. package/dist/esm/src/FiUp.js +1 -1
  32. package/dist/esm/src/index.js +1 -1
  33. package/dist/esm/src/server/FastServer.js +3 -3
  34. package/dist/esm/src/server/FastServer.js.map +1 -1
  35. package/dist/esm/src/server/components/fastapi/upload/FileUploadManager.js +224 -0
  36. package/dist/esm/src/server/components/fastapi/upload/FileUploadManager.js.map +1 -0
  37. package/dist/esm/src/server/components/fastapi/upload/file-upload.js +250 -0
  38. package/dist/esm/src/server/components/fastapi/upload/file-upload.js.map +1 -0
  39. package/dist/esm/src/server/const/default.js +1 -1
  40. package/dist/esm/src/server/const/default.js.map +1 -1
  41. package/dist/esm/src/server/core/ResponseEnhancer.js +15 -0
  42. package/dist/esm/src/server/core/ResponseEnhancer.js.map +1 -1
  43. package/dist/esm/src/server/core/XHSCProtocol.js +6 -0
  44. package/dist/esm/src/server/core/XHSCProtocol.js.map +1 -1
  45. package/dist/esm/src/server/core/XyModuleManager.js +1 -1
  46. package/dist/esm/src/server/routing/Router.js +94 -296
  47. package/dist/esm/src/server/routing/Router.js.map +1 -1
  48. package/dist/esm/src/server/routing/modules/constants.js +15 -0
  49. package/dist/esm/src/server/routing/modules/constants.js.map +1 -0
  50. package/dist/esm/src/server/routing/modules/groups.js +84 -0
  51. package/dist/esm/src/server/routing/modules/groups.js.map +1 -0
  52. package/dist/esm/src/server/routing/modules/helpers.js +72 -0
  53. package/dist/esm/src/server/routing/modules/helpers.js.map +1 -0
  54. package/dist/esm/src/server/routing/modules/middleware.js +136 -0
  55. package/dist/esm/src/server/routing/modules/middleware.js.map +1 -0
  56. package/dist/esm/src/server/routing/modules/path.js +126 -0
  57. package/dist/esm/src/server/routing/modules/path.js.map +1 -0
  58. package/dist/esm/src/server/routing/modules/registry.js +184 -0
  59. package/dist/esm/src/server/routing/modules/registry.js.map +1 -0
  60. package/dist/index.d.ts +214 -108
  61. package/package.json +3 -2
package/README.md CHANGED
@@ -53,7 +53,7 @@ This separation allows each layer to operate in its optimal domain: compiled nat
53
53
  - **XHSC Native Engine** — Statically-linked system core with multi-core clustering, IPC bridge, and high-precision hardware telemetry across all supported platforms.
54
54
  - **XEMS Session Security** — AES-256-GCM encrypted in-memory session store powered by a dedicated native Golang sidecar. Provides opaque tokens, per-request atomic rotation, sandboxed namespaces, and optional hardware-bound persistence — with zero external dependencies.
55
55
  - **Security-First Architecture** — 12+ built-in security middleware modules including CSRF protection, XSS prevention, and intelligent rate limiting.
56
- - **Advanced Radix Routing** — Ultra-fast routing system capable of complex path matching with microsecond latency.
56
+ - **Advanced Radix Routing (V2)** — Ultra-fast, modular routing engine with support for typed path parameters, declarative guards, and native API versioning.
57
57
  - **Real-Time System Intelligence** — Native access to CPU, memory, disk, network, battery, and process metrics directly from the application layer.
58
58
  - **Filesystem Engine & Binary Streaming** — High-performance filesystem operations, duplicate detection, and robust **Zero-Copy Ranged Streaming** via `res.sendFile()`, optimized for media delivery and large assets.
59
59
  - **File Upload Management** — Production-ready multipart/form-data handling with automatic validation, error handling, and the `getMimes()` helper for extension-to-mime mapping.
@@ -119,7 +119,14 @@ const app = createServer({
119
119
  });
120
120
 
121
121
  app.get("/", (req, res) => {
122
- res.json({ message: "Hello from XyPriss" });
122
+ res.success("Hello from XyPriss V2");
123
+ });
124
+
125
+ // Typed parameters & Versioning
126
+ app.version("v1", (v1) => {
127
+ v1.get("/user/:id<number>", (req, res) => {
128
+ res.success(`User ${req.params.id} accessed via V1`);
129
+ });
123
130
  });
124
131
 
125
132
  app.start();
@@ -137,6 +144,7 @@ app.start();
137
144
  - [XFPM Guide](https://xypriss.nehonix.com/docs/xfpm) - Using the XyPriss Fast Package Manager
138
145
  - [Examples](https://xypriss.nehonix.com/docs/EXAMPLES) - Practical code examples
139
146
  - [Features Overview](https://xypriss.nehonix.com/docs/FEATURES_OVERVIEW) - Comprehensive feature list
147
+ - [Router Engine V2](./docs/router/README.md) - **NEW** Ultra-Rich modular routing documentation
140
148
 
141
149
  ### Security
142
150
 
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var fileUpload = require('./file-upload.js');
3
+ var fileUpload = require('./server/components/fastapi/upload/file-upload.js');
4
4
 
5
5
  // Legacy function exports for backward compatibility
6
6
  // These will be deprecated in favor of the class-based API
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var fileUpload = require('./file-upload.js');
3
+ var fileUpload = require('./server/components/fastapi/upload/file-upload.js');
4
4
  var Router$1 = require('./server/routing/Router.js');
5
5
  var ConfigLoader = require('./server/utils/ConfigLoader.js');
6
6
  var sys = require('./sys.js');
@@ -22,7 +22,7 @@ var config = require('../config.js');
22
22
  var safeJsonMiddleware = require('../middleware/safe-json-middleware.js');
23
23
  var XJsonResponseHandler = require('../middleware/XJsonResponseHandler.js');
24
24
  var CacheManager = require('./components/fastapi/CacheManager.js');
25
- var FileUploadManager = require('./components/fastapi/FileUploadManager.js');
25
+ var FileUploadManager = require('./components/fastapi/upload/FileUploadManager.js');
26
26
  var FileWatcherManager = require('./components/fastapi/FileWatcherManager.js');
27
27
  var PerformanceManager = require('./components/fastapi/PerformanceManager.js');
28
28
  var WorkerPoolComponent = require('./components/fastapi/WorkerPoolComponent.js');
@@ -289,7 +289,7 @@ class XyPrissServer {
289
289
  this.logger.debug("server", `FileUploadManager initialized, enabled: ${this.fileUploadManager.isEnabled()}`);
290
290
  // Initialize the global file upload API
291
291
  if (this.fileUploadManager.isEnabled()) {
292
- const { initializeFileUpload } = await Promise.resolve().then(function () { return require('../file-upload.js'); });
292
+ const { initializeFileUpload } = await Promise.resolve().then(function () { return require('./components/fastapi/upload/file-upload.js'); });
293
293
  const { Configs } = await Promise.resolve().then(function () { return require('../config.js'); });
294
294
  initializeFileUpload(Configs, this.logger);
295
295
  this.logger.debug("server", "Global file upload API initialized");
@@ -391,7 +391,7 @@ class XyPrissServer {
391
391
  // Auto-initialize Upload API if fileUpload is enabled
392
392
  if (config.CM.get("fileUpload")?.enabled) {
393
393
  try {
394
- const { Upload } = await Promise.resolve().then(function () { return require('../file-upload.js'); });
394
+ const { Upload } = await Promise.resolve().then(function () { return require('./components/fastapi/upload/file-upload.js'); });
395
395
  await Upload.initialize(config.CM);
396
396
  this.logger.debug("server", "Upload API auto-initialized");
397
397
  }
@@ -1 +1 @@
1
- {"version":3,"file":"FastServer.js","sources":["../../../../src/server/FastServer.ts"],"sourcesContent":[null],"names":["Configs","initializeLogger","ConsoleInterceptor","XyprissApp","XyRequestManager","CacheManager","PerformanceManager","PluginManager","FileWatcherManager","WorkerPoolComponent","SecurityMiddleware","xemsSession","DEFAULT_OPTIONS","FileUploadManager","createSafeJsonMiddleware","XJsonResponseHandler","createResponseManipulationMiddleware","ServerPluginManager","ConnectionPlugin","netConfig","ProxyPlugin","proxyConfig","Port","SecureInMemoryCache"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;AAIG;AA+CH;;AAEG;MACU,aAAa,CAAA;AA0BtB,IAAA,WAAA,GAAA;;;QAtBQ,IAAA,CAAA,KAAK,GAAG,KAAK;AACb,QAAA,IAAA,CAAA,WAAW,GAAkB,OAAO,CAAC,OAAO,EAAE;;;AA2BlD,QAAA,IAAI,CAAC,OAAO,GAAGA,SAAO,CAAC,MAAM,EAAE;;QAG/B,IAAI,CAAC,MAAM,GAAGC,uBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;QAEpD,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,4BAA4B,CAAC;;;QAI3D,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,mBAAmB,EAAE,OAAO,EAAE;AACpD,YAAA,IAAI,CAAC,kBAAkB,GAAG,IAAIC,qCAAkB,CAC5C,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,OAAO,CAAC,OAAO,CACvB;AACD,YAAA,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE;YAC/B,IAAI,CAAC,MAAM,CAAC,KAAK,CACb,QAAQ,EACR,2CAA2C,CAC9C;QACL;;AAGA,QAAA,IAAI,CAAC,GAAG,GAAG,IAAIC,qBAAU,CACrB,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,OAAO,CACY;;QAG3B,IAAI,CAAC,GAAW,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM;AACrC,QAAA,IAAI,CAAC,GAAW,CAAC,MAAM,GAAG,IAAI;;QAG/B,IAAI,CAAC,+BAA+B,EAAE;;QAGtC,IAAI,CAAC,0BAA0B,EAAE;;AAGjC,QAAA,IAAI,CAAC,cAAc,GAAG,IAAIC,iCAAgB,CACtC,IAAI,CAAC,GAAU,EACf,IAAI,CAAC,OAAO,CAAC,iBAAiB,CACjC;;QAGD,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,aAAa,KAAK,KAAK,EAAE;YAC9C,IAAI,CAAC,wBAAwB,EAAE;QACnC;;QAGA,IAAI,CAAC,iCAAiC,EAAE;;QAGxC,IAAI,CAAC,qBAAqB,EAAE;;QAG5B,IAAI,CAAC,kBAAkB,EAAE;;QAGzB,IAAI,CAAC,mBAAmB,EAAE;;QAG1B,IAAI,CAAC,qBAAqB,EAAE;;AAG5B,QAAA,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,yBAAyB,EAAE;QAEnD,IAAI,CAAC,MAAM,CAAC,KAAK,CACb,QAAQ,EACR,0DAA0D,CAC7D;IACL;AAEA;;AAEG;IACK,+BAA+B,GAAA;;;QAInC,IAAI,CAAC,GAAG,CAAC,YAAY,GAAG,CAAC,SAAiB,KAAI;;YAE1C,OAAO,OAAO,GAAQ,EAAE,GAAQ,EAAE,IAAS,KAAI;;gBAE3C,IACI,IAAI,CAAC,iBAAiB;AACtB,oBAAA,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE,EACpC;AACE,oBAAA,OAAO,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,SAAS,CAAC,CAC3C,GAAG,EACH,GAAG,EACH,IAAI,CACP;gBACL;;gBAEA,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,EAAE;;oBAElC,MAAM,IAAI,CAAC,WAAW;AACtB,oBAAA,IAAI,IAAI,CAAC,iBAAiB,EAAE,SAAS,EAAE,EAAE;AACrC,wBAAA,OAAO,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,SAAS,CAAC,CAC3C,GAAG,EACH,GAAG,EACH,IAAI,CACP;oBACL;gBACJ;;AAEA,gBAAA,IAAI,CACA,IAAI,KAAK,CACL,4EAA4E,CAC/E,CACJ;AACL,YAAA,CAAC;AACL,QAAA,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,WAAW,GAAG,CAAC,SAAiB,EAAE,QAAiB,KAAI;YAC5D,OAAO,OAAO,GAAQ,EAAE,GAAQ,EAAE,IAAS,KAAI;gBAC3C,IACI,IAAI,CAAC,iBAAiB;AACtB,oBAAA,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE,EACpC;AACE,oBAAA,OAAO,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,SAAS,EAAE,QAAQ,CAAC,CACpD,GAAG,EACH,GAAG,EACH,IAAI,CACP;gBACL;gBACA,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,EAAE;oBAClC,MAAM,IAAI,CAAC,WAAW;AACtB,oBAAA,IAAI,IAAI,CAAC,iBAAiB,EAAE,SAAS,EAAE,EAAE;AACrC,wBAAA,OAAO,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAC/B,SAAS,EACT,QAAQ,CACX,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC;oBACrB;gBACJ;AACA,gBAAA,IAAI,CACA,IAAI,KAAK,CACL,4EAA4E,CAC/E,CACJ;AACL,YAAA,CAAC;AACL,QAAA,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,YAAY,GAAG,CAAC,MAAa,KAAI;YACtC,OAAO,OAAO,GAAQ,EAAE,GAAQ,EAAE,IAAS,KAAI;gBAC3C,IACI,IAAI,CAAC,iBAAiB;AACtB,oBAAA,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE,EACpC;AACE,oBAAA,OAAO,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,MAAM,CAAC,CACxC,GAAG,EACH,GAAG,EACH,IAAI,CACP;gBACL;gBACA,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,EAAE;oBAClC,MAAM,IAAI,CAAC,WAAW;AACtB,oBAAA,IAAI,IAAI,CAAC,iBAAiB,EAAE,SAAS,EAAE,EAAE;AACrC,wBAAA,OAAO,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,MAAM,CAAC,CACxC,GAAG,EACH,GAAG,EACH,IAAI,CACP;oBACL;gBACJ;AACA,gBAAA,IAAI,CACA,IAAI,KAAK,CACL,4EAA4E,CAC/E,CACJ;AACL,YAAA,CAAC;AACL,QAAA,CAAC;AAED,QAAA,IAAI,CAAC,GAAG,CAAC,SAAS,GAAG,MAAK;YACtB,OAAO,OAAO,GAAQ,EAAE,GAAQ,EAAE,IAAS,KAAI;gBAC3C,IACI,IAAI,CAAC,iBAAiB;AACtB,oBAAA,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE,EACpC;AACE,oBAAA,OAAO,IAAI,CAAC,iBAAiB,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC;gBACvD;gBACA,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,EAAE;oBAClC,MAAM,IAAI,CAAC,WAAW;AACtB,oBAAA,IAAI,IAAI,CAAC,iBAAiB,EAAE,SAAS,EAAE,EAAE;AACrC,wBAAA,OAAO,IAAI,CAAC,iBAAiB,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC;oBACvD;gBACJ;AACA,gBAAA,IAAI,CACA,IAAI,KAAK,CACL,4EAA4E,CAC/E,CACJ;AACL,YAAA,CAAC;AACL,QAAA,CAAC;QAEA,IAAI,CAAC,GAAW,CAAC,MAAM,GAAG,IAAI,CAAC;IACpC;AAEA;;AAEG;IACK,0BAA0B,GAAA;QAC9B,IAAI,CAAC,gBAAgB,GAAI,IAAI,CAAC,GAAW,CAAC,gBAAgB;AAE1D,QAAA,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE;YACxB,IAAI,CAAC,MAAM,CAAC,KAAK,CACb,QAAQ,EACR,qDAAqD,CACxD;AACD,YAAA,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC;QAC9D;IACJ;AAEQ,IAAA,MAAM,yBAAyB,GAAA;QACnC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,4BAA4B,CAAC;;QAEzD,MAAM,OAAO,CAAC,GAAG,CAAC;YACd,IAAI,CAAC,eAAe,EAAE;YACtB,IAAI,CAAC,qBAAqB,EAAE;YAC5B,IAAI,CAAC,iBAAiB,EAAE;YACxB,IAAI,CAAC,iBAAiB,EAAE;YACxB,IAAI,CAAC,qBAAqB,EAAE;YAC5B,IAAI,CAAC,oBAAoB,EAAE;YAC3B,IAAI,CAAC,kBAAkB,EAAE;AAC5B,SAAA,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,wBAAwB,CAAC;;AAGrD,QAAA,MAAM,IAAI,CAAC,6BAA6B,EAAE;QAC1C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,kCAAkC,CAAC;;AAG/D,QAAA,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE;AAC9B,QAAA,IAAI,CAAC,iBAAiB,CAAC,sBAAsB,EAAE;QAC/C,IAAI,CAAC,6BAA6B,EAAE;QACpC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,uCAAuC,CAAC;;;;AAMpE,QAAA,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE;AACjC,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI;QACjB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,cAAc,CAAC;IAC/C;AAEQ,IAAA,MAAM,eAAe,GAAA;AACzB,QAAA,IAAI,CAAC,YAAY,GAAG,IAAIC,yBAAY,CAAC;AACjC,YAAA,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK;AACzB,YAAA,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW;AACrC,YAAA,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM;AAC3B,YAAA,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG;AACxB,SAAA,CAAC;QAEF,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE;AAC7C,QAAA,MAAM,IAAI,CAAC,YAAY,CAAC,eAAe,EAAE;IAC7C;AAEQ,IAAA,MAAM,qBAAqB,GAAA;AAC/B,QAAA,IAAI,CAAC,kBAAkB,GAAG,IAAIC,qCAAkB,CAC5C;AACI,YAAA,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW;AACrC,YAAA,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM;AAC3B,YAAA,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG;SACxB,EACD;YACI,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,YAAY,EAAE,IAAI,CAAC,YAAY;AAClC,SAAA,CACJ;IACL;AAEQ,IAAA,MAAM,iBAAiB,GAAA;AAC3B,QAAA,IAAI,CAAC,aAAa,GAAG,IAAIC,2BAAa,CAAC;YACnC,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,OAAO,EAAE,IAAI,CAAC,OAAO;AACxB,SAAA,CAAC;;AAGF,QAAA,MAAM,IAAI,CAAC,aAAa,CAAC,wBAAwB,EAAE;;QAGlD,IAAI,CAAC,GAAW,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa;IACxD;AAEQ,IAAA,MAAM,iBAAiB,GAAA;;IAE/B;AAEQ,IAAA,MAAM,qBAAqB,GAAA;AAC/B,QAAA,IAAI,CAAC,kBAAkB,GAAG,IAAIC,qCAAkB,CAC5C;AACI,YAAA,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW;SACxC,EACD;YACI,GAAG,EAAE,IAAI,CAAC,GAAG;;AAEhB,SAAA,CACJ;IACL;AAEQ,IAAA,MAAM,oBAAoB,GAAA;;QAE9B,MAAM,QAAQ,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB;QAEhD,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,EAAE;AAClC,YAAA,IAAI,CAAC,mBAAmB,GAAG,IAAIC,uCAAmB,CAC9C;AACI,gBAAA,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU;aACtC,EACD;gBACI,GAAG,EAAE,IAAI,CAAC,GAAG;gBACb,aAAa,EAAE,IAAI,CAAC,OAAO;AAC9B,aAAA,CACJ;AACD,YAAA,IAAI,QAAQ,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,KAAK,KAAK,EAAE;gBACjD,IAAI,CAAC,MAAM,CAAC,IAAI,CACZ,QAAQ,EACR,2CAA2C,CAC9C;YACL;QACJ;IACJ;AAEQ,IAAA,MAAM,kBAAkB,GAAA;;QAE5B,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,EAAE;YAChC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,qCAAqC,CAAC;YAElE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,qCAAqC,CAAC;;;AAIlE,YAAA,IAAI,CAAC,kBAAkB,GAAG,IAAIC,qCAAkB,CAC5C,IAAI,CAAC,OAAO,CAAC,QAAQ,EACrB,IAAI,CAAC,MAAM,CACd;;;AAID,YAAA,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,kBAAkB,CAAC,aAAa,EAAE,CAAC;YACrD,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE;AACnC,gBAAA,IAAI,CAAC,GAAG,CAAC,GAAG,CACRC,iCAAW,CACP,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI;AACrB,oBAAAC,wBAAe,EAAE,MAAM,EAAE,IAAK,CACrC,CACJ;YACL;YAEA,IAAI,CAAC,MAAM,CAAC,KAAK,CACb,QAAQ,EACR,8CAA8C,CACjD;AACD,YAAA,IAAI,CAAC,MAAM,CAAC,KAAK,CACb,QAAQ,EACR,CAAA,gBAAA,EAAmB,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,IAAI,UAAU,CAAA,CAAE,CACjE;QACL;aAAO;YACH,IAAI,CAAC,MAAM,CAAC,KAAK,CACb,QAAQ,EACR,gDAAgD,CACnD;QACL;IACJ;AAEQ,IAAA,MAAM,6BAA6B,GAAA;;QAEvC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,mCAAmC,CAAC;AAChE,QAAA,IAAI,CAAC,iBAAiB,GAAG,IAAIC,mCAAiB,CAC1C,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,OAAO,CAAC,UAAU,CAC1B;AAED,QAAA,IAAI;AACA,YAAA,MAAM,IAAI,CAAC,iBAAiB,CAAC,UAAU,EAAE;AACzC,YAAA,IAAI,CAAC,MAAM,CAAC,KAAK,CACb,QAAQ,EACR,CAAA,wCAAA,EAA2C,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE,CAAA,CAAE,CAClF;;AAGD,YAAA,IAAI,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE,EAAE;gBACpC,MAAM,EAAE,oBAAoB,EAAE,GAAG,MAAM,oDAAO,mBAAgB,KAAC;gBAC/D,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,oDAAO,cAAW,KAAC;AAC7C,gBAAA,oBAAoB,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC;gBAC1C,IAAI,CAAC,MAAM,CAAC,KAAK,CACb,QAAQ,EACR,oCAAoC,CACvC;YACL;iBAAO;gBACH,IAAI,CAAC,MAAM,CAAC,KAAK,CACb,QAAQ,EACR,yDAAyD,CAC5D;YACL;QACJ;QAAE,OAAO,KAAU,EAAE;AACjB,YAAA,IAAI,CAAC,MAAM,CAAC,KAAK,CACb,QAAQ,EACR,yCAAyC,EACzC,KAAK,CAAC,OAAO,CAChB;AACD,YAAA,MAAM,KAAK;QACf;;AAGA,QAAA,IAAI,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE,EAAE;YACpC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,mCAAmC,CAAC;YAC/D,IAAI,CAAC,GAAW,CAAC,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE;AAC7D,YAAA,IAAI,CAAC,GAAG,CAAC,YAAY,GAAG,CAAC,SAAiB,KACtC,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,SAAS,CAAC;YAC5C,IAAI,CAAC,GAAG,CAAC,WAAW,GAAG,CAAC,SAAiB,EAAE,QAAiB,KACxD,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,SAAS,EAAE,QAAQ,CAAC;AACrD,YAAA,IAAI,CAAC,GAAG,CAAC,YAAY,GAAG,CAAC,MAAa,KAClC,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,MAAM,CAAC;AACzC,YAAA,IAAI,CAAC,GAAG,CAAC,SAAS,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,GAAG,EAAE;YACvD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,kCAAkC,CAAC;QACnE;aAAO;YACH,IAAI,CAAC,MAAM,CAAC,KAAK,CACb,QAAQ,EACR,mDAAmD,CACtD;QACL;AAEA,QAAA,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC;YAClC,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;YAC3C,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;YAC3C,mBAAmB,EAAE,IAAI,CAAC,mBAAmB;YAC7C,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;AAC5C,SAAA,CAAC;;AAGF,QAAA,MAAM,IAAI,CAAC,gBAAgB,CAAC,6BAA6B,EAAE;;QAG3D,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,YAAa;AAEpE,QAAA,IAAI,CAAC,iBAAiB;AAClB,YAAA,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,iBAAkB;AAEzD,QAAA,IAAI,CAAC,kBAAkB;AACnB,YAAA,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,kBAAmB;;QAG1D,IAAI,IAAI,CAAC,kBAAkB,IAAI,IAAI,CAAC,aAAa,EAAE;AAC/C,YAAA,IAAI,CAAC,kBAAkB,CAAC,eAAe,CACnC,IAAI,CAAC,aAAa,CAAC,eAAe,EAAE,CACvC;QACL;;;;;;AAQA,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,GAAU;QAC9B,IACI,MAAM,CAAC,2BAA2B;YAClC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,2BAA2B,CAAC,EACnD;AACE,YAAA,MAAM,CAAC,2BAA2B,CAAC,OAAO,CAAC,MAAK;AAShD,YAAA,CAAC,CAAC;AACF,YAAA,MAAM,CAAC,2BAA2B,GAAG,EAAE;QAC3C;;QAGA,IAAI,CAAC,2BAA2B,EAAE;;QAGlC,IAAI,CAAC,uBAAuB,EAAE;;AAG9B,QAAA,MAAM,IAAI,CAAC,wBAAwB,EAAE;QAErC,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,OAAO,EAAE;AACnC,YAAA,IAAI,CAAC,kBAAkB,CAAC,iCAAiC,CACrD,UAAU,CACb;QACL;IACJ;AAEA;;AAEG;IACI,MAAM,GAAA;QACT,OAAO,IAAI,CAAC,GAAG;IACnB;AAEA;;AAEG;IACI,qBAAqB,GAAA;QACxB,OAAO,IAAI,CAAC,kBAAkB;IAClC;AAEA;;AAEG;IACI,sBAAsB,GAAA;QACzB,OAAO,IAAI,CAAC,mBAAmB;IACnC;AAEA;;;AAGG;AACI,IAAA,MAAM,YAAY,GAAA;;QAErB,MAAM,IAAI,CAAC,WAAW;;QAGtB,IACI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,mBAAmB,EAAE,OAAO;YAClD,IAAI,CAAC,kBAAkB,EACzB;;AAEE,YAAA,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,KAAK,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QAC3D;;QAGA,IAAIb,SAAO,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE;AACpC,YAAA,IAAI;gBACA,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,oDAAO,mBAAgB,KAAC;AACjD,gBAAA,MAAM,MAAM,CAAC,UAAU,CAACA,SAAO,CAAC;gBAChC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,6BAA6B,CAAC;YAC9D;YAAE,OAAO,KAAU,EAAE;AACjB,gBAAA,IAAI,CAAC,MAAM,CAAC,KAAK,CACb,QAAQ,EACR,uCAAuC,EACvC,KAAK,CAAC,OAAO,CAChB;YACL;QACJ;;AAGA,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI;QAEjB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,sCAAsC,CAAC;IACvE;AAEA;;AAEG;IACI,qBAAqB,GAAA;AACxB,QAAA,OAAO,IAAI,CAAC,kBAAkB,CAAC,qBAAqB,EAAE;IAC1D;AAEA;;AAEG;IACI,qBAAqB,GAAA;QACxB,OAAO,IAAI,CAAC,kBAAkB;IAClC;AAEA;;AAEG;IACK,wBAAwB,GAAA;;AAE5B,QAAA,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,IAAa,EAAE,IAAc,EAAE,IAAkB,KAAI;;;AAG/D,YAAA,IAAI,EAAE;AACV,QAAA,CAAC,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,KAAK,CACb,YAAY,EACZ,yFAAyF,CAC5F;IACL;AAEA;;AAEG;IACK,qBAAqB,GAAA;AACzB,QAAA,MAAM,eAAe,GAAG;AACpB,YAAA,OAAO,EAAE,IAAI;AACb,YAAA,QAAQ,EAAE,EAAE;AACZ,YAAA,eAAe,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,KAAK,aAAa;AACnD,YAAA,eAAe,EAAE,IAAI;SACxB;QAED,IAAI,CAAC,GAAG,CAAC,GAAG,CAACc,2CAAwB,CAAC,eAAe,CAAC,CAAC;QAEvD,IAAI,CAAC,MAAM,CAAC,KAAK,CACb,YAAY,EACZ,4DAA4D,CAC/D;IACL;AAEA;;AAEG;IACK,kBAAkB,GAAA;;QAEtB,IAAI,CAAC,GAAG,CAAC,GAAG,CACRC,yCAAoB,CAAC,gBAAgB,CAAC;AAClC,YAAA,QAAQ,EAAE,EAAE;AACZ,YAAA,eAAe,EAAE,KAAK;AACtB,YAAA,eAAe,EAAE,IAAI;AACrB,YAAA,SAAS,EAAE,IAAI,GAAG,EAAE;AACvB,SAAA,CAAC,CACL;QAED,IAAI,CAAC,MAAM,CAAC,KAAK,CACb,YAAY,EACZ,gDAAgD,CACnD;IACL;AAEA;;AAEG;IACK,iCAAiC,GAAA;QACrC,IAAI,IAAI,CAAC,OAAO,CAAC,oBAAoB,EAAE,OAAO,EAAE;YAC5C,IAAI,CAAC,MAAM,CAAC,KAAK,CACb,QAAQ,EACR,yCAAyC,CAC5C;AACD,YAAA,IAAI,CAAC,GAAG,CAAC,GAAG,CACRC,mEAAoC,CAChC,IAAI,CAAC,OAAO,CAAC,oBAAoB,CACpC,CACJ;QACL;IACJ;AAEA;;AAEG;IACK,mBAAmB,GAAA;QACvB,MAAM,gBAAgB,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,UAAU;AAExD,QAAA,IAAI,gBAAgB,KAAK,SAAS,EAAE;AAC/B,YAAA,IAAI,CAAC,GAAW,CAAC,aAAa,CAAC,gBAAgB,CAAC;YACjD,IAAI,CAAC,MAAM,CAAC,KAAK,CACb,QAAQ,EACR,CAAA,wBAAA,EACI,OAAO,gBAAgB,KAAK;AACxB,kBAAE;kBACA,IAAI,CAAC,SAAS,CAAC,gBAAgB,CACzC,CAAA,CAAE,CACL;QACL;aAAO;;AAEF,YAAA,IAAI,CAAC,GAAW,CAAC,aAAa,CAAC,KAAK,CAAC;YACtC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,oCAAoC,CAAC;QACrE;IACJ;AAEA;;AAEG;IACK,2BAA2B,GAAA;AAC/B,QAAA,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE;IACpC;AAEA;;AAEG;IACK,uBAAuB,GAAA;AAC3B,QAAA,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO;YAAE;AAE3B,QAAA,IAAI,CAAC,mBAAmB,GAAG,IAAIC,2BAAmB,CAC9C,IAAI,CAAC,OAAO,CAAC,OAAO,CACvB;AACD,QAAA,IAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC;;QAGzD,IAAI,CAAC,GAAW,CAAC,mBAAmB,GAAG,IAAI,CAAC,mBAAmB;QAC/D,IAAI,CAAC,GAAW,CAAC,sBAAsB,GAAG,MACvC,IAAI,CAAC,mBAAmB;;QAG5B,IAAI,CAAC,mBAAmB,CAAC,EAAE,CAAC,iBAAiB,EAAE,CAAC,IAAI,KAAI;AACpD,YAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,CAAA,iBAAA,EAAoB,IAAI,CAAC,QAAQ,CAAA,CAAE,CAAC;AACpE,QAAA,CAAC,CAAC;QAEF,IAAI,CAAC,mBAAmB,CAAC,EAAE,CAAC,mBAAmB,EAAE,CAAC,KAAK,KAAI;AACvD,YAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,CAAA,mBAAA,EAAsB,KAAK,CAAC,OAAO,CAAA,CAAE,CAAC;AACtE,QAAA,CAAC,CAAC;QAEF,IAAI,CAAC,mBAAmB,CAAC,EAAE,CAAC,gBAAgB,EAAE,CAAC,KAAK,KAAI;AACpD,YAAA,IAAI,CAAC,MAAM,CAAC,KAAK,CACb,SAAS,EACT,CAAA,yBAAA,EAA4B,KAAK,CAAC,OAAO,CAAA,CAAE,CAC9C;AACL,QAAA,CAAC,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,4BAA4B,CAAC;IAC5D;AAEA;;AAEG;AACK,IAAA,MAAM,wBAAwB,GAAA;AAClC,QAAA,IAAI;YACA,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE;;YAGhD,IAAI,aAAa,CAAC,UAAU,EAAE,OAAO,KAAK,KAAK,EAAE;AAC7C,gBAAA,MAAM,IAAI,CAAC,cAAc,CACrB,IAAIC,iCAAgB,CAACC,+BAAS,CAAC,aAAa,CAAC,CAAC,CACjD;gBACD,IAAI,CAAC,MAAM,CAAC,KAAK,CACb,QAAQ,EACR,uDAAuD,CAC1D;YACL;;;;;AAOA,YAAA,IACI,aAAa,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI;AACrC,gBAAA,aAAa,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,EACxC;AACE,gBAAA,MAAM,IAAI,CAAC,cAAc,CACrB,IAAIC,uBAAW,CAACC,uBAAW,CAAC,aAAa,CAAC,CAAC,CAC9C;gBACD,IAAI,CAAC,MAAM,CAAC,KAAK,CACb,QAAQ,EACR,kDAAkD,CACrD;YACL;iBAAO,IAAI,aAAa,CAAC,KAAK,EAAE,OAAO,KAAK,KAAK,EAAE;;AAE/C,gBAAA,MAAM,IAAI,CAAC,cAAc,CACrB,IAAID,uBAAW,CAAC;AACZ,oBAAA,OAAO,EAAE,KAAK;AACd,oBAAA,SAAS,EAAE,EAAE;AACb,oBAAA,aAAa,EAAE,aAAa;AAC/B,iBAAA,CAAC,CACL;gBACD,IAAI,CAAC,MAAM,CAAC,KAAK,CACb,QAAQ,EACR,4CAA4C,CAC/C;YACL;YAEA,IAAI,CAAC,MAAM,CAAC,IAAI,CACZ,QAAQ,EACR,kEAAkE,CACrE;QACL;QAAE,OAAO,KAAU,EAAE;AACjB,YAAA,IAAI,CAAC,MAAM,CAAC,KAAK,CACb,QAAQ,EACR,uCAAuC,EACvC,KAAK,CAAC,OAAO,CAChB;QACL;IACJ;;AAIA;;AAEG;AACI,IAAA,MAAM,eAAe,GAAA;AACxB,QAAA,MAAM,IAAI,CAAC,kBAAkB,CAAC,eAAe,EAAE;IACnD;AAEA;;AAEG;IACI,oBAAoB,GAAA;AACvB,QAAA,OAAO,IAAI,CAAC,kBAAkB,CAAC,oBAAoB,EAAE;IACzD;AAEA;;AAEG;IACI,mBAAmB,GAAA;AACtB,QAAA,OAAO,IAAI,CAAC,kBAAkB,CAAC,mBAAmB,EAAE;IACxD;;AAIA;;AAEG;IACI,MAAM,cAAc,CAAC,MAAW,EAAA;QACnC,MAAM,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,MAAM,CAAC;IACnD;AAEA;;AAEG;IACI,MAAM,gBAAgB,CAAC,QAAgB,EAAA;QAC1C,MAAM,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,QAAQ,CAAC;IACvD;AAEA;;AAEG;AACI,IAAA,SAAS,CAAC,QAAgB,EAAA;QAC7B,OAAO,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,QAAQ,CAAC;IACjD;AAEA;;AAEG;IACI,aAAa,GAAA;AAChB,QAAA,OAAO,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE;IAC7C;AAEA;;AAEG;AACI,IAAA,gBAAgB,CAAC,IAAgB,EAAA;QACpC,OAAO,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,IAAI,CAAC;IACpD;AAEA;;AAEG;AACI,IAAA,cAAc,CAAC,QAAiB,EAAA;QACnC,OAAO,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,QAAQ,CAAC;IACtD;AAEA;;AAEG;IACI,sBAAsB,GAAA;AACzB,QAAA,OAAO,IAAI,CAAC,aAAa,CAAC,sBAAsB,EAAE;IACtD;AAEA;;AAEG;IACI,oBAAoB,GAAA;AACvB,QAAA,OAAO,IAAI,CAAC,aAAa,CAAC,oBAAoB,EAAE;IACpD;AAEA;;AAEG;AACI,IAAA,MAAM,cAAc,GAAA;QACvB,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE;AAC1D,QAAA,MAAM,mBAAmB,GAAG,IAAI,CAAC,sBAAsB,EAAE;AACzD,QAAA,MAAM,iBAAiB,GAAG,IAAI,CAAC,oBAAoB,EAAE;QAErD,OAAO;AACH,YAAA,MAAM,EAAE;gBACJ,KAAK,EAAE,IAAI,CAAC,KAAK;AACjB,gBAAA,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE;AACxB,gBAAA,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE;AAClC,gBAAA,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE;AAC/B,aAAA;AACD,YAAA,KAAK,EAAE,UAAU;AACjB,YAAA,OAAO,EAAE;AACL,gBAAA,QAAQ,EAAE,mBAAmB;AAC7B,gBAAA,MAAM,EAAE,iBAAiB;gBACzB,YAAY,EAAE,mBAAmB,CAAC,YAAY;gBAC9C,oBAAoB,EAAE,mBAAmB,CAAC,oBAAoB;AACjE,aAAA;AACD,YAAA,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE;AAC5D,YAAA,WAAW,EAAE,IAAI,CAAC,mBAAmB,EAAE;SAC1C;IACL;;AAIA;;AAEG;IACK,6BAA6B,GAAA;;AAEjC,QAAA,IAAI,CAAC,GAAG,CAAC,qBAAqB,GAAG,MAAK;YAClC,OAAO,IAAI,CAAC,kBAAkB;AAClC,QAAA,CAAC;;AAGD,QAAA,IAAI,CAAC,GAAG,CAAC,yBAAyB,GAAG,MAAK;AACtC,YAAA,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE;AACnC,QAAA,CAAC;;AAGD,QAAA,IAAI,CAAC,GAAG,CAAC,0BAA0B,GAAG,MAAK;AACvC,YAAA,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE;AAClC,QAAA,CAAC;;AAGD,QAAA,IAAI,CAAC,GAAG,CAAC,eAAe,GAAG,MAAK;AAC5B,YAAA,OAAO,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE;AAC7C,QAAA,CAAC;;AAGD,QAAA,IAAI,CAAC,GAAG,CAAC,iBAAiB,GAAG,MAAK;AAC9B,YAAA,IAAI,CAAC,kBAAkB,CAAC,UAAU,EAAE;AACxC,QAAA,CAAC;;AAGD,QAAA,IAAI,CAAC,GAAG,CAAC,oBAAoB,GAAG,MAAK;AACjC,YAAA,OAAO,IAAI,CAAC,oBAAoB,EAAE;AACtC,QAAA,CAAC;AAED,QAAA,IAAI,CAAC,GAAG,CAAC,mBAAmB,GAAG,MAAK;AAChC,YAAA,OAAO,IAAI,CAAC,mBAAmB,EAAE;AACrC,QAAA,CAAC;AAED,QAAA,IAAI,CAAC,GAAG,CAAC,eAAe,GAAG,YAAW;AAClC,YAAA,OAAO,MAAM,IAAI,CAAC,eAAe,EAAE;AACvC,QAAA,CAAC;;QAGD,IAAI,CAAC,GAAG,CAAC,eAAe,GAAG,OAAO,KAAgB,KAAI;YAClD,OAAO,MAAM,IAAI,CAAC,kBAAkB,CAAC,eAAe,CAAC,KAAK,CAAC;AAC/D,QAAA,CAAC;AAED,QAAA,IAAI,CAAC,GAAG,CAAC,mBAAmB,GAAG,MAAK;AAChC,YAAA,OAAO,IAAI,CAAC,kBAAkB,CAAC,mBAAmB,EAAE;AACxD,QAAA,CAAC;AAED,QAAA,IAAI,CAAC,GAAG,CAAC,wBAAwB,GAAG,MAAK;AACrC,YAAA,IAAI,CAAC,kBAAkB,CAAC,wBAAwB,EAAE;AACtD,QAAA,CAAC;AAED,QAAA,IAAI,CAAC,GAAG,CAAC,yBAAyB,GAAG,MAAK;AACtC,YAAA,IAAI,CAAC,kBAAkB,CAAC,yBAAyB,EAAE;AACvD,QAAA,CAAC;;AAGD,QAAA,IAAI,CAAC,GAAG,CAAC,qBAAqB,GAAG,MAAK;YAClC,OAAO,IAAI,CAAC,kBAAkB;AAClC,QAAA,CAAC;;QAGD,IAAI,CAAC,GAAG,CAAC,uBAAuB,GAAG,CAAC,GAAY,KAAI;AAChD,YAAA,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,GAAG,CAAC;AACjD,QAAA,CAAC;AAED,QAAA,IAAI,CAAC,GAAG,CAAC,wBAAwB,GAAG,MAAK;AACrC,YAAA,IAAI,CAAC,kBAAkB,CAAC,iBAAiB,EAAE;AAC/C,QAAA,CAAC;;QAGD,IAAI,CAAC,GAAG,CAAC,OAAO,GAAG,CAAC,GAAW,KAAI;AAC/B,YAAA,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,GAAG,CAAC;AACxC,QAAA,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,uBAAuB,GAAG,CAAC,GAAW,KAAI;AAC/C,YAAA,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,GAAG,CAAC;AACjD,QAAA,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,+BAA+B,GAAG,CACvC,WAA8C,EAC9C,oBAA8B,KAC9B;YACA,IAAI,CAAC,kBAAkB,CAAC,wBAAwB,CAC5C,WAAW,EACX,oBAAoB,CACvB;AACL,QAAA,CAAC;AAED,QAAA,IAAI,CAAC,GAAG,CAAC,gBAAgB,GAAG,MAAK;AAC7B,YAAA,OAAO,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,EAAE;AACrD,QAAA,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,2BAA2B,GAAG,OACnC,aAAuB,EACvB,GAAW,KACX;YACA,OAAO,MAAM,IAAI,CAAC,kBAAkB,CAAC,oBAAoB,CACrD,aAAa,EACb,GAAG,CACN;AACL,QAAA,CAAC;AAED,QAAA,IAAI,CAAC,GAAG,CAAC,0BAA0B,GAAG,MAAK;AACvC,YAAA,OAAO,IAAI,CAAC,kBAAkB,CAAC,mBAAmB,EAAE;AACxD,QAAA,CAAC;AAED,QAAA,IAAI,CAAC,GAAG,CAAC,0BAA0B,GAAG,MAAK;AACvC,YAAA,OAAO,IAAI,CAAC,kBAAkB,CAAC,mBAAmB,EAAE;AACxD,QAAA,CAAC;;QAGD,IAAI,CAAC,GAAG,CAAC,oBAAoB,GAAG,CAAC,aAAsB,KAAI;AACvD,YAAA,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,aAAa,CAAC;AACxD,QAAA,CAAC;AAED,QAAA,IAAI,CAAC,GAAG,CAAC,qBAAqB,GAAG,MAAK;AAClC,YAAA,IAAI,CAAC,kBAAkB,CAAC,cAAc,EAAE;AAC5C,QAAA,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,cAAc,GAAG,CAAC,IAAwB,KAAI;AACnD,YAAA,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,IAAI,CAAC;AACzC,QAAA,CAAC;AAED,QAAA,IAAI,CAAC,GAAG,CAAC,qBAAqB,GAAG,MAAK;AAClC,YAAA,OAAO,IAAI,CAAC,kBAAkB,CAAC,cAAc,EAAE;AACnD,QAAA,CAAC;AAED,QAAA,IAAI,CAAC,GAAG,CAAC,uBAAuB,GAAG,MAAK;AACpC,YAAA,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,EAAE;AAC9C,QAAA,CAAC;IACL;;AAIA;;;AAGG;IACI,OAAO,GAAA;AACV,QAAA,OAAO,IAAI,CAAC,gBAAgB,CAAC,cAAc,EAAE;IACjD;AAEA;;;;AAIG;IACI,MAAM,cAAc,CAAC,IAAY,EAAA;QACpC,OAAO,MAAM,IAAIE,mBAAI,CAAC,IAAI,CAAC,CAAC,cAAc,EAAE;IAChD;AAEA;;AAEG;IACK,qBAAqB,GAAA;AACzB,QAAA,MAAM,gBAAgB,GAAG,OAAO,MAAc,KAAI;YAC9C,IAAI,CAAC,MAAM,CAAC,KAAK,CACb,QAAQ,EACR,CAAA,wDAAA,EAA2D,MAAM,CAAA,CAAA,CAAG,CACvE;AAED,YAAA,IAAI;gBACA,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,wBAAwB,CAAC;AACrD,gBAAA,MAAM,IAAI,CAAC,IAAI,EAAE;gBACjB,IAAI,CAAC,MAAM,CAAC,KAAK,CACb,QAAQ,EACR,oCAAoC,CACvC;AACD,gBAAA,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;YACnB;YAAE,OAAO,KAAK,EAAE;gBACZ,IAAI,CAAC,MAAM,CAAC,KAAK,CACb,QAAQ,EACR,iCAAiC,EACjC,KAAK,CACR;AACD,gBAAA,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;YACnB;AACJ,QAAA,CAAC;;AAGD,QAAA,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,gBAAgB,CAAC,SAAS,CAAC,CAAC;AACxD,QAAA,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,gBAAgB,CAAC,QAAQ,CAAC,CAAC;AACtD,QAAA,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,gBAAgB,CAAC,QAAQ,CAAC,CAAC;;QAGtD,OAAO,CAAC,EAAE,CAAC,mBAAmB,EAAE,CAAC,KAAK,KAAI;YACtC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,qBAAqB,EAAE,KAAK,CAAC;YACzD,gBAAgB,CAAC,oBAAoB,CAAC;AAC1C,QAAA,CAAC,CAAC;;QAGF,OAAO,CAAC,EAAE,CAAC,oBAAoB,EAAE,CAAC,MAAM,EAAE,OAAO,KAAI;YACjD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,8BAA8B,EAAE,MAAM,CAAC;AACvE,QAAA,CAAC,CAAC;IACN;AAEA;;AAEG;AACI,IAAA,MAAM,IAAI,GAAA;QACb,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,6BAA6B,CAAC;AAE1D,QAAA,IAAI;;YAEA,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,kCAAkC,CAAC;AAC/D,YAAA,MAAM,aAAa,GAAI,IAAI,CAAC,GAAW,CAAC,aAAa;YACrD,IAAI,aAAa,IAAI,OAAO,aAAa,CAAC,QAAQ,KAAK,UAAU,EAAE;AAC/D,gBAAA,MAAM,aAAa,CAAC,QAAQ,EAAE;gBAC9B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,gCAAgC,CAAC;YACjE;iBAAO;gBACH,IAAI,CAAC,MAAM,CAAC,KAAK,CACb,QAAQ,EACR,0DAA0D,CAC7D;YACL;;YAGA,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,qCAAqC,CAAC;YAClE,IACI,IAAI,CAAC,mBAAmB;gBACxB,OAAO,IAAI,CAAC,mBAAmB,CAAC,OAAO,KAAK,UAAU,EACxD;AACE,gBAAA,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE;gBAClC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,iCAAiC,CAAC;YAClE;;YAGA,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,wBAAwB,CAAC;YACrD,MAAM,UAAU,GAAG,IAAI,CAAC,gBAAgB,EAAE,aAAa,EAAE;YACzD,IAAI,UAAU,EAAE;AACZ,gBAAA,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,KAAI;AAChC,oBAAA,UAAU,CAAC,KAAK,CAAC,MAAK;wBAClB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,oBAAoB,CAAC;AACjD,wBAAA,OAAO,EAAE;AACb,oBAAA,CAAC,CAAC;AACN,gBAAA,CAAC,CAAC;YACN;iBAAO;gBACH,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,+BAA+B,CAAC;YAChE;AAEA,YAAA,MAAM,EAAE,GAAG,IAAIC,mCAAmB,EAAE;YACpC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,gCAAgC,CAAC;AAC7D,YAAA,MAAM,EAAE,CAAC,QAAQ,EAAE;AACnB,YAAA,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE;AAClC,YAAA,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC;YAE3B,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,6BAA6B,CAAC;QAChE;QAAE,OAAO,KAAK,EAAE;YACZ,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,wBAAwB,EAAE,KAAK,CAAC;AAC5D,YAAA,MAAM,KAAK;QACf;IACJ;AACH;;;;"}
1
+ {"version":3,"file":"FastServer.js","sources":["../../../../src/server/FastServer.ts"],"sourcesContent":[null],"names":["Configs","initializeLogger","ConsoleInterceptor","XyprissApp","XyRequestManager","CacheManager","PerformanceManager","PluginManager","FileWatcherManager","WorkerPoolComponent","SecurityMiddleware","xemsSession","DEFAULT_OPTIONS","FileUploadManager","createSafeJsonMiddleware","XJsonResponseHandler","createResponseManipulationMiddleware","ServerPluginManager","ConnectionPlugin","netConfig","ProxyPlugin","proxyConfig","Port","SecureInMemoryCache"],"mappings":"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"}
@@ -0,0 +1,245 @@
1
+ 'use strict';
2
+
3
+ var path = require('path');
4
+ var config = require('../../../../config.js');
5
+
6
+ function _interopNamespaceDefault(e) {
7
+ var n = Object.create(null);
8
+ if (e) {
9
+ Object.keys(e).forEach(function (k) {
10
+ if (k !== 'default') {
11
+ var d = Object.getOwnPropertyDescriptor(e, k);
12
+ Object.defineProperty(n, k, d.get ? d : {
13
+ enumerable: true,
14
+ get: function () { return e[k]; }
15
+ });
16
+ }
17
+ });
18
+ }
19
+ n.default = e;
20
+ return Object.freeze(n);
21
+ }
22
+
23
+ var path__namespace = /*#__PURE__*/_interopNamespaceDefault(path);
24
+
25
+ /**
26
+ * File Upload Manager for XyPriss Server
27
+ * Handles multer configuration and file upload middleware setup
28
+ */
29
+ class FileUploadManager {
30
+ constructor(logger, config$1) {
31
+ this.upload = null;
32
+ this.config = config$1 || config.CM.get("fileUpload") || {};
33
+ this.logger = logger;
34
+ }
35
+ /**
36
+ * Initialize the file upload manager
37
+ */
38
+ async initialize() {
39
+ if (!this.config.enabled) {
40
+ this.logger.debug("server", "File upload configuration disabled or not configured");
41
+ return;
42
+ }
43
+ this.logger.debug("server", "Go-Native File Upload initialized");
44
+ this.upload = true; // Mark as initialized
45
+ }
46
+ /**
47
+ * Create default file filter based on configuration
48
+ */
49
+ createDefaultFileFilter() {
50
+ return (req, file, cb) => {
51
+ this.logger.debug("server", `Filtering file: ${file.originalname}, type: ${file.mimetype}, size: ${file.size}`);
52
+ // Check file size if specified in config
53
+ if (this.config?.maxFileSize &&
54
+ file.size > this.config.maxFileSize) {
55
+ const maxSizeMB = (this.config.maxFileSize /
56
+ (1024 * 1024)).toFixed(2);
57
+ const fileSizeMB = (file.size / (1024 * 1024)).toFixed(2);
58
+ this.logger.debug("server", `File too large: ${fileSizeMB}MB > ${maxSizeMB}MB limit`);
59
+ return cb(new Error(`File too large. Maximum size: ${maxSizeMB}MB, file size: ${fileSizeMB}MB`), false);
60
+ }
61
+ // Default file filter - check allowed types if specified
62
+ if (this.config?.allowedMimeTypes) {
63
+ this.logger.debug("server", `Checking MIME types: ${this.config.allowedMimeTypes.join(", ")}`);
64
+ if (!this.config.allowedMimeTypes.includes(file.mimetype)) {
65
+ this.logger.debug("server", `MIME type ${file.mimetype} not allowed`);
66
+ return cb(new Error(`File type '${file.mimetype}' not allowed. Allowed types: ${this.config.allowedMimeTypes.join(", ")}`), false);
67
+ }
68
+ }
69
+ if (this.config?.allowedExtensions) {
70
+ const ext = path__namespace.extname(file.originalname).toLowerCase();
71
+ this.logger.debug("server", `Checking extensions: ${this.config.allowedExtensions.join(", ")}, file ext: ${ext}`);
72
+ if (!this.config.allowedExtensions.includes(ext)) {
73
+ this.logger.debug("server", `File extension ${ext} not allowed`);
74
+ return cb(new Error(`File extension '${ext}' not allowed. Allowed extensions: ${this.config.allowedExtensions.join(", ")}`), false);
75
+ }
76
+ }
77
+ this.logger.debug("server", "File passed filter");
78
+ cb(null, true);
79
+ };
80
+ }
81
+ /**
82
+ * Get the multer upload instance
83
+ */
84
+ getUpload() {
85
+ return this.upload;
86
+ }
87
+ /**
88
+ * Get single file upload middleware
89
+ */
90
+ single(fieldname) {
91
+ return (req, res, next) => {
92
+ // Check for errors propagated from the binary
93
+ if (req.uploadErrors && Array.isArray(req.uploadErrors)) {
94
+ const fieldErrors = req.uploadErrors.filter((err) => err.fieldname === fieldname);
95
+ if (fieldErrors.length > 0) {
96
+ return next(new Error(fieldErrors[0].message ||
97
+ `File upload rejected for field ${fieldname}`));
98
+ }
99
+ }
100
+ const files = (req.files || []).filter((f) => f.fieldname === fieldname);
101
+ if (files.length > 1)
102
+ return next(new Error(`Unexpected multiple files for field ${fieldname}`));
103
+ const file = files[0];
104
+ if (!file)
105
+ return next(); // Multer optional behavior
106
+ this.createDefaultFileFilter()(req, file, (err, accept) => {
107
+ if (err)
108
+ return next(err);
109
+ if (!accept)
110
+ return next(new Error("File rejected"));
111
+ req.file = file;
112
+ next();
113
+ });
114
+ };
115
+ }
116
+ array(fieldname, maxCount) {
117
+ return (req, res, next) => {
118
+ if (req.uploadErrors && Array.isArray(req.uploadErrors)) {
119
+ const fieldErrors = req.uploadErrors.filter((err) => err.fieldname === fieldname);
120
+ if (fieldErrors.length > 0) {
121
+ return next(new Error(fieldErrors[0].message ||
122
+ `File upload rejected for field ${fieldname}`));
123
+ }
124
+ }
125
+ const files = (req.files || []).filter((f) => f.fieldname === fieldname);
126
+ if (maxCount && files.length > maxCount) {
127
+ return next(new Error(`Too many files in field ${fieldname}. Max: ${maxCount}`));
128
+ }
129
+ let completed = 0;
130
+ let errorOccurred = false;
131
+ if (files.length === 0)
132
+ return next();
133
+ files.forEach((file) => {
134
+ this.createDefaultFileFilter()(req, file, (err, accept) => {
135
+ if (errorOccurred)
136
+ return;
137
+ if (err) {
138
+ errorOccurred = true;
139
+ return next(err);
140
+ }
141
+ if (!accept) {
142
+ errorOccurred = true;
143
+ return next(new Error("File rejected"));
144
+ }
145
+ completed++;
146
+ if (completed === files.length)
147
+ next();
148
+ });
149
+ });
150
+ };
151
+ }
152
+ fields(fields) {
153
+ return (req, res, next) => {
154
+ const allFiles = req.files || [];
155
+ let errorOccurred = false;
156
+ let totalToValidate = 0;
157
+ let validatedCount = 0;
158
+ // First pass: count files and check maxCount
159
+ for (const field of fields) {
160
+ const files = allFiles.filter((f) => f.fieldname === field.name);
161
+ if (field.maxCount && files.length > field.maxCount) {
162
+ return next(new Error(`Too many files in field ${field.name}. Max: ${field.maxCount}`));
163
+ }
164
+ totalToValidate += files.length;
165
+ }
166
+ if (totalToValidate === 0)
167
+ return next();
168
+ // Second pass: validate each file
169
+ for (const field of fields) {
170
+ const files = allFiles.filter((f) => f.fieldname === field.name);
171
+ for (const file of files) {
172
+ this.createDefaultFileFilter()(req, file, (err, accept) => {
173
+ if (errorOccurred)
174
+ return;
175
+ if (err) {
176
+ errorOccurred = true;
177
+ return next(err);
178
+ }
179
+ if (!accept) {
180
+ errorOccurred = true;
181
+ return next(new Error("File rejected"));
182
+ }
183
+ validatedCount++;
184
+ if (validatedCount === totalToValidate)
185
+ next();
186
+ });
187
+ }
188
+ }
189
+ };
190
+ }
191
+ any() {
192
+ return (req, res, next) => {
193
+ if (req.uploadErrors &&
194
+ Array.isArray(req.uploadErrors) &&
195
+ req.uploadErrors.length > 0) {
196
+ return next(new Error(req.uploadErrors[0].message || "File upload rejected"));
197
+ }
198
+ const files = req.files || [];
199
+ if (files.length === 0)
200
+ return next();
201
+ let completed = 0;
202
+ let errorOccurred = false;
203
+ files.forEach((file) => {
204
+ this.createDefaultFileFilter()(req, file, (err, accept) => {
205
+ if (errorOccurred)
206
+ return;
207
+ if (err) {
208
+ errorOccurred = true;
209
+ return next(err);
210
+ }
211
+ if (!accept) {
212
+ errorOccurred = true;
213
+ return next(new Error("File rejected"));
214
+ }
215
+ completed++;
216
+ if (completed === files.length)
217
+ next();
218
+ });
219
+ });
220
+ };
221
+ }
222
+ none() {
223
+ return (req, res, next) => {
224
+ if (req.files && req.files.length > 0) {
225
+ return next(new Error("Unexpected files in form-data"));
226
+ }
227
+ next();
228
+ };
229
+ }
230
+ /**
231
+ * Check if file upload is enabled
232
+ */
233
+ isEnabled() {
234
+ return this.config.enabled === true && this.upload !== null;
235
+ }
236
+ /**
237
+ * Get current configuration
238
+ */
239
+ getConfig() {
240
+ return this.config;
241
+ }
242
+ }
243
+
244
+ exports.FileUploadManager = FileUploadManager;
245
+ //# sourceMappingURL=FileUploadManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FileUploadManager.js","sources":["../../../../../../../src/server/components/fastapi/upload/FileUploadManager.ts"],"sourcesContent":[null],"names":["config","Configs","path"],"mappings":"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"}