Skip to content

Commit 78ba0b6

Browse files
committed
update docs
1 parent 905d09e commit 78ba0b6

File tree

2 files changed

+16
-6
lines changed

2 files changed

+16
-6
lines changed

README.md

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -168,11 +168,16 @@ npx simplesteps compile workflow.ts -o output/ --query-language jsonpath
168168
| `await Steps.map(items, cb, opts?)` | Map state (results, closures, MaxConcurrency, Retry) |
169169
| `for (const item of Steps.items(arr, opts?))` | Map state (for...of + MaxConcurrency, Retry) |
170170
| `await Promise.all([...])` | Parallel state |
171+
| `await Steps.parallel(branches, { retry })` | Parallel state with retry |
171172
| Deferred-await (`const p = call(); await p`) | Parallel state (auto-batched) |
172173
| `await Steps.delay({ seconds: 30 })` | Wait state |
174+
| `Steps.succeed()` | Succeed state (early termination) |
173175
| `throw new Error(msg)` | Fail state |
174176
| `return value` | Succeed / End state |
175177
| `try { ... } catch (e) { ... }` | Catch rules |
178+
| `await Steps.distributedMap(items, cb, opts)` | Map state (DISTRIBUTED) |
179+
| `await http.invoke({ ApiEndpoint, Method })` | Task (HTTPS Endpoint) |
180+
| `const { a, ...rest } = await svc.call(input)` | Object destructuring with rest |
176181
| `.call(input, { retry, timeoutSeconds, heartbeatSeconds })` | Retry / Timeout / Heartbeat |
177182
| `` `Hello ${name}` `` | `States.Format` / string concatenation |
178183
| `a + b`, `a * b`, `a - b`, `a / b`, `a % b` | Native arithmetic (JSONata) / `States.MathAdd` (JSONPath) |
@@ -200,13 +205,15 @@ npx simplesteps compile workflow.ts -o output/ --query-language jsonpath
200205
## Compiler Features
201206

202207
- **Dual query language support** — JSONata (default) and JSONPath, switchable via `--query-language`
203-
- **55+ JS method → JSONata mappings** — string, math, array, type conversion, and higher-order functions compile directly
208+
- **64+ JS method → JSONata mappings** — string, math, array, type conversion, higher-order functions, and operators compile directly
204209
- **Lambda expression analysis** — pure callbacks in `.map()`, `.filter()`, `.reduce()` auto-compile to JSONata higher-order functions
205210
- **Whole-program data flow analysis** with constant propagation lattice across modules
206211
- **Cross-file import resolution** with demand-driven analysis and cycle detection
207212
- **Pure function inlining** for compile-time constant derivation
208-
- **15 AWS service bindings**: Lambda, DynamoDB, SQS, SNS, EventBridge, S3, Secrets Manager, SSM, ECS, Bedrock, Glue, CodeBuild, Athena, Batch, StepFunction + `Steps.awsSdk()` for direct SDK integration
209-
- **CDK token propagation** through CloudFormation intrinsics (`Fn::GetAtt`, `Ref`)
213+
- **64 typed AWS service bindings** — 16 with optimized integrations (Lambda, DynamoDB, SQS, SNS, EventBridge, S3, Secrets Manager, SSM, ECS, Bedrock, Glue, CodeBuild, Athena, Batch, StepFunction, HttpEndpoint) + Activity tasks + 48 SDK-generated bindings with full type signatures + `Steps.awsSdk()` escape hatch
214+
- **CDK token propagation** through CloudFormation intrinsics (`Fn::GetAtt`, `Ref`) with synth-time expression auto-detection
215+
- **Source map comments** — optional `sourceMap` flag annotates ASL states with TypeScript source locations
216+
- **Object destructuring** with rest patterns for extracting service call results
210217
- **Substep inlining** for reusable workflow fragments
211218
- **40+ diagnostic codes** with root-cause attribution and poisoned-value chain tracking
212219

@@ -229,7 +236,7 @@ npx simplesteps compile workflow.ts -o output/ --query-language jsonpath
229236
## Examples
230237

231238
- [Starter projects](examples/starters/) — CLI, library API, and CDK templates
232-
- [Showcase](examples/showcase/)38 examples covering every language feature, including JSONata methods
239+
- [Showcase](examples/showcase/)46 examples covering every language feature, including JSONata methods
233240

234241
## License
235242

docs/services.md

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,14 @@
11
# Services
22

3-
SimpleSteps provides typed bindings for 15 AWS services plus HTTPS Endpoints, Activity tasks, a callback pattern (`.waitForTaskToken`), and a generic escape hatch (`Steps.awsSdk()`) for any AWS service.
3+
SimpleSteps provides typed bindings for 64 AWS services — 16 with optimized integrations (including HTTPS Endpoints), 48 SDK-generated with full type signatures, plus Activity tasks, a callback pattern (`.waitForTaskToken`), and a generic escape hatch (`Steps.awsSdk()`) for any AWS service.
44

55
All service bindings are compile-time markers. They provide TypeScript types for the compiler and throw if called at runtime.
66

77
```typescript
8-
import { Lambda, DynamoDB, S3, SQS, SNS, StepFunction, EventBridge, SecretsManager, SSM } from '@simplesteps/core/runtime/services';
8+
import {
9+
Lambda, DynamoDB, S3, SQS, SNS, StepFunction, EventBridge, SecretsManager, SSM,
10+
ECS, Bedrock, Glue, CodeBuild, Athena, Batch, HttpEndpoint, Activity,
11+
} from '@simplesteps/core/runtime/services';
912
```
1013

1114
---

0 commit comments

Comments
 (0)