@auto-engineer/server-generator-apollo-emmett 1.130.0 → 1.134.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.
- package/.turbo/turbo-build.log +1 -1
- package/.turbo/turbo-test.log +6 -6
- package/.turbo/turbo-type-check.log +1 -1
- package/CHANGELOG.md +168 -0
- package/dist/src/codegen/extract/data-sink.d.ts +1 -0
- package/dist/src/codegen/extract/data-sink.d.ts.map +1 -1
- package/dist/src/codegen/extract/data-sink.js +9 -0
- package/dist/src/codegen/extract/data-sink.js.map +1 -1
- package/dist/src/codegen/extract/imports.d.ts +0 -5
- package/dist/src/codegen/extract/imports.d.ts.map +1 -1
- package/dist/src/codegen/extract/imports.js +0 -7
- package/dist/src/codegen/extract/imports.js.map +1 -1
- package/dist/src/codegen/extract/projection.d.ts +6 -1
- package/dist/src/codegen/extract/projection.d.ts.map +1 -1
- package/dist/src/codegen/extract/projection.js +17 -0
- package/dist/src/codegen/extract/projection.js.map +1 -1
- package/dist/src/codegen/extract/query.d.ts +8 -2
- package/dist/src/codegen/extract/query.d.ts.map +1 -1
- package/dist/src/codegen/extract/query.js +36 -0
- package/dist/src/codegen/extract/query.js.map +1 -1
- package/dist/src/codegen/scaffoldFromSchema.d.ts.map +1 -1
- package/dist/src/codegen/scaffoldFromSchema.js +13 -5
- package/dist/src/codegen/scaffoldFromSchema.js.map +1 -1
- package/dist/src/codegen/templates/query/events.specs.ts +112 -0
- package/dist/src/codegen/templates/query/events.ts.ejs +17 -0
- package/dist/src/codegen/templates/query/projection.specs.ts +323 -0
- package/dist/src/codegen/templates/query/projection.ts.ejs +27 -4
- package/dist/src/codegen/templates/query/query.resolver.specs.ts +242 -0
- package/dist/src/codegen/templates/query/query.resolver.ts.ejs +8 -4
- package/dist/src/commands/generate-server.js +5 -5
- package/dist/src/commands/generate-server.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +4 -4
- package/src/codegen/extract/data-sink.specs.ts +24 -0
- package/src/codegen/extract/data-sink.ts +10 -0
- package/src/codegen/extract/imports.ts +0 -8
- package/src/codegen/extract/projection.specs.ts +212 -0
- package/src/codegen/extract/projection.ts +22 -1
- package/src/codegen/extract/query.specs.ts +137 -0
- package/src/codegen/extract/query.ts +46 -2
- package/src/codegen/scaffoldFromSchema.ts +18 -3
- package/src/codegen/templates/query/events.specs.ts +112 -0
- package/src/codegen/templates/query/events.ts.ejs +17 -0
- package/src/codegen/templates/query/projection.specs.ts +323 -0
- package/src/codegen/templates/query/projection.ts.ejs +27 -4
- package/src/codegen/templates/query/query.resolver.specs.ts +242 -0
- package/src/codegen/templates/query/query.resolver.ts.ejs +8 -4
- package/src/commands/generate-server.ts +5 -5
package/.turbo/turbo-build.log
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
|
|
2
|
-
> @auto-engineer/server-generator-apollo-emmett@1.
|
|
2
|
+
> @auto-engineer/server-generator-apollo-emmett@1.134.0 build /home/runner/work/auto-engineer/auto-engineer/packages/server-generator-apollo-emmett
|
|
3
3
|
> tsc && tsx ../../scripts/fix-esm-imports.ts && rm -rf dist/src/codegen/templates && mkdir -p dist/src/codegen && cp -r src/codegen/templates dist/src/codegen/templates && cp src/server.ts dist/src && cp -r src/utils dist/src && cp -r src/domain dist/src
|
|
4
4
|
|
|
5
5
|
Fixed ESM imports in dist/
|
package/.turbo/turbo-test.log
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
|
|
2
|
-
> @auto-engineer/server-generator-apollo-emmett@1.
|
|
2
|
+
> @auto-engineer/server-generator-apollo-emmett@1.133.0 test /home/runner/work/auto-engineer/auto-engineer/packages/server-generator-apollo-emmett
|
|
3
3
|
> vitest run --reporter=dot
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
[1m[46m RUN [49m[22m [36mv3.2.4 [39m[90m/home/runner/work/auto-engineer/auto-engineer/packages/server-generator-apollo-emmett[39m
|
|
7
7
|
|
|
8
|
-
[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[2m[90m-[39m[22m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m
|
|
8
|
+
[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[2m[90m-[39m[22m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m[33m[39m[32m·[39m
|
|
9
9
|
|
|
10
|
-
[2m Test Files [22m [1m[
|
|
11
|
-
[2m Tests [22m [1m[
|
|
12
|
-
[2m Start at [22m
|
|
13
|
-
[2m Duration [22m
|
|
10
|
+
[2m Test Files [22m [1m[32m38 passed[39m[22m[2m | [22m[33m1 skipped[39m[90m (39)[39m
|
|
11
|
+
[2m Tests [22m [1m[32m293 passed[39m[22m[2m | [22m[33m1 skipped[39m[90m (294)[39m
|
|
12
|
+
[2m Start at [22m 17:38:53
|
|
13
|
+
[2m Duration [22m 28.44s[2m (transform 3.46s, setup 0ms, collect 58.22s, tests 12.82s, environment 12ms, prepare 5.22s)[22m
|
|
14
14
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
|
|
2
|
-
> @auto-engineer/server-generator-apollo-emmett@1.
|
|
2
|
+
> @auto-engineer/server-generator-apollo-emmett@1.133.0 type-check /home/runner/work/auto-engineer/auto-engineer/packages/server-generator-apollo-emmett
|
|
3
3
|
> tsc --noEmit --project tsconfig.json
|
|
4
4
|
|
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,173 @@
|
|
|
1
1
|
# @auto-engineer/server-generator-apollo-emmett
|
|
2
2
|
|
|
3
|
+
## 1.134.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [`6e7aea4`](https://github.com/BeOnAuto/auto-engineer/commit/6e7aea4e81b3e7050211b68abdd346d78b255c2e) Thanks [@osamanar](https://github.com/osamanar)! - - Added full Python port of the react-gen package using Google ADK, enabling React app generation without Node-based ADK
|
|
8
|
+
- Leverages native Python ADK features including skill toolsets, loop escalation, LiteLlm provider routing, and callable instructions for improved prompt handling
|
|
9
|
+
- Generates complete React + Vite + Tailwind + shadcn/ui applications from a domain model in approximately 4.5 minutes
|
|
10
|
+
|
|
11
|
+
- [`574fd54`](https://github.com/BeOnAuto/auto-engineer/commit/574fd540c4db876773b4c0e042a8ce56aabcf1f5) Thanks [@osamanar](https://github.com/osamanar)! - - Migrated from Google ADK to Vercel AI SDK for more reliable and flexible AI orchestration
|
|
12
|
+
- Added 12 new skills from the Python port, bringing the JS package to the full 16-skill set
|
|
13
|
+
- Rewrote all agents as plain async functions, replacing complex class hierarchies with simpler patterns
|
|
14
|
+
- Added bash-tool integration for dynamic skill discovery and loading
|
|
15
|
+
|
|
16
|
+
- [`dc22612`](https://github.com/BeOnAuto/auto-engineer/commit/dc22612671d72076e31d36e2db4465fcab8a23f5) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - Added optional GraphQL schema field and direct model object support to the React app generation command, enabling more flexible input options
|
|
17
|
+
- Fixed graph label enrichment so dynamically-added command nodes are correctly labeled in the pipeline visualization
|
|
18
|
+
|
|
19
|
+
- [`31e8e1b`](https://github.com/BeOnAuto/auto-engineer/commit/31e8e1ba59ea589d6cb6fd9f615f19d3b97cb182) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - Added support for passing a model object directly to GenerateReactApp, removing the requirement to write the model to disk first
|
|
20
|
+
- Aligned GenerateReactApp's interface with GenerateServer, allowing consistent usage across both commands
|
|
21
|
+
|
|
22
|
+
- [`db17d33`](https://github.com/BeOnAuto/auto-engineer/commit/db17d337150f16a45336aab71a953418622b0fda) Thanks [@github-actions[bot]](https://github.com/github-actions%5Bbot%5D)! - - **react-gen**: add landing page agent, validation pipeline, and starter updates
|
|
23
|
+
- **server-generator-apollo-emmett**: wire mappings through scaffoldFromSchema
|
|
24
|
+
- **server-generator-apollo-emmett**: add ArgMapping with operator support
|
|
25
|
+
- **server-generator-apollo-emmett**: update query resolver template for value-mapped arg filtering
|
|
26
|
+
- **server-generator-apollo-emmett**: update projection template for per-event getDocumentId
|
|
27
|
+
|
|
28
|
+
### Patch Changes
|
|
29
|
+
|
|
30
|
+
- [`beb2621`](https://github.com/BeOnAuto/auto-engineer/commit/beb2621e4e3183fbc9ac573d75bb3371f210313a) Thanks [@osamanar](https://github.com/osamanar)! - - Removed the Python ADK port package, as the JavaScript package now provides full feature parity after migrating to Vercel AI SDK with bash-tool skills
|
|
31
|
+
|
|
32
|
+
- [`633f575`](https://github.com/BeOnAuto/auto-engineer/commit/633f575fbc62fc6c59e7a98e8be725124d49e822) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - Fixed linting and formatting errors in design-system scripts for the React generator
|
|
33
|
+
|
|
34
|
+
- [`0572671`](https://github.com/BeOnAuto/auto-engineer/commit/05726719543c6f574c03ef7201ddc0f6513f061d) Thanks [@osamanar](https://github.com/osamanar)! - - Raised cognitive complexity threshold to unblock CI pipeline
|
|
35
|
+
|
|
36
|
+
- [`b54575c`](https://github.com/BeOnAuto/auto-engineer/commit/b54575c8bc5add295158e8dd9e82c74f112d428c) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - Decoupled front-end and back-end build pipelines so they can run independently
|
|
37
|
+
- Renamed build commands to build:frontend and build:backend for clarity
|
|
38
|
+
- Front-end build is now dispatched externally rather than chained to back-end generation
|
|
39
|
+
|
|
40
|
+
- [`70e80cd`](https://github.com/BeOnAuto/auto-engineer/commit/70e80cdd8344b0cf68ff8a5746284e705aa43a64) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - Updated project documentation to mark completed work items
|
|
41
|
+
|
|
42
|
+
- [`c00fcc8`](https://github.com/BeOnAuto/auto-engineer/commit/c00fcc8496a5bd4d2affe10635fb8dcfbdce0cf9) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - Fixed graph label enrichment so dynamically-added command nodes correctly receive display names
|
|
43
|
+
|
|
44
|
+
- [`14d4dc7`](https://github.com/BeOnAuto/auto-engineer/commit/14d4dc72c8a0054936edab8f6238ffb9eb65625e) Thanks [@osamanar](https://github.com/osamanar)! - - Suppressed cognitive complexity lint warning in the ESM imports fix script
|
|
45
|
+
|
|
46
|
+
- [`8de58a2`](https://github.com/BeOnAuto/auto-engineer/commit/8de58a29db06138aba6da42f2735f7529dbb9e03) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - Added planning document for decoupling front-end and back-end build processes
|
|
47
|
+
|
|
48
|
+
- [`8c4df3a`](https://github.com/BeOnAuto/auto-engineer/commit/8c4df3af6645b33465bef95942946e5ce87e6e41) Thanks [@osamanar](https://github.com/osamanar)! - - Reduced cognitive complexity in the ESM imports fix script for improved maintainability
|
|
49
|
+
|
|
50
|
+
- Updated dependencies [[`beb2621`](https://github.com/BeOnAuto/auto-engineer/commit/beb2621e4e3183fbc9ac573d75bb3371f210313a), [`6e7aea4`](https://github.com/BeOnAuto/auto-engineer/commit/6e7aea4e81b3e7050211b68abdd346d78b255c2e), [`633f575`](https://github.com/BeOnAuto/auto-engineer/commit/633f575fbc62fc6c59e7a98e8be725124d49e822), [`574fd54`](https://github.com/BeOnAuto/auto-engineer/commit/574fd540c4db876773b4c0e042a8ce56aabcf1f5), [`dc22612`](https://github.com/BeOnAuto/auto-engineer/commit/dc22612671d72076e31d36e2db4465fcab8a23f5), [`0572671`](https://github.com/BeOnAuto/auto-engineer/commit/05726719543c6f574c03ef7201ddc0f6513f061d), [`b54575c`](https://github.com/BeOnAuto/auto-engineer/commit/b54575c8bc5add295158e8dd9e82c74f112d428c), [`70e80cd`](https://github.com/BeOnAuto/auto-engineer/commit/70e80cdd8344b0cf68ff8a5746284e705aa43a64), [`c00fcc8`](https://github.com/BeOnAuto/auto-engineer/commit/c00fcc8496a5bd4d2affe10635fb8dcfbdce0cf9), [`14d4dc7`](https://github.com/BeOnAuto/auto-engineer/commit/14d4dc72c8a0054936edab8f6238ffb9eb65625e), [`8de58a2`](https://github.com/BeOnAuto/auto-engineer/commit/8de58a29db06138aba6da42f2735f7529dbb9e03), [`31e8e1b`](https://github.com/BeOnAuto/auto-engineer/commit/31e8e1ba59ea589d6cb6fd9f615f19d3b97cb182), [`db17d33`](https://github.com/BeOnAuto/auto-engineer/commit/db17d337150f16a45336aab71a953418622b0fda), [`8c4df3a`](https://github.com/BeOnAuto/auto-engineer/commit/8c4df3af6645b33465bef95942946e5ce87e6e41)]:
|
|
51
|
+
- @auto-engineer/message-bus@1.134.0
|
|
52
|
+
- @auto-engineer/narrative@1.134.0
|
|
53
|
+
|
|
54
|
+
## 1.133.0
|
|
55
|
+
|
|
56
|
+
### Minor Changes
|
|
57
|
+
|
|
58
|
+
- [`27571bf`](https://github.com/BeOnAuto/auto-engineer/commit/27571bf23744020052fe311284b2f16915c93be6) Thanks [@osamanar](https://github.com/osamanar)! - - Added landing page agent for automated landing page generation
|
|
59
|
+
- Introduced validation pipeline for generated output quality checks
|
|
60
|
+
- Updated starter templates with latest configuration and defaults
|
|
61
|
+
|
|
62
|
+
- [`711787a`](https://github.com/BeOnAuto/auto-engineer/commit/711787a071ac2f538f53674c5b9323ac699d513c) Thanks [@github-actions[bot]](https://github.com/github-actions%5Bbot%5D)! - - **server-generator-apollo-emmett**: wire mappings through scaffoldFromSchema
|
|
63
|
+
- **server-generator-apollo-emmett**: add ArgMapping with operator support
|
|
64
|
+
- **server-generator-apollo-emmett**: update query resolver template for value-mapped arg filtering
|
|
65
|
+
- **server-generator-apollo-emmett**: update projection template for per-event getDocumentId
|
|
66
|
+
- **server-generator-apollo-emmett**: wire eventIdFieldMap and argToStateFieldMap through templates
|
|
67
|
+
|
|
68
|
+
### Patch Changes
|
|
69
|
+
|
|
70
|
+
- [`374aeed`](https://github.com/BeOnAuto/auto-engineer/commit/374aeed0d7928583e3c97d624e99272e469fc56d) Thanks [@osamanar](https://github.com/osamanar)! - - Optimized react generation pipeline from ~8 minutes to ~3 minutes by using frozen lockfile and reducing validation iterations
|
|
71
|
+
- Fixed landing page navigation by injecting route paths and using proper Link components instead of plain buttons
|
|
72
|
+
- Batched theme validation errors into a single response for fewer iterations
|
|
73
|
+
|
|
74
|
+
- [`75f92f9`](https://github.com/BeOnAuto/auto-engineer/commit/75f92f9978eed1a913601a80b0d153a59d42646f) Thanks [@osamanar](https://github.com/osamanar)! - - Fixed landing page generation reliability by using a fixed file path, preventing the AI from writing to incorrect locations
|
|
75
|
+
- Resolved issue where landing pages could be flagged as missing and replaced with lower-quality versions
|
|
76
|
+
|
|
77
|
+
- [`8ee6686`](https://github.com/BeOnAuto/auto-engineer/commit/8ee6686b15e40c0357d2ebdbb1dbfb84a966fcb5) Thanks [@osamanar](https://github.com/osamanar)! - - Fixed 100+ code formatting and lint issues across the monorepo
|
|
78
|
+
- Resolved pre-existing type errors in component implementation classes
|
|
79
|
+
- Excluded generated starter and output directories from lint checks
|
|
80
|
+
- Updated dependencies [[`374aeed`](https://github.com/BeOnAuto/auto-engineer/commit/374aeed0d7928583e3c97d624e99272e469fc56d), [`27571bf`](https://github.com/BeOnAuto/auto-engineer/commit/27571bf23744020052fe311284b2f16915c93be6), [`75f92f9`](https://github.com/BeOnAuto/auto-engineer/commit/75f92f9978eed1a913601a80b0d153a59d42646f), [`711787a`](https://github.com/BeOnAuto/auto-engineer/commit/711787a071ac2f538f53674c5b9323ac699d513c), [`8ee6686`](https://github.com/BeOnAuto/auto-engineer/commit/8ee6686b15e40c0357d2ebdbb1dbfb84a966fcb5)]:
|
|
81
|
+
- @auto-engineer/message-bus@1.133.0
|
|
82
|
+
- @auto-engineer/narrative@1.133.0
|
|
83
|
+
|
|
84
|
+
## 1.132.0
|
|
85
|
+
|
|
86
|
+
### Minor Changes
|
|
87
|
+
|
|
88
|
+
- [`7ab10bd`](https://github.com/BeOnAuto/auto-engineer/commit/7ab10bd6a89fc0c0612a9ec1708479093506ae4e) Thanks [@github-actions[bot]](https://github.com/github-actions%5Bbot%5D)! - - **narrative**: add buildTypeInfoFromMessages for messages-to-TypeInfo map conversion
|
|
89
|
+
- **narrative**: add messageToTypeInfo adapter for Message-to-TypeInfo conversion
|
|
90
|
+
- **server-implementer**: detect forbidden type assertions in AI-generated code
|
|
91
|
+
- **narrative**: resolve InferredType via messages-derived fallback in createTypeResolver
|
|
92
|
+
- **server-generator-apollo-emmett**: generate events.ts for query slices with orphan events
|
|
93
|
+
|
|
94
|
+
- [`f3c4419`](https://github.com/BeOnAuto/auto-engineer/commit/f3c4419bceaf39026399d903fdf6a39917d8c7ad) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - Fixed InferredType sentinels leaking into output models when no TypeScript AST is available by falling back to message-derived type resolution
|
|
95
|
+
- Added events.ts generation for query slices, fixing broken imports when query projections reference events with no producing command slice
|
|
96
|
+
- Added detection of forbidden type assertions (e.g. `as` casts) in AI-generated code, triggering automatic retries with guidance to use typed variables instead
|
|
97
|
+
|
|
98
|
+
- [`81332d2`](https://github.com/BeOnAuto/auto-engineer/commit/81332d21e016330f917fb2a6a9854e5d68bbb2ed) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - Added support for wiring field mappings through schema scaffolding for queries
|
|
99
|
+
- Operator mappings like gte/lte now render as comparison operators (< and >) in generated resolver code
|
|
100
|
+
|
|
101
|
+
- [`a9067d1`](https://github.com/BeOnAuto/auto-engineer/commit/a9067d1113be00adcffcaab6c0b75a5d2baa53d5) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - Added per-event ID field resolution via buildEventIdFieldMap, enabling each event type to specify its own ID field mapping
|
|
102
|
+
|
|
103
|
+
- [`d6bce3a`](https://github.com/BeOnAuto/auto-engineer/commit/d6bce3af9358cc54b13a3750bd815b5e3339c31a) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - Updated query resolver template to support value-mapped argument filtering for more precise data querying
|
|
104
|
+
|
|
105
|
+
- [`619554e`](https://github.com/BeOnAuto/auto-engineer/commit/619554e6fe971ee5a51b8fe64607322e7e8bcaeb) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - Added argument mapping with operator support for Apollo/Emmett server generation, enabling explicit control over how query arguments map to state fields with configurable operators (e.g., equality, greater than)
|
|
106
|
+
- Refactored argument-to-state field mapping to support rich mapping entries with operators instead of simple string-to-string mappings
|
|
107
|
+
- Added fallback behavior that defaults to equality operator when no explicit mapping is provided
|
|
108
|
+
|
|
109
|
+
- [`60a781f`](https://github.com/BeOnAuto/auto-engineer/commit/60a781f4c14d2d42d2412e61c0b070d37cd5e97c) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - Added support for wiring event ID field maps and argument-to-state field maps through code generation templates
|
|
110
|
+
|
|
111
|
+
- [`f71ce9e`](https://github.com/BeOnAuto/auto-engineer/commit/f71ce9e154c548797916f1708d2fef8a2c8546fb) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - Updated projection template to support per-event document ID resolution
|
|
112
|
+
|
|
113
|
+
- [`2b2d34b`](https://github.com/BeOnAuto/auto-engineer/commit/2b2d34b56790eb8f355e3291c9e0dc4e105cd976) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - Added extraction of stream ID fields from stream pattern variables in the Apollo Emmett server generator
|
|
114
|
+
|
|
115
|
+
- [`000dc5e`](https://github.com/BeOnAuto/auto-engineer/commit/000dc5e633d663a7fffd24e9442e264bab7648ae) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - Added value-matched argument filtering via field map builder for Apollo Emmett server generation
|
|
116
|
+
|
|
117
|
+
### Patch Changes
|
|
118
|
+
|
|
119
|
+
- [`2845c26`](https://github.com/BeOnAuto/auto-engineer/commit/2845c26e542cccf70c7df4cd17e5e08d9b8271b4) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - Added integration test coverage for multi-event projection ID field handling
|
|
120
|
+
|
|
121
|
+
- [`e03eea6`](https://github.com/BeOnAuto/auto-engineer/commit/e03eea6716689f1566890454d3763bc17ba2228c) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - This single commit only updates the ketchup plan file (a planning document). There are no user-facing code changes.
|
|
122
|
+
- Finalized implementation plan for per-event ID field resolution and argument mapping improvements
|
|
123
|
+
|
|
124
|
+
- [`5a7117b`](https://github.com/BeOnAuto/auto-engineer/commit/5a7117b068b2b71091f04d84697c0404495756a2) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - Added optional operator support to mapping entry schema for more flexible field mapping configurations
|
|
125
|
+
|
|
126
|
+
- [`19e2ef6`](https://github.com/BeOnAuto/auto-engineer/commit/19e2ef6e04d5722bd4097ec9332fdd3fe6fb7cda) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - Added integration test for value-mapped argument-to-state filtering in Apollo/Emmett server generator
|
|
127
|
+
|
|
128
|
+
- [`3e8ede9`](https://github.com/BeOnAuto/auto-engineer/commit/3e8ede919ba6544a057dead7cbbb5135e5e4bef4) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - Added planning for explicit argument-to-field mapping with operator support in query resolvers
|
|
129
|
+
|
|
130
|
+
- Updated dependencies [[`7ab10bd`](https://github.com/BeOnAuto/auto-engineer/commit/7ab10bd6a89fc0c0612a9ec1708479093506ae4e), [`2845c26`](https://github.com/BeOnAuto/auto-engineer/commit/2845c26e542cccf70c7df4cd17e5e08d9b8271b4), [`e03eea6`](https://github.com/BeOnAuto/auto-engineer/commit/e03eea6716689f1566890454d3763bc17ba2228c), [`f3c4419`](https://github.com/BeOnAuto/auto-engineer/commit/f3c4419bceaf39026399d903fdf6a39917d8c7ad), [`81332d2`](https://github.com/BeOnAuto/auto-engineer/commit/81332d21e016330f917fb2a6a9854e5d68bbb2ed), [`a9067d1`](https://github.com/BeOnAuto/auto-engineer/commit/a9067d1113be00adcffcaab6c0b75a5d2baa53d5), [`d6bce3a`](https://github.com/BeOnAuto/auto-engineer/commit/d6bce3af9358cc54b13a3750bd815b5e3339c31a), [`619554e`](https://github.com/BeOnAuto/auto-engineer/commit/619554e6fe971ee5a51b8fe64607322e7e8bcaeb), [`5a7117b`](https://github.com/BeOnAuto/auto-engineer/commit/5a7117b068b2b71091f04d84697c0404495756a2), [`60a781f`](https://github.com/BeOnAuto/auto-engineer/commit/60a781f4c14d2d42d2412e61c0b070d37cd5e97c), [`f71ce9e`](https://github.com/BeOnAuto/auto-engineer/commit/f71ce9e154c548797916f1708d2fef8a2c8546fb), [`19e2ef6`](https://github.com/BeOnAuto/auto-engineer/commit/19e2ef6e04d5722bd4097ec9332fdd3fe6fb7cda), [`3e8ede9`](https://github.com/BeOnAuto/auto-engineer/commit/3e8ede919ba6544a057dead7cbbb5135e5e4bef4), [`2b2d34b`](https://github.com/BeOnAuto/auto-engineer/commit/2b2d34b56790eb8f355e3291c9e0dc4e105cd976), [`000dc5e`](https://github.com/BeOnAuto/auto-engineer/commit/000dc5e633d663a7fffd24e9442e264bab7648ae)]:
|
|
131
|
+
- @auto-engineer/message-bus@1.132.0
|
|
132
|
+
- @auto-engineer/narrative@1.132.0
|
|
133
|
+
|
|
134
|
+
## 1.131.0
|
|
135
|
+
|
|
136
|
+
### Minor Changes
|
|
137
|
+
|
|
138
|
+
- [`8791296`](https://github.com/BeOnAuto/auto-engineer/commit/8791296a126f213d171c6dd7d2d4738c0fc2a19e) Thanks [@github-actions[bot]](https://github.com/github-actions%5Bbot%5D)! - - **server-generator-apollo-emmett**: add escapeJsString utility for EJS template safety
|
|
139
|
+
- **server-generator-apollo-emmett**: escape apostrophes in react.specs.ts.ejs string literals
|
|
140
|
+
- **server-generator-apollo-emmett**: escape apostrophes in decide template string literals
|
|
141
|
+
- **server-generator-apollo-emmett**: escape apostrophes in projection.specs.ts.ejs string literals
|
|
142
|
+
- **global**: version packages
|
|
143
|
+
|
|
144
|
+
- [`a2c7ada`](https://github.com/BeOnAuto/auto-engineer/commit/a2c7ada17acecc6e175dd0caea7f7d3b4bf0b67e) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - Added adapter to convert Message objects to TypeInfo format, enabling message-based type inference in the narrative pipeline
|
|
145
|
+
|
|
146
|
+
- [`b3515b8`](https://github.com/BeOnAuto/auto-engineer/commit/b3515b8c09a70063c1ffe361b2d6f68af299fa05) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - Added utility to convert message arrays into TypeInfo maps for narrative processing
|
|
147
|
+
|
|
148
|
+
- [`2546535`](https://github.com/BeOnAuto/auto-engineer/commit/2546535ea50987fb58c9caee4803d871861acee2) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - Added automatic detection of forbidden type assertions (e.g., `as` casts) in AI-generated code to enforce type safety
|
|
149
|
+
- Type assertion violations now trigger a retry loop with guidance for the AI to use properly typed variables instead
|
|
150
|
+
- Detection runs in parallel with existing shadow checks during test and typecheck phase
|
|
151
|
+
|
|
152
|
+
### Patch Changes
|
|
153
|
+
|
|
154
|
+
- [`7a3967e`](https://github.com/BeOnAuto/auto-engineer/commit/7a3967e1c12d418786cf754fff019e509cc06e07) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - Added implementation plan for query events support and type assertion detection
|
|
155
|
+
|
|
156
|
+
- [`f485b24`](https://github.com/BeOnAuto/auto-engineer/commit/f485b24c738dabb21d2d25765f70239eb423a666) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - Finalized implementation plan for InferredType messages fallback resolution
|
|
157
|
+
|
|
158
|
+
- [`aa38eaa`](https://github.com/BeOnAuto/auto-engineer/commit/aa38eaace31f050cbeb04e8fb698fbd380678aaa) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - Fixed type resolution failing for JSON-loaded models where placeholder types leaked into the output instead of resolving to their actual definitions
|
|
159
|
+
|
|
160
|
+
- [`0485e54`](https://github.com/BeOnAuto/auto-engineer/commit/0485e544e8581f8d849444a66dded98adba82184) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - Fixed broken imports in query projections that reference events not produced by any command slice
|
|
161
|
+
- Added events.ts file generation for query slice templates so orphan event imports resolve correctly
|
|
162
|
+
|
|
163
|
+
- [`cb750ce`](https://github.com/BeOnAuto/auto-engineer/commit/cb750ce35c027eb1d883544c58085e2e6d3270ad) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - Added implementation plan for fixing InferredType messages fallback behavior
|
|
164
|
+
|
|
165
|
+
- [`7f3ed00`](https://github.com/BeOnAuto/auto-engineer/commit/7f3ed00072378615124aed1d3d98f4a0fab8c58e) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - Finalized implementation plan for query event generation and type assertion detection
|
|
166
|
+
|
|
167
|
+
- Updated dependencies [[`7a3967e`](https://github.com/BeOnAuto/auto-engineer/commit/7a3967e1c12d418786cf754fff019e509cc06e07), [`f485b24`](https://github.com/BeOnAuto/auto-engineer/commit/f485b24c738dabb21d2d25765f70239eb423a666), [`aa38eaa`](https://github.com/BeOnAuto/auto-engineer/commit/aa38eaace31f050cbeb04e8fb698fbd380678aaa), [`8791296`](https://github.com/BeOnAuto/auto-engineer/commit/8791296a126f213d171c6dd7d2d4738c0fc2a19e), [`a2c7ada`](https://github.com/BeOnAuto/auto-engineer/commit/a2c7ada17acecc6e175dd0caea7f7d3b4bf0b67e), [`0485e54`](https://github.com/BeOnAuto/auto-engineer/commit/0485e544e8581f8d849444a66dded98adba82184), [`b3515b8`](https://github.com/BeOnAuto/auto-engineer/commit/b3515b8c09a70063c1ffe361b2d6f68af299fa05), [`2546535`](https://github.com/BeOnAuto/auto-engineer/commit/2546535ea50987fb58c9caee4803d871861acee2), [`cb750ce`](https://github.com/BeOnAuto/auto-engineer/commit/cb750ce35c027eb1d883544c58085e2e6d3270ad), [`7f3ed00`](https://github.com/BeOnAuto/auto-engineer/commit/7f3ed00072378615124aed1d3d98f4a0fab8c58e)]:
|
|
168
|
+
- @auto-engineer/message-bus@1.131.0
|
|
169
|
+
- @auto-engineer/narrative@1.131.0
|
|
170
|
+
|
|
3
171
|
## 1.130.0
|
|
4
172
|
|
|
5
173
|
### Minor Changes
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-sink.d.ts","sourceRoot":"","sources":["../../../../src/codegen/extract/data-sink.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAgEtD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,KAAK,GAAG;IAAE,aAAa,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,CAiB7F"}
|
|
1
|
+
{"version":3,"file":"data-sink.d.ts","sourceRoot":"","sources":["../../../../src/codegen/extract/data-sink.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAgEtD,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAQ/D;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,KAAK,GAAG;IAAE,aAAa,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,CAiB7F"}
|
|
@@ -48,6 +48,15 @@ function processStreamSink(item, exampleData) {
|
|
|
48
48
|
const streamId = streamPattern.length > 0 ? resolveStreamId(streamPattern, exampleData) : undefined;
|
|
49
49
|
return { streamPattern, streamId };
|
|
50
50
|
}
|
|
51
|
+
export function extractStreamIdFields(pattern) {
|
|
52
|
+
const fields = [];
|
|
53
|
+
const regex = /\$\{([^}]+)\}/g;
|
|
54
|
+
let match;
|
|
55
|
+
while ((match = regex.exec(pattern)) !== null) {
|
|
56
|
+
fields.push(match[1]);
|
|
57
|
+
}
|
|
58
|
+
return fields;
|
|
59
|
+
}
|
|
51
60
|
export function getStreamFromSink(slice) {
|
|
52
61
|
if (!('server' in slice))
|
|
53
62
|
return {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-sink.js","sourceRoot":"","sources":["../../../../src/codegen/extract/data-sink.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"data-sink.js","sourceRoot":"","sources":["../../../../src/codegen/extract/data-sink.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,11 +14,6 @@ export interface CrossSliceImportContext {
|
|
|
14
14
|
* while cross-slice events are imported from '../other-slice/events'.
|
|
15
15
|
*/
|
|
16
16
|
export declare function groupEventImports(context: CrossSliceImportContext): ImportGroup[];
|
|
17
|
-
/**
|
|
18
|
-
* Filters events to only include those from the current slice (source === 'then').
|
|
19
|
-
* Used for generating local event definitions.
|
|
20
|
-
*/
|
|
21
|
-
export declare function getLocalEvents(events: Message[]): Message[];
|
|
22
17
|
/**
|
|
23
18
|
* Extracts all unique event types from a list of events.
|
|
24
19
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"imports.d.ts","sourceRoot":"","sources":["../../../../src/codegen/extract/imports.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAGxC,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB;AAED,MAAM,WAAW,uBAAuB;IACtC,gBAAgB,EAAE,MAAM,CAAC;IACzB,eAAe,EAAE,MAAM,CAAC;IACxB,MAAM,EAAE,OAAO,EAAE,CAAC;CACnB;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,uBAAuB,GAAG,WAAW,EAAE,CAgCjF;AAED
|
|
1
|
+
{"version":3,"file":"imports.d.ts","sourceRoot":"","sources":["../../../../src/codegen/extract/imports.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAGxC,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB;AAED,MAAM,WAAW,uBAAuB;IACtC,gBAAgB,EAAE,MAAM,CAAC;IACzB,eAAe,EAAE,MAAM,CAAC;IACxB,MAAM,EAAE,OAAO,EAAE,CAAC;CACnB;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,uBAAuB,GAAG,WAAW,EAAE,CAgCjF;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,EAAE,CAI5D;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,CAG9D"}
|
|
@@ -36,13 +36,6 @@ export function groupEventImports(context) {
|
|
|
36
36
|
eventTypes: eventTypes.sort(),
|
|
37
37
|
}));
|
|
38
38
|
}
|
|
39
|
-
/**
|
|
40
|
-
* Filters events to only include those from the current slice (source === 'then').
|
|
41
|
-
* Used for generating local event definitions.
|
|
42
|
-
*/
|
|
43
|
-
export function getLocalEvents(events) {
|
|
44
|
-
return events.filter((event) => event.source === 'then');
|
|
45
|
-
}
|
|
46
39
|
/**
|
|
47
40
|
* Extracts all unique event types from a list of events.
|
|
48
41
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"imports.js","sourceRoot":"","sources":["../../../../src/codegen/extract/imports.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAa5C;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAgC;IAChE,MAAM,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IAC9D,MAAM,YAAY,GAAG,IAAI,GAAG,EAAoB,CAAC;IAEjD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,CAAC,KAAK,CAAC,IAAI;YAAE,SAAS;QAC1B,IAAI,UAAkB,CAAC;QACvB,MAAM,kBAAkB,GACtB,KAAK,CAAC,MAAM,KAAK,MAAM,IAAI,KAAK,CAAC,eAAe,KAAK,gBAAgB,IAAI,KAAK,CAAC,eAAe,IAAI,IAAI,CAAC;QAEzG,IAAI,kBAAkB,EAAE,CAAC;YACvB,UAAU,GAAG,UAAU,CAAC;QAC1B,CAAC;aAAM,CAAC;YACN,MAAM,cAAc,GAAG,KAAK,CAAC,cAAc,CAAC;YAC5C,MAAM,WAAW,GAAG,cAAc,IAAI,IAAI,IAAI,cAAc,KAAK,eAAe,CAAC;YACjF,MAAM,YAAY,GAAG,WAAW,CAAC,KAAK,CAAC,eAAe,IAAI,gBAAgB,CAAC,CAAC;YAC5E,UAAU,GAAG,WAAW;gBACtB,CAAC,CAAC,SAAS,WAAW,CAAC,cAAc,CAAC,IAAI,YAAY,SAAS;gBAC/D,CAAC,CAAC,MAAM,YAAY,SAAS,CAAC;QAClC,CAAC;QACD,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;YAClC,YAAY,CAAC,GAAG,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;QACnC,CAAC;QACD,MAAM,UAAU,GAAG,YAAY,CAAC,GAAG,CAAC,UAAU,CAAE,CAAC;QACjD,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;YACrC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC;QAC3E,UAAU;QACV,UAAU,EAAE,UAAU,CAAC,IAAI,EAAE;KAC9B,CAAC,CAAC,CAAC;AACN,CAAC;AAED
|
|
1
|
+
{"version":3,"file":"imports.js","sourceRoot":"","sources":["../../../../src/codegen/extract/imports.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAa5C;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAgC;IAChE,MAAM,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IAC9D,MAAM,YAAY,GAAG,IAAI,GAAG,EAAoB,CAAC;IAEjD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,CAAC,KAAK,CAAC,IAAI;YAAE,SAAS;QAC1B,IAAI,UAAkB,CAAC;QACvB,MAAM,kBAAkB,GACtB,KAAK,CAAC,MAAM,KAAK,MAAM,IAAI,KAAK,CAAC,eAAe,KAAK,gBAAgB,IAAI,KAAK,CAAC,eAAe,IAAI,IAAI,CAAC;QAEzG,IAAI,kBAAkB,EAAE,CAAC;YACvB,UAAU,GAAG,UAAU,CAAC;QAC1B,CAAC;aAAM,CAAC;YACN,MAAM,cAAc,GAAG,KAAK,CAAC,cAAc,CAAC;YAC5C,MAAM,WAAW,GAAG,cAAc,IAAI,IAAI,IAAI,cAAc,KAAK,eAAe,CAAC;YACjF,MAAM,YAAY,GAAG,WAAW,CAAC,KAAK,CAAC,eAAe,IAAI,gBAAgB,CAAC,CAAC;YAC5E,UAAU,GAAG,WAAW;gBACtB,CAAC,CAAC,SAAS,WAAW,CAAC,cAAc,CAAC,IAAI,YAAY,SAAS;gBAC/D,CAAC,CAAC,MAAM,YAAY,SAAS,CAAC;QAClC,CAAC;QACD,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;YAClC,YAAY,CAAC,GAAG,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;QACnC,CAAC;QACD,MAAM,UAAU,GAAG,YAAY,CAAC,GAAG,CAAC,UAAU,CAAE,CAAC;QACjD,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;YACrC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC;QAC3E,UAAU;QACV,UAAU,EAAE,UAAU,CAAC,IAAI,EAAE;KAC9B,CAAC,CAAC,CAAC;AACN,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,MAAiB;IAChD,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAkB,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IAErG,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;AAChD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAAC,MAAiB;IACpD,MAAM,UAAU,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAC5C,OAAO,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;AAClE,CAAC"}
|
|
@@ -1,5 +1,10 @@
|
|
|
1
|
-
import type { Slice } from '@auto-engineer/narrative';
|
|
1
|
+
import type { Narrative, Slice } from '@auto-engineer/narrative';
|
|
2
|
+
import type { Message } from '../types';
|
|
2
3
|
export declare function extractProjectionIdField(slice: Slice): string | string[] | undefined;
|
|
3
4
|
export declare function extractProjectionName(slice: Slice): string | undefined;
|
|
5
|
+
export declare function buildEventIdFieldMap(events: Message[], flows: Narrative[], findEventSourceFn: (flows: Narrative[], eventType: string) => {
|
|
6
|
+
flowName: string;
|
|
7
|
+
sliceName: string;
|
|
8
|
+
} | null): Map<string, string> | undefined;
|
|
4
9
|
export declare function extractProjectionSingleton(slice: Slice): boolean;
|
|
5
10
|
//# sourceMappingURL=projection.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"projection.d.ts","sourceRoot":"","sources":["../../../../src/codegen/extract/projection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"projection.d.ts","sourceRoot":"","sources":["../../../../src/codegen/extract/projection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AA2CxC,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAYpF;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,GAAG,SAAS,CAEtE;AAED,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,OAAO,EAAE,EACjB,KAAK,EAAE,SAAS,EAAE,EAClB,iBAAiB,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,SAAS,EAAE,MAAM,KAAK;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,GAC3G,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAajC;AAED,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAWhE"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { extractStreamIdFields } from './data-sink.js';
|
|
1
2
|
function hasOrigin(dataSource) {
|
|
2
3
|
return typeof dataSource === 'object' && dataSource !== null && 'origin' in dataSource;
|
|
3
4
|
}
|
|
@@ -42,6 +43,22 @@ export function extractProjectionIdField(slice) {
|
|
|
42
43
|
export function extractProjectionName(slice) {
|
|
43
44
|
return extractProjectionField(slice, 'name');
|
|
44
45
|
}
|
|
46
|
+
export function buildEventIdFieldMap(events, flows, findEventSourceFn) {
|
|
47
|
+
const map = new Map();
|
|
48
|
+
for (const event of events) {
|
|
49
|
+
const source = findEventSourceFn(flows, event.type);
|
|
50
|
+
if (!source)
|
|
51
|
+
continue;
|
|
52
|
+
const slice = flows.find((f) => f.name === source.flowName)?.slices.find((s) => s.name === source.sliceName);
|
|
53
|
+
if (!slice || typeof slice.stream !== 'string')
|
|
54
|
+
continue;
|
|
55
|
+
const fields = extractStreamIdFields(slice.stream);
|
|
56
|
+
if (fields.length === 1) {
|
|
57
|
+
map.set(event.type, fields[0]);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
return map.size > 0 ? map : undefined;
|
|
61
|
+
}
|
|
45
62
|
export function extractProjectionSingleton(slice) {
|
|
46
63
|
if (!('server' in slice))
|
|
47
64
|
return false;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"projection.js","sourceRoot":"","sources":["../../../../src/codegen/extract/projection.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"projection.js","sourceRoot":"","sources":["../../../../src/codegen/extract/projection.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,18 @@
|
|
|
1
|
-
import type { Slice } from '@auto-engineer/narrative';
|
|
1
|
+
import type { MappingEntry, Slice } from '@auto-engineer/narrative';
|
|
2
2
|
import type { EventRef, StateRef } from '../types';
|
|
3
3
|
import { type QueryActionRef } from './step-converter';
|
|
4
|
-
|
|
4
|
+
type FilterOperator = NonNullable<MappingEntry['operator']>;
|
|
5
|
+
export interface ArgMapping {
|
|
6
|
+
field: string;
|
|
7
|
+
operator: FilterOperator;
|
|
8
|
+
}
|
|
9
|
+
export interface QueryGwtCondition {
|
|
5
10
|
description: string;
|
|
6
11
|
given?: EventRef[];
|
|
7
12
|
when: EventRef[] | QueryActionRef;
|
|
8
13
|
then: Array<StateRef>;
|
|
9
14
|
}
|
|
10
15
|
export declare function buildQueryGwtMapping(slice: Slice): QueryGwtCondition[];
|
|
16
|
+
export declare function buildArgToStateFieldMap(queryGwtMapping: QueryGwtCondition[], stateFieldNames: Set<string>, mappings?: MappingEntry[]): Record<string, ArgMapping>;
|
|
11
17
|
export {};
|
|
12
18
|
//# sourceMappingURL=query.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../../../src/codegen/extract/query.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../../../src/codegen/extract/query.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACnD,OAAO,EAAsC,KAAK,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAE3F,KAAK,cAAc,GAAG,WAAW,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC;AAE5D,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,cAAc,CAAC;CAC1B;AAED,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,QAAQ,EAAE,CAAC;IACnB,IAAI,EAAE,QAAQ,EAAE,GAAG,cAAc,CAAC;IAClC,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;CACvB;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,KAAK,GAAG,iBAAiB,EAAE,CAwBtE;AAED,wBAAgB,uBAAuB,CACrC,eAAe,EAAE,iBAAiB,EAAE,EACpC,eAAe,EAAE,GAAG,CAAC,MAAM,CAAC,EAC5B,QAAQ,CAAC,EAAE,YAAY,EAAE,GACxB,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CA+B5B"}
|
|
@@ -21,4 +21,40 @@ export function buildQueryGwtMapping(slice) {
|
|
|
21
21
|
};
|
|
22
22
|
});
|
|
23
23
|
}
|
|
24
|
+
export function buildArgToStateFieldMap(queryGwtMapping, stateFieldNames, mappings) {
|
|
25
|
+
const map = {};
|
|
26
|
+
if (mappings) {
|
|
27
|
+
for (const mapping of mappings) {
|
|
28
|
+
if (mapping.source.type !== 'Query')
|
|
29
|
+
continue;
|
|
30
|
+
if (!stateFieldNames.has(mapping.target.field))
|
|
31
|
+
continue;
|
|
32
|
+
map[mapping.source.field] = {
|
|
33
|
+
field: mapping.target.field,
|
|
34
|
+
operator: mapping.operator ?? 'eq',
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
for (const gwt of queryGwtMapping) {
|
|
39
|
+
if (!isQueryAction(gwt.when))
|
|
40
|
+
continue;
|
|
41
|
+
const args = gwt.when.args;
|
|
42
|
+
const stateExample = gwt.then[0]?.exampleData;
|
|
43
|
+
if (!args || !stateExample)
|
|
44
|
+
continue;
|
|
45
|
+
for (const [argName, argValue] of Object.entries(args)) {
|
|
46
|
+
if (stateFieldNames.has(argName))
|
|
47
|
+
continue;
|
|
48
|
+
if (map[argName])
|
|
49
|
+
continue;
|
|
50
|
+
for (const [fieldName, fieldValue] of Object.entries(stateExample)) {
|
|
51
|
+
if (stateFieldNames.has(fieldName) && argValue === fieldValue) {
|
|
52
|
+
map[argName] = { field: fieldName, operator: 'eq' };
|
|
53
|
+
break;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
return map;
|
|
59
|
+
}
|
|
24
60
|
//# sourceMappingURL=query.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query.js","sourceRoot":"","sources":["../../../../src/codegen/extract/query.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAuB,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"query.js","sourceRoot":"","sources":["../../../../src/codegen/extract/query.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scaffoldFromSchema.d.ts","sourceRoot":"","sources":["../../../src/codegen/scaffoldFromSchema.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,KAAK,EAAE,SAAS,EAAS,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"scaffoldFromSchema.d.ts","sourceRoot":"","sources":["../../../src/codegen/scaffoldFromSchema.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,8 +14,10 @@ const debugSlice = createDebug('auto:server-generator-apollo-emmett:scaffold:sli
|
|
|
14
14
|
const debugPlan = createDebug('auto:server-generator-apollo-emmett:scaffold:plan');
|
|
15
15
|
const debugFormat = createDebug('auto:server-generator-apollo-emmett:scaffold:format');
|
|
16
16
|
import { isInlineObject, isInlineObjectArray, parseInlineObjectFields, parseSliceRequest, } from '@auto-engineer/narrative';
|
|
17
|
-
import { baseTs, buildCommandGwtMapping, buildQueryGwtMapping, createCollectEnumNames, createEventUnionType, createFieldUsesDate, createFieldUsesFloat, createFieldUsesJSON, createIsEnumType, escapeJsString, extractMessagesFromSpecs, extractProjectionName, findPrimitiveLinkingField, getAllEventTypes,
|
|
17
|
+
import { baseTs, buildCommandGwtMapping, buildQueryGwtMapping, createCollectEnumNames, createEventUnionType, createFieldUsesDate, createFieldUsesFloat, createFieldUsesJSON, createIsEnumType, escapeJsString, extractMessagesFromSpecs, extractProjectionName, findPrimitiveLinkingField, getAllEventTypes, groupEventImports, isPrimitiveTsType, isValidTsIdentifier, sanitizeFieldType, } from './extract/index.js';
|
|
18
18
|
import { getStreamFromSink } from './extract/data-sink.js';
|
|
19
|
+
import { buildEventIdFieldMap } from './extract/projection.js';
|
|
20
|
+
import { buildArgToStateFieldMap } from './extract/query.js';
|
|
19
21
|
import { normalizeSliceForTemplate } from './extract/slice-normalizer.js';
|
|
20
22
|
import { extractGwtSpecsFromSlice } from './extract/step-converter.js';
|
|
21
23
|
export class TemplateRenderError extends Error {
|
|
@@ -46,7 +48,7 @@ const defaultFilesByType = {
|
|
|
46
48
|
'decide.specs.ts.ejs',
|
|
47
49
|
'register.ts.ejs',
|
|
48
50
|
],
|
|
49
|
-
query: ['projection.ts.ejs', 'state.ts.ejs', 'projection.specs.ts.ejs', 'query.resolver.ts.ejs'],
|
|
51
|
+
query: ['events.ts.ejs', 'projection.ts.ejs', 'state.ts.ejs', 'projection.specs.ts.ejs', 'query.resolver.ts.ejs'],
|
|
50
52
|
react: ['events.ts.ejs', 'react.ts.ejs', 'react.specs.ts.ejs', 'register.ts.ejs'],
|
|
51
53
|
};
|
|
52
54
|
function isStringLiteralUnion(s) {
|
|
@@ -491,7 +493,7 @@ function extractUsedErrors(gwtMapping) {
|
|
|
491
493
|
debug(' Total unique errors found: %d', errors.length);
|
|
492
494
|
return errors;
|
|
493
495
|
}
|
|
494
|
-
async function prepareTemplateData(slice, flow, commands, events, states, commandSchemasByName, projectionIdField, projectionSingleton, allMessages, integrations) {
|
|
496
|
+
async function prepareTemplateData(slice, flow, commands, events, states, commandSchemasByName, projectionIdField, projectionSingleton, allMessages, integrations, flows) {
|
|
495
497
|
debug('Preparing template data for slice: %s (flow: %s)', slice.name, flow.name);
|
|
496
498
|
debug(' Commands: %d', commands.length);
|
|
497
499
|
debug(' Events: %d', events.length);
|
|
@@ -514,7 +516,8 @@ async function prepareTemplateData(slice, flow, commands, events, states, comman
|
|
|
514
516
|
const eventImportGroups = groupEventImports({ currentSliceName: slice.name, currentFlowName: flow.name, events });
|
|
515
517
|
const allEventTypesArray = getAllEventTypes(events);
|
|
516
518
|
const allEventTypes = createEventUnionType(events);
|
|
517
|
-
const
|
|
519
|
+
const selfImportedTypes = new Set(eventImportGroups.filter((g) => g.importPath === './events').flatMap((g) => g.eventTypes));
|
|
520
|
+
const localEvents = events.filter((e) => selfImportedTypes.has(e.type));
|
|
518
521
|
const messagesByName = new Map((allMessages ?? []).map((m) => [m.name, m]));
|
|
519
522
|
const targetName = 'server' in slice ? slice.server?.data?.items?.[0]?.target?.name : undefined;
|
|
520
523
|
const queryMessage = targetName != null ? allMessages?.find((m) => m.name === targetName) : undefined;
|
|
@@ -537,6 +540,9 @@ async function prepareTemplateData(slice, flow, commands, events, states, comman
|
|
|
537
540
|
}
|
|
538
541
|
}
|
|
539
542
|
}
|
|
543
|
+
const eventIdFieldMap = slice.type === 'query' && flows ? buildEventIdFieldMap(events, flows, findEventSource) : undefined;
|
|
544
|
+
const stateFieldNames = new Set((queryMessage?.fields ?? []).map((f) => f.name));
|
|
545
|
+
const argToStateFieldMap = slice.type === 'query' ? buildArgToStateFieldMap(queryGwtMapping, stateFieldNames, slice.mappings) : undefined;
|
|
540
546
|
return {
|
|
541
547
|
flowName: flow.name,
|
|
542
548
|
sliceName: slice.name,
|
|
@@ -564,6 +570,8 @@ async function prepareTemplateData(slice, flow, commands, events, states, comman
|
|
|
564
570
|
localEvents,
|
|
565
571
|
referencedTypes,
|
|
566
572
|
eventCommandPairs,
|
|
573
|
+
eventIdFieldMap,
|
|
574
|
+
argToStateFieldMap,
|
|
567
575
|
};
|
|
568
576
|
}
|
|
569
577
|
function annotateEventSources(events, flows, fallbackFlowName, fallbackSliceName, sliceType) {
|
|
@@ -679,7 +687,7 @@ async function generateFilesForSlice(slice, flow, sliceDir, messages, flows, uni
|
|
|
679
687
|
}
|
|
680
688
|
}
|
|
681
689
|
}
|
|
682
|
-
const templateData = await prepareTemplateData(slice, flow, extracted.commands, extracted.events, extracted.states, extracted.commandSchemasByName, extracted.projectionIdField, extracted.projectionSingleton, messages, integrations);
|
|
690
|
+
const templateData = await prepareTemplateData(slice, flow, extracted.commands, extracted.events, extracted.states, extracted.commandSchemasByName, extracted.projectionIdField, extracted.projectionSingleton, messages, integrations, flows);
|
|
683
691
|
debugSlice(' Generating %d files from templates', filteredTemplates.length);
|
|
684
692
|
const plans = await Promise.all(filteredTemplates.map((template) => generateFileForTemplate(template, slice, sliceDir, templateData, unionToEnumName)));
|
|
685
693
|
debugSlice(' Generated %d file plans for slice: %s', plans.length, slice.name);
|