@levrbet/shared 0.1.180 → 0.1.182
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/core/config/urls.js +1 -1
- package/dist/core/config/urls.js.map +1 -1
- package/dist/core/contracts/constants.js +3 -3
- package/dist/core/contracts/constants.js.map +1 -1
- package/dist/core/index.d.ts +0 -1
- package/dist/core/index.js +0 -1
- package/dist/core/index.js.map +1 -1
- package/dist/core/socket.io/events.d.ts +1 -1
- package/dist/core/types/auth/auth.types.d.ts +1 -1
- package/dist/core/types/auth/request.types.js +3 -3
- package/dist/core/types/auth/request.types.js.map +1 -1
- package/dist/core/types/oracle/fixture.types.d.ts +1 -1
- package/dist/core/types/oracle/fixture.types.js +1 -1
- package/dist/core/types/oracle/fixture.types.js.map +1 -1
- package/dist/core/types/oracle/game/game.types.d.ts +1 -1
- package/dist/core/types/oracle/game/game.types.js +3 -3
- package/dist/core/types/oracle/game/game.types.js.map +1 -1
- package/dist/core/types/oracle/game/zod.game.types.js +4 -4
- package/dist/core/types/oracle/game/zod.game.types.js.map +1 -1
- package/dist/core/types/oracle/market/markets.types.d.ts +1 -1
- package/dist/core/types/oracle/market/positions.types.d.ts +4 -0
- package/dist/core/types/oracle/requests/game.request.types.js +8 -8
- package/dist/core/types/oracle/requests/game.request.types.js.map +1 -1
- package/dist/core/types/oracle/requests/market.request.types.js +3 -3
- package/dist/core/types/oracle/requests/market.request.types.js.map +1 -1
- package/dist/core/types/oracle/requests/odds.response.types.d.ts +1 -1
- package/dist/core/types/oracle/requests/user.request.type.d.ts +1 -1
- package/dist/core/utils/game.utils.d.ts +1 -1
- package/dist/core/utils/game.utils.js +5 -5
- package/dist/core/utils/game.utils.js.map +1 -1
- package/dist/server/config/prisma.d.ts +1 -1
- package/dist/server/config/prisma.js +2 -2
- package/dist/server/config/prisma.js.map +1 -1
- package/dist/server/liquidation-engine/redis.cache.manager/prices.set.manager.d.ts +2 -1
- package/dist/server/liquidation-engine/redis.cache.manager/prices.set.manager.js.map +1 -1
- package/dist/server/middleware/auth/hmac.handler.js +3 -2
- package/dist/server/middleware/auth/hmac.handler.js.map +1 -1
- package/dist/server/middleware/multiAuth.examples.js +7 -6
- package/dist/server/middleware/multiAuth.examples.js.map +1 -1
- package/dist/server/oracle/redis-cache-manager/cache.keys.utils.d.ts +1 -1
- package/dist/server/oracle/redis-cache-manager/game.cache.service.d.ts +2 -1
- package/dist/server/oracle/redis-cache-manager/game.cache.service.js +3 -3
- package/dist/server/oracle/redis-cache-manager/game.cache.service.js.map +1 -1
- package/dist/server/oracle/redis-cache-manager/market.cache.service.d.ts +2 -1
- package/dist/server/oracle/redis-cache-manager/market.cache.service.js.map +1 -1
- package/dist/server/prisma/index.d.ts +1 -2
- package/dist/server/prisma/index.js +11 -21
- package/dist/server/prisma/index.js.map +1 -1
- package/dist/server/repositories/apiKey.repository.d.ts +1 -1
- package/dist/server/types/global.types.d.ts +1 -1
- package/dist/server/types/global.types.js.map +1 -1
- package/package.json +12 -7
- package/{dist/core/prisma/generated → prisma}/schema.prisma +24 -25
- package/scripts/setup-prisma.js +116 -0
- package/dist/core/prisma/generated/client.d.ts +0 -1
- package/dist/core/prisma/generated/client.js +0 -5
- package/dist/core/prisma/generated/default.d.ts +0 -1
- package/dist/core/prisma/generated/default.js +0 -5
- package/dist/core/prisma/generated/edge.d.ts +0 -1
- package/dist/core/prisma/generated/edge.js +0 -470
- package/dist/core/prisma/generated/index-browser.js +0 -457
- package/dist/core/prisma/generated/index.d.ts +0 -24178
- package/dist/core/prisma/generated/index.js +0 -491
- package/dist/core/prisma/generated/libquery_engine-linux-musl-openssl-3.0.x.so.node +0 -0
- package/dist/core/prisma/generated/package.json +0 -183
- package/dist/core/prisma/generated/runtime/edge-esm.js +0 -35
- package/dist/core/prisma/generated/runtime/edge.js +0 -35
- package/dist/core/prisma/generated/runtime/index-browser.d.ts +0 -370
- package/dist/core/prisma/generated/runtime/index-browser.js +0 -17
- package/dist/core/prisma/generated/runtime/library.d.ts +0 -3982
- package/dist/core/prisma/generated/runtime/library.js +0 -147
- package/dist/core/prisma/generated/runtime/react-native.js +0 -84
- package/dist/core/prisma/generated/runtime/wasm-compiler-edge.js +0 -85
- package/dist/core/prisma/generated/runtime/wasm-engine-edge.js +0 -37
- package/dist/core/prisma/generated/wasm-edge-light-loader.mjs +0 -5
- package/dist/core/prisma/generated/wasm-worker-loader.mjs +0 -5
- package/dist/core/prisma/generated/wasm.d.ts +0 -1
- package/dist/core/prisma/generated/wasm.js +0 -477
- package/dist/core/prisma/index.d.ts +0 -1
- package/dist/core/prisma/index.js +0 -21
- package/dist/core/prisma/index.js.map +0 -1
package/dist/core/config/urls.js
CHANGED
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.allUrls = void 0;
|
|
4
4
|
const types_1 = require("../types");
|
|
5
5
|
const indexers_types_1 = require("../types/indexers.types");
|
|
6
|
-
// TODO: set all urls
|
|
6
|
+
// TODO: set all urls.
|
|
7
7
|
exports.allUrls = {
|
|
8
8
|
[types_1.LevrEnv.LOCAL]: {
|
|
9
9
|
auth: "https://auth-api.dev.levr.bet",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"urls.js","sourceRoot":"","sources":["../../../src/core/config/urls.ts"],"names":[],"mappings":";;;AAAA,oCAA6C;AAC7C,4DAAqD;AAErD,
|
|
1
|
+
{"version":3,"file":"urls.js","sourceRoot":"","sources":["../../../src/core/config/urls.ts"],"names":[],"mappings":";;;AAAA,oCAA6C;AAC7C,4DAAqD;AAErD,sBAAsB;AAET,QAAA,OAAO,GAAG;IACnB,CAAC,eAAO,CAAC,KAAK,CAAC,EAAE;QACb,IAAI,EAAE,+BAA+B;QACrC,UAAU,EAAE,kCAAkC;QAC9C,eAAe,EAAE,uCAAuC;QACxD,gBAAgB,EAAE,wCAAwC;QAC1D,OAAO,EAAE,8BAA8B;QACvC,QAAQ,EAAE;YACN,CAAC,iBAAS,CAAC,aAAa,CAAC,EAAE;gBACvB,EAAE,IAAI,EAAE,4BAAW,CAAC,KAAK,EAAE,GAAG,EAAE,uDAAuD,EAAE;gBACzF,EAAE,IAAI,EAAE,4BAAW,CAAC,QAAQ,EAAE,GAAG,EAAE,gEAAgE,EAAE;aACxG;SACJ;KACJ;IACD,CAAC,eAAO,CAAC,GAAG,CAAC,EAAE;QACX,IAAI,EAAE,+BAA+B;QACrC,UAAU,EAAE,kCAAkC;QAC9C,eAAe,EAAE,uCAAuC;QACxD,gBAAgB,EAAE,wCAAwC;QAC1D,OAAO,EAAE,sEAAsE;QAC/E,QAAQ,EAAE;YACN,CAAC,iBAAS,CAAC,aAAa,CAAC,EAAE;gBACvB,EAAE,IAAI,EAAE,4BAAW,CAAC,KAAK,EAAE,GAAG,EAAE,uDAAuD,EAAE;gBACzF,EAAE,IAAI,EAAE,4BAAW,CAAC,QAAQ,EAAE,GAAG,EAAE,gEAAgE,EAAE;aACxG;SACJ;KACJ;IACD,CAAC,eAAO,CAAC,OAAO,CAAC,EAAE;QACf,IAAI,EAAE,oCAAoC;QAC1C,UAAU,EAAE,sCAAsC;QAClD,eAAe,EAAE,2CAA2C;QAC5D,gBAAgB,EAAE,4CAA4C;QAC9D,OAAO,EAAE,kCAAkC;QAC3C,QAAQ,EAAE;YACN,CAAC,iBAAS,CAAC,aAAa,CAAC,EAAE;gBACvB,EAAE,IAAI,EAAE,4BAAW,CAAC,KAAK,EAAE,GAAG,EAAE,kCAAkC,EAAE;gBACpE,EAAE,IAAI,EAAE,4BAAW,CAAC,QAAQ,EAAE,GAAG,EAAE,kCAAkC,EAAE;aAC1E;SACJ;KACJ;IACD,CAAC,eAAO,CAAC,IAAI,CAAC,EAAE;QACZ,IAAI,EAAE,2BAA2B;QACjC,UAAU,EAAE,8BAA8B;QAC1C,eAAe,EAAE,mCAAmC;QACpD,gBAAgB,EAAE,oCAAoC;QACtD,OAAO,EAAE,8BAA8B;QACvC,QAAQ,EAAE;YACN,CAAC,iBAAS,CAAC,aAAa,CAAC,EAAE;gBACvB,EAAE,IAAI,EAAE,4BAAW,CAAC,KAAK,EAAE,GAAG,EAAE,0BAA0B,EAAE;gBAC5D,EAAE,IAAI,EAAE,4BAAW,CAAC,QAAQ,EAAE,GAAG,EAAE,0BAA0B,EAAE;aAClE;SACJ;KACJ;CACJ,CAAA"}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.e30 = exports.e18 = exports.e6 = exports.PositionStatus = exports.LevrMarketIdToMarketType = exports.LevrMarketId = void 0;
|
|
4
|
-
const
|
|
4
|
+
const client_1 = require("@prisma/client");
|
|
5
5
|
var LevrMarketId;
|
|
6
6
|
(function (LevrMarketId) {
|
|
7
7
|
LevrMarketId["FULL_TIME_WINNER"] = "0xeb1dcadcfca10960803009411023082d";
|
|
8
8
|
LevrMarketId["OVER_UNDER"] = "0xa94fb48271ded4f41a3089f130a62d1f";
|
|
9
9
|
})(LevrMarketId || (exports.LevrMarketId = LevrMarketId = {}));
|
|
10
10
|
exports.LevrMarketIdToMarketType = {
|
|
11
|
-
[LevrMarketId.FULL_TIME_WINNER]:
|
|
12
|
-
[LevrMarketId.OVER_UNDER]:
|
|
11
|
+
[LevrMarketId.FULL_TIME_WINNER]: client_1.MarketType.FullTimeWinner,
|
|
12
|
+
[LevrMarketId.OVER_UNDER]: client_1.MarketType.OverUnder,
|
|
13
13
|
};
|
|
14
14
|
var PositionStatus;
|
|
15
15
|
(function (PositionStatus) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/core/contracts/constants.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/core/contracts/constants.ts"],"names":[],"mappings":";;;AAAA,2CAA2C;AAE3C,IAAY,YAGX;AAHD,WAAY,YAAY;IACpB,uEAAuD,CAAA;IACvD,iEAAiD,CAAA;AACrD,CAAC,EAHW,YAAY,4BAAZ,YAAY,QAGvB;AAEY,QAAA,wBAAwB,GAA2B;IAC5D,CAAC,YAAY,CAAC,gBAAgB,CAAC,EAAE,mBAAU,CAAC,cAAc;IAC1D,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE,mBAAU,CAAC,SAAS;CAClD,CAAA;AAED,IAAY,cAWX;AAXD,WAAY,cAAc;IACtB,qBAAqB;IACrB,mDAAI,CAAA;IACJ,0CAA0C;IAC1C,+DAAU,CAAA;IACV,iDAAiD;IACjD,qEAAa,CAAA;IACb,uCAAuC;IACvC,mDAAI,CAAA;IACJ,sDAAsD;IACtD,yDAAO,CAAA;AACX,CAAC,EAXW,cAAc,8BAAd,cAAc,QAWzB;AAEY,QAAA,EAAE,GAAG,GAAG,IAAI,EAAE,CAAA;AACd,QAAA,GAAG,GAAG,GAAG,IAAI,GAAG,CAAA;AAChB,QAAA,GAAG,GAAG,GAAG,IAAI,GAAG,CAAA"}
|
package/dist/core/index.d.ts
CHANGED
package/dist/core/index.js
CHANGED
|
@@ -17,7 +17,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
17
17
|
__exportStar(require("./config"), exports);
|
|
18
18
|
__exportStar(require("./contracts"), exports);
|
|
19
19
|
__exportStar(require("./indexers"), exports);
|
|
20
|
-
__exportStar(require("./prisma"), exports);
|
|
21
20
|
__exportStar(require("./privy"), exports);
|
|
22
21
|
__exportStar(require("./socket.io"), exports);
|
|
23
22
|
__exportStar(require("./types"), exports);
|
package/dist/core/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAwB;AACxB,8CAA2B;AAC3B,6CAA0B;AAC1B,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAwB;AACxB,8CAA2B;AAC3B,6CAA0B;AAC1B,0CAAuB;AACvB,8CAA2B;AAC3B,0CAAuB;AACvB,0CAAuB;AACvB,+CAA4B"}
|
|
@@ -4,12 +4,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.CreateApiKeySchema = void 0;
|
|
7
|
+
const client_1 = require("@prisma/client");
|
|
7
8
|
const zod_1 = __importDefault(require("zod"));
|
|
8
|
-
const prisma_1 = require("../../prisma");
|
|
9
9
|
exports.CreateApiKeySchema = zod_1.default.object({
|
|
10
10
|
name: zod_1.default.string().min(1).max(100),
|
|
11
|
-
scopes: zod_1.default.array(zod_1.default.enum(
|
|
11
|
+
scopes: zod_1.default.array(zod_1.default.enum(client_1.ApiKeyScope)).min(1, "At least one scope is required."),
|
|
12
12
|
expiresAt: zod_1.default.coerce.date().optional(),
|
|
13
|
-
service: zod_1.default.enum(
|
|
13
|
+
service: zod_1.default.enum(client_1.LevrService).optional(),
|
|
14
14
|
});
|
|
15
15
|
//# sourceMappingURL=request.types.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request.types.js","sourceRoot":"","sources":["../../../../src/core/types/auth/request.types.ts"],"names":[],"mappings":";;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"request.types.js","sourceRoot":"","sources":["../../../../src/core/types/auth/request.types.ts"],"names":[],"mappings":";;;;;;AAAA,2CAAyD;AACzD,8CAAmB;AAEN,QAAA,kBAAkB,GAAG,aAAC,CAAC,MAAM,CAAC;IACvC,IAAI,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;IAChC,MAAM,EAAE,aAAC,CAAC,KAAK,CAAC,aAAC,CAAC,IAAI,CAAC,oBAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,iCAAiC,CAAC;IAC9E,SAAS,EAAE,aAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IACrC,OAAO,EAAE,aAAC,CAAC,IAAI,CAAC,oBAAW,CAAC,CAAC,QAAQ,EAAE;CAC1C,CAAC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fixture.types.js","sourceRoot":"","sources":["../../../../src/core/types/oracle/fixture.types.ts"],"names":[],"mappings":";;AAAA,
|
|
1
|
+
{"version":3,"file":"fixture.types.js","sourceRoot":"","sources":["../../../../src/core/types/oracle/fixture.types.ts"],"names":[],"mappings":";;AAAA,2CAAoE"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { GamePhase, LevrGame, MarketType, Prisma } from "
|
|
1
|
+
import { GamePhase, LevrGame, MarketType, Prisma } from "@prisma/client";
|
|
2
2
|
import { LevrChain } from "../../blockchain";
|
|
3
3
|
import { MarketWithRelations } from "../market";
|
|
4
4
|
export declare enum RegistrationStatus {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.GameProvider = exports.LeagueIdsEnum = exports.FixtureIdIndexes = exports.LsportEventStatus = exports.UFCEventStatus = exports.MLBEventStatus = exports.NFLEventStatus = exports.NBAEventStatus = exports.RunDownEventStatuses = exports.formattedMarketType = exports.RegistrationStatus = void 0;
|
|
4
|
-
const
|
|
4
|
+
const client_1 = require("@prisma/client");
|
|
5
5
|
const utils_1 = require("../../../utils");
|
|
6
6
|
var RegistrationStatus;
|
|
7
7
|
(function (RegistrationStatus) {
|
|
@@ -10,8 +10,8 @@ var RegistrationStatus;
|
|
|
10
10
|
})(RegistrationStatus || (exports.RegistrationStatus = RegistrationStatus = {}));
|
|
11
11
|
const formattedMarketType = (market) => {
|
|
12
12
|
return {
|
|
13
|
-
[
|
|
14
|
-
[
|
|
13
|
+
[client_1.MarketType.FullTimeWinner]: "Full Time Winner",
|
|
14
|
+
[client_1.MarketType.OverUnder]: "Over/Under",
|
|
15
15
|
}[market];
|
|
16
16
|
};
|
|
17
17
|
exports.formattedMarketType = formattedMarketType;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"game.types.js","sourceRoot":"","sources":["../../../../../src/core/types/oracle/game/game.types.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"game.types.js","sourceRoot":"","sources":["../../../../../src/core/types/oracle/game/game.types.ts"],"names":[],"mappings":";;;AAAA,2CAAwE;AACxE,0CAA2C;AAI3C,IAAY,kBAGX;AAHD,WAAY,kBAAkB;IAC1B,+CAAyB,CAAA;IACzB,mDAA6B,CAAA;AACjC,CAAC,EAHW,kBAAkB,kCAAlB,kBAAkB,QAG7B;AAEM,MAAM,mBAAmB,GAAG,CAAC,MAAkB,EAAE,EAAE;IACtD,OAAO;QACH,CAAC,mBAAU,CAAC,cAAc,CAAC,EAAE,kBAAkB;QAC/C,CAAC,mBAAU,CAAC,SAAS,CAAC,EAAE,YAAY;KACvC,CAAC,MAAM,CAAC,CAAA;AACb,CAAC,CAAA;AALY,QAAA,mBAAmB,uBAK/B;AAuBD,IAAY,oBAMX;AAND,WAAY,oBAAoB;IAC5B,kDAA0B,CAAA;IAC1B,oDAA4B,CAAA;IAC5B,0DAAkC,CAAA;IAClC,8CAAsB,CAAA;IACtB,sDAA8B,CAAA;AAClC,CAAC,EANW,oBAAoB,oCAApB,oBAAoB,QAM/B;AAEY,QAAA,cAAc,GAAG,IAAA,kBAAU,EAAC,oBAAoB,EAAE,EAAE,CAAC,CAAA;AAErD,QAAA,cAAc,GAAG,IAAA,kBAAU,EAAC,oBAAoB,EAAE;IAC3D,SAAS,EAAE,kBAAkB;CAChC,CAAC,CAAA;AACW,QAAA,cAAc,GAAG,IAAA,kBAAU,EAAC,oBAAoB,EAAE,EAAE,CAAC,CAAA;AACrD,QAAA,cAAc,GAAG,IAAA,kBAAU,EAAC,oBAAoB,EAAE;IAC3D,WAAW,EAAE,qBAAqB;IAClC,WAAW,EAAE,qBAAqB;CACrC,CAAC,CAAA;AAEF,IAAY,iBAUX;AAVD,WAAY,iBAAiB;IACzB,uEAAe,CAAA;IACf,iEAAY,CAAA;IACZ,uEAAe,CAAA;IACf,iEAAY,CAAA;IACZ,mEAAa,CAAA;IACb,uEAAe,CAAA;IACf,mEAAa,CAAA;IACb,2EAAiB,CAAA;IACjB,6EAAkB,CAAA;AACtB,CAAC,EAVW,iBAAiB,iCAAjB,iBAAiB,QAU5B;AAyBD,IAAY,gBAIX;AAJD,WAAY,gBAAgB;IACxB,6DAAW,CAAA;IACX,6DAAW,CAAA;IACX,iEAAa,CAAA;AACjB,CAAC,EAJW,gBAAgB,gCAAhB,gBAAgB,QAI3B;AAQD,IAAY,aAGX;AAHD,WAAY,aAAa;IACrB,oCAAmB,CAAA;IACnB,sCAAqB,CAAA;AACzB,CAAC,EAHW,aAAa,6BAAb,aAAa,QAGxB;AAED,IAAY,YAIX;AAJD,WAAY,YAAY;IACpB,mCAAmB,CAAA;IACnB,mCAAmB,CAAA;IACnB,wCAAwB,CAAA;AAC5B,CAAC,EAJW,YAAY,4BAAZ,YAAY,QAIvB"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.OddsSchema = void 0;
|
|
4
|
+
const client_1 = require("@prisma/client");
|
|
4
5
|
const zod_1 = require("zod");
|
|
5
|
-
const prisma_1 = require("../../../../core/prisma");
|
|
6
6
|
exports.OddsSchema = zod_1.z.object({
|
|
7
7
|
id: zod_1.z.string(),
|
|
8
8
|
marketId: zod_1.z.string(),
|
|
@@ -11,12 +11,12 @@ exports.OddsSchema = zod_1.z.object({
|
|
|
11
11
|
prices: zod_1.z.any(), // Json type
|
|
12
12
|
timestamp: zod_1.z.date(),
|
|
13
13
|
providerId: zod_1.z.string(),
|
|
14
|
-
marketType: zod_1.z.enum(
|
|
14
|
+
marketType: zod_1.z.enum(client_1.MarketType), // assuming these are the OddsTypes
|
|
15
15
|
details: zod_1.z.any().optional(), // Json type optional
|
|
16
16
|
createdAt: zod_1.z.date().default(() => new Date()),
|
|
17
|
-
gamePhase: zod_1.z.enum(
|
|
17
|
+
gamePhase: zod_1.z.enum(client_1.GamePhase), // assuming these are the GamePhase values
|
|
18
18
|
gamePeriod: zod_1.z.number(),
|
|
19
19
|
gameClock: zod_1.z.number(),
|
|
20
|
-
marketPhase: zod_1.z.enum(
|
|
20
|
+
marketPhase: zod_1.z.enum(client_1.MarketStatus), // assuming these are the MarketStatus values
|
|
21
21
|
});
|
|
22
22
|
//# sourceMappingURL=zod.game.types.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"zod.game.types.js","sourceRoot":"","sources":["../../../../../src/core/types/oracle/game/zod.game.types.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"zod.game.types.js","sourceRoot":"","sources":["../../../../../src/core/types/oracle/game/zod.game.types.ts"],"names":[],"mappings":";;;AAAA,2CAAoE;AACpE,6BAAuB;AAEV,QAAA,UAAU,GAAG,OAAC,CAAC,MAAM,CAAC;IAC/B,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE;IACd,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE;IACpB,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE;IAClB,IAAI,EAAE,OAAC,CAAC,GAAG,EAAE,EAAE,YAAY;IAC3B,MAAM,EAAE,OAAC,CAAC,GAAG,EAAE,EAAE,YAAY;IAC7B,SAAS,EAAE,OAAC,CAAC,IAAI,EAAE;IACnB,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE;IACtB,UAAU,EAAE,OAAC,CAAC,IAAI,CAAC,mBAAU,CAAC,EAAE,mCAAmC;IACnE,OAAO,EAAE,OAAC,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,EAAE,qBAAqB;IAClD,SAAS,EAAE,OAAC,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC;IAC7C,SAAS,EAAE,OAAC,CAAC,IAAI,CAAC,kBAAS,CAAC,EAAE,0CAA0C;IACxE,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE;IACtB,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE;IACrB,WAAW,EAAE,OAAC,CAAC,IAAI,CAAC,qBAAY,CAAC,EAAE,6CAA6C;CACnF,CAAC,CAAA"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { GamePhase, MarketStatus, MarketType, Prisma } from "
|
|
1
|
+
import { GamePhase, MarketStatus, MarketType, Prisma } from "@prisma/client";
|
|
2
2
|
import { Bytes10, Bytes32 } from "../../../validators";
|
|
3
3
|
import { LevrChain } from "../../blockchain";
|
|
4
4
|
import { type OddsData, type PriceData } from "./odds.types";
|
|
@@ -10,6 +10,8 @@ export interface MarketPosition {
|
|
|
10
10
|
pnl: number;
|
|
11
11
|
pnlPercentage: number;
|
|
12
12
|
entryPrice: string;
|
|
13
|
+
entryOddsAmerican: number;
|
|
14
|
+
entryOddsEuropean: number;
|
|
13
15
|
leverage: string;
|
|
14
16
|
marketPrice: number;
|
|
15
17
|
liquidationPrice: number;
|
|
@@ -39,6 +41,8 @@ export interface BetRowData {
|
|
|
39
41
|
selectedSide: "home" | "away";
|
|
40
42
|
league: string;
|
|
41
43
|
odds: number;
|
|
44
|
+
oddsEuropean: number;
|
|
45
|
+
price: number;
|
|
42
46
|
multiplier: string;
|
|
43
47
|
wagerUsd: number;
|
|
44
48
|
paidUsd: number;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.FixtureIdChainIdSchema = exports.GetFixturesQuerySchema = exports.GetActiveGamesQuerySchema = exports.CreateGameRequestSchema = exports.CreateFixtureRequestSchema = exports.TeamSchema = exports.CreateProviderRequestSchema = exports.CreateLeaguesRequestSchema = exports.CreateTournamentsRequestSchema = exports.CreateSportsRequestSchema = void 0;
|
|
4
|
+
const client_1 = require("@prisma/client");
|
|
4
5
|
const zod_1 = require("zod");
|
|
5
6
|
const contracts_1 = require("../../../contracts");
|
|
6
|
-
const prisma_1 = require("../../../prisma");
|
|
7
7
|
const validators_1 = require("../../../validators");
|
|
8
8
|
const blockchain_1 = require("../../blockchain");
|
|
9
9
|
const game_types_1 = require("../game/game.types");
|
|
@@ -12,12 +12,12 @@ exports.CreateSportsRequestSchema = zod_1.z.object({
|
|
|
12
12
|
.array(zod_1.z.object({
|
|
13
13
|
name: zod_1.z.string(),
|
|
14
14
|
periodType: zod_1.z.string(),
|
|
15
|
-
scoringType: zod_1.z.enum(
|
|
15
|
+
scoringType: zod_1.z.enum(client_1.ScoringType),
|
|
16
16
|
standardDurationMs: zod_1.z.number(),
|
|
17
17
|
standardPeriods: zod_1.z.number(),
|
|
18
18
|
periodDuration: zod_1.z.number().optional(),
|
|
19
19
|
hasDrawMarket: zod_1.z.boolean(),
|
|
20
|
-
sportGroup: zod_1.z.enum(
|
|
20
|
+
sportGroup: zod_1.z.enum(client_1.SportGroup),
|
|
21
21
|
}))
|
|
22
22
|
.min(1),
|
|
23
23
|
});
|
|
@@ -74,7 +74,7 @@ exports.CreateFixtureRequestSchema = zod_1.z.object({
|
|
|
74
74
|
lastUpdated: zod_1.z.coerce.date(),
|
|
75
75
|
homeTeam: exports.TeamSchema,
|
|
76
76
|
awayTeam: exports.TeamSchema,
|
|
77
|
-
fixtureStatus: zod_1.z.enum(
|
|
77
|
+
fixtureStatus: zod_1.z.enum(client_1.FixtureStatus),
|
|
78
78
|
});
|
|
79
79
|
exports.CreateGameRequestSchema = zod_1.z.object({
|
|
80
80
|
currentPeriod: zod_1.z.number(),
|
|
@@ -85,7 +85,7 @@ exports.CreateGameRequestSchema = zod_1.z.object({
|
|
|
85
85
|
levrSportId: validators_1.levrSportIdSchema,
|
|
86
86
|
levrLeagueId: validators_1.levrLeagueIdSchema,
|
|
87
87
|
levrTournamentId: validators_1.levrTournamentIdSchema,
|
|
88
|
-
sportGroup: zod_1.z.enum(
|
|
88
|
+
sportGroup: zod_1.z.enum(client_1.SportGroup),
|
|
89
89
|
marketRiskAllocation: zod_1.z.array(zod_1.z.object({
|
|
90
90
|
asset: validators_1.addressSchema,
|
|
91
91
|
boundedLossA: zod_1.z.number(),
|
|
@@ -101,11 +101,11 @@ exports.GetActiveGamesQuerySchema = zod_1.z.object({
|
|
|
101
101
|
page: zod_1.z.coerce.number().min(1).default(1),
|
|
102
102
|
limit: zod_1.z.coerce.number().min(1).max(100).default(25),
|
|
103
103
|
eventName: zod_1.z.string().optional(),
|
|
104
|
-
sportGroup: zod_1.z.enum(
|
|
104
|
+
sportGroup: zod_1.z.enum(client_1.SportGroup).optional(),
|
|
105
105
|
startDate: zod_1.z.iso.datetime({ message: "Invalid ISO datetime for startDate" }).optional(),
|
|
106
106
|
endDate: zod_1.z.iso.datetime({ message: "Invalid ISO datetime for endDate" }).optional(),
|
|
107
107
|
leagueAbbreviation: zod_1.z.string().optional(),
|
|
108
|
-
gamePhase: zod_1.z.enum(
|
|
108
|
+
gamePhase: zod_1.z.enum(client_1.GamePhase).optional(),
|
|
109
109
|
sortBy: zod_1.z.enum(["fixtureDate", "league"]).default("fixtureDate"),
|
|
110
110
|
sortOrder: zod_1.z.enum(["asc", "desc"]).default("asc"),
|
|
111
111
|
});
|
|
@@ -114,7 +114,7 @@ exports.GetFixturesQuerySchema = zod_1.z.object({
|
|
|
114
114
|
limit: zod_1.z.coerce.number().min(1).max(100).default(25),
|
|
115
115
|
eventName: zod_1.z.string().optional(),
|
|
116
116
|
registrationStatus: zod_1.z.enum(game_types_1.RegistrationStatus).optional(),
|
|
117
|
-
sportGroup: zod_1.z.enum(
|
|
117
|
+
sportGroup: zod_1.z.enum(client_1.SportGroup).optional(),
|
|
118
118
|
startDate: zod_1.z.iso.datetime({ message: "Invalid ISO datetime for startDate" }).optional(),
|
|
119
119
|
endDate: zod_1.z.iso.datetime({ message: "Invalid ISO datetime for endDate" }).optional(),
|
|
120
120
|
leagueAbbreviation: zod_1.z.string().optional(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"game.request.types.js","sourceRoot":"","sources":["../../../../../src/core/types/oracle/requests/game.request.types.ts"],"names":[],"mappings":";;;AAAA,6BAAuB;AACvB,kDAAiD;AACjD,
|
|
1
|
+
{"version":3,"file":"game.request.types.js","sourceRoot":"","sources":["../../../../../src/core/types/oracle/requests/game.request.types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ProviderDetailsArraySchema = exports.ProviderDetailsSchema = exports.CreateMarketSchema = exports.MarketRiskAllocationSchema = void 0;
|
|
4
|
+
const client_1 = require("@prisma/client");
|
|
4
5
|
const zod_1 = require("zod");
|
|
5
6
|
const contracts_1 = require("../../../contracts");
|
|
6
|
-
const prisma_1 = require("../../../prisma");
|
|
7
7
|
const validators_1 = require("../../../validators");
|
|
8
8
|
exports.MarketRiskAllocationSchema = zod_1.z.object({
|
|
9
9
|
asset: zod_1.z.string(), // Address is a string alias.
|
|
@@ -26,8 +26,8 @@ exports.CreateMarketSchema = zod_1.z.object({
|
|
|
26
26
|
marketRiskAllocation: exports.MarketRiskAllocationSchema,
|
|
27
27
|
providers: zod_1.z.object({}), // providers as needed
|
|
28
28
|
activeProvider: zod_1.z.object({}), // active provider as needed
|
|
29
|
-
marketType: zod_1.z.enum(
|
|
30
|
-
status: zod_1.z.enum(
|
|
29
|
+
marketType: zod_1.z.enum(client_1.MarketType),
|
|
30
|
+
status: zod_1.z.enum(client_1.MarketStatus),
|
|
31
31
|
levrGameObjectId: validators_1.objectIdSchema,
|
|
32
32
|
marketName: zod_1.z.string(),
|
|
33
33
|
allowSideGroup: zod_1.z.number().optional(), // Optional side group, using Bytes8Schema for validation
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"market.request.types.js","sourceRoot":"","sources":["../../../../../src/core/types/oracle/requests/market.request.types.ts"],"names":[],"mappings":";;;AAAA,6BAAuB;AACvB,kDAAiD;AACjD,
|
|
1
|
+
{"version":3,"file":"market.request.types.js","sourceRoot":"","sources":["../../../../../src/core/types/oracle/requests/market.request.types.ts"],"names":[],"mappings":";;;AAAA,2CAAyD;AACzD,6BAAuB;AACvB,kDAAiD;AACjD,oDAAmE;AAEtD,QAAA,0BAA0B,GAAG,OAAC,CAAC,MAAM,CAAC;IAC/C,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE,EAAE,6BAA6B;IAChD,YAAY,EAAE,OAAC,CAAC,MAAM,EAAE;IACxB,YAAY,EAAE,OAAC,CAAC,MAAM,EAAE;IACxB,YAAY,EAAE,OAAC,CAAC,MAAM,EAAE;IACxB,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE;IACnB,IAAI,EAAE,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,EAAE,4BAA4B;IACvD,WAAW,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,wBAAwB;IAC5D,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,yBAAyB;CAC9D,CAAC,CAAA;AAEW,QAAA,kBAAkB,GAAG,OAAC,CAAC,MAAM,CAAC;IACvC,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE;IACnB,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE;IAClB,YAAY,EAAE,OAAC,CAAC,IAAI,CAAC,wBAAY,CAAC;IAClC,kBAAkB,EAAE,0BAAa;IACjC,SAAS,EAAE,OAAC,CAAC,OAAO,EAAE;IACtB,mBAAmB,EAAE,OAAC,CAAC,MAAM,EAAE;IAC/B,aAAa,EAAE,OAAC,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,oBAAoB;IACjD,oBAAoB,EAAE,kCAA0B;IAChD,SAAS,EAAE,OAAC,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,sBAAsB;IAC/C,cAAc,EAAE,OAAC,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,4BAA4B;IAC1D,UAAU,EAAE,OAAC,CAAC,IAAI,CAAC,mBAAU,CAAC;IAC9B,MAAM,EAAE,OAAC,CAAC,IAAI,CAAC,qBAAY,CAAC;IAC5B,gBAAgB,EAAE,2BAAc;IAChC,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE;IACtB,cAAc,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,yDAAyD;CACnG,CAAC,CAAA;AAIW,QAAA,qBAAqB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC1C,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE;IACrB,UAAU,EAAE,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC;IAC/B,YAAY,EAAE,OAAC,CAAC,MAAM,EAAE;CAC3B,CAAC,CAAA;AAEW,QAAA,0BAA0B,GAAG,OAAC,CAAC,KAAK,CAAC,6BAAqB,CAAC,CAAA"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { MarketType, Odds } from "
|
|
1
|
+
import { MarketType, Odds } from "@prisma/client";
|
|
2
2
|
export type OddsByMarketTypeResponse = Record<MarketType, Odds[]>;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { SportGroup } from "
|
|
1
|
+
import { SportGroup } from "@prisma/client";
|
|
2
2
|
export declare const calculatePrice: (americanOdds: number, normalizationFactor: number) => number;
|
|
3
3
|
export declare const calculateAmericanOdds: (price: number, normalizationFactor?: number) => string;
|
|
4
4
|
export declare const getGameProgressBPS: (gameClock: string, totalPeriodDurationInSeconds: number, period: number, totalPeriods: number, sportGroup: SportGroup) => number | null;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.getGameProgressBPS = exports.calculateAmericanOdds = exports.calculatePrice = void 0;
|
|
4
|
-
const
|
|
4
|
+
const client_1 = require("@prisma/client");
|
|
5
5
|
const calculatePrice = (americanOdds, normalizationFactor) => {
|
|
6
6
|
const decimalOdds = americanOdds > 0 ? americanOdds / 100 + 1 : 100 / Math.abs(americanOdds) + 1;
|
|
7
7
|
return Number((normalizationFactor / decimalOdds).toFixed(4));
|
|
@@ -63,13 +63,13 @@ const calculateGameProgressBPSWithGameClockCountDown = (gameClock, totalPeriodDu
|
|
|
63
63
|
};
|
|
64
64
|
const getGameProgressBPS = (gameClock, totalPeriodDurationInSeconds, period, totalPeriods, sportGroup) => {
|
|
65
65
|
switch (sportGroup) {
|
|
66
|
-
case
|
|
66
|
+
case client_1.SportGroup.Football:
|
|
67
67
|
return calculateGameProgressBPSWithGameClockCountUp(gameClock, totalPeriodDurationInSeconds, totalPeriods, period);
|
|
68
|
-
case
|
|
68
|
+
case client_1.SportGroup.Basketball:
|
|
69
69
|
return calculateGameProgressBPSWithGameClockCountDown(gameClock, totalPeriodDurationInSeconds, totalPeriods, period);
|
|
70
|
-
case
|
|
70
|
+
case client_1.SportGroup.AmericanFootball:
|
|
71
71
|
return calculateGameProgressBPSWithGameClockCountDown(gameClock, totalPeriodDurationInSeconds, totalPeriods, period);
|
|
72
|
-
case
|
|
72
|
+
case client_1.SportGroup.Baseball:
|
|
73
73
|
return calculateGameProgressBPSWithPeriodsOnly(period, totalPeriods);
|
|
74
74
|
default:
|
|
75
75
|
return null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"game.utils.js","sourceRoot":"","sources":["../../../src/core/utils/game.utils.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"game.utils.js","sourceRoot":"","sources":["../../../src/core/utils/game.utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.prismaClientManager = void 0;
|
|
7
|
-
const
|
|
7
|
+
const client_1 = require("@prisma/client");
|
|
8
8
|
const winston_1 = __importDefault(require("./winston"));
|
|
9
9
|
class PrismaClientManager {
|
|
10
10
|
constructor() {
|
|
@@ -28,7 +28,7 @@ class PrismaClientManager {
|
|
|
28
28
|
return;
|
|
29
29
|
}
|
|
30
30
|
this.initialized = true;
|
|
31
|
-
this.prisma = new
|
|
31
|
+
this.prisma = new client_1.PrismaClient();
|
|
32
32
|
}
|
|
33
33
|
get client() {
|
|
34
34
|
if (!this.prisma)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prisma.js","sourceRoot":"","sources":["../../../src/server/config/prisma.ts"],"names":[],"mappings":";;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"prisma.js","sourceRoot":"","sources":["../../../src/server/config/prisma.ts"],"names":[],"mappings":";;;;;;AAAA,2CAA6C;AAC7C,wDAA8B;AAE9B,MAAM,mBAAmB;IAAzB;QACY,WAAM,GAAwB,IAAI,CAAA;QAClC,gBAAW,GAAG,KAAK,CAAA;IA4B/B,CAAC;IA1BG;;;;;;;;;;OAUG;IACH,IAAI;QACA,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACnB,iBAAM,CAAC,IAAI,CAAC,sDAAsD,CAAC,CAAA;YACnE,OAAM;QACV,CAAC;QAED,IAAI,CAAC,WAAW,GAAG,IAAI,CAAA;QAEvB,IAAI,CAAC,MAAM,GAAG,IAAI,qBAAY,EAAE,CAAA;IACpC,CAAC;IAED,IAAI,MAAM;QACN,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAA;QAC/F,OAAO,IAAI,CAAC,MAAM,CAAA;IACtB,CAAC;CACJ;AAEY,QAAA,mBAAmB,GAAG,IAAI,mBAAmB,EAAE,CAAA"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
import { Odds } from "@prisma/client";
|
|
1
2
|
import { Redis } from "ioredis";
|
|
2
|
-
import { type Bytes32
|
|
3
|
+
import { type Bytes32 } from "../../../core";
|
|
3
4
|
import { type SnapShotReadState } from "../types";
|
|
4
5
|
/**
|
|
5
6
|
* Updates the round-robin assignment of a market's price stream to a Redis set.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prices.set.manager.js","sourceRoot":"","sources":["../../../../src/server/liquidation-engine/redis.cache.manager/prices.set.manager.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"prices.set.manager.js","sourceRoot":"","sources":["../../../../src/server/liquidation-engine/redis.cache.manager/prices.set.manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.handleHmacAuth = handleHmacAuth;
|
|
7
7
|
exports.handleServiceHmacAuth = handleServiceHmacAuth;
|
|
8
|
+
const client_1 = require("@prisma/client");
|
|
8
9
|
const crypto_1 = __importDefault(require("crypto"));
|
|
9
10
|
const ms_1 = __importDefault(require("ms"));
|
|
10
11
|
const core_1 = require("../../../core");
|
|
@@ -26,8 +27,8 @@ function getRequiredScopes(method, options) {
|
|
|
26
27
|
const scopes = options.requiredScopes || [];
|
|
27
28
|
const autoEnforce = options.autoEnforceWriteScope !== false; // default true
|
|
28
29
|
if (autoEnforce && ["POST", "PUT", "PATCH", "DELETE"].includes(method.toUpperCase())) {
|
|
29
|
-
if (!scopes.includes(
|
|
30
|
-
return [...scopes,
|
|
30
|
+
if (!scopes.includes(client_1.ApiKeyScope.Write)) {
|
|
31
|
+
return [...scopes, client_1.ApiKeyScope.Write];
|
|
31
32
|
}
|
|
32
33
|
}
|
|
33
34
|
return scopes;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hmac.handler.js","sourceRoot":"","sources":["../../../../src/server/middleware/auth/hmac.handler.ts"],"names":[],"mappings":";;;;;AAiKA,wCAEC;AAKD,sDAEC;AA1KD,oDAA2B;AAE3B,4CAAmB;AAEnB,
|
|
1
|
+
{"version":3,"file":"hmac.handler.js","sourceRoot":"","sources":["../../../../src/server/middleware/auth/hmac.handler.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,10 +9,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
9
9
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
const client_1 = require("@prisma/client");
|
|
12
13
|
const express_1 = require("express");
|
|
13
14
|
const core_1 = require("../../core");
|
|
14
|
-
const multiAuth_middleware_1 = require("./multiAuth.middleware");
|
|
15
15
|
const winston_1 = __importDefault(require("../config/winston"));
|
|
16
|
+
const multiAuth_middleware_1 = require("./multiAuth.middleware");
|
|
16
17
|
const router = (0, express_1.Router)();
|
|
17
18
|
// Example 1: Simple route supporting both Privy user auth and HMAC API keys
|
|
18
19
|
// Auto-enforces Write scope for POST requests
|
|
@@ -42,7 +43,7 @@ router.delete("/admin/users/:id", (0, multiAuth_middleware_1.multiAuth)({
|
|
|
42
43
|
// Disable auto-enforcement of Write scope for POST
|
|
43
44
|
router.post("/search", (0, multiAuth_middleware_1.multiAuth)({
|
|
44
45
|
methods: [core_1.LevrAuth.PRIVY_USER, core_1.LevrAuth.HMAC],
|
|
45
|
-
requiredScopes: [
|
|
46
|
+
requiredScopes: [client_1.ApiKeyScope.Read],
|
|
46
47
|
autoEnforceWriteScope: false, // POST doesn't require Write scope
|
|
47
48
|
}), (_req, res) => {
|
|
48
49
|
// This POST route only needs Read scope
|
|
@@ -52,7 +53,7 @@ router.post("/search", (0, multiAuth_middleware_1.multiAuth)({
|
|
|
52
53
|
// Only Orderbook and OracleCore services can access
|
|
53
54
|
router.post("/internal/sync-markets", (0, multiAuth_middleware_1.multiAuth)({
|
|
54
55
|
methods: [core_1.LevrAuth.SERVICE_HMAC],
|
|
55
|
-
allowedServices: [
|
|
56
|
+
allowedServices: [client_1.LevrService.Orderbook, client_1.LevrService.OracleCore],
|
|
56
57
|
}), (req, res) => {
|
|
57
58
|
// Only specific services can access
|
|
58
59
|
winston_1.default.info("Service:", req.apiUser?.service);
|
|
@@ -61,8 +62,8 @@ router.post("/internal/sync-markets", (0, multiAuth_middleware_1.multiAuth)({
|
|
|
61
62
|
// Example 5: Mixed service and user auth with explicit scopes
|
|
62
63
|
router.put("/markets/:id", (0, multiAuth_middleware_1.multiAuth)({
|
|
63
64
|
methods: [core_1.LevrAuth.PRIVY_ADMIN, core_1.LevrAuth.SERVICE_HMAC],
|
|
64
|
-
requiredScopes: [
|
|
65
|
-
allowedServices: [
|
|
65
|
+
requiredScopes: [client_1.ApiKeyScope.Write], // Explicitly require Write
|
|
66
|
+
allowedServices: [client_1.LevrService.Orderbook, client_1.LevrService.Lab],
|
|
66
67
|
}), (req, res) => {
|
|
67
68
|
// Either admin users or specific services can update
|
|
68
69
|
if (req.privyUser) {
|
|
@@ -77,7 +78,7 @@ router.put("/markets/:id", (0, multiAuth_middleware_1.multiAuth)({
|
|
|
77
78
|
// Even GET requests can require specific scopes if needed
|
|
78
79
|
router.get("/private-data", (0, multiAuth_middleware_1.multiAuth)({
|
|
79
80
|
methods: [core_1.LevrAuth.PRIVY_USER, core_1.LevrAuth.HMAC],
|
|
80
|
-
requiredScopes: [
|
|
81
|
+
requiredScopes: [client_1.ApiKeyScope.Read],
|
|
81
82
|
}), (_req, res) => {
|
|
82
83
|
res.json({ data: "sensitive information" });
|
|
83
84
|
});
|