@odata-effect/odata-effect-generator 0.3.2 → 0.4.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/dist/cjs/Cli.js +19 -3
- package/dist/cjs/Cli.js.map +1 -1
- package/dist/cjs/digester/Digester.js +34 -30
- package/dist/cjs/digester/Digester.js.map +1 -1
- package/dist/cjs/generator/Generator.js.map +1 -1
- package/dist/cjs/generator/ModelsGenerator.js +26 -2
- package/dist/cjs/generator/ModelsGenerator.js.map +1 -1
- package/dist/cjs/generator/NamingHelper.js +90 -1
- package/dist/cjs/generator/NamingHelper.js.map +1 -1
- package/dist/cjs/generator/OperationsGenerator.js +42 -14
- package/dist/cjs/generator/OperationsGenerator.js.map +1 -1
- package/dist/cjs/index.js +3 -1
- package/dist/cjs/model/DataModel.js.map +1 -1
- package/dist/cjs/model/GeneratorConfig.js +70 -0
- package/dist/cjs/model/GeneratorConfig.js.map +1 -0
- package/dist/dts/Cli.d.ts.map +1 -1
- package/dist/dts/digester/Digester.d.ts +2 -1
- package/dist/dts/digester/Digester.d.ts.map +1 -1
- package/dist/dts/generator/Generator.d.ts +7 -4
- package/dist/dts/generator/Generator.d.ts.map +1 -1
- package/dist/dts/generator/NamingHelper.d.ts +49 -0
- package/dist/dts/generator/NamingHelper.d.ts.map +1 -1
- package/dist/dts/generator/OperationsGenerator.d.ts +1 -0
- package/dist/dts/generator/OperationsGenerator.d.ts.map +1 -1
- package/dist/dts/index.d.ts +6 -0
- package/dist/dts/index.d.ts.map +1 -1
- package/dist/dts/model/DataModel.d.ts +1 -0
- package/dist/dts/model/DataModel.d.ts.map +1 -1
- package/dist/dts/model/GeneratorConfig.d.ts +114 -0
- package/dist/dts/model/GeneratorConfig.d.ts.map +1 -0
- package/dist/esm/Cli.js +19 -3
- package/dist/esm/Cli.js.map +1 -1
- package/dist/esm/digester/Digester.js +35 -31
- package/dist/esm/digester/Digester.js.map +1 -1
- package/dist/esm/generator/Generator.js.map +1 -1
- package/dist/esm/generator/ModelsGenerator.js +26 -2
- package/dist/esm/generator/ModelsGenerator.js.map +1 -1
- package/dist/esm/generator/NamingHelper.js +84 -0
- package/dist/esm/generator/NamingHelper.js.map +1 -1
- package/dist/esm/generator/OperationsGenerator.js +43 -15
- package/dist/esm/generator/OperationsGenerator.js.map +1 -1
- package/dist/esm/index.js +6 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/model/DataModel.js.map +1 -1
- package/dist/esm/model/GeneratorConfig.js +60 -0
- package/dist/esm/model/GeneratorConfig.js.map +1 -0
- package/model/GeneratorConfig/package.json +6 -0
- package/package.json +9 -1
- package/src/Cli.ts +26 -3
- package/src/digester/Digester.ts +55 -29
- package/src/generator/Generator.ts +7 -4
- package/src/generator/ModelsGenerator.ts +31 -2
- package/src/generator/NamingHelper.ts +115 -0
- package/src/generator/OperationsGenerator.ts +49 -16
- package/src/index.ts +7 -0
- package/src/model/DataModel.ts +1 -0
- package/src/model/GeneratorConfig.ts +180 -0
package/dist/esm/Cli.js
CHANGED
|
@@ -23,6 +23,7 @@ const serviceName = /*#__PURE__*/Options.text("service-name").pipe(Options.optio
|
|
|
23
23
|
const packageName = /*#__PURE__*/Options.text("package-name").pipe(Options.optional, /*#__PURE__*/Options.withDescription("NPM package name (defaults to @template/<service-name>-effect)"));
|
|
24
24
|
const force = /*#__PURE__*/Options.boolean("force").pipe(/*#__PURE__*/Options.withDefault(false), /*#__PURE__*/Options.withDescription("Overwrite existing files"));
|
|
25
25
|
const filesOnly = /*#__PURE__*/Options.boolean("files-only").pipe(/*#__PURE__*/Options.withDefault(false), /*#__PURE__*/Options.withDescription("Generate only source files (no package.json, tsconfig, etc.) directly in output-dir"));
|
|
26
|
+
const configFile = /*#__PURE__*/Options.file("config").pipe(Options.optional, /*#__PURE__*/Options.withDescription("Path to JSON config file with naming overrides"));
|
|
26
27
|
// ============================================================================
|
|
27
28
|
// Generate Command
|
|
28
29
|
// ============================================================================
|
|
@@ -32,8 +33,10 @@ const generateCommand = /*#__PURE__*/Command.make("generate", {
|
|
|
32
33
|
serviceName,
|
|
33
34
|
packageName,
|
|
34
35
|
force,
|
|
35
|
-
filesOnly
|
|
36
|
+
filesOnly,
|
|
37
|
+
configFile
|
|
36
38
|
}).pipe(/*#__PURE__*/Command.withDescription("Generate Effect OData client from metadata"), /*#__PURE__*/Command.withHandler(({
|
|
39
|
+
configFile: cfgFile,
|
|
37
40
|
filesOnly: onlyFiles,
|
|
38
41
|
force: forceOverwrite,
|
|
39
42
|
metadataPath: metaPath,
|
|
@@ -42,6 +45,18 @@ const generateCommand = /*#__PURE__*/Command.make("generate", {
|
|
|
42
45
|
serviceName: svcName
|
|
43
46
|
}) => Effect.gen(function* () {
|
|
44
47
|
const fs = yield* FileSystem.FileSystem;
|
|
48
|
+
// Load config file if provided
|
|
49
|
+
let overrides;
|
|
50
|
+
if (cfgFile._tag === "Some") {
|
|
51
|
+
yield* Console.log(`Loading config from: ${cfgFile.value}`);
|
|
52
|
+
const configContent = yield* fs.readFileString(cfgFile.value).pipe(Effect.mapError(error => new Error(`Failed to read config file: ${cfgFile.value}. ${error}`)));
|
|
53
|
+
try {
|
|
54
|
+
const parsed = JSON.parse(configContent);
|
|
55
|
+
overrides = parsed.overrides;
|
|
56
|
+
} catch (e) {
|
|
57
|
+
throw new Error(`Failed to parse config file: ${cfgFile.value}. ${e}`);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
45
60
|
yield* Console.log(`Reading metadata from: ${metaPath}`);
|
|
46
61
|
// Read metadata file
|
|
47
62
|
const metadataContent = yield* fs.readFileString(metaPath).pipe(Effect.mapError(error => new Error(`Failed to read metadata file: ${metaPath}. ${error}`)));
|
|
@@ -49,8 +64,8 @@ const generateCommand = /*#__PURE__*/Command.make("generate", {
|
|
|
49
64
|
// Parse XML
|
|
50
65
|
const edmx = yield* parseODataMetadata(metadataContent);
|
|
51
66
|
yield* Console.log("Digesting metadata...");
|
|
52
|
-
// Digest metadata
|
|
53
|
-
const dataModel = yield* digestMetadata(edmx);
|
|
67
|
+
// Digest metadata with optional overrides
|
|
68
|
+
const dataModel = yield* digestMetadata(edmx, overrides);
|
|
54
69
|
yield* Console.log(`Detected OData ${dataModel.version}`);
|
|
55
70
|
yield* Console.log(`Namespace: ${dataModel.namespace}`);
|
|
56
71
|
yield* Console.log(`Service: ${dataModel.serviceName}`);
|
|
@@ -64,6 +79,7 @@ const generateCommand = /*#__PURE__*/Command.make("generate", {
|
|
|
64
79
|
outputDir: outDir,
|
|
65
80
|
force: forceOverwrite,
|
|
66
81
|
filesOnly: onlyFiles,
|
|
82
|
+
overrides,
|
|
67
83
|
...(svcName._tag === "Some" ? {
|
|
68
84
|
serviceName: svcName.value
|
|
69
85
|
} : {}),
|
package/dist/esm/Cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Cli.js","names":["Args","Command","Options","FileSystem","Console","Effect","digestMetadata","generate","parseODataMetadata","metadataPath","path","name","pipe","withDescription","outputDir","serviceName","text","optional","packageName","force","boolean","withDefault","filesOnly","generateCommand","make","withHandler","onlyFiles","forceOverwrite","metaPath","outDir","pkgName","svcName","gen","fs","log","
|
|
1
|
+
{"version":3,"file":"Cli.js","names":["Args","Command","Options","FileSystem","Console","Effect","digestMetadata","generate","parseODataMetadata","metadataPath","path","name","pipe","withDescription","outputDir","serviceName","text","optional","packageName","force","boolean","withDefault","filesOnly","configFile","file","generateCommand","make","withHandler","cfgFile","onlyFiles","forceOverwrite","metaPath","outDir","pkgName","svcName","gen","fs","overrides","_tag","log","value","configContent","readFileString","mapError","error","Error","parsed","JSON","parse","e","metadataContent","edmx","dataModel","version","namespace","entityTypes","size","complexTypes","enumTypes","entitySets","config","rootCommand","withSubcommands","cli","run"],"sources":["../../src/Cli.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
*/
|
|
7
7
|
import * as Effect from "effect/Effect";
|
|
8
8
|
import * as Schema from "effect/Schema";
|
|
9
|
-
import { getClassName,
|
|
9
|
+
import { getClassName, getClassNameWithOverrides, getOperationNameWithOverrides, getOperationParameterNameWithOverrides, getPropertyNameWithOverrides } from "../generator/NamingHelper.js";
|
|
10
10
|
import { createDataModel } from "../model/DataModel.js";
|
|
11
11
|
import { detectODataVersion } from "../parser/EdmxSchema.js";
|
|
12
12
|
import { getComplexTypeMapping, getEnumTypeMapping, getPrimitiveTypeMapping, getSimpleTypeName, isPrimitiveType, parseODataType } from "./TypeMapper.js";
|
|
@@ -26,7 +26,7 @@ export class DigestError extends /*#__PURE__*/Schema.TaggedError()("DigestError"
|
|
|
26
26
|
* @since 1.0.0
|
|
27
27
|
* @category digestion
|
|
28
28
|
*/
|
|
29
|
-
export const digestMetadata = edmx => Effect.try({
|
|
29
|
+
export const digestMetadata = (edmx, overrides) => Effect.try({
|
|
30
30
|
try: () => {
|
|
31
31
|
const version = detectODataVersion(edmx);
|
|
32
32
|
const dataServices = edmx["edmx:Edmx"]["edmx:DataServices"][0];
|
|
@@ -48,7 +48,7 @@ export const digestMetadata = edmx => Effect.try({
|
|
|
48
48
|
const serviceName = entityContainer?.$.Name ?? "ODataService";
|
|
49
49
|
const dataModel = createDataModel(version, namespace, serviceName);
|
|
50
50
|
// Build context for type resolution
|
|
51
|
-
const context = buildContext(version, namespace, schemas);
|
|
51
|
+
const context = buildContext(version, namespace, schemas, overrides);
|
|
52
52
|
// First pass: collect all type names
|
|
53
53
|
for (const schema of schemas) {
|
|
54
54
|
collectTypeNames(schema, context);
|
|
@@ -71,7 +71,7 @@ export const digestMetadata = edmx => Effect.try({
|
|
|
71
71
|
/**
|
|
72
72
|
* Build digestion context from schemas.
|
|
73
73
|
*/
|
|
74
|
-
const buildContext = (version, namespace, schemas) => {
|
|
74
|
+
const buildContext = (version, namespace, schemas, overrides) => {
|
|
75
75
|
const associations = new Map();
|
|
76
76
|
// Collect V2 associations
|
|
77
77
|
for (const schema of schemas) {
|
|
@@ -88,7 +88,8 @@ const buildContext = (version, namespace, schemas) => {
|
|
|
88
88
|
associations,
|
|
89
89
|
enumTypes: new Set(),
|
|
90
90
|
complexTypes: new Set(),
|
|
91
|
-
entityTypes: new Set()
|
|
91
|
+
entityTypes: new Set(),
|
|
92
|
+
overrides
|
|
92
93
|
};
|
|
93
94
|
};
|
|
94
95
|
/**
|
|
@@ -173,13 +174,13 @@ const digestEnumType = (enumType, namespace) => {
|
|
|
173
174
|
* Digest a complex type.
|
|
174
175
|
*/
|
|
175
176
|
const digestComplexType = (complexType, namespace, context) => {
|
|
176
|
-
const
|
|
177
|
-
const properties = (complexType.Property ?? []).map(p => digestProperty(p, [], context));
|
|
178
|
-
const navigationProperties = (complexType.NavigationProperty ?? []).map(np => digestNavigationProperty(np, context));
|
|
177
|
+
const odataTypeName = complexType.$.Name;
|
|
178
|
+
const properties = (complexType.Property ?? []).map(p => digestProperty(p, [], odataTypeName, "complex", context));
|
|
179
|
+
const navigationProperties = (complexType.NavigationProperty ?? []).map(np => digestNavigationProperty(np, odataTypeName, "complex", context));
|
|
179
180
|
const result = {
|
|
180
|
-
fqName: `${namespace}.${
|
|
181
|
-
odataName:
|
|
182
|
-
name:
|
|
181
|
+
fqName: `${namespace}.${odataTypeName}`,
|
|
182
|
+
odataName: odataTypeName,
|
|
183
|
+
name: getClassNameWithOverrides(odataTypeName, "complex", context.overrides),
|
|
183
184
|
properties,
|
|
184
185
|
navigationProperties,
|
|
185
186
|
isAbstract: complexType.$.Abstract === "true",
|
|
@@ -197,7 +198,7 @@ const digestComplexType = (complexType, namespace, context) => {
|
|
|
197
198
|
* Digest an entity type.
|
|
198
199
|
*/
|
|
199
200
|
const digestEntityType = (entityType, namespace, context) => {
|
|
200
|
-
const
|
|
201
|
+
const odataTypeName = entityType.$.Name;
|
|
201
202
|
const keyNames = new Set();
|
|
202
203
|
// Collect key property names
|
|
203
204
|
if (entityType.Key && entityType.Key[0]?.PropertyRef) {
|
|
@@ -205,13 +206,13 @@ const digestEntityType = (entityType, namespace, context) => {
|
|
|
205
206
|
keyNames.add(keyRef.$.Name);
|
|
206
207
|
}
|
|
207
208
|
}
|
|
208
|
-
const properties = (entityType.Property ?? []).map(p => digestProperty(p, Array.from(keyNames), context));
|
|
209
|
+
const properties = (entityType.Property ?? []).map(p => digestProperty(p, Array.from(keyNames), odataTypeName, "entity", context));
|
|
209
210
|
const keys = properties.filter(p => p.isKey);
|
|
210
|
-
const navigationProperties = (entityType.NavigationProperty ?? []).map(np => digestNavigationProperty(np, context));
|
|
211
|
+
const navigationProperties = (entityType.NavigationProperty ?? []).map(np => digestNavigationProperty(np, odataTypeName, "entity", context));
|
|
211
212
|
const result = {
|
|
212
|
-
fqName: `${namespace}.${
|
|
213
|
-
odataName:
|
|
214
|
-
name:
|
|
213
|
+
fqName: `${namespace}.${odataTypeName}`,
|
|
214
|
+
odataName: odataTypeName,
|
|
215
|
+
name: getClassNameWithOverrides(odataTypeName, "entity", context.overrides),
|
|
215
216
|
keys,
|
|
216
217
|
properties,
|
|
217
218
|
navigationProperties,
|
|
@@ -229,7 +230,7 @@ const digestEntityType = (entityType, namespace, context) => {
|
|
|
229
230
|
/**
|
|
230
231
|
* Digest a property.
|
|
231
232
|
*/
|
|
232
|
-
const digestProperty = (property, keyNames, context) => {
|
|
233
|
+
const digestProperty = (property, keyNames, ownerTypeName, ownerTypeKind, context) => {
|
|
233
234
|
const odataName = property.$.Name;
|
|
234
235
|
const odataType = property.$.Type;
|
|
235
236
|
const {
|
|
@@ -241,7 +242,7 @@ const digestProperty = (property, keyNames, context) => {
|
|
|
241
242
|
const typeMapping = resolveTypeMapping(baseType, context);
|
|
242
243
|
const result = {
|
|
243
244
|
odataName,
|
|
244
|
-
name:
|
|
245
|
+
name: getPropertyNameWithOverrides(odataName, ownerTypeName, ownerTypeKind, context.overrides),
|
|
245
246
|
odataType,
|
|
246
247
|
typeMapping,
|
|
247
248
|
isCollection,
|
|
@@ -271,7 +272,7 @@ const isV4NavigationProperty = navProp => {
|
|
|
271
272
|
/**
|
|
272
273
|
* Digest a navigation property.
|
|
273
274
|
*/
|
|
274
|
-
const digestNavigationProperty = (navProp, context) => {
|
|
275
|
+
const digestNavigationProperty = (navProp, ownerTypeName, ownerTypeKind, context) => {
|
|
275
276
|
const odataName = navProp.$.Name;
|
|
276
277
|
// V4 style navigation property (has Type attribute)
|
|
277
278
|
if (isV4NavigationProperty(navProp)) {
|
|
@@ -282,7 +283,7 @@ const digestNavigationProperty = (navProp, context) => {
|
|
|
282
283
|
const targetTypeName = getSimpleTypeName(baseType);
|
|
283
284
|
const result = {
|
|
284
285
|
odataName,
|
|
285
|
-
name:
|
|
286
|
+
name: getPropertyNameWithOverrides(odataName, ownerTypeName, ownerTypeKind, context.overrides),
|
|
286
287
|
targetType: targetTypeName,
|
|
287
288
|
isCollection,
|
|
288
289
|
isNullable: navProp.$.Nullable !== "false"
|
|
@@ -311,7 +312,7 @@ const digestNavigationProperty = (navProp, context) => {
|
|
|
311
312
|
}
|
|
312
313
|
return {
|
|
313
314
|
odataName,
|
|
314
|
-
name:
|
|
315
|
+
name: getPropertyNameWithOverrides(odataName, ownerTypeName, ownerTypeKind, context.overrides),
|
|
315
316
|
targetType,
|
|
316
317
|
isCollection,
|
|
317
318
|
isNullable: true
|
|
@@ -348,13 +349,15 @@ const digestEntityContainer = (container, dataModel, context) => {
|
|
|
348
349
|
for (const funcImport of container.FunctionImport) {
|
|
349
350
|
// Only process V2 function imports (no Function reference)
|
|
350
351
|
if (!funcImport.$.Function) {
|
|
352
|
+
const odataOpName = funcImport.$.Name;
|
|
351
353
|
const params = (funcImport.Parameter ?? []).map(p => {
|
|
352
354
|
const {
|
|
353
355
|
baseType,
|
|
354
356
|
isCollection
|
|
355
357
|
} = parseODataType(p.$.Type);
|
|
356
358
|
return {
|
|
357
|
-
name:
|
|
359
|
+
name: getOperationParameterNameWithOverrides(p.$.Name, odataOpName, context.overrides),
|
|
360
|
+
odataName: p.$.Name,
|
|
358
361
|
odataType: p.$.Type,
|
|
359
362
|
typeMapping: resolveTypeMapping(baseType, context),
|
|
360
363
|
isNullable: p.$.Nullable !== "false",
|
|
@@ -362,9 +365,9 @@ const digestEntityContainer = (container, dataModel, context) => {
|
|
|
362
365
|
};
|
|
363
366
|
});
|
|
364
367
|
let model = {
|
|
365
|
-
fqName: `${context.namespace}.${
|
|
366
|
-
odataName:
|
|
367
|
-
name:
|
|
368
|
+
fqName: `${context.namespace}.${odataOpName}`,
|
|
369
|
+
odataName: odataOpName,
|
|
370
|
+
name: getOperationNameWithOverrides(odataOpName, context.overrides),
|
|
368
371
|
type: "Function",
|
|
369
372
|
isBound: false,
|
|
370
373
|
parameters: params
|
|
@@ -399,7 +402,7 @@ const digestEntityContainer = (container, dataModel, context) => {
|
|
|
399
402
|
* Digest an operation (Function or Action).
|
|
400
403
|
*/
|
|
401
404
|
const digestOperation = (operation, namespace, type, context) => {
|
|
402
|
-
const
|
|
405
|
+
const odataName = operation.$.Name;
|
|
403
406
|
const isBound = operation.$.IsBound === "true";
|
|
404
407
|
const allParams = (operation.Parameter ?? []).map(p => {
|
|
405
408
|
const {
|
|
@@ -407,7 +410,8 @@ const digestOperation = (operation, namespace, type, context) => {
|
|
|
407
410
|
isCollection
|
|
408
411
|
} = parseODataType(p.$.Type);
|
|
409
412
|
return {
|
|
410
|
-
name:
|
|
413
|
+
name: getOperationParameterNameWithOverrides(p.$.Name, odataName, context.overrides),
|
|
414
|
+
odataName: p.$.Name,
|
|
411
415
|
odataType: p.$.Type,
|
|
412
416
|
typeMapping: resolveTypeMapping(baseType, context),
|
|
413
417
|
isNullable: p.$.Nullable !== "false",
|
|
@@ -418,9 +422,9 @@ const digestOperation = (operation, namespace, type, context) => {
|
|
|
418
422
|
const bindingParameter = isBound && allParams.length > 0 ? allParams[0] : undefined;
|
|
419
423
|
const parameters = isBound ? allParams.slice(1) : allParams;
|
|
420
424
|
let model = {
|
|
421
|
-
fqName: `${namespace}.${
|
|
422
|
-
odataName
|
|
423
|
-
name:
|
|
425
|
+
fqName: `${namespace}.${odataName}`,
|
|
426
|
+
odataName,
|
|
427
|
+
name: getOperationNameWithOverrides(odataName, context.overrides),
|
|
424
428
|
type,
|
|
425
429
|
isBound,
|
|
426
430
|
parameters
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Digester.js","names":["Effect","Schema","getClassName","getPropertyName","createDataModel","detectODataVersion","getComplexTypeMapping","getEnumTypeMapping","getPrimitiveTypeMapping","getSimpleTypeName","isPrimitiveType","parseODataType","DigestError","TaggedError","message","String","cause","optional","Unknown","digestMetadata","edmx","try","version","dataServices","schemas","length","Error","mainSchema","namespace","$","Namespace","entityContainer","schema","EntityContainer","serviceName","Name","dataModel","context","buildContext","collectTypeNames","digestSchema","digestEntityContainer","catch","error","associations","Map","Association","assoc","fqName","set","enumTypes","Set","complexTypes","entityTypes","ns","EnumType","enumType","add","ComplexType","complexType","EntityType","entityType","model","digestEnumType","digestComplexType","digestEntityType","Function","func","digestOperation","operations","Action","action","name","members","Member","map","member","index","value","Value","undefined","parseInt","odataName","isFlags","IsFlags","properties","Property","p","digestProperty","navigationProperties","NavigationProperty","np","digestNavigationProperty","result","isAbstract","Abstract","isOpen","OpenType","BaseType","baseType","keyNames","Key","PropertyRef","keyRef","Array","from","keys","filter","isKey","property","odataType","Type","isCollection","includes","isNullable","Nullable","typeMapping","resolveTypeMapping","withMaxLength","MaxLength","maxLength","withPrecision","Precision","precision","withScale","Scale","scale","isV4NavigationProperty","navProp","targetTypeName","targetType","Partner","partner","v2NavProp","relationship","Relationship","toRole","ToRole","association","get","targetEnd","End","find","end","Role","Multiplicity","container","EntitySet","entitySet","entityTypeFqName","entityTypeName","entitySets","Singleton","singleton","typeFqName","typeName","singletons","FunctionImport","funcImport","params","Parameter","type","isBound","parameters","ReturnType","returnType","entitySetPath","operation","IsBound","allParams","bindingParameter","slice","rt","typeStr","EntitySetPath","simpleTypeName","has"],"sources":["../../../src/digester/Digester.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"Digester.js","names":["Effect","Schema","getClassName","getClassNameWithOverrides","getOperationNameWithOverrides","getOperationParameterNameWithOverrides","getPropertyNameWithOverrides","createDataModel","detectODataVersion","getComplexTypeMapping","getEnumTypeMapping","getPrimitiveTypeMapping","getSimpleTypeName","isPrimitiveType","parseODataType","DigestError","TaggedError","message","String","cause","optional","Unknown","digestMetadata","edmx","overrides","try","version","dataServices","schemas","length","Error","mainSchema","namespace","$","Namespace","entityContainer","schema","EntityContainer","serviceName","Name","dataModel","context","buildContext","collectTypeNames","digestSchema","digestEntityContainer","catch","error","associations","Map","Association","assoc","fqName","set","enumTypes","Set","complexTypes","entityTypes","ns","EnumType","enumType","add","ComplexType","complexType","EntityType","entityType","model","digestEnumType","digestComplexType","digestEntityType","Function","func","digestOperation","operations","Action","action","name","members","Member","map","member","index","value","Value","undefined","parseInt","odataName","isFlags","IsFlags","odataTypeName","properties","Property","p","digestProperty","navigationProperties","NavigationProperty","np","digestNavigationProperty","result","isAbstract","Abstract","isOpen","OpenType","BaseType","baseType","keyNames","Key","PropertyRef","keyRef","Array","from","keys","filter","isKey","property","ownerTypeName","ownerTypeKind","odataType","Type","isCollection","includes","isNullable","Nullable","typeMapping","resolveTypeMapping","withMaxLength","MaxLength","maxLength","withPrecision","Precision","precision","withScale","Scale","scale","isV4NavigationProperty","navProp","targetTypeName","targetType","Partner","partner","v2NavProp","relationship","Relationship","toRole","ToRole","association","get","targetEnd","End","find","end","Role","Multiplicity","container","EntitySet","entitySet","entityTypeFqName","entityTypeName","entitySets","Singleton","singleton","typeFqName","typeName","singletons","FunctionImport","funcImport","odataOpName","params","Parameter","type","isBound","parameters","ReturnType","returnType","entitySetPath","operation","IsBound","allParams","bindingParameter","slice","rt","typeStr","EntitySetPath","simpleTypeName","has"],"sources":["../../../src/digester/Digester.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Generator.js","names":["FileSystem","Path","Effect","Schema","generateIndex","generateModels","generateNavigations","generateOperations","generatePackageJson","generateTsconfig","generateTsconfigBuild","generateTsconfigSrc","generateTsconfigTest","generateVitestConfig","generateQueryModels","generateServiceFns","GeneratorError","TaggedError","message","String","cause","optional","Unknown","generate","dataModel","config","gen","fs","path","outputDir","serviceName","packageName","toLowerCase","filesOnly","sourceDir","join","packageConfig","serviceResult","operationsResult","navigationResult","sourceFiles","content","servicesFile","fileName","operationsFile","navigationFiles","map","nav","packageFiles","files","makeDirectory","recursive","pipe","mapError","error","file","force","exists","logWarning","writeFileString","logInfo"],"sources":["../../../src/generator/Generator.ts"],"sourcesContent":[null],"mappings":"AAAA;;;;;AAKA,OAAO,KAAKA,UAAU,MAAM,6BAA6B;AACzD,OAAO,KAAKC,IAAI,MAAM,uBAAuB;AAC7C,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,MAAM,MAAM,eAAe;
|
|
1
|
+
{"version":3,"file":"Generator.js","names":["FileSystem","Path","Effect","Schema","generateIndex","generateModels","generateNavigations","generateOperations","generatePackageJson","generateTsconfig","generateTsconfigBuild","generateTsconfigSrc","generateTsconfigTest","generateVitestConfig","generateQueryModels","generateServiceFns","GeneratorError","TaggedError","message","String","cause","optional","Unknown","generate","dataModel","config","gen","fs","path","outputDir","serviceName","packageName","toLowerCase","filesOnly","sourceDir","join","packageConfig","serviceResult","operationsResult","navigationResult","sourceFiles","content","servicesFile","fileName","operationsFile","navigationFiles","map","nav","packageFiles","files","makeDirectory","recursive","pipe","mapError","error","file","force","exists","logWarning","writeFileString","logInfo"],"sources":["../../../src/generator/Generator.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -208,7 +208,8 @@ const generateSchemaFields = (properties, _navigationProperties, _dataModel) =>
|
|
|
208
208
|
const prop = properties[i];
|
|
209
209
|
const schemaType = getPropertySchemaType(prop, prop.isNullable && !prop.isKey);
|
|
210
210
|
const isLast = i === properties.length - 1;
|
|
211
|
-
|
|
211
|
+
const fieldDef = getPropertyFieldDefinition(prop, schemaType);
|
|
212
|
+
fields.push(`${fieldDef}${isLast ? "" : ","}`);
|
|
212
213
|
}
|
|
213
214
|
// Navigation properties are intentionally excluded from Schema.Class
|
|
214
215
|
// to avoid circular reference issues. They can be loaded via $expand.
|
|
@@ -223,10 +224,33 @@ const generateEditableSchemaFields = properties => {
|
|
|
223
224
|
const prop = properties[i];
|
|
224
225
|
const schemaType = getPropertySchemaType(prop, prop.isNullable);
|
|
225
226
|
const isLast = i === properties.length - 1;
|
|
226
|
-
|
|
227
|
+
const fieldDef = getPropertyFieldDefinition(prop, schemaType);
|
|
228
|
+
fields.push(`${fieldDef}${isLast ? "" : ","}`);
|
|
227
229
|
}
|
|
228
230
|
return fields;
|
|
229
231
|
};
|
|
232
|
+
/**
|
|
233
|
+
* Get a complete property field definition including fromKey mapping if needed.
|
|
234
|
+
*
|
|
235
|
+
* When the OData property name differs from the TypeScript property name,
|
|
236
|
+
* we use Schema.propertySignature with Schema.fromKey to map between them.
|
|
237
|
+
* This is essential for OData V2 responses which use PascalCase property names.
|
|
238
|
+
*
|
|
239
|
+
* @example
|
|
240
|
+
* // When odataName == name:
|
|
241
|
+
* name: Schema.String
|
|
242
|
+
*
|
|
243
|
+
* // When odataName ("ID") != name ("id"):
|
|
244
|
+
* id: Schema.propertySignature(Schema.Number).pipe(Schema.fromKey("ID"))
|
|
245
|
+
*/
|
|
246
|
+
const getPropertyFieldDefinition = (prop, schemaType) => {
|
|
247
|
+
// If OData name matches TypeScript name, use simple format
|
|
248
|
+
if (prop.odataName === prop.name) {
|
|
249
|
+
return `${prop.name}: ${schemaType}`;
|
|
250
|
+
}
|
|
251
|
+
// Use propertySignature with fromKey to map between encoded (OData) and decoded (TypeScript) names
|
|
252
|
+
return `${prop.name}: Schema.propertySignature(${schemaType}).pipe(Schema.fromKey("${prop.odataName}"))`;
|
|
253
|
+
};
|
|
230
254
|
/**
|
|
231
255
|
* Get the Schema type for a property.
|
|
232
256
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModelsGenerator.js","names":["getClassName","getEditableTypeName","getIdTypeName","getTypeDependencies","type","allComplexTypes","allEntityTypes","deps","Set","baseType","baseTypeName","split","pop","has","add","prop","properties","propTypeName","typeMapping","effectSchema","sortTypesByDependency","types","sorted","visited","visiting","visit","name","push","depName","depType","find","t","delete","generateModels","dataModel","lines","Array","from","complexTypes","values","map","entityTypes","serviceName","enumType","enumTypes","line","generateEnumType","sortedComplexTypes","complexType","generateComplexType","sortedEntityTypes","entityType","generateEntityType","join","members","m","odataName","fields","generateSchemaFields","navigationProperties","f","editableFields","generateEditableSchemaFields","editableName","keys","length","idTypeName","key","keySchema","getPropertySchemaType","keyFields","k","schema","filter","p","isKey","_navigationProperties","_dataModel","i","schemaType","isNullable","isLast","makeOptional","isCollection"],"sources":["../../../src/generator/ModelsGenerator.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"ModelsGenerator.js","names":["getClassName","getEditableTypeName","getIdTypeName","getTypeDependencies","type","allComplexTypes","allEntityTypes","deps","Set","baseType","baseTypeName","split","pop","has","add","prop","properties","propTypeName","typeMapping","effectSchema","sortTypesByDependency","types","sorted","visited","visiting","visit","name","push","depName","depType","find","t","delete","generateModels","dataModel","lines","Array","from","complexTypes","values","map","entityTypes","serviceName","enumType","enumTypes","line","generateEnumType","sortedComplexTypes","complexType","generateComplexType","sortedEntityTypes","entityType","generateEntityType","join","members","m","odataName","fields","generateSchemaFields","navigationProperties","f","editableFields","generateEditableSchemaFields","editableName","keys","length","idTypeName","key","keySchema","getPropertySchemaType","keyFields","k","schema","filter","p","isKey","_navigationProperties","_dataModel","i","schemaType","isNullable","isLast","fieldDef","getPropertyFieldDefinition","makeOptional","isCollection"],"sources":["../../../src/generator/ModelsGenerator.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* @since 1.0.0
|
|
5
5
|
*/
|
|
6
|
+
import { getOperationOverride, getOperationParameterOverride, getPropertyOverride, getTypeOverride } from "../model/GeneratorConfig.js";
|
|
6
7
|
/**
|
|
7
8
|
* Convert a string to PascalCase.
|
|
8
9
|
*
|
|
@@ -147,4 +148,87 @@ export const getEditableTypeName = typeName => {
|
|
|
147
148
|
export const getIdTypeName = typeName => {
|
|
148
149
|
return `${toPascalCase(typeName)}Id`;
|
|
149
150
|
};
|
|
151
|
+
// ============================================================================
|
|
152
|
+
// Override-aware naming functions
|
|
153
|
+
// ============================================================================
|
|
154
|
+
/**
|
|
155
|
+
* Get the TypeScript property name for an OData property, with override support.
|
|
156
|
+
*
|
|
157
|
+
* @param odataName - The original OData property name
|
|
158
|
+
* @param typeName - The OData type name this property belongs to
|
|
159
|
+
* @param typeKind - Whether the type is an entity or complex type
|
|
160
|
+
* @param overrides - Optional naming overrides configuration
|
|
161
|
+
* @returns The TypeScript property name
|
|
162
|
+
*
|
|
163
|
+
* @since 1.0.0
|
|
164
|
+
* @category naming
|
|
165
|
+
*/
|
|
166
|
+
export const getPropertyNameWithOverrides = (odataName, typeName, typeKind, overrides) => {
|
|
167
|
+
// Check for override first
|
|
168
|
+
const override = getPropertyOverride(overrides, typeName, typeKind, odataName);
|
|
169
|
+
if (override) {
|
|
170
|
+
return override;
|
|
171
|
+
}
|
|
172
|
+
// Fall back to default camelCase conversion
|
|
173
|
+
return getPropertyName(odataName);
|
|
174
|
+
};
|
|
175
|
+
/**
|
|
176
|
+
* Get the TypeScript class name for an OData type, with override support.
|
|
177
|
+
*
|
|
178
|
+
* @param odataName - The original OData type name
|
|
179
|
+
* @param typeKind - Whether the type is an entity or complex type
|
|
180
|
+
* @param overrides - Optional naming overrides configuration
|
|
181
|
+
* @returns The TypeScript class name
|
|
182
|
+
*
|
|
183
|
+
* @since 1.0.0
|
|
184
|
+
* @category naming
|
|
185
|
+
*/
|
|
186
|
+
export const getClassNameWithOverrides = (odataName, typeKind, overrides) => {
|
|
187
|
+
// Check for override first
|
|
188
|
+
const override = getTypeOverride(overrides, odataName, typeKind);
|
|
189
|
+
if (override) {
|
|
190
|
+
return override;
|
|
191
|
+
}
|
|
192
|
+
// Fall back to default PascalCase conversion
|
|
193
|
+
return getClassName(odataName);
|
|
194
|
+
};
|
|
195
|
+
/**
|
|
196
|
+
* Get the TypeScript function name for an OData operation, with override support.
|
|
197
|
+
*
|
|
198
|
+
* @param odataName - The original OData operation name
|
|
199
|
+
* @param overrides - Optional naming overrides configuration
|
|
200
|
+
* @returns The TypeScript function name (camelCase)
|
|
201
|
+
*
|
|
202
|
+
* @since 1.0.0
|
|
203
|
+
* @category naming
|
|
204
|
+
*/
|
|
205
|
+
export const getOperationNameWithOverrides = (odataName, overrides) => {
|
|
206
|
+
// Check for override first
|
|
207
|
+
const override = getOperationOverride(overrides, odataName);
|
|
208
|
+
if (override) {
|
|
209
|
+
return override;
|
|
210
|
+
}
|
|
211
|
+
// Fall back to default camelCase conversion
|
|
212
|
+
return getPropertyName(odataName);
|
|
213
|
+
};
|
|
214
|
+
/**
|
|
215
|
+
* Get the TypeScript parameter name for an OData operation parameter, with override support.
|
|
216
|
+
*
|
|
217
|
+
* @param odataParamName - The original OData parameter name
|
|
218
|
+
* @param odataOperationName - The OData operation this parameter belongs to
|
|
219
|
+
* @param overrides - Optional naming overrides configuration
|
|
220
|
+
* @returns The TypeScript parameter name (camelCase)
|
|
221
|
+
*
|
|
222
|
+
* @since 1.0.0
|
|
223
|
+
* @category naming
|
|
224
|
+
*/
|
|
225
|
+
export const getOperationParameterNameWithOverrides = (odataParamName, odataOperationName, overrides) => {
|
|
226
|
+
// Check for override first
|
|
227
|
+
const override = getOperationParameterOverride(overrides, odataOperationName, odataParamName);
|
|
228
|
+
if (override) {
|
|
229
|
+
return override;
|
|
230
|
+
}
|
|
231
|
+
// Fall back to default camelCase conversion
|
|
232
|
+
return getPropertyName(odataParamName);
|
|
233
|
+
};
|
|
150
234
|
//# sourceMappingURL=NamingHelper.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NamingHelper.js","names":["toPascalCase","str","replace","_","char","toUpperCase","toCamelCase","pascal","charAt","toLowerCase","slice","toValidIdentifier","test","getPropertyName","odataName","getClassName","getServiceClassName","entitySetName","singular","endsWith","getQueryInterfaceName","typeName","getQueryInstanceName","getQueryFactoryName","getEditableTypeName","getIdTypeName"],"sources":["../../../src/generator/NamingHelper.ts"],"sourcesContent":[null],"mappings":"AAAA;;;;;
|
|
1
|
+
{"version":3,"file":"NamingHelper.js","names":["getOperationOverride","getOperationParameterOverride","getPropertyOverride","getTypeOverride","toPascalCase","str","replace","_","char","toUpperCase","toCamelCase","pascal","charAt","toLowerCase","slice","toValidIdentifier","test","getPropertyName","odataName","getClassName","getServiceClassName","entitySetName","singular","endsWith","getQueryInterfaceName","typeName","getQueryInstanceName","getQueryFactoryName","getEditableTypeName","getIdTypeName","getPropertyNameWithOverrides","typeKind","overrides","override","getClassNameWithOverrides","getOperationNameWithOverrides","getOperationParameterNameWithOverrides","odataParamName","odataOperationName"],"sources":["../../../src/generator/NamingHelper.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|