@odata-effect/odata-effect-generator 0.6.4 → 0.6.6
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/generator/NavigationGenerator.js +9 -5
- package/dist/cjs/generator/NavigationGenerator.js.map +1 -1
- package/dist/cjs/generator/ServiceFnGenerator.js +15 -2
- package/dist/cjs/generator/ServiceFnGenerator.js.map +1 -1
- package/dist/dts/generator/NavigationGenerator.d.ts.map +1 -1
- package/dist/esm/generator/NavigationGenerator.js +9 -5
- package/dist/esm/generator/NavigationGenerator.js.map +1 -1
- package/dist/esm/generator/ServiceFnGenerator.js +15 -2
- package/dist/esm/generator/ServiceFnGenerator.js.map +1 -1
- package/package.json +1 -1
- package/src/generator/NavigationGenerator.ts +15 -5
- package/src/generator/ServiceFnGenerator.ts +19 -2
|
@@ -8,12 +8,16 @@ var _NamingHelper = require("./NamingHelper.js");
|
|
|
8
8
|
const V2_CONFIG = {
|
|
9
9
|
odataNamespace: "OData",
|
|
10
10
|
clientModule: "OData",
|
|
11
|
-
queryOptionsType: "ODataQueryOptions"
|
|
11
|
+
queryOptionsType: "ODataQueryOptions",
|
|
12
|
+
errorType: "ODataClientError",
|
|
13
|
+
dependenciesType: "ODataClientDependencies"
|
|
12
14
|
};
|
|
13
15
|
const V4_CONFIG = {
|
|
14
16
|
odataNamespace: "ODataV4",
|
|
15
17
|
clientModule: "ODataV4",
|
|
16
|
-
queryOptionsType: "ODataV4QueryOptions"
|
|
18
|
+
queryOptionsType: "ODataV4QueryOptions",
|
|
19
|
+
errorType: "ODataV4ClientError",
|
|
20
|
+
dependenciesType: "ODataV4ClientDependencies"
|
|
17
21
|
};
|
|
18
22
|
const getVersionConfig = version => version === "V4" ? V4_CONFIG : V2_CONFIG;
|
|
19
23
|
/**
|
|
@@ -140,7 +144,7 @@ const generatePathBuildersFile = (dataModel, esmExtensions) => {
|
|
|
140
144
|
// Imports
|
|
141
145
|
lines.push(`import { ${versionConfig.odataNamespace} } from "@odata-effect/odata-effect"`);
|
|
142
146
|
lines.push(`import { toPromise } from "@odata-effect/odata-effect-promise"`);
|
|
143
|
-
lines.push(`import type { Schema } from "effect"`);
|
|
147
|
+
lines.push(`import type { Effect, Schema } from "effect"`);
|
|
144
148
|
lines.push(``);
|
|
145
149
|
// Import model types with Model suffix to avoid collision with entity set names
|
|
146
150
|
if (referencedTypes.size > 0) {
|
|
@@ -268,7 +272,7 @@ const generatePathBuildersFile = (dataModel, esmExtensions) => {
|
|
|
268
272
|
lines.push(` * @category operations`);
|
|
269
273
|
lines.push(` */`);
|
|
270
274
|
lines.push(`export const fetchCollection = <T, I>(schema: Schema.Schema<T, I>) =>`);
|
|
271
|
-
lines.push(` (path: Path<T, true>, options?: ${versionConfig.clientModule}.${versionConfig.queryOptionsType}) =>`);
|
|
275
|
+
lines.push(` (path: Path<T, true>, options?: ${versionConfig.clientModule}.${versionConfig.queryOptionsType}): Effect.Effect<ReadonlyArray<T>, ${versionConfig.odataNamespace}.${versionConfig.errorType}, ${versionConfig.odataNamespace}.${versionConfig.dependenciesType}> =>`);
|
|
272
276
|
lines.push(` ${versionConfig.odataNamespace}.getCollection(path, schema, options)`);
|
|
273
277
|
lines.push(``);
|
|
274
278
|
lines.push(`/**`);
|
|
@@ -283,7 +287,7 @@ const generatePathBuildersFile = (dataModel, esmExtensions) => {
|
|
|
283
287
|
lines.push(` * @category operations`);
|
|
284
288
|
lines.push(` */`);
|
|
285
289
|
lines.push(`export const fetchOne = <T, I>(schema: Schema.Schema<T, I>) =>`);
|
|
286
|
-
lines.push(` (path: Path<T, false>, options?: ${versionConfig.clientModule}.${versionConfig.queryOptionsType}) =>`);
|
|
290
|
+
lines.push(` (path: Path<T, false>, options?: ${versionConfig.clientModule}.${versionConfig.queryOptionsType}): Effect.Effect<T, ${versionConfig.odataNamespace}.${versionConfig.errorType}, ${versionConfig.odataNamespace}.${versionConfig.dependenciesType}> =>`);
|
|
287
291
|
lines.push(` ${versionConfig.odataNamespace}.get(path, schema, options)`);
|
|
288
292
|
lines.push(``);
|
|
289
293
|
// Promise conversion (re-export from odata-effect-promise)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NavigationGenerator.js","names":["_NamingHelper","require","V2_CONFIG","odataNamespace","clientModule","queryOptionsType","V4_CONFIG","getVersionConfig","version","getPathBuildersModuleName","exports","collectAllNavigationProperties","dataModel","navProps","entityType","entityTypes","values","navProp","navigationProperties","targetTypeName","getClassName","targetType","push","propertyName","name","odataName","sourceEntityName","targetEntityName","isCollection","findCollisions","collisions","Set","seen","Map","prop","existing","get","add","set","getNavFunctionName","hasCollision","toCamelCase","getDerivedTypes","baseTypeFqName","derived","baseType","furtherDerived","fqName","d","generateNavigations","options","esmExtensions","moduleName","content","generatePathBuildersFile","navigationFiles","fileName","lines","versionConfig","allNavProps","referencedTypes","collectReferencedTypes","size","typesList","Array","from","sort","i","length","isLast","formatRelativeImport","entitySet","entitySets","entityTypeFqName","navPropsBySource","sourceEntity","props","has","fnName","castFunctions","generateTypeCastFunctions","castFunction","join","processed","derivedTypes","castPath","namespace","types"],"sources":["../../../src/generator/NavigationGenerator.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"NavigationGenerator.js","names":["_NamingHelper","require","V2_CONFIG","odataNamespace","clientModule","queryOptionsType","errorType","dependenciesType","V4_CONFIG","getVersionConfig","version","getPathBuildersModuleName","exports","collectAllNavigationProperties","dataModel","navProps","entityType","entityTypes","values","navProp","navigationProperties","targetTypeName","getClassName","targetType","push","propertyName","name","odataName","sourceEntityName","targetEntityName","isCollection","findCollisions","collisions","Set","seen","Map","prop","existing","get","add","set","getNavFunctionName","hasCollision","toCamelCase","getDerivedTypes","baseTypeFqName","derived","baseType","furtherDerived","fqName","d","generateNavigations","options","esmExtensions","moduleName","content","generatePathBuildersFile","navigationFiles","fileName","lines","versionConfig","allNavProps","referencedTypes","collectReferencedTypes","size","typesList","Array","from","sort","i","length","isLast","formatRelativeImport","entitySet","entitySets","entityTypeFqName","navPropsBySource","sourceEntity","props","has","fnName","castFunctions","generateTypeCastFunctions","castFunction","join","processed","derivedTypes","castPath","namespace","types"],"sources":["../../../src/generator/NavigationGenerator.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -121,6 +121,12 @@ const generateIdToKeyFunction = (entityType, version) => {
|
|
|
121
121
|
if (entityType.keys.length === 1) {
|
|
122
122
|
const keyProp = entityType.keys[0];
|
|
123
123
|
const keyTsType = keyProp.typeMapping.tsType;
|
|
124
|
+
// Check if key is a branded type that needs string conversion
|
|
125
|
+
const isBrandedType = keyTsType.startsWith("BigDecimal.") || keyTsType.startsWith("DateTime.") || keyTsType.startsWith("Duration.");
|
|
126
|
+
if (isBrandedType) {
|
|
127
|
+
// Branded types are converted to string for EntityKey compatibility
|
|
128
|
+
return `(id: ${idTypeName}) => typeof id === "string" ? { ${keyProp.odataName}: id } : { ${keyProp.odataName}: String(id.${keyProp.name}) }`;
|
|
129
|
+
}
|
|
124
130
|
if (isV4) {
|
|
125
131
|
// V4 can use number keys directly
|
|
126
132
|
if (keyTsType === "number") {
|
|
@@ -137,8 +143,15 @@ const generateIdToKeyFunction = (entityType, version) => {
|
|
|
137
143
|
}
|
|
138
144
|
}
|
|
139
145
|
} else {
|
|
140
|
-
// Composite key -
|
|
141
|
-
const keyMapping = entityType.keys.map(k =>
|
|
146
|
+
// Composite key - convert branded types (BigDecimal, DateTime, Duration) to string
|
|
147
|
+
const keyMapping = entityType.keys.map(k => {
|
|
148
|
+
const tsType = k.typeMapping.tsType;
|
|
149
|
+
// Branded types need to be converted to string for EntityKey compatibility
|
|
150
|
+
if (tsType.startsWith("BigDecimal.") || tsType.startsWith("DateTime.") || tsType.startsWith("Duration.")) {
|
|
151
|
+
return `${k.odataName}: String(id.${k.name})`;
|
|
152
|
+
}
|
|
153
|
+
return `${k.odataName}: id.${k.name}`;
|
|
154
|
+
}).join(", ");
|
|
142
155
|
return `(id: ${idTypeName}) => ({ ${keyMapping} })`;
|
|
143
156
|
}
|
|
144
157
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ServiceFnGenerator.js","names":["_NamingHelper","require","generateServiceFns","dataModel","options","esmExtensions","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","formatRelativeImport","serviceClassName","getServiceClassName","entityName","editableName","hasKeys","generateIdToKeyFunction","join","idTypeName","keyProp","keyTsType","typeMapping","tsType","odataName","keyMapping","map","k"],"sources":["../../../src/generator/ServiceFnGenerator.ts"],"sourcesContent":[null],"mappings":"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
|
|
1
|
+
{"version":3,"file":"ServiceFnGenerator.js","names":["_NamingHelper","require","generateServiceFns","dataModel","options","esmExtensions","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","formatRelativeImport","serviceClassName","getServiceClassName","entityName","editableName","hasKeys","generateIdToKeyFunction","join","idTypeName","keyProp","keyTsType","typeMapping","tsType","isBrandedType","startsWith","odataName","keyMapping","map","k"],"sources":["../../../src/generator/ServiceFnGenerator.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
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;
|
|
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;AAiCvE;;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,MAAM,WAAW,0BAA0B;IACzC;;;OAGG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAA;CACjC;AAED;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,GAC9B,WAAW,SAAS,EACpB,UAAU,0BAA0B,KACnC,0BAWF,CAAA"}
|
|
@@ -2,12 +2,16 @@ import { formatRelativeImport, getClassName, toCamelCase } from "./NamingHelper.
|
|
|
2
2
|
const V2_CONFIG = {
|
|
3
3
|
odataNamespace: "OData",
|
|
4
4
|
clientModule: "OData",
|
|
5
|
-
queryOptionsType: "ODataQueryOptions"
|
|
5
|
+
queryOptionsType: "ODataQueryOptions",
|
|
6
|
+
errorType: "ODataClientError",
|
|
7
|
+
dependenciesType: "ODataClientDependencies"
|
|
6
8
|
};
|
|
7
9
|
const V4_CONFIG = {
|
|
8
10
|
odataNamespace: "ODataV4",
|
|
9
11
|
clientModule: "ODataV4",
|
|
10
|
-
queryOptionsType: "ODataV4QueryOptions"
|
|
12
|
+
queryOptionsType: "ODataV4QueryOptions",
|
|
13
|
+
errorType: "ODataV4ClientError",
|
|
14
|
+
dependenciesType: "ODataV4ClientDependencies"
|
|
11
15
|
};
|
|
12
16
|
const getVersionConfig = version => version === "V4" ? V4_CONFIG : V2_CONFIG;
|
|
13
17
|
/**
|
|
@@ -132,7 +136,7 @@ const generatePathBuildersFile = (dataModel, esmExtensions) => {
|
|
|
132
136
|
// Imports
|
|
133
137
|
lines.push(`import { ${versionConfig.odataNamespace} } from "@odata-effect/odata-effect"`);
|
|
134
138
|
lines.push(`import { toPromise } from "@odata-effect/odata-effect-promise"`);
|
|
135
|
-
lines.push(`import type { Schema } from "effect"`);
|
|
139
|
+
lines.push(`import type { Effect, Schema } from "effect"`);
|
|
136
140
|
lines.push(``);
|
|
137
141
|
// Import model types with Model suffix to avoid collision with entity set names
|
|
138
142
|
if (referencedTypes.size > 0) {
|
|
@@ -260,7 +264,7 @@ const generatePathBuildersFile = (dataModel, esmExtensions) => {
|
|
|
260
264
|
lines.push(` * @category operations`);
|
|
261
265
|
lines.push(` */`);
|
|
262
266
|
lines.push(`export const fetchCollection = <T, I>(schema: Schema.Schema<T, I>) =>`);
|
|
263
|
-
lines.push(` (path: Path<T, true>, options?: ${versionConfig.clientModule}.${versionConfig.queryOptionsType}) =>`);
|
|
267
|
+
lines.push(` (path: Path<T, true>, options?: ${versionConfig.clientModule}.${versionConfig.queryOptionsType}): Effect.Effect<ReadonlyArray<T>, ${versionConfig.odataNamespace}.${versionConfig.errorType}, ${versionConfig.odataNamespace}.${versionConfig.dependenciesType}> =>`);
|
|
264
268
|
lines.push(` ${versionConfig.odataNamespace}.getCollection(path, schema, options)`);
|
|
265
269
|
lines.push(``);
|
|
266
270
|
lines.push(`/**`);
|
|
@@ -275,7 +279,7 @@ const generatePathBuildersFile = (dataModel, esmExtensions) => {
|
|
|
275
279
|
lines.push(` * @category operations`);
|
|
276
280
|
lines.push(` */`);
|
|
277
281
|
lines.push(`export const fetchOne = <T, I>(schema: Schema.Schema<T, I>) =>`);
|
|
278
|
-
lines.push(` (path: Path<T, false>, options?: ${versionConfig.clientModule}.${versionConfig.queryOptionsType}) =>`);
|
|
282
|
+
lines.push(` (path: Path<T, false>, options?: ${versionConfig.clientModule}.${versionConfig.queryOptionsType}): Effect.Effect<T, ${versionConfig.odataNamespace}.${versionConfig.errorType}, ${versionConfig.odataNamespace}.${versionConfig.dependenciesType}> =>`);
|
|
279
283
|
lines.push(` ${versionConfig.odataNamespace}.get(path, schema, options)`);
|
|
280
284
|
lines.push(``);
|
|
281
285
|
// Promise conversion (re-export from odata-effect-promise)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NavigationGenerator.js","names":["formatRelativeImport","getClassName","toCamelCase","V2_CONFIG","odataNamespace","clientModule","queryOptionsType","V4_CONFIG","getVersionConfig","version","getPathBuildersModuleName","collectAllNavigationProperties","dataModel","navProps","entityType","entityTypes","values","navProp","navigationProperties","targetTypeName","targetType","push","propertyName","name","odataName","sourceEntityName","targetEntityName","isCollection","findCollisions","collisions","Set","seen","Map","prop","existing","get","add","set","getNavFunctionName","hasCollision","getDerivedTypes","baseTypeFqName","derived","baseType","furtherDerived","fqName","d","generateNavigations","options","esmExtensions","moduleName","content","generatePathBuildersFile","navigationFiles","fileName","lines","versionConfig","allNavProps","referencedTypes","collectReferencedTypes","size","typesList","Array","from","sort","i","length","isLast","entitySet","entitySets","entityTypeFqName","navPropsBySource","sourceEntity","props","has","fnName","castFunctions","generateTypeCastFunctions","castFunction","join","processed","derivedTypes","castPath","namespace","types"],"sources":["../../../src/generator/NavigationGenerator.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"NavigationGenerator.js","names":["formatRelativeImport","getClassName","toCamelCase","V2_CONFIG","odataNamespace","clientModule","queryOptionsType","errorType","dependenciesType","V4_CONFIG","getVersionConfig","version","getPathBuildersModuleName","collectAllNavigationProperties","dataModel","navProps","entityType","entityTypes","values","navProp","navigationProperties","targetTypeName","targetType","push","propertyName","name","odataName","sourceEntityName","targetEntityName","isCollection","findCollisions","collisions","Set","seen","Map","prop","existing","get","add","set","getNavFunctionName","hasCollision","getDerivedTypes","baseTypeFqName","derived","baseType","furtherDerived","fqName","d","generateNavigations","options","esmExtensions","moduleName","content","generatePathBuildersFile","navigationFiles","fileName","lines","versionConfig","allNavProps","referencedTypes","collectReferencedTypes","size","typesList","Array","from","sort","i","length","isLast","entitySet","entitySets","entityTypeFqName","navPropsBySource","sourceEntity","props","has","fnName","castFunctions","generateTypeCastFunctions","castFunction","join","processed","derivedTypes","castPath","namespace","types"],"sources":["../../../src/generator/NavigationGenerator.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -114,6 +114,12 @@ const generateIdToKeyFunction = (entityType, version) => {
|
|
|
114
114
|
if (entityType.keys.length === 1) {
|
|
115
115
|
const keyProp = entityType.keys[0];
|
|
116
116
|
const keyTsType = keyProp.typeMapping.tsType;
|
|
117
|
+
// Check if key is a branded type that needs string conversion
|
|
118
|
+
const isBrandedType = keyTsType.startsWith("BigDecimal.") || keyTsType.startsWith("DateTime.") || keyTsType.startsWith("Duration.");
|
|
119
|
+
if (isBrandedType) {
|
|
120
|
+
// Branded types are converted to string for EntityKey compatibility
|
|
121
|
+
return `(id: ${idTypeName}) => typeof id === "string" ? { ${keyProp.odataName}: id } : { ${keyProp.odataName}: String(id.${keyProp.name}) }`;
|
|
122
|
+
}
|
|
117
123
|
if (isV4) {
|
|
118
124
|
// V4 can use number keys directly
|
|
119
125
|
if (keyTsType === "number") {
|
|
@@ -130,8 +136,15 @@ const generateIdToKeyFunction = (entityType, version) => {
|
|
|
130
136
|
}
|
|
131
137
|
}
|
|
132
138
|
} else {
|
|
133
|
-
// Composite key -
|
|
134
|
-
const keyMapping = entityType.keys.map(k =>
|
|
139
|
+
// Composite key - convert branded types (BigDecimal, DateTime, Duration) to string
|
|
140
|
+
const keyMapping = entityType.keys.map(k => {
|
|
141
|
+
const tsType = k.typeMapping.tsType;
|
|
142
|
+
// Branded types need to be converted to string for EntityKey compatibility
|
|
143
|
+
if (tsType.startsWith("BigDecimal.") || tsType.startsWith("DateTime.") || tsType.startsWith("Duration.")) {
|
|
144
|
+
return `${k.odataName}: String(id.${k.name})`;
|
|
145
|
+
}
|
|
146
|
+
return `${k.odataName}: id.${k.name}`;
|
|
147
|
+
}).join(", ");
|
|
135
148
|
return `(id: ${idTypeName}) => ({ ${keyMapping} })`;
|
|
136
149
|
}
|
|
137
150
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ServiceFnGenerator.js","names":["formatRelativeImport","getEditableTypeName","getIdTypeName","getServiceClassName","generateServiceFns","dataModel","options","esmExtensions","content","generateServicesFile","servicesFile","fileName","lines","isV4","version","crudImportPath","entitySets","entitySet","values","entityType","entityTypes","get","entityTypeFqName","push","serviceName","modelImports","name","keys","length","i","isLast","serviceClassName","entityName","editableName","hasKeys","generateIdToKeyFunction","join","idTypeName","keyProp","keyTsType","typeMapping","tsType","odataName","keyMapping","map","k"],"sources":["../../../src/generator/ServiceFnGenerator.ts"],"sourcesContent":[null],"mappings":"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
|
|
1
|
+
{"version":3,"file":"ServiceFnGenerator.js","names":["formatRelativeImport","getEditableTypeName","getIdTypeName","getServiceClassName","generateServiceFns","dataModel","options","esmExtensions","content","generateServicesFile","servicesFile","fileName","lines","isV4","version","crudImportPath","entitySets","entitySet","values","entityType","entityTypes","get","entityTypeFqName","push","serviceName","modelImports","name","keys","length","i","isLast","serviceClassName","entityName","editableName","hasKeys","generateIdToKeyFunction","join","idTypeName","keyProp","keyTsType","typeMapping","tsType","isBrandedType","startsWith","odataName","keyMapping","map","k"],"sources":["../../../src/generator/ServiceFnGenerator.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -32,18 +32,24 @@ interface VersionConfig {
|
|
|
32
32
|
readonly odataNamespace: string
|
|
33
33
|
readonly clientModule: string
|
|
34
34
|
readonly queryOptionsType: string
|
|
35
|
+
readonly errorType: string
|
|
36
|
+
readonly dependenciesType: string
|
|
35
37
|
}
|
|
36
38
|
|
|
37
39
|
const V2_CONFIG: VersionConfig = {
|
|
38
40
|
odataNamespace: "OData",
|
|
39
41
|
clientModule: "OData",
|
|
40
|
-
queryOptionsType: "ODataQueryOptions"
|
|
42
|
+
queryOptionsType: "ODataQueryOptions",
|
|
43
|
+
errorType: "ODataClientError",
|
|
44
|
+
dependenciesType: "ODataClientDependencies"
|
|
41
45
|
}
|
|
42
46
|
|
|
43
47
|
const V4_CONFIG: VersionConfig = {
|
|
44
48
|
odataNamespace: "ODataV4",
|
|
45
49
|
clientModule: "ODataV4",
|
|
46
|
-
queryOptionsType: "ODataV4QueryOptions"
|
|
50
|
+
queryOptionsType: "ODataV4QueryOptions",
|
|
51
|
+
errorType: "ODataV4ClientError",
|
|
52
|
+
dependenciesType: "ODataV4ClientDependencies"
|
|
47
53
|
}
|
|
48
54
|
|
|
49
55
|
const getVersionConfig = (version: ODataVersion): VersionConfig => version === "V4" ? V4_CONFIG : V2_CONFIG
|
|
@@ -242,7 +248,7 @@ const generatePathBuildersFile = (dataModel: DataModel, esmExtensions: boolean):
|
|
|
242
248
|
// Imports
|
|
243
249
|
lines.push(`import { ${versionConfig.odataNamespace} } from "@odata-effect/odata-effect"`)
|
|
244
250
|
lines.push(`import { toPromise } from "@odata-effect/odata-effect-promise"`)
|
|
245
|
-
lines.push(`import type { Schema } from "effect"`)
|
|
251
|
+
lines.push(`import type { Effect, Schema } from "effect"`)
|
|
246
252
|
lines.push(``)
|
|
247
253
|
|
|
248
254
|
// Import model types with Model suffix to avoid collision with entity set names
|
|
@@ -384,7 +390,9 @@ const generatePathBuildersFile = (dataModel: DataModel, esmExtensions: boolean):
|
|
|
384
390
|
lines.push(` * @category operations`)
|
|
385
391
|
lines.push(` */`)
|
|
386
392
|
lines.push(`export const fetchCollection = <T, I>(schema: Schema.Schema<T, I>) =>`)
|
|
387
|
-
lines.push(
|
|
393
|
+
lines.push(
|
|
394
|
+
` (path: Path<T, true>, options?: ${versionConfig.clientModule}.${versionConfig.queryOptionsType}): Effect.Effect<ReadonlyArray<T>, ${versionConfig.odataNamespace}.${versionConfig.errorType}, ${versionConfig.odataNamespace}.${versionConfig.dependenciesType}> =>`
|
|
395
|
+
)
|
|
388
396
|
lines.push(` ${versionConfig.odataNamespace}.getCollection(path, schema, options)`)
|
|
389
397
|
lines.push(``)
|
|
390
398
|
lines.push(`/**`)
|
|
@@ -399,7 +407,9 @@ const generatePathBuildersFile = (dataModel: DataModel, esmExtensions: boolean):
|
|
|
399
407
|
lines.push(` * @category operations`)
|
|
400
408
|
lines.push(` */`)
|
|
401
409
|
lines.push(`export const fetchOne = <T, I>(schema: Schema.Schema<T, I>) =>`)
|
|
402
|
-
lines.push(
|
|
410
|
+
lines.push(
|
|
411
|
+
` (path: Path<T, false>, options?: ${versionConfig.clientModule}.${versionConfig.queryOptionsType}): Effect.Effect<T, ${versionConfig.odataNamespace}.${versionConfig.errorType}, ${versionConfig.odataNamespace}.${versionConfig.dependenciesType}> =>`
|
|
412
|
+
)
|
|
403
413
|
lines.push(` ${versionConfig.odataNamespace}.get(path, schema, options)`)
|
|
404
414
|
lines.push(``)
|
|
405
415
|
|
|
@@ -178,6 +178,16 @@ const generateIdToKeyFunction = (
|
|
|
178
178
|
const keyProp = entityType.keys[0]
|
|
179
179
|
const keyTsType = keyProp.typeMapping.tsType
|
|
180
180
|
|
|
181
|
+
// Check if key is a branded type that needs string conversion
|
|
182
|
+
const isBrandedType = keyTsType.startsWith("BigDecimal.") ||
|
|
183
|
+
keyTsType.startsWith("DateTime.") ||
|
|
184
|
+
keyTsType.startsWith("Duration.")
|
|
185
|
+
|
|
186
|
+
if (isBrandedType) {
|
|
187
|
+
// Branded types are converted to string for EntityKey compatibility
|
|
188
|
+
return `(id: ${idTypeName}) => typeof id === "string" ? { ${keyProp.odataName}: id } : { ${keyProp.odataName}: String(id.${keyProp.name}) }`
|
|
189
|
+
}
|
|
190
|
+
|
|
181
191
|
if (isV4) {
|
|
182
192
|
// V4 can use number keys directly
|
|
183
193
|
if (keyTsType === "number") {
|
|
@@ -194,8 +204,15 @@ const generateIdToKeyFunction = (
|
|
|
194
204
|
}
|
|
195
205
|
}
|
|
196
206
|
} else {
|
|
197
|
-
// Composite key -
|
|
198
|
-
const keyMapping = entityType.keys.map((k) =>
|
|
207
|
+
// Composite key - convert branded types (BigDecimal, DateTime, Duration) to string
|
|
208
|
+
const keyMapping = entityType.keys.map((k) => {
|
|
209
|
+
const tsType = k.typeMapping.tsType
|
|
210
|
+
// Branded types need to be converted to string for EntityKey compatibility
|
|
211
|
+
if (tsType.startsWith("BigDecimal.") || tsType.startsWith("DateTime.") || tsType.startsWith("Duration.")) {
|
|
212
|
+
return `${k.odataName}: String(id.${k.name})`
|
|
213
|
+
}
|
|
214
|
+
return `${k.odataName}: id.${k.name}`
|
|
215
|
+
}).join(", ")
|
|
199
216
|
return `(id: ${idTypeName}) => ({ ${keyMapping} })`
|
|
200
217
|
}
|
|
201
218
|
}
|