@stdy/cli 0.15.1 → 0.15.3

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 (2) hide show
  1. package/README.md +40 -0
  2. package/package.json +6 -6
package/README.md CHANGED
@@ -1,10 +1,16 @@
1
1
  # Steady
2
2
 
3
+ _Pronounced /ˈstiːdi/, like "steed-y"_
4
+
3
5
  OpenAPI 3.0/3.1 mock server built to fast and reliable. Validates requests
4
6
  against specs and generates responses from schemas or examples.
5
7
 
6
8
  Note: this project is still experiemental and not ready for production use.
7
9
 
10
+ ![](./assets/logo.png)
11
+
12
+ _Note from the artist: the sword is to fight off bugs in your sdks_
13
+
8
14
  ## Installation
9
15
 
10
16
  ```bash
@@ -61,6 +67,8 @@ Validator Options:
61
67
  --validator-strict-oneof Require exactly one oneOf variant to match
62
68
  --validator-query-array-format=<fmt> Array query param serialization (see below)
63
69
  --validator-query-object-format=<fmt> Object query param serialization (see below)
70
+ --validator-form-array-format=<fmt> Array form field serialization (see below)
71
+ --validator-form-object-format=<fmt> Object form field serialization (see below)
64
72
 
65
73
  Generator Options:
66
74
  --generator-array-size=<n> Exact size for all generated arrays
@@ -97,6 +105,32 @@ per-request via headers.
97
105
  | `brackets` | `id[role]=admin&id[firstName]=Alex` | `style=deepObject` |
98
106
  | `dots` | `id.role=admin&id.firstName=Alex` | Non-standard (SDK compat) |
99
107
 
108
+ ### Form Parameter Serialization
109
+
110
+ Form body parameters (application/x-www-form-urlencoded) use the same formats as
111
+ query parameters. Configure via CLI flags or per-request headers.
112
+
113
+ **Array formats** (`--validator-form-array-format`):
114
+
115
+ | Format | Example | OpenAPI Equivalent |
116
+ | ---------- | ------------------------ | ------------------------------ |
117
+ | `auto` | Read from spec (default) | - |
118
+ | `repeat` | `tags=a&tags=b` | `style=form, explode=true` |
119
+ | `comma` | `tags=a,b` | `style=form, explode=false` |
120
+ | `space` | `tags=a%20b` | `style=spaceDelimited` |
121
+ | `pipe` | `tags=a\|b` | `style=pipeDelimited` |
122
+ | `brackets` | `tags[]=a&tags[]=b` | PHP/Rails style (non-standard) |
123
+
124
+ **Object formats** (`--validator-form-object-format`):
125
+
126
+ | Format | Example | OpenAPI Equivalent |
127
+ | ------------ | ------------------------------ | --------------------------- |
128
+ | `auto` | Read from spec (default) | - |
129
+ | `flat` | `name=sam&age=30` | `style=form, explode=true` |
130
+ | `flat-comma` | `id=role,admin,firstName,Alex` | `style=form, explode=false` |
131
+ | `brackets` | `user[name]=sam` | `style=deepObject` |
132
+ | `dots` | `user.name=sam` | Non-standard (SDK compat) |
133
+
100
134
  ### Port Configuration
101
135
 
102
136
  The server port is determined in this order:
@@ -164,6 +198,8 @@ Override server behavior for individual requests:
164
198
  | `X-Steady-Mode` | Override validation mode: `strict` or `relaxed` |
165
199
  | `X-Steady-Query-Array-Format` | Override array query param serialization format |
166
200
  | `X-Steady-Query-Object-Format` | Override object query param serialization format |
201
+ | `X-Steady-Form-Array-Format` | Override array form field serialization format |
202
+ | `X-Steady-Form-Object-Format` | Override object form field serialization format |
167
203
  | `X-Steady-Array-Size` | Override array size (sets both min and max) |
168
204
  | `X-Steady-Array-Min` | Override minimum array size |
169
205
  | `X-Steady-Array-Max` | Override maximum array size |
@@ -419,3 +455,7 @@ deno task lint # Lint
419
455
  deno task fmt # Format
420
456
  deno task check-boundaries # Verify package dependencies
421
457
  ```
458
+
459
+ ## Acknowledgements
460
+
461
+ Thanks to Stephen Downward for contributing the logo design.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@stdy/cli",
3
- "version": "0.15.1",
3
+ "version": "0.15.3",
4
4
  "description": "OpenAPI 3 mock server. Validates SDKs against OpenAPI specs with clear error attribution.",
5
5
  "license": "Elastic-2.0",
6
6
  "repository": {
@@ -29,10 +29,10 @@
29
29
  "node": ">=14.0.0"
30
30
  },
31
31
  "optionalDependencies": {
32
- "@stdy/cli-linux-x64": "0.15.1",
33
- "@stdy/cli-linux-arm64": "0.15.1",
34
- "@stdy/cli-darwin-x64": "0.15.1",
35
- "@stdy/cli-darwin-arm64": "0.15.1",
36
- "@stdy/cli-win32-x64": "0.15.1"
32
+ "@stdy/cli-linux-x64": "0.15.3",
33
+ "@stdy/cli-linux-arm64": "0.15.3",
34
+ "@stdy/cli-darwin-x64": "0.15.3",
35
+ "@stdy/cli-darwin-arm64": "0.15.3",
36
+ "@stdy/cli-win32-x64": "0.15.3"
37
37
  }
38
38
  }