@earbug/db-models 0.0.62 → 0.0.63
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/.dockerignore +10 -0
- package/.github/workflows/publish.yaml +303 -0
- package/.nvmrc +1 -0
- package/Dockerfile.generate +19 -0
- package/model_options.json +3 -0
- package/models/AccessControlPreference.ts +53 -0
- package/models/AffinityRelationshipType.ts +96 -0
- package/models/AffinityTier.ts +131 -0
- package/models/AppUser.ts +577 -0
- package/models/AppUserDevice.ts +101 -0
- package/models/AppUserDeviceClassicBackup20260906.ts +66 -0
- package/models/AppUserFollowRelation.ts +128 -0
- package/models/AppUserPlatformRelation.ts +150 -0
- package/models/CanonAlbum.ts +229 -0
- package/models/CanonAlbumExternalReferenceRelation.ts +92 -0
- package/models/CanonAlbumGenreRelation.ts +86 -0
- package/models/CanonAlbumLabelRelation.ts +86 -0
- package/models/CanonAlbumTrackRelation.ts +92 -0
- package/models/CanonArtist.ts +356 -0
- package/models/CanonArtistAlbumRelation.ts +92 -0
- package/models/CanonArtistExternalReferenceRelation.ts +92 -0
- package/models/CanonArtistGenreRelation.ts +86 -0
- package/models/CanonArtistMemberRelation.ts +86 -0
- package/models/CanonArtistTrackRelation.ts +92 -0
- package/models/CanonGenre.ts +273 -0
- package/models/CanonGenreExternalReferenceRelation.ts +92 -0
- package/models/CanonLabel.ts +129 -0
- package/models/CanonLabelExternalReferenceRelation.ts +92 -0
- package/models/CanonMember.ts +130 -0
- package/models/CanonMemberExternalReferenceRelation.ts +99 -0
- package/models/CanonToPlatformAlbumRelation.ts +92 -0
- package/models/CanonToPlatformArtistRelation.ts +92 -0
- package/models/CanonToPlatformGenreRelation.ts +86 -0
- package/models/CanonToPlatformTrackRelation.ts +92 -0
- package/models/CanonTrack.ts +232 -0
- package/models/ConfigParam.ts +62 -0
- package/models/ExternalReference.ts +201 -0
- package/models/FeedConfig.ts +65 -0
- package/models/FeedContentType.ts +124 -0
- package/models/GuestUser.ts +137 -0
- package/models/JukeboxAccessType.ts +60 -0
- package/models/JukeboxCanonGenreRelation.ts +108 -0
- package/models/JukeboxInvite.ts +125 -0
- package/models/JukeboxQueueEntry.ts +247 -0
- package/models/JukeboxQueueMode.ts +60 -0
- package/models/JukeboxSession.ts +334 -0
- package/models/JukeboxSessionArtistAffinity.ts +136 -0
- package/models/JukeboxSessionGenreAffinity.ts +136 -0
- package/models/JukeboxStatus.ts +58 -0
- package/models/JukeboxTerminationCondition.ts +60 -0
- package/models/JukeboxType.ts +60 -0
- package/models/JukeboxUser.ts +182 -0
- package/models/JukeboxUserType.ts +58 -0
- package/models/KnexMigrations.ts +60 -0
- package/models/KnexMigrationsLock.ts +48 -0
- package/models/MerchItem.ts +198 -0
- package/models/MerchOrchestration.ts +130 -0
- package/models/MerchPlatform.ts +95 -0
- package/models/MerchType.ts +89 -0
- package/models/MetricsDaily.ts +79 -0
- package/models/MetricsEvent.ts +124 -0
- package/models/NewsArticle.ts +177 -0
- package/models/NewsPlatform.ts +76 -0
- package/models/NewsSite.ts +75 -0
- package/models/Notification.ts +214 -0
- package/models/NotificationType.ts +66 -0
- package/models/PauseStatusType.ts +58 -0
- package/models/Platform.ts +189 -0
- package/models/PlatformAlbum.ts +398 -0
- package/models/PlatformAlbumGenreRelation.ts +86 -0
- package/models/PlatformAlbumTrackRelation.ts +92 -0
- package/models/PlatformArtist.ts +358 -0
- package/models/PlatformArtistAlbumRelation.ts +92 -0
- package/models/PlatformArtistGenreRelation.ts +86 -0
- package/models/PlatformArtistTrackRelation.ts +92 -0
- package/models/PlatformGenre.ts +194 -0
- package/models/PlatformTrack.ts +339 -0
- package/models/PlatformTrackGenreRelation.ts +86 -0
- package/models/PlatformUserAlbum.ts +152 -0
- package/models/PlatformUserAlbumTrack.ts +138 -0
- package/models/PlatformUserPlaylist.ts +260 -0
- package/models/PlatformUserPlaylistArtistAffinity.ts +136 -0
- package/models/PlatformUserPlaylistGenreAffinity.ts +136 -0
- package/models/PlatformUserPlaylistTrack.ts +162 -0
- package/models/PlaybackStatus.ts +47 -0
- package/models/PlaybackStatusType.ts +58 -0
- package/models/RadioShow.ts +209 -0
- package/models/RadioShowGenres.ts +107 -0
- package/models/RadioShowMedia.ts +181 -0
- package/models/RadioShowPlacement.ts +115 -0
- package/models/RadioShowPublishRequests.ts +86 -0
- package/models/State.ts +86 -0
- package/models/TrackDeletionReason.ts +58 -0
- package/models/UnmatchedAlbum.ts +66 -0
- package/models/UnmatchedArtist.ts +81 -0
- package/models/UserAbuseReports.ts +232 -0
- package/models/UserAffinity.ts +117 -0
- package/models/UserArtistAffinity.ts +136 -0
- package/models/UserBookmarks.ts +235 -0
- package/models/UserComments.ts +271 -0
- package/models/UserContacts.ts +155 -0
- package/models/UserEngagementFactor.ts +109 -0
- package/models/UserGenreAffinity.ts +136 -0
- package/models/UserLikes.ts +235 -0
- package/models/UserMessages.ts +189 -0
- package/models/Versus.ts +438 -0
- package/models/VersusAccessType.ts +66 -0
- package/models/VersusCoCreator.ts +111 -0
- package/models/VersusCreatorScope.ts +66 -0
- package/models/VersusEndMode.ts +66 -0
- package/models/VersusEndTimerDuration.ts +81 -0
- package/models/VersusEndVoteThreshold.ts +67 -0
- package/models/VersusEntityKind.ts +79 -0
- package/models/VersusOption.ts +258 -0
- package/models/VersusPublishIssue.ts +146 -0
- package/models/VersusQuestion.ts +123 -0
- package/models/VersusQuestionVariableType.ts +66 -0
- package/models/VersusVote.ts +99 -0
- package/models/VersusVotingListType.ts +66 -0
- package/models/VersusVotingMode.ts +66 -0
- package/models/index.ts +3 -0
- package/models/init-models.ts +1259 -0
- package/models/initDb.ts +72 -0
- package/models/rdsCaBundle.ts +5 -0
- package/package.json +2 -5
- package/scripts/generate-and-upload.mjs +123 -0
- package/scripts/update-rds-ca-bundle.mjs +44 -0
- package/tsconfig.json +52 -0
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
import * as Sequelize from 'sequelize';
|
|
2
|
+
import { DataTypes, Model, Optional } from 'sequelize';
|
|
3
|
+
import type { Versus, VersusId } from './Versus';
|
|
4
|
+
import type { VersusQuestionVariableType, VersusQuestionVariableTypeId } from './VersusQuestionVariableType';
|
|
5
|
+
import type { VersusVotingListType, VersusVotingListTypeId } from './VersusVotingListType';
|
|
6
|
+
|
|
7
|
+
export interface VersusQuestionAttributes {
|
|
8
|
+
id: string;
|
|
9
|
+
questionTemplate: string;
|
|
10
|
+
questionVariableTypeId: number;
|
|
11
|
+
votingListTypeId: number;
|
|
12
|
+
createdAt: Date;
|
|
13
|
+
updatedAt: Date;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
export type VersusQuestionPk = "id";
|
|
17
|
+
export type VersusQuestionId = VersusQuestion[VersusQuestionPk];
|
|
18
|
+
export type VersusQuestionOptionalAttributes = "id" | "createdAt" | "updatedAt";
|
|
19
|
+
export type VersusQuestionCreationAttributes = Optional<VersusQuestionAttributes, VersusQuestionOptionalAttributes>;
|
|
20
|
+
|
|
21
|
+
export class VersusQuestion extends Model<VersusQuestionAttributes, VersusQuestionCreationAttributes> implements VersusQuestionAttributes {
|
|
22
|
+
id!: string;
|
|
23
|
+
questionTemplate!: string;
|
|
24
|
+
questionVariableTypeId!: number;
|
|
25
|
+
votingListTypeId!: number;
|
|
26
|
+
createdAt!: Date;
|
|
27
|
+
updatedAt!: Date;
|
|
28
|
+
|
|
29
|
+
// VersusQuestion hasMany Versus via versusQuestionId
|
|
30
|
+
versus!: Versus[];
|
|
31
|
+
getVersus!: Sequelize.HasManyGetAssociationsMixin<Versus>;
|
|
32
|
+
setVersus!: Sequelize.HasManySetAssociationsMixin<Versus, VersusId>;
|
|
33
|
+
addVersu!: Sequelize.HasManyAddAssociationMixin<Versus, VersusId>;
|
|
34
|
+
addVersus!: Sequelize.HasManyAddAssociationsMixin<Versus, VersusId>;
|
|
35
|
+
createVersu!: Sequelize.HasManyCreateAssociationMixin<Versus>;
|
|
36
|
+
removeVersu!: Sequelize.HasManyRemoveAssociationMixin<Versus, VersusId>;
|
|
37
|
+
removeVersus!: Sequelize.HasManyRemoveAssociationsMixin<Versus, VersusId>;
|
|
38
|
+
hasVersu!: Sequelize.HasManyHasAssociationMixin<Versus, VersusId>;
|
|
39
|
+
hasVersus!: Sequelize.HasManyHasAssociationsMixin<Versus, VersusId>;
|
|
40
|
+
countVersus!: Sequelize.HasManyCountAssociationsMixin;
|
|
41
|
+
// VersusQuestion belongsTo VersusQuestionVariableType via questionVariableTypeId
|
|
42
|
+
questionVariableType!: VersusQuestionVariableType;
|
|
43
|
+
getQuestionVariableType!: Sequelize.BelongsToGetAssociationMixin<VersusQuestionVariableType>;
|
|
44
|
+
setQuestionVariableType!: Sequelize.BelongsToSetAssociationMixin<VersusQuestionVariableType, VersusQuestionVariableTypeId>;
|
|
45
|
+
createQuestionVariableType!: Sequelize.BelongsToCreateAssociationMixin<VersusQuestionVariableType>;
|
|
46
|
+
// VersusQuestion belongsTo VersusVotingListType via votingListTypeId
|
|
47
|
+
votingListType!: VersusVotingListType;
|
|
48
|
+
getVotingListType!: Sequelize.BelongsToGetAssociationMixin<VersusVotingListType>;
|
|
49
|
+
setVotingListType!: Sequelize.BelongsToSetAssociationMixin<VersusVotingListType, VersusVotingListTypeId>;
|
|
50
|
+
createVotingListType!: Sequelize.BelongsToCreateAssociationMixin<VersusVotingListType>;
|
|
51
|
+
|
|
52
|
+
static initModel(sequelize: Sequelize.Sequelize): typeof VersusQuestion {
|
|
53
|
+
return VersusQuestion.init({
|
|
54
|
+
id: {
|
|
55
|
+
type: DataTypes.UUID,
|
|
56
|
+
allowNull: false,
|
|
57
|
+
defaultValue: DataTypes.UUIDV4,
|
|
58
|
+
primaryKey: true
|
|
59
|
+
},
|
|
60
|
+
questionTemplate: {
|
|
61
|
+
type: DataTypes.TEXT,
|
|
62
|
+
allowNull: false,
|
|
63
|
+
field: 'question_template'
|
|
64
|
+
},
|
|
65
|
+
questionVariableTypeId: {
|
|
66
|
+
type: DataTypes.SMALLINT,
|
|
67
|
+
allowNull: false,
|
|
68
|
+
references: {
|
|
69
|
+
model: 'versus_question_variable_type',
|
|
70
|
+
key: 'id'
|
|
71
|
+
},
|
|
72
|
+
field: 'question_variable_type_id'
|
|
73
|
+
},
|
|
74
|
+
votingListTypeId: {
|
|
75
|
+
type: DataTypes.SMALLINT,
|
|
76
|
+
allowNull: false,
|
|
77
|
+
references: {
|
|
78
|
+
model: 'versus_voting_list_type',
|
|
79
|
+
key: 'id'
|
|
80
|
+
},
|
|
81
|
+
field: 'voting_list_type_id'
|
|
82
|
+
},
|
|
83
|
+
createdAt: {
|
|
84
|
+
type: DataTypes.DATE,
|
|
85
|
+
allowNull: false,
|
|
86
|
+
defaultValue: Sequelize.Sequelize.literal('CURRENT_TIMESTAMP'),
|
|
87
|
+
field: 'created_at'
|
|
88
|
+
},
|
|
89
|
+
updatedAt: {
|
|
90
|
+
type: DataTypes.DATE,
|
|
91
|
+
allowNull: false,
|
|
92
|
+
defaultValue: Sequelize.Sequelize.literal('CURRENT_TIMESTAMP'),
|
|
93
|
+
field: 'updated_at'
|
|
94
|
+
}
|
|
95
|
+
}, {
|
|
96
|
+
sequelize,
|
|
97
|
+
tableName: 'versus_question',
|
|
98
|
+
schema: 'eb',
|
|
99
|
+
timestamps: false,
|
|
100
|
+
indexes: [
|
|
101
|
+
{
|
|
102
|
+
name: "idx_versus_question_variable_type",
|
|
103
|
+
fields: [
|
|
104
|
+
{ name: "question_variable_type_id" },
|
|
105
|
+
]
|
|
106
|
+
},
|
|
107
|
+
{
|
|
108
|
+
name: "idx_versus_question_voting_list",
|
|
109
|
+
fields: [
|
|
110
|
+
{ name: "voting_list_type_id" },
|
|
111
|
+
]
|
|
112
|
+
},
|
|
113
|
+
{
|
|
114
|
+
name: "versus_question_pkey",
|
|
115
|
+
unique: true,
|
|
116
|
+
fields: [
|
|
117
|
+
{ name: "id" },
|
|
118
|
+
]
|
|
119
|
+
},
|
|
120
|
+
]
|
|
121
|
+
});
|
|
122
|
+
}
|
|
123
|
+
}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import * as Sequelize from 'sequelize';
|
|
2
|
+
import { DataTypes, Model, Optional } from 'sequelize';
|
|
3
|
+
import type { VersusQuestion, VersusQuestionId } from './VersusQuestion';
|
|
4
|
+
|
|
5
|
+
export interface VersusQuestionVariableTypeAttributes {
|
|
6
|
+
id: number;
|
|
7
|
+
description: string;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export type VersusQuestionVariableTypePk = "id";
|
|
11
|
+
export type VersusQuestionVariableTypeId = VersusQuestionVariableType[VersusQuestionVariableTypePk];
|
|
12
|
+
export type VersusQuestionVariableTypeCreationAttributes = VersusQuestionVariableTypeAttributes;
|
|
13
|
+
|
|
14
|
+
export class VersusQuestionVariableType extends Model<VersusQuestionVariableTypeAttributes, VersusQuestionVariableTypeCreationAttributes> implements VersusQuestionVariableTypeAttributes {
|
|
15
|
+
id!: number;
|
|
16
|
+
description!: string;
|
|
17
|
+
|
|
18
|
+
// VersusQuestionVariableType hasMany VersusQuestion via questionVariableTypeId
|
|
19
|
+
versusQuestions!: VersusQuestion[];
|
|
20
|
+
getVersusQuestions!: Sequelize.HasManyGetAssociationsMixin<VersusQuestion>;
|
|
21
|
+
setVersusQuestions!: Sequelize.HasManySetAssociationsMixin<VersusQuestion, VersusQuestionId>;
|
|
22
|
+
addVersusQuestion!: Sequelize.HasManyAddAssociationMixin<VersusQuestion, VersusQuestionId>;
|
|
23
|
+
addVersusQuestions!: Sequelize.HasManyAddAssociationsMixin<VersusQuestion, VersusQuestionId>;
|
|
24
|
+
createVersusQuestion!: Sequelize.HasManyCreateAssociationMixin<VersusQuestion>;
|
|
25
|
+
removeVersusQuestion!: Sequelize.HasManyRemoveAssociationMixin<VersusQuestion, VersusQuestionId>;
|
|
26
|
+
removeVersusQuestions!: Sequelize.HasManyRemoveAssociationsMixin<VersusQuestion, VersusQuestionId>;
|
|
27
|
+
hasVersusQuestion!: Sequelize.HasManyHasAssociationMixin<VersusQuestion, VersusQuestionId>;
|
|
28
|
+
hasVersusQuestions!: Sequelize.HasManyHasAssociationsMixin<VersusQuestion, VersusQuestionId>;
|
|
29
|
+
countVersusQuestions!: Sequelize.HasManyCountAssociationsMixin;
|
|
30
|
+
|
|
31
|
+
static initModel(sequelize: Sequelize.Sequelize): typeof VersusQuestionVariableType {
|
|
32
|
+
return VersusQuestionVariableType.init({
|
|
33
|
+
id: {
|
|
34
|
+
type: DataTypes.SMALLINT,
|
|
35
|
+
allowNull: false,
|
|
36
|
+
primaryKey: true
|
|
37
|
+
},
|
|
38
|
+
description: {
|
|
39
|
+
type: DataTypes.STRING(64),
|
|
40
|
+
allowNull: false,
|
|
41
|
+
unique: "versus_question_variable_type_description_unique"
|
|
42
|
+
}
|
|
43
|
+
}, {
|
|
44
|
+
sequelize,
|
|
45
|
+
tableName: 'versus_question_variable_type',
|
|
46
|
+
schema: 'eb',
|
|
47
|
+
timestamps: false,
|
|
48
|
+
indexes: [
|
|
49
|
+
{
|
|
50
|
+
name: "versus_question_variable_type_description_unique",
|
|
51
|
+
unique: true,
|
|
52
|
+
fields: [
|
|
53
|
+
{ name: "description" },
|
|
54
|
+
]
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
name: "versus_question_variable_type_pkey",
|
|
58
|
+
unique: true,
|
|
59
|
+
fields: [
|
|
60
|
+
{ name: "id" },
|
|
61
|
+
]
|
|
62
|
+
},
|
|
63
|
+
]
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import * as Sequelize from 'sequelize';
|
|
2
|
+
import { DataTypes, Model, Optional } from 'sequelize';
|
|
3
|
+
import type { AppUser, AppUserId } from './AppUser';
|
|
4
|
+
import type { Versus, VersusId } from './Versus';
|
|
5
|
+
|
|
6
|
+
export interface VersusVoteAttributes {
|
|
7
|
+
id: string;
|
|
8
|
+
versusId: string;
|
|
9
|
+
appUserId: string;
|
|
10
|
+
createdAt: Date;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
export type VersusVotePk = "id";
|
|
14
|
+
export type VersusVoteId = VersusVote[VersusVotePk];
|
|
15
|
+
export type VersusVoteOptionalAttributes = "id" | "createdAt";
|
|
16
|
+
export type VersusVoteCreationAttributes = Optional<VersusVoteAttributes, VersusVoteOptionalAttributes>;
|
|
17
|
+
|
|
18
|
+
export class VersusVote extends Model<VersusVoteAttributes, VersusVoteCreationAttributes> implements VersusVoteAttributes {
|
|
19
|
+
id!: string;
|
|
20
|
+
versusId!: string;
|
|
21
|
+
appUserId!: string;
|
|
22
|
+
createdAt!: Date;
|
|
23
|
+
|
|
24
|
+
// VersusVote belongsTo AppUser via appUserId
|
|
25
|
+
appUser!: AppUser;
|
|
26
|
+
getAppUser!: Sequelize.BelongsToGetAssociationMixin<AppUser>;
|
|
27
|
+
setAppUser!: Sequelize.BelongsToSetAssociationMixin<AppUser, AppUserId>;
|
|
28
|
+
createAppUser!: Sequelize.BelongsToCreateAssociationMixin<AppUser>;
|
|
29
|
+
// VersusVote belongsTo Versus via versusId
|
|
30
|
+
versu!: Versus;
|
|
31
|
+
getVersu!: Sequelize.BelongsToGetAssociationMixin<Versus>;
|
|
32
|
+
setVersu!: Sequelize.BelongsToSetAssociationMixin<Versus, VersusId>;
|
|
33
|
+
createVersu!: Sequelize.BelongsToCreateAssociationMixin<Versus>;
|
|
34
|
+
|
|
35
|
+
static initModel(sequelize: Sequelize.Sequelize): typeof VersusVote {
|
|
36
|
+
return VersusVote.init({
|
|
37
|
+
id: {
|
|
38
|
+
type: DataTypes.UUID,
|
|
39
|
+
allowNull: false,
|
|
40
|
+
defaultValue: DataTypes.UUIDV4,
|
|
41
|
+
primaryKey: true
|
|
42
|
+
},
|
|
43
|
+
versusId: {
|
|
44
|
+
type: DataTypes.UUID,
|
|
45
|
+
allowNull: false,
|
|
46
|
+
references: {
|
|
47
|
+
model: 'versus',
|
|
48
|
+
key: 'id'
|
|
49
|
+
},
|
|
50
|
+
unique: "uq_versus_vote_versus_app_user",
|
|
51
|
+
field: 'versus_id'
|
|
52
|
+
},
|
|
53
|
+
appUserId: {
|
|
54
|
+
type: DataTypes.UUID,
|
|
55
|
+
allowNull: false,
|
|
56
|
+
references: {
|
|
57
|
+
model: 'app_user',
|
|
58
|
+
key: 'id'
|
|
59
|
+
},
|
|
60
|
+
unique: "uq_versus_vote_versus_app_user",
|
|
61
|
+
field: 'app_user_id'
|
|
62
|
+
},
|
|
63
|
+
createdAt: {
|
|
64
|
+
type: DataTypes.DATE,
|
|
65
|
+
allowNull: false,
|
|
66
|
+
defaultValue: Sequelize.Sequelize.literal('CURRENT_TIMESTAMP'),
|
|
67
|
+
field: 'created_at'
|
|
68
|
+
}
|
|
69
|
+
}, {
|
|
70
|
+
sequelize,
|
|
71
|
+
tableName: 'versus_vote',
|
|
72
|
+
schema: 'eb',
|
|
73
|
+
timestamps: false,
|
|
74
|
+
indexes: [
|
|
75
|
+
{
|
|
76
|
+
name: "idx_versus_vote_versus",
|
|
77
|
+
fields: [
|
|
78
|
+
{ name: "versus_id" },
|
|
79
|
+
]
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
name: "uq_versus_vote_versus_app_user",
|
|
83
|
+
unique: true,
|
|
84
|
+
fields: [
|
|
85
|
+
{ name: "versus_id" },
|
|
86
|
+
{ name: "app_user_id" },
|
|
87
|
+
]
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
name: "versus_vote_pkey",
|
|
91
|
+
unique: true,
|
|
92
|
+
fields: [
|
|
93
|
+
{ name: "id" },
|
|
94
|
+
]
|
|
95
|
+
},
|
|
96
|
+
]
|
|
97
|
+
});
|
|
98
|
+
}
|
|
99
|
+
}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import * as Sequelize from 'sequelize';
|
|
2
|
+
import { DataTypes, Model, Optional } from 'sequelize';
|
|
3
|
+
import type { VersusQuestion, VersusQuestionId } from './VersusQuestion';
|
|
4
|
+
|
|
5
|
+
export interface VersusVotingListTypeAttributes {
|
|
6
|
+
id: number;
|
|
7
|
+
description: string;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export type VersusVotingListTypePk = "id";
|
|
11
|
+
export type VersusVotingListTypeId = VersusVotingListType[VersusVotingListTypePk];
|
|
12
|
+
export type VersusVotingListTypeCreationAttributes = VersusVotingListTypeAttributes;
|
|
13
|
+
|
|
14
|
+
export class VersusVotingListType extends Model<VersusVotingListTypeAttributes, VersusVotingListTypeCreationAttributes> implements VersusVotingListTypeAttributes {
|
|
15
|
+
id!: number;
|
|
16
|
+
description!: string;
|
|
17
|
+
|
|
18
|
+
// VersusVotingListType hasMany VersusQuestion via votingListTypeId
|
|
19
|
+
versusQuestions!: VersusQuestion[];
|
|
20
|
+
getVersusQuestions!: Sequelize.HasManyGetAssociationsMixin<VersusQuestion>;
|
|
21
|
+
setVersusQuestions!: Sequelize.HasManySetAssociationsMixin<VersusQuestion, VersusQuestionId>;
|
|
22
|
+
addVersusQuestion!: Sequelize.HasManyAddAssociationMixin<VersusQuestion, VersusQuestionId>;
|
|
23
|
+
addVersusQuestions!: Sequelize.HasManyAddAssociationsMixin<VersusQuestion, VersusQuestionId>;
|
|
24
|
+
createVersusQuestion!: Sequelize.HasManyCreateAssociationMixin<VersusQuestion>;
|
|
25
|
+
removeVersusQuestion!: Sequelize.HasManyRemoveAssociationMixin<VersusQuestion, VersusQuestionId>;
|
|
26
|
+
removeVersusQuestions!: Sequelize.HasManyRemoveAssociationsMixin<VersusQuestion, VersusQuestionId>;
|
|
27
|
+
hasVersusQuestion!: Sequelize.HasManyHasAssociationMixin<VersusQuestion, VersusQuestionId>;
|
|
28
|
+
hasVersusQuestions!: Sequelize.HasManyHasAssociationsMixin<VersusQuestion, VersusQuestionId>;
|
|
29
|
+
countVersusQuestions!: Sequelize.HasManyCountAssociationsMixin;
|
|
30
|
+
|
|
31
|
+
static initModel(sequelize: Sequelize.Sequelize): typeof VersusVotingListType {
|
|
32
|
+
return VersusVotingListType.init({
|
|
33
|
+
id: {
|
|
34
|
+
type: DataTypes.SMALLINT,
|
|
35
|
+
allowNull: false,
|
|
36
|
+
primaryKey: true
|
|
37
|
+
},
|
|
38
|
+
description: {
|
|
39
|
+
type: DataTypes.STRING(64),
|
|
40
|
+
allowNull: false,
|
|
41
|
+
unique: "versus_voting_list_type_description_unique"
|
|
42
|
+
}
|
|
43
|
+
}, {
|
|
44
|
+
sequelize,
|
|
45
|
+
tableName: 'versus_voting_list_type',
|
|
46
|
+
schema: 'eb',
|
|
47
|
+
timestamps: false,
|
|
48
|
+
indexes: [
|
|
49
|
+
{
|
|
50
|
+
name: "versus_voting_list_type_description_unique",
|
|
51
|
+
unique: true,
|
|
52
|
+
fields: [
|
|
53
|
+
{ name: "description" },
|
|
54
|
+
]
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
name: "versus_voting_list_type_pkey",
|
|
58
|
+
unique: true,
|
|
59
|
+
fields: [
|
|
60
|
+
{ name: "id" },
|
|
61
|
+
]
|
|
62
|
+
},
|
|
63
|
+
]
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import * as Sequelize from 'sequelize';
|
|
2
|
+
import { DataTypes, Model, Optional } from 'sequelize';
|
|
3
|
+
import type { Versus, VersusId } from './Versus';
|
|
4
|
+
|
|
5
|
+
export interface VersusVotingModeAttributes {
|
|
6
|
+
id: number;
|
|
7
|
+
description: string;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export type VersusVotingModePk = "id";
|
|
11
|
+
export type VersusVotingModeId = VersusVotingMode[VersusVotingModePk];
|
|
12
|
+
export type VersusVotingModeCreationAttributes = VersusVotingModeAttributes;
|
|
13
|
+
|
|
14
|
+
export class VersusVotingMode extends Model<VersusVotingModeAttributes, VersusVotingModeCreationAttributes> implements VersusVotingModeAttributes {
|
|
15
|
+
id!: number;
|
|
16
|
+
description!: string;
|
|
17
|
+
|
|
18
|
+
// VersusVotingMode hasMany Versus via versusVotingModeId
|
|
19
|
+
versus!: Versus[];
|
|
20
|
+
getVersus!: Sequelize.HasManyGetAssociationsMixin<Versus>;
|
|
21
|
+
setVersus!: Sequelize.HasManySetAssociationsMixin<Versus, VersusId>;
|
|
22
|
+
addVersu!: Sequelize.HasManyAddAssociationMixin<Versus, VersusId>;
|
|
23
|
+
addVersus!: Sequelize.HasManyAddAssociationsMixin<Versus, VersusId>;
|
|
24
|
+
createVersu!: Sequelize.HasManyCreateAssociationMixin<Versus>;
|
|
25
|
+
removeVersu!: Sequelize.HasManyRemoveAssociationMixin<Versus, VersusId>;
|
|
26
|
+
removeVersus!: Sequelize.HasManyRemoveAssociationsMixin<Versus, VersusId>;
|
|
27
|
+
hasVersu!: Sequelize.HasManyHasAssociationMixin<Versus, VersusId>;
|
|
28
|
+
hasVersus!: Sequelize.HasManyHasAssociationsMixin<Versus, VersusId>;
|
|
29
|
+
countVersus!: Sequelize.HasManyCountAssociationsMixin;
|
|
30
|
+
|
|
31
|
+
static initModel(sequelize: Sequelize.Sequelize): typeof VersusVotingMode {
|
|
32
|
+
return VersusVotingMode.init({
|
|
33
|
+
id: {
|
|
34
|
+
type: DataTypes.SMALLINT,
|
|
35
|
+
allowNull: false,
|
|
36
|
+
primaryKey: true
|
|
37
|
+
},
|
|
38
|
+
description: {
|
|
39
|
+
type: DataTypes.STRING(64),
|
|
40
|
+
allowNull: false,
|
|
41
|
+
unique: "versus_voting_mode_description_unique"
|
|
42
|
+
}
|
|
43
|
+
}, {
|
|
44
|
+
sequelize,
|
|
45
|
+
tableName: 'versus_voting_mode',
|
|
46
|
+
schema: 'eb',
|
|
47
|
+
timestamps: false,
|
|
48
|
+
indexes: [
|
|
49
|
+
{
|
|
50
|
+
name: "versus_voting_mode_description_unique",
|
|
51
|
+
unique: true,
|
|
52
|
+
fields: [
|
|
53
|
+
{ name: "description" },
|
|
54
|
+
]
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
name: "versus_voting_mode_pkey",
|
|
58
|
+
unique: true,
|
|
59
|
+
fields: [
|
|
60
|
+
{ name: "id" },
|
|
61
|
+
]
|
|
62
|
+
},
|
|
63
|
+
]
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
}
|
package/models/index.ts
ADDED