Skip to content

Commit

Permalink
fix: type issue
Browse files Browse the repository at this point in the history
  • Loading branch information
Soontao committed Jun 20, 2021
1 parent 97b432c commit b3fb06c
Show file tree
Hide file tree
Showing 5 changed files with 95 additions and 24 deletions.
77 changes: 74 additions & 3 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@
"release": "standard-version --no-verify && git push --follow-tags origin master"
},
"devDependencies": {
"@odata/metadata": "^0.2.4",
"@odata/metadata": "^0.2.5",
"@types/jest": "^26.0.23",
"@types/node": "^14.14.41",
"@typescript-eslint/eslint-plugin": "^4.27.0",
Expand Down
2 changes: 1 addition & 1 deletion src/builder/filter.ts
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ class ODataFieldExpr {
private _addExpr(op: ExprOperator, value: any) {

if (value === null) {
this._getFieldExprs().push({ op, value: 'null' })
this._getFieldExprs().push({ op, value: 'null' });
}

switch (typeof value) {
Expand Down
2 changes: 1 addition & 1 deletion src/builder/index.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import { ODataFilter } from './filter';
import { ODataParam } from './param';

export { Edm } from "@odata/metadata";
export { Edm } from '@odata/metadata';
export * from './batch';
export * from './filter';
export * from './param';
Expand Down
36 changes: 18 additions & 18 deletions src/builder/types.ts
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
import { Edm } from "@odata/metadata";
import { Edm } from '@odata/metadata';

/**
*
*
* @param value primitive literal value
* @returns the string representation
*/
export function convertPrimitiveValueToString(value: Edm.PrimitiveTypeValue) {
if (value?.getValue?.() === null) {
return 'null'
return 'null';
}

if (value?.getValue?.() !== undefined) {
Expand All @@ -22,32 +22,32 @@ export function convertPrimitiveValueToString(value: Edm.PrimitiveTypeValue) {
case Edm.Byte:
case Edm.SByte:
case Edm.Single:
return String(value.getValue())
return String(value.getValue());
case Edm.Boolean:
return String(value.getValue())
return String(value.getValue());
case Edm.Binary:
let vB = value.getValue()
const vB = value.getValue();
if (vB instanceof Buffer) {
return `binary'${vB.toString("base64")}'`
return `binary'${vB.toString('base64')}'`;
}
return String(vB)
return String(vB);
case Edm.String:
return `'${value.getValue()}'`
return `'${value.getValue()}'`;
case Edm.Duration:
// TODO integrate with some other duration lib
return value.getValue();
case Edm.DateTimeOffset:
let v1 = value.getValue()
let v1 = value.getValue();
if (typeof v1 === 'string') {
v1 = new Date(v1)
v1 = new Date(v1);
}
return v1.toISOString()
return v1.toISOString();
case Edm.Date:
const v2 = value.getValue()
const v2 = value.getValue();
if (v2 instanceof Date) {
return `${v2.getFullYear()}-${v2.getMonth() + 1}-${v2.getDate()}`
return `${v2.getFullYear()}-${v2.getMonth() + 1}-${v2.getDate()}`;
}
return v2
return v2;
case Edm.Geography:
case Edm.GeographyPoint:
case Edm.GeographyLineString:
Expand All @@ -64,13 +64,13 @@ export function convertPrimitiveValueToString(value: Edm.PrimitiveTypeValue) {
case Edm.GeometryMultiLineString:
case Edm.GeometryMultiPolygon:
case Edm.GeometryCollection:
return String(value.getValue())
return String(value.getValue());
default:
throw new TypeError(`not support type '${value.getType()}'`)
throw new TypeError(`not support type '${value.getType()}'`);
}
}

throw new Error("'undefined' value provided")
throw new Error("'undefined' value provided");


}

0 comments on commit b3fb06c

Please sign in to comment.