xypriss 9.3.71 → 9.4.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 (74) hide show
  1. package/dist/cjs/src/file-upload.js +43 -45
  2. package/dist/cjs/src/file-upload.js.map +1 -1
  3. package/dist/cjs/src/index.js +2 -0
  4. package/dist/cjs/src/index.js.map +1 -1
  5. package/dist/cjs/src/middleware/XyPrissMiddlewareAPI.js +0 -51
  6. package/dist/cjs/src/middleware/XyPrissMiddlewareAPI.js.map +1 -1
  7. package/dist/cjs/src/middleware/built-in/BuiltInMiddleware.js +1 -45
  8. package/dist/cjs/src/middleware/built-in/BuiltInMiddleware.js.map +1 -1
  9. package/dist/cjs/src/middleware/built-in/security/RequestSignatureProtector.js +1 -1
  10. package/dist/cjs/src/middleware/built-in/security/RequestSignatureProtector.js.map +1 -1
  11. package/dist/cjs/src/middleware/security-middleware.js +0 -52
  12. package/dist/cjs/src/middleware/security-middleware.js.map +1 -1
  13. package/dist/cjs/src/plugins/PluginManager.js +1 -1
  14. package/dist/cjs/src/quick-start.js +1 -1
  15. package/dist/cjs/src/server/FastServer.js +5 -5
  16. package/dist/cjs/src/server/components/fastapi/FileUploadManager.js +113 -85
  17. package/dist/cjs/src/server/components/fastapi/FileUploadManager.js.map +1 -1
  18. package/dist/cjs/src/server/const/XHSC_SIGNATURE.js +7 -0
  19. package/dist/cjs/src/server/const/XHSC_SIGNATURE.js.map +1 -0
  20. package/dist/cjs/src/server/core/XHSCBridge.js +66 -6
  21. package/dist/cjs/src/server/core/XHSCBridge.js.map +1 -1
  22. package/dist/cjs/src/server/core/XHSCProtocol.js +44 -7
  23. package/dist/cjs/src/server/core/XHSCProtocol.js.map +1 -1
  24. package/dist/cjs/src/server/core/XyprissApp.js +2 -2
  25. package/dist/cjs/src/sys/FSApi.js +232 -36
  26. package/dist/cjs/src/sys/FSApi.js.map +1 -1
  27. package/dist/cjs/src/sys/PathApi.js +63 -0
  28. package/dist/cjs/src/sys/PathApi.js.map +1 -1
  29. package/dist/cjs/src/sys/SysApi.js +26 -43
  30. package/dist/cjs/src/sys/SysApi.js.map +1 -1
  31. package/dist/cjs/src/sys/XyPrissRunner.js +40 -65
  32. package/dist/cjs/src/sys/XyPrissRunner.js.map +1 -1
  33. package/dist/cjs/src/sys.js +0 -15
  34. package/dist/cjs/src/sys.js.map +1 -1
  35. package/dist/cjs/src/utils/getIp.js +164 -0
  36. package/dist/cjs/src/utils/getIp.js.map +1 -0
  37. package/dist/esm/src/file-upload.js +43 -45
  38. package/dist/esm/src/file-upload.js.map +1 -1
  39. package/dist/esm/src/index.js +1 -0
  40. package/dist/esm/src/index.js.map +1 -1
  41. package/dist/esm/src/middleware/XyPrissMiddlewareAPI.js +0 -51
  42. package/dist/esm/src/middleware/XyPrissMiddlewareAPI.js.map +1 -1
  43. package/dist/esm/src/middleware/built-in/BuiltInMiddleware.js +1 -45
  44. package/dist/esm/src/middleware/built-in/BuiltInMiddleware.js.map +1 -1
  45. package/dist/esm/src/middleware/built-in/security/RequestSignatureProtector.js +1 -1
  46. package/dist/esm/src/middleware/built-in/security/RequestSignatureProtector.js.map +1 -1
  47. package/dist/esm/src/middleware/security-middleware.js +0 -52
  48. package/dist/esm/src/middleware/security-middleware.js.map +1 -1
  49. package/dist/esm/src/plugins/PluginManager.js +1 -1
  50. package/dist/esm/src/quick-start.js +1 -1
  51. package/dist/esm/src/server/FastServer.js +5 -5
  52. package/dist/esm/src/server/components/fastapi/FileUploadManager.js +113 -85
  53. package/dist/esm/src/server/components/fastapi/FileUploadManager.js.map +1 -1
  54. package/dist/esm/src/server/const/XHSC_SIGNATURE.js +5 -0
  55. package/dist/esm/src/server/const/XHSC_SIGNATURE.js.map +1 -0
  56. package/dist/esm/src/server/core/XHSCBridge.js +66 -6
  57. package/dist/esm/src/server/core/XHSCBridge.js.map +1 -1
  58. package/dist/esm/src/server/core/XHSCProtocol.js +44 -7
  59. package/dist/esm/src/server/core/XHSCProtocol.js.map +1 -1
  60. package/dist/esm/src/server/core/XyprissApp.js +2 -2
  61. package/dist/esm/src/sys/FSApi.js +232 -36
  62. package/dist/esm/src/sys/FSApi.js.map +1 -1
  63. package/dist/esm/src/sys/PathApi.js +63 -0
  64. package/dist/esm/src/sys/PathApi.js.map +1 -1
  65. package/dist/esm/src/sys/SysApi.js +26 -43
  66. package/dist/esm/src/sys/SysApi.js.map +1 -1
  67. package/dist/esm/src/sys/XyPrissRunner.js +40 -65
  68. package/dist/esm/src/sys/XyPrissRunner.js.map +1 -1
  69. package/dist/esm/src/sys.js +0 -15
  70. package/dist/esm/src/sys.js.map +1 -1
  71. package/dist/esm/src/utils/getIp.js +162 -0
  72. package/dist/esm/src/utils/getIp.js.map +1 -0
  73. package/dist/index.d.ts +345 -104
  74. package/package.json +34 -39
@@ -4,6 +4,7 @@ var path = require('node:path');
4
4
  var fs = require('node:fs');
5
5
  var node_child_process = require('node:child_process');
6
6
  var node_url = require('node:url');
7
+ var XHSC_SIGNATURE = require('../server/const/XHSC_SIGNATURE.js');
7
8
 
8
9
  var _documentCurrentScript = typeof document !== 'undefined' ? document.currentScript : null;
9
10
  /**
@@ -57,86 +58,60 @@ class XyPrissRunner {
57
58
  const osPart = getOsPart();
58
59
  const archPart = getArchPart();
59
60
  const suffix = osPart === "windows" ? ".exe" : "";
60
- // The new naming convention for the Go implementation
61
+ // Candidate names in order of preference
61
62
  const goBinName = `xsys-${osPart}-${archPart}${suffix}`;
62
- // Legacy Rust binary name
63
- const rustBinName = osPart === "windows" ? "xsys.exe" : "xsys";
63
+ const genericBinName = osPart === "windows" ? "xsys.exe" : "xsys";
64
+ const candidates = [goBinName, genericBinName];
64
65
  try {
66
+ // Get location of *this* file (compiled JS)
65
67
  const __filename = node_url.fileURLToPath((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('src/sys/XyPrissRunner.js', document.baseURI).href)));
66
- const __dirname = path.dirname(__filename);
67
- const locations = [
68
- // 1. Generic names (Preferred for installed packages)
69
- path.resolve(process.cwd(), "bin", rustBinName),
70
- path.resolve(process.cwd(), "node_modules", ".bin", rustBinName),
71
- path.resolve(__dirname, "..", "..", "bin", rustBinName),
72
- path.resolve(__dirname, "..", "..", "..", "bin", rustBinName),
73
- // 2. Go implementation (Development & Dist)
74
- path.resolve(process.cwd(), "tools", "xypriss-sys-go", "dist", goBinName),
75
- path.resolve(process.cwd(), "bin", goBinName),
76
- path.resolve(process.cwd(), "node_modules", ".bin", goBinName),
77
- // 3. Deployment locations relative to script
78
- path.resolve(__dirname, "..", "..", "bin", goBinName),
79
- path.resolve(__dirname, "..", "..", "..", "bin", goBinName),
80
- // 4. Fallback to Rust (Legacy Support)
81
- path.resolve(process.cwd(), "tools", "xypriss-sys", "target", "release", rustBinName),
82
- ];
83
- // 5. Deep discovery: Search up from both CWD and __dirname
84
- // This handles monorepos, symlinked packages, and subfolder execution.
85
- const searchBases = [process.cwd()];
86
- try {
87
- // Safely add __dirname if it exists (CJS vs ESM compatibility)
88
- if (typeof __dirname !== "undefined") {
89
- searchBases.push(__dirname);
90
- }
91
- else {
92
- // ESM fallback
93
- const __esm_filename = node_url.fileURLToPath((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('src/sys/XyPrissRunner.js', document.baseURI).href)));
94
- searchBases.push(path.dirname(__esm_filename));
95
- }
96
- }
97
- catch (e) {
98
- // Fallback to what we have
99
- }
100
- for (let currentDir of searchBases) {
101
- let walkDir = currentDir;
102
- while (walkDir !== path.parse(walkDir).root) {
103
- const nodeModulesBin = path.join(walkDir, "node_modules", ".bin");
104
- const potentialRust = path.join(nodeModulesBin, rustBinName);
105
- const potentialGo = path.join(nodeModulesBin, goBinName);
106
- if (fs.existsSync(potentialGo))
107
- return potentialGo;
108
- if (fs.existsSync(potentialRust))
109
- return potentialRust;
110
- // Also check a local "bin" folder at each level
111
- const localBin = path.join(walkDir, "bin");
112
- const localRust = path.join(localBin, rustBinName);
113
- const localGo = path.join(localBin, goBinName);
114
- if (fs.existsSync(localGo))
115
- return localGo;
116
- if (fs.existsSync(localRust))
117
- return localRust;
118
- walkDir = path.dirname(walkDir);
119
- }
120
- }
121
- for (const loc of locations) {
122
- if (fs.existsSync(loc)) {
123
- // console.log(`[SYSTEM] Discovered binary: ${loc}`);
124
- return loc;
68
+ const scriptDir = path.dirname(__filename);
69
+ // Bases for recursive search: script location and current working directory
70
+ const searchBases = [scriptDir, process.cwd()];
71
+ for (const base of searchBases) {
72
+ let current = base;
73
+ // Go up up to 8 levels to handle deeply nested node_modules / virtual_store
74
+ for (let depth = 0; depth < 8; depth++) {
75
+ // Check 1: Standard bin/ at this level
76
+ const binDir = path.join(current, "bin");
77
+ for (const name of candidates) {
78
+ const fullPath = path.join(binDir, name);
79
+ if (fs.existsSync(fullPath))
80
+ return fullPath;
81
+ }
82
+ // Check 2: node_modules/.bin (if we are at project/env root)
83
+ const nodeModulesBin = path.join(current, "node_modules", ".bin");
84
+ for (const name of candidates) {
85
+ const fullPath = path.join(nodeModulesBin, name);
86
+ if (fs.existsSync(fullPath))
87
+ return fullPath;
88
+ }
89
+ // Check 3: Local dev folders
90
+ const devPath = path.join(current, "tools", "xypriss-sys-go", "dist");
91
+ for (const name of candidates) {
92
+ const fullPath = path.join(devPath, name);
93
+ if (fs.existsSync(fullPath))
94
+ return fullPath;
95
+ }
96
+ const parent = path.dirname(current);
97
+ if (parent === current)
98
+ break;
99
+ current = parent;
125
100
  }
126
101
  }
127
102
  }
128
103
  catch (e) {
129
- // Silently fail and fallback
104
+ // Silently fall through to generic name
130
105
  }
131
106
  // Final fallback (generic name which might be in PATH)
132
- return rustBinName;
107
+ return genericBinName;
133
108
  }
134
109
  /**
135
110
  * Executes a command synchronously and returns the parsed JSON result.
136
111
  * Standardizes all responses into a Promise-like data structure.
137
112
  */
138
113
  runSync(module, action, args = [], options = {}) {
139
- const INTERNAL_SIGNATURE = "b3f8e9a2c1d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8g9h0i1j2k3l4m5n6o7p8q9r0";
114
+ const INTERNAL_SIGNATURE = XHSC_SIGNATURE.XHSC_SIGNATURE;
140
115
  const cmdArgs = [
141
116
  "--root",
142
117
  this.root,
@@ -1 +1 @@
1
- {"version":3,"file":"XyPrissRunner.js","sources":["../../../../src/sys/XyPrissRunner.ts"],"sourcesContent":[null],"names":["fileURLToPath","execFileSync"],"mappings":"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"}
1
+ {"version":3,"file":"XyPrissRunner.js","sources":["../../../../src/sys/XyPrissRunner.ts"],"sourcesContent":[null],"names":["fileURLToPath","XHSC_SIGNATURE","execFileSync"],"mappings":"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"}
@@ -218,21 +218,6 @@ class XyPrissSys extends System.XyPrissFS {
218
218
  // =========================================================================
219
219
  // MODULAR CAPABILITIES
220
220
  // =========================================================================
221
- // /**
222
- // * **Remove Variable ($remove)**
223
- // *
224
- // * Removes a property from the system object.
225
- // *
226
- // * @param {string} key - Property name.
227
- // * @returns {boolean} True if the property existed and was removed.
228
- // */
229
- // public $remove(key: string): boolean {
230
- // if (this.$has(key)) {
231
- // delete this[key];
232
- // return true;
233
- // }
234
- // return false;
235
- // }
236
221
  /**
237
222
  * **Serialize to JSON ($toJSON)**
238
223
  *
@@ -1 +1 @@
1
- {"version":3,"file":"sys.js","sources":["../../../src/sys.ts"],"sourcesContent":[null],"names":["XyPrissFS","DotEnvLoader"],"mappings":";;;;;;AAqBA;;;;;;;;;;;;;;AAcG;AACG,MAAO,UAAW,SAAQA,gBAAS,CAAA;;;AAsGrC;;;;;;;AAOG;AACH,IAAA,WAAA,CAAY,OAA4B,EAAE,EAAA;QACtC,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,IAAI,OAAO,CAAC,GAAG,EAAE;AAC3C,QAAA,KAAK,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;;;;QAtGtB,IAAA,CAAA,WAAW,GAAW,OAAO;;QAE7B,IAAA,CAAA,UAAU,GAAW,SAAS;;QAE9B,IAAA,CAAA,eAAe,GAAW,uBAAuB;;QAEjD,IAAA,CAAA,YAAY,GAA2B,EAAE;;QAEzC,IAAA,CAAA,QAAQ,GAAW,aAAa;;QAEhC,IAAA,CAAA,SAAS,GAAW,KAAK;;QAEzB,IAAA,CAAA,QAAQ,GAAW,IAAI;;QAEvB,IAAA,CAAA,QAAQ,GAAW,IAAI;;AAEvB,QAAA,IAAA,CAAA,QAAQ,GAAW,OAAO,CAAC,GAAG,EAAE;AAEvC;;;;;AAKG;AACI,QAAA,IAAA,CAAA,OAAO,GAAe;;AAEzB,YAAA,IAAI,EAAE,aAAa;AAEnB;;;;AAIG;AACH,YAAA,GAAG,EAAE,CAAC,GAAW,EAAE,KAAa,KAAI;AAChC,gBAAA,IAAK,UAAkB,CAAC,gBAAgB,EAAE;AACrC,oBAAA,UAAkB,CAAC,gBAAgB,CAAC,GAAG,CAAC,GAAG,KAAK;gBACrD;AACA,gBAAA,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK;YAC5B,CAAC;AACD;;;;;AAKG;AACH,YAAA,GAAG,EAAE,CAAC,GAAW,EAAE,YAAqB,KAAI;gBACxC,MAAM,KAAK,GAAI,UAAkB,CAAC,gBAAgB,IAAI,OAAO,CAAC,GAAG;AACjE,gBAAA,OAAO,KAAK,CAAC,GAAG,CAAC,IAAI,YAAY;YACrC,CAAC;AACD;;;;AAIG;AACH,YAAA,GAAG,EAAE,CAAC,GAAW,KAAI;gBACjB,MAAM,KAAK,GAAI,UAAkB,CAAC,gBAAgB,IAAI,OAAO,CAAC,GAAG;AACjE,gBAAA,OAAO,KAAK,CAAC,GAAG,CAAC,KAAK,SAAS;YACnC,CAAC;AACD;;;AAGG;AACH,YAAA,MAAM,EAAE,CAAC,GAAW,KAAI;AACpB,gBAAA,IAAK,UAAkB,CAAC,gBAAgB,EAAE;AACtC,oBAAA,OAAQ,UAAkB,CAAC,gBAAgB,CAAC,GAAG,CAAC;gBACpD;AACA,gBAAA,OAAO,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC;YAC3B,CAAC;AACD;;;AAGG;YACH,GAAG,EAAE,MAAK;AACN,gBAAA,OAAQ,UAAkB,CAAC,gBAAgB,IAAI,OAAO,CAAC,GAAG;YAC9D,CAAC;;;YAID,YAAY,EAAE,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,YAAY;;YAEtD,aAAa,EAAE,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,aAAa;;YAExD,SAAS,EAAE,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,SAAS;;YAEhD,MAAM,EAAE,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM;;AAE1C,YAAA,EAAE,EAAE,CAAC,OAAe,KAAK,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,OAAO;SACzD;AAgBG,QAAA,IAAI,CAAC,QAAQ,GAAG,IAAI;AACpB,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;IACtB;AAEA;;;;;;;AAOG;AACI,IAAA,OAAO,CAAC,IAAyB,EAAA;;AAEpC,QAAA,MAAM,SAAS,GAAG,EAAE,GAAG,IAAI,EAAE;AAC7B,QAAA,MAAM,SAAS,GACX,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,MAAM;;QAG9D,OAAQ,SAAiB,CAAC,OAAO;QACjC,OAAQ,SAAiB,CAAC,KAAK;QAC/B,OAAQ,SAAiB,CAAC,QAAQ;QAClC,OAAQ,SAAiB,CAAC,MAAM;AAEhC,QAAA,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC;;AAG9B,QAAA,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS;AAAE,YAAA,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ;AAC9D,QAAA,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS;AAAE,YAAA,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ;AAC9D,QAAA,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE;AAC3B,YAAA,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM;AAC3B,YAAA,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM;QAC/B;AACA,QAAA,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE;AAC3B,YAAA,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM;AAC3B,YAAA,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM;QAC/B;;AAGA,QAAA,IAAI,SAAS,KAAK,SAAS,EAAE;AACzB,YAAA,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE;AAC/B,gBAAA,IAAI,CAAC,OAAO,CAAC,IAAI,GAAG,SAAS;YACjC;iBAAO,IACH,OAAO,SAAS,KAAK,QAAQ;AAC7B,gBAAA,SAAS,KAAK,IAAI;gBAClB,SAAS,CAAC,IAAI,EAChB;gBACE,IAAI,CAAC,OAAO,CAAC,IAAI,GAAG,SAAS,CAAC,IAAI;YACtC;QACJ;IACJ;AACA;;;;;;;;AAQG;IACI,IAAI,CAAC,GAAW,EAAE,KAAU,EAAA;AAC9B,QAAA,IAAY,CAAC,GAAG,CAAC,GAAG,KAAK;IAC9B;;;;;IAOO,aAAa,GAAA;AAChB,QAAA,OAAO,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE;IACtC;;IAGO,cAAc,GAAA;AACjB,QAAA,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE;IACvC;;IAGO,UAAU,GAAA;AACb,QAAA,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE;IACnC;;IAGO,OAAO,GAAA;AACV,QAAA,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;IAChC;;AAGO,IAAA,cAAc,CAAC,OAAe,EAAA;QACjC,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC;IACnC;;IAGO,IAAI,CAAU,GAAW,EAAE,YAAgB,EAAA;QAC9C,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,YAAmB,CAAQ;IAC5D;;AAGO,IAAA,IAAI,CAAC,GAAW,EAAA;QACnB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC;IAChC;;IAGO,KAAK,GAAA;QACR,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1C;;;;;;;;;;;;;;;;;;;AAsBA;;;;;;;;AAQG;IACI,OAAO,GAAA;QACV,MAAM,IAAI,GAAwB,EAAE;AACpC,QAAA,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;AACpB,YAAA,IACI,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC;AACpB,gBAAA,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,UAAU;AAC/B,gBAAA,GAAG,KAAK,SAAS;AACjB,gBAAA,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EACtC;gBACE,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC;YACzB;QACJ;AACA,QAAA,OAAO,IAAI;IACf;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiFA;;;;;;AAMG;IACI,MAAM,GAAA;QACT,OAAO,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;IACzC;AACH;AAED;AACA,IAAI,OAAO,UAAU,KAAK,WAAW,EAAE;;IAEnC,MAAM,WAAW,GAAG,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE;;IAGtC,MAAM,QAAQ,GAAa,EAAE;AAC7B,IAAA,IAAI,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE;IAC9B,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,IAAI;AAE3C,IAAA,OAAO,UAAU,KAAK,OAAO,EAAE;;AAE3B,QAAA,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;AACxD,QAAA,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;AACrD,QAAA,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;AAC/C,QAAA,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC;IACzC;;AAEA,IAAA,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;AAE5C,IAAA,MAAM,MAAM,GAAGC,yBAAY,CAAC,IAAI,CAAC;AAC7B,QAAA,IAAI,EAAE,QAAQ,CAAC,OAAO,EAAE;AACxB,QAAA,QAAQ,EAAE,IAAI;AACjB,KAAA,CAAC;;IAGD,UAAkB,CAAC,gBAAgB,GAAG,EAAE,GAAG,WAAW,EAAE,GAAG,MAAM,EAAE;AAEpE,IAAA,MAAM,WAAW,GAAG,QAAQ,CACvB,UAAkB,CAAC,gBAAgB,CAAC,MAAM,CAAC,IAAI,MAAM,CACzD;;AAGD,IAAA,MAAM,QAAQ,GAAI,UAAkB,CAAC,OAAO;IAC5C,MAAM,KAAK,GACP,QAAQ;AACR,SAAC,OAAO,QAAQ,CAAC,OAAO,KAAK,QAAQ,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC;AAEpE,IAAA,IAAI,CAAC,QAAQ,IAAI,KAAK,EAAE;AACpB,QAAA,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC;AAC1B,YAAA,QAAQ,EAAE,WAAW;AACrB,YAAA,QAAQ,EAAE,WAAW;AACrB,YAAA,QAAQ,EACH,UAAkB,CAAC,gBAAgB,CAAC,UAAU,CAAC;gBAChD,aAAa;AACpB,SAAA,CAAC;;QAGF,IAAI,QAAQ,EAAE;AACV,YAAA,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,GAAG,QAAQ,CAAC,OAAO,EAAE,GAAG,QAAQ;AAC7D,YAAA,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC;;AAGpB,YAAA,IAAI,OAAO,QAAQ,CAAC,OAAO,KAAK,QAAQ,EAAE;gBACtC,MAAM,CAAC,OAAO,CAAC,IAAI,GAAG,QAAQ,CAAC,OAAO;YAC1C;QACJ;AAEC,QAAA,UAAkB,CAAC,OAAO,GAAG,MAAM;IACxC;;;AAIA,IAAA,MAAM,iBAAiB,GAAG;QACtB,MAAM;QACN,MAAM;QACN,MAAM;QACN,KAAK;QACL,MAAM;QACN,MAAM;QACN,MAAM;QACN,WAAW;QACX,aAAa;QACb,cAAc;QACd,QAAQ;QACR,OAAO;QACP,OAAO;QACP,gBAAgB;QAChB,UAAU;QACV,OAAO;QACP,YAAY;QACZ,cAAc;QACd,UAAU;QACV,gBAAgB;QAChB,iBAAiB;QACjB,iBAAiB;QACjB,mBAAmB;QACnB,oBAAoB;QACpB,iBAAiB;QACjB,0BAA0B;KAC7B;IACD,IAAI,YAAY,GAAG,KAAK;IAExB,MAAM,SAAS,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;AACrC,QAAA,GAAG,CAAC,MAAM,EAAE,IAAY,EAAE,QAAQ,EAAA;YAC9B,IAAI,OAAO,IAAI,KAAK,QAAQ;gBACxB,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC;;AAG9C,YAAA,IACI,iBAAiB,CAAC,QAAQ,CAAC,IAAI,CAAC;AAChC,gBAAA,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;AACtB,gBAAA,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC;AAC3B,gBAAA,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;AACvB,gBAAA,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAC5B;gBACE,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC;YAC9C;;AAGA,YAAA,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;gBAC7D,IAAI,CAAC,YAAY,EAAE;AACf,oBAAA,MAAM,KAAK,GAAI,UAAkB,CAAC,gBAAgB,IAAI,EAAE;oBACxD,MAAM,QAAQ,GAAG,KAAK,CAAC,oBAAoB,CAAC,KAAK,QAAQ;oBAEzD,IAAI,CAAC,QAAQ,EAAE;AACX,wBAAA,OAAO,CAAC,IAAI,CACR,CAAA,+DAAA,EAAkE,IAAI,CAAA,2BAAA,CAA6B;4BAC/F,CAAA,wCAAA,EAA2C,IAAI,CAAA,6FAAA,CAA+F,CACrJ;oBACL;oBACA,YAAY,GAAG,IAAI;gBACvB;gBACA,OAAO,SAAS,CAAC;YACrB;YAEA,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC;QAC9C,CAAC;AACJ,KAAA,CAAC;;AAGF,IAAA,IAAI;AACA,QAAA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,KAAK,EAAE;AAClC,YAAA,KAAK,EAAE,SAAS;AAChB,YAAA,QAAQ,EAAE,KAAK;AACf,YAAA,YAAY,EAAE,IAAI;AACrB,SAAA,CAAC;IACN;IAAE,OAAO,CAAC,EAAE;;IAEZ;AACJ;AAEA;AACO,MAAM,OAAO,GAAI,UAAkB,CAAC;;;;;"}
1
+ {"version":3,"file":"sys.js","sources":["../../../src/sys.ts"],"sourcesContent":[null],"names":["XyPrissFS","DotEnvLoader"],"mappings":"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"}
@@ -0,0 +1,164 @@
1
+ 'use strict';
2
+
3
+ /***************************************************************************
4
+ * XyPrissJS - Fast And Secure
5
+ *
6
+ * @author Nehonix
7
+ * @license Nehonix OSL (NOSL)
8
+ *
9
+ * Copyright (c) 2025 Nehonix. All rights reserved.
10
+ *
11
+ * This License governs the use, modification, and distribution of software
12
+ * provided by NEHONIX under its open source projects.
13
+ * NEHONIX is committed to fostering collaborative innovation while strictly
14
+ * protecting its intellectual property rights.
15
+ * Violation of any term of this License will result in immediate termination of all granted rights
16
+ * and may subject the violator to legal action.
17
+ *
18
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
19
+ * INCLUDING BUT NOT LIMITED TO WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE,
20
+ * AND NON-INFRINGEMENT.
21
+ * IN NO EVENT SHALL NEHONIX BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
22
+ * OR CONSEQUENTIAL DAMAGES ARISING FROM THE USE OR INABILITY TO USE THE SOFTWARE,
23
+ * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
24
+ *
25
+ ***************************************************************************** */
26
+ // ─── Constants ────────────────────────────────────────────────────────────────
27
+ /** Regex that validates a raw IPv4 or IPv6 string (no port, no brackets). */
28
+ const IPV4_RE = /^(25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.(25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.(25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.(25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/;
29
+ const IPV6_RE = /^[\da-f:]+$/i;
30
+ /** Private / loopback ranges we never want to return as the *real* client IP. */
31
+ const PRIVATE_RANGES = [
32
+ /^127\./, // 127.0.0.0/8 – loopback
33
+ /^10\./, // 10.0.0.0/8 – RFC 1918
34
+ /^172\.(1[6-9]|2\d|3[01])\./, // 172.16.0.0/12 – RFC 1918
35
+ /^192\.168\./, // 192.168.0.0/16 – RFC 1918
36
+ /^169\.254\./, // 169.254.0.0/16 – link-local
37
+ /^::1$/, // IPv6 loopback
38
+ /^fe80:/i, // IPv6 link-local
39
+ /^fc|^fd/i, // IPv6 unique local
40
+ ];
41
+ const FALLBACK_IP = "127.0.0.1";
42
+ // ─── Helpers ──────────────────────────────────────────────────────────────────
43
+ /**
44
+ * Strips an IPv6-mapped IPv4 prefix ("::ffff:") and surrounding brackets.
45
+ * "::ffff:1.2.3.4" → "1.2.3.4"
46
+ * "[::1]" → "::1"
47
+ */
48
+ function normaliseIp(raw) {
49
+ let ip = raw.trim();
50
+ // Strip brackets used in URLs: [::1]:3000 → ::1
51
+ if (ip.startsWith("[")) {
52
+ ip = ip.replace(/^\[([^\]]+)\].*$/, "$1");
53
+ }
54
+ // Strip port from IPv4: 1.2.3.4:3000 → 1.2.3.4
55
+ const v4WithPort = ip.match(/^(\d{1,3}(?:\.\d{1,3}){3}):\d+$/);
56
+ if (v4WithPort)
57
+ ip = v4WithPort[1];
58
+ // Strip IPv6-mapped IPv4 prefix
59
+ if (/^::ffff:/i.test(ip))
60
+ ip = ip.slice(7);
61
+ return ip;
62
+ }
63
+ /** Returns true only for syntactically valid, non-private IPv4 / IPv6. */
64
+ function isValidPublicIp(raw) {
65
+ const ip = normaliseIp(raw);
66
+ if (!ip)
67
+ return false;
68
+ const isIpv4 = IPV4_RE.test(ip);
69
+ const isIpv6 = !isIpv4 && IPV6_RE.test(ip);
70
+ if (!isIpv4 && !isIpv6)
71
+ return false;
72
+ return !PRIVATE_RANGES.some((re) => re.test(ip));
73
+ }
74
+ /** Safely reads a header value – returns undefined for missing / empty. */
75
+ function header(headers, name) {
76
+ const val = headers[name.toLowerCase()];
77
+ if (!val)
78
+ return undefined;
79
+ const str = Array.isArray(val) ? val[0] : val;
80
+ return str?.trim() || undefined;
81
+ }
82
+ /**
83
+ * Parses the RFC 7239 `Forwarded` header.
84
+ * `Forwarded: for=1.2.3.4;proto=https, for=5.6.7.8`
85
+ * → ["1.2.3.4", "5.6.7.8"]
86
+ */
87
+ function parseForwardedHeader(value) {
88
+ return value
89
+ .split(",")
90
+ .map((part) => {
91
+ const match = part.match(/for=["[]?([^\]",;]+)/i);
92
+ return match ? normaliseIp(match[1]) : "";
93
+ })
94
+ .filter(Boolean);
95
+ }
96
+ /**
97
+ * Given a comma-separated (or array) `X-Forwarded-For` header,
98
+ * returns the first *valid public* IP, or the first entry as fallback.
99
+ */
100
+ function pickFromXff(raw) {
101
+ const entries = (Array.isArray(raw) ? raw.flatMap((v) => v.split(",")) : raw.split(",")).map((s) => normaliseIp(s));
102
+ // Prefer first valid public IP (leftmost = original client in standard chains)
103
+ const pub = entries.find(isValidPublicIp);
104
+ if (pub)
105
+ return pub;
106
+ // Accept first private IP rather than nothing (intranet / dev env)
107
+ const first = entries[0];
108
+ return first && (IPV4_RE.test(first) || IPV6_RE.test(first))
109
+ ? first
110
+ : undefined;
111
+ }
112
+ function getIp(req, enriched) {
113
+ const headers = (req.headers ?? {});
114
+ const resolve = (ip, source) => {
115
+ const normalised = normaliseIp(ip);
116
+ return enriched ? { ip: normalised, source } : normalised;
117
+ };
118
+ // 1. CF-Connecting-IP
119
+ const cfIp = header(headers, "cf-connecting-ip");
120
+ if (cfIp)
121
+ return resolve(cfIp, "cf-connecting-ip");
122
+ // 2. True-Client-IP
123
+ const trueClientIp = header(headers, "true-client-ip");
124
+ if (trueClientIp)
125
+ return resolve(trueClientIp, "true-client-ip");
126
+ // 3. X-Real-IP
127
+ const xRealIp = header(headers, "x-real-ip");
128
+ if (xRealIp)
129
+ return resolve(xRealIp, "x-real-ip");
130
+ // 4. X-Client-IP
131
+ const xClientIp = header(headers, "x-client-ip");
132
+ if (xClientIp)
133
+ return resolve(xClientIp, "x-client-ip");
134
+ // 5. X-Cluster-Client-IP
135
+ const xClusterIp = header(headers, "x-cluster-client-ip");
136
+ if (xClusterIp)
137
+ return resolve(xClusterIp, "x-cluster-client-ip");
138
+ // 6. Forwarded (RFC 7239)
139
+ const forwarded = header(headers, "forwarded");
140
+ if (forwarded) {
141
+ const [first] = parseForwardedHeader(forwarded);
142
+ if (first)
143
+ return resolve(first, "forwarded");
144
+ }
145
+ // 7. X-Forwarded-For
146
+ const xForwardedFor = headers["x-forwarded-for"];
147
+ if (xForwardedFor) {
148
+ const picked = pickFromXff(xForwardedFor);
149
+ if (picked)
150
+ return resolve(picked, "x-forwarded-for");
151
+ }
152
+ // 8. req.ip (framework-level, e.g. XyPrisRequest with trust proxy)
153
+ if (req.ip)
154
+ return resolve(req.ip, "req.ip");
155
+ // 9. Raw socket
156
+ const socketAddr = req.socket?.remoteAddress;
157
+ if (socketAddr)
158
+ return resolve(socketAddr, "socket");
159
+ // 10. Last-resort fallback
160
+ return resolve(FALLBACK_IP, "fallback");
161
+ }
162
+
163
+ exports.getIp = getIp;
164
+ //# sourceMappingURL=getIp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getIp.js","sources":["../../../../src/utils/getIp.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -26,9 +26,10 @@ export { uploadAny, uploadArray, uploadFields, uploadSingle } from './FiUp.js';
26
26
  * Provides a clean, class-based interface for file upload middleware
27
27
  */
28
28
  class FileUploadAPI {
29
- constructor() {
29
+ constructor(config) {
30
30
  this.manager = null;
31
31
  this.initialized = false;
32
+ this.configOverride = config;
32
33
  // Use a default logger if none provided
33
34
  this.logger = initializeLogger({
34
35
  enabled: true,
@@ -38,42 +39,35 @@ class FileUploadAPI {
38
39
  });
39
40
  }
40
41
  /**
41
- * Initialize the file upload API with configuration from Configs
42
- *
43
- * This method requires the Configs class to enforce a single source of truth.
44
- * Configuration is accessed internally from Configs.get('fileUpload').
45
- *
46
- * @param configManager - The Configs class (not an instance, the class itself)
47
- *
48
- * @example
49
- * ```typescript
50
- * import { Configs } from 'xypriss';
51
- *
52
- * const upload = new FileUploadAPI();
53
- * await upload.initialize(Configs);
54
- * ```
42
+ * Internal auto-initialization method.
43
+ * Called lazily by middleware methods if not already initialized.
55
44
  */
56
- async initialize(configManager) {
57
- if (this.initialized || ConfigurationManager.get("fileUpload")?.enabled === false) {
58
- return; // Already initialized
59
- }
60
- // Access config internally from the Configs singleton
61
- const config = configManager.get("fileUpload");
62
- if (!config) {
63
- throw new Error("FileUpload configuration not found. Please set fileUpload config in createServer() options or use Configs.set()");
45
+ async autoInitialize() {
46
+ if (this.initialized)
47
+ return;
48
+ // Try to get config from override or global Configs
49
+ const config = this.configOverride || ConfigurationManager.get("fileUpload");
50
+ if (!config || config.enabled === false) {
51
+ // If explicitly disabled or no config found, we can't initialize
52
+ return;
64
53
  }
65
54
  try {
66
- this.logger.debug("server", "Initializing FileUploadAPI...");
55
+ this.logger.debug("server", "Auto-initializing FileUploadAPI...");
67
56
  this.manager = new FileUploadManager(this.logger);
68
57
  await this.manager.initialize();
69
58
  this.initialized = true;
70
- this.logger.debug("server", `FileUploadAPI initialized, enabled: ${this.manager.isEnabled()}`);
59
+ this.logger.debug("server", "FileUploadAPI auto-initialized successfully");
71
60
  }
72
61
  catch (error) {
73
- this.logger.error("server", "Failed to initialize FileUploadAPI:", error.message);
74
- throw error;
62
+ this.logger.error("server", "Failed to auto-initialize FileUploadAPI:", error.message);
75
63
  }
76
64
  }
65
+ /**
66
+ * Manually initialize the file upload API (legacy support)
67
+ */
68
+ async initialize(configManager) {
69
+ await this.autoInitialize();
70
+ }
77
71
  /**
78
72
  * Check if the file upload API is enabled
79
73
  */
@@ -81,11 +75,11 @@ class FileUploadAPI {
81
75
  return this.manager?.isEnabled() === true;
82
76
  }
83
77
  /**
84
- * Handle multer errors and convert them to proper HTTP responses
78
+ * Handle upload errors and convert them to proper HTTP responses
85
79
  */
86
- handleMulterError(err, req, res) {
80
+ handleUploadError(err, req, res) {
87
81
  if (err.code === "LIMIT_FILE_SIZE") {
88
- const maxSize = this.manager?.Upload()?.maxFileSize || 1024 * 1024;
82
+ const maxSize = this.manager?.getConfig()?.maxFileSize || 1024 * 1024;
89
83
  const maxSizeMB = (maxSize / (1024 * 1024)).toFixed(2);
90
84
  res.status(400).json({
91
85
  success: false,
@@ -99,7 +93,7 @@ class FileUploadAPI {
99
93
  });
100
94
  return;
101
95
  }
102
- if (err.code === "LIMIT_UNEXPECTED_FILE") {
96
+ if (err.code === "LIMIT_UNEXPECTED_FIELD") {
103
97
  res.status(400).json({
104
98
  success: false,
105
99
  error: "Unexpected field",
@@ -134,7 +128,7 @@ class FileUploadAPI {
134
128
  return;
135
129
  }
136
130
  }
137
- // Generic multer error
131
+ // Generic upload error
138
132
  res.status(400).json({
139
133
  success: false,
140
134
  error: "Upload error",
@@ -145,10 +139,11 @@ class FileUploadAPI {
145
139
  * Create a middleware for uploading a single file
146
140
  *
147
141
  * @param fieldname - The name of the form field containing the file
148
- * @returns Express middleware function
142
+ * @returns Middleware function
149
143
  */
150
144
  single(fieldname) {
151
- return (req, res, next) => {
145
+ return async (req, res, next) => {
146
+ await this.autoInitialize();
152
147
  if (!this.isEnabled()) {
153
148
  return res.status(500).json({
154
149
  success: false,
@@ -156,10 +151,10 @@ class FileUploadAPI {
156
151
  message: "File upload not enabled. Set fileUpload.enabled to true in server options.",
157
152
  });
158
153
  }
159
- // Use multer middleware with built-in error handling
154
+ // Use upload middleware with built-in error handling
160
155
  this.manager.single(fieldname)(req, res, (err) => {
161
156
  if (err) {
162
- this.handleMulterError(err, req, res);
157
+ this.handleUploadError(err, req, res);
163
158
  }
164
159
  else {
165
160
  next();
@@ -172,10 +167,11 @@ class FileUploadAPI {
172
167
  *
173
168
  * @param fieldname - The name of the form field containing the files
174
169
  * @param maxCount - Maximum number of files to accept (optional)
175
- * @returns Express middleware function
170
+ * @returns Middleware function
176
171
  */
177
172
  array(fieldname, maxCount) {
178
- return (req, res, next) => {
173
+ return async (req, res, next) => {
174
+ await this.autoInitialize();
179
175
  if (!this.isEnabled()) {
180
176
  return res.status(500).json({
181
177
  success: false,
@@ -185,7 +181,7 @@ class FileUploadAPI {
185
181
  }
186
182
  this.manager.array(fieldname, maxCount)(req, res, (err) => {
187
183
  if (err) {
188
- this.handleMulterError(err, req, res);
184
+ this.handleUploadError(err, req, res);
189
185
  }
190
186
  else {
191
187
  next();
@@ -197,10 +193,11 @@ class FileUploadAPI {
197
193
  * Create a middleware for uploading multiple files with different field names
198
194
  *
199
195
  * @param fields - Array of field configurations
200
- * @returns Express middleware function
196
+ * @returns Middleware function
201
197
  */
202
198
  fields(fields) {
203
- return (req, res, next) => {
199
+ return async (req, res, next) => {
200
+ await this.autoInitialize();
204
201
  if (!this.isEnabled()) {
205
202
  return res.status(500).json({
206
203
  success: false,
@@ -210,7 +207,7 @@ class FileUploadAPI {
210
207
  }
211
208
  this.manager.fields(fields)(req, res, (err) => {
212
209
  if (err) {
213
- this.handleMulterError(err, req, res);
210
+ this.handleUploadError(err, req, res);
214
211
  }
215
212
  else {
216
213
  next();
@@ -221,10 +218,11 @@ class FileUploadAPI {
221
218
  /**
222
219
  * Create a middleware for uploading any files (accepts all files)
223
220
  *
224
- * @returns Express middleware function
221
+ * @returns Middleware function
225
222
  */
226
223
  any() {
227
- return (req, res, next) => {
224
+ return async (req, res, next) => {
225
+ await this.autoInitialize();
228
226
  if (!this.isEnabled()) {
229
227
  return res.status(500).json({
230
228
  success: false,
@@ -234,7 +232,7 @@ class FileUploadAPI {
234
232
  }
235
233
  this.manager.any()(req, res, (err) => {
236
234
  if (err) {
237
- this.handleMulterError(err, req, res);
235
+ this.handleUploadError(err, req, res);
238
236
  }
239
237
  else {
240
238
  next();
@@ -1 +1 @@
1
- {"version":3,"file":"file-upload.js","sources":["../../../src/file-upload.ts"],"sourcesContent":[null],"names":["Configs"],"mappings":"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"}
1
+ {"version":3,"file":"file-upload.js","sources":["../../../src/file-upload.ts"],"sourcesContent":[null],"names":["Configs"],"mappings":"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"}