@odata-effect/odata-effect-generator 0.2.0 → 0.3.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.
Files changed (61) hide show
  1. package/README.md +17 -8
  2. package/dist/cjs/Cli.js +2 -2
  3. package/dist/cjs/Cli.js.map +1 -1
  4. package/dist/cjs/generator/Generator.js +5 -13
  5. package/dist/cjs/generator/Generator.js.map +1 -1
  6. package/dist/cjs/generator/IndexGenerator.js +14 -11
  7. package/dist/cjs/generator/IndexGenerator.js.map +1 -1
  8. package/dist/cjs/generator/ModelsGenerator.js +2 -5
  9. package/dist/cjs/generator/ModelsGenerator.js.map +1 -1
  10. package/dist/cjs/generator/NamingHelper.js.map +1 -1
  11. package/dist/cjs/generator/NavigationGenerator.js +42 -13
  12. package/dist/cjs/generator/NavigationGenerator.js.map +1 -1
  13. package/dist/cjs/generator/OperationsGenerator.js +2 -2
  14. package/dist/cjs/generator/OperationsGenerator.js.map +1 -1
  15. package/dist/cjs/generator/ServiceFnGenerator.js +102 -224
  16. package/dist/cjs/generator/ServiceFnGenerator.js.map +1 -1
  17. package/dist/cjs/index.js +3 -3
  18. package/dist/dts/Cli.d.ts.map +1 -1
  19. package/dist/dts/generator/Generator.d.ts.map +1 -1
  20. package/dist/dts/generator/IndexGenerator.d.ts.map +1 -1
  21. package/dist/dts/generator/NamingHelper.d.ts.map +1 -1
  22. package/dist/dts/generator/NavigationGenerator.d.ts.map +1 -1
  23. package/dist/dts/generator/ServiceFnGenerator.d.ts +10 -11
  24. package/dist/dts/generator/ServiceFnGenerator.d.ts.map +1 -1
  25. package/dist/dts/index.d.ts +4 -4
  26. package/dist/dts/index.d.ts.map +1 -1
  27. package/dist/esm/Cli.js +2 -2
  28. package/dist/esm/Cli.js.map +1 -1
  29. package/dist/esm/generator/Generator.js +5 -13
  30. package/dist/esm/generator/Generator.js.map +1 -1
  31. package/dist/esm/generator/IndexGenerator.js +14 -11
  32. package/dist/esm/generator/IndexGenerator.js.map +1 -1
  33. package/dist/esm/generator/ModelsGenerator.js +2 -5
  34. package/dist/esm/generator/ModelsGenerator.js.map +1 -1
  35. package/dist/esm/generator/NamingHelper.js.map +1 -1
  36. package/dist/esm/generator/NavigationGenerator.js +42 -13
  37. package/dist/esm/generator/NavigationGenerator.js.map +1 -1
  38. package/dist/esm/generator/OperationsGenerator.js +2 -2
  39. package/dist/esm/generator/OperationsGenerator.js.map +1 -1
  40. package/dist/esm/generator/ServiceFnGenerator.js +102 -224
  41. package/dist/esm/generator/ServiceFnGenerator.js.map +1 -1
  42. package/dist/esm/index.js +4 -4
  43. package/dist/esm/index.js.map +1 -1
  44. package/package.json +1 -9
  45. package/src/Cli.ts +8 -1
  46. package/src/generator/Generator.ts +8 -17
  47. package/src/generator/IndexGenerator.ts +14 -12
  48. package/src/generator/ModelsGenerator.ts +2 -5
  49. package/src/generator/NamingHelper.ts +5 -3
  50. package/src/generator/NavigationGenerator.ts +55 -26
  51. package/src/generator/OperationsGenerator.ts +40 -14
  52. package/src/generator/ServiceFnGenerator.ts +117 -265
  53. package/src/index.ts +4 -4
  54. package/dist/cjs/generator/ServiceFnPromiseGenerator.js +0 -183
  55. package/dist/cjs/generator/ServiceFnPromiseGenerator.js.map +0 -1
  56. package/dist/dts/generator/ServiceFnPromiseGenerator.d.ts +0 -40
  57. package/dist/dts/generator/ServiceFnPromiseGenerator.d.ts.map +0 -1
  58. package/dist/esm/generator/ServiceFnPromiseGenerator.js +0 -175
  59. package/dist/esm/generator/ServiceFnPromiseGenerator.js.map +0 -1
  60. package/generator/ServiceFnPromiseGenerator/package.json +0 -6
  61. package/src/generator/ServiceFnPromiseGenerator.ts +0 -243
@@ -1 +1 @@
1
- {"version":3,"file":"OperationsGenerator.js","names":["_NamingHelper","require","V2_CONFIG","clientConfigTag","clientConfigImport","clientModule","V4_CONFIG","getVersionConfig","version","getOperationFunctionName","operation","toCamelCase","name","exports","getOperationsModuleName","generateOperations","dataModel","unboundOperations","Array","from","operations","values","filter","op","isBound","length","operationsFile","content","generateOperationsFile","fileName","returnsModelType","returnType","odataType","baseType","replace","typeName","includes","split","pop","fqName","entityTypes","endsWith","complexTypes","getReturnTypeName","typeMapping","isCollection","tsType","collectModelImports","imports","Set","isModelType","add","param","parameters","lines","versionConfig","isV4","push","serviceName","modelImports","size","importsList","i","isLast","generateV4Operation","generateV2FunctionImport","join","generateParameterType","toPascalCase","generateParameterInterface","odataName","optionalMark","isNullable","fnName","paramsType","returnsModel","paramsArg","effectSchema","propertyName","isAction","type","toLowerCase","bodyArg"],"sources":["../../../src/generator/OperationsGenerator.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"OperationsGenerator.js","names":["_NamingHelper","require","V2_CONFIG","clientConfigTag","clientConfigImport","clientModule","V4_CONFIG","getVersionConfig","version","getOperationFunctionName","operation","toCamelCase","name","exports","getOperationsModuleName","generateOperations","dataModel","unboundOperations","Array","from","operations","values","filter","op","isBound","length","operationsFile","content","generateOperationsFile","fileName","returnsModelType","returnType","odataType","baseType","replace","typeName","includes","split","pop","fqName","entityTypes","endsWith","complexTypes","getReturnTypeName","isCollection","typeMapping","tsType","collectModelImports","imports","Set","isModelType","add","param","parameters","lines","versionConfig","isV4","push","serviceName","modelImports","size","importsList","i","isLast","generateV4Operation","generateV2FunctionImport","join","generateParameterType","toPascalCase","generateParameterInterface","odataName","optionalMark","isNullable","fnName","paramsType","returnsModel","paramsArg","effectSchema","propertyName","isAction","type","toLowerCase","bodyArg"],"sources":["../../../src/generator/OperationsGenerator.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -5,265 +5,143 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.generateServiceFns = void 0;
7
7
  var _NamingHelper = require("./NamingHelper.js");
8
- const V2_CONFIG = {
9
- odataNamespace: "OData",
10
- buildEntityPath: "buildEntityPath",
11
- queryOptionsType: "ODataQueryOptions",
12
- clientConfigTag: "ODataClientConfig"
13
- };
14
- const V4_CONFIG = {
15
- odataNamespace: "ODataV4",
16
- buildEntityPath: "buildEntityPathV4",
17
- queryOptionsType: "ODataV4QueryOptions",
18
- clientConfigTag: "ODataV4ClientConfig"
19
- };
20
- const getVersionConfig = version => version === "V4" ? V4_CONFIG : V2_CONFIG;
21
8
  /**
22
- * Generate all tree-shakable service function files.
9
+ * Generate the Services.ts file using crud factory.
23
10
  *
24
11
  * @since 1.0.0
25
12
  * @category generation
26
13
  */
27
14
  const generateServiceFns = dataModel => {
28
- const entityServices = [];
29
- // Generate individual entity service files
30
- for (const entitySet of dataModel.entitySets.values()) {
31
- const entityType = dataModel.entityTypes.get(entitySet.entityTypeFqName);
32
- if (entityType) {
33
- const serviceClassName = (0, _NamingHelper.getServiceClassName)(entitySet.name);
34
- entityServices.push({
35
- fileName: `${serviceClassName}.ts`,
36
- content: generateEntityServiceFnFile(entitySet, entityType, dataModel)
37
- });
38
- }
39
- }
15
+ const content = generateServicesFile(dataModel);
40
16
  return {
41
- entityServices
17
+ servicesFile: {
18
+ fileName: "Services.ts",
19
+ content
20
+ }
42
21
  };
43
22
  };
44
23
  /**
45
- * Generate a single entity service function file.
24
+ * Generate the Services.ts file content.
46
25
  */
47
26
  exports.generateServiceFns = generateServiceFns;
48
- const generateEntityServiceFnFile = (entitySet, entityType, dataModel) => {
27
+ const generateServicesFile = dataModel => {
49
28
  const lines = [];
50
- const versionConfig = getVersionConfig(dataModel.version);
51
- const serviceClassName = (0, _NamingHelper.getServiceClassName)(entitySet.name);
52
- const entityName = entityType.name;
53
- const idTypeName = (0, _NamingHelper.getIdTypeName)(entityName);
54
- const editableName = (0, _NamingHelper.getEditableTypeName)(entityName);
55
- const hasKeys = entityType.keys.length > 0;
56
29
  const isV4 = dataModel.version === "V4";
57
- // Header and imports
30
+ const crudImportPath = isV4 ? "@odata-effect/odata-effect/CrudV4" : "@odata-effect/odata-effect/Crud";
31
+ // Collect all entity sets with their types
32
+ const entitySets = [];
33
+ for (const entitySet of dataModel.entitySets.values()) {
34
+ const entityType = dataModel.entityTypes.get(entitySet.entityTypeFqName);
35
+ if (entityType) {
36
+ entitySets.push({
37
+ entitySet,
38
+ entityType
39
+ });
40
+ }
41
+ }
42
+ // Header
58
43
  lines.push(`/**`);
59
- lines.push(` * Tree-shakable ${entityName} service functions for ${dataModel.serviceName} OData ${dataModel.version}.`);
44
+ lines.push(` * Entity services for ${dataModel.serviceName} OData ${dataModel.version}.`);
60
45
  lines.push(` * Generated by odata-effect-gen.`);
61
46
  lines.push(` *`);
62
- lines.push(` * @example`);
63
- lines.push(` * \`\`\`ts`);
64
- lines.push(` * // Namespace import - nice autocomplete, tree-shakable`);
65
- lines.push(` * import { ${serviceClassName} } from "@template/${dataModel.serviceName.toLowerCase()}-effect"`);
66
- lines.push(` * const items = yield* ${serviceClassName}.getAll()`);
67
- lines.push(` *`);
68
- lines.push(` * // Direct import - maximum tree-shaking`);
69
- lines.push(` * import { getAll } from "@template/${dataModel.serviceName.toLowerCase()}-effect/${serviceClassName}"`);
70
- lines.push(` * const items = yield* getAll()`);
71
- lines.push(` * \`\`\``);
47
+ lines.push(` * Uses the crud factory for minimal generated code.`);
72
48
  lines.push(` *`);
73
49
  lines.push(` * @since 1.0.0`);
74
50
  lines.push(` */`);
75
- lines.push(`import type * as Effect from "effect/Effect"`);
76
- lines.push(`import * as Schema from "effect/Schema"`);
77
- lines.push(`import type { HttpClient } from "@effect/platform"`);
78
- lines.push(`import type * as HttpClientError from "@effect/platform/HttpClientError"`);
79
- lines.push(`import type * as HttpBody from "@effect/platform/HttpBody"`);
80
- lines.push(``);
81
- // Import models
82
- lines.push(`import {`);
83
- lines.push(` ${entityName},`);
84
- if (hasKeys) {
85
- lines.push(` type ${idTypeName},`);
86
- }
87
- lines.push(` ${editableName}`);
88
- lines.push(`} from "./Models"`);
51
+ lines.push(`import { crud } from "${crudImportPath}"`);
89
52
  lines.push(``);
90
- // Import OData infrastructure (version-specific) using subpath imports for tree-shaking
91
- if (isV4) {
92
- lines.push(`import * as ${versionConfig.odataNamespace} from "@odata-effect/odata-effect/ODataV4"`);
93
- lines.push(`import {`);
94
- lines.push(` type ${versionConfig.clientConfigTag},`);
95
- lines.push(` ${versionConfig.buildEntityPath},`);
96
- lines.push(` type ${versionConfig.queryOptionsType}`);
97
- lines.push(`} from "@odata-effect/odata-effect/ODataV4Client"`);
98
- } else {
99
- lines.push(`import * as ${versionConfig.odataNamespace} from "@odata-effect/odata-effect/OData"`);
100
- lines.push(`import {`);
101
- lines.push(` type ${versionConfig.clientConfigTag},`);
102
- lines.push(` ${versionConfig.buildEntityPath},`);
103
- lines.push(` type ${versionConfig.queryOptionsType}`);
104
- lines.push(`} from "@odata-effect/odata-effect/ODataClient"`);
53
+ // Import all entity types
54
+ const modelImports = [];
55
+ for (const {
56
+ entityType
57
+ } of entitySets) {
58
+ modelImports.push(entityType.name);
59
+ if (entityType.keys.length > 0) {
60
+ modelImports.push(`type ${(0, _NamingHelper.getIdTypeName)(entityType.name)}`);
61
+ }
62
+ modelImports.push((0, _NamingHelper.getEditableTypeName)(entityType.name));
105
63
  }
106
64
  lines.push(`import {`);
107
- if (!isV4) {
108
- lines.push(` type SapError,`);
109
- }
110
- lines.push(` type ODataError,`);
111
- lines.push(` type ParseError`);
112
- lines.push(`} from "@odata-effect/odata-effect/Errors"`);
113
- lines.push(``);
114
- // Service error type
115
- lines.push(`// ============================================================================`);
116
- lines.push(`// Types`);
117
- lines.push(`// ============================================================================`);
118
- lines.push(``);
119
- lines.push(`/**`);
120
- lines.push(` * Error type for ${entityName} service operations.`);
121
- lines.push(` *`);
122
- lines.push(` * @since 1.0.0`);
123
- lines.push(` * @category errors`);
124
- lines.push(` */`);
125
- lines.push(`export type ${serviceClassName}Error =`);
126
- lines.push(` | HttpClientError.HttpClientError`);
127
- lines.push(` | HttpBody.HttpBodyError`);
128
- lines.push(` | ParseError`);
129
- if (!isV4) {
130
- lines.push(` | SapError`);
65
+ for (let i = 0; i < modelImports.length; i++) {
66
+ const isLast = i === modelImports.length - 1;
67
+ lines.push(` ${modelImports[i]}${isLast ? "" : ","}`);
131
68
  }
132
- lines.push(` | ODataError`);
69
+ lines.push(`} from "./Models"`);
133
70
  lines.push(``);
134
- // Dependencies type
135
- lines.push(`/**`);
136
- lines.push(` * Dependencies required for ${entityName} service operations.`);
137
- lines.push(` *`);
138
- lines.push(` * @since 1.0.0`);
139
- lines.push(` * @category context`);
140
- lines.push(` */`);
141
- lines.push(`export type ${serviceClassName}Context = ${versionConfig.clientConfigTag} | HttpClient.HttpClient`);
71
+ // Re-export types from the crud module
72
+ lines.push(`// Re-export types for convenience`);
73
+ lines.push(`export type { CrudError, CrudContext, CrudService } from "${crudImportPath}"`);
142
74
  lines.push(``);
143
- // ID normalizer (if entity has keys)
144
- if (hasKeys) {
145
- lines.push(`// ============================================================================`);
146
- lines.push(`// Internal Helpers`);
147
- lines.push(`// ============================================================================`);
148
- lines.push(``);
149
- const normalizeIdFn = `normalizeId`;
150
- lines.push(`const ${normalizeIdFn} = (id: ${idTypeName}): string =>`);
151
- if (entityType.keys.length === 1) {
152
- const keyProp = entityType.keys[0];
153
- const keyTsType = keyProp.typeMapping.tsType;
154
- const primitiveCheck = keyTsType === "number" ? "number" : "string";
155
- lines.push(` typeof id === "${primitiveCheck}" ? String(id) : String(id.${keyProp.name})`);
156
- } else {
157
- const keyParts = entityType.keys.map(k => `${k.odataName}='\${String(id.${k.name})}'`).join(",");
158
- lines.push(` typeof id === "string" ? id : \`${keyParts}\``);
159
- }
160
- lines.push(``);
161
- }
162
- // Standalone functions
75
+ // Generate each service
163
76
  lines.push(`// ============================================================================`);
164
- lines.push(`// Standalone Tree-Shakable Functions`);
77
+ lines.push(`// Entity Services`);
165
78
  lines.push(`// ============================================================================`);
166
79
  lines.push(``);
167
- // getAll
168
- lines.push(`/**`);
169
- lines.push(` * Fetch all ${entityName} entities.`);
170
- lines.push(` *`);
171
- lines.push(` * @since 1.0.0`);
172
- lines.push(` * @category operations`);
173
- lines.push(` */`);
174
- lines.push(`export const getAll = (`);
175
- lines.push(` options?: ${versionConfig.queryOptionsType}`);
176
- lines.push(`): Effect.Effect<`);
177
- lines.push(` ReadonlyArray<${entityName}>,`);
178
- lines.push(` ${serviceClassName}Error,`);
179
- lines.push(` ${serviceClassName}Context`);
180
- lines.push(`> =>`);
181
- lines.push(` ${versionConfig.odataNamespace}.getCollection("${entitySet.name}", ${entityName}, options)`);
182
- lines.push(``);
183
- // getById (if entity has keys)
184
- if (hasKeys) {
185
- const keyObj = entityType.keys.length === 1 ? `{ ${entityType.keys[0].odataName}: normalizeId(id) }` : `normalizeId(id)`;
186
- lines.push(`/**`);
187
- lines.push(` * Fetch a single ${entityName} by ID.`);
188
- lines.push(` *`);
189
- lines.push(` * @since 1.0.0`);
190
- lines.push(` * @category operations`);
191
- lines.push(` */`);
192
- lines.push(`export const getById = (`);
193
- lines.push(` id: ${idTypeName}`);
194
- lines.push(`): Effect.Effect<`);
195
- lines.push(` ${entityName},`);
196
- lines.push(` ${serviceClassName}Error,`);
197
- lines.push(` ${serviceClassName}Context`);
198
- lines.push(`> =>`);
199
- lines.push(` ${versionConfig.odataNamespace}.get(`);
200
- lines.push(` ${versionConfig.buildEntityPath}("${entitySet.name}", ${keyObj}),`);
201
- lines.push(` ${entityName}`);
202
- lines.push(` )`);
203
- lines.push(``);
204
- }
205
- // create
206
- lines.push(`/**`);
207
- lines.push(` * Create a new ${entityName} entity.`);
208
- lines.push(` *`);
209
- lines.push(` * @since 1.0.0`);
210
- lines.push(` * @category operations`);
211
- lines.push(` */`);
212
- lines.push(`export const create = (`);
213
- lines.push(` entity: ${editableName}`);
214
- lines.push(`): Effect.Effect<`);
215
- lines.push(` ${entityName},`);
216
- lines.push(` ${serviceClassName}Error,`);
217
- lines.push(` ${serviceClassName}Context`);
218
- lines.push(`> =>`);
219
- lines.push(` ${versionConfig.odataNamespace}.post("${entitySet.name}", entity, ${editableName}, ${entityName})`);
220
- lines.push(``);
221
- // update (if entity has keys)
222
- if (hasKeys) {
223
- const keyObj = entityType.keys.length === 1 ? `{ ${entityType.keys[0].odataName}: normalizeId(id) }` : `normalizeId(id)`;
80
+ for (const {
81
+ entitySet,
82
+ entityType
83
+ } of entitySets) {
84
+ const serviceClassName = (0, _NamingHelper.getServiceClassName)(entitySet.name);
85
+ const entityName = entityType.name;
86
+ const editableName = (0, _NamingHelper.getEditableTypeName)(entityName);
87
+ const hasKeys = entityType.keys.length > 0;
224
88
  lines.push(`/**`);
225
- lines.push(` * Update an existing ${entityName} entity.`);
89
+ lines.push(` * CRUD service for ${entityName} entities.`);
226
90
  lines.push(` *`);
227
91
  lines.push(` * @since 1.0.0`);
228
- lines.push(` * @category operations`);
92
+ lines.push(` * @category services`);
229
93
  lines.push(` */`);
230
- lines.push(`export const update = (`);
231
- lines.push(` id: ${idTypeName},`);
232
- lines.push(` entity: Partial<${editableName}>`);
233
- lines.push(`): Effect.Effect<`);
234
- lines.push(` void,`);
235
- lines.push(` ${serviceClassName}Error,`);
236
- lines.push(` ${serviceClassName}Context`);
237
- lines.push(`> =>`);
238
- lines.push(` ${versionConfig.odataNamespace}.patch(`);
239
- lines.push(` ${versionConfig.buildEntityPath}("${entitySet.name}", ${keyObj}),`);
240
- lines.push(` entity,`);
241
- lines.push(` Schema.partial(${editableName})`);
242
- lines.push(` )`);
243
- lines.push(``);
244
- // delete
245
- lines.push(`/**`);
246
- lines.push(` * Delete a ${entityName} entity.`);
247
- lines.push(` *`);
248
- lines.push(` * @since 1.0.0`);
249
- lines.push(` * @category operations`);
250
- lines.push(` */`);
251
- lines.push(`export const del = (`);
252
- lines.push(` id: ${idTypeName}`);
253
- lines.push(`): Effect.Effect<`);
254
- lines.push(` void,`);
255
- lines.push(` ${serviceClassName}Error,`);
256
- lines.push(` ${serviceClassName}Context`);
257
- lines.push(`> =>`);
258
- lines.push(` ${versionConfig.odataNamespace}.del(`);
259
- lines.push(` ${versionConfig.buildEntityPath}("${entitySet.name}", ${keyObj})`);
260
- lines.push(` )`);
261
- lines.push(``);
262
- // Alias for nice naming
263
- lines.push(`// Alias for nice naming`);
264
- lines.push(`export { del as delete }`);
94
+ if (hasKeys) {
95
+ lines.push(`export const ${serviceClassName} = crud({`);
96
+ lines.push(` path: "${entitySet.name}",`);
97
+ lines.push(` schema: ${entityName},`);
98
+ lines.push(` editableSchema: ${editableName},`);
99
+ lines.push(` idToKey: ${generateIdToKeyFunction(entityType, dataModel.version)}`);
100
+ lines.push(`})`);
101
+ } else {
102
+ // Entity without keys - can only getAll and create
103
+ lines.push(`export const ${serviceClassName} = crud({`);
104
+ lines.push(` path: "${entitySet.name}",`);
105
+ lines.push(` schema: ${entityName},`);
106
+ lines.push(` editableSchema: ${editableName},`);
107
+ lines.push(` idToKey: (_id: never) => { throw new Error("Entity has no keys") }`);
108
+ lines.push(`})`);
109
+ }
265
110
  lines.push(``);
266
111
  }
267
112
  return lines.join("\n");
268
113
  };
114
+ /**
115
+ * Generate the idToKey function for an entity type.
116
+ */
117
+ const generateIdToKeyFunction = (entityType, version) => {
118
+ const idTypeName = (0, _NamingHelper.getIdTypeName)(entityType.name);
119
+ const isV4 = version === "V4";
120
+ if (entityType.keys.length === 1) {
121
+ const keyProp = entityType.keys[0];
122
+ const keyTsType = keyProp.typeMapping.tsType;
123
+ const primitiveCheck = keyTsType === "number" ? "number" : "string";
124
+ if (isV4) {
125
+ // V4 can use number keys directly
126
+ if (keyTsType === "number") {
127
+ return `(id: ${idTypeName}) => typeof id === "number" ? id : id.${keyProp.name}`;
128
+ } else {
129
+ return `(id: ${idTypeName}) => typeof id === "string" ? { ${keyProp.odataName}: id } : { ${keyProp.odataName}: id.${keyProp.name} }`;
130
+ }
131
+ } else {
132
+ // V2 needs string keys
133
+ return `(id: ${idTypeName}) => typeof id === "${primitiveCheck}" ? { ${keyProp.odataName}: String(id) } : { ${keyProp.odataName}: String(id.${keyProp.name}) }`;
134
+ }
135
+ } else {
136
+ // Composite key
137
+ const keyMapping = entityType.keys.map(k => {
138
+ if (isV4) {
139
+ return `${k.odataName}: id.${k.name}`;
140
+ } else {
141
+ return `${k.odataName}: String(id.${k.name})`;
142
+ }
143
+ }).join(", ");
144
+ return `(id: ${idTypeName}) => ({ ${keyMapping} })`;
145
+ }
146
+ };
269
147
  //# sourceMappingURL=ServiceFnGenerator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ServiceFnGenerator.js","names":["_NamingHelper","require","V2_CONFIG","odataNamespace","buildEntityPath","queryOptionsType","clientConfigTag","V4_CONFIG","getVersionConfig","version","generateServiceFns","dataModel","entityServices","entitySet","entitySets","values","entityType","entityTypes","get","entityTypeFqName","serviceClassName","getServiceClassName","name","push","fileName","content","generateEntityServiceFnFile","exports","lines","versionConfig","entityName","idTypeName","getIdTypeName","editableName","getEditableTypeName","hasKeys","keys","length","isV4","serviceName","toLowerCase","normalizeIdFn","keyProp","keyTsType","typeMapping","tsType","primitiveCheck","keyParts","map","k","odataName","join","keyObj"],"sources":["../../../src/generator/ServiceFnGenerator.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"ServiceFnGenerator.js","names":["_NamingHelper","require","generateServiceFns","dataModel","content","generateServicesFile","servicesFile","fileName","exports","lines","isV4","version","crudImportPath","entitySets","entitySet","values","entityType","entityTypes","get","entityTypeFqName","push","serviceName","modelImports","name","keys","length","getIdTypeName","getEditableTypeName","i","isLast","serviceClassName","getServiceClassName","entityName","editableName","hasKeys","generateIdToKeyFunction","join","idTypeName","keyProp","keyTsType","typeMapping","tsType","primitiveCheck","odataName","keyMapping","map","k"],"sources":["../../../src/generator/ServiceFnGenerator.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/dist/cjs/index.js CHANGED
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.bin = exports.XmlParser = exports.TypeMapper = exports.ServiceFnPromiseGenerator = exports.ServiceFnGenerator = exports.QueryModelsGenerator = exports.PackageGenerator = exports.NamingHelper = exports.ModelsGenerator = exports.IndexGenerator = exports.Generator = exports.EdmxSchema = exports.Digester = exports.DataModel = exports.Cli = void 0;
6
+ exports.bin = exports.XmlParser = exports.TypeMapper = exports.ServiceFnGenerator = exports.QueryModelsGenerator = exports.PackageGenerator = exports.NavigationGenerator = exports.NamingHelper = exports.ModelsGenerator = exports.IndexGenerator = exports.Generator = exports.EdmxSchema = exports.Digester = exports.DataModel = exports.Cli = void 0;
7
7
  var _Cli = _interopRequireWildcard(require("./Cli.js"));
8
8
  exports.Cli = _Cli;
9
9
  var _bin = _interopRequireWildcard(require("./bin.js"));
@@ -26,8 +26,8 @@ var _QueryModelsGenerator = _interopRequireWildcard(require("./generator/QueryMo
26
26
  exports.QueryModelsGenerator = _QueryModelsGenerator;
27
27
  var _ServiceFnGenerator = _interopRequireWildcard(require("./generator/ServiceFnGenerator.js"));
28
28
  exports.ServiceFnGenerator = _ServiceFnGenerator;
29
- var _ServiceFnPromiseGenerator = _interopRequireWildcard(require("./generator/ServiceFnPromiseGenerator.js"));
30
- exports.ServiceFnPromiseGenerator = _ServiceFnPromiseGenerator;
29
+ var _NavigationGenerator = _interopRequireWildcard(require("./generator/NavigationGenerator.js"));
30
+ exports.NavigationGenerator = _NavigationGenerator;
31
31
  var _DataModel = _interopRequireWildcard(require("./model/DataModel.js"));
32
32
  exports.DataModel = _DataModel;
33
33
  var _EdmxSchema = _interopRequireWildcard(require("./parser/EdmxSchema.js"));
@@ -1 +1 @@
1
- {"version":3,"file":"Cli.d.ts","sourceRoot":"","sources":["../../src/Cli.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAuGvC;;;;;GAKG;AACH,eAAO,MAAM,GAAG,sKAGd,CAAA"}
1
+ {"version":3,"file":"Cli.d.ts","sourceRoot":"","sources":["../../src/Cli.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AA8GvC;;;;;GAKG;AACH,eAAO,MAAM,GAAG,sKAGd,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"Generator.d.ts","sourceRoot":"","sources":["../../../src/generator/Generator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,UAAU,MAAM,6BAA6B,CAAA;AACzD,OAAO,KAAK,IAAI,MAAM,uBAAuB,CAAA;AAC7C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AAkBtD;;;;;GAKG;AACH,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAA;IACxB,sGAAsG;IACtG,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;CAC7B;;;;;;;AAED;;;;;GAKG;AACH,qBAAa,cAAe,SAAQ,mBAMnC;CAAG;AAUJ;;;;;GAKG;AACH,eAAO,MAAM,QAAQ,GACnB,WAAW,SAAS,EACpB,QAAQ,eAAe,KACtB,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,cAAc,EAAE,UAAU,CAAC,UAAU,GAAG,IAAI,CAAC,IAAI,CA2IpE,CAAA"}
1
+ {"version":3,"file":"Generator.d.ts","sourceRoot":"","sources":["../../../src/generator/Generator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,UAAU,MAAM,6BAA6B,CAAA;AACzD,OAAO,KAAK,IAAI,MAAM,uBAAuB,CAAA;AAC7C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AAiBtD;;;;;GAKG;AACH,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAA;IACxB,sGAAsG;IACtG,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;CAC7B;;;;;;;AAED;;;;;GAKG;AACH,qBAAa,cAAe,SAAQ,mBAMnC;CAAG;AAUJ;;;;;GAKG;AACH,eAAO,MAAM,QAAQ,GACnB,WAAW,SAAS,EACpB,QAAQ,eAAe,KACtB,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,cAAc,EAAE,UAAU,CAAC,UAAU,GAAG,IAAI,CAAC,IAAI,CAmIpE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"IndexGenerator.d.ts","sourceRoot":"","sources":["../../../src/generator/IndexGenerator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AAatD;;;;;GAKG;AACH,eAAO,MAAM,aAAa,GAAI,WAAW,SAAS,KAAG,MA+GpD,CAAA"}
1
+ {"version":3,"file":"IndexGenerator.d.ts","sourceRoot":"","sources":["../../../src/generator/IndexGenerator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AAYtD;;;;;GAKG;AACH,eAAO,MAAM,aAAa,GAAI,WAAW,SAAS,KAAG,MAkHpD,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"NamingHelper.d.ts","sourceRoot":"","sources":["../../../src/generator/NamingHelper.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;;;;;;GASG;AACH,eAAO,MAAM,YAAY,GAAI,KAAK,MAAM,KAAG,MAI1C,CAAA;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,WAAW,GAAI,KAAK,MAAM,KAAG,MAGzC,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,GAAI,KAAK,MAAM,KAAG,MAO/C,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,eAAe,GAAI,WAAW,MAAM,KAAG,MAEnD,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,YAAY,GAAI,WAAW,MAAM,KAAG,MAEhD,CAAA;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,mBAAmB,GAAI,eAAe,MAAM,KAAG,MAgB3D,CAAA;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,qBAAqB,GAAI,UAAU,MAAM,KAAG,MAExD,CAAA;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,oBAAoB,GAAI,UAAU,MAAM,KAAG,MAEvD,CAAA;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,mBAAmB,GAAI,UAAU,MAAM,KAAG,MAEtD,CAAA;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,mBAAmB,GAAI,UAAU,MAAM,KAAG,MAEtD,CAAA;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,aAAa,GAAI,UAAU,MAAM,KAAG,MAEhD,CAAA"}
1
+ {"version":3,"file":"NamingHelper.d.ts","sourceRoot":"","sources":["../../../src/generator/NamingHelper.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;;;;;;GASG;AACH,eAAO,MAAM,YAAY,GAAI,KAAK,MAAM,KAAG,MAI1C,CAAA;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,WAAW,GAAI,KAAK,MAAM,KAAG,MAGzC,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,GAAI,KAAK,MAAM,KAAG,MAO/C,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,eAAe,GAAI,WAAW,MAAM,KAAG,MAEnD,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,YAAY,GAAI,WAAW,MAAM,KAAG,MAEhD,CAAA;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,mBAAmB,GAAI,eAAe,MAAM,KAAG,MAkB3D,CAAA;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,qBAAqB,GAAI,UAAU,MAAM,KAAG,MAExD,CAAA;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,oBAAoB,GAAI,UAAU,MAAM,KAAG,MAEvD,CAAA;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,mBAAmB,GAAI,UAAU,MAAM,KAAG,MAEtD,CAAA;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,mBAAmB,GAAI,UAAU,MAAM,KAAG,MAEtD,CAAA;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,aAAa,GAAI,UAAU,MAAM,KAAG,MAEhD,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"NavigationGenerator.d.ts","sourceRoot":"","sources":["../../../src/generator/NavigationGenerator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,OAAO,KAAK,EACV,SAAS,EAEV,MAAM,uBAAuB,CAAA;AA+B9B;;GAEG;AACH,eAAO,MAAM,yBAAyB,QAAO,MAAwB,CAAA;AAErE;;;;;GAKG;AACH,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CACzB;AAED;;;;;GAKG;AACH,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,eAAe,EAAE,aAAa,CAAC,uBAAuB,CAAC,CAAA;CACjE;AA2FD;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,GAAI,WAAW,SAAS,KAAG,0BAU1D,CAAA"}
1
+ {"version":3,"file":"NavigationGenerator.d.ts","sourceRoot":"","sources":["../../../src/generator/NavigationGenerator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,OAAO,KAAK,EAAE,SAAS,EAAmB,MAAM,uBAAuB,CAAA;AA2BvE;;GAEG;AACH,eAAO,MAAM,yBAAyB,QAAO,MAAwB,CAAA;AAErE;;;;;GAKG;AACH,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CACzB;AAED;;;;;GAKG;AACH,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,eAAe,EAAE,aAAa,CAAC,uBAAuB,CAAC,CAAA;CACjE;AA8FD;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,GAAI,WAAW,SAAS,KAAG,0BAU1D,CAAA"}
@@ -1,37 +1,36 @@
1
1
  /**
2
- * Generator for tree-shakable service functions.
2
+ * Generator for entity services using the crud factory.
3
3
  *
4
- * This module generates standalone functions that can be tree-shaken.
5
- * Each entity service is a module of standalone functions that use
6
- * the tree-shakable OData functions directly.
4
+ * This module generates a single Services.ts file that creates CRUD services
5
+ * for all entity sets using the crud factory from @odata-effect/odata-effect.
7
6
  *
8
7
  * @since 1.0.0
9
8
  */
10
9
  import type { DataModel } from "../model/DataModel.js";
11
10
  /**
12
- * Generated service function file.
11
+ * Generated service file.
13
12
  *
14
13
  * @since 1.0.0
15
14
  * @category types
16
15
  */
17
- export interface GeneratedServiceFnFile {
16
+ export interface GeneratedServiceFile {
18
17
  readonly fileName: string;
19
18
  readonly content: string;
20
19
  }
21
20
  /**
22
- * Result of service function generation.
21
+ * Result of service generation.
23
22
  *
24
23
  * @since 1.0.0
25
24
  * @category types
26
25
  */
27
- export interface ServiceFnGenerationResult {
28
- readonly entityServices: ReadonlyArray<GeneratedServiceFnFile>;
26
+ export interface ServiceGenerationResult {
27
+ readonly servicesFile: GeneratedServiceFile;
29
28
  }
30
29
  /**
31
- * Generate all tree-shakable service function files.
30
+ * Generate the Services.ts file using crud factory.
32
31
  *
33
32
  * @since 1.0.0
34
33
  * @category generation
35
34
  */
36
- export declare const generateServiceFns: (dataModel: DataModel) => ServiceFnGenerationResult;
35
+ export declare const generateServiceFns: (dataModel: DataModel) => ServiceGenerationResult;
37
36
  //# sourceMappingURL=ServiceFnGenerator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ServiceFnGenerator.d.ts","sourceRoot":"","sources":["../../../src/generator/ServiceFnGenerator.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,KAAK,EAAE,SAAS,EAAmC,MAAM,uBAAuB,CAAA;AA8BvF;;;;;GAKG;AACH,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CACzB;AAED;;;;;GAKG;AACH,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,cAAc,EAAE,aAAa,CAAC,sBAAsB,CAAC,CAAA;CAC/D;AAED;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB,GAAI,WAAW,SAAS,KAAG,yBAgBzD,CAAA"}
1
+ {"version":3,"file":"ServiceFnGenerator.d.ts","sourceRoot":"","sources":["../../../src/generator/ServiceFnGenerator.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,KAAK,EAAE,SAAS,EAAmC,MAAM,uBAAuB,CAAA;AAIvF;;;;;GAKG;AACH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CACzB;AAED;;;;;GAKG;AACH,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,YAAY,EAAE,oBAAoB,CAAA;CAC5C;AAED;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB,GAAI,WAAW,SAAS,KAAG,uBAQzD,CAAA"}
@@ -70,14 +70,14 @@ export * as QueryModelsGenerator from "./generator/QueryModelsGenerator.js";
70
70
  */
71
71
  export * as ServiceFnGenerator from "./generator/ServiceFnGenerator.js";
72
72
  /**
73
- * Generator for Promise-based service functions.
73
+ * Generator for tree-shakable navigation path builders.
74
74
  *
75
- * This module generates Promise-based wrappers around the Effect-based
76
- * service functions, allowing usage in non-Effect environments.
75
+ * This module generates pipe-based navigation functions and the toPromise
76
+ * helper for Promise-based environments.
77
77
  *
78
78
  * @since 1.0.0
79
79
  */
80
- export * as ServiceFnPromiseGenerator from "./generator/ServiceFnPromiseGenerator.js";
80
+ export * as NavigationGenerator from "./generator/NavigationGenerator.js";
81
81
  /**
82
82
  * Intermediate representation for OData metadata.
83
83
  * This is the central data model that digesters create and generators consume.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,GAAG,MAAM,UAAU,CAAA;AAE/B;;;;GAIG;AACH,OAAO,KAAK,GAAG,MAAM,UAAU,CAAA;AAE/B;;;;;GAKG;AACH,OAAO,KAAK,QAAQ,MAAM,wBAAwB,CAAA;AAElD;;;;GAIG;AACH,OAAO,KAAK,UAAU,MAAM,0BAA0B,CAAA;AAEtD;;;;GAIG;AACH,OAAO,KAAK,SAAS,MAAM,0BAA0B,CAAA;AAErD;;;;GAIG;AACH,OAAO,KAAK,cAAc,MAAM,+BAA+B,CAAA;AAE/D;;;;GAIG;AACH,OAAO,KAAK,eAAe,MAAM,gCAAgC,CAAA;AAEjE;;;;GAIG;AACH,OAAO,KAAK,YAAY,MAAM,6BAA6B,CAAA;AAE3D;;;;GAIG;AACH,OAAO,KAAK,gBAAgB,MAAM,iCAAiC,CAAA;AAEnE;;;;GAIG;AACH,OAAO,KAAK,oBAAoB,MAAM,qCAAqC,CAAA;AAE3E;;;;;;;;GAQG;AACH,OAAO,KAAK,kBAAkB,MAAM,mCAAmC,CAAA;AAEvE;;;;;;;GAOG;AACH,OAAO,KAAK,yBAAyB,MAAM,0CAA0C,CAAA;AAErF;;;;;GAKG;AACH,OAAO,KAAK,SAAS,MAAM,sBAAsB,CAAA;AAEjD;;;;;GAKG;AACH,OAAO,KAAK,UAAU,MAAM,wBAAwB,CAAA;AAEpD;;;;GAIG;AACH,OAAO,KAAK,SAAS,MAAM,uBAAuB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,GAAG,MAAM,UAAU,CAAA;AAE/B;;;;GAIG;AACH,OAAO,KAAK,GAAG,MAAM,UAAU,CAAA;AAE/B;;;;;GAKG;AACH,OAAO,KAAK,QAAQ,MAAM,wBAAwB,CAAA;AAElD;;;;GAIG;AACH,OAAO,KAAK,UAAU,MAAM,0BAA0B,CAAA;AAEtD;;;;GAIG;AACH,OAAO,KAAK,SAAS,MAAM,0BAA0B,CAAA;AAErD;;;;GAIG;AACH,OAAO,KAAK,cAAc,MAAM,+BAA+B,CAAA;AAE/D;;;;GAIG;AACH,OAAO,KAAK,eAAe,MAAM,gCAAgC,CAAA;AAEjE;;;;GAIG;AACH,OAAO,KAAK,YAAY,MAAM,6BAA6B,CAAA;AAE3D;;;;GAIG;AACH,OAAO,KAAK,gBAAgB,MAAM,iCAAiC,CAAA;AAEnE;;;;GAIG;AACH,OAAO,KAAK,oBAAoB,MAAM,qCAAqC,CAAA;AAE3E;;;;;;;;GAQG;AACH,OAAO,KAAK,kBAAkB,MAAM,mCAAmC,CAAA;AAEvE;;;;;;;GAOG;AACH,OAAO,KAAK,mBAAmB,MAAM,oCAAoC,CAAA;AAEzE;;;;;GAKG;AACH,OAAO,KAAK,SAAS,MAAM,sBAAsB,CAAA;AAEjD;;;;;GAKG;AACH,OAAO,KAAK,UAAU,MAAM,wBAAwB,CAAA;AAEpD;;;;GAIG;AACH,OAAO,KAAK,SAAS,MAAM,uBAAuB,CAAA"}