@fplpool/fpl-models 3.4.2 → 3.5.1
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/config/index.d.ts +3 -0
- package/dist/config/index.d.ts.map +1 -1
- package/dist/config/index.js +3 -0
- package/dist/config/index.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -3
- package/dist/index.js.map +1 -1
- package/dist/models/pool-gameweek.model.d.ts +1 -1
- package/dist/models/pool-gameweek.model.d.ts.map +1 -1
- package/dist/models/pool-gameweek.model.js +2 -30
- package/dist/models/pool-gameweek.model.js.map +1 -1
- package/dist/models/pool-wallet.model.d.ts +8 -2
- package/dist/models/pool-wallet.model.d.ts.map +1 -1
- package/dist/models/pool-wallet.model.js +94 -59
- package/dist/models/pool-wallet.model.js.map +1 -1
- package/dist/models/wallet.model.d.ts +5 -2
- package/dist/models/wallet.model.d.ts.map +1 -1
- package/dist/models/wallet.model.js +52 -61
- package/dist/models/wallet.model.js.map +1 -1
- package/dist/types/job.d.ts.map +1 -1
- package/dist/types/job.js.map +1 -1
- package/dist/types/notification.d.ts.map +1 -1
- package/dist/types/notification.js.map +1 -1
- package/dist/types/pool.d.ts +5 -0
- package/dist/types/pool.d.ts.map +1 -1
- package/dist/types/pool.js.map +1 -1
- package/dist/utils/num.util.d.ts +3 -0
- package/dist/utils/num.util.d.ts.map +1 -0
- package/dist/utils/num.util.js +18 -0
- package/dist/utils/num.util.js.map +1 -0
- package/package.json +1 -1
package/dist/config/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,wBAoCC"}
|
package/dist/config/index.js
CHANGED
package/dist/config/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":";;AAAA,mCAA8B;AAG9B,IAAA,eAAM,GAAE,CAAC;AAGT,kBAAe;IACX,EAAE,EAAE;QACA,KAAK,EAAE;YACH,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,EAAE;YAChC,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,WAAW;YAC3C,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,KAAK;YACrC,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,KAAK;SAChD;KACJ;IACD,MAAM,EAAE;QACJ,IAAI,EAAE,MAAM;QACZ,YAAY,EAAE,cAAc;QAC5B,OAAO,EAAE,SAAS;QAClB,MAAM,EAAE,QAAQ;QAChB,IAAI,EAAE,MAAM;QACZ,WAAW,EAAE,aAAa;QAC1B,YAAY,EAAE,cAAc;QAC5B,OAAO,EAAE,SAAS;QAClB,IAAI,EAAE,MAAM;QACZ,YAAY,EAAE,cAAc;QAC5B,oBAAoB,EAAE,sBAAsB;QAC5C,UAAU,EAAE,YAAY;QACxB,UAAU,EAAE,YAAY;QACxB,YAAY,EAAE,cAAc;QAC5B,kBAAkB,EAAE,oBAAoB;QACxC,UAAU,EAAE,YAAY;QACxB,eAAe,EAAE,iBAAiB;QAClC,WAAW,EAAE,aAAa;QAC1B,GAAG,EAAE,KAAK;QACV,OAAO,EAAE,SAAS;QAClB,MAAM,EAAE,QAAQ;QAChB,WAAW,EAAE,aAAa;KAC7B;CACJ,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":";;AAAA,mCAA8B;AAG9B,IAAA,eAAM,GAAE,CAAC;AAGT,kBAAe;IACX,GAAG,EAAE;QACD,KAAK,EAAE,KAAM;KAChB;IACD,EAAE,EAAE;QACA,KAAK,EAAE;YACH,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,EAAE;YAChC,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,WAAW;YAC3C,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,KAAK;YACrC,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,KAAK;SAChD;KACJ;IACD,MAAM,EAAE;QACJ,IAAI,EAAE,MAAM;QACZ,YAAY,EAAE,cAAc;QAC5B,OAAO,EAAE,SAAS;QAClB,MAAM,EAAE,QAAQ;QAChB,IAAI,EAAE,MAAM;QACZ,WAAW,EAAE,aAAa;QAC1B,YAAY,EAAE,cAAc;QAC5B,OAAO,EAAE,SAAS;QAClB,IAAI,EAAE,MAAM;QACZ,YAAY,EAAE,cAAc;QAC5B,oBAAoB,EAAE,sBAAsB;QAC5C,UAAU,EAAE,YAAY;QACxB,UAAU,EAAE,YAAY;QACxB,YAAY,EAAE,cAAc;QAC5B,kBAAkB,EAAE,oBAAoB;QACxC,UAAU,EAAE,YAAY;QACxB,eAAe,EAAE,iBAAiB;QAClC,WAAW,EAAE,aAAa;QAC1B,GAAG,EAAE,KAAK;QACV,OAAO,EAAE,SAAS;QAClB,MAAM,EAAE,QAAQ;QAChB,WAAW,EAAE,aAAa;KAC7B;CACJ,CAAA"}
|
package/dist/index.d.ts
CHANGED
|
@@ -38,13 +38,14 @@ export * from "./models/notification.model";
|
|
|
38
38
|
export { default as Notification } from "./models/notification.model";
|
|
39
39
|
export * from "./models/device-token.model";
|
|
40
40
|
export { default as DeviceToken } from "./models/device-token.model";
|
|
41
|
-
export { default as GenericRepository } from "./repositories/generic.repository";
|
|
42
41
|
export * from "./types/wallet";
|
|
43
42
|
export * from "./types/pool";
|
|
44
43
|
export * from "./types/notification";
|
|
45
44
|
export * from "./types/fpl";
|
|
46
45
|
export * from "./types/job";
|
|
46
|
+
export * from "./utils/num.util";
|
|
47
47
|
export { default as StatusCode } from "./enums/status-code.enum";
|
|
48
48
|
export { default as Status } from "./enums/status.enum";
|
|
49
49
|
export { default as AdvancedError } from "./errors/advanced.error";
|
|
50
|
+
export { default as GenericRepository } from "./repositories/generic.repository";
|
|
50
51
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAEtD,cAAc,8BAA8B,CAAC;AAC7C,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAEvE,cAAc,wBAAwB,CAAC;AACvC,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAE5D,cAAc,uBAAuB,CAAC;AACtC,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAE1D,cAAc,qBAAqB,CAAC;AACpC,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAEtD,cAAc,4BAA4B,CAAC;AAC3C,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAEpE,cAAc,qBAAqB,CAAC;AACpC,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAEtD,cAAc,uCAAuC,CAAC;AACtD,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAExF,cAAc,4BAA4B,CAAC;AAC3C,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAEnE,cAAc,4BAA4B,CAAC;AAC3C,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAEnE,cAAc,8BAA8B,CAAC;AAC7C,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAEvE,cAAc,qCAAqC,CAAC;AACpD,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AAEpF,cAAc,4BAA4B,CAAC;AAC3C,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAEnE,cAAc,iCAAiC,CAAC;AAChD,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAE7E,cAAc,oBAAoB,CAAC;AACnC,OAAO,EAAE,OAAO,IAAI,GAAG,EAAE,MAAM,oBAAoB,CAAC;AAEpD,cAAc,wBAAwB,CAAC;AACvC,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAE5D,cAAc,uBAAuB,CAAC;AACtC,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAE1D,cAAc,8BAA8B,CAAC;AAC7C,OAAO,EAAC,OAAO,IAAI,YAAY,EAAC,MAAM,8BAA8B,CAAC;AAErE,cAAc,6BAA6B,CAAC;AAC5C,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAEtE,cAAc,6BAA6B,CAAC;AAC5C,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAErE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAEtD,cAAc,8BAA8B,CAAC;AAC7C,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAEvE,cAAc,wBAAwB,CAAC;AACvC,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAE5D,cAAc,uBAAuB,CAAC;AACtC,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAE1D,cAAc,qBAAqB,CAAC;AACpC,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAEtD,cAAc,4BAA4B,CAAC;AAC3C,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAEpE,cAAc,qBAAqB,CAAC;AACpC,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAEtD,cAAc,uCAAuC,CAAC;AACtD,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAExF,cAAc,4BAA4B,CAAC;AAC3C,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAEnE,cAAc,4BAA4B,CAAC;AAC3C,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAEnE,cAAc,8BAA8B,CAAC;AAC7C,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAEvE,cAAc,qCAAqC,CAAC;AACpD,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AAEpF,cAAc,4BAA4B,CAAC;AAC3C,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAEnE,cAAc,iCAAiC,CAAC;AAChD,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAE7E,cAAc,oBAAoB,CAAC;AACnC,OAAO,EAAE,OAAO,IAAI,GAAG,EAAE,MAAM,oBAAoB,CAAC;AAEpD,cAAc,wBAAwB,CAAC;AACvC,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAE5D,cAAc,uBAAuB,CAAC;AACtC,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAE1D,cAAc,8BAA8B,CAAC;AAC7C,OAAO,EAAC,OAAO,IAAI,YAAY,EAAC,MAAM,8BAA8B,CAAC;AAErE,cAAc,6BAA6B,CAAC;AAC5C,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAEtE,cAAc,6BAA6B,CAAC;AAC5C,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAErE,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,sBAAsB,CAAC;AACrC,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AAEjC,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,mCAAmC,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -17,7 +17,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
17
17
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
18
18
|
};
|
|
19
19
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20
|
-
exports.
|
|
20
|
+
exports.GenericRepository = exports.AdvancedError = exports.Status = exports.StatusCode = exports.DeviceToken = exports.Notification = exports.PoolSettings = exports.Config = exports.Invoice = exports.Job = exports.PoolTransaction = exports.PoolInvite = exports.PoolGameweekWinner = exports.PoolGameweek = exports.PoolWallet = exports.PoolMember = exports.PoolGameweekDeadline = exports.Pool = exports.Transaction = exports.Card = exports.Wallet = exports.Session = exports.UserSettings = exports.User = void 0;
|
|
21
21
|
__exportStar(require("./models/user.model"), exports);
|
|
22
22
|
var user_model_1 = require("./models/user.model");
|
|
23
23
|
Object.defineProperty(exports, "User", { enumerable: true, get: function () { return __importDefault(user_model_1).default; } });
|
|
@@ -78,17 +78,18 @@ Object.defineProperty(exports, "Notification", { enumerable: true, get: function
|
|
|
78
78
|
__exportStar(require("./models/device-token.model"), exports);
|
|
79
79
|
var device_token_model_1 = require("./models/device-token.model");
|
|
80
80
|
Object.defineProperty(exports, "DeviceToken", { enumerable: true, get: function () { return __importDefault(device_token_model_1).default; } });
|
|
81
|
-
var generic_repository_1 = require("./repositories/generic.repository");
|
|
82
|
-
Object.defineProperty(exports, "GenericRepository", { enumerable: true, get: function () { return __importDefault(generic_repository_1).default; } });
|
|
83
81
|
__exportStar(require("./types/wallet"), exports);
|
|
84
82
|
__exportStar(require("./types/pool"), exports);
|
|
85
83
|
__exportStar(require("./types/notification"), exports);
|
|
86
84
|
__exportStar(require("./types/fpl"), exports);
|
|
87
85
|
__exportStar(require("./types/job"), exports);
|
|
86
|
+
__exportStar(require("./utils/num.util"), exports);
|
|
88
87
|
var status_code_enum_1 = require("./enums/status-code.enum");
|
|
89
88
|
Object.defineProperty(exports, "StatusCode", { enumerable: true, get: function () { return __importDefault(status_code_enum_1).default; } });
|
|
90
89
|
var status_enum_1 = require("./enums/status.enum");
|
|
91
90
|
Object.defineProperty(exports, "Status", { enumerable: true, get: function () { return __importDefault(status_enum_1).default; } });
|
|
92
91
|
var advanced_error_1 = require("./errors/advanced.error");
|
|
93
92
|
Object.defineProperty(exports, "AdvancedError", { enumerable: true, get: function () { return __importDefault(advanced_error_1).default; } });
|
|
93
|
+
var generic_repository_1 = require("./repositories/generic.repository");
|
|
94
|
+
Object.defineProperty(exports, "GenericRepository", { enumerable: true, get: function () { return __importDefault(generic_repository_1).default; } });
|
|
94
95
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,sDAAoC;AACpC,kDAAsD;AAA7C,mHAAA,OAAO,OAAQ;AAExB,+DAA6C;AAC7C,oEAAuE;AAA9D,oIAAA,OAAO,OAAgB;AAEhC,yDAAuC;AACvC,wDAA4D;AAAnD,yHAAA,OAAO,OAAW;AAE3B,wDAAsC;AACtC,sDAA0D;AAAjD,uHAAA,OAAO,OAAU;AAE1B,sDAAoC;AACpC,kDAAsD;AAA7C,mHAAA,OAAO,OAAQ;AAExB,6DAA2C;AAC3C,gEAAoE;AAA3D,iIAAA,OAAO,OAAe;AAE/B,sDAAoC;AACpC,kDAAsD;AAA7C,mHAAA,OAAO,OAAQ;AAExB,wEAAsD;AACtD,sFAAwF;AAA/E,qJAAA,OAAO,OAAwB;AAExC,6DAA2C;AAC3C,gEAAmE;AAA1D,gIAAA,OAAO,OAAc;AAE9B,6DAA2C;AAC3C,gEAAmE;AAA1D,gIAAA,OAAO,OAAc;AAE9B,+DAA6C;AAC7C,oEAAuE;AAA9D,oIAAA,OAAO,OAAgB;AAEhC,sEAAoD;AACpD,kFAAoF;AAA3E,iJAAA,OAAO,OAAsB;AAEtC,6DAA2C;AAC3C,gEAAmE;AAA1D,gIAAA,OAAO,OAAc;AAE9B,kEAAgD;AAChD,0EAA6E;AAApE,0IAAA,OAAO,OAAmB;AAEnC,qDAAmC;AACnC,gDAAoD;AAA3C,iHAAA,OAAO,OAAO;AAEvB,yDAAuC;AACvC,wDAA4D;AAAnD,yHAAA,OAAO,OAAW;AAE3B,wDAAsC;AACtC,sDAA0D;AAAjD,uHAAA,OAAO,OAAU;AAE1B,+DAA6C;AAC7C,oEAAqE;AAA7D,oIAAA,OAAO,OAAgB;AAE/B,8DAA4C;AAC5C,kEAAsE;AAA7D,mIAAA,OAAO,OAAgB;AAEhC,8DAA4C;AAC5C,kEAAqE;AAA5D,kIAAA,OAAO,OAAe;AAE/B,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,sDAAoC;AACpC,kDAAsD;AAA7C,mHAAA,OAAO,OAAQ;AAExB,+DAA6C;AAC7C,oEAAuE;AAA9D,oIAAA,OAAO,OAAgB;AAEhC,yDAAuC;AACvC,wDAA4D;AAAnD,yHAAA,OAAO,OAAW;AAE3B,wDAAsC;AACtC,sDAA0D;AAAjD,uHAAA,OAAO,OAAU;AAE1B,sDAAoC;AACpC,kDAAsD;AAA7C,mHAAA,OAAO,OAAQ;AAExB,6DAA2C;AAC3C,gEAAoE;AAA3D,iIAAA,OAAO,OAAe;AAE/B,sDAAoC;AACpC,kDAAsD;AAA7C,mHAAA,OAAO,OAAQ;AAExB,wEAAsD;AACtD,sFAAwF;AAA/E,qJAAA,OAAO,OAAwB;AAExC,6DAA2C;AAC3C,gEAAmE;AAA1D,gIAAA,OAAO,OAAc;AAE9B,6DAA2C;AAC3C,gEAAmE;AAA1D,gIAAA,OAAO,OAAc;AAE9B,+DAA6C;AAC7C,oEAAuE;AAA9D,oIAAA,OAAO,OAAgB;AAEhC,sEAAoD;AACpD,kFAAoF;AAA3E,iJAAA,OAAO,OAAsB;AAEtC,6DAA2C;AAC3C,gEAAmE;AAA1D,gIAAA,OAAO,OAAc;AAE9B,kEAAgD;AAChD,0EAA6E;AAApE,0IAAA,OAAO,OAAmB;AAEnC,qDAAmC;AACnC,gDAAoD;AAA3C,iHAAA,OAAO,OAAO;AAEvB,yDAAuC;AACvC,wDAA4D;AAAnD,yHAAA,OAAO,OAAW;AAE3B,wDAAsC;AACtC,sDAA0D;AAAjD,uHAAA,OAAO,OAAU;AAE1B,+DAA6C;AAC7C,oEAAqE;AAA7D,oIAAA,OAAO,OAAgB;AAE/B,8DAA4C;AAC5C,kEAAsE;AAA7D,mIAAA,OAAO,OAAgB;AAEhC,8DAA4C;AAC5C,kEAAqE;AAA5D,kIAAA,OAAO,OAAe;AAE/B,iDAA+B;AAC/B,+CAA6B;AAC7B,uDAAqC;AACrC,8CAA4B;AAC5B,8CAA4B;AAC5B,mDAAiC;AAEjC,6DAAiE;AAAxD,+HAAA,OAAO,OAAc;AAC9B,mDAAwD;AAA/C,sHAAA,OAAO,OAAU;AAC1B,0DAAmE;AAA1D,gIAAA,OAAO,OAAiB;AACjC,wEAAiF;AAAxE,wIAAA,OAAO,OAAqB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pool-gameweek.model.d.ts","sourceRoot":"","sources":["../../src/models/pool-gameweek.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAS1D,MAAM,WAAW,aAAc,SAAQ,QAAQ;IAC3C,GAAG,EAAE,KAAK,CAAC,QAAQ,CAAC;IACpB,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;IAChB,aAAa,EAAE;QAAC,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAC,EAAE,CAAC;IACzD,MAAM,EAAE,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,IAAI,GAAG,IAAI,CAAC;IACvB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC;IAChB,OAAO,EAAE,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CAC3D;
|
|
1
|
+
{"version":3,"file":"pool-gameweek.model.d.ts","sourceRoot":"","sources":["../../src/models/pool-gameweek.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAS1D,MAAM,WAAW,aAAc,SAAQ,QAAQ;IAC3C,GAAG,EAAE,KAAK,CAAC,QAAQ,CAAC;IACpB,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;IAChB,aAAa,EAAE;QAAC,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAC,EAAE,CAAC;IACzD,MAAM,EAAE,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,IAAI,GAAG,IAAI,CAAC;IACvB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC;IAChB,OAAO,EAAE,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CAC3D;AAkED,QAAA,MAAM,YAAY;;;;;;sBAAuE,CAAC;AAE1F,eAAe,YAAY,CAAC"}
|
|
@@ -5,7 +5,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const mongoose_1 = require("mongoose");
|
|
7
7
|
const config_1 = __importDefault(require("../config"));
|
|
8
|
-
const pool_transaction_model_1 = require("./pool-transaction.model");
|
|
9
8
|
const advanced_error_1 = __importDefault(require("../errors/advanced.error"));
|
|
10
9
|
const status_code_enum_1 = __importDefault(require("../enums/status-code.enum"));
|
|
11
10
|
const poolGameweekSchema = new mongoose_1.Schema({
|
|
@@ -44,36 +43,9 @@ const poolGameweekSchema = new mongoose_1.Schema({
|
|
|
44
43
|
default: 0
|
|
45
44
|
},
|
|
46
45
|
balance: {
|
|
47
|
-
type:
|
|
46
|
+
type: Number,
|
|
48
47
|
required: false,
|
|
49
|
-
default:
|
|
50
|
-
match: pool_transaction_model_1.poolAmountPattern,
|
|
51
|
-
set: function (value) {
|
|
52
|
-
// If value already looks like a float (has a .), ensure two decimals
|
|
53
|
-
if (typeof value === "string") {
|
|
54
|
-
if (pool_transaction_model_1.poolAmountPattern.test(value)) {
|
|
55
|
-
// If it has a dot but is not two decimals, pad right
|
|
56
|
-
if (value.indexOf('.') !== -1) {
|
|
57
|
-
let [whole, decimals] = value.split('.');
|
|
58
|
-
if (decimals === undefined)
|
|
59
|
-
return whole + ".00";
|
|
60
|
-
if (decimals.length === 1)
|
|
61
|
-
return whole + "." + decimals + "0";
|
|
62
|
-
if (decimals.length === 2)
|
|
63
|
-
return value;
|
|
64
|
-
if (decimals.length > 2)
|
|
65
|
-
return whole + "." + decimals.slice(0, 2);
|
|
66
|
-
}
|
|
67
|
-
// No decimal: add .00
|
|
68
|
-
return value + ".00";
|
|
69
|
-
}
|
|
70
|
-
// If it's an integer, add .00
|
|
71
|
-
if (/^\d+$/.test(value)) {
|
|
72
|
-
return value + ".00";
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
return value;
|
|
76
|
-
}
|
|
48
|
+
default: 0,
|
|
77
49
|
},
|
|
78
50
|
winner: {
|
|
79
51
|
type: mongoose_1.Schema.Types.ObjectId,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pool-gameweek.model.js","sourceRoot":"","sources":["../../src/models/pool-gameweek.model.ts"],"names":[],"mappings":";;;;;AAAA,uCAA0D;AAC1D,uDAA+B;
|
|
1
|
+
{"version":3,"file":"pool-gameweek.model.js","sourceRoot":"","sources":["../../src/models/pool-gameweek.model.ts"],"names":[],"mappings":";;;;;AAAA,uCAA0D;AAC1D,uDAA+B;AAE/B,8EAAqD;AACrD,iFAAmD;AAqBnD,MAAM,kBAAkB,GAAG,IAAI,iBAAM,CAAgB;IACjD,IAAI,EAAE;QACF,IAAI,EAAE,iBAAM,CAAC,KAAK,CAAC,QAAQ;QAC3B,GAAG,EAAE,gBAAM,CAAC,MAAM,CAAC,IAAI;QACvB,QAAQ,EAAE,IAAI;KACjB;IACD,QAAQ,EAAE;QACN,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,IAAI;KACjB;IACD,aAAa,EAAE,CAAC;YACZ,MAAM,EAAE;gBACJ,IAAI,EAAE,iBAAM,CAAC,KAAK,CAAC,QAAQ;gBAC3B,GAAG,EAAE,gBAAM,CAAC,MAAM,CAAC,UAAU;aAChC;YACD,KAAK,EAAE;gBACH,IAAI,EAAE,MAAM;gBACZ,QAAQ,EAAE,IAAI;gBACd,OAAO,EAAE,CAAC;aACb;SACJ,CAAC;IACF,MAAM,EAAE;QACJ,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,KAAK;KACjB;IACD,SAAS,EAAE;QACP,IAAI,EAAE,IAAI;QACV,QAAQ,EAAE,KAAK;QACf,OAAO,EAAE,IAAI;KAChB;IACD,oBAAoB,EAAE;QAClB,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,KAAK;QACf,OAAO,EAAE,CAAC;KACb;IACD,OAAO,EAAE;QACL,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,KAAK;QACf,OAAO,EAAE,CAAC;KACb;IACD,MAAM,EAAE;QACJ,IAAI,EAAE,iBAAM,CAAC,KAAK,CAAC,QAAQ;QAC3B,GAAG,EAAE,gBAAM,CAAC,MAAM,CAAC,kBAAkB;QACrC,QAAQ,EAAE,KAAK;QACf,OAAO,EAAE,IAAI;KAChB;CACJ,EAAE;IACC,UAAU,EAAE,IAAI;IAChB,MAAM,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC;IACxB,QAAQ,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC;CAC7B,CAAC,CAAA;AAGF,kBAAkB,CAAC,OAAO,CAAC,OAAO,GAAG,KAAK,WAAU,QAAwB;IACxE,IAAG,CAAC;QACA,OAAO,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,EAAC,MAAM,EAA0C,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC3I,CAAC;IAAA,OAAM,CAAM,EAAC,CAAC;QACX,MAAM,IAAI,wBAAa,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,UAAU,IAAI,0BAAU,CAAC,qBAAqB,CAAC,CAAA;IACxF,CAAC;AACL,CAAC,CAAA;AAID,MAAM,YAAY,GAAG,IAAA,gBAAK,EAAgB,gBAAM,CAAC,MAAM,CAAC,YAAY,EAAE,kBAAkB,CAAC,CAAC;AAE1F,kBAAe,YAAY,CAAC"}
|
|
@@ -1,11 +1,17 @@
|
|
|
1
1
|
import { Types, Document } from "mongoose";
|
|
2
|
+
import { IPoolTransaction } from "./pool-transaction.model";
|
|
2
3
|
export interface IPoolWallet extends Document {
|
|
3
4
|
_id: Types.ObjectId;
|
|
4
5
|
pool: Types.ObjectId;
|
|
5
|
-
balance:
|
|
6
|
-
availableBalance:
|
|
6
|
+
balance: number;
|
|
7
|
+
availableBalance: number;
|
|
7
8
|
createdAt: Date;
|
|
8
9
|
updatedAt: Date;
|
|
10
|
+
credit: (transaction: IPoolTransaction) => Promise<void>;
|
|
11
|
+
debit: (transaction: IPoolTransaction) => Promise<void>;
|
|
12
|
+
debitBalance: (amount: number) => Promise<void>;
|
|
13
|
+
debitAvailableBalance: (amount: number) => Promise<void>;
|
|
14
|
+
refund: (transaction: IPoolTransaction) => Promise<void>;
|
|
9
15
|
}
|
|
10
16
|
declare const PoolWallet: import("mongoose").Model<IPoolWallet, {}, {}, {}, Document<unknown, {}, IPoolWallet, {}, import("mongoose").DefaultSchemaOptions> & IPoolWallet & Required<{
|
|
11
17
|
_id: Types.ObjectId;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pool-wallet.model.d.ts","sourceRoot":"","sources":["../../src/models/pool-wallet.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"pool-wallet.model.d.ts","sourceRoot":"","sources":["../../src/models/pool-wallet.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAG1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAQ5D,MAAM,WAAW,WAAY,SAAQ,QAAQ;IACzC,GAAG,EAAE,KAAK,CAAC,QAAQ,CAAC;IACpB,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,gBAAgB,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC;IAChB,MAAM,EAAE,CAAC,WAAW,EAAE,gBAAgB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACzD,KAAK,EAAE,CAAC,WAAW,EAAE,gBAAgB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACxD,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD,qBAAqB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACzD,MAAM,EAAE,CAAC,WAAW,EAAE,gBAAgB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5D;AAuHD,QAAA,MAAM,UAAU;;;;;;oBAAiE,CAAC;AAElF,eAAe,UAAU,CAAC"}
|
|
@@ -5,7 +5,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const mongoose_1 = require("mongoose");
|
|
7
7
|
const config_1 = __importDefault(require("../config"));
|
|
8
|
-
const
|
|
8
|
+
const wallet_1 = require("../types/wallet");
|
|
9
|
+
const advanced_error_1 = __importDefault(require("../errors/advanced.error"));
|
|
10
|
+
const num_util_1 = require("../utils/num.util");
|
|
11
|
+
const status_code_enum_1 = __importDefault(require("../enums/status-code.enum"));
|
|
9
12
|
const poolWalletSchema = new mongoose_1.Schema({
|
|
10
13
|
pool: {
|
|
11
14
|
type: mongoose_1.Schema.Types.ObjectId,
|
|
@@ -13,74 +16,106 @@ const poolWalletSchema = new mongoose_1.Schema({
|
|
|
13
16
|
required: true
|
|
14
17
|
},
|
|
15
18
|
balance: {
|
|
16
|
-
type:
|
|
19
|
+
type: Number,
|
|
17
20
|
required: true,
|
|
18
|
-
|
|
19
|
-
set: function (value) {
|
|
20
|
-
// If value already looks like a float (has a .), ensure two decimals
|
|
21
|
-
if (typeof value === "string") {
|
|
22
|
-
if (pool_transaction_model_1.poolAmountPattern.test(value)) {
|
|
23
|
-
// If it has a dot but is not two decimals, pad right
|
|
24
|
-
if (value.indexOf('.') !== -1) {
|
|
25
|
-
let [whole, decimals] = value.split('.');
|
|
26
|
-
if (decimals === undefined)
|
|
27
|
-
return whole + ".00";
|
|
28
|
-
if (decimals.length === 1)
|
|
29
|
-
return whole + "." + decimals + "0";
|
|
30
|
-
if (decimals.length === 2)
|
|
31
|
-
return value;
|
|
32
|
-
if (decimals.length > 2)
|
|
33
|
-
return whole + "." + decimals.slice(0, 2);
|
|
34
|
-
}
|
|
35
|
-
// No decimal: add .00
|
|
36
|
-
return value + ".00";
|
|
37
|
-
}
|
|
38
|
-
// If it's an integer, add .00
|
|
39
|
-
if (/^\d+$/.test(value)) {
|
|
40
|
-
return value + ".00";
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
return value;
|
|
44
|
-
},
|
|
45
|
-
default: "0.00"
|
|
21
|
+
default: 0
|
|
46
22
|
},
|
|
47
23
|
availableBalance: {
|
|
48
|
-
type:
|
|
24
|
+
type: Number,
|
|
49
25
|
required: false,
|
|
50
|
-
|
|
51
|
-
set: function (value) {
|
|
52
|
-
// If value already looks like a float (has a .), ensure two decimals
|
|
53
|
-
if (typeof value === "string") {
|
|
54
|
-
if (pool_transaction_model_1.poolAmountPattern.test(value)) {
|
|
55
|
-
// If it has a dot but is not two decimals, pad right
|
|
56
|
-
if (value.indexOf('.') !== -1) {
|
|
57
|
-
let [whole, decimals] = value.split('.');
|
|
58
|
-
if (decimals === undefined)
|
|
59
|
-
return whole + ".00";
|
|
60
|
-
if (decimals.length === 1)
|
|
61
|
-
return whole + "." + decimals + "0";
|
|
62
|
-
if (decimals.length === 2)
|
|
63
|
-
return value;
|
|
64
|
-
if (decimals.length > 2)
|
|
65
|
-
return whole + "." + decimals.slice(0, 2);
|
|
66
|
-
}
|
|
67
|
-
// No decimal: add .00
|
|
68
|
-
return value + ".00";
|
|
69
|
-
}
|
|
70
|
-
// If it's an integer, add .00
|
|
71
|
-
if (/^\d+$/.test(value)) {
|
|
72
|
-
return value + ".00";
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
return value;
|
|
76
|
-
},
|
|
77
|
-
default: "0.00"
|
|
26
|
+
default: 0
|
|
78
27
|
}
|
|
79
28
|
}, {
|
|
80
29
|
timestamps: true,
|
|
81
30
|
toJSON: { virtuals: true },
|
|
82
31
|
toObject: { virtuals: true }
|
|
83
32
|
});
|
|
33
|
+
poolWalletSchema.methods.credit = async function (transaction) {
|
|
34
|
+
try {
|
|
35
|
+
if (transaction.type !== wallet_1.TransactionType.Credit)
|
|
36
|
+
throw new advanced_error_1.default('Invalid credit transaction', status_code_enum_1.default.BAD_REQUEST);
|
|
37
|
+
if (transaction.status === wallet_1.TransactionStatus.Failed)
|
|
38
|
+
throw new advanced_error_1.default('This transaction has already failed', status_code_enum_1.default.BAD_REQUEST);
|
|
39
|
+
if (transaction.status !== wallet_1.TransactionStatus.Completed)
|
|
40
|
+
throw new advanced_error_1.default('This transaction is not completed', status_code_enum_1.default.BAD_REQUEST);
|
|
41
|
+
let amount = (0, num_util_1.parseToBasis)(parseFloat(transaction.amount));
|
|
42
|
+
this.availableBalance = this.availableBalance + amount;
|
|
43
|
+
this.balance = this.balance + amount;
|
|
44
|
+
console.log("[*] Wallet credited", { wallet: this.toJSON(), transaction: transaction.toJSON() });
|
|
45
|
+
await this.save();
|
|
46
|
+
}
|
|
47
|
+
catch (e) {
|
|
48
|
+
console.error("[*] Error crediting wallet", { error: e.message, stack: e.stack });
|
|
49
|
+
throw new advanced_error_1.default(e.message, e.statusCode || status_code_enum_1.default.INTERNAL_SERVER_ERROR);
|
|
50
|
+
}
|
|
51
|
+
};
|
|
52
|
+
poolWalletSchema.methods.debit = async function (transaction) {
|
|
53
|
+
try {
|
|
54
|
+
if (transaction.type !== wallet_1.TransactionType.Debit)
|
|
55
|
+
throw new advanced_error_1.default('Invalid debit transaction', status_code_enum_1.default.BAD_REQUEST);
|
|
56
|
+
if (transaction.status === wallet_1.TransactionStatus.Failed)
|
|
57
|
+
throw new advanced_error_1.default('This transaction has already failed', status_code_enum_1.default.BAD_REQUEST);
|
|
58
|
+
//at this point the wallet was found
|
|
59
|
+
let amount = (0, num_util_1.parseToBasis)(parseFloat(transaction.amount));
|
|
60
|
+
let hasEnoughBalance = this.balance >= amount;
|
|
61
|
+
if (!hasEnoughBalance)
|
|
62
|
+
throw new advanced_error_1.default('Insufficient balance', status_code_enum_1.default.BAD_REQUEST);
|
|
63
|
+
//at this point the wallet has enough funds to make the debit
|
|
64
|
+
if (transaction.status === wallet_1.TransactionStatus.Pending)
|
|
65
|
+
throw new advanced_error_1.default('This transaction is still pending', status_code_enum_1.default.BAD_REQUEST);
|
|
66
|
+
//at this point the status is completed
|
|
67
|
+
this.balance = this.balance - amount;
|
|
68
|
+
this.availableBalance = this.availableBalance - amount;
|
|
69
|
+
console.log("[*] Wallet debited", { wallet: this.toJSON(), transaction: transaction.toJSON() });
|
|
70
|
+
await this.save();
|
|
71
|
+
}
|
|
72
|
+
catch (e) {
|
|
73
|
+
console.error("[*] Error debiting wallet", { error: e.message, stack: e.stack });
|
|
74
|
+
throw new advanced_error_1.default(e.message, e.statusCode || status_code_enum_1.default.INTERNAL_SERVER_ERROR);
|
|
75
|
+
}
|
|
76
|
+
};
|
|
77
|
+
poolWalletSchema.methods.debitBalance = async function (amount) {
|
|
78
|
+
try {
|
|
79
|
+
if (this.balance < amount)
|
|
80
|
+
throw new advanced_error_1.default('Insufficient balance', status_code_enum_1.default.BAD_REQUEST);
|
|
81
|
+
this.balance = this.balance - amount;
|
|
82
|
+
await this.save();
|
|
83
|
+
}
|
|
84
|
+
catch (e) {
|
|
85
|
+
console.error("[*] Error debiting available balance", { error: e.message, stack: e.stack });
|
|
86
|
+
throw new advanced_error_1.default(e.message, e.statusCode || status_code_enum_1.default.INTERNAL_SERVER_ERROR);
|
|
87
|
+
}
|
|
88
|
+
};
|
|
89
|
+
poolWalletSchema.methods.debitAvailableBalance = async function (amount) {
|
|
90
|
+
try {
|
|
91
|
+
if (this.availableBalance < amount)
|
|
92
|
+
throw new advanced_error_1.default('Insufficient available balance', status_code_enum_1.default.BAD_REQUEST);
|
|
93
|
+
this.availableBalance = this.availableBalance - amount;
|
|
94
|
+
await this.save();
|
|
95
|
+
}
|
|
96
|
+
catch (e) {
|
|
97
|
+
console.error("[*] Error debiting available balance", { error: e.message, stack: e.stack });
|
|
98
|
+
throw new advanced_error_1.default(e.message, e.statusCode || status_code_enum_1.default.INTERNAL_SERVER_ERROR);
|
|
99
|
+
}
|
|
100
|
+
};
|
|
101
|
+
poolWalletSchema.methods.refund = async function (transaction) {
|
|
102
|
+
try {
|
|
103
|
+
//check that the transaction is a debit transaction
|
|
104
|
+
if (transaction.type !== wallet_1.TransactionType.Debit)
|
|
105
|
+
throw new advanced_error_1.default("Cannot refund a credit transaction", status_code_enum_1.default.BAD_REQUEST);
|
|
106
|
+
if (transaction.status !== wallet_1.TransactionStatus.Failed)
|
|
107
|
+
throw new advanced_error_1.default("Cannot refund a successful or pending transaction", status_code_enum_1.default.BAD_REQUEST);
|
|
108
|
+
//at this point the transaction checks out
|
|
109
|
+
//now we can refund the balance to their available balance, since we deducted it from their available balance only
|
|
110
|
+
this.availableBalance = parseFloat(this.availableBalance) + parseFloat(transaction.amount);
|
|
111
|
+
console.log("[*] Wallet refunded", { wallet: this.toJSON(), transaction: transaction.toJSON() });
|
|
112
|
+
await this.save();
|
|
113
|
+
}
|
|
114
|
+
catch (e) {
|
|
115
|
+
console.error("[*] Error refunding wallet", { error: e.message, stack: e.stack });
|
|
116
|
+
throw new advanced_error_1.default(e.message, e.statusCode || status_code_enum_1.default.INTERNAL_SERVER_ERROR);
|
|
117
|
+
}
|
|
118
|
+
};
|
|
84
119
|
const PoolWallet = (0, mongoose_1.model)(config_1.default.models.poolWallet, poolWalletSchema);
|
|
85
120
|
exports.default = PoolWallet;
|
|
86
121
|
//# sourceMappingURL=pool-wallet.model.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pool-wallet.model.js","sourceRoot":"","sources":["../../src/models/pool-wallet.model.ts"],"names":[],"mappings":";;;;;AAAA,uCAA0D;
|
|
1
|
+
{"version":3,"file":"pool-wallet.model.js","sourceRoot":"","sources":["../../src/models/pool-wallet.model.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,12 +4,15 @@ export interface IWallet extends Document {
|
|
|
4
4
|
_id: Types.ObjectId;
|
|
5
5
|
user: Types.ObjectId;
|
|
6
6
|
cards: Types.ObjectId[];
|
|
7
|
-
balance:
|
|
8
|
-
availableBalance:
|
|
7
|
+
balance: number;
|
|
8
|
+
availableBalance: number;
|
|
9
9
|
customerId?: string;
|
|
10
10
|
createdAt: Date;
|
|
11
11
|
updatedAt: Date;
|
|
12
|
+
credit: (transaction: ITransaction) => Promise<void>;
|
|
12
13
|
debit: (transaction: ITransaction) => Promise<void>;
|
|
14
|
+
debitBalance: (amount: number) => Promise<void>;
|
|
15
|
+
debitAvailableBalance: (amount: number) => Promise<void>;
|
|
13
16
|
refund: (transaction: ITransaction) => Promise<void>;
|
|
14
17
|
}
|
|
15
18
|
declare const Wallet: import("mongoose").Model<IWallet, {}, {}, {}, Document<unknown, {}, IWallet, {}, import("mongoose").DefaultSchemaOptions> & IWallet & Required<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wallet.model.d.ts","sourceRoot":"","sources":["../../src/models/wallet.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,KAAK,EAAE,QAAQ,EAAC,MAAM,UAAU,CAAC;AAIxD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"wallet.model.d.ts","sourceRoot":"","sources":["../../src/models/wallet.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,KAAK,EAAE,QAAQ,EAAC,MAAM,UAAU,CAAC;AAIxD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAQnD,MAAM,WAAW,OAAQ,SAAQ,QAAQ;IACrC,GAAG,EAAE,KAAK,CAAC,QAAQ,CAAC;IACpB,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC;IACrB,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,gBAAgB,EAAE,MAAM,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC;IAChB,MAAM,EAAE,CAAC,WAAW,EAAE,YAAY,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACrD,KAAK,EAAE,CAAC,WAAW,EAAE,YAAY,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACpD,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD,qBAAqB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACzD,MAAM,EAAE,CAAC,WAAW,EAAE,YAAY,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACxD;AAgID,QAAA,MAAM,MAAM;;;;;;gBAAqD,CAAC;AAGlE,eAAe,MAAM,CAAC"}
|
|
@@ -5,10 +5,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const mongoose_1 = require("mongoose");
|
|
7
7
|
const config_1 = __importDefault(require("../config"));
|
|
8
|
-
const pool_transaction_model_1 = require("./pool-transaction.model");
|
|
9
8
|
const advanced_error_1 = __importDefault(require("../errors/advanced.error"));
|
|
10
9
|
const status_code_enum_1 = __importDefault(require("../enums/status-code.enum"));
|
|
11
10
|
const wallet_1 = require("../types/wallet");
|
|
11
|
+
const num_util_1 = require("../utils/num.util");
|
|
12
12
|
const walletSchema = new mongoose_1.Schema({
|
|
13
13
|
user: {
|
|
14
14
|
type: mongoose_1.Schema.Types.ObjectId,
|
|
@@ -27,74 +27,39 @@ const walletSchema = new mongoose_1.Schema({
|
|
|
27
27
|
ref: config_1.default.models.card
|
|
28
28
|
}],
|
|
29
29
|
balance: {
|
|
30
|
-
type:
|
|
30
|
+
type: Number,
|
|
31
31
|
required: true,
|
|
32
|
-
|
|
33
|
-
set: function (value) {
|
|
34
|
-
// If value already looks like a float (has a .), ensure two decimals
|
|
35
|
-
if (typeof value === "string") {
|
|
36
|
-
if (pool_transaction_model_1.poolAmountPattern.test(value)) {
|
|
37
|
-
// If it has a dot but is not two decimals, pad right
|
|
38
|
-
if (value.indexOf('.') !== -1) {
|
|
39
|
-
let [whole, decimals] = value.split('.');
|
|
40
|
-
if (decimals === undefined)
|
|
41
|
-
return whole + ".00";
|
|
42
|
-
if (decimals.length === 1)
|
|
43
|
-
return whole + "." + decimals + "0";
|
|
44
|
-
if (decimals.length === 2)
|
|
45
|
-
return value;
|
|
46
|
-
if (decimals.length > 2)
|
|
47
|
-
return whole + "." + decimals.slice(0, 2);
|
|
48
|
-
}
|
|
49
|
-
// No decimal: add .00
|
|
50
|
-
return value + ".00";
|
|
51
|
-
}
|
|
52
|
-
// If it's an integer, add .00
|
|
53
|
-
if (/^\d+$/.test(value)) {
|
|
54
|
-
return value + ".00";
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
return value;
|
|
58
|
-
},
|
|
59
|
-
default: "0.00"
|
|
32
|
+
default: 0
|
|
60
33
|
},
|
|
61
34
|
availableBalance: {
|
|
62
|
-
type:
|
|
35
|
+
type: Number,
|
|
63
36
|
required: false,
|
|
64
|
-
|
|
65
|
-
set: function (value) {
|
|
66
|
-
// If value already looks like a float (has a .), ensure two decimals
|
|
67
|
-
if (typeof value === "string") {
|
|
68
|
-
if (pool_transaction_model_1.poolAmountPattern.test(value)) {
|
|
69
|
-
// If it has a dot but is not two decimals, pad right
|
|
70
|
-
if (value.indexOf('.') !== -1) {
|
|
71
|
-
let [whole, decimals] = value.split('.');
|
|
72
|
-
if (decimals === undefined)
|
|
73
|
-
return whole + ".00";
|
|
74
|
-
if (decimals.length === 1)
|
|
75
|
-
return whole + "." + decimals + "0";
|
|
76
|
-
if (decimals.length === 2)
|
|
77
|
-
return value;
|
|
78
|
-
if (decimals.length > 2)
|
|
79
|
-
return whole + "." + decimals.slice(0, 2);
|
|
80
|
-
}
|
|
81
|
-
// No decimal: add .00
|
|
82
|
-
return value + ".00";
|
|
83
|
-
}
|
|
84
|
-
// If it's an integer, add .00
|
|
85
|
-
if (/^\d+$/.test(value)) {
|
|
86
|
-
return value + ".00";
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
return value;
|
|
90
|
-
},
|
|
91
|
-
default: "0.00"
|
|
37
|
+
default: 0
|
|
92
38
|
}
|
|
93
39
|
}, {
|
|
94
40
|
timestamps: true,
|
|
95
41
|
toJSON: { virtuals: true },
|
|
96
42
|
toObject: { virtuals: true }
|
|
97
43
|
});
|
|
44
|
+
walletSchema.methods.credit = async function (transaction) {
|
|
45
|
+
try {
|
|
46
|
+
if (transaction.type !== wallet_1.TransactionType.Credit)
|
|
47
|
+
throw new advanced_error_1.default('Invalid credit transaction', status_code_enum_1.default.BAD_REQUEST);
|
|
48
|
+
if (transaction.status === wallet_1.TransactionStatus.Failed)
|
|
49
|
+
throw new advanced_error_1.default('This transaction has already failed', status_code_enum_1.default.BAD_REQUEST);
|
|
50
|
+
if (transaction.status !== wallet_1.TransactionStatus.Completed)
|
|
51
|
+
throw new advanced_error_1.default('This transaction is not completed', status_code_enum_1.default.BAD_REQUEST);
|
|
52
|
+
let amount = (0, num_util_1.parseToBasis)(parseFloat(transaction.amount));
|
|
53
|
+
this.availableBalance = this.availableBalance + amount;
|
|
54
|
+
this.balance = this.balance + amount;
|
|
55
|
+
console.log("[*] Wallet credited", { wallet: this.toJSON(), transaction: transaction.toJSON() });
|
|
56
|
+
await this.save();
|
|
57
|
+
}
|
|
58
|
+
catch (e) {
|
|
59
|
+
console.error("[*] Error crediting wallet", { error: e.message, stack: e.stack });
|
|
60
|
+
throw new advanced_error_1.default(e.message, e.statusCode || status_code_enum_1.default.INTERNAL_SERVER_ERROR);
|
|
61
|
+
}
|
|
62
|
+
};
|
|
98
63
|
walletSchema.methods.debit = async function (transaction) {
|
|
99
64
|
try {
|
|
100
65
|
if (transaction.type !== wallet_1.TransactionType.Debit)
|
|
@@ -102,14 +67,16 @@ walletSchema.methods.debit = async function (transaction) {
|
|
|
102
67
|
if (transaction.status === wallet_1.TransactionStatus.Failed)
|
|
103
68
|
throw new advanced_error_1.default('This transaction has already failed', status_code_enum_1.default.BAD_REQUEST);
|
|
104
69
|
//at this point the wallet was found
|
|
105
|
-
let
|
|
70
|
+
let amount = (0, num_util_1.parseToBasis)(parseFloat(transaction.amount));
|
|
71
|
+
let hasEnoughBalance = this.balance >= amount;
|
|
106
72
|
if (!hasEnoughBalance)
|
|
107
73
|
throw new advanced_error_1.default('Insufficient balance', status_code_enum_1.default.BAD_REQUEST);
|
|
108
74
|
//at this point the wallet has enough funds to make the debit
|
|
109
75
|
if (transaction.status === wallet_1.TransactionStatus.Pending)
|
|
110
76
|
throw new advanced_error_1.default('This transaction is still pending', status_code_enum_1.default.BAD_REQUEST);
|
|
111
77
|
//at this point the status is completed
|
|
112
|
-
this.balance =
|
|
78
|
+
this.balance = this.balance - amount;
|
|
79
|
+
this.availableBalance = this.availableBalance - amount;
|
|
113
80
|
console.log("[*] Wallet debited", { wallet: this.toJSON(), transaction: transaction.toJSON() });
|
|
114
81
|
await this.save();
|
|
115
82
|
}
|
|
@@ -118,6 +85,30 @@ walletSchema.methods.debit = async function (transaction) {
|
|
|
118
85
|
throw new advanced_error_1.default(e.message, e.statusCode || status_code_enum_1.default.INTERNAL_SERVER_ERROR);
|
|
119
86
|
}
|
|
120
87
|
};
|
|
88
|
+
walletSchema.methods.debitBalance = async function (amount) {
|
|
89
|
+
try {
|
|
90
|
+
if (this.balance < amount)
|
|
91
|
+
throw new advanced_error_1.default('Insufficient balance', status_code_enum_1.default.BAD_REQUEST);
|
|
92
|
+
this.balance = this.balance - amount;
|
|
93
|
+
await this.save();
|
|
94
|
+
}
|
|
95
|
+
catch (e) {
|
|
96
|
+
console.error("[*] Error debiting available balance", { error: e.message, stack: e.stack });
|
|
97
|
+
throw new advanced_error_1.default(e.message, e.statusCode || status_code_enum_1.default.INTERNAL_SERVER_ERROR);
|
|
98
|
+
}
|
|
99
|
+
};
|
|
100
|
+
walletSchema.methods.debitAvailableBalance = async function (amount) {
|
|
101
|
+
try {
|
|
102
|
+
if (this.availableBalance < amount)
|
|
103
|
+
throw new advanced_error_1.default('Insufficient available balance', status_code_enum_1.default.BAD_REQUEST);
|
|
104
|
+
this.availableBalance = this.availableBalance - amount;
|
|
105
|
+
await this.save();
|
|
106
|
+
}
|
|
107
|
+
catch (e) {
|
|
108
|
+
console.error("[*] Error debiting available balance", { error: e.message, stack: e.stack });
|
|
109
|
+
throw new advanced_error_1.default(e.message, e.statusCode || status_code_enum_1.default.INTERNAL_SERVER_ERROR);
|
|
110
|
+
}
|
|
111
|
+
};
|
|
121
112
|
walletSchema.methods.refund = async function (transaction) {
|
|
122
113
|
try {
|
|
123
114
|
//check that the transaction is a debit transaction
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wallet.model.js","sourceRoot":"","sources":["../../src/models/wallet.model.ts"],"names":[],"mappings":";;;;;AAAA,uCAAwD;AAExD,uDAA+B;
|
|
1
|
+
{"version":3,"file":"wallet.model.js","sourceRoot":"","sources":["../../src/models/wallet.model.ts"],"names":[],"mappings":"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"}
|
package/dist/types/job.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"job.d.ts","sourceRoot":"","sources":["../../src/types/job.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEjC,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAC7C,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAK7C,oBAAY,YAAY;IACpB,QAAQ,YAAY;IACpB,KAAK,UAAU;IACf,UAAU,gBAAgB;IAC1B,uBAAuB,+BAA+B;IACtD,uBAAuB,+BAA+B;IACtD,wBAAwB,gCAAgC;IACxD,eAAe,qBAAqB;IACpC,oBAAoB,2BAA2B;CAClD;
|
|
1
|
+
{"version":3,"file":"job.d.ts","sourceRoot":"","sources":["../../src/types/job.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEjC,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAC7C,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAK7C,oBAAY,YAAY;IACpB,QAAQ,YAAY;IACpB,KAAK,UAAU;IACf,UAAU,gBAAgB;IAC1B,uBAAuB,+BAA+B;IACtD,uBAAuB,+BAA+B;IACtD,wBAAwB,gCAAgC;IACxD,eAAe,qBAAqB;IACpC,oBAAoB,2BAA2B;CAClD;AAED,MAAM,WAAW,cAAc;IAC3B,IAAI,EAAE,YAAY,CAAC;IACnB,OAAO,EAAE;QACL,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;KAC7B,CAAA;CACJ;AAED,oBAAY,SAAS;IACjB,OAAO,YAAY;IACnB,SAAS,cAAc;IACvB,MAAM,WAAW;CACpB;AAED,MAAM,WAAW,sBAAsB;IACnC,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC;IACtB,MAAM,EAAE,SAAS,CAAC;CACrB;AAED,MAAM,WAAW,kBAAkB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;CACpB"}
|
package/dist/types/job.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"job.js","sourceRoot":"","sources":["../../src/types/job.ts"],"names":[],"mappings":";;;AAQA,IAAY,YASX;AATD,WAAY,YAAY;IACpB,oCAAoB,CAAA;IACpB,+BAAe,CAAA;IACf,0CAA0B,CAAA;IAC1B,sEAAsD,CAAA;IACtD,sEAAsD,CAAA;IACtD,wEAAwD,CAAA;IACxD,oDAAoC,CAAA;IACpC,+DAA+C,CAAA;AACnD,CAAC,EATW,YAAY,4BAAZ,YAAY,QASvB;
|
|
1
|
+
{"version":3,"file":"job.js","sourceRoot":"","sources":["../../src/types/job.ts"],"names":[],"mappings":";;;AAQA,IAAY,YASX;AATD,WAAY,YAAY;IACpB,oCAAoB,CAAA;IACpB,+BAAe,CAAA;IACf,0CAA0B,CAAA;IAC1B,sEAAsD,CAAA;IACtD,sEAAsD,CAAA;IACtD,wEAAwD,CAAA;IACxD,oDAAoC,CAAA;IACpC,+DAA+C,CAAA;AACnD,CAAC,EATW,YAAY,4BAAZ,YAAY,QASvB;AAaD,IAAY,SAIX;AAJD,WAAY,SAAS;IACjB,gCAAmB,CAAA;IACnB,oCAAuB,CAAA;IACvB,8BAAiB,CAAA;AACrB,CAAC,EAJW,SAAS,yBAAT,SAAS,QAIpB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"notification.d.ts","sourceRoot":"","sources":["../../src/types/notification.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAG1D,oBAAY,kBAAkB;IAC1B,IAAI,SAAS;IACb,MAAM,WAAW;CACpB;AAED,oBAAY,gBAAgB;IACxB,eAAe,qBAAqB;IACpC,eAAe,qBAAqB;IACpC,aAAa,oBAAoB;IACjC,YAAY,mBAAmB;IAC/B,UAAU,gBAAgB;IAC1B,cAAc,oBAAoB;IAClC,UAAU,gBAAgB;IAC1B,aAAa,mBAAmB;IAChC,eAAe,sBAAsB;IACrC,mBAAmB,0BAA0B;IAC7C,eAAe,qBAAqB;IACpC,WAAW,iBAAiB;IAC5B,WAAW,kBAAkB;IAC7B,eAAe,qBAAqB;IACpC,mBAAmB,yBAAyB;IAC5C,mBAAmB,yBAAyB;IAC5C,gBAAgB,sBAAsB;IACtC,oBAAoB,0BAA0B;IAC9C,gBAAgB,uBAAuB;IACvC,iBAAiB,wBAAwB;IACzC,WAAW,iBAAiB;IAC5B,WAAW,iBAAiB;IAC5B,WAAW,iBAAiB;IAC5B,UAAU,gBAAgB;IAC1B,QAAQ,cAAc;IACtB,QAAQ,aAAa;IACrB,YAAY,iBAAiB;CAChC;
|
|
1
|
+
{"version":3,"file":"notification.d.ts","sourceRoot":"","sources":["../../src/types/notification.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAG1D,oBAAY,kBAAkB;IAC1B,IAAI,SAAS;IACb,MAAM,WAAW;CACpB;AAED,oBAAY,gBAAgB;IACxB,eAAe,qBAAqB;IACpC,eAAe,qBAAqB;IACpC,aAAa,oBAAoB;IACjC,YAAY,mBAAmB;IAC/B,UAAU,gBAAgB;IAC1B,cAAc,oBAAoB;IAClC,UAAU,gBAAgB;IAC1B,aAAa,mBAAmB;IAChC,eAAe,sBAAsB;IACrC,mBAAmB,0BAA0B;IAC7C,eAAe,qBAAqB;IACpC,WAAW,iBAAiB;IAC5B,WAAW,kBAAkB;IAC7B,eAAe,qBAAqB;IACpC,mBAAmB,yBAAyB;IAC5C,mBAAmB,yBAAyB;IAC5C,gBAAgB,sBAAsB;IACtC,oBAAoB,0BAA0B;IAC9C,gBAAgB,uBAAuB;IACvC,iBAAiB,wBAAwB;IACzC,WAAW,iBAAiB;IAC5B,WAAW,iBAAiB;IAC5B,WAAW,iBAAiB;IAC5B,UAAU,gBAAgB;IAC1B,QAAQ,cAAc;IACtB,QAAQ,aAAa;IACrB,YAAY,iBAAiB;CAChC;AAED,oBAAY,YAAY;IACpB,KAAK,UAAU;CAClB;AAED,MAAM,WAAW,uBAAuB;IACpC,UAAU,EAAE,UAAU,CAAC;IACvB,IAAI,EAAE,gBAAgB,CAAC;IACvB,MAAM,EAAE,kBAAkB,CAAC;IAC3B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAC7B;AAED,oBAAY,kBAAkB;IAC1B,KAAK,UAAU;IACf,OAAO,YAAY;IACnB,IAAI,SAAS;CAChB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"notification.js","sourceRoot":"","sources":["../../src/types/notification.ts"],"names":[],"mappings":";;;AAGA,IAAY,kBAGX;AAHD,WAAY,kBAAkB;IAC1B,mCAAa,CAAA;IACb,uCAAiB,CAAA;AACrB,CAAC,EAHW,kBAAkB,kCAAlB,kBAAkB,QAG7B;AAED,IAAY,gBA4BX;AA5BD,WAAY,gBAAgB;IACxB,wDAAoC,CAAA;IACpC,wDAAoC,CAAA;IACpC,qDAAiC,CAAA;IACjC,mDAA+B,CAAA;IAC/B,8CAA0B,CAAA;IAC1B,sDAAkC,CAAA;IAClC,8CAA0B,CAAA;IAC1B,oDAAgC,CAAA;IAChC,yDAAqC,CAAA;IACrC,iEAA6C,CAAA;IAC7C,wDAAoC,CAAA;IACpC,gDAA4B,CAAA;IAC5B,iDAA6B,CAAA;IAC7B,wDAAoC,CAAA;IACpC,gEAA4C,CAAA;IAC5C,gEAA4C,CAAA;IAC5C,0DAAsC,CAAA;IACtC,kEAA8C,CAAA;IAC9C,2DAAuC,CAAA;IACvC,6DAAyC,CAAA;IACzC,gDAA4B,CAAA;IAC5B,gDAA4B,CAAA;IAC5B,gDAA4B,CAAA;IAC5B,8CAA0B,CAAA;IAC1B,0CAAsB,CAAA;IACtB,yCAAqB,CAAA;IACrB,iDAA6B,CAAA;AACjC,CAAC,EA5BW,gBAAgB,gCAAhB,gBAAgB,QA4B3B;
|
|
1
|
+
{"version":3,"file":"notification.js","sourceRoot":"","sources":["../../src/types/notification.ts"],"names":[],"mappings":";;;AAGA,IAAY,kBAGX;AAHD,WAAY,kBAAkB;IAC1B,mCAAa,CAAA;IACb,uCAAiB,CAAA;AACrB,CAAC,EAHW,kBAAkB,kCAAlB,kBAAkB,QAG7B;AAED,IAAY,gBA4BX;AA5BD,WAAY,gBAAgB;IACxB,wDAAoC,CAAA;IACpC,wDAAoC,CAAA;IACpC,qDAAiC,CAAA;IACjC,mDAA+B,CAAA;IAC/B,8CAA0B,CAAA;IAC1B,sDAAkC,CAAA;IAClC,8CAA0B,CAAA;IAC1B,oDAAgC,CAAA;IAChC,yDAAqC,CAAA;IACrC,iEAA6C,CAAA;IAC7C,wDAAoC,CAAA;IACpC,gDAA4B,CAAA;IAC5B,iDAA6B,CAAA;IAC7B,wDAAoC,CAAA;IACpC,gEAA4C,CAAA;IAC5C,gEAA4C,CAAA;IAC5C,0DAAsC,CAAA;IACtC,kEAA8C,CAAA;IAC9C,2DAAuC,CAAA;IACvC,6DAAyC,CAAA;IACzC,gDAA4B,CAAA;IAC5B,gDAA4B,CAAA;IAC5B,gDAA4B,CAAA;IAC5B,8CAA0B,CAAA;IAC1B,0CAAsB,CAAA;IACtB,yCAAqB,CAAA;IACrB,iDAA6B,CAAA;AACjC,CAAC,EA5BW,gBAAgB,gCAAhB,gBAAgB,QA4B3B;AAED,IAAY,YAEX;AAFD,WAAY,YAAY;IACpB,+BAAe,CAAA;AACnB,CAAC,EAFW,YAAY,4BAAZ,YAAY,QAEvB;AASD,IAAY,kBAIX;AAJD,WAAY,kBAAkB;IAC1B,qCAAe,CAAA;IACf,yCAAmB,CAAA;IACnB,mCAAa,CAAA;AACjB,CAAC,EAJW,kBAAkB,kCAAlB,kBAAkB,QAI7B"}
|
package/dist/types/pool.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { IPoolGameweek } from "../models/pool-gameweek.model";
|
|
1
2
|
import { IPoolMember } from "../models/pool-member.model";
|
|
2
3
|
import { IPoolWallet } from "../models/pool-wallet.model";
|
|
3
4
|
export declare enum PoolType {
|
|
@@ -79,4 +80,8 @@ export interface IPoolGameweekStats {
|
|
|
79
80
|
highestWeeklyScore: number;
|
|
80
81
|
lowestWeeklyScore: number;
|
|
81
82
|
}
|
|
83
|
+
export interface PayWinnerPayload {
|
|
84
|
+
winner: IPoolMember;
|
|
85
|
+
gameweek: IPoolGameweek;
|
|
86
|
+
}
|
|
82
87
|
//# sourceMappingURL=pool.d.ts.map
|
package/dist/types/pool.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pool.d.ts","sourceRoot":"","sources":["../../src/types/pool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"pool.d.ts","sourceRoot":"","sources":["../../src/types/pool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAK1D,oBAAY,QAAQ;IAChB,MAAM,WAAW;IACjB,QAAQ,aAAa;IACrB,UAAU,gBAAgB;CAC7B;AAED,MAAM,WAAW,kBAAkB;IAC/B,SAAS,EAAE,SAAS,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,gBAAgB,EAAE,WAAW,GAAG,MAAM,GAAG,aAAa,CAAC;IACvD,iBAAiB,EAAE,OAAO,GAAG,aAAa,GAAG,aAAa,CAAC;CAC9D;AAED,MAAM,WAAW,kBAAkB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,mBAAmB,EAAE,OAAO,CAAC;IAC7B,WAAW,EAAE,kBAAkB,EAAE,CAAC;IAClC,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,CAAC;IACxB,iBAAiB,CAAC,EAAE;QAClB,QAAQ,EAAE,MAAM,CAAC;QACjB,UAAU,EAAE,MAAM,CAAC;QACnB,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,aAAa,CAAC,EAAE;QACd,QAAQ,EAAE,MAAM,CAAC;QACjB,UAAU,EAAE,MAAM,CAAC;QACnB,MAAM,EAAE,MAAM,CAAC;QACf,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC;CACL;AAED,oBAAY,SAAS;IACjB,MAAM,WAAS;IACf,OAAO,YAAU;IACjB,SAAS,cAAY;IACrB,QAAQ,aAAW;IACnB,MAAM,WAAS;IACf,QAAQ,aAAW;IACnB,MAAM,WAAS;CAClB;AAED,MAAM,WAAW,eAAe;IAC5B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,WAAW,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAA;CACvB;AAED,MAAM,WAAW,SAAS;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,cAAc;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CACjC;AAED,MAAM,WAAW,kBAAkB;IAC/B,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE;QACX,CAAC,QAAQ,EAAE,MAAM,GAAG;YAChB,MAAM,EAAE,WAAW,CAAC;YACpB,SAAS,EAAE,MAAM,CAAC;YAClB,IAAI,EAAE,MAAM,CAAC;SAChB,CAAA;KACJ,CAAC;IACF,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,iBAAiB,EAAE,MAAM,CAAC;CAC7B;AAGD,MAAM,WAAW,gBAAgB;IAC7B,MAAM,EAAE,WAAW,CAAC;IACpB,QAAQ,EAAE,aAAa,CAAC;CAC3B"}
|
package/dist/types/pool.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pool.js","sourceRoot":"","sources":["../../src/types/pool.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"pool.js","sourceRoot":"","sources":["../../src/types/pool.ts"],"names":[],"mappings":";;;AAOA,IAAY,QAIX;AAJD,WAAY,QAAQ;IAChB,6BAAiB,CAAA;IACjB,iCAAqB,CAAA;IACrB,sCAA0B,CAAA;AAC9B,CAAC,EAJW,QAAQ,wBAAR,QAAQ,QAInB;AA6BD,IAAY,SAQX;AARD,WAAY,SAAS;IACjB,8BAAe,CAAA;IACf,gCAAiB,CAAA;IACjB,oCAAqB,CAAA;IACrB,kCAAmB,CAAA;IACnB,8BAAe,CAAA;IACf,kCAAmB,CAAA;IACnB,8BAAe,CAAA;AACnB,CAAC,EARW,SAAS,yBAAT,SAAS,QAQpB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"num.util.d.ts","sourceRoot":"","sources":["../../src/utils/num.util.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,YAAY,GAAI,OAAO,MAAM,KAAG,MAG5C,CAAA;AAGD,eAAO,MAAM,cAAc,GAAI,OAAO,MAAM,KAAG,MAG9C,CAAA"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.parseFromBasis = exports.parseToBasis = void 0;
|
|
7
|
+
const config_1 = __importDefault(require("../config"));
|
|
8
|
+
const parseToBasis = (value) => {
|
|
9
|
+
let newValue = value * config_1.default.app.basis;
|
|
10
|
+
return newValue;
|
|
11
|
+
};
|
|
12
|
+
exports.parseToBasis = parseToBasis;
|
|
13
|
+
const parseFromBasis = (value) => {
|
|
14
|
+
let newValue = value / config_1.default.app.basis;
|
|
15
|
+
return parseFloat(newValue.toFixed(2));
|
|
16
|
+
};
|
|
17
|
+
exports.parseFromBasis = parseFromBasis;
|
|
18
|
+
//# sourceMappingURL=num.util.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"num.util.js","sourceRoot":"","sources":["../../src/utils/num.util.ts"],"names":[],"mappings":";;;;;;AAAA,uDAA+B;AAIxB,MAAM,YAAY,GAAG,CAAC,KAAa,EAAU,EAAE;IAClD,IAAI,QAAQ,GAAG,KAAK,GAAG,gBAAM,CAAC,GAAG,CAAC,KAAK,CAAC;IACxC,OAAO,QAAQ,CAAC;AACpB,CAAC,CAAA;AAHY,QAAA,YAAY,gBAGxB;AAGM,MAAM,cAAc,GAAG,CAAC,KAAa,EAAU,EAAE;IACpD,IAAI,QAAQ,GAAG,KAAK,GAAG,gBAAM,CAAC,GAAG,CAAC,KAAK,CAAC;IACxC,OAAO,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;AAC3C,CAAC,CAAA;AAHY,QAAA,cAAc,kBAG1B"}
|