@winible/winible-typed 2.51.1 → 2.51.3
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/README.md +104 -104
- package/dist/index.js +19 -19
- package/dist/migrations/20230104055346-oddsjam.js +500 -500
- package/dist/migrations/20230104233909-markets.js +27 -27
- package/dist/migrations/20230105005418-sportsbook.js +23 -23
- package/dist/migrations/20230106044910-player-result.js +58 -58
- package/dist/migrations/20230206061925-stale.js +12 -12
- package/dist/migrations/20230313175015-league-user.js +28 -28
- package/dist/migrations/20230405141245-deprecate-agencies.js +8 -8
- package/dist/migrations/20230405142440-deprecate-unused-tables.js +22 -22
- package/dist/migrations/20230410144940-deprecate-consent-people.js +8 -8
- package/dist/migrations/20230410174328-deprecate-consent-people-table.js +8 -8
- package/dist/migrations/20230410181920-migrate-credit-payments-to-transactions.js +8 -8
- package/dist/migrations/20230410202433-migrate-credit-payments-fields.js +11 -11
- package/dist/migrations/20230410211059-deprecate-credit-purchases.js +8 -8
- package/dist/migrations/20230410212035-deprecate-dashboard_user_permissions.js +9 -9
- package/dist/migrations/20230410212324-deprecate-non-breaking-tables.js +33 -33
- package/dist/migrations/20230411054826-create-users-table.js +140 -140
- package/dist/migrations/20230411202848-migrate_transactions_table.js +23 -23
- package/dist/migrations/20230411203543-migrate_league_users.js +8 -8
- package/dist/migrations/20230411205324-migrate_league.js +12 -12
- package/dist/migrations/20230411221159-migrate_media.js +8 -8
- package/dist/migrations/20230411221327-migrate_media_asset.js +9 -9
- package/dist/migrations/20230411221842-migrate_media_asset_fields.js +9 -9
- package/dist/migrations/20230411222018-migrate_notifications.js +24 -24
- package/dist/migrations/20230412190423-migrate_purchased_contents.js +9 -9
- package/dist/migrations/20230412202031-migrate_other_fields.js +26 -26
- package/dist/migrations/20230412213952-deprecate_phone_users_and_phone_owners.js +26 -26
- package/dist/migrations/20241123184623-whitelist.js +36 -36
- package/dist/migrations/20241204220824-pumping-risk-score-monitoring-table.js +47 -47
- package/dist/migrations/20241205003230-failed-transactions.js +67 -67
- package/dist/migrations/20241216145328-password-tokens.js +33 -33
- package/dist/scripts/cleanupRecurlyPlans.js +49 -49
- package/dist/scripts/deleteMalformedImages.js +86 -86
- package/dist/scripts/test.js +17 -17
- package/dist/scripts/testModels.js +57 -0
- package/dist/scripts/testModels.js.map +1 -0
- package/dist/src/index.js +8 -8
- package/dist/src/recurlyInstance.js +32 -32
- package/dist/src/types.js +86 -86
- package/dist/support/index.js +18 -18
- package/dist/support/slack-client.js +50 -50
- package/dist/support/uploadcare.js +142 -142
- package/dist/support/utils.js +68 -68
- package/dist/typed-model/affiliate-code.js +97 -97
- package/dist/typed-model/affiliate-links-types.js +28 -28
- package/dist/typed-model/application.js +89 -89
- package/dist/typed-model/bet.js +111 -111
- package/dist/typed-model/campaign-message.js +78 -75
- package/dist/typed-model/campaign-message.js.map +1 -1
- package/dist/typed-model/campaign-template.js +67 -62
- package/dist/typed-model/campaign-template.js.map +1 -1
- package/dist/typed-model/campaign.js +78 -83
- package/dist/typed-model/campaign.js.map +1 -1
- package/dist/typed-model/cancellation_offer.js +70 -70
- package/dist/typed-model/cancellation_reason.js +98 -98
- package/dist/typed-model/content-like.js +69 -69
- package/dist/typed-model/coupon_redemptions.js +64 -64
- package/dist/typed-model/creator-service-fee.js +50 -50
- package/dist/typed-model/discord-integration-log.js +62 -62
- package/dist/typed-model/discord-integration.js +128 -128
- package/dist/typed-model/failed-transactions.js +95 -95
- package/dist/typed-model/featured-creator.js +51 -51
- package/dist/typed-model/free-subscription-plan.js +66 -66
- package/dist/typed-model/index.js +139 -139
- package/dist/typed-model/integration.js +58 -58
- package/dist/typed-model/league-on-users.js +59 -59
- package/dist/typed-model/league.js +34 -34
- package/dist/typed-model/limited-offer.js +58 -58
- package/dist/typed-model/media-asset.js +63 -63
- package/dist/typed-model/media.js +54 -54
- package/dist/typed-model/migration-token.js +52 -52
- package/dist/typed-model/notification-preference.js +58 -58
- package/dist/typed-model/notification.js +89 -89
- package/dist/typed-model/organization.js +57 -57
- package/dist/typed-model/password-tokens.js +36 -36
- package/dist/typed-model/pb-sequelize.js +43 -43
- package/dist/typed-model/permission.js +36 -36
- package/dist/typed-model/post.js +128 -128
- package/dist/typed-model/post_on_integrations.js +81 -81
- package/dist/typed-model/posts-on-users.js +92 -92
- package/dist/typed-model/private-feed-users.js +42 -42
- package/dist/typed-model/pumping-risk-score-monitoring.js +54 -54
- package/dist/typed-model/recurly-account.js +33 -33
- package/dist/typed-model/sample.js +24 -24
- package/dist/typed-model/segment.js +52 -51
- package/dist/typed-model/segment.js.map +1 -1
- package/dist/typed-model/sms-custom-message.js +46 -46
- package/dist/typed-model/sport-on-posts.js +58 -58
- package/dist/typed-model/sport.js +29 -29
- package/dist/typed-model/store.js +152 -152
- package/dist/typed-model/stores_on_organizations.js +55 -55
- package/dist/typed-model/subscriber-discord-integration.js +82 -82
- package/dist/typed-model/subscriber-telegram-integration.js +82 -82
- package/dist/typed-model/subscribers-on-creators.js +80 -80
- package/dist/typed-model/subscription-coupon.js +96 -96
- package/dist/typed-model/subscription-plan-on-post.js +54 -54
- package/dist/typed-model/subscription-plan-on-users.js +143 -143
- package/dist/typed-model/subscription-plan.js +121 -121
- package/dist/typed-model/subscription-pricing-option-on-coupons.js +54 -54
- package/dist/typed-model/subscription-pricing-option.js +77 -77
- package/dist/typed-model/telegram-integration-code.js +38 -38
- package/dist/typed-model/telegram-integration-invite-link.js +38 -38
- package/dist/typed-model/telegram-integration-log.js +62 -62
- package/dist/typed-model/telegram-integration.js +109 -109
- package/dist/typed-model/transaction.js +109 -109
- package/dist/typed-model/trigger.js +65 -63
- package/dist/typed-model/trigger.js.map +1 -1
- package/dist/typed-model/user-cookie-preference.js +53 -53
- package/dist/typed-model/user-review.js +66 -66
- package/dist/typed-model/user-transaction-location.js +89 -89
- package/dist/typed-model/user.js +210 -210
- package/dist/typed-model/users-on-permissions.js +71 -71
- package/dist/typed-model/users_on_creators.js +70 -70
- package/dist/typed-model/users_on_organizations.js +55 -55
- package/dist/typed-model/whitelist.js +48 -48
- package/dist/typed-model/withdrawal.js +32 -32
- package/dist/webhooks/index.js +47 -47
- package/dist/webhooks/payment/index.js +8 -8
- package/dist/webhooks/payment/refund.js +38 -38
- package/index.ts +3 -3
- package/package.json +79 -78
- package/src/index.ts +1 -1
- package/src/recurlyInstance.ts +6 -6
- package/src/types.ts +139 -139
- package/support/index.ts +2 -2
- package/support/slack-client.ts +43 -43
- package/support/uploadcare.ts +191 -191
- package/support/utils.ts +72 -72
- package/typed-model/affiliate-code.ts +133 -133
- package/typed-model/affiliate-links-types.ts +45 -45
- package/typed-model/application.ts +124 -124
- package/typed-model/bet.ts +149 -149
- package/typed-model/campaign-message.ts +115 -112
- package/typed-model/campaign-template.ts +89 -83
- package/typed-model/campaign.ts +121 -122
- package/typed-model/cancellation_offer.ts +94 -94
- package/typed-model/cancellation_reason.ts +135 -135
- package/typed-model/content-like.ts +95 -95
- package/typed-model/coupon_redemptions.ts +90 -90
- package/typed-model/creator-service-fee.ts +69 -69
- package/typed-model/discord-integration-log.ts +87 -87
- package/typed-model/discord-integration.ts +164 -164
- package/typed-model/failed-transactions.ts +123 -123
- package/typed-model/featured-creator.ts +75 -75
- package/typed-model/free-subscription-plan.ts +97 -97
- package/typed-model/index.ts +67 -67
- package/typed-model/integration.ts +83 -83
- package/typed-model/league-on-users.ts +81 -81
- package/typed-model/league.ts +53 -53
- package/typed-model/limited-offer.ts +80 -80
- package/typed-model/media-asset.ts +87 -87
- package/typed-model/media.ts +80 -80
- package/typed-model/migration-token.ts +75 -75
- package/typed-model/notification-preference.ts +85 -85
- package/typed-model/notification.ts +135 -135
- package/typed-model/organization.ts +80 -80
- package/typed-model/password-tokens.ts +55 -55
- package/typed-model/pb-sequelize.ts +44 -44
- package/typed-model/permission.ts +62 -62
- package/typed-model/post.ts +170 -170
- package/typed-model/post_on_integrations.ts +104 -104
- package/typed-model/posts-on-users.ts +122 -122
- package/typed-model/private-feed-users.ts +63 -63
- package/typed-model/pumping-risk-score-monitoring.ts +73 -73
- package/typed-model/recurly-account.ts +51 -51
- package/typed-model/sample.ts +41 -41
- package/typed-model/segment.ts +80 -79
- package/typed-model/sms-custom-message.ts +66 -66
- package/typed-model/sport-on-posts.ts +80 -80
- package/typed-model/sport.ts +46 -46
- package/typed-model/store.ts +203 -203
- package/typed-model/stores_on_organizations.ts +78 -78
- package/typed-model/subscriber-discord-integration.ts +109 -109
- package/typed-model/subscriber-telegram-integration.ts +109 -109
- package/typed-model/subscribers-on-creators.ts +107 -107
- package/typed-model/subscription-coupon.ts +133 -133
- package/typed-model/subscription-plan-on-post.ts +77 -77
- package/typed-model/subscription-plan-on-users.ts +201 -201
- package/typed-model/subscription-plan.ts +173 -173
- package/typed-model/subscription-pricing-option-on-coupons.ts +78 -78
- package/typed-model/subscription-pricing-option.ts +106 -106
- package/typed-model/telegram-integration-code.ts +60 -60
- package/typed-model/telegram-integration-invite-link.ts +59 -59
- package/typed-model/telegram-integration-log.ts +86 -86
- package/typed-model/telegram-integration.ts +141 -141
- package/typed-model/transaction.ts +159 -159
- package/typed-model/trigger.ts +95 -93
- package/typed-model/user-cookie-preference.ts +71 -71
- package/typed-model/user-review.ts +87 -87
- package/typed-model/user-transaction-location.ts +117 -117
- package/typed-model/user.ts +273 -273
- package/typed-model/users-on-permissions.ts +96 -96
- package/typed-model/users_on_creators.ts +95 -95
- package/typed-model/users_on_organizations.ts +78 -78
- package/typed-model/whitelist.ts +66 -66
- package/typed-model/withdrawal.ts +50 -50
- package/dist/typed-model/featured-capper.js +0 -51
- package/dist/typed-model/featured-capper.js.map +0 -1
package/typed-model/index.ts
CHANGED
@@ -1,67 +1,67 @@
|
|
1
|
-
export { default as ContentLike } from "./content-like";
|
2
|
-
export { default as Transaction } from "./transaction";
|
3
|
-
export { default as MediaAsset } from "./media-asset";
|
4
|
-
export { default as Media } from "./media";
|
5
|
-
export { default as Notification } from "./notification";
|
6
|
-
export { default as PasswordTokens } from "./password-tokens";
|
7
|
-
export { default as Post } from "./post";
|
8
|
-
export { default as PostsOnUsers } from "./posts-on-users";
|
9
|
-
export { default as SubscriptionPlan } from "./subscription-plan";
|
10
|
-
export { default as SubscriptionPlanOnUsers } from "./subscription-plan-on-users";
|
11
|
-
export { default as SubscriptionPlanOnPost } from "./subscription-plan-on-post";
|
12
|
-
export { default as SubscriptionCoupon } from "./subscription-coupon";
|
13
|
-
export { default as SubscriptionPricingOption } from "./subscription-pricing-option";
|
14
|
-
export { default as FreeSubscriptionPlan } from "./free-subscription-plan";
|
15
|
-
export { default as RecurlyAccount } from "./recurly-account";
|
16
|
-
export { default as Withdrawal } from "./withdrawal";
|
17
|
-
export { default as League } from "./league";
|
18
|
-
export { default as LeagueOnUsers } from "./league-on-users";
|
19
|
-
export { default as User } from "./user";
|
20
|
-
export { default as SubscriptionPricingOptionOnCoupons } from "./subscription-pricing-option-on-coupons";
|
21
|
-
export { default as SubscribersOnCreators } from "./subscribers-on-creators";
|
22
|
-
export { default as NotificationPreference } from "./notification-preference";
|
23
|
-
export { default as Application } from "./application";
|
24
|
-
export { default as Store } from "./store";
|
25
|
-
export { default as UsersOnCreators } from "./users_on_creators";
|
26
|
-
export { default as Integration } from "./integration";
|
27
|
-
export { default as Sport } from "./sport";
|
28
|
-
export { default as SportOnPosts } from "./sport-on-posts";
|
29
|
-
export { default as DiscordIntegration } from "./discord-integration";
|
30
|
-
export { default as SubscriberDiscordIntegration } from "./subscriber-discord-integration";
|
31
|
-
export { default as Whitelist } from "./whitelist";
|
32
|
-
export { default as FailedTransactions } from "./failed-transactions";
|
33
|
-
export { default as Organization } from "./organization";
|
34
|
-
export { default as UsersOnOrganizations } from "./users_on_organizations";
|
35
|
-
export { default as StoresOnOrganizations } from "./stores_on_organizations";
|
36
|
-
export { default as TelegramIntegration } from "./telegram-integration";
|
37
|
-
export { default as SubscriberTelegramIntegration } from "./subscriber-telegram-integration";
|
38
|
-
export { default as TelegramIntegrationLog } from "./telegram-integration-log";
|
39
|
-
export { default as TelegramIntegrationCode } from "./telegram-integration-code";
|
40
|
-
export { default as TelegramIntegrationInviteLink } from "./telegram-integration-invite-link";
|
41
|
-
export { default as DiscordIntegrationLog } from "./discord-integration-log";
|
42
|
-
export { default as PostsOnIntegrations } from "./post_on_integrations";
|
43
|
-
export { default as FeaturedCreator } from "./featured-creator";
|
44
|
-
export { default as PrivateFeedUsers } from "./private-feed-users";
|
45
|
-
export { default as CancellationOffer } from "./cancellation_offer";
|
46
|
-
export { default as CancellationReason } from "./cancellation_reason";
|
47
|
-
export { default as AffiliateCode } from "./affiliate-code";
|
48
|
-
export { default as AffiliateLinkType } from "./affiliate-links-types";
|
49
|
-
export { default as LimitedOffer } from "./limited-offer";
|
50
|
-
export { default as Bet } from "./bet";
|
51
|
-
export { default as MigrationToken } from "./migration-token";
|
52
|
-
export { default as SMSCustomMessage } from "./sms-custom-message";
|
53
|
-
export { default as Permission } from "./permission";
|
54
|
-
export { default as UsersOnPermissions } from "./users-on-permissions";
|
55
|
-
export { default as PumpingRiskScoreMonitoring } from "./pumping-risk-score-monitoring";
|
56
|
-
export { default as UserReview } from "./user-review";
|
57
|
-
export { default as UserTransactionLocation } from "./user-transaction-location";
|
58
|
-
export { default as CouponRedemptions } from "./coupon_redemptions";
|
59
|
-
export { default as UserCookiePreference } from "./user-cookie-preference";
|
60
|
-
export { default as CreatorServiceFee } from "./creator-service-fee";
|
61
|
-
export { default as CampaignTemplate } from "./campaign-template";
|
62
|
-
export { default as Campaign } from "./campaign";
|
63
|
-
export { default as CampaignMessage } from "./campaign-message";
|
64
|
-
export { default as Trigger } from "./trigger";
|
65
|
-
export { default as Segment } from "./segment";
|
66
|
-
|
67
|
-
export { default as pbSequelize } from "./pb-sequelize";
|
1
|
+
export { default as ContentLike } from "./content-like";
|
2
|
+
export { default as Transaction } from "./transaction";
|
3
|
+
export { default as MediaAsset } from "./media-asset";
|
4
|
+
export { default as Media } from "./media";
|
5
|
+
export { default as Notification } from "./notification";
|
6
|
+
export { default as PasswordTokens } from "./password-tokens";
|
7
|
+
export { default as Post } from "./post";
|
8
|
+
export { default as PostsOnUsers } from "./posts-on-users";
|
9
|
+
export { default as SubscriptionPlan } from "./subscription-plan";
|
10
|
+
export { default as SubscriptionPlanOnUsers } from "./subscription-plan-on-users";
|
11
|
+
export { default as SubscriptionPlanOnPost } from "./subscription-plan-on-post";
|
12
|
+
export { default as SubscriptionCoupon } from "./subscription-coupon";
|
13
|
+
export { default as SubscriptionPricingOption } from "./subscription-pricing-option";
|
14
|
+
export { default as FreeSubscriptionPlan } from "./free-subscription-plan";
|
15
|
+
export { default as RecurlyAccount } from "./recurly-account";
|
16
|
+
export { default as Withdrawal } from "./withdrawal";
|
17
|
+
export { default as League } from "./league";
|
18
|
+
export { default as LeagueOnUsers } from "./league-on-users";
|
19
|
+
export { default as User } from "./user";
|
20
|
+
export { default as SubscriptionPricingOptionOnCoupons } from "./subscription-pricing-option-on-coupons";
|
21
|
+
export { default as SubscribersOnCreators } from "./subscribers-on-creators";
|
22
|
+
export { default as NotificationPreference } from "./notification-preference";
|
23
|
+
export { default as Application } from "./application";
|
24
|
+
export { default as Store } from "./store";
|
25
|
+
export { default as UsersOnCreators } from "./users_on_creators";
|
26
|
+
export { default as Integration } from "./integration";
|
27
|
+
export { default as Sport } from "./sport";
|
28
|
+
export { default as SportOnPosts } from "./sport-on-posts";
|
29
|
+
export { default as DiscordIntegration } from "./discord-integration";
|
30
|
+
export { default as SubscriberDiscordIntegration } from "./subscriber-discord-integration";
|
31
|
+
export { default as Whitelist } from "./whitelist";
|
32
|
+
export { default as FailedTransactions } from "./failed-transactions";
|
33
|
+
export { default as Organization } from "./organization";
|
34
|
+
export { default as UsersOnOrganizations } from "./users_on_organizations";
|
35
|
+
export { default as StoresOnOrganizations } from "./stores_on_organizations";
|
36
|
+
export { default as TelegramIntegration } from "./telegram-integration";
|
37
|
+
export { default as SubscriberTelegramIntegration } from "./subscriber-telegram-integration";
|
38
|
+
export { default as TelegramIntegrationLog } from "./telegram-integration-log";
|
39
|
+
export { default as TelegramIntegrationCode } from "./telegram-integration-code";
|
40
|
+
export { default as TelegramIntegrationInviteLink } from "./telegram-integration-invite-link";
|
41
|
+
export { default as DiscordIntegrationLog } from "./discord-integration-log";
|
42
|
+
export { default as PostsOnIntegrations } from "./post_on_integrations";
|
43
|
+
export { default as FeaturedCreator } from "./featured-creator";
|
44
|
+
export { default as PrivateFeedUsers } from "./private-feed-users";
|
45
|
+
export { default as CancellationOffer } from "./cancellation_offer";
|
46
|
+
export { default as CancellationReason } from "./cancellation_reason";
|
47
|
+
export { default as AffiliateCode } from "./affiliate-code";
|
48
|
+
export { default as AffiliateLinkType } from "./affiliate-links-types";
|
49
|
+
export { default as LimitedOffer } from "./limited-offer";
|
50
|
+
export { default as Bet } from "./bet";
|
51
|
+
export { default as MigrationToken } from "./migration-token";
|
52
|
+
export { default as SMSCustomMessage } from "./sms-custom-message";
|
53
|
+
export { default as Permission } from "./permission";
|
54
|
+
export { default as UsersOnPermissions } from "./users-on-permissions";
|
55
|
+
export { default as PumpingRiskScoreMonitoring } from "./pumping-risk-score-monitoring";
|
56
|
+
export { default as UserReview } from "./user-review";
|
57
|
+
export { default as UserTransactionLocation } from "./user-transaction-location";
|
58
|
+
export { default as CouponRedemptions } from "./coupon_redemptions";
|
59
|
+
export { default as UserCookiePreference } from "./user-cookie-preference";
|
60
|
+
export { default as CreatorServiceFee } from "./creator-service-fee";
|
61
|
+
export { default as CampaignTemplate } from "./campaign-template";
|
62
|
+
export { default as Campaign } from "./campaign";
|
63
|
+
export { default as CampaignMessage } from "./campaign-message";
|
64
|
+
export { default as Trigger } from "./trigger";
|
65
|
+
export { default as Segment } from "./segment";
|
66
|
+
|
67
|
+
export { default as pbSequelize } from "./pb-sequelize";
|
@@ -1,83 +1,83 @@
|
|
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
|
-
type IntegrationProviderType = "stripe";
|
13
|
-
|
14
|
-
// order of InferAttributes & InferCreationAttributes is important.
|
15
|
-
class Integration extends Model<
|
16
|
-
InferAttributes<Integration>,
|
17
|
-
InferCreationAttributes<Integration>
|
18
|
-
> {
|
19
|
-
// 'CreationOptional' is a special type that marks the field as optional
|
20
|
-
// when creating an instance of the model (such as using Model.create()).
|
21
|
-
declare id: CreationOptional<string>;
|
22
|
-
declare userId: string;
|
23
|
-
declare externalId: string;
|
24
|
-
declare provider: IntegrationProviderType;
|
25
|
-
declare metadata: string;
|
26
|
-
|
27
|
-
declare createdAt: CreationOptional<Date>;
|
28
|
-
declare updatedAt: CreationOptional<Date>;
|
29
|
-
}
|
30
|
-
|
31
|
-
Integration.init(
|
32
|
-
{
|
33
|
-
id: {
|
34
|
-
type: DataTypes.BIGINT,
|
35
|
-
primaryKey: true,
|
36
|
-
allowNull: false,
|
37
|
-
defaultValue: sequelize.fn("next_id"),
|
38
|
-
},
|
39
|
-
userId: {
|
40
|
-
type: DataTypes.BIGINT,
|
41
|
-
allowNull: false,
|
42
|
-
field: "user_id",
|
43
|
-
references: {
|
44
|
-
model: User,
|
45
|
-
},
|
46
|
-
},
|
47
|
-
externalId: {
|
48
|
-
type: DataTypes.STRING,
|
49
|
-
allowNull: true,
|
50
|
-
field: "external_id",
|
51
|
-
},
|
52
|
-
provider: {
|
53
|
-
type: DataTypes.STRING,
|
54
|
-
allowNull: true,
|
55
|
-
field: "provider",
|
56
|
-
},
|
57
|
-
metadata: {
|
58
|
-
type: DataTypes.STRING,
|
59
|
-
allowNull: true,
|
60
|
-
field: "metadata",
|
61
|
-
},
|
62
|
-
createdAt: DataTypes.DATE,
|
63
|
-
updatedAt: DataTypes.DATE,
|
64
|
-
},
|
65
|
-
{
|
66
|
-
tableName: "integrations",
|
67
|
-
sequelize,
|
68
|
-
}
|
69
|
-
);
|
70
|
-
|
71
|
-
User.hasMany(Integration, {
|
72
|
-
foreignKey: "userId",
|
73
|
-
sourceKey: "id",
|
74
|
-
onDelete: "NO ACTION",
|
75
|
-
constraints: false,
|
76
|
-
});
|
77
|
-
|
78
|
-
Integration.hasOne(User, {
|
79
|
-
foreignKey: "id",
|
80
|
-
sourceKey: "userId",
|
81
|
-
});
|
82
|
-
|
83
|
-
export default Integration;
|
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
|
+
type IntegrationProviderType = "stripe";
|
13
|
+
|
14
|
+
// order of InferAttributes & InferCreationAttributes is important.
|
15
|
+
class Integration extends Model<
|
16
|
+
InferAttributes<Integration>,
|
17
|
+
InferCreationAttributes<Integration>
|
18
|
+
> {
|
19
|
+
// 'CreationOptional' is a special type that marks the field as optional
|
20
|
+
// when creating an instance of the model (such as using Model.create()).
|
21
|
+
declare id: CreationOptional<string>;
|
22
|
+
declare userId: string;
|
23
|
+
declare externalId: string;
|
24
|
+
declare provider: IntegrationProviderType;
|
25
|
+
declare metadata: string;
|
26
|
+
|
27
|
+
declare createdAt: CreationOptional<Date>;
|
28
|
+
declare updatedAt: CreationOptional<Date>;
|
29
|
+
}
|
30
|
+
|
31
|
+
Integration.init(
|
32
|
+
{
|
33
|
+
id: {
|
34
|
+
type: DataTypes.BIGINT,
|
35
|
+
primaryKey: true,
|
36
|
+
allowNull: false,
|
37
|
+
defaultValue: sequelize.fn("next_id"),
|
38
|
+
},
|
39
|
+
userId: {
|
40
|
+
type: DataTypes.BIGINT,
|
41
|
+
allowNull: false,
|
42
|
+
field: "user_id",
|
43
|
+
references: {
|
44
|
+
model: User,
|
45
|
+
},
|
46
|
+
},
|
47
|
+
externalId: {
|
48
|
+
type: DataTypes.STRING,
|
49
|
+
allowNull: true,
|
50
|
+
field: "external_id",
|
51
|
+
},
|
52
|
+
provider: {
|
53
|
+
type: DataTypes.STRING,
|
54
|
+
allowNull: true,
|
55
|
+
field: "provider",
|
56
|
+
},
|
57
|
+
metadata: {
|
58
|
+
type: DataTypes.STRING,
|
59
|
+
allowNull: true,
|
60
|
+
field: "metadata",
|
61
|
+
},
|
62
|
+
createdAt: DataTypes.DATE,
|
63
|
+
updatedAt: DataTypes.DATE,
|
64
|
+
},
|
65
|
+
{
|
66
|
+
tableName: "integrations",
|
67
|
+
sequelize,
|
68
|
+
}
|
69
|
+
);
|
70
|
+
|
71
|
+
User.hasMany(Integration, {
|
72
|
+
foreignKey: "userId",
|
73
|
+
sourceKey: "id",
|
74
|
+
onDelete: "NO ACTION",
|
75
|
+
constraints: false,
|
76
|
+
});
|
77
|
+
|
78
|
+
Integration.hasOne(User, {
|
79
|
+
foreignKey: "id",
|
80
|
+
sourceKey: "userId",
|
81
|
+
});
|
82
|
+
|
83
|
+
export default Integration;
|
@@ -1,81 +1,81 @@
|
|
1
|
-
import {
|
2
|
-
Model,
|
3
|
-
InferAttributes,
|
4
|
-
InferCreationAttributes,
|
5
|
-
CreationOptional,
|
6
|
-
DataTypes,
|
7
|
-
} from "sequelize";
|
8
|
-
import League from "./league";
|
9
|
-
|
10
|
-
import sequelize from "./pb-sequelize";
|
11
|
-
import User from "./user";
|
12
|
-
|
13
|
-
// order of InferAttributes & InferCreationAttributes is important.
|
14
|
-
class LeagueOnUsers extends Model<
|
15
|
-
InferAttributes<LeagueOnUsers>,
|
16
|
-
InferCreationAttributes<LeagueOnUsers>
|
17
|
-
> {
|
18
|
-
// 'CreationOptional' is a special type that marks the field as optional
|
19
|
-
// when creating an instance of the model (such as using Model.create()).
|
20
|
-
declare id: CreationOptional<string>;
|
21
|
-
declare leagueId: string;
|
22
|
-
declare userId: string;
|
23
|
-
declare createdAt: CreationOptional<Date>;
|
24
|
-
declare updatedAt: CreationOptional<Date>;
|
25
|
-
}
|
26
|
-
|
27
|
-
LeagueOnUsers.init(
|
28
|
-
{
|
29
|
-
id: {
|
30
|
-
type: DataTypes.BIGINT,
|
31
|
-
primaryKey: true,
|
32
|
-
allowNull: false,
|
33
|
-
defaultValue: sequelize.fn("next_id"),
|
34
|
-
},
|
35
|
-
leagueId: {
|
36
|
-
type: DataTypes.BIGINT,
|
37
|
-
field: "league_id",
|
38
|
-
allowNull: false,
|
39
|
-
},
|
40
|
-
userId: {
|
41
|
-
type: DataTypes.BIGINT,
|
42
|
-
field: "user_id",
|
43
|
-
allowNull: false,
|
44
|
-
},
|
45
|
-
createdAt: DataTypes.DATE,
|
46
|
-
updatedAt: DataTypes.DATE,
|
47
|
-
},
|
48
|
-
{
|
49
|
-
// Other model options go here
|
50
|
-
tableName: "league_on_users",
|
51
|
-
sequelize,
|
52
|
-
}
|
53
|
-
);
|
54
|
-
|
55
|
-
LeagueOnUsers.hasOne(League, {
|
56
|
-
foreignKey: "id",
|
57
|
-
sourceKey: "leagueId",
|
58
|
-
onDelete: "NO ACTION",
|
59
|
-
constraints: false,
|
60
|
-
});
|
61
|
-
|
62
|
-
League.hasMany(LeagueOnUsers, {
|
63
|
-
foreignKey: "leagueId",
|
64
|
-
onDelete: "NO ACTION",
|
65
|
-
constraints: false,
|
66
|
-
});
|
67
|
-
|
68
|
-
LeagueOnUsers.hasOne(User, {
|
69
|
-
foreignKey: "id",
|
70
|
-
sourceKey: "userId",
|
71
|
-
onDelete: "NO ACTION",
|
72
|
-
constraints: false,
|
73
|
-
});
|
74
|
-
|
75
|
-
User.hasMany(LeagueOnUsers, {
|
76
|
-
foreignKey: "userId",
|
77
|
-
onDelete: "NO ACTION",
|
78
|
-
constraints: false,
|
79
|
-
});
|
80
|
-
|
81
|
-
export default LeagueOnUsers;
|
1
|
+
import {
|
2
|
+
Model,
|
3
|
+
InferAttributes,
|
4
|
+
InferCreationAttributes,
|
5
|
+
CreationOptional,
|
6
|
+
DataTypes,
|
7
|
+
} from "sequelize";
|
8
|
+
import League from "./league";
|
9
|
+
|
10
|
+
import sequelize from "./pb-sequelize";
|
11
|
+
import User from "./user";
|
12
|
+
|
13
|
+
// order of InferAttributes & InferCreationAttributes is important.
|
14
|
+
class LeagueOnUsers extends Model<
|
15
|
+
InferAttributes<LeagueOnUsers>,
|
16
|
+
InferCreationAttributes<LeagueOnUsers>
|
17
|
+
> {
|
18
|
+
// 'CreationOptional' is a special type that marks the field as optional
|
19
|
+
// when creating an instance of the model (such as using Model.create()).
|
20
|
+
declare id: CreationOptional<string>;
|
21
|
+
declare leagueId: string;
|
22
|
+
declare userId: string;
|
23
|
+
declare createdAt: CreationOptional<Date>;
|
24
|
+
declare updatedAt: CreationOptional<Date>;
|
25
|
+
}
|
26
|
+
|
27
|
+
LeagueOnUsers.init(
|
28
|
+
{
|
29
|
+
id: {
|
30
|
+
type: DataTypes.BIGINT,
|
31
|
+
primaryKey: true,
|
32
|
+
allowNull: false,
|
33
|
+
defaultValue: sequelize.fn("next_id"),
|
34
|
+
},
|
35
|
+
leagueId: {
|
36
|
+
type: DataTypes.BIGINT,
|
37
|
+
field: "league_id",
|
38
|
+
allowNull: false,
|
39
|
+
},
|
40
|
+
userId: {
|
41
|
+
type: DataTypes.BIGINT,
|
42
|
+
field: "user_id",
|
43
|
+
allowNull: false,
|
44
|
+
},
|
45
|
+
createdAt: DataTypes.DATE,
|
46
|
+
updatedAt: DataTypes.DATE,
|
47
|
+
},
|
48
|
+
{
|
49
|
+
// Other model options go here
|
50
|
+
tableName: "league_on_users",
|
51
|
+
sequelize,
|
52
|
+
}
|
53
|
+
);
|
54
|
+
|
55
|
+
LeagueOnUsers.hasOne(League, {
|
56
|
+
foreignKey: "id",
|
57
|
+
sourceKey: "leagueId",
|
58
|
+
onDelete: "NO ACTION",
|
59
|
+
constraints: false,
|
60
|
+
});
|
61
|
+
|
62
|
+
League.hasMany(LeagueOnUsers, {
|
63
|
+
foreignKey: "leagueId",
|
64
|
+
onDelete: "NO ACTION",
|
65
|
+
constraints: false,
|
66
|
+
});
|
67
|
+
|
68
|
+
LeagueOnUsers.hasOne(User, {
|
69
|
+
foreignKey: "id",
|
70
|
+
sourceKey: "userId",
|
71
|
+
onDelete: "NO ACTION",
|
72
|
+
constraints: false,
|
73
|
+
});
|
74
|
+
|
75
|
+
User.hasMany(LeagueOnUsers, {
|
76
|
+
foreignKey: "userId",
|
77
|
+
onDelete: "NO ACTION",
|
78
|
+
constraints: false,
|
79
|
+
});
|
80
|
+
|
81
|
+
export default LeagueOnUsers;
|
package/typed-model/league.ts
CHANGED
@@ -1,53 +1,53 @@
|
|
1
|
-
import {
|
2
|
-
Model,
|
3
|
-
InferAttributes,
|
4
|
-
InferCreationAttributes,
|
5
|
-
CreationOptional,
|
6
|
-
DataTypes,
|
7
|
-
fn,
|
8
|
-
} from "sequelize";
|
9
|
-
|
10
|
-
import sequelize from "./pb-sequelize";
|
11
|
-
|
12
|
-
// order of InferAttributes & InferCreationAttributes is important.
|
13
|
-
class League extends Model<
|
14
|
-
InferAttributes<League>,
|
15
|
-
InferCreationAttributes<League>
|
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 sport: string;
|
21
|
-
declare leagueName: string;
|
22
|
-
declare createdAt: CreationOptional<Date>;
|
23
|
-
declare updatedAt: CreationOptional<Date>;
|
24
|
-
}
|
25
|
-
|
26
|
-
League.init(
|
27
|
-
{
|
28
|
-
id: {
|
29
|
-
type: DataTypes.BIGINT,
|
30
|
-
primaryKey: true,
|
31
|
-
allowNull: false,
|
32
|
-
defaultValue: sequelize.fn("next_id"),
|
33
|
-
},
|
34
|
-
sport: {
|
35
|
-
type: DataTypes.STRING,
|
36
|
-
field: "sport",
|
37
|
-
},
|
38
|
-
leagueName: {
|
39
|
-
type: DataTypes.STRING,
|
40
|
-
field: "league_name",
|
41
|
-
unique: true,
|
42
|
-
},
|
43
|
-
createdAt: DataTypes.DATE,
|
44
|
-
updatedAt: DataTypes.DATE,
|
45
|
-
},
|
46
|
-
{
|
47
|
-
// Other model options go here
|
48
|
-
tableName: "leagues",
|
49
|
-
sequelize,
|
50
|
-
}
|
51
|
-
);
|
52
|
-
|
53
|
-
export default League;
|
1
|
+
import {
|
2
|
+
Model,
|
3
|
+
InferAttributes,
|
4
|
+
InferCreationAttributes,
|
5
|
+
CreationOptional,
|
6
|
+
DataTypes,
|
7
|
+
fn,
|
8
|
+
} from "sequelize";
|
9
|
+
|
10
|
+
import sequelize from "./pb-sequelize";
|
11
|
+
|
12
|
+
// order of InferAttributes & InferCreationAttributes is important.
|
13
|
+
class League extends Model<
|
14
|
+
InferAttributes<League>,
|
15
|
+
InferCreationAttributes<League>
|
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 sport: string;
|
21
|
+
declare leagueName: string;
|
22
|
+
declare createdAt: CreationOptional<Date>;
|
23
|
+
declare updatedAt: CreationOptional<Date>;
|
24
|
+
}
|
25
|
+
|
26
|
+
League.init(
|
27
|
+
{
|
28
|
+
id: {
|
29
|
+
type: DataTypes.BIGINT,
|
30
|
+
primaryKey: true,
|
31
|
+
allowNull: false,
|
32
|
+
defaultValue: sequelize.fn("next_id"),
|
33
|
+
},
|
34
|
+
sport: {
|
35
|
+
type: DataTypes.STRING,
|
36
|
+
field: "sport",
|
37
|
+
},
|
38
|
+
leagueName: {
|
39
|
+
type: DataTypes.STRING,
|
40
|
+
field: "league_name",
|
41
|
+
unique: true,
|
42
|
+
},
|
43
|
+
createdAt: DataTypes.DATE,
|
44
|
+
updatedAt: DataTypes.DATE,
|
45
|
+
},
|
46
|
+
{
|
47
|
+
// Other model options go here
|
48
|
+
tableName: "leagues",
|
49
|
+
sequelize,
|
50
|
+
}
|
51
|
+
);
|
52
|
+
|
53
|
+
export default League;
|