@auto-engineer/server-generator-apollo-emmett 1.12.0 → 1.12.1
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 +13 -0
- package/dist/src/codegen/extract/events.d.ts +1 -1
- package/dist/src/codegen/extract/events.d.ts.map +1 -1
- package/dist/src/codegen/extract/events.js +2 -2
- package/dist/src/codegen/extract/events.js.map +1 -1
- package/dist/src/codegen/extract/imports.d.ts +1 -0
- package/dist/src/codegen/extract/imports.d.ts.map +1 -1
- package/dist/src/codegen/extract/imports.js +7 -2
- package/dist/src/codegen/extract/imports.js.map +1 -1
- package/dist/src/codegen/extract/messages.d.ts.map +1 -1
- package/dist/src/codegen/extract/messages.js +19 -7
- package/dist/src/codegen/extract/messages.js.map +1 -1
- package/dist/src/codegen/extract/slice-normalizer.d.ts +7 -1
- package/dist/src/codegen/extract/slice-normalizer.d.ts.map +1 -1
- package/dist/src/codegen/extract/slice-normalizer.js +31 -3
- package/dist/src/codegen/extract/slice-normalizer.js.map +1 -1
- package/dist/src/codegen/extract/states.d.ts +2 -1
- package/dist/src/codegen/extract/states.d.ts.map +1 -1
- package/dist/src/codegen/extract/states.js +5 -0
- package/dist/src/codegen/extract/states.js.map +1 -1
- package/dist/src/codegen/extract/type-helpers.d.ts +4 -0
- package/dist/src/codegen/extract/type-helpers.d.ts.map +1 -1
- package/dist/src/codegen/extract/type-helpers.js +58 -14
- package/dist/src/codegen/extract/type-helpers.js.map +1 -1
- package/dist/src/codegen/scaffoldFromSchema.d.ts.map +1 -1
- package/dist/src/codegen/scaffoldFromSchema.js +12 -9
- package/dist/src/codegen/scaffoldFromSchema.js.map +1 -1
- package/dist/src/codegen/templates/command/decide.specs.specs.ts +81 -0
- package/dist/src/codegen/templates/command/decide.specs.ts +1 -1
- package/dist/src/codegen/templates/command/decide.ts.ejs +2 -8
- package/dist/src/codegen/templates/command/mutation.resolver.ts.ejs +5 -13
- package/dist/src/codegen/templates/query/projection.specs.specs.ts +373 -0
- package/dist/src/codegen/templates/query/projection.specs.ts.ejs +38 -48
- package/dist/src/codegen/templates/query/query.resolver.specs.ts +69 -0
- package/dist/src/codegen/templates/query/query.resolver.ts.ejs +5 -13
- package/dist/src/codegen/templates/query/state.specs.ts +36 -0
- package/dist/src/codegen/templates/query/state.ts.ejs +7 -1
- package/dist/src/codegen/templates/react/react.specs.specs.ts +1 -1
- package/dist/src/codegen/templates/react/react.specs.ts +280 -0
- package/dist/src/codegen/templates/react/react.specs.ts.ejs +8 -2
- package/dist/src/codegen/templates/react/react.ts.ejs +8 -1
- package/dist/src/codegen/templates/react/register.ts.ejs +5 -1
- package/dist/src/commands/generate-server.d.ts.map +1 -1
- package/dist/src/commands/generate-server.js +1 -2
- package/dist/src/commands/generate-server.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/ketchup-plan.md +13 -0
- package/package.json +5 -5
- package/src/codegen/extract/events.ts +6 -2
- package/src/codegen/extract/imports.specs.ts +98 -0
- package/src/codegen/extract/imports.ts +8 -2
- package/src/codegen/extract/messages.specs.ts +190 -0
- package/src/codegen/extract/messages.ts +23 -7
- package/src/codegen/extract/slice-normalizer.specs.ts +93 -0
- package/src/codegen/extract/slice-normalizer.ts +47 -3
- package/src/codegen/extract/states.ts +7 -1
- package/src/codegen/extract/type-helpers.specs.ts +42 -0
- package/src/codegen/extract/type-helpers.ts +52 -14
- package/src/codegen/scaffoldFromSchema.ts +11 -6
- package/src/codegen/templates/command/decide.specs.specs.ts +81 -0
- package/src/codegen/templates/command/decide.specs.ts +1 -1
- package/src/codegen/templates/command/decide.ts.ejs +2 -8
- package/src/codegen/templates/command/mutation.resolver.ts.ejs +5 -13
- package/src/codegen/templates/query/projection.specs.specs.ts +373 -0
- package/src/codegen/templates/query/projection.specs.ts.ejs +38 -48
- package/src/codegen/templates/query/query.resolver.specs.ts +69 -0
- package/src/codegen/templates/query/query.resolver.ts.ejs +5 -13
- package/src/codegen/templates/query/state.specs.ts +36 -0
- package/src/codegen/templates/query/state.ts.ejs +7 -1
- package/src/codegen/templates/react/react.specs.specs.ts +1 -1
- package/src/codegen/templates/react/react.specs.ts +280 -0
- package/src/codegen/templates/react/react.specs.ts.ejs +8 -2
- package/src/codegen/templates/react/react.ts.ejs +8 -1
- package/src/codegen/templates/react/register.ts.ejs +5 -1
- package/src/commands/generate-server.ts +1 -2
package/.turbo/turbo-build.log
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
|
|
2
|
-
> @auto-engineer/server-generator-apollo-emmett@1.12.
|
|
2
|
+
> @auto-engineer/server-generator-apollo-emmett@1.12.1 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.12.
|
|
2
|
+
> @auto-engineer/server-generator-apollo-emmett@1.12.1 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[
|
|
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[2m[90m-[39m[22m[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 14.
|
|
10
|
+
[2m Test Files [22m [1m[32m24 passed[39m[22m[2m | [22m[33m1 skipped[39m[90m (25)[39m
|
|
11
|
+
[2m Tests [22m [1m[32m94 passed[39m[22m[2m | [22m[33m1 skipped[39m[90m (95)[39m
|
|
12
|
+
[2m Start at [22m 12:30:23
|
|
13
|
+
[2m Duration [22m 14.77s[2m (transform 1.62s, setup 0ms, collect 28.45s, tests 6.30s, environment 5ms, prepare 3.07s)[22m
|
|
14
14
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
|
|
2
|
-
> @auto-engineer/server-generator-apollo-emmett@1.12.
|
|
2
|
+
> @auto-engineer/server-generator-apollo-emmett@1.12.1 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,18 @@
|
|
|
1
1
|
# @auto-engineer/server-generator-apollo-emmett
|
|
2
2
|
|
|
3
|
+
## 1.12.1
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [`6557224`](https://github.com/BeOnAuto/auto-engineer/commit/6557224ec6f51c704855e5058931e81ab1de1544) Thanks [@osamanar](https://github.com/osamanar)! - - Updated project dependency lock file to ensure consistent package installations
|
|
8
|
+
|
|
9
|
+
- [`cd5f56b`](https://github.com/BeOnAuto/auto-engineer/commit/cd5f56b01951cd27392c51a384706a8c2a7401c5) Thanks [@osamanar](https://github.com/osamanar)! - - Removed unused packages to keep the project lean and reduce maintenance overhead
|
|
10
|
+
|
|
11
|
+
- Updated dependencies [[`6557224`](https://github.com/BeOnAuto/auto-engineer/commit/6557224ec6f51c704855e5058931e81ab1de1544), [`cd5f56b`](https://github.com/BeOnAuto/auto-engineer/commit/cd5f56b01951cd27392c51a384706a8c2a7401c5)]:
|
|
12
|
+
- @auto-engineer/message-bus@1.12.1
|
|
13
|
+
- @auto-engineer/model-diff@1.12.1
|
|
14
|
+
- @auto-engineer/narrative@1.12.1
|
|
15
|
+
|
|
3
16
|
## 1.12.0
|
|
4
17
|
|
|
5
18
|
### Minor Changes
|
|
@@ -2,5 +2,5 @@ import type { ErrorRef, EventRef, Message, MessageDefinition } from '../types';
|
|
|
2
2
|
import type { ReactGwtSpec } from './messages';
|
|
3
3
|
export declare function extractEventsFromThen(thenItems: Array<EventRef | ErrorRef>, allMessages: MessageDefinition[], currentSliceName?: string, currentFlowName?: string): Message[];
|
|
4
4
|
export declare function extractEventsFromGiven(givenEvents: EventRef[] | undefined, allMessages: MessageDefinition[], currentSliceName?: string, currentFlowName?: string): Message[];
|
|
5
|
-
export declare function extractEventsFromWhen(gwtSpecs: ReactGwtSpec[], allMessages: MessageDefinition[]): Message[];
|
|
5
|
+
export declare function extractEventsFromWhen(gwtSpecs: ReactGwtSpec[], allMessages: MessageDefinition[], currentSliceName?: string): Message[];
|
|
6
6
|
//# sourceMappingURL=events.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../../../src/codegen/extract/events.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAE/E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAyB/C,wBAAgB,qBAAqB,CACnC,SAAS,EAAE,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC,EACrC,WAAW,EAAE,iBAAiB,EAAE,EAChC,gBAAgB,CAAC,EAAE,MAAM,EACzB,eAAe,CAAC,EAAE,MAAM,GACvB,OAAO,EAAE,CAOX;AAED,wBAAgB,sBAAsB,CACpC,WAAW,EAAE,QAAQ,EAAE,GAAG,SAAS,EACnC,WAAW,EAAE,iBAAiB,EAAE,EAChC,gBAAgB,CAAC,EAAE,MAAM,EACzB,eAAe,CAAC,EAAE,MAAM,GACvB,OAAO,EAAE,CAMX;AAED,wBAAgB,qBAAqB,
|
|
1
|
+
{"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../../../src/codegen/extract/events.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAE/E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAyB/C,wBAAgB,qBAAqB,CACnC,SAAS,EAAE,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC,EACrC,WAAW,EAAE,iBAAiB,EAAE,EAChC,gBAAgB,CAAC,EAAE,MAAM,EACzB,eAAe,CAAC,EAAE,MAAM,GACvB,OAAO,EAAE,CAOX;AAED,wBAAgB,sBAAsB,CACpC,WAAW,EAAE,QAAQ,EAAE,GAAG,SAAS,EACnC,WAAW,EAAE,iBAAiB,EAAE,EAChC,gBAAgB,CAAC,EAAE,MAAM,EACzB,eAAe,CAAC,EAAE,MAAM,GACvB,OAAO,EAAE,CAMX;AAED,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,YAAY,EAAE,EACxB,WAAW,EAAE,iBAAiB,EAAE,EAChC,gBAAgB,CAAC,EAAE,MAAM,GACxB,OAAO,EAAE,CAOX"}
|
|
@@ -31,12 +31,12 @@ export function extractEventsFromGiven(givenEvents, allMessages, currentSliceNam
|
|
|
31
31
|
.map((given) => createEventMessage(given.eventRef, 'given', allMessages, currentSliceName, currentFlowName))
|
|
32
32
|
.filter((event) => event !== undefined);
|
|
33
33
|
}
|
|
34
|
-
export function extractEventsFromWhen(gwtSpecs, allMessages) {
|
|
34
|
+
export function extractEventsFromWhen(gwtSpecs, allMessages, currentSliceName) {
|
|
35
35
|
return gwtSpecs.flatMap((gwt) => {
|
|
36
36
|
if (!Array.isArray(gwt.when)) {
|
|
37
37
|
return [];
|
|
38
38
|
}
|
|
39
|
-
return gwt.when.flatMap((eventExample) => extractEventsFromGiven([eventExample], allMessages));
|
|
39
|
+
return gwt.when.flatMap((eventExample) => extractEventsFromGiven([eventExample], allMessages, currentSliceName));
|
|
40
40
|
});
|
|
41
41
|
}
|
|
42
42
|
//# sourceMappingURL=events.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"events.js","sourceRoot":"","sources":["../../../../src/codegen/extract/events.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,wBAAwB,EAAE,MAAM,UAAU,CAAC;AAGpD,SAAS,kBAAkB,CACzB,QAA4B,EAC5B,MAAiC,EACjC,WAAgC,EAChC,gBAAyB,EACzB,eAAwB;IAExB,IAAI,QAAQ,IAAI,IAAI;QAAE,OAAO,SAAS,CAAC;IACvC,MAAM,MAAM,GAAG,wBAAwB,CAAC,QAAQ,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;IACxE,MAAM,UAAU,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC;IACtF,MAAM,QAAQ,GAAG,UAAU,EAAE,QAA6E,CAAC;IAC3G,MAAM,cAAc,GAAG,QAAQ,EAAE,cAAc,IAAI,eAAe,CAAC;IACnE,MAAM,eAAe,GAAG,QAAQ,EAAE,eAAe,IAAI,gBAAgB,CAAC;IAEtE,OAAO;QACL,IAAI,EAAE,QAAQ;QACd,MAAM;QACN,MAAM;QACN,cAAc;QACd,eAAe;KAChB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,qBAAqB,CACnC,SAAqC,EACrC,WAAgC,EAChC,gBAAyB,EACzB,eAAwB;IAExB,OAAO,SAAS;SACb,GAAG,CAAC,CAAC,IAAI,EAAuB,EAAE;QACjC,IAAI,CAAC,CAAC,UAAU,IAAI,IAAI,CAAC;YAAE,OAAO,SAAS,CAAC;QAC5C,OAAO,kBAAkB,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,gBAAgB,EAAE,eAAe,CAAC,CAAC;IACnG,CAAC,CAAC;SACD,MAAM,CAAC,CAAC,KAAK,EAAoB,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC;AAC9D,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,WAAmC,EACnC,WAAgC,EAChC,gBAAyB,EACzB,eAAwB;IAExB,IAAI,CAAC,WAAW;QAAE,OAAO,EAAE,CAAC;IAE5B,OAAO,WAAW;SACf,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,kBAAkB,CAAC,KAAK,CAAC,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,eAAe,CAAC,CAAC;SAC3G,MAAM,CAAC,CAAC,KAAK,EAAoB,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC;AAC9D,CAAC;AAED,MAAM,UAAU,qBAAqB,
|
|
1
|
+
{"version":3,"file":"events.js","sourceRoot":"","sources":["../../../../src/codegen/extract/events.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,wBAAwB,EAAE,MAAM,UAAU,CAAC;AAGpD,SAAS,kBAAkB,CACzB,QAA4B,EAC5B,MAAiC,EACjC,WAAgC,EAChC,gBAAyB,EACzB,eAAwB;IAExB,IAAI,QAAQ,IAAI,IAAI;QAAE,OAAO,SAAS,CAAC;IACvC,MAAM,MAAM,GAAG,wBAAwB,CAAC,QAAQ,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;IACxE,MAAM,UAAU,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC;IACtF,MAAM,QAAQ,GAAG,UAAU,EAAE,QAA6E,CAAC;IAC3G,MAAM,cAAc,GAAG,QAAQ,EAAE,cAAc,IAAI,eAAe,CAAC;IACnE,MAAM,eAAe,GAAG,QAAQ,EAAE,eAAe,IAAI,gBAAgB,CAAC;IAEtE,OAAO;QACL,IAAI,EAAE,QAAQ;QACd,MAAM;QACN,MAAM;QACN,cAAc;QACd,eAAe;KAChB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,qBAAqB,CACnC,SAAqC,EACrC,WAAgC,EAChC,gBAAyB,EACzB,eAAwB;IAExB,OAAO,SAAS;SACb,GAAG,CAAC,CAAC,IAAI,EAAuB,EAAE;QACjC,IAAI,CAAC,CAAC,UAAU,IAAI,IAAI,CAAC;YAAE,OAAO,SAAS,CAAC;QAC5C,OAAO,kBAAkB,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,gBAAgB,EAAE,eAAe,CAAC,CAAC;IACnG,CAAC,CAAC;SACD,MAAM,CAAC,CAAC,KAAK,EAAoB,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC;AAC9D,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,WAAmC,EACnC,WAAgC,EAChC,gBAAyB,EACzB,eAAwB;IAExB,IAAI,CAAC,WAAW;QAAE,OAAO,EAAE,CAAC;IAE5B,OAAO,WAAW;SACf,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,kBAAkB,CAAC,KAAK,CAAC,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,eAAe,CAAC,CAAC;SAC3G,MAAM,CAAC,CAAC,KAAK,EAAoB,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC;AAC9D,CAAC;AAED,MAAM,UAAU,qBAAqB,CACnC,QAAwB,EACxB,WAAgC,EAChC,gBAAyB;IAEzB,OAAO,QAAQ,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;QAC9B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAC7B,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,OAAO,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,EAAE,CAAC,sBAAsB,CAAC,CAAC,YAAY,CAAC,EAAE,WAAW,EAAE,gBAAgB,CAAC,CAAC,CAAC;IACnH,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -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,MAAM,EAAE,OAAO,EAAE,CAAC;CACnB;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,uBAAuB,GAAG,WAAW,EAAE,
|
|
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;;;GAGG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,EAAE,CAE3D;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"}
|
|
@@ -5,7 +5,7 @@ import { toKebabCase } from '../utils/path.js';
|
|
|
5
5
|
* while cross-slice events are imported from '../other-slice/events'.
|
|
6
6
|
*/
|
|
7
7
|
export function groupEventImports(context) {
|
|
8
|
-
const { currentSliceName, events } = context;
|
|
8
|
+
const { currentSliceName, currentFlowName, events } = context;
|
|
9
9
|
const importGroups = new Map();
|
|
10
10
|
for (const event of events) {
|
|
11
11
|
if (!event.type)
|
|
@@ -16,7 +16,12 @@ export function groupEventImports(context) {
|
|
|
16
16
|
importPath = './events';
|
|
17
17
|
}
|
|
18
18
|
else {
|
|
19
|
-
|
|
19
|
+
const sourceFlowName = event.sourceFlowName;
|
|
20
|
+
const isCrossFlow = sourceFlowName != null && sourceFlowName !== currentFlowName;
|
|
21
|
+
const sliceSegment = toKebabCase(event.sourceSliceName ?? currentSliceName);
|
|
22
|
+
importPath = isCrossFlow
|
|
23
|
+
? `../../${toKebabCase(sourceFlowName)}/${sliceSegment}/events`
|
|
24
|
+
: `../${sliceSegment}/events`;
|
|
20
25
|
}
|
|
21
26
|
if (!importGroups.has(importPath)) {
|
|
22
27
|
importGroups.set(importPath, []);
|
|
@@ -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;
|
|
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;;;GAGG;AACH,MAAM,UAAU,cAAc,CAAC,MAAiB;IAC9C,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC;AAC3D,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 +1 @@
|
|
|
1
|
-
{"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../../../src/codegen/extract/messages.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAEtD,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../../../src/codegen/extract/messages.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAEtD,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAejF,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,MAAM,EAAE,OAAO,EAAE,CAAC;IAClB,MAAM,EAAE,OAAO,EAAE,CAAC;IAClB,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9C,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,CAAC,EAAE,QAAQ,EAAE,CAAC;IAClB,IAAI,EAAE,UAAU,EAAE,CAAC;CACpB;AA2LD,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAE,GAAG,iBAAiB,CA+B1G"}
|
|
@@ -3,7 +3,8 @@ import { extractCommandsFromGwt, extractCommandsFromThen } from './commands.js';
|
|
|
3
3
|
import { extractEventsFromGiven, extractEventsFromThen, extractEventsFromWhen } from './events.js';
|
|
4
4
|
import { extractFieldsFromMessage } from './fields.js';
|
|
5
5
|
import { extractProjectionIdField, extractProjectionSingleton } from './projection.js';
|
|
6
|
-
import {
|
|
6
|
+
import { normalizeReactEntry } from './slice-normalizer.js';
|
|
7
|
+
import { extractStatesFromData, extractStatesFromGiven, extractStatesFromTarget } from './states.js';
|
|
7
8
|
import { extractGwtFromSpecs } from './step-converter.js';
|
|
8
9
|
const debug = createDebug('auto:server-generator-apollo-emmett:extract:messages');
|
|
9
10
|
const debugCommand = createDebug('auto:server-generator-apollo-emmett:extract:messages:command');
|
|
@@ -123,21 +124,32 @@ function extractMessagesForReact(slice, allMessages) {
|
|
|
123
124
|
}
|
|
124
125
|
const gwtSpecs = extractGwtFromSpecs(specs, 'react');
|
|
125
126
|
debugReact(' Found %d GWT specs', gwtSpecs.length);
|
|
127
|
+
for (const gwt of gwtSpecs) {
|
|
128
|
+
normalizeReactEntry(gwt, allMessages);
|
|
129
|
+
}
|
|
126
130
|
const reactGwtSpecs = gwtSpecs.map((gwt) => ({
|
|
127
|
-
when: Array.isArray(gwt.when)
|
|
131
|
+
when: Array.isArray(gwt.when)
|
|
132
|
+
? gwt.when.filter((ref) => allMessages.some((m) => m.type === 'event' && m.name === ref.eventRef))
|
|
133
|
+
: undefined,
|
|
128
134
|
then: gwt.then.filter((item) => 'commandRef' in item),
|
|
129
135
|
}));
|
|
130
|
-
const events = extractEventsFromWhen(reactGwtSpecs, allMessages);
|
|
136
|
+
const events = extractEventsFromWhen(reactGwtSpecs, allMessages, slice.name);
|
|
131
137
|
debugReact(' Extracted %d events from when', events.length);
|
|
138
|
+
const allGivenRefs = gwtSpecs.flatMap((gwt) => gwt.given);
|
|
139
|
+
const givenEventRefs = allGivenRefs.filter((ref) => allMessages.some((m) => m.type === 'event' && m.name === ref.eventRef));
|
|
140
|
+
const givenEvents = extractEventsFromGiven(givenEventRefs, allMessages, slice.name);
|
|
141
|
+
debugReact(' Extracted %d events from given', givenEvents.length);
|
|
142
|
+
const givenStates = extractStatesFromGiven(allGivenRefs, allMessages);
|
|
143
|
+
debugReact(' Extracted %d states from given', givenStates.length);
|
|
132
144
|
const { commands, commandSchemasByName } = extractCommandsFromThen(gwtSpecs, allMessages);
|
|
133
145
|
debugReact(' Extracted %d commands from then', commands.length);
|
|
134
146
|
debugReact(' Command schemas: %o', Object.keys(commandSchemasByName));
|
|
135
|
-
const
|
|
136
|
-
debugReact(' Extracted %d states from data',
|
|
147
|
+
const dataStates = extractStatesFromData(slice, allMessages);
|
|
148
|
+
debugReact(' Extracted %d states from data', dataStates.length);
|
|
137
149
|
const result = {
|
|
138
150
|
commands,
|
|
139
|
-
events: deduplicateMessages(events),
|
|
140
|
-
states,
|
|
151
|
+
events: deduplicateMessages([...events, ...givenEvents]),
|
|
152
|
+
states: deduplicateMessages([...dataStates, ...givenStates]),
|
|
141
153
|
commandSchemasByName,
|
|
142
154
|
};
|
|
143
155
|
debugReact(' Final result: %d commands, %d events, %d states', result.commands.length, result.events.length, result.states.length);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"messages.js","sourceRoot":"","sources":["../../../../src/codegen/extract/messages.ts"],"names":[],"mappings":"AACA,OAAO,WAAW,MAAM,OAAO,CAAC;AAEhC,OAAO,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAC7E,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAC;AAChG,OAAO,EAAE,wBAAwB,EAAE,MAAM,UAAU,CAAC;AACpD,OAAO,EAAE,wBAAwB,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAC;AACpF,OAAO,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"messages.js","sourceRoot":"","sources":["../../../../src/codegen/extract/messages.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { Slice, Spec } from '@auto-engineer/narrative';
|
|
2
|
+
import type { MessageDefinition } from '../types';
|
|
2
3
|
import { type CommandRef, type ErrorRef, type EventRef, type QueryActionRef, type StateRef } from './step-converter';
|
|
3
4
|
interface NormalizedExample {
|
|
4
5
|
description: string;
|
|
@@ -14,6 +15,11 @@ interface NormalizedSpecs {
|
|
|
14
15
|
name: string;
|
|
15
16
|
rules: NormalizedRule[];
|
|
16
17
|
}
|
|
18
|
+
export declare function normalizeReactEntry(entry: {
|
|
19
|
+
given: EventRef[];
|
|
20
|
+
when: CommandRef | EventRef[] | QueryActionRef;
|
|
21
|
+
then: Array<EventRef | StateRef | CommandRef | ErrorRef>;
|
|
22
|
+
}, allMessages: MessageDefinition[]): void;
|
|
17
23
|
type SliceWithServer = Slice & {
|
|
18
24
|
server?: {
|
|
19
25
|
specs?: Spec[];
|
|
@@ -24,6 +30,6 @@ type NormalizedSlice<T extends SliceWithServer> = Omit<T, 'server'> & {
|
|
|
24
30
|
specs?: NormalizedSpecs | null;
|
|
25
31
|
};
|
|
26
32
|
};
|
|
27
|
-
export declare function normalizeSliceForTemplate<T extends SliceWithServer>(slice: T): NormalizedSlice<T>;
|
|
33
|
+
export declare function normalizeSliceForTemplate<T extends SliceWithServer>(slice: T, allMessages?: MessageDefinition[]): NormalizedSlice<T>;
|
|
28
34
|
export {};
|
|
29
35
|
//# sourceMappingURL=slice-normalizer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"slice-normalizer.d.ts","sourceRoot":"","sources":["../../../../src/codegen/extract/slice-normalizer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EACL,KAAK,UAAU,EACf,KAAK,QAAQ,EACb,KAAK,QAAQ,EAIb,KAAK,cAAc,EAEnB,KAAK,QAAQ,EACd,MAAM,kBAAkB,CAAC;AAE1B,UAAU,iBAAiB;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,IAAI,EAAE,UAAU,GAAG,QAAQ,EAAE,GAAG,cAAc,CAAC;IAC/C,IAAI,EAAE,KAAK,CAAC,QAAQ,GAAG,QAAQ,GAAG,UAAU,GAAG,QAAQ,CAAC,CAAC;CAC1D;AAED,UAAU,cAAc;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,iBAAiB,EAAE,CAAC;CAC/B;AAED,UAAU,eAAe;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,cAAc,EAAE,CAAC;CACzB;
|
|
1
|
+
{"version":3,"file":"slice-normalizer.d.ts","sourceRoot":"","sources":["../../../../src/codegen/extract/slice-normalizer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAClD,OAAO,EACL,KAAK,UAAU,EACf,KAAK,QAAQ,EACb,KAAK,QAAQ,EAIb,KAAK,cAAc,EAEnB,KAAK,QAAQ,EACd,MAAM,kBAAkB,CAAC;AAE1B,UAAU,iBAAiB;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,IAAI,EAAE,UAAU,GAAG,QAAQ,EAAE,GAAG,cAAc,CAAC;IAC/C,IAAI,EAAE,KAAK,CAAC,QAAQ,GAAG,QAAQ,GAAG,UAAU,GAAG,QAAQ,CAAC,CAAC;CAC1D;AAED,UAAU,cAAc;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,iBAAiB,EAAE,CAAC;CAC/B;AAED,UAAU,eAAe;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,cAAc,EAAE,CAAC;CACzB;AAqBD,wBAAgB,mBAAmB,CACjC,KAAK,EAAE;IACL,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,IAAI,EAAE,UAAU,GAAG,QAAQ,EAAE,GAAG,cAAc,CAAC;IAC/C,IAAI,EAAE,KAAK,CAAC,QAAQ,GAAG,QAAQ,GAAG,UAAU,GAAG,QAAQ,CAAC,CAAC;CAC1D,EACD,WAAW,EAAE,iBAAiB,EAAE,GAC/B,IAAI,CAeN;AAqCD,KAAK,eAAe,GAAG,KAAK,GAAG;IAAE,MAAM,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,IAAI,EAAE,CAAA;KAAE,CAAA;CAAE,CAAC;AAC/D,KAAK,eAAe,CAAC,CAAC,SAAS,eAAe,IAAI,IAAI,CAAC,CAAC,EAAE,QAAQ,CAAC,GAAG;IACpE,MAAM,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,GAAG;QAAE,KAAK,CAAC,EAAE,eAAe,GAAG,IAAI,CAAA;KAAE,CAAC;CAC1E,CAAC;AAEF,wBAAgB,yBAAyB,CAAC,CAAC,SAAS,eAAe,EACjE,KAAK,EAAE,CAAC,EACR,WAAW,CAAC,EAAE,iBAAiB,EAAE,GAChC,eAAe,CAAC,CAAC,CAAC,CAepB"}
|
|
@@ -16,7 +16,32 @@ function groupGwtByRule(gwtResults) {
|
|
|
16
16
|
}
|
|
17
17
|
return grouped;
|
|
18
18
|
}
|
|
19
|
-
function
|
|
19
|
+
export function normalizeReactEntry(entry, allMessages) {
|
|
20
|
+
if (!Array.isArray(entry.when))
|
|
21
|
+
return;
|
|
22
|
+
const originalWhen = entry.when[0];
|
|
23
|
+
const whenRef = originalWhen?.eventRef;
|
|
24
|
+
if (!whenRef)
|
|
25
|
+
return;
|
|
26
|
+
if (allMessages.some((m) => m.type === 'event' && m.name === whenRef))
|
|
27
|
+
return;
|
|
28
|
+
const triggerIdx = entry.given.findIndex((ref) => allMessages.some((m) => m.type === 'event' && m.name === ref.eventRef));
|
|
29
|
+
if (triggerIdx === -1)
|
|
30
|
+
return;
|
|
31
|
+
entry.when = [entry.given[triggerIdx]];
|
|
32
|
+
entry.given = entry.given.filter((_, i) => i !== triggerIdx);
|
|
33
|
+
if (allMessages.some((m) => m.type === 'command' && m.name === whenRef)) {
|
|
34
|
+
entry.then = [{ commandRef: whenRef, exampleData: originalWhen.exampleData }];
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
function normalizeReactPatternB(rules, allMessages) {
|
|
38
|
+
for (const rule of rules) {
|
|
39
|
+
for (const example of rule.examples) {
|
|
40
|
+
normalizeReactEntry(example, allMessages);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
function normalizeSpecsForTemplate(specs, sliceType, allMessages) {
|
|
20
45
|
if (specs.length === 0)
|
|
21
46
|
return null;
|
|
22
47
|
const gwtResults = extractGwtFromSpecs(specs, sliceType);
|
|
@@ -26,17 +51,20 @@ function normalizeSpecsForTemplate(specs, sliceType) {
|
|
|
26
51
|
description: ruleName,
|
|
27
52
|
examples: gwts.map(gwtToNormalizedExample),
|
|
28
53
|
}));
|
|
54
|
+
if (sliceType === 'react' && allMessages) {
|
|
55
|
+
normalizeReactPatternB(rules, allMessages);
|
|
56
|
+
}
|
|
29
57
|
return {
|
|
30
58
|
name: featureName,
|
|
31
59
|
rules,
|
|
32
60
|
};
|
|
33
61
|
}
|
|
34
|
-
export function normalizeSliceForTemplate(slice) {
|
|
62
|
+
export function normalizeSliceForTemplate(slice, allMessages) {
|
|
35
63
|
if (!('server' in slice) || !slice.server?.specs) {
|
|
36
64
|
return slice;
|
|
37
65
|
}
|
|
38
66
|
const sliceType = getSliceType(slice);
|
|
39
|
-
const normalizedSpecs = normalizeSpecsForTemplate(slice.server.specs, sliceType);
|
|
67
|
+
const normalizedSpecs = normalizeSpecsForTemplate(slice.server.specs, sliceType, allMessages);
|
|
40
68
|
return {
|
|
41
69
|
...slice,
|
|
42
70
|
server: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"slice-normalizer.js","sourceRoot":"","sources":["../../../../src/codegen/extract/slice-normalizer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"slice-normalizer.js","sourceRoot":"","sources":["../../../../src/codegen/extract/slice-normalizer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { Slice } from '@auto-engineer/narrative';
|
|
2
|
-
import type { Message, MessageDefinition } from '../types';
|
|
2
|
+
import type { EventRef, Message, MessageDefinition } from '../types';
|
|
3
|
+
export declare function extractStatesFromGiven(givenRefs: EventRef[], allMessages: MessageDefinition[]): Message[];
|
|
3
4
|
export declare function extractStatesFromTarget(slice: Slice, allMessages: MessageDefinition[]): Message[];
|
|
4
5
|
export declare function extractStatesFromData(slice: Slice, allMessages: MessageDefinition[]): Message[];
|
|
5
6
|
//# sourceMappingURL=states.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"states.d.ts","sourceRoot":"","sources":["../../../../src/codegen/extract/states.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,KAAK,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"states.d.ts","sourceRoot":"","sources":["../../../../src/codegen/extract/states.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AA4BrE,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,QAAQ,EAAE,EAAE,WAAW,EAAE,iBAAiB,EAAE,GAAG,OAAO,EAAE,CAIzG;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAE,GAAG,OAAO,EAAE,CAWjG;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAE,GAAG,OAAO,EAAE,CA2B/F"}
|
|
@@ -13,6 +13,11 @@ function hasServerData(slice) {
|
|
|
13
13
|
Array.isArray(slice.server.data.items) &&
|
|
14
14
|
slice.server.data.items.length > 0);
|
|
15
15
|
}
|
|
16
|
+
export function extractStatesFromGiven(givenRefs, allMessages) {
|
|
17
|
+
return givenRefs
|
|
18
|
+
.filter((ref) => allMessages.some((m) => m.type === 'state' && m.name === ref.eventRef))
|
|
19
|
+
.map((ref) => createStateMessage(ref.eventRef, allMessages));
|
|
20
|
+
}
|
|
16
21
|
export function extractStatesFromTarget(slice, allMessages) {
|
|
17
22
|
if (!hasServerData(slice)) {
|
|
18
23
|
return [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"states.js","sourceRoot":"","sources":["../../../../src/codegen/extract/states.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,wBAAwB,EAAE,MAAM,UAAU,CAAC;AASpD,SAAS,kBAAkB,CAAC,SAAiB,EAAE,WAAgC;IAC7E,OAAO;QACL,IAAI,EAAE,SAAS;QACf,MAAM,EAAE,wBAAwB,CAAC,SAAS,EAAE,OAAO,EAAE,WAAW,CAAC;KAClE,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,KAAY;IACjC,OAAO,CACL,QAAQ,IAAI,KAAK;QACjB,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,MAAM;QACtB,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,IAAI,IAAI;QAChC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;QACtC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CACnC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,KAAY,EAAE,WAAgC;IACpF,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK;SACpC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAE,CAAc,CAAC,MAAM,EAAE,IAAI,CAAC;SACxC,MAAM,CAAC,CAAC,IAAI,EAAkB,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC;IAC9D,MAAM,aAAa,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;IAEnD,OAAO,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,kBAAkB,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC;AAC5E,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,KAAY,EAAE,WAAgC;IAClF,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,MAAM,GAAc,EAAE,CAAC;IAC7B,MAAM,UAAU,GAAG,IAAI,GAAG,EAAU,CAAC;IAErC,KAAK,MAAM,QAAQ,IAAI,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;QAC/C,MAAM,IAAI,GAAG,QAAoB,CAAC;QAClC,IAAI,CAAC,CAAC,QAAQ,IAAI,IAAI,CAAC,IAAI,OAAO,IAAI,CAAC,MAAM,EAAE,IAAI,KAAK,QAAQ,EAAE,CAAC;YACjE,SAAS;QACX,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;QACnC,IAAI,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;YAC9B,SAAS;QACX,CAAC;QAED,MAAM,MAAM,GAAG,wBAAwB,CAAC,SAAS,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;QACzE,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC;YACxD,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
1
|
+
{"version":3,"file":"states.js","sourceRoot":"","sources":["../../../../src/codegen/extract/states.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
export declare function isInlineObject(ts: string): boolean;
|
|
2
2
|
export declare function isInlineObjectArray(ts: string): boolean;
|
|
3
3
|
export declare function baseTs(ts: string): string;
|
|
4
|
+
export declare function parseInlineObjectFields(tsType: string): Array<{
|
|
5
|
+
name: string;
|
|
6
|
+
tsType: string;
|
|
7
|
+
}>;
|
|
4
8
|
export declare function createIsEnumType(toTsFieldType: (ts: string) => string): (tsType: string) => boolean;
|
|
5
9
|
export declare function createFieldUsesDate(graphqlType: (ts: string) => string): (ts: string) => boolean;
|
|
6
10
|
export declare function createFieldUsesJSON(graphqlType: (ts: string) => string): (ts: string) => boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"type-helpers.d.ts","sourceRoot":"","sources":["../../../../src/codegen/extract/type-helpers.ts"],"names":[],"mappings":"AAAA,wBAAgB,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAElD;AAED,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAGvD;AAED,wBAAgB,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAEzC;AAED,wBAAgB,gBAAgB,CAAC,aAAa,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,MAAM,IAC5D,QAAQ,MAAM,KAAG,OAAO,CAsBjC;AAED,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,MAAM,IAC7D,IAAI,MAAM,KAAG,OAAO,CAO7B;AAED,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,MAAM,IAC7D,IAAI,MAAM,KAAG,OAAO,CAO7B;AAED,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,MAAM,IAC9D,IAAI,MAAM,KAAG,OAAO,
|
|
1
|
+
{"version":3,"file":"type-helpers.d.ts","sourceRoot":"","sources":["../../../../src/codegen/extract/type-helpers.ts"],"names":[],"mappings":"AAAA,wBAAgB,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAElD;AAED,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAGvD;AAED,wBAAgB,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAEzC;AAoCD,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CAc/F;AAED,wBAAgB,gBAAgB,CAAC,aAAa,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,MAAM,IAC5D,QAAQ,MAAM,KAAG,OAAO,CAsBjC;AAED,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,MAAM,IAC7D,IAAI,MAAM,KAAG,OAAO,CAO7B;AAED,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,MAAM,IAC7D,IAAI,MAAM,KAAG,OAAO,CAO7B;AAED,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,MAAM,IAC9D,IAAI,MAAM,KAAG,OAAO,CAU7B;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,MAAM,GAAG,MAAM,CAK7F;AAED,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,EAAE,aAAa,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,MAAM,IAC3G,QAAQ,KAAK,CAAC;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,KAAG,MAAM,EAAE,CAUrE"}
|
|
@@ -8,6 +8,62 @@ export function isInlineObjectArray(ts) {
|
|
|
8
8
|
export function baseTs(ts) {
|
|
9
9
|
return (ts ?? 'string').replace(/\s*\|\s*null\b/g, '').trim();
|
|
10
10
|
}
|
|
11
|
+
function extractObjectBody(tsType) {
|
|
12
|
+
const t = tsType.trim();
|
|
13
|
+
let inner;
|
|
14
|
+
if (t.startsWith('Array<{') && t.endsWith('}>')) {
|
|
15
|
+
inner = t.slice(6, -1);
|
|
16
|
+
}
|
|
17
|
+
else if (t.endsWith('[]')) {
|
|
18
|
+
inner = t.slice(0, -2).trim();
|
|
19
|
+
}
|
|
20
|
+
else {
|
|
21
|
+
inner = t;
|
|
22
|
+
}
|
|
23
|
+
const match = inner.match(/^\{([\s\S]*)\}$/);
|
|
24
|
+
return match ? match[1] : null;
|
|
25
|
+
}
|
|
26
|
+
function splitFieldsRespectingNesting(body) {
|
|
27
|
+
const fields = [];
|
|
28
|
+
let current = '';
|
|
29
|
+
let depth = 0;
|
|
30
|
+
for (const char of body) {
|
|
31
|
+
if (char === '<' || char === '{')
|
|
32
|
+
depth++;
|
|
33
|
+
if (char === '>' || char === '}')
|
|
34
|
+
depth--;
|
|
35
|
+
if ((char === ';' || char === ',') && depth === 0) {
|
|
36
|
+
const trimmed = current.trim();
|
|
37
|
+
if (trimmed)
|
|
38
|
+
fields.push(trimmed);
|
|
39
|
+
current = '';
|
|
40
|
+
continue;
|
|
41
|
+
}
|
|
42
|
+
current += char;
|
|
43
|
+
}
|
|
44
|
+
const trimmed = current.trim();
|
|
45
|
+
if (trimmed)
|
|
46
|
+
fields.push(trimmed);
|
|
47
|
+
return fields;
|
|
48
|
+
}
|
|
49
|
+
export function parseInlineObjectFields(tsType) {
|
|
50
|
+
const body = extractObjectBody(tsType);
|
|
51
|
+
if (body === null)
|
|
52
|
+
return [];
|
|
53
|
+
const rawFields = splitFieldsRespectingNesting(body);
|
|
54
|
+
return rawFields
|
|
55
|
+
.map((f) => {
|
|
56
|
+
const colonIdx = f.indexOf(':');
|
|
57
|
+
if (colonIdx === -1)
|
|
58
|
+
return null;
|
|
59
|
+
const name = f.slice(0, colonIdx).trim();
|
|
60
|
+
const type = f.slice(colonIdx + 1).trim();
|
|
61
|
+
if (!name || !type)
|
|
62
|
+
return null;
|
|
63
|
+
return { name, tsType: type };
|
|
64
|
+
})
|
|
65
|
+
.filter((f) => f !== null);
|
|
66
|
+
}
|
|
11
67
|
export function createIsEnumType(toTsFieldType) {
|
|
12
68
|
return (tsType) => {
|
|
13
69
|
const converted = toTsFieldType(tsType);
|
|
@@ -59,20 +115,8 @@ export function createFieldUsesFloat(graphqlType) {
|
|
|
59
115
|
if (gqlType.includes('Float'))
|
|
60
116
|
return true;
|
|
61
117
|
if (isInlineObject(b) || isInlineObjectArray(b)) {
|
|
62
|
-
const
|
|
63
|
-
|
|
64
|
-
.trim()
|
|
65
|
-
.replace(/^Array<\{/, '{')
|
|
66
|
-
.replace(/}>$/, '}')
|
|
67
|
-
: b.trim().replace(/\[\]$/, '');
|
|
68
|
-
const match = inner.match(/^\{([\s\S]*)\}$/);
|
|
69
|
-
const body = match ? match[1] : '';
|
|
70
|
-
const rawFields = body.split(/[,;]\s*/).filter(Boolean);
|
|
71
|
-
return rawFields.some((f) => {
|
|
72
|
-
const parts = f.split(':');
|
|
73
|
-
const type = parts.slice(1).join(':').trim();
|
|
74
|
-
return type.length > 0 && graphqlType(type).includes('Float');
|
|
75
|
-
});
|
|
118
|
+
const fields = parseInlineObjectFields(b);
|
|
119
|
+
return fields.some((f) => graphqlType(f.tsType).includes('Float'));
|
|
76
120
|
}
|
|
77
121
|
return false;
|
|
78
122
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"type-helpers.js","sourceRoot":"","sources":["../../../../src/codegen/extract/type-helpers.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,cAAc,CAAC,EAAU;IACvC,OAAO,eAAe,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;AACjD,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,EAAU;IAC5C,MAAM,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAC5B,OAAO,sBAAsB,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACvE,CAAC;AAED,MAAM,UAAU,MAAM,CAAC,EAAU;IAC/B,OAAO,CAAC,EAAE,IAAI,QAAQ,CAAC,CAAC,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;AAChE,CAAC;AAED,
|
|
1
|
+
{"version":3,"file":"type-helpers.js","sourceRoot":"","sources":["../../../../src/codegen/extract/type-helpers.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":"AAGA,OAAO,KAAK,EAAE,KAAK,EAAE,SAAS,EAAS,MAAM,0BAA0B,CAAC;AAgQxE,MAAM,WAAW,QAAQ;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAoaD,wBAAsB,yBAAyB,CAC7C,KAAK,EAAE,SAAS,EAAE,EAClB,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,EAC3B,YAAY,CAAC,EAAE,KAAK,CAAC,cAAc,CAAC,EACpC,OAAO,SAAqB,EAC5B,gBAAgB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,GAC7B,OAAO,CAAC,QAAQ,EAAE,CAAC,CA6CrB;AAED,wBAAsB,sBAAsB,CAAC,KAAK,EAAE,QAAQ,EAAE,iBAkB7D;AAED,wBAAsB,kBAAkB,CACtC,KAAK,EAAE,SAAS,EAAE,EAClB,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,EAC3B,OAAO,SAAqB,GAC3B,OAAO,CAAC,IAAI,CAAC,CAWf"}
|