@winible/winible-typed 2.87.1 → 2.88.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/event-collector-models/config/config.js +29 -0
- package/dist/event-collector-models/config/config.js.map +1 -0
- package/dist/migration_numerical_id_to_external_id.js +59 -0
- package/dist/migration_numerical_id_to_external_id.js.map +1 -0
- package/dist/migrations/20241123184623-recurly-payment-monitoring-whitelist.js +33 -0
- package/dist/migrations/20241123184623-recurly-payment-monitoring-whitelist.js.map +1 -0
- package/dist/typed-model/dispute.js +117 -0
- package/dist/typed-model/dispute.js.map +1 -0
- package/dist/typed-model/index.js +3 -1
- package/dist/typed-model/index.js.map +1 -1
- package/dist/typed-model/league-on-users.js +60 -0
- package/dist/typed-model/league-on-users.js.map +1 -0
- package/dist/typed-model/market-on-bet-sport.js +58 -0
- package/dist/typed-model/market-on-bet-sport.js.map +1 -0
- package/dist/typed-model/recurly-payment-monitoring-whitelist.js +45 -0
- package/dist/typed-model/recurly-payment-monitoring-whitelist.js.map +1 -0
- package/event-collector-models/config/config.ts +29 -0
- package/package.json +1 -1
- package/typed-model/dispute.ts +149 -0
- package/typed-model/index.ts +1 -0
@@ -0,0 +1,29 @@
|
|
1
|
+
require("dotenv").config();
|
2
|
+
module.exports = {
|
3
|
+
development: {
|
4
|
+
dialect: "postgres",
|
5
|
+
host: process.env.TS_DB_HOST,
|
6
|
+
port: process.env.TS_DB_PORT,
|
7
|
+
database: process.env.TS_DB_NAME,
|
8
|
+
username: process.env.TS_DB_USER,
|
9
|
+
password: process.env.TS_DB_PASSWORD,
|
10
|
+
dialectOptions: {
|
11
|
+
ssl: false,
|
12
|
+
},
|
13
|
+
},
|
14
|
+
production: {
|
15
|
+
dialect: "postgres",
|
16
|
+
host: process.env.TS_DB_HOST,
|
17
|
+
port: process.env.TS_DB_PORT,
|
18
|
+
database: process.env.TS_DB_NAME,
|
19
|
+
username: process.env.TS_DB_USER,
|
20
|
+
password: process.env.TS_DB_PASSWORD,
|
21
|
+
dialectOptions: {
|
22
|
+
ssl: {
|
23
|
+
require: true,
|
24
|
+
rejectUnauthorized: false,
|
25
|
+
},
|
26
|
+
},
|
27
|
+
},
|
28
|
+
};
|
29
|
+
//# sourceMappingURL=config.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../event-collector-models/config/config.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,QAAQ,CAAC,CAAC,MAAM,EAAE,CAAC;AAE3B,MAAM,CAAC,OAAO,GAAG;IACf,WAAW,EAAE;QACX,OAAO,EAAE,UAAU;QACnB,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,UAAU;QAC5B,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,UAAU;QAC5B,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,UAAU;QAChC,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,UAAU;QAChC,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc;QACpC,cAAc,EAAE;YACd,GAAG,EAAE,KAAK;SACX;KACF;IACD,UAAU,EAAE;QACV,OAAO,EAAE,UAAU;QACnB,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,UAAU;QAC5B,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,UAAU;QAC5B,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,UAAU;QAChC,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,UAAU;QAChC,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc;QACpC,cAAc,EAAE;YACd,GAAG,EAAE;gBACH,OAAO,EAAE,IAAI;gBACb,kBAAkB,EAAE,KAAK;aAC1B;SACF;KACF;CACF,CAAC"}
|
@@ -0,0 +1,59 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
const sequelize_1 = require("sequelize");
|
4
|
+
/**
|
5
|
+
* Migration para alterar numerical_id para external_id
|
6
|
+
* Alterando o tipo de INTEGER para STRING e renomeando a coluna
|
7
|
+
*/
|
8
|
+
module.exports = {
|
9
|
+
async up(queryInterface) {
|
10
|
+
// 1. Alterar tipo de numerical_id para VARCHAR nas tabelas
|
11
|
+
await queryInterface.changeColumn("bet_sports", "numerical_id", {
|
12
|
+
type: sequelize_1.DataTypes.STRING,
|
13
|
+
allowNull: false,
|
14
|
+
});
|
15
|
+
await queryInterface.changeColumn("leagues", "numerical_id", {
|
16
|
+
type: sequelize_1.DataTypes.STRING,
|
17
|
+
allowNull: false,
|
18
|
+
});
|
19
|
+
await queryInterface.changeColumn("markets", "numerical_id", {
|
20
|
+
type: sequelize_1.DataTypes.STRING,
|
21
|
+
allowNull: false,
|
22
|
+
});
|
23
|
+
await queryInterface.changeColumn("sportsbooks", "numerical_id", {
|
24
|
+
type: sequelize_1.DataTypes.STRING,
|
25
|
+
allowNull: false,
|
26
|
+
});
|
27
|
+
// 2. Renomear colunas de numerical_id para external_id
|
28
|
+
await queryInterface.renameColumn("bet_sports", "numerical_id", "external_id");
|
29
|
+
await queryInterface.renameColumn("leagues", "numerical_id", "external_id");
|
30
|
+
await queryInterface.renameColumn("markets", "numerical_id", "external_id");
|
31
|
+
await queryInterface.renameColumn("sportsbooks", "numerical_id", "external_id");
|
32
|
+
},
|
33
|
+
async down(queryInterface) {
|
34
|
+
// Reverter as alterações
|
35
|
+
// 1. Renomear de volta para numerical_id
|
36
|
+
await queryInterface.renameColumn("bet_sports", "external_id", "numerical_id");
|
37
|
+
await queryInterface.renameColumn("leagues", "external_id", "numerical_id");
|
38
|
+
await queryInterface.renameColumn("markets", "external_id", "numerical_id");
|
39
|
+
await queryInterface.renameColumn("sportsbooks", "external_id", "numerical_id");
|
40
|
+
// 2. Alterar tipo de volta para INTEGER
|
41
|
+
await queryInterface.changeColumn("bet_sports", "numerical_id", {
|
42
|
+
type: sequelize_1.DataTypes.INTEGER,
|
43
|
+
allowNull: false,
|
44
|
+
});
|
45
|
+
await queryInterface.changeColumn("leagues", "numerical_id", {
|
46
|
+
type: sequelize_1.DataTypes.INTEGER,
|
47
|
+
allowNull: false,
|
48
|
+
});
|
49
|
+
await queryInterface.changeColumn("markets", "numerical_id", {
|
50
|
+
type: sequelize_1.DataTypes.INTEGER,
|
51
|
+
allowNull: false,
|
52
|
+
});
|
53
|
+
await queryInterface.changeColumn("sportsbooks", "numerical_id", {
|
54
|
+
type: sequelize_1.DataTypes.INTEGER,
|
55
|
+
allowNull: false,
|
56
|
+
});
|
57
|
+
},
|
58
|
+
};
|
59
|
+
//# sourceMappingURL=migration_numerical_id_to_external_id.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"migration_numerical_id_to_external_id.js","sourceRoot":"","sources":["../migration_numerical_id_to_external_id.ts"],"names":[],"mappings":";;AAAA,yCAAsD;AAEtD;;;GAGG;AAEH,MAAM,CAAC,OAAO,GAAG;IACf,KAAK,CAAC,EAAE,CAAC,cAA8B;QACrC,2DAA2D;QAC3D,MAAM,cAAc,CAAC,YAAY,CAAC,YAAY,EAAE,cAAc,EAAE;YAC9D,IAAI,EAAE,qBAAS,CAAC,MAAM;YACtB,SAAS,EAAE,KAAK;SACjB,CAAC,CAAC;QAEH,MAAM,cAAc,CAAC,YAAY,CAAC,SAAS,EAAE,cAAc,EAAE;YAC3D,IAAI,EAAE,qBAAS,CAAC,MAAM;YACtB,SAAS,EAAE,KAAK;SACjB,CAAC,CAAC;QAEH,MAAM,cAAc,CAAC,YAAY,CAAC,SAAS,EAAE,cAAc,EAAE;YAC3D,IAAI,EAAE,qBAAS,CAAC,MAAM;YACtB,SAAS,EAAE,KAAK;SACjB,CAAC,CAAC;QAEH,MAAM,cAAc,CAAC,YAAY,CAAC,aAAa,EAAE,cAAc,EAAE;YAC/D,IAAI,EAAE,qBAAS,CAAC,MAAM;YACtB,SAAS,EAAE,KAAK;SACjB,CAAC,CAAC;QAEH,uDAAuD;QACvD,MAAM,cAAc,CAAC,YAAY,CAC/B,YAAY,EACZ,cAAc,EACd,aAAa,CACd,CAAC;QACF,MAAM,cAAc,CAAC,YAAY,CAAC,SAAS,EAAE,cAAc,EAAE,aAAa,CAAC,CAAC;QAC5E,MAAM,cAAc,CAAC,YAAY,CAAC,SAAS,EAAE,cAAc,EAAE,aAAa,CAAC,CAAC;QAC5E,MAAM,cAAc,CAAC,YAAY,CAC/B,aAAa,EACb,cAAc,EACd,aAAa,CACd,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,cAA8B;QACvC,yBAAyB;QAEzB,yCAAyC;QACzC,MAAM,cAAc,CAAC,YAAY,CAC/B,YAAY,EACZ,aAAa,EACb,cAAc,CACf,CAAC;QACF,MAAM,cAAc,CAAC,YAAY,CAAC,SAAS,EAAE,aAAa,EAAE,cAAc,CAAC,CAAC;QAC5E,MAAM,cAAc,CAAC,YAAY,CAAC,SAAS,EAAE,aAAa,EAAE,cAAc,CAAC,CAAC;QAC5E,MAAM,cAAc,CAAC,YAAY,CAC/B,aAAa,EACb,aAAa,EACb,cAAc,CACf,CAAC;QAEF,wCAAwC;QACxC,MAAM,cAAc,CAAC,YAAY,CAAC,YAAY,EAAE,cAAc,EAAE;YAC9D,IAAI,EAAE,qBAAS,CAAC,OAAO;YACvB,SAAS,EAAE,KAAK;SACjB,CAAC,CAAC;QAEH,MAAM,cAAc,CAAC,YAAY,CAAC,SAAS,EAAE,cAAc,EAAE;YAC3D,IAAI,EAAE,qBAAS,CAAC,OAAO;YACvB,SAAS,EAAE,KAAK;SACjB,CAAC,CAAC;QAEH,MAAM,cAAc,CAAC,YAAY,CAAC,SAAS,EAAE,cAAc,EAAE;YAC3D,IAAI,EAAE,qBAAS,CAAC,OAAO;YACvB,SAAS,EAAE,KAAK;SACjB,CAAC,CAAC;QAEH,MAAM,cAAc,CAAC,YAAY,CAAC,aAAa,EAAE,cAAc,EAAE;YAC/D,IAAI,EAAE,qBAAS,CAAC,OAAO;YACvB,SAAS,EAAE,KAAK;SACjB,CAAC,CAAC;IACL,CAAC;CACF,CAAC"}
|
@@ -0,0 +1,33 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
const sequelize_1 = require("sequelize");
|
4
|
+
exports.default = {
|
5
|
+
async up(queryInterface, sequelize) {
|
6
|
+
await queryInterface.createTable("recurly_payment_monitoring_whitelist", {
|
7
|
+
id: {
|
8
|
+
type: sequelize_1.DataTypes.BIGINT,
|
9
|
+
primaryKey: true,
|
10
|
+
allowNull: false,
|
11
|
+
autoIncrement: true,
|
12
|
+
},
|
13
|
+
user_id: {
|
14
|
+
type: sequelize_1.DataTypes.BIGINT,
|
15
|
+
allowNull: false,
|
16
|
+
references: {
|
17
|
+
model: "users",
|
18
|
+
key: "id",
|
19
|
+
},
|
20
|
+
onDelete: "CASCADE",
|
21
|
+
},
|
22
|
+
createdAt: {
|
23
|
+
type: sequelize_1.DataTypes.DATE,
|
24
|
+
allowNull: false,
|
25
|
+
defaultValue: sequelize.literal("NOW()"),
|
26
|
+
},
|
27
|
+
});
|
28
|
+
},
|
29
|
+
async down(queryInterface, sequelize) {
|
30
|
+
await queryInterface.dropTable("recurly_payment_monitoring_whitelist");
|
31
|
+
},
|
32
|
+
};
|
33
|
+
//# sourceMappingURL=20241123184623-recurly-payment-monitoring-whitelist.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"20241123184623-recurly-payment-monitoring-whitelist.js","sourceRoot":"","sources":["../../migrations/20241123184623-recurly-payment-monitoring-whitelist.ts"],"names":[],"mappings":";;AAAA,yCAAiE;AAEjE,kBAAe;IACb,KAAK,CAAC,EAAE,CAAC,cAA8B,EAAE,SAAoB;QAC3D,MAAM,cAAc,CAAC,WAAW,CAAC,sCAAsC,EAAE;YACvE,EAAE,EAAE;gBACF,IAAI,EAAE,qBAAS,CAAC,MAAM;gBACtB,UAAU,EAAE,IAAI;gBAChB,SAAS,EAAE,KAAK;gBAChB,aAAa,EAAE,IAAI;aACpB;YACD,OAAO,EAAE;gBACP,IAAI,EAAE,qBAAS,CAAC,MAAM;gBACtB,SAAS,EAAE,KAAK;gBAChB,UAAU,EAAE;oBACV,KAAK,EAAE,OAAO;oBACd,GAAG,EAAE,IAAI;iBACV;gBACD,QAAQ,EAAE,SAAS;aACpB;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,qBAAS,CAAC,IAAI;gBACpB,SAAS,EAAE,KAAK;gBAChB,YAAY,EAAE,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC;aACzC;SACF,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,cAA8B,EAAE,SAAoB;QAC7D,MAAM,cAAc,CAAC,SAAS,CAAC,sCAAsC,CAAC,CAAC;IACzE,CAAC;CACF,CAAC"}
|
@@ -0,0 +1,117 @@
|
|
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
|
+
const sequelize_1 = require("sequelize");
|
7
|
+
const pb_sequelize_1 = __importDefault(require("./pb-sequelize"));
|
8
|
+
const transaction_1 = __importDefault(require("./transaction"));
|
9
|
+
class Dispute extends sequelize_1.Model {
|
10
|
+
}
|
11
|
+
Dispute.init({
|
12
|
+
id: {
|
13
|
+
type: sequelize_1.DataTypes.BIGINT,
|
14
|
+
primaryKey: true,
|
15
|
+
allowNull: false,
|
16
|
+
defaultValue: pb_sequelize_1.default.fn("next_id"),
|
17
|
+
},
|
18
|
+
transactionId: {
|
19
|
+
type: sequelize_1.DataTypes.BIGINT,
|
20
|
+
field: "transaction_id",
|
21
|
+
allowNull: false,
|
22
|
+
references: {
|
23
|
+
model: "transactions",
|
24
|
+
key: "id",
|
25
|
+
},
|
26
|
+
},
|
27
|
+
fightbackAmountInCents: {
|
28
|
+
type: sequelize_1.DataTypes.INTEGER,
|
29
|
+
field: "fightback_amount_in_cents",
|
30
|
+
allowNull: false,
|
31
|
+
},
|
32
|
+
disputeAlertType: {
|
33
|
+
type: sequelize_1.DataTypes.ENUM("ethoca", "cdrn", "visa_rdr", "n_a"),
|
34
|
+
field: "dispute_alert_type",
|
35
|
+
allowNull: false,
|
36
|
+
},
|
37
|
+
disputeReasonCode: {
|
38
|
+
type: sequelize_1.DataTypes.STRING,
|
39
|
+
field: "dispute_reason_code",
|
40
|
+
allowNull: true,
|
41
|
+
},
|
42
|
+
status: {
|
43
|
+
type: sequelize_1.DataTypes.ENUM("in_progress", "won", "lost"),
|
44
|
+
field: "status",
|
45
|
+
allowNull: false,
|
46
|
+
defaultValue: "in_progress",
|
47
|
+
},
|
48
|
+
createdAt: sequelize_1.DataTypes.DATE,
|
49
|
+
updatedAt: sequelize_1.DataTypes.DATE,
|
50
|
+
}, {
|
51
|
+
tableName: "disputes",
|
52
|
+
sequelize: pb_sequelize_1.default,
|
53
|
+
indexes: [
|
54
|
+
{
|
55
|
+
fields: ["transaction_id"],
|
56
|
+
unique: true,
|
57
|
+
},
|
58
|
+
{
|
59
|
+
fields: ["status"],
|
60
|
+
},
|
61
|
+
{
|
62
|
+
fields: ["dispute_alert_type"],
|
63
|
+
},
|
64
|
+
],
|
65
|
+
});
|
66
|
+
Dispute.getById = async (id) => {
|
67
|
+
return await Dispute.findOne({
|
68
|
+
where: {
|
69
|
+
id,
|
70
|
+
},
|
71
|
+
include: [
|
72
|
+
{
|
73
|
+
model: transaction_1.default,
|
74
|
+
as: "transaction",
|
75
|
+
},
|
76
|
+
],
|
77
|
+
});
|
78
|
+
};
|
79
|
+
Dispute.getByTransactionId = async (transactionId) => {
|
80
|
+
return await Dispute.findOne({
|
81
|
+
where: {
|
82
|
+
transactionId,
|
83
|
+
},
|
84
|
+
include: [
|
85
|
+
{
|
86
|
+
model: transaction_1.default,
|
87
|
+
as: "transaction",
|
88
|
+
},
|
89
|
+
],
|
90
|
+
});
|
91
|
+
};
|
92
|
+
Dispute.getAllByStatus = async (status) => {
|
93
|
+
return await Dispute.findAll({
|
94
|
+
where: {
|
95
|
+
status,
|
96
|
+
},
|
97
|
+
include: [
|
98
|
+
{
|
99
|
+
model: transaction_1.default,
|
100
|
+
as: "transaction",
|
101
|
+
},
|
102
|
+
],
|
103
|
+
});
|
104
|
+
};
|
105
|
+
transaction_1.default.hasOne(Dispute, {
|
106
|
+
foreignKey: "transactionId",
|
107
|
+
onDelete: "CASCADE",
|
108
|
+
constraints: true,
|
109
|
+
});
|
110
|
+
Dispute.belongsTo(transaction_1.default, {
|
111
|
+
as: "transaction",
|
112
|
+
foreignKey: "transactionId",
|
113
|
+
onDelete: "CASCADE",
|
114
|
+
constraints: true,
|
115
|
+
});
|
116
|
+
exports.default = Dispute;
|
117
|
+
//# sourceMappingURL=dispute.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"dispute.js","sourceRoot":"","sources":["../../typed-model/dispute.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.MigrationToken = exports.Bet = exports.LimitedOffer = exports.AffiliateLinkType = exports.AffiliateCode = exports.CancellationReason = exports.CancellationOffer = exports.PrivateFeedUsers = exports.FeaturedCreator = exports.PostsOnIntegrations = exports.DiscordIntegrationLog = exports.TelegramIntegrationInviteLink = exports.TelegramIntegrationCode = exports.TelegramIntegrationLog = exports.SubscriberTelegramIntegration = exports.TelegramIntegration = exports.StoresOnOrganizations = exports.UsersOnOrganizations = exports.Organization = exports.FailedTransactions = exports.Whitelist = exports.SubscriberDiscordIntegration = exports.DiscordIntegration = exports.SportOnPosts = exports.Sport = exports.Integration = exports.UsersOnCreators = exports.Store = exports.Application = exports.NewNotificationPreference = exports.NotificationPreference = exports.SubscribersOnCreators = exports.SubscriptionPricingOptionOnCoupons = exports.User = exports.Withdrawal = exports.RecurlyAccount = exports.FreeSubscriptionPlan = exports.SubscriptionPricingOption = exports.SubscriptionCoupon = exports.SubscriptionPlanOnPost = exports.SubscriptionPlanOnUsers = exports.SubscriptionPlan = exports.PostsOnUsers = exports.Post = exports.PasswordTokens = exports.Notification = exports.Media = exports.MediaAsset = exports.Transaction = exports.ContentLike = void 0;
|
7
|
-
exports.pbSequelize = exports.DefaultCompliancePolicy = exports.ParlaysOnBets = exports.OddsOnParlays = exports.OddsOnBets = exports.ComplianceRuleSportsbook = exports.Parlay = exports.Odd = exports.AffiliateLink = exports.MarketOnLeague = exports.League = exports.ComplianceRule = exports.Sportsbook = exports.Market = exports.BetSport = exports.SendgridDomain = exports.SendgridIpPool = exports.SendgridEmailSubAccount = exports.PhoneNumberAssignment = exports.MarketingPhoneNumber = exports.Segment = exports.Trigger = exports.CampaignMessage = exports.Campaign = exports.CampaignTemplate = exports.CreatorServiceFee = exports.UserCookiePreference = exports.CouponRedemptions = exports.UserTransactionLocation = exports.UserReview = exports.PumpingRiskScoreMonitoring = exports.UsersOnPermissions = exports.Permission = exports.SMSCustomMessage = void 0;
|
7
|
+
exports.pbSequelize = exports.Dispute = exports.DefaultCompliancePolicy = exports.ParlaysOnBets = exports.OddsOnParlays = exports.OddsOnBets = exports.ComplianceRuleSportsbook = exports.Parlay = exports.Odd = exports.AffiliateLink = exports.MarketOnLeague = exports.League = exports.ComplianceRule = exports.Sportsbook = exports.Market = exports.BetSport = exports.SendgridDomain = exports.SendgridIpPool = exports.SendgridEmailSubAccount = exports.PhoneNumberAssignment = exports.MarketingPhoneNumber = exports.Segment = exports.Trigger = exports.CampaignMessage = exports.Campaign = exports.CampaignTemplate = exports.CreatorServiceFee = exports.UserCookiePreference = exports.CouponRedemptions = exports.UserTransactionLocation = exports.UserReview = exports.PumpingRiskScoreMonitoring = exports.UsersOnPermissions = exports.Permission = exports.SMSCustomMessage = void 0;
|
8
8
|
var content_like_1 = require("./content-like");
|
9
9
|
Object.defineProperty(exports, "ContentLike", { enumerable: true, get: function () { return __importDefault(content_like_1).default; } });
|
10
10
|
var transaction_1 = require("./transaction");
|
@@ -171,6 +171,8 @@ var parlays_on_bets_1 = require("./parlays-on-bets");
|
|
171
171
|
Object.defineProperty(exports, "ParlaysOnBets", { enumerable: true, get: function () { return __importDefault(parlays_on_bets_1).default; } });
|
172
172
|
var default_compliance_policy_1 = require("./default-compliance-policy");
|
173
173
|
Object.defineProperty(exports, "DefaultCompliancePolicy", { enumerable: true, get: function () { return __importDefault(default_compliance_policy_1).default; } });
|
174
|
+
var dispute_1 = require("./dispute");
|
175
|
+
Object.defineProperty(exports, "Dispute", { enumerable: true, get: function () { return __importDefault(dispute_1).default; } });
|
174
176
|
var pb_sequelize_1 = require("./pb-sequelize");
|
175
177
|
Object.defineProperty(exports, "pbSequelize", { enumerable: true, get: function () { return __importDefault(pb_sequelize_1).default; } });
|
176
178
|
//# sourceMappingURL=index.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../typed-model/index.ts"],"names":[],"mappings":"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
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../typed-model/index.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,60 @@
|
|
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
|
+
const sequelize_1 = require("sequelize");
|
7
|
+
const league_1 = __importDefault(require("./league"));
|
8
|
+
const pb_sequelize_1 = __importDefault(require("./pb-sequelize"));
|
9
|
+
const user_1 = __importDefault(require("./user"));
|
10
|
+
// order of InferAttributes & InferCreationAttributes is important.
|
11
|
+
class LeagueOnUsers extends sequelize_1.Model {
|
12
|
+
}
|
13
|
+
LeagueOnUsers.init({
|
14
|
+
id: {
|
15
|
+
type: sequelize_1.DataTypes.BIGINT,
|
16
|
+
primaryKey: true,
|
17
|
+
allowNull: false,
|
18
|
+
defaultValue: pb_sequelize_1.default.fn("next_id"),
|
19
|
+
},
|
20
|
+
leagueId: {
|
21
|
+
type: sequelize_1.DataTypes.BIGINT,
|
22
|
+
field: "league_id",
|
23
|
+
allowNull: false,
|
24
|
+
},
|
25
|
+
userId: {
|
26
|
+
type: sequelize_1.DataTypes.BIGINT,
|
27
|
+
field: "user_id",
|
28
|
+
allowNull: false,
|
29
|
+
},
|
30
|
+
createdAt: sequelize_1.DataTypes.DATE,
|
31
|
+
updatedAt: sequelize_1.DataTypes.DATE,
|
32
|
+
}, {
|
33
|
+
// Other model options go here
|
34
|
+
tableName: "league_on_users",
|
35
|
+
sequelize: pb_sequelize_1.default,
|
36
|
+
});
|
37
|
+
LeagueOnUsers.hasOne(league_1.default, {
|
38
|
+
foreignKey: "id",
|
39
|
+
sourceKey: "leagueId",
|
40
|
+
onDelete: "NO ACTION",
|
41
|
+
constraints: false,
|
42
|
+
});
|
43
|
+
league_1.default.hasMany(LeagueOnUsers, {
|
44
|
+
foreignKey: "leagueId",
|
45
|
+
onDelete: "NO ACTION",
|
46
|
+
constraints: false,
|
47
|
+
});
|
48
|
+
LeagueOnUsers.hasOne(user_1.default, {
|
49
|
+
foreignKey: "id",
|
50
|
+
sourceKey: "userId",
|
51
|
+
onDelete: "NO ACTION",
|
52
|
+
constraints: false,
|
53
|
+
});
|
54
|
+
user_1.default.hasMany(LeagueOnUsers, {
|
55
|
+
foreignKey: "userId",
|
56
|
+
onDelete: "NO ACTION",
|
57
|
+
constraints: false,
|
58
|
+
});
|
59
|
+
exports.default = LeagueOnUsers;
|
60
|
+
//# sourceMappingURL=league-on-users.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"league-on-users.js","sourceRoot":"","sources":["../../typed-model/league-on-users.ts"],"names":[],"mappings":";;;;;AAAA,yCAMmB;AACnB,sDAA8B;AAE9B,kEAAuC;AACvC,kDAA0B;AAE1B,mEAAmE;AACnE,MAAM,aAAc,SAAQ,iBAG3B;CAQA;AAED,aAAa,CAAC,IAAI,CAChB;IACE,EAAE,EAAE;QACF,IAAI,EAAE,qBAAS,CAAC,MAAM;QACtB,UAAU,EAAE,IAAI;QAChB,SAAS,EAAE,KAAK;QAChB,YAAY,EAAE,sBAAS,CAAC,EAAE,CAAC,SAAS,CAAC;KACtC;IACD,QAAQ,EAAE;QACR,IAAI,EAAE,qBAAS,CAAC,MAAM;QACtB,KAAK,EAAE,WAAW;QAClB,SAAS,EAAE,KAAK;KACjB;IACD,MAAM,EAAE;QACN,IAAI,EAAE,qBAAS,CAAC,MAAM;QACtB,KAAK,EAAE,SAAS;QAChB,SAAS,EAAE,KAAK;KACjB;IACD,SAAS,EAAE,qBAAS,CAAC,IAAI;IACzB,SAAS,EAAE,qBAAS,CAAC,IAAI;CAC1B,EACD;IACE,8BAA8B;IAC9B,SAAS,EAAE,iBAAiB;IAC5B,SAAS,EAAT,sBAAS;CACV,CACF,CAAC;AAEF,aAAa,CAAC,MAAM,CAAC,gBAAM,EAAE;IAC3B,UAAU,EAAE,IAAI;IAChB,SAAS,EAAE,UAAU;IACrB,QAAQ,EAAE,WAAW;IACrB,WAAW,EAAE,KAAK;CACnB,CAAC,CAAC;AAEH,gBAAM,CAAC,OAAO,CAAC,aAAa,EAAE;IAC5B,UAAU,EAAE,UAAU;IACtB,QAAQ,EAAE,WAAW;IACrB,WAAW,EAAE,KAAK;CACnB,CAAC,CAAC;AAEH,aAAa,CAAC,MAAM,CAAC,cAAI,EAAE;IACzB,UAAU,EAAE,IAAI;IAChB,SAAS,EAAE,QAAQ;IACnB,QAAQ,EAAE,WAAW;IACrB,WAAW,EAAE,KAAK;CACnB,CAAC,CAAC;AAEH,cAAI,CAAC,OAAO,CAAC,aAAa,EAAE;IAC1B,UAAU,EAAE,QAAQ;IACpB,QAAQ,EAAE,WAAW;IACrB,WAAW,EAAE,KAAK;CACnB,CAAC,CAAC;AAEH,kBAAe,aAAa,CAAC"}
|
@@ -0,0 +1,58 @@
|
|
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
|
+
const sequelize_1 = require("sequelize");
|
7
|
+
const pb_sequelize_1 = __importDefault(require("./pb-sequelize"));
|
8
|
+
const types_1 = require("../src/types");
|
9
|
+
const bet_sport_1 = __importDefault(require("./bet-sport"));
|
10
|
+
const market_1 = __importDefault(require("./market"));
|
11
|
+
// order of InferAttributes & InferCreationAttributes is important.
|
12
|
+
class MarketOnBetSport extends sequelize_1.Model {
|
13
|
+
}
|
14
|
+
MarketOnBetSport.init({
|
15
|
+
betSportId: {
|
16
|
+
type: sequelize_1.DataTypes.BIGINT,
|
17
|
+
allowNull: false,
|
18
|
+
references: {
|
19
|
+
model: bet_sport_1.default,
|
20
|
+
key: "id",
|
21
|
+
},
|
22
|
+
field: "bet_sport_id",
|
23
|
+
},
|
24
|
+
marketId: {
|
25
|
+
type: sequelize_1.DataTypes.BIGINT,
|
26
|
+
allowNull: false,
|
27
|
+
references: {
|
28
|
+
model: market_1.default,
|
29
|
+
key: "id",
|
30
|
+
},
|
31
|
+
field: "market_id",
|
32
|
+
},
|
33
|
+
status: {
|
34
|
+
type: sequelize_1.DataTypes.ENUM(...Object.values(types_1.StatusType)),
|
35
|
+
allowNull: false,
|
36
|
+
},
|
37
|
+
}, {
|
38
|
+
tableName: "markets_on_bet_sports",
|
39
|
+
comment: "Junction table that relates a bet_sport to a market",
|
40
|
+
timestamps: false,
|
41
|
+
sequelize: pb_sequelize_1.default,
|
42
|
+
});
|
43
|
+
bet_sport_1.default.belongsToMany(market_1.default, {
|
44
|
+
through: MarketOnBetSport,
|
45
|
+
foreignKey: "betSportId",
|
46
|
+
sourceKey: "id",
|
47
|
+
onDelete: "NO ACTION",
|
48
|
+
constraints: false,
|
49
|
+
});
|
50
|
+
market_1.default.belongsToMany(bet_sport_1.default, {
|
51
|
+
through: MarketOnBetSport,
|
52
|
+
foreignKey: "marketId",
|
53
|
+
sourceKey: "id",
|
54
|
+
onDelete: "NO ACTION",
|
55
|
+
constraints: false,
|
56
|
+
});
|
57
|
+
exports.default = MarketOnBetSport;
|
58
|
+
//# sourceMappingURL=market-on-bet-sport.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"market-on-bet-sport.js","sourceRoot":"","sources":["../../typed-model/market-on-bet-sport.ts"],"names":[],"mappings":";;;;;AAAA,yCAOmB;AAEnB,kEAAuC;AACvC,wCAA0C;AAC1C,4DAAmC;AACnC,sDAA8B;AAE9B,mEAAmE;AACnE,MAAM,gBAAiB,SAAQ,iBAG9B;CAMA;AAED,gBAAgB,CAAC,IAAI,CACnB;IACE,UAAU,EAAE;QACV,IAAI,EAAE,qBAAS,CAAC,MAAM;QACtB,SAAS,EAAE,KAAK;QAChB,UAAU,EAAE;YACV,KAAK,EAAE,mBAAQ;YACf,GAAG,EAAE,IAAI;SACV;QACD,KAAK,EAAE,cAAc;KACtB;IACD,QAAQ,EAAE;QACR,IAAI,EAAE,qBAAS,CAAC,MAAM;QACtB,SAAS,EAAE,KAAK;QAChB,UAAU,EAAE;YACV,KAAK,EAAE,gBAAM;YACb,GAAG,EAAE,IAAI;SACV;QACD,KAAK,EAAE,WAAW;KACnB;IACD,MAAM,EAAE;QACN,IAAI,EAAE,qBAAS,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,kBAAU,CAAC,CAAC;QAClD,SAAS,EAAE,KAAK;KACjB;CACF,EACD;IACE,SAAS,EAAE,uBAAuB;IAClC,OAAO,EAAE,qDAAqD;IAC9D,UAAU,EAAE,KAAK;IACjB,SAAS,EAAT,sBAAS;CACV,CACF,CAAC;AAEF,mBAAQ,CAAC,aAAa,CAAC,gBAAM,EAAE;IAC7B,OAAO,EAAE,gBAAgB;IACzB,UAAU,EAAE,YAAY;IACxB,SAAS,EAAE,IAAI;IACf,QAAQ,EAAE,WAAW;IACrB,WAAW,EAAE,KAAK;CACnB,CAAC,CAAC;AAEH,gBAAM,CAAC,aAAa,CAAC,mBAAQ,EAAE;IAC7B,OAAO,EAAE,gBAAgB;IACzB,UAAU,EAAE,UAAU;IACtB,SAAS,EAAE,IAAI;IACf,QAAQ,EAAE,WAAW;IACrB,WAAW,EAAE,KAAK;CACnB,CAAC,CAAC;AAEH,kBAAe,gBAAgB,CAAC"}
|
@@ -0,0 +1,45 @@
|
|
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
|
+
const sequelize_1 = require("sequelize");
|
7
|
+
const user_1 = __importDefault(require("./user"));
|
8
|
+
const pb_sequelize_1 = __importDefault(require("./pb-sequelize"));
|
9
|
+
class RecurlyPaymentMonitoringWhitelist extends sequelize_1.Model {
|
10
|
+
}
|
11
|
+
RecurlyPaymentMonitoringWhitelist.init({
|
12
|
+
id: {
|
13
|
+
type: sequelize_1.DataTypes.BIGINT,
|
14
|
+
primaryKey: true,
|
15
|
+
allowNull: false,
|
16
|
+
autoIncrement: true,
|
17
|
+
},
|
18
|
+
userId: {
|
19
|
+
type: sequelize_1.DataTypes.BIGINT,
|
20
|
+
allowNull: false,
|
21
|
+
field: "user_id",
|
22
|
+
references: {
|
23
|
+
model: user_1.default,
|
24
|
+
key: "id",
|
25
|
+
},
|
26
|
+
onDelete: "CASCADE",
|
27
|
+
},
|
28
|
+
createdAt: sequelize_1.DataTypes.DATE,
|
29
|
+
}, {
|
30
|
+
sequelize: pb_sequelize_1.default,
|
31
|
+
tableName: "recurly_payment_monitoring_whitelist",
|
32
|
+
timestamps: false,
|
33
|
+
});
|
34
|
+
user_1.default.hasOne(RecurlyPaymentMonitoringWhitelist, {
|
35
|
+
foreignKey: "userId",
|
36
|
+
sourceKey: "id",
|
37
|
+
as: "paymentMonitoringWhitelist",
|
38
|
+
});
|
39
|
+
RecurlyPaymentMonitoringWhitelist.belongsTo(user_1.default, {
|
40
|
+
foreignKey: "userId",
|
41
|
+
targetKey: "id",
|
42
|
+
as: "user",
|
43
|
+
});
|
44
|
+
exports.default = RecurlyPaymentMonitoringWhitelist;
|
45
|
+
//# sourceMappingURL=recurly-payment-monitoring-whitelist.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"recurly-payment-monitoring-whitelist.js","sourceRoot":"","sources":["../../typed-model/recurly-payment-monitoring-whitelist.ts"],"names":[],"mappings":";;;;;AAAA,yCAMmB;AAEnB,kDAA0B;AAE1B,kEAAuC;AAEvC,MAAM,iCAAkC,SAAQ,iBAG/C;CAIA;AAED,iCAAiC,CAAC,IAAI,CACpC;IACE,EAAE,EAAE;QACF,IAAI,EAAE,qBAAS,CAAC,MAAM;QACtB,UAAU,EAAE,IAAI;QAChB,SAAS,EAAE,KAAK;QAChB,aAAa,EAAE,IAAI;KACpB;IACD,MAAM,EAAE;QACN,IAAI,EAAE,qBAAS,CAAC,MAAM;QACtB,SAAS,EAAE,KAAK;QAChB,KAAK,EAAE,SAAS;QAChB,UAAU,EAAE;YACV,KAAK,EAAE,cAAI;YACX,GAAG,EAAE,IAAI;SACV;QACD,QAAQ,EAAE,SAAS;KACpB;IACD,SAAS,EAAE,qBAAS,CAAC,IAAI;CAC1B,EACD;IACE,SAAS,EAAT,sBAAS;IACT,SAAS,EAAE,sCAAsC;IACjD,UAAU,EAAE,KAAK;CAClB,CACF,CAAC;AAGF,cAAI,CAAC,MAAM,CAAC,iCAAiC,EAAE;IAC7C,UAAU,EAAE,QAAQ;IACpB,SAAS,EAAE,IAAI;IACf,EAAE,EAAE,4BAA4B;CACjC,CAAC,CAAC;AAEH,iCAAiC,CAAC,SAAS,CAAC,cAAI,EAAE;IAChD,UAAU,EAAE,QAAQ;IACpB,SAAS,EAAE,IAAI;IACf,EAAE,EAAE,MAAM;CACX,CAAC,CAAC;AAEH,kBAAe,iCAAiC,CAAC"}
|
@@ -0,0 +1,29 @@
|
|
1
|
+
require("dotenv").config();
|
2
|
+
|
3
|
+
module.exports = {
|
4
|
+
development: {
|
5
|
+
dialect: "postgres",
|
6
|
+
host: process.env.TS_DB_HOST,
|
7
|
+
port: process.env.TS_DB_PORT,
|
8
|
+
database: process.env.TS_DB_NAME,
|
9
|
+
username: process.env.TS_DB_USER,
|
10
|
+
password: process.env.TS_DB_PASSWORD,
|
11
|
+
dialectOptions: {
|
12
|
+
ssl: false,
|
13
|
+
},
|
14
|
+
},
|
15
|
+
production: {
|
16
|
+
dialect: "postgres",
|
17
|
+
host: process.env.TS_DB_HOST,
|
18
|
+
port: process.env.TS_DB_PORT,
|
19
|
+
database: process.env.TS_DB_NAME,
|
20
|
+
username: process.env.TS_DB_USER,
|
21
|
+
password: process.env.TS_DB_PASSWORD,
|
22
|
+
dialectOptions: {
|
23
|
+
ssl: {
|
24
|
+
require: true,
|
25
|
+
rejectUnauthorized: false,
|
26
|
+
},
|
27
|
+
},
|
28
|
+
},
|
29
|
+
};
|
package/package.json
CHANGED
@@ -0,0 +1,149 @@
|
|
1
|
+
import {
|
2
|
+
Model,
|
3
|
+
InferAttributes,
|
4
|
+
InferCreationAttributes,
|
5
|
+
CreationOptional,
|
6
|
+
DataTypes,
|
7
|
+
} from "sequelize";
|
8
|
+
|
9
|
+
import sequelize from "./pb-sequelize";
|
10
|
+
import Transaction from "./transaction";
|
11
|
+
|
12
|
+
type DisputeAlertType = "ethoca" | "cdrn" | "visa_rdr" | "n_a";
|
13
|
+
|
14
|
+
type DisputeStatus = "in_progress" | "won" | "lost";
|
15
|
+
|
16
|
+
class Dispute extends Model<
|
17
|
+
InferAttributes<Dispute>,
|
18
|
+
InferCreationAttributes<Dispute>
|
19
|
+
> {
|
20
|
+
declare id: CreationOptional<string>;
|
21
|
+
declare transactionId: string;
|
22
|
+
declare fightbackAmountInCents: number;
|
23
|
+
declare disputeAlertType: DisputeAlertType;
|
24
|
+
declare disputeReasonCode?: string;
|
25
|
+
declare status: DisputeStatus;
|
26
|
+
declare createdAt: CreationOptional<Date>;
|
27
|
+
declare updatedAt: CreationOptional<Date>;
|
28
|
+
|
29
|
+
static getById: (id: string) => Promise<Dispute | null>;
|
30
|
+
static getByTransactionId: (transactionId: string) => Promise<Dispute | null>;
|
31
|
+
static getAllByStatus: (status: DisputeStatus) => Promise<Dispute[]>;
|
32
|
+
}
|
33
|
+
|
34
|
+
Dispute.init(
|
35
|
+
{
|
36
|
+
id: {
|
37
|
+
type: DataTypes.BIGINT,
|
38
|
+
primaryKey: true,
|
39
|
+
allowNull: false,
|
40
|
+
defaultValue: sequelize.fn("next_id"),
|
41
|
+
},
|
42
|
+
transactionId: {
|
43
|
+
type: DataTypes.BIGINT,
|
44
|
+
field: "transaction_id",
|
45
|
+
allowNull: false,
|
46
|
+
references: {
|
47
|
+
model: "transactions",
|
48
|
+
key: "id",
|
49
|
+
},
|
50
|
+
},
|
51
|
+
fightbackAmountInCents: {
|
52
|
+
type: DataTypes.INTEGER,
|
53
|
+
field: "fightback_amount_in_cents",
|
54
|
+
allowNull: false,
|
55
|
+
},
|
56
|
+
disputeAlertType: {
|
57
|
+
type: DataTypes.ENUM("ethoca", "cdrn", "visa_rdr", "n_a"),
|
58
|
+
field: "dispute_alert_type",
|
59
|
+
allowNull: false,
|
60
|
+
},
|
61
|
+
disputeReasonCode: {
|
62
|
+
type: DataTypes.STRING,
|
63
|
+
field: "dispute_reason_code",
|
64
|
+
allowNull: true,
|
65
|
+
},
|
66
|
+
status: {
|
67
|
+
type: DataTypes.ENUM("in_progress", "won", "lost"),
|
68
|
+
field: "status",
|
69
|
+
allowNull: false,
|
70
|
+
defaultValue: "in_progress",
|
71
|
+
},
|
72
|
+
createdAt: DataTypes.DATE,
|
73
|
+
updatedAt: DataTypes.DATE,
|
74
|
+
},
|
75
|
+
{
|
76
|
+
tableName: "disputes",
|
77
|
+
sequelize,
|
78
|
+
indexes: [
|
79
|
+
{
|
80
|
+
fields: ["transaction_id"],
|
81
|
+
unique: true,
|
82
|
+
},
|
83
|
+
{
|
84
|
+
fields: ["status"],
|
85
|
+
},
|
86
|
+
{
|
87
|
+
fields: ["dispute_alert_type"],
|
88
|
+
},
|
89
|
+
],
|
90
|
+
}
|
91
|
+
);
|
92
|
+
|
93
|
+
Dispute.getById = async (id: string) => {
|
94
|
+
return await Dispute.findOne({
|
95
|
+
where: {
|
96
|
+
id,
|
97
|
+
},
|
98
|
+
include: [
|
99
|
+
{
|
100
|
+
model: Transaction,
|
101
|
+
as: "transaction",
|
102
|
+
},
|
103
|
+
],
|
104
|
+
});
|
105
|
+
};
|
106
|
+
|
107
|
+
Dispute.getByTransactionId = async (transactionId: string) => {
|
108
|
+
return await Dispute.findOne({
|
109
|
+
where: {
|
110
|
+
transactionId,
|
111
|
+
},
|
112
|
+
include: [
|
113
|
+
{
|
114
|
+
model: Transaction,
|
115
|
+
as: "transaction",
|
116
|
+
},
|
117
|
+
],
|
118
|
+
});
|
119
|
+
};
|
120
|
+
|
121
|
+
Dispute.getAllByStatus = async (status: DisputeStatus) => {
|
122
|
+
return await Dispute.findAll({
|
123
|
+
where: {
|
124
|
+
status,
|
125
|
+
},
|
126
|
+
include: [
|
127
|
+
{
|
128
|
+
model: Transaction,
|
129
|
+
as: "transaction",
|
130
|
+
},
|
131
|
+
],
|
132
|
+
});
|
133
|
+
};
|
134
|
+
|
135
|
+
Transaction.hasOne(Dispute, {
|
136
|
+
foreignKey: "transactionId",
|
137
|
+
onDelete: "CASCADE",
|
138
|
+
constraints: true,
|
139
|
+
});
|
140
|
+
|
141
|
+
Dispute.belongsTo(Transaction, {
|
142
|
+
as: "transaction",
|
143
|
+
foreignKey: "transactionId",
|
144
|
+
onDelete: "CASCADE",
|
145
|
+
constraints: true,
|
146
|
+
});
|
147
|
+
|
148
|
+
export default Dispute;
|
149
|
+
export { DisputeAlertType, DisputeStatus };
|
package/typed-model/index.ts
CHANGED
@@ -81,5 +81,6 @@ export { default as OddsOnBets } from "./odds-on-bets";
|
|
81
81
|
export { default as OddsOnParlays } from "./odds-on-parlays";
|
82
82
|
export { default as ParlaysOnBets } from "./parlays-on-bets";
|
83
83
|
export { default as DefaultCompliancePolicy } from "./default-compliance-policy";
|
84
|
+
export { default as Dispute } from "./dispute";
|
84
85
|
|
85
86
|
export { default as pbSequelize } from "./pb-sequelize";
|