@winible/winible-typed 2.14.1 → 2.15.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/typed-model/free-subscription-plan.js +57 -0
- package/dist/typed-model/free-subscription-plan.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-user.js +60 -0
- package/dist/typed-model/league-user.js.map +1 -0
- package/dist/typed-model/subscribers-on-creators.js +16 -0
- package/dist/typed-model/subscribers-on-creators.js.map +1 -1
- package/package.json +1 -1
- package/typed-model/free-subscription-plan.ts +80 -0
- package/typed-model/index.ts +1 -0
- package/typed-model/subscribers-on-creators.ts +20 -1
@@ -0,0 +1,57 @@
|
|
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 user_1 = __importDefault(require("./user"));
|
9
|
+
// order of InferAttributes & InferCreationAttributes is important.
|
10
|
+
class FreeSubscriptionPlan extends sequelize_1.Model {
|
11
|
+
}
|
12
|
+
FreeSubscriptionPlan.init({
|
13
|
+
id: {
|
14
|
+
type: sequelize_1.DataTypes.BIGINT,
|
15
|
+
primaryKey: true,
|
16
|
+
allowNull: false,
|
17
|
+
defaultValue: pb_sequelize_1.default.fn("next_id"),
|
18
|
+
},
|
19
|
+
userId: {
|
20
|
+
type: sequelize_1.DataTypes.BIGINT,
|
21
|
+
allowNull: false,
|
22
|
+
field: "user_id",
|
23
|
+
references: {
|
24
|
+
model: user_1.default,
|
25
|
+
},
|
26
|
+
},
|
27
|
+
planName: {
|
28
|
+
type: sequelize_1.DataTypes.STRING,
|
29
|
+
field: "plan_name",
|
30
|
+
},
|
31
|
+
planDescription: {
|
32
|
+
type: sequelize_1.DataTypes.STRING(1000),
|
33
|
+
field: "plan_description",
|
34
|
+
},
|
35
|
+
isArchived: {
|
36
|
+
type: sequelize_1.DataTypes.BOOLEAN,
|
37
|
+
field: "is_archived",
|
38
|
+
defaultValue: false,
|
39
|
+
},
|
40
|
+
createdAt: sequelize_1.DataTypes.DATE,
|
41
|
+
updatedAt: sequelize_1.DataTypes.DATE,
|
42
|
+
}, {
|
43
|
+
tableName: "free_subscription_plans",
|
44
|
+
sequelize: pb_sequelize_1.default,
|
45
|
+
});
|
46
|
+
user_1.default.hasMany(FreeSubscriptionPlan, {
|
47
|
+
foreignKey: "userId",
|
48
|
+
sourceKey: "id",
|
49
|
+
onDelete: "NO ACTION",
|
50
|
+
constraints: false,
|
51
|
+
});
|
52
|
+
FreeSubscriptionPlan.hasOne(user_1.default, {
|
53
|
+
foreignKey: "id",
|
54
|
+
sourceKey: "userId",
|
55
|
+
});
|
56
|
+
exports.default = FreeSubscriptionPlan;
|
57
|
+
//# sourceMappingURL=free-subscription-plan.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"free-subscription-plan.js","sourceRoot":"","sources":["../../typed-model/free-subscription-plan.ts"],"names":[],"mappings":";;;;;AAAA,yCAMmB;AAEnB,kEAAuC;AACvC,kDAA0B;AAE1B,mEAAmE;AACnE,MAAM,oBAAqB,SAAQ,iBAGlC;CAWA;AAED,oBAAoB,CAAC,IAAI,CACvB;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,MAAM,EAAE;QACN,IAAI,EAAE,qBAAS,CAAC,MAAM;QACtB,SAAS,EAAE,KAAK;QAChB,KAAK,EAAE,SAAS;QAChB,UAAU,EAAE;YACV,KAAK,EAAE,cAAI;SACZ;KACF;IACD,QAAQ,EAAE;QACR,IAAI,EAAE,qBAAS,CAAC,MAAM;QACtB,KAAK,EAAE,WAAW;KACnB;IACD,eAAe,EAAE;QACf,IAAI,EAAE,qBAAS,CAAC,MAAM,CAAC,IAAI,CAAC;QAC5B,KAAK,EAAE,kBAAkB;KAC1B;IACD,UAAU,EAAE;QACV,IAAI,EAAE,qBAAS,CAAC,OAAO;QACvB,KAAK,EAAE,aAAa;QACpB,YAAY,EAAE,KAAK;KACpB;IAED,SAAS,EAAE,qBAAS,CAAC,IAAI;IACzB,SAAS,EAAE,qBAAS,CAAC,IAAI;CAC1B,EACD;IACE,SAAS,EAAE,yBAAyB;IACpC,SAAS,EAAT,sBAAS;CACV,CACF,CAAC;AAEF,cAAI,CAAC,OAAO,CAAC,oBAAoB,EAAE;IACjC,UAAU,EAAE,QAAQ;IACpB,SAAS,EAAE,IAAI;IACf,QAAQ,EAAE,WAAW;IACrB,WAAW,EAAE,KAAK;CACnB,CAAC,CAAC;AAEH,oBAAoB,CAAC,MAAM,CAAC,cAAI,EAAE;IAChC,UAAU,EAAE,IAAI;IAChB,SAAS,EAAE,QAAQ;CACpB,CAAC,CAAC;AAEH,kBAAe,oBAAoB,CAAC"}
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
4
4
|
};
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
6
|
-
exports.pbSequelize = exports.DiscordIntegration = exports.SportOnPosts = exports.Sport = exports.Integration = exports.UsersOnCreators = exports.Store = exports.Application = exports.NotificationPreference = exports.SubscribersOnCreators = exports.SubscriptionPricingOptionOnCoupons = exports.User = exports.LeagueOnUsers = exports.League = exports.Withdrawal = exports.RecurlyAccount = exports.SubscriptionPricingOption = exports.SubscriptionCoupon = exports.SubscriptionPlanOnPost = exports.SubscriptionPlanOnUsers = exports.SubscriptionPlan = exports.PostsOnUsers = exports.Post = exports.Notification = exports.Media = exports.MediaAsset = exports.Transaction = exports.ContentLike = void 0;
|
6
|
+
exports.pbSequelize = exports.DiscordIntegration = exports.SportOnPosts = exports.Sport = exports.Integration = exports.UsersOnCreators = exports.Store = exports.Application = exports.NotificationPreference = exports.SubscribersOnCreators = exports.SubscriptionPricingOptionOnCoupons = exports.User = exports.LeagueOnUsers = exports.League = exports.Withdrawal = exports.RecurlyAccount = exports.FreeSubscriptionPlan = exports.SubscriptionPricingOption = exports.SubscriptionCoupon = exports.SubscriptionPlanOnPost = exports.SubscriptionPlanOnUsers = exports.SubscriptionPlan = exports.PostsOnUsers = exports.Post = exports.Notification = exports.Media = exports.MediaAsset = exports.Transaction = exports.ContentLike = void 0;
|
7
7
|
var content_like_1 = require("./content-like");
|
8
8
|
Object.defineProperty(exports, "ContentLike", { enumerable: true, get: function () { return __importDefault(content_like_1).default; } });
|
9
9
|
var transaction_1 = require("./transaction");
|
@@ -28,6 +28,8 @@ var subscription_coupon_1 = require("./subscription-coupon");
|
|
28
28
|
Object.defineProperty(exports, "SubscriptionCoupon", { enumerable: true, get: function () { return __importDefault(subscription_coupon_1).default; } });
|
29
29
|
var subscription_pricing_option_1 = require("./subscription-pricing-option");
|
30
30
|
Object.defineProperty(exports, "SubscriptionPricingOption", { enumerable: true, get: function () { return __importDefault(subscription_pricing_option_1).default; } });
|
31
|
+
var free_subscription_plan_1 = require("./free-subscription-plan");
|
32
|
+
Object.defineProperty(exports, "FreeSubscriptionPlan", { enumerable: true, get: function () { return __importDefault(free_subscription_plan_1).default; } });
|
31
33
|
var recurly_account_1 = require("./recurly-account");
|
32
34
|
Object.defineProperty(exports, "RecurlyAccount", { enumerable: true, get: function () { return __importDefault(recurly_account_1).default; } });
|
33
35
|
var withdrawal_1 = require("./withdrawal");
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../typed-model/index.ts"],"names":[],"mappings":";;;;;;AAAA,+CAAwD;AAA/C,4HAAA,OAAO,OAAe;AAC/B,6CAAuD;AAA9C,2HAAA,OAAO,OAAe;AAC/B,6CAAsD;AAA7C,0HAAA,OAAO,OAAc;AAC9B,iCAA2C;AAAlC,+GAAA,OAAO,OAAS;AACzB,+CAAyD;AAAhD,6HAAA,OAAO,OAAgB;AAChC,+BAAyC;AAAhC,6GAAA,OAAO,OAAQ;AACxB,mDAA2D;AAAlD,+HAAA,OAAO,OAAgB;AAChC,yDAAkE;AAAzD,sIAAA,OAAO,OAAoB;AACpC,2EAAkF;AAAzE,sJAAA,OAAO,OAA2B;AAC3C,yEAAgF;AAAvE,oJAAA,OAAO,OAA0B;AAC1C,6DAAsE;AAA7D,0IAAA,OAAO,OAAsB;AACtC,6EAAqF;AAA5E,yJAAA,OAAO,OAA6B;AAC7C,qDAA8D;AAArD,kIAAA,OAAO,OAAkB;AAClC,2CAAqD;AAA5C,yHAAA,OAAO,OAAc;AAC9B,mCAA6C;AAApC,iHAAA,OAAO,OAAU;AAC1B,qDAA6D;AAApD,iIAAA,OAAO,OAAiB;AACjC,+BAAyC;AAAhC,6GAAA,OAAO,OAAQ;AACxB,mGAAyG;AAAhG,6KAAA,OAAO,OAAsC;AACtD,qEAA6E;AAApE,iJAAA,OAAO,OAAyB;AACzC,qEAA8E;AAArE,kJAAA,OAAO,OAA0B;AAC1C,6CAAuD;AAA9C,2HAAA,OAAO,OAAe;AAC/B,iCAA2C;AAAlC,+GAAA,OAAO,OAAS;AACzB,yDAAiE;AAAxD,qIAAA,OAAO,OAAmB;AACnC,6CAAuD;AAA9C,2HAAA,OAAO,OAAe;AAC/B,iCAA2C;AAAlC,+GAAA,OAAO,OAAS;AACzB,mDAA2D;AAAlD,+HAAA,OAAO,OAAgB;AAChC,6DAAsE;AAA7D,0IAAA,OAAO,OAAsB;AACtC,+CAAwD;AAA/C,4HAAA,OAAO,OAAe"}
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../typed-model/index.ts"],"names":[],"mappings":";;;;;;AAAA,+CAAwD;AAA/C,4HAAA,OAAO,OAAe;AAC/B,6CAAuD;AAA9C,2HAAA,OAAO,OAAe;AAC/B,6CAAsD;AAA7C,0HAAA,OAAO,OAAc;AAC9B,iCAA2C;AAAlC,+GAAA,OAAO,OAAS;AACzB,+CAAyD;AAAhD,6HAAA,OAAO,OAAgB;AAChC,+BAAyC;AAAhC,6GAAA,OAAO,OAAQ;AACxB,mDAA2D;AAAlD,+HAAA,OAAO,OAAgB;AAChC,yDAAkE;AAAzD,sIAAA,OAAO,OAAoB;AACpC,2EAAkF;AAAzE,sJAAA,OAAO,OAA2B;AAC3C,yEAAgF;AAAvE,oJAAA,OAAO,OAA0B;AAC1C,6DAAsE;AAA7D,0IAAA,OAAO,OAAsB;AACtC,6EAAqF;AAA5E,yJAAA,OAAO,OAA6B;AAC7C,mEAA2E;AAAlE,+IAAA,OAAO,OAAwB;AACxC,qDAA8D;AAArD,kIAAA,OAAO,OAAkB;AAClC,2CAAqD;AAA5C,yHAAA,OAAO,OAAc;AAC9B,mCAA6C;AAApC,iHAAA,OAAO,OAAU;AAC1B,qDAA6D;AAApD,iIAAA,OAAO,OAAiB;AACjC,+BAAyC;AAAhC,6GAAA,OAAO,OAAQ;AACxB,mGAAyG;AAAhG,6KAAA,OAAO,OAAsC;AACtD,qEAA6E;AAApE,iJAAA,OAAO,OAAyB;AACzC,qEAA8E;AAArE,kJAAA,OAAO,OAA0B;AAC1C,6CAAuD;AAA9C,2HAAA,OAAO,OAAe;AAC/B,iCAA2C;AAAlC,+GAAA,OAAO,OAAS;AACzB,yDAAiE;AAAxD,qIAAA,OAAO,OAAmB;AACnC,6CAAuD;AAA9C,2HAAA,OAAO,OAAe;AAC/B,iCAA2C;AAAlC,+GAAA,OAAO,OAAS;AACzB,mDAA2D;AAAlD,+HAAA,OAAO,OAAgB;AAChC,6DAAsE;AAA7D,0IAAA,OAAO,OAAsB;AACtC,+CAAwD;AAA/C,4HAAA,OAAO,OAAe"}
|
@@ -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 LeagueUser extends sequelize_1.Model {
|
12
|
+
}
|
13
|
+
LeagueUser.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_users",
|
35
|
+
sequelize: pb_sequelize_1.default,
|
36
|
+
});
|
37
|
+
LeagueUser.hasOne(league_1.default, {
|
38
|
+
foreignKey: "id",
|
39
|
+
sourceKey: "leagueId",
|
40
|
+
onDelete: "NO ACTION",
|
41
|
+
constraints: false,
|
42
|
+
});
|
43
|
+
league_1.default.hasMany(LeagueUser, {
|
44
|
+
foreignKey: "leagueId",
|
45
|
+
onDelete: "NO ACTION",
|
46
|
+
constraints: false,
|
47
|
+
});
|
48
|
+
LeagueUser.hasOne(user_1.default, {
|
49
|
+
foreignKey: "id",
|
50
|
+
sourceKey: "userId",
|
51
|
+
onDelete: "NO ACTION",
|
52
|
+
constraints: false,
|
53
|
+
});
|
54
|
+
user_1.default.hasMany(LeagueUser, {
|
55
|
+
foreignKey: "userId",
|
56
|
+
onDelete: "NO ACTION",
|
57
|
+
constraints: false,
|
58
|
+
});
|
59
|
+
exports.default = LeagueUser;
|
60
|
+
//# sourceMappingURL=league-user.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"league-user.js","sourceRoot":"","sources":["../../typed-model/league-user.ts"],"names":[],"mappings":";;;;;AAAA,yCAMmB;AACnB,sDAA8B;AAE9B,kEAAuC;AACvC,kDAA0B;AAE1B,mEAAmE;AACnE,MAAM,UAAW,SAAQ,iBAGxB;CAQA;AAED,UAAU,CAAC,IAAI,CACb;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,cAAc;IACzB,SAAS,EAAT,sBAAS;CACV,CACF,CAAC;AAEF,UAAU,CAAC,MAAM,CAAC,gBAAM,EAAE;IACxB,UAAU,EAAE,IAAI;IAChB,SAAS,EAAE,UAAU;IACrB,QAAQ,EAAE,WAAW;IACrB,WAAW,EAAE,KAAK;CACnB,CAAC,CAAC;AAEH,gBAAM,CAAC,OAAO,CAAC,UAAU,EAAE;IACzB,UAAU,EAAE,UAAU;IACtB,QAAQ,EAAE,WAAW;IACrB,WAAW,EAAE,KAAK;CACnB,CAAC,CAAC;AAEH,UAAU,CAAC,MAAM,CAAC,cAAI,EAAE;IACtB,UAAU,EAAE,IAAI;IAChB,SAAS,EAAE,QAAQ;IACnB,QAAQ,EAAE,WAAW;IACrB,WAAW,EAAE,KAAK;CACnB,CAAC,CAAC;AAEH,cAAI,CAAC,OAAO,CAAC,UAAU,EAAE;IACvB,UAAU,EAAE,QAAQ;IACpB,QAAQ,EAAE,WAAW;IACrB,WAAW,EAAE,KAAK;CACnB,CAAC,CAAC;AAEH,kBAAe,UAAU,CAAC"}
|
@@ -32,6 +32,13 @@ SubscribersOnCreators.init({
|
|
32
32
|
model: _1.User,
|
33
33
|
},
|
34
34
|
},
|
35
|
+
freeSubscriptionPlanId: {
|
36
|
+
type: sequelize_1.DataTypes.BIGINT,
|
37
|
+
field: "free_subscription_plan_id",
|
38
|
+
references: {
|
39
|
+
model: _1.FreeSubscriptionPlan,
|
40
|
+
},
|
41
|
+
},
|
35
42
|
status: {
|
36
43
|
type: sequelize_1.DataTypes.STRING,
|
37
44
|
field: "status",
|
@@ -61,5 +68,14 @@ SubscribersOnCreators.hasMany(_1.User, {
|
|
61
68
|
sourceKey: "subscriberId",
|
62
69
|
onDelete: "NO ACTION",
|
63
70
|
});
|
71
|
+
_1.FreeSubscriptionPlan.hasMany(SubscribersOnCreators, {
|
72
|
+
foreignKey: "freeSubscriptionPlanId",
|
73
|
+
sourceKey: "id",
|
74
|
+
});
|
75
|
+
SubscribersOnCreators.hasMany(_1.FreeSubscriptionPlan, {
|
76
|
+
foreignKey: "id",
|
77
|
+
sourceKey: "freeSubscriptionPlanId",
|
78
|
+
onDelete: "NO ACTION",
|
79
|
+
});
|
64
80
|
exports.default = SubscribersOnCreators;
|
65
81
|
//# sourceMappingURL=subscribers-on-creators.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"subscribers-on-creators.js","sourceRoot":"","sources":["../../typed-model/subscribers-on-creators.ts"],"names":[],"mappings":";;;;;AAAA,yCAMmB;AAEnB,
|
1
|
+
{"version":3,"file":"subscribers-on-creators.js","sourceRoot":"","sources":["../../typed-model/subscribers-on-creators.ts"],"names":[],"mappings":";;;;;AAAA,yCAMmB;AAEnB,wBAA+C;AAE/C,kEAAuC;AAEvC,mEAAmE;AACnE,MAAM,qBAAsB,SAAQ,iBAGnC;CAUA;AAED,qBAAqB,CAAC,IAAI,CACxB;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,MAAM,EAAE;QACN,IAAI,EAAE,qBAAS,CAAC,MAAM;QACtB,SAAS,EAAE,KAAK;QAChB,KAAK,EAAE,SAAS;QAChB,UAAU,EAAE;YACV,KAAK,EAAE,OAAI;SACZ;KACF;IACD,YAAY,EAAE;QACZ,IAAI,EAAE,qBAAS,CAAC,MAAM;QACtB,SAAS,EAAE,KAAK;QAChB,KAAK,EAAE,eAAe;QACtB,UAAU,EAAE;YACV,KAAK,EAAE,OAAI;SACZ;KACF;IACD,sBAAsB,EAAE;QACtB,IAAI,EAAE,qBAAS,CAAC,MAAM;QACtB,KAAK,EAAE,2BAA2B;QAClC,UAAU,EAAE;YACV,KAAK,EAAE,uBAAoB;SAC5B;KACF;IACD,MAAM,EAAE;QACN,IAAI,EAAE,qBAAS,CAAC,MAAM;QACtB,KAAK,EAAE,QAAQ;QACf,YAAY,EAAE,QAAQ;KACvB;IACD,SAAS,EAAE,qBAAS,CAAC,IAAI;IACzB,SAAS,EAAE,qBAAS,CAAC,IAAI;CAC1B,EACD;IACE,SAAS,EAAT,sBAAS;IACT,SAAS,EAAE,yBAAyB;CACrC,CACF,CAAC;AAEF,OAAI,CAAC,OAAO,CAAC,qBAAqB,EAAE;IAClC,UAAU,EAAE,QAAQ;IACpB,SAAS,EAAE,IAAI;CAChB,CAAC,CAAC;AAEH,qBAAqB,CAAC,OAAO,CAAC,OAAI,EAAE;IAClC,UAAU,EAAE,IAAI;IAChB,SAAS,EAAE,QAAQ;IACnB,QAAQ,EAAE,WAAW;CACtB,CAAC,CAAC;AAEH,OAAI,CAAC,OAAO,CAAC,qBAAqB,EAAE;IAClC,UAAU,EAAE,cAAc;IAC1B,SAAS,EAAE,IAAI;CAChB,CAAC,CAAC;AAEH,qBAAqB,CAAC,OAAO,CAAC,OAAI,EAAE;IAClC,UAAU,EAAE,IAAI;IAChB,SAAS,EAAE,cAAc;IACzB,QAAQ,EAAE,WAAW;CACtB,CAAC,CAAC;AAEH,uBAAoB,CAAC,OAAO,CAAC,qBAAqB,EAAE;IAClD,UAAU,EAAE,wBAAwB;IACpC,SAAS,EAAE,IAAI;CAChB,CAAC,CAAC;AAEH,qBAAqB,CAAC,OAAO,CAAC,uBAAoB,EAAE;IAClD,UAAU,EAAE,IAAI;IAChB,SAAS,EAAE,wBAAwB;IACnC,QAAQ,EAAE,WAAW;CACtB,CAAC,CAAC;AAEH,kBAAe,qBAAqB,CAAC"}
|
package/package.json
CHANGED
@@ -0,0 +1,80 @@
|
|
1
|
+
import {
|
2
|
+
Model,
|
3
|
+
InferAttributes,
|
4
|
+
InferCreationAttributes,
|
5
|
+
CreationOptional,
|
6
|
+
DataTypes,
|
7
|
+
} from "sequelize";
|
8
|
+
|
9
|
+
import sequelize from "./pb-sequelize";
|
10
|
+
import User from "./user";
|
11
|
+
|
12
|
+
// order of InferAttributes & InferCreationAttributes is important.
|
13
|
+
class FreeSubscriptionPlan extends Model<
|
14
|
+
InferAttributes<FreeSubscriptionPlan>,
|
15
|
+
InferCreationAttributes<FreeSubscriptionPlan>
|
16
|
+
> {
|
17
|
+
// 'CreationOptional' is a special type that marks the field as optional
|
18
|
+
// when creating an instance of the model (such as using Model.create()).
|
19
|
+
declare id: CreationOptional<string>;
|
20
|
+
declare userId: string;
|
21
|
+
declare planName?: string;
|
22
|
+
declare planDescription?: string;
|
23
|
+
declare isArchived?: boolean;
|
24
|
+
|
25
|
+
declare createdAt: CreationOptional<Date>;
|
26
|
+
declare updatedAt: CreationOptional<Date>;
|
27
|
+
}
|
28
|
+
|
29
|
+
FreeSubscriptionPlan.init(
|
30
|
+
{
|
31
|
+
id: {
|
32
|
+
type: DataTypes.BIGINT,
|
33
|
+
primaryKey: true,
|
34
|
+
allowNull: false,
|
35
|
+
defaultValue: sequelize.fn("next_id"),
|
36
|
+
},
|
37
|
+
userId: {
|
38
|
+
type: DataTypes.BIGINT,
|
39
|
+
allowNull: false,
|
40
|
+
field: "user_id",
|
41
|
+
references: {
|
42
|
+
model: User,
|
43
|
+
},
|
44
|
+
},
|
45
|
+
planName: {
|
46
|
+
type: DataTypes.STRING,
|
47
|
+
field: "plan_name",
|
48
|
+
},
|
49
|
+
planDescription: {
|
50
|
+
type: DataTypes.STRING(1000),
|
51
|
+
field: "plan_description",
|
52
|
+
},
|
53
|
+
isArchived: {
|
54
|
+
type: DataTypes.BOOLEAN,
|
55
|
+
field: "is_archived",
|
56
|
+
defaultValue: false,
|
57
|
+
},
|
58
|
+
|
59
|
+
createdAt: DataTypes.DATE,
|
60
|
+
updatedAt: DataTypes.DATE,
|
61
|
+
},
|
62
|
+
{
|
63
|
+
tableName: "free_subscription_plans",
|
64
|
+
sequelize,
|
65
|
+
}
|
66
|
+
);
|
67
|
+
|
68
|
+
User.hasMany(FreeSubscriptionPlan, {
|
69
|
+
foreignKey: "userId",
|
70
|
+
sourceKey: "id",
|
71
|
+
onDelete: "NO ACTION",
|
72
|
+
constraints: false,
|
73
|
+
});
|
74
|
+
|
75
|
+
FreeSubscriptionPlan.hasOne(User, {
|
76
|
+
foreignKey: "id",
|
77
|
+
sourceKey: "userId",
|
78
|
+
});
|
79
|
+
|
80
|
+
export default FreeSubscriptionPlan;
|
package/typed-model/index.ts
CHANGED
@@ -10,6 +10,7 @@ export { default as SubscriptionPlanOnUsers } from "./subscription-plan-on-users
|
|
10
10
|
export { default as SubscriptionPlanOnPost } from "./subscription-plan-on-post";
|
11
11
|
export { default as SubscriptionCoupon } from "./subscription-coupon";
|
12
12
|
export { default as SubscriptionPricingOption } from "./subscription-pricing-option";
|
13
|
+
export { default as FreeSubscriptionPlan } from "./free-subscription-plan";
|
13
14
|
export { default as RecurlyAccount } from "./recurly-account";
|
14
15
|
export { default as Withdrawal } from "./withdrawal";
|
15
16
|
export { default as League } from "./league";
|
@@ -6,7 +6,7 @@ import {
|
|
6
6
|
DataTypes,
|
7
7
|
} from "sequelize";
|
8
8
|
|
9
|
-
import { User } from ".";
|
9
|
+
import { FreeSubscriptionPlan, User } from ".";
|
10
10
|
|
11
11
|
import sequelize from "./pb-sequelize";
|
12
12
|
|
@@ -20,6 +20,7 @@ class SubscribersOnCreators extends Model<
|
|
20
20
|
declare id: CreationOptional<string>;
|
21
21
|
declare userId: string;
|
22
22
|
declare subscriberId: string;
|
23
|
+
declare freeSubscriptionPlanId: string;
|
23
24
|
declare status: "active" | "inactive";
|
24
25
|
declare createdAt: CreationOptional<Date>;
|
25
26
|
declare updatedAt: CreationOptional<Date>;
|
@@ -49,6 +50,13 @@ SubscribersOnCreators.init(
|
|
49
50
|
model: User,
|
50
51
|
},
|
51
52
|
},
|
53
|
+
freeSubscriptionPlanId: {
|
54
|
+
type: DataTypes.BIGINT,
|
55
|
+
field: "free_subscription_plan_id",
|
56
|
+
references: {
|
57
|
+
model: FreeSubscriptionPlan,
|
58
|
+
},
|
59
|
+
},
|
52
60
|
status: {
|
53
61
|
type: DataTypes.STRING,
|
54
62
|
field: "status",
|
@@ -85,4 +93,15 @@ SubscribersOnCreators.hasMany(User, {
|
|
85
93
|
onDelete: "NO ACTION",
|
86
94
|
});
|
87
95
|
|
96
|
+
FreeSubscriptionPlan.hasMany(SubscribersOnCreators, {
|
97
|
+
foreignKey: "freeSubscriptionPlanId",
|
98
|
+
sourceKey: "id",
|
99
|
+
});
|
100
|
+
|
101
|
+
SubscribersOnCreators.hasMany(FreeSubscriptionPlan, {
|
102
|
+
foreignKey: "id",
|
103
|
+
sourceKey: "freeSubscriptionPlanId",
|
104
|
+
onDelete: "NO ACTION",
|
105
|
+
});
|
106
|
+
|
88
107
|
export default SubscribersOnCreators;
|