diff --git a/CHANGELOG.md b/CHANGELOG.md index 61be1dac1..3e1edf988 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,6 +11,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Supported the management of additional currencies in the admin control panel +### Changed + +- Upgraded `prisma` from version `2.30.2` to `3.6.0` + ## 1.86.0 - 04.12.2021 ### Added diff --git a/apps/api/src/app/access/access.service.ts b/apps/api/src/app/access/access.service.ts index f2f98eb23..f1dc4c6ec 100644 --- a/apps/api/src/app/access/access.service.ts +++ b/apps/api/src/app/access/access.service.ts @@ -24,7 +24,7 @@ export class AccessService { take?: number; cursor?: Prisma.AccessWhereUniqueInput; where?: Prisma.AccessWhereInput; - orderBy?: Prisma.AccessOrderByInput; + orderBy?: Prisma.AccessOrderByWithRelationInput; }): Promise { const { include, skip, take, cursor, where, orderBy } = params; diff --git a/apps/api/src/app/account/account.service.ts b/apps/api/src/app/account/account.service.ts index 159499dbb..9f5aab1b2 100644 --- a/apps/api/src/app/account/account.service.ts +++ b/apps/api/src/app/account/account.service.ts @@ -40,7 +40,7 @@ export class AccountService { take?: number; cursor?: Prisma.AccountWhereUniqueInput; where?: Prisma.AccountWhereInput; - orderBy?: Prisma.AccountOrderByInput; + orderBy?: Prisma.AccountOrderByWithRelationInput; }): Promise< (Account & { Order?: Order[]; diff --git a/apps/api/src/app/auth-device/auth-device.service.ts b/apps/api/src/app/auth-device/auth-device.service.ts index 80968f025..048aca758 100644 --- a/apps/api/src/app/auth-device/auth-device.service.ts +++ b/apps/api/src/app/auth-device/auth-device.service.ts @@ -23,7 +23,7 @@ export class AuthDeviceService { take?: number; cursor?: Prisma.AuthDeviceWhereUniqueInput; where?: Prisma.AuthDeviceWhereInput; - orderBy?: Prisma.AuthDeviceOrderByInput; + orderBy?: Prisma.AuthDeviceOrderByWithRelationInput; }): Promise { const { skip, take, cursor, where, orderBy } = params; return this.prismaService.authDevice.findMany({ diff --git a/apps/api/src/app/order/order.service.ts b/apps/api/src/app/order/order.service.ts index ace5756da..4fabb98f1 100644 --- a/apps/api/src/app/order/order.service.ts +++ b/apps/api/src/app/order/order.service.ts @@ -28,7 +28,7 @@ export class OrderService { take?: number; cursor?: Prisma.OrderWhereUniqueInput; where?: Prisma.OrderWhereInput; - orderBy?: Prisma.OrderOrderByInput; + orderBy?: Prisma.OrderOrderByWithRelationInput; }): Promise { const { include, skip, take, cursor, where, orderBy } = params; diff --git a/apps/api/src/app/user/user.service.ts b/apps/api/src/app/user/user.service.ts index d828c6988..a513cbba6 100644 --- a/apps/api/src/app/user/user.service.ts +++ b/apps/api/src/app/user/user.service.ts @@ -119,7 +119,7 @@ export class UserService { take?: number; cursor?: Prisma.UserWhereUniqueInput; where?: Prisma.UserWhereInput; - orderBy?: Prisma.UserOrderByInput; + orderBy?: Prisma.UserOrderByWithRelationInput; }): Promise { const { skip, take, cursor, where, orderBy } = params; return this.prismaService.user.findMany({ diff --git a/apps/api/src/services/data-provider/data-provider.service.ts b/apps/api/src/services/data-provider/data-provider.service.ts index 8ce146e4b..15a8a6efb 100644 --- a/apps/api/src/services/data-provider/data-provider.service.ts +++ b/apps/api/src/services/data-provider/data-provider.service.ts @@ -11,7 +11,7 @@ import { DATE_FORMAT } from '@ghostfolio/common/helper'; import { Granularity } from '@ghostfolio/common/types'; import { Inject, Injectable, Logger } from '@nestjs/common'; import { DataSource, MarketData } from '@prisma/client'; -import { format } from 'date-fns'; +import { format, isValid } from 'date-fns'; import { isEmpty } from 'lodash'; @Injectable() @@ -62,7 +62,7 @@ export class DataProviderService { [symbol: string]: { [date: string]: IDataProviderHistoricalResponse }; } = {}; - if (isEmpty(aItems)) { + if (isEmpty(aItems) || !isValid(from) || !isValid(to)) { return response; } @@ -96,7 +96,7 @@ export class DataProviderService { ORDER BY date;`; const marketDataByGranularity: MarketData[] = - await this.prismaService.$queryRaw(queryRaw); + await this.prismaService.$queryRawUnsafe(queryRaw); response = marketDataByGranularity.reduce((r, marketData) => { const { date, marketPrice, symbol } = marketData; diff --git a/apps/api/src/services/market-data.service.ts b/apps/api/src/services/market-data.service.ts index 4ba6c966f..f9c7fc003 100644 --- a/apps/api/src/services/market-data.service.ts +++ b/apps/api/src/services/market-data.service.ts @@ -53,7 +53,7 @@ export class MarketDataService { take?: number; cursor?: Prisma.MarketDataWhereUniqueInput; where?: Prisma.MarketDataWhereInput; - orderBy?: Prisma.MarketDataOrderByInput; + orderBy?: Prisma.MarketDataOrderByWithRelationInput; }): Promise { const { skip, take, cursor, where, orderBy } = params; diff --git a/package.json b/package.json index 6d0910d8a..08c4c9e2b 100644 --- a/package.json +++ b/package.json @@ -69,7 +69,7 @@ "@nestjs/schedule": "1.0.2", "@nestjs/serve-static": "2.2.2", "@nrwl/angular": "13.2.2", - "@prisma/client": "2.30.2", + "@prisma/client": "3.6.0", "@simplewebauthn/browser": "4.1.0", "@simplewebauthn/server": "4.1.0", "@simplewebauthn/typescript-types": "4.0.0", @@ -105,7 +105,6 @@ "passport": "0.4.1", "passport-google-oauth20": "2.0.0", "passport-jwt": "4.0.0", - "prisma": "2.30.2", "reflect-metadata": "0.1.13", "round-to": "5.0.0", "rxjs": "7.4.0", @@ -162,6 +161,7 @@ "jest": "27.2.3", "jest-preset-angular": "11.0.0", "prettier": "2.3.2", + "prisma": "3.6.0", "replace-in-file": "6.2.0", "rimraf": "3.0.2", "ts-jest": "27.0.5", diff --git a/yarn.lock b/yarn.lock index b79552d7c..a5f1c3de0 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2904,22 +2904,22 @@ resolved "https://registry.yarnpkg.com/@popperjs/core/-/core-2.10.1.tgz#728ecd95ab207aab8a9a4e421f0422db329232be" integrity sha512-HnUhk1Sy9IuKrxEMdIRCxpIqPw6BFsbYSEUO9p/hNw5sMld/+3OLMWQP80F8/db9qsv3qUjs7ZR5bS/R+iinXw== -"@prisma/client@2.30.2": - version "2.30.2" - resolved "https://registry.yarnpkg.com/@prisma/client/-/client-2.30.2.tgz#4e7f90f27a176d95769609e65932a4b95aa8da3f" - integrity sha512-cfS/1UWBRE4sq0z7spGLYqOE0oN2YJJvKtm+63o7h/BI6ji10VWla79aXBTXj3AImtfykNtC6OHtFVawEl/49w== +"@prisma/client@3.6.0": + version "3.6.0" + resolved "https://registry.yarnpkg.com/@prisma/client/-/client-3.6.0.tgz#68a60cd4c73a369b11f72e173e86fd6789939293" + integrity sha512-ycSGY9EZGROtje0iCNsgC5Zqi/ttX2sO7BNMYaLsUMiTlf3F69ZPH+08pRo0hrDfkZzyimXYqeXJlaoYDH1w7A== dependencies: - "@prisma/engines-version" "2.30.1-2.b8c35d44de987a9691890b3ddf3e2e7effb9bf20" + "@prisma/engines-version" "3.6.0-24.dc520b92b1ebb2d28dc3161f9f82e875bd35d727" -"@prisma/engines-version@2.30.1-2.b8c35d44de987a9691890b3ddf3e2e7effb9bf20": - version "2.30.1-2.b8c35d44de987a9691890b3ddf3e2e7effb9bf20" - resolved "https://registry.yarnpkg.com/@prisma/engines-version/-/engines-version-2.30.1-2.b8c35d44de987a9691890b3ddf3e2e7effb9bf20.tgz#d5ef55c92beeba56e52bba12b703af0bfd30530d" - integrity sha512-/iDRgaoSQC77WN2oDsOM8dn61fykm6tnZUAClY+6p+XJbOEgZ9gy4CKuKTBgrjSGDVjtQ/S2KGcYd3Ring8xaw== +"@prisma/engines-version@3.6.0-24.dc520b92b1ebb2d28dc3161f9f82e875bd35d727": + version "3.6.0-24.dc520b92b1ebb2d28dc3161f9f82e875bd35d727" + resolved "https://registry.yarnpkg.com/@prisma/engines-version/-/engines-version-3.6.0-24.dc520b92b1ebb2d28dc3161f9f82e875bd35d727.tgz#25aa447776849a774885866b998732b37ec4f4f5" + integrity sha512-vtoO2ys6mSfc8ONTWdcYztKN3GBU1tcKBj0aXObyjzSuGwHFcM/pEA0xF+n1W4/0TAJgfoPX2khNEit6g0jtNA== -"@prisma/engines@2.30.1-2.b8c35d44de987a9691890b3ddf3e2e7effb9bf20": - version "2.30.1-2.b8c35d44de987a9691890b3ddf3e2e7effb9bf20" - resolved "https://registry.yarnpkg.com/@prisma/engines/-/engines-2.30.1-2.b8c35d44de987a9691890b3ddf3e2e7effb9bf20.tgz#2df768aa7c9f84acaa1f35c970417822233a9fb1" - integrity sha512-WPnA/IUrxDihrRhdP6+8KAVSwsc0zsh8ioPYsLJjOhzVhwpRbuFH2tJDRIAbc+qFh+BbTIZbeyBYt8fpNXaYQQ== +"@prisma/engines@3.6.0-24.dc520b92b1ebb2d28dc3161f9f82e875bd35d727": + version "3.6.0-24.dc520b92b1ebb2d28dc3161f9f82e875bd35d727" + resolved "https://registry.yarnpkg.com/@prisma/engines/-/engines-3.6.0-24.dc520b92b1ebb2d28dc3161f9f82e875bd35d727.tgz#c68ede6aeffa9ef7743a32cfa6daf9172a4e15b3" + integrity sha512-dRClHS7DsTVchDKzeG72OaEyeDskCv91pnZ72Fftn0mp4BkUvX2LvWup65hCNzwwQm5IDd6A88APldKDnMiEMA== "@samverschueren/stream-to-observable@^0.3.0": version "0.3.1" @@ -14431,12 +14431,12 @@ pretty-hrtime@^1.0.3: resolved "https://registry.yarnpkg.com/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz#b7e3ea42435a4c9b2759d99e0f201eb195802ee1" integrity sha1-t+PqQkNaTJsnWdmeDyAesZWALuE= -prisma@2.30.2: - version "2.30.2" - resolved "https://registry.yarnpkg.com/prisma/-/prisma-2.30.2.tgz#f65ea0a04ff642e1e393d5b42c804bdcb099a465" - integrity sha512-AoLz3CfD7XM+vfE7IWzxQq1O2+ZZ31+6yfabWeMr32wxdLLxSsGagW80LFgKIsZgWW6Ypwleu5ujyKNvO91WHA== +prisma@3.6.0: + version "3.6.0" + resolved "https://registry.yarnpkg.com/prisma/-/prisma-3.6.0.tgz#99532abc02e045e58c6133a19771bdeb28cecdbe" + integrity sha512-6SqgHS/5Rq6HtHjsWsTxlj+ySamGyCLBUQfotc2lStOjPv52IQuDVpp58GieNqc9VnfuFyHUvTZw7aQB+G2fvQ== dependencies: - "@prisma/engines" "2.30.1-2.b8c35d44de987a9691890b3ddf3e2e7effb9bf20" + "@prisma/engines" "3.6.0-24.dc520b92b1ebb2d28dc3161f9f82e875bd35d727" prismjs@^1.21.0, prismjs@^1.23.0, prismjs@~1.24.0: version "1.24.1"