@http-forge/core 0.2.11 → 0.2.13

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.
@@ -66,6 +66,20 @@ export declare class VariableResolver {
66
66
  * Handles: @ (no-input), string literals, $dynamic variable, variable name, JS expression
67
67
  */
68
68
  private resolveFilterInput;
69
+ /**
70
+ * Deserialize a single value: strip \x1E type marker and JSON.parse if present.
71
+ * Returns the native type for marked values, or the raw value as-is.
72
+ */
73
+ private deserializeValue;
74
+ /**
75
+ * Deserialize all type-marked variables for expression evaluation.
76
+ */
77
+ private deserializeVariables;
78
+ /**
79
+ * Resolve property/index access on a value.
80
+ * Supports: [0], ["key"], .prop, and chained access like [0].name or .a.b
81
+ */
82
+ private resolvePropertyAccess;
69
83
  /**
70
84
  * Escape special characters for string context
71
85
  */
@@ -37,12 +37,15 @@ export declare class ScriptExecutor implements IScriptExecutor {
37
37
  * Used by RequestScriptSession for pre-request and test scripts
38
38
  */
39
39
  private createCommonContext;
40
+ /** Prefix marking a JSON-serialized non-string value */
41
+ private static readonly JSON_TYPE_MARKER;
40
42
  /**
41
- * Serialize a value for storage. Non-string values are JSON-stringified (Postman-compatible).
43
+ * Serialize a value for storage. Non-string values are JSON-stringified with a type marker.
42
44
  */
43
45
  private serializeValue;
44
46
  /**
45
- * Deserialize a stored value. Attempts JSON.parse; returns raw string on failure.
47
+ * Deserialize a stored value. Values with the type marker are JSON-parsed back to native types.
48
+ * Values without the marker (plain strings) are returned as-is.
46
49
  */
47
50
  private deserializeValue;
48
51
  /**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@http-forge/core",
3
- "version": "0.2.11",
3
+ "version": "0.2.13",
4
4
  "description": "Headless HTTP testing engine with Postman collection support, dynamic variables, and script-based automation.",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.mjs",