@winible/winible-typed 2.3.0 → 2.3.2
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/src/types.js +14 -1
- package/dist/src/types.js.map +1 -1
- package/dist/typed-model/index.js +3 -1
- package/dist/typed-model/index.js.map +1 -1
- package/dist/typed-model/subscription-coupon.js +25 -0
- package/dist/typed-model/subscription-coupon.js.map +1 -1
- package/dist/typed-model/subscription-plan.js +6 -1
- package/dist/typed-model/subscription-plan.js.map +1 -1
- package/package.json +1 -1
- package/src/types.ts +13 -0
- package/typed-model/index.ts +1 -0
- package/typed-model/subscription-coupon.ts +26 -4
- package/typed-model/subscription-plan.ts +7 -2
package/dist/src/types.js
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
exports.UserRole = exports.UserStatus = void 0;
|
3
|
+
exports.TemporalUnit = exports.DiscountType = exports.UserRole = exports.UserStatus = void 0;
|
4
4
|
var UserStatus;
|
5
5
|
(function (UserStatus) {
|
6
6
|
UserStatus["PENDING_REVIEW"] = "PENDING_REVIEW";
|
@@ -12,4 +12,17 @@ var UserRole;
|
|
12
12
|
UserRole["CREATOR"] = "CREATOR";
|
13
13
|
UserRole["USER"] = "USER";
|
14
14
|
})(UserRole = exports.UserRole || (exports.UserRole = {}));
|
15
|
+
var DiscountType;
|
16
|
+
(function (DiscountType) {
|
17
|
+
DiscountType["percent"] = "percent";
|
18
|
+
DiscountType["dollars"] = "dollars";
|
19
|
+
DiscountType["free_trial"] = "free_trial";
|
20
|
+
})(DiscountType = exports.DiscountType || (exports.DiscountType = {}));
|
21
|
+
var TemporalUnit;
|
22
|
+
(function (TemporalUnit) {
|
23
|
+
TemporalUnit["day"] = "day";
|
24
|
+
TemporalUnit["week"] = "week";
|
25
|
+
TemporalUnit["month"] = "month";
|
26
|
+
TemporalUnit["year"] = "year";
|
27
|
+
})(TemporalUnit = exports.TemporalUnit || (exports.TemporalUnit = {}));
|
15
28
|
//# sourceMappingURL=types.js.map
|
package/dist/src/types.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":";;;AAyCA,IAAY,UAIX;AAJD,WAAY,UAAU;IACpB,+CAAiC,CAAA;IACjC,mCAAqB,CAAA;IACrB,+BAAiB,CAAA;AACnB,CAAC,EAJW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAIrB;AAED,IAAY,QAGX;AAHD,WAAY,QAAQ;IAClB,+BAAmB,CAAA;IACnB,yBAAa,CAAA;AACf,CAAC,EAHW,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAGnB"}
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":";;;AAyCA,IAAY,UAIX;AAJD,WAAY,UAAU;IACpB,+CAAiC,CAAA;IACjC,mCAAqB,CAAA;IACrB,+BAAiB,CAAA;AACnB,CAAC,EAJW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAIrB;AAED,IAAY,QAGX;AAHD,WAAY,QAAQ;IAClB,+BAAmB,CAAA;IACnB,yBAAa,CAAA;AACf,CAAC,EAHW,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAGnB;AAED,IAAY,YAIX;AAJD,WAAY,YAAY;IACtB,mCAAmB,CAAA;IACnB,mCAAmB,CAAA;IACnB,yCAAyB,CAAA;AAC3B,CAAC,EAJW,YAAY,GAAZ,oBAAY,KAAZ,oBAAY,QAIvB;AAED,IAAY,YAKX;AALD,WAAY,YAAY;IACtB,2BAAW,CAAA;IACX,6BAAa,CAAA;IACb,+BAAe,CAAA;IACf,6BAAa,CAAA;AACf,CAAC,EALW,YAAY,GAAZ,oBAAY,KAAZ,oBAAY,QAKvB"}
|
@@ -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.User = exports.League = exports.Withdrawal = exports.RecurlyAccount = exports.SubscriptionPlanOnPost = exports.SubscriptionPlanOnUsers = exports.SubscriptionPlan = exports.PostsOnUsers = exports.Post = exports.pbSequelize = exports.Notification = exports.Media = exports.MediaAsset = exports.Transaction = exports.ContentLike = void 0;
|
6
|
+
exports.SubscriptionCoupon = exports.User = exports.League = exports.Withdrawal = exports.RecurlyAccount = exports.SubscriptionPlanOnPost = exports.SubscriptionPlanOnUsers = exports.SubscriptionPlan = exports.PostsOnUsers = exports.Post = exports.pbSequelize = 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");
|
@@ -34,4 +34,6 @@ var league_1 = require("./league");
|
|
34
34
|
Object.defineProperty(exports, "League", { enumerable: true, get: function () { return __importDefault(league_1).default; } });
|
35
35
|
var user_1 = require("./user");
|
36
36
|
Object.defineProperty(exports, "User", { enumerable: true, get: function () { return __importDefault(user_1).default; } });
|
37
|
+
var subscription_coupon_1 = require("./subscription-coupon");
|
38
|
+
Object.defineProperty(exports, "SubscriptionCoupon", { enumerable: true, get: function () { return __importDefault(subscription_coupon_1).default; } });
|
37
39
|
//# sourceMappingURL=index.js.map
|
@@ -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,+CAAwD;AAA/C,4HAAA,OAAO,OAAe;AAC/B,+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,qDAA8D;AAArD,kIAAA,OAAO,OAAkB;AAClC,2CAAqD;AAA5C,yHAAA,OAAO,OAAc;AAC9B,mCAA6C;AAApC,iHAAA,OAAO,OAAU;AAC1B,+BAAyC;AAAhC,6GAAA,OAAO,OAAQ"}
|
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,+CAAwD;AAA/C,4HAAA,OAAO,OAAe;AAC/B,+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,qDAA8D;AAArD,kIAAA,OAAO,OAAkB;AAClC,2CAAqD;AAA5C,yHAAA,OAAO,OAAc;AAC9B,mCAA6C;AAApC,iHAAA,OAAO,OAAU;AAC1B,+BAAyC;AAAhC,6GAAA,OAAO,OAAQ;AACxB,6DAAsE;AAA7D,0IAAA,OAAO,OAAsB"}
|
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const sequelize_1 = require("sequelize");
|
7
7
|
const pb_sequelize_1 = __importDefault(require("./pb-sequelize"));
|
8
8
|
const subscription_plan_1 = __importDefault(require("./subscription-plan"));
|
9
|
+
const types_1 = require("../src/types");
|
9
10
|
// order of InferAttributes & InferCreationAttributes is important.
|
10
11
|
class SubscriptionCoupon extends sequelize_1.Model {
|
11
12
|
}
|
@@ -32,6 +33,30 @@ SubscriptionCoupon.init({
|
|
32
33
|
type: sequelize_1.DataTypes.STRING,
|
33
34
|
field: "code",
|
34
35
|
},
|
36
|
+
discountType: {
|
37
|
+
type: sequelize_1.DataTypes.ENUM(...Object.values(types_1.DiscountType)),
|
38
|
+
field: "discount_type",
|
39
|
+
},
|
40
|
+
discountPercent: {
|
41
|
+
type: sequelize_1.DataTypes.BIGINT,
|
42
|
+
field: "discount_percent",
|
43
|
+
},
|
44
|
+
maxRedemptions: {
|
45
|
+
type: sequelize_1.DataTypes.BIGINT,
|
46
|
+
field: "max_redemptions",
|
47
|
+
},
|
48
|
+
redemptions: {
|
49
|
+
type: sequelize_1.DataTypes.BIGINT,
|
50
|
+
field: "redemptions",
|
51
|
+
},
|
52
|
+
temporalAmount: {
|
53
|
+
type: sequelize_1.DataTypes.BIGINT,
|
54
|
+
field: "temporal_amount",
|
55
|
+
},
|
56
|
+
temporalUnit: {
|
57
|
+
type: sequelize_1.DataTypes.ENUM(...Object.values(types_1.TemporalUnit)),
|
58
|
+
field: "temporal_unit",
|
59
|
+
},
|
35
60
|
createdAt: sequelize_1.DataTypes.DATE,
|
36
61
|
updatedAt: sequelize_1.DataTypes.DATE,
|
37
62
|
}, {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"subscription-coupon.js","sourceRoot":"","sources":["../../typed-model/subscription-coupon.ts"],"names":[],"mappings":";;;;;AAAA,yCAMmB;AAEnB,kEAAuC;AACvC,4EAAmD;
|
1
|
+
{"version":3,"file":"subscription-coupon.js","sourceRoot":"","sources":["../../typed-model/subscription-coupon.ts"],"names":[],"mappings":";;;;;AAAA,yCAMmB;AAEnB,kEAAuC;AACvC,4EAAmD;AAEnD,wCAA0D;AAE1D,mEAAmE;AACnE,MAAM,kBAAmB,SAAQ,iBAGhC;CAeA;AAED,kBAAkB,CAAC,IAAI,CACrB;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,kBAAkB,EAAE;QAClB,IAAI,EAAE,qBAAS,CAAC,MAAM;QACtB,SAAS,EAAE,KAAK;QAChB,KAAK,EAAE,sBAAsB;QAC7B,UAAU,EAAE;YACV,KAAK,EAAE,2BAAgB;SACxB;KACF;IACD,IAAI,EAAE;QACJ,IAAI,EAAE,qBAAS,CAAC,MAAM;QACtB,KAAK,EAAE,MAAM;KACd;IACD,IAAI,EAAE;QACJ,IAAI,EAAE,qBAAS,CAAC,MAAM;QACtB,KAAK,EAAE,MAAM;KACd;IACD,YAAY,EAAE;QACZ,IAAI,EAAE,qBAAS,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,oBAAY,CAAC,CAAC;QACpD,KAAK,EAAE,eAAe;KACvB;IACD,eAAe,EAAE;QACf,IAAI,EAAE,qBAAS,CAAC,MAAM;QACtB,KAAK,EAAE,kBAAkB;KAC1B;IACD,cAAc,EAAE;QACd,IAAI,EAAE,qBAAS,CAAC,MAAM;QACtB,KAAK,EAAE,iBAAiB;KACzB;IACD,WAAW,EAAE;QACX,IAAI,EAAE,qBAAS,CAAC,MAAM;QACtB,KAAK,EAAE,aAAa;KACrB;IACD,cAAc,EAAE;QACd,IAAI,EAAE,qBAAS,CAAC,MAAM;QACtB,KAAK,EAAE,iBAAiB;KACzB;IACD,YAAY,EAAE;QACZ,IAAI,EAAE,qBAAS,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,oBAAY,CAAC,CAAC;QACpD,KAAK,EAAE,eAAe;KACvB;IACD,SAAS,EAAE,qBAAS,CAAC,IAAI;IACzB,SAAS,EAAE,qBAAS,CAAC,IAAI;CAC1B,EACD;IACE,SAAS,EAAE,sBAAsB;IACjC,SAAS,EAAT,sBAAS;CACV,CACF,CAAC;AAEF,kBAAe,kBAAkB,CAAC"}
|
@@ -102,9 +102,14 @@ SubscriptionPlan.hasOne(user_1.default, {
|
|
102
102
|
sourceKey: "userId",
|
103
103
|
});
|
104
104
|
SubscriptionPlan.hasMany(subscription_coupon_1.default, {
|
105
|
+
foreignKey: "subscriptionPlanId",
|
106
|
+
sourceKey: "id",
|
107
|
+
onDelete: "NO ACTION",
|
108
|
+
constraints: false,
|
109
|
+
});
|
110
|
+
subscription_coupon_1.default.hasOne(SubscriptionPlan, {
|
105
111
|
foreignKey: "id",
|
106
112
|
sourceKey: "subscriptionPlanId",
|
107
113
|
});
|
108
|
-
subscription_coupon_1.default.belongsTo(SubscriptionPlan);
|
109
114
|
exports.default = SubscriptionPlan;
|
110
115
|
//# sourceMappingURL=subscription-plan.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"subscription-plan.js","sourceRoot":"","sources":["../../typed-model/subscription-plan.ts"],"names":[],"mappings":";;;;;AAAA,yCAOmB;AAEnB,kEAAuC;AACvC,kDAA0B;AAE1B,gFAAuD;AAIvD,mEAAmE;AACnE,MAAM,gBAAiB,SAAQ,iBAG9B;CAqBA;AAED,gBAAgB,CAAC,IAAI,CACnB;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,aAAa,EAAE;QACb,IAAI,EAAE,qBAAS,CAAC,OAAO;QACvB,KAAK,EAAE,gBAAgB;QACvB,YAAY,EAAE,CAAC;KAChB;IACD,YAAY,EAAE;QACZ,IAAI,EAAE,qBAAS,CAAC,MAAM;QACtB,KAAK,EAAE,eAAe;QACtB,YAAY,EAAE,QAAQ;KACvB;IACD,UAAU,EAAE;QACV,IAAI,EAAE,qBAAS,CAAC,OAAO;QACvB,KAAK,EAAE,aAAa;QACpB,YAAY,EAAE,KAAK;KACpB;IACD,eAAe,EAAE;QACf,IAAI,EAAE,qBAAS,CAAC,MAAM;QACtB,KAAK,EAAE,kBAAkB;KAC1B;IACD,eAAe,EAAE;QACf,IAAI,EAAE,qBAAS,CAAC,OAAO;QACvB,KAAK,EAAE,mBAAmB;QAC1B,YAAY,EAAE,KAAK;KACpB;IACD,aAAa,EAAE;QACb,IAAI,EAAE,qBAAS,CAAC,IAAI;QACpB,KAAK,EAAE,iBAAiB;KACzB;IACD,aAAa,EAAE;QACb,IAAI,EAAE,qBAAS,CAAC,MAAM;QACtB,KAAK,EAAE,iBAAiB;KACzB;IACD,KAAK,EAAE;QACL,IAAI,EAAE,qBAAS,CAAC,OAAO;QACvB,KAAK,EAAE,OAAO;QACd,YAAY,EAAE,CAAC;KAChB;IACD,SAAS,EAAE,qBAAS,CAAC,IAAI;IACzB,SAAS,EAAE,qBAAS,CAAC,IAAI;CAC1B,EACD;IACE,SAAS,EAAE,oBAAoB;IAC/B,SAAS,EAAT,sBAAS;CACV,CACF,CAAC;AAEF;;;;EAIE;AAEF,gBAAgB,CAAC,OAAO,GAAG,KAAK,EAAE,EAAU,EAAE,EAAE;IAC9C,OAAO,MAAM,gBAAgB,CAAC,OAAO,CAAC;QACpC,KAAK,EAAE;YACL,EAAE;SACH;KACF,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,gBAAgB,CAAC,WAAW,GAAG,KAAK,EAAE,MAAc,EAAE,EAAE;IACtD,OAAO,MAAM,gBAAgB,CAAC,OAAO,CAAC;QACpC,KAAK,EAAE;YACL,MAAM;SACP;KACF,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,cAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE;IAC7B,UAAU,EAAE,QAAQ;IACpB,SAAS,EAAE,IAAI;IACf,QAAQ,EAAE,WAAW;IACrB,WAAW,EAAE,KAAK;CACnB,CAAC,CAAC;AAEH,gBAAgB,CAAC,MAAM,CAAC,cAAI,EAAE;IAC5B,UAAU,EAAE,IAAI;IAChB,SAAS,EAAE,QAAQ;CACpB,CAAC,CAAC;AAEH,gBAAgB,CAAC,OAAO,CAAC,6BAAkB,EAAE;IAC3C,UAAU,EAAE,
|
1
|
+
{"version":3,"file":"subscription-plan.js","sourceRoot":"","sources":["../../typed-model/subscription-plan.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/types.ts
CHANGED
@@ -49,3 +49,16 @@ export enum UserRole {
|
|
49
49
|
CREATOR = "CREATOR",
|
50
50
|
USER = "USER",
|
51
51
|
}
|
52
|
+
|
53
|
+
export enum DiscountType {
|
54
|
+
percent = "percent",
|
55
|
+
dollars = "dollars",
|
56
|
+
free_trial = "free_trial",
|
57
|
+
}
|
58
|
+
|
59
|
+
export enum TemporalUnit {
|
60
|
+
day = "day",
|
61
|
+
week = "week",
|
62
|
+
month = "month",
|
63
|
+
year = "year",
|
64
|
+
}
|
package/typed-model/index.ts
CHANGED
@@ -13,3 +13,4 @@ export { default as RecurlyAccount } from "./recurly-account";
|
|
13
13
|
export { default as Withdrawal } from "./withdrawal";
|
14
14
|
export { default as League } from "./league";
|
15
15
|
export { default as User } from "./user";
|
16
|
+
export { default as SubscriptionCoupon } from "./subscription-coupon";
|
@@ -9,9 +9,7 @@ import {
|
|
9
9
|
import sequelize from "./pb-sequelize";
|
10
10
|
import SubscriptionPlan from "./subscription-plan";
|
11
11
|
|
12
|
-
|
13
|
-
|
14
|
-
type DiscountType = "percent" | "dollars" | "free_trial";
|
12
|
+
import { DiscountType, TemporalUnit } from "../src/types";
|
15
13
|
|
16
14
|
// order of InferAttributes & InferCreationAttributes is important.
|
17
15
|
class SubscriptionCoupon extends Model<
|
@@ -29,7 +27,7 @@ class SubscriptionCoupon extends Model<
|
|
29
27
|
declare maxRedemptions?: number;
|
30
28
|
declare redemptions?: number;
|
31
29
|
declare temporalAmount?: number;
|
32
|
-
declare temporalUnit?:
|
30
|
+
declare temporalUnit?: TemporalUnit;
|
33
31
|
declare createdAt: CreationOptional<Date>;
|
34
32
|
declare updatedAt: CreationOptional<Date>;
|
35
33
|
}
|
@@ -58,6 +56,30 @@ SubscriptionCoupon.init(
|
|
58
56
|
type: DataTypes.STRING,
|
59
57
|
field: "code",
|
60
58
|
},
|
59
|
+
discountType: {
|
60
|
+
type: DataTypes.ENUM(...Object.values(DiscountType)),
|
61
|
+
field: "discount_type",
|
62
|
+
},
|
63
|
+
discountPercent: {
|
64
|
+
type: DataTypes.BIGINT,
|
65
|
+
field: "discount_percent",
|
66
|
+
},
|
67
|
+
maxRedemptions: {
|
68
|
+
type: DataTypes.BIGINT,
|
69
|
+
field: "max_redemptions",
|
70
|
+
},
|
71
|
+
redemptions: {
|
72
|
+
type: DataTypes.BIGINT,
|
73
|
+
field: "redemptions",
|
74
|
+
},
|
75
|
+
temporalAmount: {
|
76
|
+
type: DataTypes.BIGINT,
|
77
|
+
field: "temporal_amount",
|
78
|
+
},
|
79
|
+
temporalUnit: {
|
80
|
+
type: DataTypes.ENUM(...Object.values(TemporalUnit)),
|
81
|
+
field: "temporal_unit",
|
82
|
+
},
|
61
83
|
createdAt: DataTypes.DATE,
|
62
84
|
updatedAt: DataTypes.DATE,
|
63
85
|
},
|
@@ -142,10 +142,15 @@ SubscriptionPlan.hasOne(User, {
|
|
142
142
|
});
|
143
143
|
|
144
144
|
SubscriptionPlan.hasMany(SubscriptionCoupon, {
|
145
|
+
foreignKey: "subscriptionPlanId",
|
146
|
+
sourceKey: "id",
|
147
|
+
onDelete: "NO ACTION",
|
148
|
+
constraints: false,
|
149
|
+
});
|
150
|
+
|
151
|
+
SubscriptionCoupon.hasOne(SubscriptionPlan, {
|
145
152
|
foreignKey: "id",
|
146
153
|
sourceKey: "subscriptionPlanId",
|
147
154
|
});
|
148
155
|
|
149
|
-
SubscriptionCoupon.belongsTo(SubscriptionPlan);
|
150
|
-
|
151
156
|
export default SubscriptionPlan;
|