@auto-engineer/frontend-generator-react-graphql 0.10.5 → 0.11.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/CHANGELOG.md +12 -0
- package/dist/src/commands/generate-client.d.ts +15 -14
- package/dist/src/commands/generate-client.d.ts.map +1 -1
- package/dist/src/commands/generate-client.js +42 -25
- package/dist/src/commands/generate-client.js.map +1 -1
- package/dist/src/generator/generateComponents.d.ts +2 -2
- package/dist/src/generator/generateComponents.d.ts.map +1 -1
- package/dist/src/generator/generateComponents.js +6 -3
- package/dist/src/generator/generateComponents.js.map +1 -1
- package/dist/src/index.d.ts +28 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/index.js +61 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/types.d.ts +2 -0
- package/dist/src/types.d.ts.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +4 -4
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# @auto-engineer/frontend-react-graphql-generator
|
|
2
2
|
|
|
3
|
+
## 0.11.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- Version bump
|
|
8
|
+
|
|
9
|
+
### Patch Changes
|
|
10
|
+
|
|
11
|
+
- Updated dependencies []:
|
|
12
|
+
- @auto-engineer/message-bus@0.11.0
|
|
13
|
+
- @auto-engineer/ai-gateway@0.11.0
|
|
14
|
+
|
|
3
15
|
## 0.10.5
|
|
4
16
|
|
|
5
17
|
### Patch Changes
|
|
@@ -9,23 +9,24 @@ export type GenerateClientCommand = Command<'GenerateClient', {
|
|
|
9
9
|
export type ClientGeneratedEvent = Event<'ClientGenerated', {
|
|
10
10
|
targetDir: string;
|
|
11
11
|
}>;
|
|
12
|
+
export type MoleculeGeneratedEvent = Event<'MoleculeGenerated', {
|
|
13
|
+
filePath: string;
|
|
14
|
+
}>;
|
|
15
|
+
export type OrganismGeneratedEvent = Event<'OrganismGenerated', {
|
|
16
|
+
filePath: string;
|
|
17
|
+
}>;
|
|
18
|
+
export type PageGeneratedEvent = Event<'PageGenerated', {
|
|
19
|
+
filePath: string;
|
|
20
|
+
}>;
|
|
21
|
+
export type AppGeneratedEvent = Event<'AppGenerated', {
|
|
22
|
+
filePath: string;
|
|
23
|
+
}>;
|
|
24
|
+
type ComponentGeneratedEvent = MoleculeGeneratedEvent | OrganismGeneratedEvent | PageGeneratedEvent | AppGeneratedEvent;
|
|
12
25
|
export type ClientGenerationFailedEvent = Event<'ClientGenerationFailed', {
|
|
13
26
|
error: string;
|
|
14
27
|
targetDir: string;
|
|
15
28
|
}>;
|
|
16
|
-
export type GenerateClientEvents = ClientGeneratedEvent | ClientGenerationFailedEvent;
|
|
17
|
-
export declare const commandHandler: import("@auto-engineer/message-bus").
|
|
18
|
-
type: "GenerateClient";
|
|
19
|
-
data: Readonly<{
|
|
20
|
-
starterDir: string;
|
|
21
|
-
targetDir: string;
|
|
22
|
-
iaSchemaPath: string;
|
|
23
|
-
gqlSchemaPath: string;
|
|
24
|
-
figmaVariablesPath: string;
|
|
25
|
-
}>;
|
|
26
|
-
timestamp?: Date;
|
|
27
|
-
requestId?: string;
|
|
28
|
-
correlationId?: string;
|
|
29
|
-
}>>;
|
|
29
|
+
export type GenerateClientEvents = ClientGeneratedEvent | ClientGenerationFailedEvent | ComponentGeneratedEvent;
|
|
30
|
+
export declare const commandHandler: import("@auto-engineer/message-bus").CommandHandler;
|
|
30
31
|
export default commandHandler;
|
|
31
32
|
//# sourceMappingURL=generate-client.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate-client.d.ts","sourceRoot":"","sources":["../../../src/commands/generate-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,KAAK,EAAwB,MAAM,4BAA4B,CAAC;AAe5F,MAAM,MAAM,qBAAqB,GAAG,OAAO,CACzC,gBAAgB,EAChB;IACE,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,kBAAkB,EAAE,MAAM,CAAC;CAC5B,CACF,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG,KAAK,CACtC,iBAAiB,EACjB;IACE,SAAS,EAAE,MAAM,CAAC;CACnB,CACF,CAAC;AAEF,MAAM,MAAM,
|
|
1
|
+
{"version":3,"file":"generate-client.d.ts","sourceRoot":"","sources":["../../../src/commands/generate-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,KAAK,EAAwB,MAAM,4BAA4B,CAAC;AAe5F,MAAM,MAAM,qBAAqB,GAAG,OAAO,CACzC,gBAAgB,EAChB;IACE,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,kBAAkB,EAAE,MAAM,CAAC;CAC5B,CACF,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG,KAAK,CACtC,iBAAiB,EACjB;IACE,SAAS,EAAE,MAAM,CAAC;CACnB,CACF,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG,KAAK,CACxC,mBAAmB,EACnB;IACE,QAAQ,EAAE,MAAM,CAAC;CAClB,CACF,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG,KAAK,CACxC,mBAAmB,EACnB;IACE,QAAQ,EAAE,MAAM,CAAC;CAClB,CACF,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG,KAAK,CACpC,eAAe,EACf;IACE,QAAQ,EAAE,MAAM,CAAC;CAClB,CACF,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG,KAAK,CACnC,cAAc,EACd;IACE,QAAQ,EAAE,MAAM,CAAC;CAClB,CACF,CAAC;AAEF,KAAK,uBAAuB,GAAG,sBAAsB,GAAG,sBAAsB,GAAG,kBAAkB,GAAG,iBAAiB,CAAC;AAExH,MAAM,MAAM,2BAA2B,GAAG,KAAK,CAC7C,wBAAwB,EACxB;IACE,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;CACnB,CACF,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG,oBAAoB,GAAG,2BAA2B,GAAG,uBAAuB,CAAC;AAEhH,eAAO,MAAM,cAAc,qDA6CzB,CAAC;AAsGH,eAAe,cAAc,CAAC"}
|
|
@@ -46,23 +46,24 @@ export const commandHandler = defineCommandHandler({
|
|
|
46
46
|
const typedCommand = command;
|
|
47
47
|
debug('Command handler invoked for GenerateClient');
|
|
48
48
|
const result = await handleGenerateClientCommandInternal(typedCommand);
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
49
|
+
const events = Array.isArray(result) ? result : [result];
|
|
50
|
+
const finalEvent = events[events.length - 1];
|
|
51
|
+
if (finalEvent.type === 'ClientGenerated') {
|
|
52
|
+
debug('Client generated at %s', finalEvent.data.targetDir);
|
|
52
53
|
}
|
|
53
|
-
else {
|
|
54
|
-
debug('
|
|
55
|
-
debug('Failed: %s', result.data.error);
|
|
54
|
+
else if (finalEvent.type === 'ClientGenerationFailed') {
|
|
55
|
+
debug('Failed to generate client: %s', finalEvent.data.error);
|
|
56
56
|
}
|
|
57
57
|
return result;
|
|
58
58
|
},
|
|
59
59
|
});
|
|
60
60
|
async function handleGenerateClientCommandInternal(command) {
|
|
61
61
|
const { starterDir, targetDir, iaSchemaPath, gqlSchemaPath, figmaVariablesPath } = command.data;
|
|
62
|
-
|
|
63
|
-
debug('
|
|
62
|
+
const events = [];
|
|
63
|
+
debug('Starting client generation');
|
|
64
|
+
debug('Starter directory: %s', starterDir);
|
|
65
|
+
debug('Target directory: %s', targetDir);
|
|
64
66
|
try {
|
|
65
|
-
// Build frontend scaffold
|
|
66
67
|
debugBuilder('Creating FrontendScaffoldBuilder');
|
|
67
68
|
const builder = new FrontendScaffoldBuilder();
|
|
68
69
|
debugBuilder('Cloning starter from: %s', starterDir);
|
|
@@ -70,34 +71,50 @@ async function handleGenerateClientCommandInternal(command) {
|
|
|
70
71
|
debugBuilder('Building to target: %s', targetDir);
|
|
71
72
|
await builder.build(targetDir);
|
|
72
73
|
debugBuilder('Build complete');
|
|
73
|
-
// Read and parse IA schema
|
|
74
74
|
debugGeneration('Reading IA schema from: %s', iaSchemaPath);
|
|
75
75
|
const iaSchemeJsonFile = await fs.readFile(iaSchemaPath, 'utf-8');
|
|
76
76
|
debugGeneration('IA schema file size: %d bytes', iaSchemeJsonFile.length);
|
|
77
77
|
const iaSchemeJson = JSON.parse(iaSchemeJsonFile);
|
|
78
78
|
debugGeneration('IA schema parsed successfully');
|
|
79
|
-
// Generate components from IA schema
|
|
80
79
|
debugGeneration('Generating components to: %s/src', targetDir);
|
|
81
|
-
generateComponents(iaSchemeJson, `${targetDir}/src`);
|
|
82
|
-
debugGeneration('
|
|
83
|
-
|
|
80
|
+
const generatedComponents = generateComponents(iaSchemeJson, `${targetDir}/src`) ?? [];
|
|
81
|
+
debugGeneration(generatedComponents.length, 'components generated');
|
|
82
|
+
const componentTypeToEventType = {
|
|
83
|
+
molecule: 'MoleculeGenerated',
|
|
84
|
+
organism: 'OrganismGenerated',
|
|
85
|
+
page: 'PageGenerated',
|
|
86
|
+
app: 'AppGenerated',
|
|
87
|
+
};
|
|
88
|
+
generatedComponents.forEach((component) => {
|
|
89
|
+
const eventType = componentTypeToEventType[component.type];
|
|
90
|
+
if (eventType) {
|
|
91
|
+
debugGeneration('Emitting event for generated %s: %s', component.type, component.path);
|
|
92
|
+
events.push({
|
|
93
|
+
type: eventType,
|
|
94
|
+
data: {
|
|
95
|
+
filePath: component.path,
|
|
96
|
+
},
|
|
97
|
+
timestamp: new Date(),
|
|
98
|
+
requestId: command.requestId,
|
|
99
|
+
correlationId: command.correlationId,
|
|
100
|
+
});
|
|
101
|
+
}
|
|
102
|
+
});
|
|
84
103
|
debugGeneration('Writing GraphQL operations to: %s/src', targetDir);
|
|
85
104
|
writeGqlOperationsToFolder(iaSchemeJson, `${targetDir}/src`);
|
|
86
105
|
debugGeneration('GraphQL operations written');
|
|
87
|
-
// Generate GraphQL schema file
|
|
88
106
|
debugGeneration('Generating GraphQL schema from: %s', gqlSchemaPath);
|
|
89
107
|
generateSchemaFile(gqlSchemaPath, targetDir);
|
|
90
108
|
debugGeneration('GraphQL schema generated');
|
|
91
|
-
// Run codegen
|
|
92
109
|
debugGeneration('Running codegen in: %s', targetDir);
|
|
93
110
|
runCodegen(targetDir);
|
|
94
111
|
debugGeneration('Codegen complete');
|
|
95
|
-
// Configure starter
|
|
96
112
|
debugGeneration('Configuring starter with Figma variables: %s', figmaVariablesPath);
|
|
97
113
|
configureStarter(figmaVariablesPath, targetDir);
|
|
98
114
|
debugGeneration('Starter configured');
|
|
99
|
-
debug('Client generation
|
|
100
|
-
|
|
115
|
+
debug('Client generation completed successfully');
|
|
116
|
+
debug('Target directory: %s', targetDir);
|
|
117
|
+
events.push({
|
|
101
118
|
type: 'ClientGenerated',
|
|
102
119
|
data: {
|
|
103
120
|
targetDir,
|
|
@@ -105,14 +122,13 @@ async function handleGenerateClientCommandInternal(command) {
|
|
|
105
122
|
timestamp: new Date(),
|
|
106
123
|
requestId: command.requestId,
|
|
107
124
|
correlationId: command.correlationId,
|
|
108
|
-
};
|
|
125
|
+
});
|
|
126
|
+
return events;
|
|
109
127
|
}
|
|
110
128
|
catch (error) {
|
|
111
129
|
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
112
|
-
debug('
|
|
113
|
-
|
|
114
|
-
debug('Failed to generate client: %O', error);
|
|
115
|
-
return {
|
|
130
|
+
debug('Client generation failed with error: %O', error);
|
|
131
|
+
events.push({
|
|
116
132
|
type: 'ClientGenerationFailed',
|
|
117
133
|
data: {
|
|
118
134
|
error: errorMessage,
|
|
@@ -121,7 +137,8 @@ async function handleGenerateClientCommandInternal(command) {
|
|
|
121
137
|
timestamp: new Date(),
|
|
122
138
|
requestId: command.requestId,
|
|
123
139
|
correlationId: command.correlationId,
|
|
124
|
-
};
|
|
140
|
+
});
|
|
141
|
+
return events;
|
|
125
142
|
}
|
|
126
143
|
}
|
|
127
144
|
// Default export is the command handler
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate-client.js","sourceRoot":"","sources":["../../../src/commands/generate-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAC5F,OAAO,EAAE,QAAQ,IAAI,EAAE,EAAE,MAAM,IAAI,CAAC;AACpC,OAAO,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,WAAW,MAAM,OAAO,CAAC;AAEhC,MAAM,KAAK,GAAG,WAAW,CAAC,+CAA+C,CAAC,CAAC;AAC3E,MAAM,YAAY,GAAG,WAAW,CAAC,uDAAuD,CAAC,CAAC;AAC1F,MAAM,eAAe,GAAG,WAAW,CAAC,0DAA0D,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"generate-client.js","sourceRoot":"","sources":["../../../src/commands/generate-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { IAScheme } from '../types';
|
|
2
|
-
export declare function generateComponents(spec: IAScheme, basePath: string):
|
|
1
|
+
import { GeneratedFile, IAScheme } from '../types';
|
|
2
|
+
export declare function generateComponents(spec: IAScheme, basePath: string): GeneratedFile[];
|
|
3
3
|
//# sourceMappingURL=generateComponents.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generateComponents.d.ts","sourceRoot":"","sources":["../../../src/generator/generateComponents.ts"],"names":[],"mappings":"AAIA,OAAO,
|
|
1
|
+
{"version":3,"file":"generateComponents.d.ts","sourceRoot":"","sources":["../../../src/generator/generateComponents.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAmHnD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,GAAG,aAAa,EAAE,CAcpF"}
|
|
@@ -32,9 +32,9 @@ function generate(spec) {
|
|
|
32
32
|
files.push({
|
|
33
33
|
path: `output/components/molecules/${name}.tsx`,
|
|
34
34
|
content,
|
|
35
|
+
type: 'molecule',
|
|
35
36
|
});
|
|
36
37
|
}
|
|
37
|
-
// TODO collect all molecule generated events
|
|
38
38
|
// Organisms
|
|
39
39
|
debug('Generating %d organism components', Object.keys(spec.organisms.items).length);
|
|
40
40
|
for (const [name, def] of Object.entries(spec.organisms.items)) {
|
|
@@ -51,9 +51,9 @@ function generate(spec) {
|
|
|
51
51
|
files.push({
|
|
52
52
|
path: `output/components/organisms/${name}.tsx`,
|
|
53
53
|
content,
|
|
54
|
+
type: 'organism',
|
|
54
55
|
});
|
|
55
56
|
}
|
|
56
|
-
// TODO collect all organisms generated events
|
|
57
57
|
// Pages
|
|
58
58
|
debug('Generating %d page components', Object.keys(spec.pages.items).length);
|
|
59
59
|
for (const [name, def] of Object.entries(spec.pages.items)) {
|
|
@@ -71,9 +71,9 @@ function generate(spec) {
|
|
|
71
71
|
files.push({
|
|
72
72
|
path: `output/pages/${name}.tsx`,
|
|
73
73
|
content,
|
|
74
|
+
type: 'page',
|
|
74
75
|
});
|
|
75
76
|
}
|
|
76
|
-
// TODO collect all pages generated events
|
|
77
77
|
// App.tsx
|
|
78
78
|
debug('Generating App.tsx with %d pages', Object.keys(spec.pages.items).length);
|
|
79
79
|
const appContent = ejs.render(appTemplate, {
|
|
@@ -85,6 +85,7 @@ function generate(spec) {
|
|
|
85
85
|
files.push({
|
|
86
86
|
path: 'output/App.tsx',
|
|
87
87
|
content: appContent,
|
|
88
|
+
type: 'app',
|
|
88
89
|
});
|
|
89
90
|
debug('Generation complete - generated %d files', files.length);
|
|
90
91
|
return files;
|
|
@@ -108,8 +109,10 @@ export function generateComponents(spec, basePath) {
|
|
|
108
109
|
const rewritten = allFiles.map((file) => ({
|
|
109
110
|
path: path.join(basePath, file.path.replace(/^output[\\/]/, '')),
|
|
110
111
|
content: file.content,
|
|
112
|
+
type: file.type,
|
|
111
113
|
}));
|
|
112
114
|
writeToDisk(rewritten);
|
|
113
115
|
debug('Component generation complete');
|
|
116
|
+
return rewritten;
|
|
114
117
|
}
|
|
115
118
|
//# sourceMappingURL=generateComponents.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generateComponents.js","sourceRoot":"","sources":["../../../src/generator/generateComponents.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AAEpC,OAAO,WAAW,MAAM,OAAO,CAAC;AAEhC,MAAM,KAAK,GAAG,WAAW,CAAC,qDAAqD,CAAC,CAAC;AACjF,MAAM,cAAc,GAAG,WAAW,CAAC,+DAA+D,CAAC,CAAC;AACpG,MAAM,WAAW,GAAG,WAAW,CAAC,4DAA4D,CAAC,CAAC;AAE9F,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AAE3C,SAAS,QAAQ,CAAC,IAAc;IAC9B,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACvC,MAAM,KAAK,GAAoB,EAAE,CAAC;IAElC,cAAc,CAAC,sCAAsC,EAAE,SAAS,CAAC,CAAC;IAClE,MAAM,iBAAiB,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,yBAAyB,CAAC,EAAE,OAAO,CAAC,CAAC;IACvG,MAAM,YAAY,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,oBAAoB,CAAC,EAAE,OAAO,CAAC,CAAC;IAC7F,MAAM,WAAW,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,mBAAmB,CAAC,EAAE,OAAO,CAAC,CAAC;IAC3F,cAAc,CAAC,+BAA+B,CAAC,CAAC;IAEhD,YAAY;IACZ,KAAK,CAAC,mCAAmC,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC;IACrF,KAAK,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;QAC/D,WAAW,CAAC,yBAAyB,EAAE,IAAI,CAAC,CAAC;QAC7C,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,iBAAiB,EAAE;YAC5C,IAAI;YACJ,WAAW,EAAE,GAAG,CAAC,WAAW;YAC5B,KAAK,EAAE,GAAG,CAAC,WAAW,CAAC,KAAK;YAC5B,SAAS,EAAE,EAAE;YACb,SAAS,EAAE,EAAE;YACb,KAAK,EAAE,GAAG,CAAC,KAAK,IAAI,EAAE;YACtB,gBAAgB,EAAE,EAAE;SACrB,CAAC,CAAC;QACH,KAAK,CAAC,IAAI,CAAC;YACT,IAAI,EAAE,+BAA+B,IAAI,MAAM;YAC/C,OAAO;
|
|
1
|
+
{"version":3,"file":"generateComponents.js","sourceRoot":"","sources":["../../../src/generator/generateComponents.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AAEpC,OAAO,WAAW,MAAM,OAAO,CAAC;AAEhC,MAAM,KAAK,GAAG,WAAW,CAAC,qDAAqD,CAAC,CAAC;AACjF,MAAM,cAAc,GAAG,WAAW,CAAC,+DAA+D,CAAC,CAAC;AACpG,MAAM,WAAW,GAAG,WAAW,CAAC,4DAA4D,CAAC,CAAC;AAE9F,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AAE3C,SAAS,QAAQ,CAAC,IAAc;IAC9B,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACvC,MAAM,KAAK,GAAoB,EAAE,CAAC;IAElC,cAAc,CAAC,sCAAsC,EAAE,SAAS,CAAC,CAAC;IAClE,MAAM,iBAAiB,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,yBAAyB,CAAC,EAAE,OAAO,CAAC,CAAC;IACvG,MAAM,YAAY,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,oBAAoB,CAAC,EAAE,OAAO,CAAC,CAAC;IAC7F,MAAM,WAAW,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,mBAAmB,CAAC,EAAE,OAAO,CAAC,CAAC;IAC3F,cAAc,CAAC,+BAA+B,CAAC,CAAC;IAEhD,YAAY;IACZ,KAAK,CAAC,mCAAmC,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC;IACrF,KAAK,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;QAC/D,WAAW,CAAC,yBAAyB,EAAE,IAAI,CAAC,CAAC;QAC7C,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,iBAAiB,EAAE;YAC5C,IAAI;YACJ,WAAW,EAAE,GAAG,CAAC,WAAW;YAC5B,KAAK,EAAE,GAAG,CAAC,WAAW,CAAC,KAAK;YAC5B,SAAS,EAAE,EAAE;YACb,SAAS,EAAE,EAAE;YACb,KAAK,EAAE,GAAG,CAAC,KAAK,IAAI,EAAE;YACtB,gBAAgB,EAAE,EAAE;SACrB,CAAC,CAAC;QACH,KAAK,CAAC,IAAI,CAAC;YACT,IAAI,EAAE,+BAA+B,IAAI,MAAM;YAC/C,OAAO;YACP,IAAI,EAAE,UAAU;SACjB,CAAC,CAAC;IACL,CAAC;IAED,YAAY;IACZ,KAAK,CAAC,mCAAmC,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC;IACrF,KAAK,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;QAC/D,WAAW,CAAC,yBAAyB,EAAE,IAAI,CAAC,CAAC;QAC7C,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,iBAAiB,EAAE;YAC5C,IAAI;YACJ,WAAW,EAAE,GAAG,CAAC,WAAW;YAC5B,KAAK,EAAE,EAAE;YACT,SAAS,EAAE,GAAG,CAAC,WAAW,CAAC,SAAS;YACpC,SAAS,EAAE,EAAE;YACb,KAAK,EAAE,GAAG,CAAC,KAAK,IAAI,EAAE;YACtB,gBAAgB,EAAE,GAAG,CAAC,iBAAiB,IAAI,EAAE;SAC9C,CAAC,CAAC;QAEH,KAAK,CAAC,IAAI,CAAC;YACT,IAAI,EAAE,+BAA+B,IAAI,MAAM;YAC/C,OAAO;YACP,IAAI,EAAE,UAAU;SACjB,CAAC,CAAC;IACL,CAAC;IAED,QAAQ;IACR,KAAK,CAAC,+BAA+B,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC;IAC7E,KAAK,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3D,WAAW,CAAC,oCAAoC,EAAE,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;QACnE,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,YAAY,EAAE;YACvC,IAAI;YACJ,WAAW,EAAE,GAAG,CAAC,WAAW;YAC5B,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,SAAS;YAC/B,KAAK,EAAE,GAAG,CAAC,KAAK;YAChB,UAAU,EAAE,GAAG,CAAC,UAAU,IAAI,EAAE;YAChC,KAAK,EAAE,GAAG,CAAC,KAAK,IAAI,EAAE;YACtB,gBAAgB,EAAE,GAAG,CAAC,iBAAiB,IAAI,EAAE;YAC7C,QAAQ,EAAE,GAAG,CAAC,QAAQ;SACvB,CAAC,CAAC;QAEH,KAAK,CAAC,IAAI,CAAC;YACT,IAAI,EAAE,gBAAgB,IAAI,MAAM;YAChC,OAAO;YACP,IAAI,EAAE,MAAM;SACb,CAAC,CAAC;IACL,CAAC;IAED,UAAU;IACV,KAAK,CAAC,kCAAkC,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC;IAChF,MAAM,UAAU,GAAG,GAAG,CAAC,MAAM,CAAC,WAAW,EAAE;QACzC,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;YAC5D,IAAI;YACJ,KAAK,EAAE,GAAG,CAAC,KAAK;SACjB,CAAC,CAAC;KACJ,CAAC,CAAC;IAEH,KAAK,CAAC,IAAI,CAAC;QACT,IAAI,EAAE,gBAAgB;QACtB,OAAO,EAAE,UAAU;QACnB,IAAI,EAAE,KAAK;KACZ,CAAC,CAAC;IAEH,KAAK,CAAC,0CAA0C,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAChE,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,WAAW,CAAC,KAAsB;IACzC,WAAW,CAAC,0BAA0B,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACtD,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1D,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QACzC,YAAY,EAAE,CAAC;QACf,WAAW,CAAC,wBAAwB,EAAE,YAAY,EAAE,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/E,CAAC;IACD,WAAW,CAAC,gCAAgC,CAAC,CAAC;AAChD,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,IAAc,EAAE,QAAgB;IACjE,KAAK,CAAC,+CAA+C,EAAE,QAAQ,CAAC,CAAC;IACjE,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAEhC,KAAK,CAAC,8BAA8B,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IACvD,MAAM,SAAS,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACxC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;QAChE,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,IAAI,EAAE,IAAI,CAAC,IAAI;KAChB,CAAC,CAAC,CAAC;IAEJ,WAAW,CAAC,SAAS,CAAC,CAAC;IACvB,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACvC,OAAO,SAAS,CAAC;AACnB,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
export declare function main(): Promise<string>;
|
|
2
|
+
export declare const COMMANDS: (import("@auto-engineer/message-bus").UnifiedCommandHandler<Readonly<{
|
|
3
|
+
type: "GenerateClient";
|
|
4
|
+
data: Readonly<{
|
|
5
|
+
starterDir: string;
|
|
6
|
+
targetDir: string;
|
|
7
|
+
iaSchemaPath: string;
|
|
8
|
+
gqlSchemaPath: string;
|
|
9
|
+
figmaVariablesPath: string;
|
|
10
|
+
}>;
|
|
11
|
+
timestamp?: Date;
|
|
12
|
+
requestId?: string;
|
|
13
|
+
correlationId?: string;
|
|
14
|
+
}>> | import("@auto-engineer/message-bus").UnifiedCommandHandler<Readonly<{
|
|
15
|
+
type: "CopyExample";
|
|
16
|
+
data: Readonly<{
|
|
17
|
+
starterName: string;
|
|
18
|
+
targetDir: string;
|
|
19
|
+
}>;
|
|
20
|
+
timestamp?: Date;
|
|
21
|
+
requestId?: string;
|
|
22
|
+
correlationId?: string;
|
|
23
|
+
}>>)[];
|
|
24
|
+
export { commandHandler as generateClientCommandHandler, type GenerateClientCommand, type GenerateClientEvents, type ClientGeneratedEvent, type ClientGenerationFailedEvent, } from './commands/generate-client';
|
|
25
|
+
export { commandHandler as copyExampleCommandHandler, type CopyExampleCommand, type ExampleCopiedEvent, type ExampleCopyFailedEvent, } from './commands/copy-example';
|
|
26
|
+
export * from './figma-helpers';
|
|
27
|
+
export * from './templates/createFile';
|
|
28
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAkBA,wBAAsB,IAAI,oBAiDzB;AAYD,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;MAA8C,CAAC;AACpE,OAAO,EACL,cAAc,IAAI,4BAA4B,EAC9C,KAAK,qBAAqB,EAC1B,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,EACzB,KAAK,2BAA2B,GACjC,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,cAAc,IAAI,yBAAyB,EAC3C,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,KAAK,sBAAsB,GAC5B,MAAM,yBAAyB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import path from 'path';
|
|
2
|
+
import fs from 'fs';
|
|
3
|
+
import { fileURLToPath } from 'url';
|
|
4
|
+
import { FrontendScaffoldBuilder } from './builder.js';
|
|
5
|
+
import { configureStarter } from './configure-starter.js'; // New import
|
|
6
|
+
import { generateComponents } from './generator/generateComponents.js';
|
|
7
|
+
import { writeGqlOperationsToFolder } from './scaffold-gql-operations.js';
|
|
8
|
+
import { generateSchemaFile } from './write-graphql-schema.js';
|
|
9
|
+
import { runCodegen } from './run-codegen.js';
|
|
10
|
+
import createDebug from 'debug';
|
|
11
|
+
const debug = createDebug('frontend-generator-react-graphql');
|
|
12
|
+
const debugMain = createDebug('frontend-generator-react-graphql:main');
|
|
13
|
+
const __filename = fileURLToPath(import.meta.url);
|
|
14
|
+
const __dirname = path.dirname(__filename);
|
|
15
|
+
export async function main() {
|
|
16
|
+
const [, , starterDir, targetDir, iaSchemaPath, gqlSchemaPath, figmaVariablesPath] = process.argv;
|
|
17
|
+
debugMain('Starting main with args: starterDir=%s, targetDir=%s, iaSchemaPath=%s, gqlSchemaPath=%s, figmaVariablesPath=%s', starterDir, targetDir, iaSchemaPath, gqlSchemaPath, figmaVariablesPath);
|
|
18
|
+
if (!targetDir) {
|
|
19
|
+
debugMain('ERROR: Missing targetDir argument');
|
|
20
|
+
console.error('Usage: tsx src/index.ts <starter-dir> <target-dir> <ia-schema> <gql-schema> <figma-variables>');
|
|
21
|
+
process.exit(1);
|
|
22
|
+
}
|
|
23
|
+
debugMain('Creating FrontendScaffoldBuilder');
|
|
24
|
+
const builder = new FrontendScaffoldBuilder();
|
|
25
|
+
debugMain('Cloning starter from: %s', starterDir);
|
|
26
|
+
await builder.cloneStarter(starterDir);
|
|
27
|
+
debugMain('Building to target: %s', targetDir);
|
|
28
|
+
await builder.build(targetDir);
|
|
29
|
+
debugMain('Configuring starter with Figma variables: %s', figmaVariablesPath);
|
|
30
|
+
configureStarter(figmaVariablesPath, targetDir);
|
|
31
|
+
const filePath = path.resolve(__dirname, iaSchemaPath);
|
|
32
|
+
debugMain('Reading IA schema from: %s', filePath);
|
|
33
|
+
const iaSchemeJsonFile = fs.readFileSync(filePath, 'utf-8');
|
|
34
|
+
const iaSchemeJson = JSON.parse(iaSchemeJsonFile);
|
|
35
|
+
debugMain('IA schema loaded successfully');
|
|
36
|
+
debugMain('Generating components to: %s/src', targetDir);
|
|
37
|
+
generateComponents(iaSchemeJson, `${targetDir}/src`);
|
|
38
|
+
debugMain('Writing GraphQL operations to: %s/src', targetDir);
|
|
39
|
+
writeGqlOperationsToFolder(iaSchemeJson, `${targetDir}/src`);
|
|
40
|
+
debugMain('Generating GraphQL schema file from: %s', gqlSchemaPath);
|
|
41
|
+
generateSchemaFile(gqlSchemaPath, targetDir);
|
|
42
|
+
debugMain('Running codegen in: %s', targetDir);
|
|
43
|
+
runCodegen(targetDir);
|
|
44
|
+
debugMain('Frontend scaffold generation complete');
|
|
45
|
+
return 'Frontend Scaffold is running!';
|
|
46
|
+
}
|
|
47
|
+
if (import.meta.url === `file://${process.argv[1]}`) {
|
|
48
|
+
debug('Running as main module');
|
|
49
|
+
void main();
|
|
50
|
+
}
|
|
51
|
+
else {
|
|
52
|
+
debug('Module imported');
|
|
53
|
+
}
|
|
54
|
+
import { commandHandler as generateClientHandler } from './commands/generate-client.js';
|
|
55
|
+
import { commandHandler as copyExampleHandler } from './commands/copy-example.js';
|
|
56
|
+
export const COMMANDS = [generateClientHandler, copyExampleHandler];
|
|
57
|
+
export { commandHandler as generateClientCommandHandler, } from './commands/generate-client.js';
|
|
58
|
+
export { commandHandler as copyExampleCommandHandler, } from './commands/copy-example.js';
|
|
59
|
+
export * from './figma-helpers.js';
|
|
60
|
+
export * from './templates/createFile.js';
|
|
61
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/src/types.d.ts
CHANGED
|
@@ -55,9 +55,11 @@ export interface PageSpec {
|
|
|
55
55
|
specs?: string[];
|
|
56
56
|
data_requirements?: DataRequirement[];
|
|
57
57
|
}
|
|
58
|
+
export type ComponentType = 'molecule' | 'organism' | 'page' | 'app';
|
|
58
59
|
export interface GeneratedFile {
|
|
59
60
|
path: string;
|
|
60
61
|
content: string;
|
|
62
|
+
type: ComponentType;
|
|
61
63
|
}
|
|
62
64
|
export {};
|
|
63
65
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/src/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,QAAQ;IACvB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,KAAK,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC;IAChC,SAAS,EAAE,cAAc,CAAC,YAAY,CAAC,CAAC;IACxC,SAAS,EAAE,cAAc,CAAC,YAAY,CAAC,CAAC;IACxC,KAAK,EAAE,SAAS,CAAC;CAClB;AAED,UAAU,cAAc,CAAC,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;CAC1B;AAED,MAAM,WAAW,QAAQ;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,YAAY;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE;QACX,KAAK,EAAE,MAAM,EAAE,CAAC;KACjB,CAAC;IACF,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE;QACX,SAAS,EAAE,MAAM,EAAE,CAAC;KACrB,CAAC;IACF,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,iBAAiB,CAAC,EAAE,eAAe,EAAE,CAAC;CACvC;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,OAAO,GAAG,UAAU,CAAC;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE;QACP,MAAM,EAAE,MAAM,CAAC;QACf,GAAG,EAAE,MAAM,CAAC;QACZ,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KACzC,CAAC;CACH;AAED,MAAM,WAAW,SAAS;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE;QACN,SAAS,EAAE,MAAM,EAAE,CAAC;KACrB,CAAC;IACF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE;QACX,EAAE,EAAE,MAAM,CAAC;QACX,EAAE,EAAE,MAAM,CAAC;KACZ,EAAE,CAAC;IACJ,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,iBAAiB,CAAC,EAAE,eAAe,EAAE,CAAC;CACvC;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,QAAQ;IACvB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,KAAK,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC;IAChC,SAAS,EAAE,cAAc,CAAC,YAAY,CAAC,CAAC;IACxC,SAAS,EAAE,cAAc,CAAC,YAAY,CAAC,CAAC;IACxC,KAAK,EAAE,SAAS,CAAC;CAClB;AAED,UAAU,cAAc,CAAC,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;CAC1B;AAED,MAAM,WAAW,QAAQ;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,YAAY;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE;QACX,KAAK,EAAE,MAAM,EAAE,CAAC;KACjB,CAAC;IACF,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE;QACX,SAAS,EAAE,MAAM,EAAE,CAAC;KACrB,CAAC;IACF,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,iBAAiB,CAAC,EAAE,eAAe,EAAE,CAAC;CACvC;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,OAAO,GAAG,UAAU,CAAC;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE;QACP,MAAM,EAAE,MAAM,CAAC;QACf,GAAG,EAAE,MAAM,CAAC;QACZ,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KACzC,CAAC;CACH;AAED,MAAM,WAAW,SAAS;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE;QACN,SAAS,EAAE,MAAM,EAAE,CAAC;KACrB,CAAC;IACF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE;QACX,EAAE,EAAE,MAAM,CAAC;QACX,EAAE,EAAE,MAAM,CAAC;KACZ,EAAE,CAAC;IACJ,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,iBAAiB,CAAC,EAAE,eAAe,EAAE,CAAC;CACvC;AAED,MAAM,MAAM,aAAa,GAAG,UAAU,GAAG,UAAU,GAAG,MAAM,GAAG,KAAK,CAAC;AAErE,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,aAAa,CAAC;CACrB"}
|