@earbug/db-models 0.0.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.
Files changed (211) hide show
  1. package/.nvmrc +1 -0
  2. package/dist/AppUser.d.ts +161 -0
  3. package/dist/AppUser.js +121 -0
  4. package/dist/AppUserDevice.d.ts +26 -0
  5. package/dist/AppUserDevice.js +88 -0
  6. package/dist/AppUserFollowRelation.d.ts +34 -0
  7. package/dist/AppUserFollowRelation.js +113 -0
  8. package/dist/AppUserPlatformRelation.d.ts +43 -0
  9. package/dist/AppUserPlatformRelation.js +132 -0
  10. package/dist/CanonAlbum.d.ts +119 -0
  11. package/dist/CanonAlbum.js +117 -0
  12. package/dist/CanonAlbumExternalReferenceRelation.d.ts +31 -0
  13. package/dist/CanonAlbumExternalReferenceRelation.js +86 -0
  14. package/dist/CanonAlbumGenreRelation.d.ts +29 -0
  15. package/dist/CanonAlbumGenreRelation.js +82 -0
  16. package/dist/CanonAlbumImageHarvested.d.ts +30 -0
  17. package/dist/CanonAlbumImageHarvested.js +78 -0
  18. package/dist/CanonAlbumLabelRelation.d.ts +29 -0
  19. package/dist/CanonAlbumLabelRelation.js +82 -0
  20. package/dist/CanonAlbumTrackRelation.d.ts +29 -0
  21. package/dist/CanonAlbumTrackRelation.js +82 -0
  22. package/dist/CanonArtist.d.ts +91 -0
  23. package/dist/CanonArtist.js +114 -0
  24. package/dist/CanonArtistAlbumRelation.d.ts +29 -0
  25. package/dist/CanonArtistAlbumRelation.js +82 -0
  26. package/dist/CanonArtistExternalReferenceRelation.d.ts +31 -0
  27. package/dist/CanonArtistExternalReferenceRelation.js +86 -0
  28. package/dist/CanonArtistGenreRelation.d.ts +29 -0
  29. package/dist/CanonArtistGenreRelation.js +82 -0
  30. package/dist/CanonArtistImageHarvested.d.ts +30 -0
  31. package/dist/CanonArtistImageHarvested.js +70 -0
  32. package/dist/CanonArtistMemberRelation.d.ts +29 -0
  33. package/dist/CanonArtistMemberRelation.js +82 -0
  34. package/dist/CanonArtistTrackRelation.d.ts +29 -0
  35. package/dist/CanonArtistTrackRelation.js +82 -0
  36. package/dist/CanonGenre.d.ts +133 -0
  37. package/dist/CanonGenre.js +93 -0
  38. package/dist/CanonGenreExternalReferenceRelation.d.ts +31 -0
  39. package/dist/CanonGenreExternalReferenceRelation.js +86 -0
  40. package/dist/CanonLabel.d.ts +69 -0
  41. package/dist/CanonLabel.js +83 -0
  42. package/dist/CanonLabelExternalReferenceRelation.d.ts +31 -0
  43. package/dist/CanonLabelExternalReferenceRelation.js +86 -0
  44. package/dist/CanonMember.d.ts +71 -0
  45. package/dist/CanonMember.js +82 -0
  46. package/dist/CanonMemberExternalReferenceRelation.d.ts +33 -0
  47. package/dist/CanonMemberExternalReferenceRelation.js +91 -0
  48. package/dist/CanonToPlatformAlbumRelation.d.ts +29 -0
  49. package/dist/CanonToPlatformAlbumRelation.js +82 -0
  50. package/dist/CanonToPlatformArtistRelation.d.ts +29 -0
  51. package/dist/CanonToPlatformArtistRelation.js +82 -0
  52. package/dist/CanonToPlatformGenreRelation.d.ts +29 -0
  53. package/dist/CanonToPlatformGenreRelation.js +82 -0
  54. package/dist/CanonToPlatformTrackRelation.d.ts +29 -0
  55. package/dist/CanonToPlatformTrackRelation.js +82 -0
  56. package/dist/CanonTrack.d.ts +89 -0
  57. package/dist/CanonTrack.js +99 -0
  58. package/dist/ConfigParam.d.ts +19 -0
  59. package/dist/ConfigParam.js +70 -0
  60. package/dist/ExternalReference.d.ts +139 -0
  61. package/dist/ExternalReference.js +79 -0
  62. package/dist/JukeboxAccessType.d.ts +26 -0
  63. package/dist/JukeboxAccessType.js +36 -0
  64. package/dist/JukeboxCanonGenreRelation.d.ts +33 -0
  65. package/dist/JukeboxCanonGenreRelation.js +101 -0
  66. package/dist/JukeboxInvite.d.ts +39 -0
  67. package/dist/JukeboxInvite.js +98 -0
  68. package/dist/JukeboxQueueEntry.d.ts +74 -0
  69. package/dist/JukeboxQueueEntry.js +142 -0
  70. package/dist/JukeboxQueueMode.d.ts +26 -0
  71. package/dist/JukeboxQueueMode.js +36 -0
  72. package/dist/JukeboxSession.d.ts +108 -0
  73. package/dist/JukeboxSession.js +133 -0
  74. package/dist/JukeboxStatus.d.ts +26 -0
  75. package/dist/JukeboxStatus.js +34 -0
  76. package/dist/JukeboxTerminationCondition.d.ts +26 -0
  77. package/dist/JukeboxTerminationCondition.js +36 -0
  78. package/dist/JukeboxType.d.ts +26 -0
  79. package/dist/JukeboxType.js +36 -0
  80. package/dist/JukeboxUser.d.ts +56 -0
  81. package/dist/JukeboxUser.js +135 -0
  82. package/dist/JukeboxUserType.d.ts +26 -0
  83. package/dist/JukeboxUserType.js +34 -0
  84. package/dist/KnexMigrations.d.ts +19 -0
  85. package/dist/KnexMigrations.js +44 -0
  86. package/dist/KnexMigrationsLock.d.ts +15 -0
  87. package/dist/KnexMigrationsLock.js +36 -0
  88. package/dist/MetricsDaily.d.ts +19 -0
  89. package/dist/MetricsDaily.js +87 -0
  90. package/dist/MetricsEvent.d.ts +23 -0
  91. package/dist/MetricsEvent.js +117 -0
  92. package/dist/NewsSite.d.ts +21 -0
  93. package/dist/NewsSite.js +57 -0
  94. package/dist/PauseStatusType.d.ts +26 -0
  95. package/dist/PauseStatusType.js +34 -0
  96. package/dist/Platform.d.ts +127 -0
  97. package/dist/Platform.js +80 -0
  98. package/dist/PlatformAlbum.d.ts +232 -0
  99. package/dist/PlatformAlbum.js +123 -0
  100. package/dist/PlatformAlbumGenreRelation.d.ts +29 -0
  101. package/dist/PlatformAlbumGenreRelation.js +82 -0
  102. package/dist/PlatformAlbumTrackRelation.d.ts +29 -0
  103. package/dist/PlatformAlbumTrackRelation.js +82 -0
  104. package/dist/PlatformArtist.d.ts +225 -0
  105. package/dist/PlatformArtist.js +109 -0
  106. package/dist/PlatformArtistAlbumRelation.d.ts +29 -0
  107. package/dist/PlatformArtistAlbumRelation.js +82 -0
  108. package/dist/PlatformArtistGenreRelation.d.ts +29 -0
  109. package/dist/PlatformArtistGenreRelation.js +82 -0
  110. package/dist/PlatformArtistTrackRelation.d.ts +29 -0
  111. package/dist/PlatformArtistTrackRelation.js +82 -0
  112. package/dist/PlatformGenre.d.ts +122 -0
  113. package/dist/PlatformGenre.js +90 -0
  114. package/dist/PlatformTrack.d.ts +183 -0
  115. package/dist/PlatformTrack.js +129 -0
  116. package/dist/PlatformTrackGenreRelation.d.ts +29 -0
  117. package/dist/PlatformTrackGenreRelation.js +82 -0
  118. package/dist/PlatformUserAlbum.d.ts +54 -0
  119. package/dist/PlatformUserAlbum.js +121 -0
  120. package/dist/PlatformUserAlbumTrack.d.ts +42 -0
  121. package/dist/PlatformUserAlbumTrack.js +121 -0
  122. package/dist/PlatformUserPlaylist.d.ts +62 -0
  123. package/dist/PlatformUserPlaylist.js +135 -0
  124. package/dist/PlatformUserPlaylistTrack.d.ts +48 -0
  125. package/dist/PlatformUserPlaylistTrack.js +132 -0
  126. package/dist/PlaybackStatus.d.ts +26 -0
  127. package/dist/PlaybackStatus.js +36 -0
  128. package/dist/State.d.ts +50 -0
  129. package/dist/State.js +36 -0
  130. package/dist/TrackDeletionReason.d.ts +26 -0
  131. package/dist/TrackDeletionReason.js +34 -0
  132. package/dist/UnmatchedAlbum.d.ts +22 -0
  133. package/dist/UnmatchedAlbum.js +70 -0
  134. package/dist/UnmatchedArtist.d.ts +26 -0
  135. package/dist/UnmatchedArtist.js +81 -0
  136. package/dist/UserContacts.d.ts +46 -0
  137. package/dist/UserContacts.js +105 -0
  138. package/dist/init-models.d.ts +209 -0
  139. package/dist/init-models.js +507 -0
  140. package/model_options.json +3 -0
  141. package/models/AppUser.ts +267 -0
  142. package/models/AppUserDevice.ts +88 -0
  143. package/models/AppUserFollowRelation.ts +122 -0
  144. package/models/AppUserPlatformRelation.ts +150 -0
  145. package/models/CanonAlbum.ts +216 -0
  146. package/models/CanonAlbumExternalReferenceRelation.ts +92 -0
  147. package/models/CanonAlbumGenreRelation.ts +86 -0
  148. package/models/CanonAlbumImageHarvested.ts +106 -0
  149. package/models/CanonAlbumLabelRelation.ts +86 -0
  150. package/models/CanonAlbumTrackRelation.ts +86 -0
  151. package/models/CanonArtist.ts +183 -0
  152. package/models/CanonArtistAlbumRelation.ts +86 -0
  153. package/models/CanonArtistExternalReferenceRelation.ts +92 -0
  154. package/models/CanonArtistGenreRelation.ts +86 -0
  155. package/models/CanonArtistImageHarvested.ts +98 -0
  156. package/models/CanonArtistMemberRelation.ts +86 -0
  157. package/models/CanonArtistTrackRelation.ts +86 -0
  158. package/models/CanonGenre.ts +208 -0
  159. package/models/CanonGenreExternalReferenceRelation.ts +92 -0
  160. package/models/CanonLabel.ts +129 -0
  161. package/models/CanonLabelExternalReferenceRelation.ts +92 -0
  162. package/models/CanonMember.ts +130 -0
  163. package/models/CanonMemberExternalReferenceRelation.ts +99 -0
  164. package/models/CanonToPlatformAlbumRelation.ts +86 -0
  165. package/models/CanonToPlatformArtistRelation.ts +86 -0
  166. package/models/CanonToPlatformGenreRelation.ts +86 -0
  167. package/models/CanonToPlatformTrackRelation.ts +86 -0
  168. package/models/CanonTrack.ts +167 -0
  169. package/models/ConfigParam.ts +62 -0
  170. package/models/ExternalReference.ts +201 -0
  171. package/models/JukeboxAccessType.ts +60 -0
  172. package/models/JukeboxCanonGenreRelation.ts +109 -0
  173. package/models/JukeboxInvite.ts +113 -0
  174. package/models/JukeboxQueueEntry.ts +195 -0
  175. package/models/JukeboxQueueMode.ts +60 -0
  176. package/models/JukeboxSession.ts +223 -0
  177. package/models/JukeboxStatus.ts +58 -0
  178. package/models/JukeboxTerminationCondition.ts +60 -0
  179. package/models/JukeboxType.ts +60 -0
  180. package/models/JukeboxUser.ts +169 -0
  181. package/models/JukeboxUserType.ts +58 -0
  182. package/models/KnexMigrations.ts +60 -0
  183. package/models/KnexMigrationsLock.ts +48 -0
  184. package/models/MetricsDaily.ts +79 -0
  185. package/models/MetricsEvent.ts +114 -0
  186. package/models/NewsSite.ts +75 -0
  187. package/models/PauseStatusType.ts +58 -0
  188. package/models/Platform.ts +189 -0
  189. package/models/PlatformAlbum.ts +345 -0
  190. package/models/PlatformAlbumGenreRelation.ts +86 -0
  191. package/models/PlatformAlbumTrackRelation.ts +86 -0
  192. package/models/PlatformArtist.ts +324 -0
  193. package/models/PlatformArtistAlbumRelation.ts +86 -0
  194. package/models/PlatformArtistGenreRelation.ts +86 -0
  195. package/models/PlatformArtistTrackRelation.ts +86 -0
  196. package/models/PlatformGenre.ts +194 -0
  197. package/models/PlatformTrack.ts +298 -0
  198. package/models/PlatformTrackGenreRelation.ts +86 -0
  199. package/models/PlatformUserAlbum.ts +152 -0
  200. package/models/PlatformUserAlbumTrack.ts +139 -0
  201. package/models/PlatformUserPlaylist.ts +174 -0
  202. package/models/PlatformUserPlaylistTrack.ts +156 -0
  203. package/models/PlaybackStatus.ts +60 -0
  204. package/models/State.ts +86 -0
  205. package/models/TrackDeletionReason.ts +58 -0
  206. package/models/UnmatchedAlbum.ts +66 -0
  207. package/models/UnmatchedArtist.ts +81 -0
  208. package/models/UserContacts.ts +149 -0
  209. package/models/init-models.ts +716 -0
  210. package/package.json +19 -0
  211. package/tsconfig.json +52 -0
@@ -0,0 +1,167 @@
1
+ import * as Sequelize from 'sequelize';
2
+ import { DataTypes, Model, Optional } from 'sequelize';
3
+ import type { CanonAlbum, CanonAlbumId } from './CanonAlbum';
4
+ import type { CanonAlbumTrackRelation, CanonAlbumTrackRelationId } from './CanonAlbumTrackRelation';
5
+ import type { CanonToPlatformTrackRelation, CanonToPlatformTrackRelationId } from './CanonToPlatformTrackRelation';
6
+ import type { JukeboxQueueEntry, JukeboxQueueEntryId } from './JukeboxQueueEntry';
7
+ import type { PlatformTrack, PlatformTrackId } from './PlatformTrack';
8
+
9
+ export interface CanonTrackAttributes {
10
+ id: string;
11
+ name: string;
12
+ asciiName: string;
13
+ explicit: boolean;
14
+ discNumber?: number;
15
+ discTrackNumber?: number;
16
+ createDate: Date;
17
+ updateDate: Date;
18
+ durationMs: number;
19
+ }
20
+
21
+ export type CanonTrackPk = "id";
22
+ export type CanonTrackId = CanonTrack[CanonTrackPk];
23
+ export type CanonTrackOptionalAttributes = "id" | "discNumber" | "discTrackNumber" | "createDate" | "updateDate";
24
+ export type CanonTrackCreationAttributes = Optional<CanonTrackAttributes, CanonTrackOptionalAttributes>;
25
+
26
+ export class CanonTrack extends Model<CanonTrackAttributes, CanonTrackCreationAttributes> implements CanonTrackAttributes {
27
+ id!: string;
28
+ name!: string;
29
+ asciiName!: string;
30
+ explicit!: boolean;
31
+ discNumber?: number;
32
+ discTrackNumber?: number;
33
+ createDate!: Date;
34
+ updateDate!: Date;
35
+ durationMs!: number;
36
+
37
+ // CanonTrack belongsToMany CanonAlbum via canonTrackId and canonAlbumId
38
+ canonAlbumIdCanonAlbumCanonAlbumTrackRelations!: CanonAlbum[];
39
+ getCanonAlbumIdCanonAlbumCanonAlbumTrackRelations!: Sequelize.BelongsToManyGetAssociationsMixin<CanonAlbum>;
40
+ setCanonAlbumIdCanonAlbumCanonAlbumTrackRelations!: Sequelize.BelongsToManySetAssociationsMixin<CanonAlbum, CanonAlbumId>;
41
+ addCanonAlbumIdCanonAlbumCanonAlbumTrackRelation!: Sequelize.BelongsToManyAddAssociationMixin<CanonAlbum, CanonAlbumId>;
42
+ addCanonAlbumIdCanonAlbumCanonAlbumTrackRelations!: Sequelize.BelongsToManyAddAssociationsMixin<CanonAlbum, CanonAlbumId>;
43
+ createCanonAlbumIdCanonAlbumCanonAlbumTrackRelation!: Sequelize.BelongsToManyCreateAssociationMixin<CanonAlbum>;
44
+ removeCanonAlbumIdCanonAlbumCanonAlbumTrackRelation!: Sequelize.BelongsToManyRemoveAssociationMixin<CanonAlbum, CanonAlbumId>;
45
+ removeCanonAlbumIdCanonAlbumCanonAlbumTrackRelations!: Sequelize.BelongsToManyRemoveAssociationsMixin<CanonAlbum, CanonAlbumId>;
46
+ hasCanonAlbumIdCanonAlbumCanonAlbumTrackRelation!: Sequelize.BelongsToManyHasAssociationMixin<CanonAlbum, CanonAlbumId>;
47
+ hasCanonAlbumIdCanonAlbumCanonAlbumTrackRelations!: Sequelize.BelongsToManyHasAssociationsMixin<CanonAlbum, CanonAlbumId>;
48
+ countCanonAlbumIdCanonAlbumCanonAlbumTrackRelations!: Sequelize.BelongsToManyCountAssociationsMixin;
49
+ // CanonTrack hasMany CanonAlbumTrackRelation via canonTrackId
50
+ canonAlbumTrackRelations!: CanonAlbumTrackRelation[];
51
+ getCanonAlbumTrackRelations!: Sequelize.HasManyGetAssociationsMixin<CanonAlbumTrackRelation>;
52
+ setCanonAlbumTrackRelations!: Sequelize.HasManySetAssociationsMixin<CanonAlbumTrackRelation, CanonAlbumTrackRelationId>;
53
+ addCanonAlbumTrackRelation!: Sequelize.HasManyAddAssociationMixin<CanonAlbumTrackRelation, CanonAlbumTrackRelationId>;
54
+ addCanonAlbumTrackRelations!: Sequelize.HasManyAddAssociationsMixin<CanonAlbumTrackRelation, CanonAlbumTrackRelationId>;
55
+ createCanonAlbumTrackRelation!: Sequelize.HasManyCreateAssociationMixin<CanonAlbumTrackRelation>;
56
+ removeCanonAlbumTrackRelation!: Sequelize.HasManyRemoveAssociationMixin<CanonAlbumTrackRelation, CanonAlbumTrackRelationId>;
57
+ removeCanonAlbumTrackRelations!: Sequelize.HasManyRemoveAssociationsMixin<CanonAlbumTrackRelation, CanonAlbumTrackRelationId>;
58
+ hasCanonAlbumTrackRelation!: Sequelize.HasManyHasAssociationMixin<CanonAlbumTrackRelation, CanonAlbumTrackRelationId>;
59
+ hasCanonAlbumTrackRelations!: Sequelize.HasManyHasAssociationsMixin<CanonAlbumTrackRelation, CanonAlbumTrackRelationId>;
60
+ countCanonAlbumTrackRelations!: Sequelize.HasManyCountAssociationsMixin;
61
+ // CanonTrack hasMany CanonToPlatformTrackRelation via canonTrackId
62
+ canonToPlatformTrackRelations!: CanonToPlatformTrackRelation[];
63
+ getCanonToPlatformTrackRelations!: Sequelize.HasManyGetAssociationsMixin<CanonToPlatformTrackRelation>;
64
+ setCanonToPlatformTrackRelations!: Sequelize.HasManySetAssociationsMixin<CanonToPlatformTrackRelation, CanonToPlatformTrackRelationId>;
65
+ addCanonToPlatformTrackRelation!: Sequelize.HasManyAddAssociationMixin<CanonToPlatformTrackRelation, CanonToPlatformTrackRelationId>;
66
+ addCanonToPlatformTrackRelations!: Sequelize.HasManyAddAssociationsMixin<CanonToPlatformTrackRelation, CanonToPlatformTrackRelationId>;
67
+ createCanonToPlatformTrackRelation!: Sequelize.HasManyCreateAssociationMixin<CanonToPlatformTrackRelation>;
68
+ removeCanonToPlatformTrackRelation!: Sequelize.HasManyRemoveAssociationMixin<CanonToPlatformTrackRelation, CanonToPlatformTrackRelationId>;
69
+ removeCanonToPlatformTrackRelations!: Sequelize.HasManyRemoveAssociationsMixin<CanonToPlatformTrackRelation, CanonToPlatformTrackRelationId>;
70
+ hasCanonToPlatformTrackRelation!: Sequelize.HasManyHasAssociationMixin<CanonToPlatformTrackRelation, CanonToPlatformTrackRelationId>;
71
+ hasCanonToPlatformTrackRelations!: Sequelize.HasManyHasAssociationsMixin<CanonToPlatformTrackRelation, CanonToPlatformTrackRelationId>;
72
+ countCanonToPlatformTrackRelations!: Sequelize.HasManyCountAssociationsMixin;
73
+ // CanonTrack hasMany JukeboxQueueEntry via trackId
74
+ jukeboxQueueEntries!: JukeboxQueueEntry[];
75
+ getJukeboxQueueEntries!: Sequelize.HasManyGetAssociationsMixin<JukeboxQueueEntry>;
76
+ setJukeboxQueueEntries!: Sequelize.HasManySetAssociationsMixin<JukeboxQueueEntry, JukeboxQueueEntryId>;
77
+ addJukeboxQueueEntry!: Sequelize.HasManyAddAssociationMixin<JukeboxQueueEntry, JukeboxQueueEntryId>;
78
+ addJukeboxQueueEntries!: Sequelize.HasManyAddAssociationsMixin<JukeboxQueueEntry, JukeboxQueueEntryId>;
79
+ createJukeboxQueueEntry!: Sequelize.HasManyCreateAssociationMixin<JukeboxQueueEntry>;
80
+ removeJukeboxQueueEntry!: Sequelize.HasManyRemoveAssociationMixin<JukeboxQueueEntry, JukeboxQueueEntryId>;
81
+ removeJukeboxQueueEntries!: Sequelize.HasManyRemoveAssociationsMixin<JukeboxQueueEntry, JukeboxQueueEntryId>;
82
+ hasJukeboxQueueEntry!: Sequelize.HasManyHasAssociationMixin<JukeboxQueueEntry, JukeboxQueueEntryId>;
83
+ hasJukeboxQueueEntries!: Sequelize.HasManyHasAssociationsMixin<JukeboxQueueEntry, JukeboxQueueEntryId>;
84
+ countJukeboxQueueEntries!: Sequelize.HasManyCountAssociationsMixin;
85
+ // CanonTrack belongsToMany PlatformTrack via canonTrackId and platformTrackId
86
+ platformTrackIdPlatformTracks!: PlatformTrack[];
87
+ getPlatformTrackIdPlatformTracks!: Sequelize.BelongsToManyGetAssociationsMixin<PlatformTrack>;
88
+ setPlatformTrackIdPlatformTracks!: Sequelize.BelongsToManySetAssociationsMixin<PlatformTrack, PlatformTrackId>;
89
+ addPlatformTrackIdPlatformTrack!: Sequelize.BelongsToManyAddAssociationMixin<PlatformTrack, PlatformTrackId>;
90
+ addPlatformTrackIdPlatformTracks!: Sequelize.BelongsToManyAddAssociationsMixin<PlatformTrack, PlatformTrackId>;
91
+ createPlatformTrackIdPlatformTrack!: Sequelize.BelongsToManyCreateAssociationMixin<PlatformTrack>;
92
+ removePlatformTrackIdPlatformTrack!: Sequelize.BelongsToManyRemoveAssociationMixin<PlatformTrack, PlatformTrackId>;
93
+ removePlatformTrackIdPlatformTracks!: Sequelize.BelongsToManyRemoveAssociationsMixin<PlatformTrack, PlatformTrackId>;
94
+ hasPlatformTrackIdPlatformTrack!: Sequelize.BelongsToManyHasAssociationMixin<PlatformTrack, PlatformTrackId>;
95
+ hasPlatformTrackIdPlatformTracks!: Sequelize.BelongsToManyHasAssociationsMixin<PlatformTrack, PlatformTrackId>;
96
+ countPlatformTrackIdPlatformTracks!: Sequelize.BelongsToManyCountAssociationsMixin;
97
+
98
+ static initModel(sequelize: Sequelize.Sequelize): typeof CanonTrack {
99
+ return CanonTrack.init({
100
+ id: {
101
+ type: DataTypes.UUID,
102
+ allowNull: false,
103
+ defaultValue: Sequelize.Sequelize.fn('uuid_generate_v1'),
104
+ primaryKey: true
105
+ },
106
+ name: {
107
+ type: DataTypes.TEXT,
108
+ allowNull: false
109
+ },
110
+ asciiName: {
111
+ type: DataTypes.TEXT,
112
+ allowNull: false,
113
+ field: 'ascii_name'
114
+ },
115
+ explicit: {
116
+ type: DataTypes.BOOLEAN,
117
+ allowNull: false
118
+ },
119
+ discNumber: {
120
+ type: DataTypes.SMALLINT,
121
+ allowNull: true,
122
+ field: 'disc_number'
123
+ },
124
+ discTrackNumber: {
125
+ type: DataTypes.SMALLINT,
126
+ allowNull: true,
127
+ field: 'disc_track_number'
128
+ },
129
+ createDate: {
130
+ type: DataTypes.DATE,
131
+ allowNull: false,
132
+ defaultValue: Sequelize.Sequelize.literal('CURRENT_TIMESTAMP'),
133
+ field: 'create_date'
134
+ },
135
+ updateDate: {
136
+ type: DataTypes.DATE,
137
+ allowNull: false,
138
+ defaultValue: Sequelize.Sequelize.literal('CURRENT_TIMESTAMP'),
139
+ field: 'update_date'
140
+ },
141
+ durationMs: {
142
+ type: DataTypes.INTEGER,
143
+ allowNull: false,
144
+ field: 'duration_ms'
145
+ }
146
+ }, {
147
+ sequelize,
148
+ tableName: 'canon_track',
149
+ schema: 'eb',
150
+ timestamps: false,
151
+ indexes: [
152
+ {
153
+ name: "canon_track_lower_name_idx",
154
+ fields: [
155
+ ]
156
+ },
157
+ {
158
+ name: "platform_track_pkey",
159
+ unique: true,
160
+ fields: [
161
+ { name: "id" },
162
+ ]
163
+ },
164
+ ]
165
+ });
166
+ }
167
+ }
@@ -0,0 +1,62 @@
1
+ import * as Sequelize from 'sequelize';
2
+ import { DataTypes, Model, Optional } from 'sequelize';
3
+
4
+ export interface ConfigParamAttributes {
5
+ name: string;
6
+ value?: string;
7
+ createdAt: Date;
8
+ updatedAt: Date;
9
+ }
10
+
11
+ export type ConfigParamPk = "name";
12
+ export type ConfigParamId = ConfigParam[ConfigParamPk];
13
+ export type ConfigParamOptionalAttributes = "value" | "createdAt" | "updatedAt";
14
+ export type ConfigParamCreationAttributes = Optional<ConfigParamAttributes, ConfigParamOptionalAttributes>;
15
+
16
+ export class ConfigParam extends Model<ConfigParamAttributes, ConfigParamCreationAttributes> implements ConfigParamAttributes {
17
+ name!: string;
18
+ value?: string;
19
+ createdAt!: Date;
20
+ updatedAt!: Date;
21
+
22
+
23
+ static initModel(sequelize: Sequelize.Sequelize): typeof ConfigParam {
24
+ return ConfigParam.init({
25
+ name: {
26
+ type: DataTypes.TEXT,
27
+ allowNull: false,
28
+ primaryKey: true
29
+ },
30
+ value: {
31
+ type: DataTypes.TEXT,
32
+ allowNull: true
33
+ },
34
+ createdAt: {
35
+ type: DataTypes.DATE,
36
+ allowNull: false,
37
+ defaultValue: Sequelize.Sequelize.literal('CURRENT_TIMESTAMP'),
38
+ field: 'created_at'
39
+ },
40
+ updatedAt: {
41
+ type: DataTypes.DATE,
42
+ allowNull: false,
43
+ defaultValue: Sequelize.Sequelize.literal('CURRENT_TIMESTAMP'),
44
+ field: 'updated_at'
45
+ }
46
+ }, {
47
+ sequelize,
48
+ tableName: 'config_param',
49
+ schema: 'eb',
50
+ timestamps: false,
51
+ indexes: [
52
+ {
53
+ name: "config_param_pkey",
54
+ unique: true,
55
+ fields: [
56
+ { name: "name" },
57
+ ]
58
+ },
59
+ ]
60
+ });
61
+ }
62
+ }
@@ -0,0 +1,201 @@
1
+ import * as Sequelize from 'sequelize';
2
+ import { DataTypes, Model, Optional } from 'sequelize';
3
+ import type { CanonAlbum, CanonAlbumId } from './CanonAlbum';
4
+ import type { CanonAlbumExternalReferenceRelation, CanonAlbumExternalReferenceRelationId } from './CanonAlbumExternalReferenceRelation';
5
+ import type { CanonArtistExternalReferenceRelation, CanonArtistExternalReferenceRelationId } from './CanonArtistExternalReferenceRelation';
6
+ import type { CanonGenre, CanonGenreId } from './CanonGenre';
7
+ import type { CanonGenreExternalReferenceRelation, CanonGenreExternalReferenceRelationId } from './CanonGenreExternalReferenceRelation';
8
+ import type { CanonLabel, CanonLabelId } from './CanonLabel';
9
+ import type { CanonLabelExternalReferenceRelation, CanonLabelExternalReferenceRelationId } from './CanonLabelExternalReferenceRelation';
10
+ import type { CanonMember, CanonMemberId } from './CanonMember';
11
+ import type { CanonMemberExternalReferenceRelation, CanonMemberExternalReferenceRelationId } from './CanonMemberExternalReferenceRelation';
12
+ import type { PlatformArtist, PlatformArtistId } from './PlatformArtist';
13
+
14
+ export interface ExternalReferenceAttributes {
15
+ id: string;
16
+ name: string;
17
+ createDate: Date;
18
+ updateDate: Date;
19
+ }
20
+
21
+ export type ExternalReferencePk = "id";
22
+ export type ExternalReferenceId = ExternalReference[ExternalReferencePk];
23
+ export type ExternalReferenceOptionalAttributes = "id" | "createDate" | "updateDate";
24
+ export type ExternalReferenceCreationAttributes = Optional<ExternalReferenceAttributes, ExternalReferenceOptionalAttributes>;
25
+
26
+ export class ExternalReference extends Model<ExternalReferenceAttributes, ExternalReferenceCreationAttributes> implements ExternalReferenceAttributes {
27
+ id!: string;
28
+ name!: string;
29
+ createDate!: Date;
30
+ updateDate!: Date;
31
+
32
+ // ExternalReference belongsToMany CanonAlbum via externalReferenceId and canonAlbumId
33
+ canonAlbumIdCanonAlbums!: CanonAlbum[];
34
+ getCanonAlbumIdCanonAlbums!: Sequelize.BelongsToManyGetAssociationsMixin<CanonAlbum>;
35
+ setCanonAlbumIdCanonAlbums!: Sequelize.BelongsToManySetAssociationsMixin<CanonAlbum, CanonAlbumId>;
36
+ addCanonAlbumIdCanonAlbum!: Sequelize.BelongsToManyAddAssociationMixin<CanonAlbum, CanonAlbumId>;
37
+ addCanonAlbumIdCanonAlbums!: Sequelize.BelongsToManyAddAssociationsMixin<CanonAlbum, CanonAlbumId>;
38
+ createCanonAlbumIdCanonAlbum!: Sequelize.BelongsToManyCreateAssociationMixin<CanonAlbum>;
39
+ removeCanonAlbumIdCanonAlbum!: Sequelize.BelongsToManyRemoveAssociationMixin<CanonAlbum, CanonAlbumId>;
40
+ removeCanonAlbumIdCanonAlbums!: Sequelize.BelongsToManyRemoveAssociationsMixin<CanonAlbum, CanonAlbumId>;
41
+ hasCanonAlbumIdCanonAlbum!: Sequelize.BelongsToManyHasAssociationMixin<CanonAlbum, CanonAlbumId>;
42
+ hasCanonAlbumIdCanonAlbums!: Sequelize.BelongsToManyHasAssociationsMixin<CanonAlbum, CanonAlbumId>;
43
+ countCanonAlbumIdCanonAlbums!: Sequelize.BelongsToManyCountAssociationsMixin;
44
+ // ExternalReference hasMany CanonAlbumExternalReferenceRelation via externalReferenceId
45
+ canonAlbumExternalReferenceRelations!: CanonAlbumExternalReferenceRelation[];
46
+ getCanonAlbumExternalReferenceRelations!: Sequelize.HasManyGetAssociationsMixin<CanonAlbumExternalReferenceRelation>;
47
+ setCanonAlbumExternalReferenceRelations!: Sequelize.HasManySetAssociationsMixin<CanonAlbumExternalReferenceRelation, CanonAlbumExternalReferenceRelationId>;
48
+ addCanonAlbumExternalReferenceRelation!: Sequelize.HasManyAddAssociationMixin<CanonAlbumExternalReferenceRelation, CanonAlbumExternalReferenceRelationId>;
49
+ addCanonAlbumExternalReferenceRelations!: Sequelize.HasManyAddAssociationsMixin<CanonAlbumExternalReferenceRelation, CanonAlbumExternalReferenceRelationId>;
50
+ createCanonAlbumExternalReferenceRelation!: Sequelize.HasManyCreateAssociationMixin<CanonAlbumExternalReferenceRelation>;
51
+ removeCanonAlbumExternalReferenceRelation!: Sequelize.HasManyRemoveAssociationMixin<CanonAlbumExternalReferenceRelation, CanonAlbumExternalReferenceRelationId>;
52
+ removeCanonAlbumExternalReferenceRelations!: Sequelize.HasManyRemoveAssociationsMixin<CanonAlbumExternalReferenceRelation, CanonAlbumExternalReferenceRelationId>;
53
+ hasCanonAlbumExternalReferenceRelation!: Sequelize.HasManyHasAssociationMixin<CanonAlbumExternalReferenceRelation, CanonAlbumExternalReferenceRelationId>;
54
+ hasCanonAlbumExternalReferenceRelations!: Sequelize.HasManyHasAssociationsMixin<CanonAlbumExternalReferenceRelation, CanonAlbumExternalReferenceRelationId>;
55
+ countCanonAlbumExternalReferenceRelations!: Sequelize.HasManyCountAssociationsMixin;
56
+ // ExternalReference hasMany CanonArtistExternalReferenceRelation via externalReferenceId
57
+ canonArtistExternalReferenceRelations!: CanonArtistExternalReferenceRelation[];
58
+ getCanonArtistExternalReferenceRelations!: Sequelize.HasManyGetAssociationsMixin<CanonArtistExternalReferenceRelation>;
59
+ setCanonArtistExternalReferenceRelations!: Sequelize.HasManySetAssociationsMixin<CanonArtistExternalReferenceRelation, CanonArtistExternalReferenceRelationId>;
60
+ addCanonArtistExternalReferenceRelation!: Sequelize.HasManyAddAssociationMixin<CanonArtistExternalReferenceRelation, CanonArtistExternalReferenceRelationId>;
61
+ addCanonArtistExternalReferenceRelations!: Sequelize.HasManyAddAssociationsMixin<CanonArtistExternalReferenceRelation, CanonArtistExternalReferenceRelationId>;
62
+ createCanonArtistExternalReferenceRelation!: Sequelize.HasManyCreateAssociationMixin<CanonArtistExternalReferenceRelation>;
63
+ removeCanonArtistExternalReferenceRelation!: Sequelize.HasManyRemoveAssociationMixin<CanonArtistExternalReferenceRelation, CanonArtistExternalReferenceRelationId>;
64
+ removeCanonArtistExternalReferenceRelations!: Sequelize.HasManyRemoveAssociationsMixin<CanonArtistExternalReferenceRelation, CanonArtistExternalReferenceRelationId>;
65
+ hasCanonArtistExternalReferenceRelation!: Sequelize.HasManyHasAssociationMixin<CanonArtistExternalReferenceRelation, CanonArtistExternalReferenceRelationId>;
66
+ hasCanonArtistExternalReferenceRelations!: Sequelize.HasManyHasAssociationsMixin<CanonArtistExternalReferenceRelation, CanonArtistExternalReferenceRelationId>;
67
+ countCanonArtistExternalReferenceRelations!: Sequelize.HasManyCountAssociationsMixin;
68
+ // ExternalReference belongsToMany CanonGenre via externalReferenceId and canonGenreId
69
+ canonGenreIdCanonGenreCanonGenreExternalReferenceRelations!: CanonGenre[];
70
+ getCanonGenreIdCanonGenreCanonGenreExternalReferenceRelations!: Sequelize.BelongsToManyGetAssociationsMixin<CanonGenre>;
71
+ setCanonGenreIdCanonGenreCanonGenreExternalReferenceRelations!: Sequelize.BelongsToManySetAssociationsMixin<CanonGenre, CanonGenreId>;
72
+ addCanonGenreIdCanonGenreCanonGenreExternalReferenceRelation!: Sequelize.BelongsToManyAddAssociationMixin<CanonGenre, CanonGenreId>;
73
+ addCanonGenreIdCanonGenreCanonGenreExternalReferenceRelations!: Sequelize.BelongsToManyAddAssociationsMixin<CanonGenre, CanonGenreId>;
74
+ createCanonGenreIdCanonGenreCanonGenreExternalReferenceRelation!: Sequelize.BelongsToManyCreateAssociationMixin<CanonGenre>;
75
+ removeCanonGenreIdCanonGenreCanonGenreExternalReferenceRelation!: Sequelize.BelongsToManyRemoveAssociationMixin<CanonGenre, CanonGenreId>;
76
+ removeCanonGenreIdCanonGenreCanonGenreExternalReferenceRelations!: Sequelize.BelongsToManyRemoveAssociationsMixin<CanonGenre, CanonGenreId>;
77
+ hasCanonGenreIdCanonGenreCanonGenreExternalReferenceRelation!: Sequelize.BelongsToManyHasAssociationMixin<CanonGenre, CanonGenreId>;
78
+ hasCanonGenreIdCanonGenreCanonGenreExternalReferenceRelations!: Sequelize.BelongsToManyHasAssociationsMixin<CanonGenre, CanonGenreId>;
79
+ countCanonGenreIdCanonGenreCanonGenreExternalReferenceRelations!: Sequelize.BelongsToManyCountAssociationsMixin;
80
+ // ExternalReference hasMany CanonGenreExternalReferenceRelation via externalReferenceId
81
+ canonGenreExternalReferenceRelations!: CanonGenreExternalReferenceRelation[];
82
+ getCanonGenreExternalReferenceRelations!: Sequelize.HasManyGetAssociationsMixin<CanonGenreExternalReferenceRelation>;
83
+ setCanonGenreExternalReferenceRelations!: Sequelize.HasManySetAssociationsMixin<CanonGenreExternalReferenceRelation, CanonGenreExternalReferenceRelationId>;
84
+ addCanonGenreExternalReferenceRelation!: Sequelize.HasManyAddAssociationMixin<CanonGenreExternalReferenceRelation, CanonGenreExternalReferenceRelationId>;
85
+ addCanonGenreExternalReferenceRelations!: Sequelize.HasManyAddAssociationsMixin<CanonGenreExternalReferenceRelation, CanonGenreExternalReferenceRelationId>;
86
+ createCanonGenreExternalReferenceRelation!: Sequelize.HasManyCreateAssociationMixin<CanonGenreExternalReferenceRelation>;
87
+ removeCanonGenreExternalReferenceRelation!: Sequelize.HasManyRemoveAssociationMixin<CanonGenreExternalReferenceRelation, CanonGenreExternalReferenceRelationId>;
88
+ removeCanonGenreExternalReferenceRelations!: Sequelize.HasManyRemoveAssociationsMixin<CanonGenreExternalReferenceRelation, CanonGenreExternalReferenceRelationId>;
89
+ hasCanonGenreExternalReferenceRelation!: Sequelize.HasManyHasAssociationMixin<CanonGenreExternalReferenceRelation, CanonGenreExternalReferenceRelationId>;
90
+ hasCanonGenreExternalReferenceRelations!: Sequelize.HasManyHasAssociationsMixin<CanonGenreExternalReferenceRelation, CanonGenreExternalReferenceRelationId>;
91
+ countCanonGenreExternalReferenceRelations!: Sequelize.HasManyCountAssociationsMixin;
92
+ // ExternalReference belongsToMany CanonLabel via externalReferenceId and canonLabelId
93
+ canonLabelIdCanonLabelCanonLabelExternalReferenceRelations!: CanonLabel[];
94
+ getCanonLabelIdCanonLabelCanonLabelExternalReferenceRelations!: Sequelize.BelongsToManyGetAssociationsMixin<CanonLabel>;
95
+ setCanonLabelIdCanonLabelCanonLabelExternalReferenceRelations!: Sequelize.BelongsToManySetAssociationsMixin<CanonLabel, CanonLabelId>;
96
+ addCanonLabelIdCanonLabelCanonLabelExternalReferenceRelation!: Sequelize.BelongsToManyAddAssociationMixin<CanonLabel, CanonLabelId>;
97
+ addCanonLabelIdCanonLabelCanonLabelExternalReferenceRelations!: Sequelize.BelongsToManyAddAssociationsMixin<CanonLabel, CanonLabelId>;
98
+ createCanonLabelIdCanonLabelCanonLabelExternalReferenceRelation!: Sequelize.BelongsToManyCreateAssociationMixin<CanonLabel>;
99
+ removeCanonLabelIdCanonLabelCanonLabelExternalReferenceRelation!: Sequelize.BelongsToManyRemoveAssociationMixin<CanonLabel, CanonLabelId>;
100
+ removeCanonLabelIdCanonLabelCanonLabelExternalReferenceRelations!: Sequelize.BelongsToManyRemoveAssociationsMixin<CanonLabel, CanonLabelId>;
101
+ hasCanonLabelIdCanonLabelCanonLabelExternalReferenceRelation!: Sequelize.BelongsToManyHasAssociationMixin<CanonLabel, CanonLabelId>;
102
+ hasCanonLabelIdCanonLabelCanonLabelExternalReferenceRelations!: Sequelize.BelongsToManyHasAssociationsMixin<CanonLabel, CanonLabelId>;
103
+ countCanonLabelIdCanonLabelCanonLabelExternalReferenceRelations!: Sequelize.BelongsToManyCountAssociationsMixin;
104
+ // ExternalReference hasMany CanonLabelExternalReferenceRelation via externalReferenceId
105
+ canonLabelExternalReferenceRelations!: CanonLabelExternalReferenceRelation[];
106
+ getCanonLabelExternalReferenceRelations!: Sequelize.HasManyGetAssociationsMixin<CanonLabelExternalReferenceRelation>;
107
+ setCanonLabelExternalReferenceRelations!: Sequelize.HasManySetAssociationsMixin<CanonLabelExternalReferenceRelation, CanonLabelExternalReferenceRelationId>;
108
+ addCanonLabelExternalReferenceRelation!: Sequelize.HasManyAddAssociationMixin<CanonLabelExternalReferenceRelation, CanonLabelExternalReferenceRelationId>;
109
+ addCanonLabelExternalReferenceRelations!: Sequelize.HasManyAddAssociationsMixin<CanonLabelExternalReferenceRelation, CanonLabelExternalReferenceRelationId>;
110
+ createCanonLabelExternalReferenceRelation!: Sequelize.HasManyCreateAssociationMixin<CanonLabelExternalReferenceRelation>;
111
+ removeCanonLabelExternalReferenceRelation!: Sequelize.HasManyRemoveAssociationMixin<CanonLabelExternalReferenceRelation, CanonLabelExternalReferenceRelationId>;
112
+ removeCanonLabelExternalReferenceRelations!: Sequelize.HasManyRemoveAssociationsMixin<CanonLabelExternalReferenceRelation, CanonLabelExternalReferenceRelationId>;
113
+ hasCanonLabelExternalReferenceRelation!: Sequelize.HasManyHasAssociationMixin<CanonLabelExternalReferenceRelation, CanonLabelExternalReferenceRelationId>;
114
+ hasCanonLabelExternalReferenceRelations!: Sequelize.HasManyHasAssociationsMixin<CanonLabelExternalReferenceRelation, CanonLabelExternalReferenceRelationId>;
115
+ countCanonLabelExternalReferenceRelations!: Sequelize.HasManyCountAssociationsMixin;
116
+ // ExternalReference belongsToMany CanonMember via externalReferenceId and canonMemberId
117
+ canonMemberIdCanonMemberCanonMemberExternalReferenceRelations!: CanonMember[];
118
+ getCanonMemberIdCanonMemberCanonMemberExternalReferenceRelations!: Sequelize.BelongsToManyGetAssociationsMixin<CanonMember>;
119
+ setCanonMemberIdCanonMemberCanonMemberExternalReferenceRelations!: Sequelize.BelongsToManySetAssociationsMixin<CanonMember, CanonMemberId>;
120
+ addCanonMemberIdCanonMemberCanonMemberExternalReferenceRelation!: Sequelize.BelongsToManyAddAssociationMixin<CanonMember, CanonMemberId>;
121
+ addCanonMemberIdCanonMemberCanonMemberExternalReferenceRelations!: Sequelize.BelongsToManyAddAssociationsMixin<CanonMember, CanonMemberId>;
122
+ createCanonMemberIdCanonMemberCanonMemberExternalReferenceRelation!: Sequelize.BelongsToManyCreateAssociationMixin<CanonMember>;
123
+ removeCanonMemberIdCanonMemberCanonMemberExternalReferenceRelation!: Sequelize.BelongsToManyRemoveAssociationMixin<CanonMember, CanonMemberId>;
124
+ removeCanonMemberIdCanonMemberCanonMemberExternalReferenceRelations!: Sequelize.BelongsToManyRemoveAssociationsMixin<CanonMember, CanonMemberId>;
125
+ hasCanonMemberIdCanonMemberCanonMemberExternalReferenceRelation!: Sequelize.BelongsToManyHasAssociationMixin<CanonMember, CanonMemberId>;
126
+ hasCanonMemberIdCanonMemberCanonMemberExternalReferenceRelations!: Sequelize.BelongsToManyHasAssociationsMixin<CanonMember, CanonMemberId>;
127
+ countCanonMemberIdCanonMemberCanonMemberExternalReferenceRelations!: Sequelize.BelongsToManyCountAssociationsMixin;
128
+ // ExternalReference hasMany CanonMemberExternalReferenceRelation via externalReferenceId
129
+ canonMemberExternalReferenceRelations!: CanonMemberExternalReferenceRelation[];
130
+ getCanonMemberExternalReferenceRelations!: Sequelize.HasManyGetAssociationsMixin<CanonMemberExternalReferenceRelation>;
131
+ setCanonMemberExternalReferenceRelations!: Sequelize.HasManySetAssociationsMixin<CanonMemberExternalReferenceRelation, CanonMemberExternalReferenceRelationId>;
132
+ addCanonMemberExternalReferenceRelation!: Sequelize.HasManyAddAssociationMixin<CanonMemberExternalReferenceRelation, CanonMemberExternalReferenceRelationId>;
133
+ addCanonMemberExternalReferenceRelations!: Sequelize.HasManyAddAssociationsMixin<CanonMemberExternalReferenceRelation, CanonMemberExternalReferenceRelationId>;
134
+ createCanonMemberExternalReferenceRelation!: Sequelize.HasManyCreateAssociationMixin<CanonMemberExternalReferenceRelation>;
135
+ removeCanonMemberExternalReferenceRelation!: Sequelize.HasManyRemoveAssociationMixin<CanonMemberExternalReferenceRelation, CanonMemberExternalReferenceRelationId>;
136
+ removeCanonMemberExternalReferenceRelations!: Sequelize.HasManyRemoveAssociationsMixin<CanonMemberExternalReferenceRelation, CanonMemberExternalReferenceRelationId>;
137
+ hasCanonMemberExternalReferenceRelation!: Sequelize.HasManyHasAssociationMixin<CanonMemberExternalReferenceRelation, CanonMemberExternalReferenceRelationId>;
138
+ hasCanonMemberExternalReferenceRelations!: Sequelize.HasManyHasAssociationsMixin<CanonMemberExternalReferenceRelation, CanonMemberExternalReferenceRelationId>;
139
+ countCanonMemberExternalReferenceRelations!: Sequelize.HasManyCountAssociationsMixin;
140
+ // ExternalReference belongsToMany PlatformArtist via externalReferenceId and canonArtistId
141
+ canonArtistIdPlatformArtists!: PlatformArtist[];
142
+ getCanonArtistIdPlatformArtists!: Sequelize.BelongsToManyGetAssociationsMixin<PlatformArtist>;
143
+ setCanonArtistIdPlatformArtists!: Sequelize.BelongsToManySetAssociationsMixin<PlatformArtist, PlatformArtistId>;
144
+ addCanonArtistIdPlatformArtist!: Sequelize.BelongsToManyAddAssociationMixin<PlatformArtist, PlatformArtistId>;
145
+ addCanonArtistIdPlatformArtists!: Sequelize.BelongsToManyAddAssociationsMixin<PlatformArtist, PlatformArtistId>;
146
+ createCanonArtistIdPlatformArtist!: Sequelize.BelongsToManyCreateAssociationMixin<PlatformArtist>;
147
+ removeCanonArtistIdPlatformArtist!: Sequelize.BelongsToManyRemoveAssociationMixin<PlatformArtist, PlatformArtistId>;
148
+ removeCanonArtistIdPlatformArtists!: Sequelize.BelongsToManyRemoveAssociationsMixin<PlatformArtist, PlatformArtistId>;
149
+ hasCanonArtistIdPlatformArtist!: Sequelize.BelongsToManyHasAssociationMixin<PlatformArtist, PlatformArtistId>;
150
+ hasCanonArtistIdPlatformArtists!: Sequelize.BelongsToManyHasAssociationsMixin<PlatformArtist, PlatformArtistId>;
151
+ countCanonArtistIdPlatformArtists!: Sequelize.BelongsToManyCountAssociationsMixin;
152
+
153
+ static initModel(sequelize: Sequelize.Sequelize): typeof ExternalReference {
154
+ return ExternalReference.init({
155
+ id: {
156
+ type: DataTypes.UUID,
157
+ allowNull: false,
158
+ defaultValue: Sequelize.Sequelize.fn('uuid_generate_v1'),
159
+ primaryKey: true
160
+ },
161
+ name: {
162
+ type: DataTypes.TEXT,
163
+ allowNull: false,
164
+ unique: "external_reference_un"
165
+ },
166
+ createDate: {
167
+ type: DataTypes.DATE,
168
+ allowNull: false,
169
+ defaultValue: Sequelize.Sequelize.literal('CURRENT_TIMESTAMP'),
170
+ field: 'create_date'
171
+ },
172
+ updateDate: {
173
+ type: DataTypes.DATE,
174
+ allowNull: false,
175
+ defaultValue: Sequelize.Sequelize.literal('CURRENT_TIMESTAMP'),
176
+ field: 'update_date'
177
+ }
178
+ }, {
179
+ sequelize,
180
+ tableName: 'external_reference',
181
+ schema: 'eb',
182
+ timestamps: false,
183
+ indexes: [
184
+ {
185
+ name: "external_reference_un",
186
+ unique: true,
187
+ fields: [
188
+ { name: "name" },
189
+ ]
190
+ },
191
+ {
192
+ name: "reference_source_pkey",
193
+ unique: true,
194
+ fields: [
195
+ { name: "id" },
196
+ ]
197
+ },
198
+ ]
199
+ });
200
+ }
201
+ }
@@ -0,0 +1,60 @@
1
+ import * as Sequelize from 'sequelize';
2
+ import { DataTypes, Model, Optional } from 'sequelize';
3
+ import type { JukeboxSession, JukeboxSessionId } from './JukeboxSession';
4
+
5
+ export interface JukeboxAccessTypeAttributes {
6
+ id: number;
7
+ description: string;
8
+ }
9
+
10
+ export type JukeboxAccessTypePk = "id";
11
+ export type JukeboxAccessTypeId = JukeboxAccessType[JukeboxAccessTypePk];
12
+ export type JukeboxAccessTypeCreationAttributes = JukeboxAccessTypeAttributes;
13
+
14
+ export class JukeboxAccessType extends Model<JukeboxAccessTypeAttributes, JukeboxAccessTypeCreationAttributes> implements JukeboxAccessTypeAttributes {
15
+ id!: number;
16
+ description!: string;
17
+
18
+ // JukeboxAccessType hasMany JukeboxSession via accessTypeId
19
+ jukeboxSessions!: JukeboxSession[];
20
+ getJukeboxSessions!: Sequelize.HasManyGetAssociationsMixin<JukeboxSession>;
21
+ setJukeboxSessions!: Sequelize.HasManySetAssociationsMixin<JukeboxSession, JukeboxSessionId>;
22
+ addJukeboxSession!: Sequelize.HasManyAddAssociationMixin<JukeboxSession, JukeboxSessionId>;
23
+ addJukeboxSessions!: Sequelize.HasManyAddAssociationsMixin<JukeboxSession, JukeboxSessionId>;
24
+ createJukeboxSession!: Sequelize.HasManyCreateAssociationMixin<JukeboxSession>;
25
+ removeJukeboxSession!: Sequelize.HasManyRemoveAssociationMixin<JukeboxSession, JukeboxSessionId>;
26
+ removeJukeboxSessions!: Sequelize.HasManyRemoveAssociationsMixin<JukeboxSession, JukeboxSessionId>;
27
+ hasJukeboxSession!: Sequelize.HasManyHasAssociationMixin<JukeboxSession, JukeboxSessionId>;
28
+ hasJukeboxSessions!: Sequelize.HasManyHasAssociationsMixin<JukeboxSession, JukeboxSessionId>;
29
+ countJukeboxSessions!: Sequelize.HasManyCountAssociationsMixin;
30
+
31
+ static initModel(sequelize: Sequelize.Sequelize): typeof JukeboxAccessType {
32
+ return JukeboxAccessType.init({
33
+ id: {
34
+ autoIncrement: true,
35
+ autoIncrementIdentity: true,
36
+ type: DataTypes.SMALLINT,
37
+ allowNull: false,
38
+ primaryKey: true
39
+ },
40
+ description: {
41
+ type: DataTypes.TEXT,
42
+ allowNull: false
43
+ }
44
+ }, {
45
+ sequelize,
46
+ tableName: 'jukebox_access_type',
47
+ schema: 'eb',
48
+ timestamps: false,
49
+ indexes: [
50
+ {
51
+ name: "jukebox_access_type_pkey",
52
+ unique: true,
53
+ fields: [
54
+ { name: "id" },
55
+ ]
56
+ },
57
+ ]
58
+ });
59
+ }
60
+ }
@@ -0,0 +1,109 @@
1
+ import * as Sequelize from 'sequelize';
2
+ import { DataTypes, Model, Optional } from 'sequelize';
3
+ import type { CanonGenre, CanonGenreId } from './CanonGenre';
4
+ import type { JukeboxSession, JukeboxSessionId } from './JukeboxSession';
5
+
6
+ export interface JukeboxCanonGenreRelationAttributes {
7
+ id: string;
8
+ jukeboxSessionId: string;
9
+ canonGenreId: string;
10
+ stateId: number;
11
+ createdAt: Date;
12
+ updatedAt: Date;
13
+ }
14
+
15
+ export type JukeboxCanonGenreRelationPk = "id";
16
+ export type JukeboxCanonGenreRelationId = JukeboxCanonGenreRelation[JukeboxCanonGenreRelationPk];
17
+ export type JukeboxCanonGenreRelationOptionalAttributes = "id" | "stateId" | "createdAt" | "updatedAt";
18
+ export type JukeboxCanonGenreRelationCreationAttributes = Optional<JukeboxCanonGenreRelationAttributes, JukeboxCanonGenreRelationOptionalAttributes>;
19
+
20
+ export class JukeboxCanonGenreRelation extends Model<JukeboxCanonGenreRelationAttributes, JukeboxCanonGenreRelationCreationAttributes> implements JukeboxCanonGenreRelationAttributes {
21
+ id!: string;
22
+ jukeboxSessionId!: string;
23
+ canonGenreId!: string;
24
+ stateId!: number;
25
+ createdAt!: Date;
26
+ updatedAt!: Date;
27
+
28
+ // JukeboxCanonGenreRelation belongsTo CanonGenre via canonGenreId
29
+ canonGenre!: CanonGenre;
30
+ getCanonGenre!: Sequelize.BelongsToGetAssociationMixin<CanonGenre>;
31
+ setCanonGenre!: Sequelize.BelongsToSetAssociationMixin<CanonGenre, CanonGenreId>;
32
+ createCanonGenre!: Sequelize.BelongsToCreateAssociationMixin<CanonGenre>;
33
+ // JukeboxCanonGenreRelation belongsTo JukeboxSession via jukeboxSessionId
34
+ jukeboxSession!: JukeboxSession;
35
+ getJukeboxSession!: Sequelize.BelongsToGetAssociationMixin<JukeboxSession>;
36
+ setJukeboxSession!: Sequelize.BelongsToSetAssociationMixin<JukeboxSession, JukeboxSessionId>;
37
+ createJukeboxSession!: Sequelize.BelongsToCreateAssociationMixin<JukeboxSession>;
38
+
39
+ static initModel(sequelize: Sequelize.Sequelize): typeof JukeboxCanonGenreRelation {
40
+ return JukeboxCanonGenreRelation.init({
41
+ id: {
42
+ type: DataTypes.UUID,
43
+ allowNull: false,
44
+ defaultValue: DataTypes.UUIDV4,
45
+ primaryKey: true
46
+ },
47
+ jukeboxSessionId: {
48
+ type: DataTypes.UUID,
49
+ allowNull: false,
50
+ references: {
51
+ model: 'jukebox_session',
52
+ key: 'id'
53
+ },
54
+ unique: "unique_jukebox_canon_genre",
55
+ field: 'jukebox_session_id'
56
+ },
57
+ canonGenreId: {
58
+ type: DataTypes.UUID,
59
+ allowNull: false,
60
+ references: {
61
+ model: 'canon_genre',
62
+ key: 'id'
63
+ },
64
+ unique: "unique_jukebox_canon_genre",
65
+ field: 'canon_genre_id'
66
+ },
67
+ stateId: {
68
+ type: DataTypes.SMALLINT,
69
+ allowNull: false,
70
+ defaultValue: 0,
71
+ field: 'state_id'
72
+ },
73
+ createdAt: {
74
+ type: DataTypes.DATE,
75
+ allowNull: false,
76
+ defaultValue: Sequelize.Sequelize.literal('CURRENT_TIMESTAMP'),
77
+ field: 'created_at'
78
+ },
79
+ updatedAt: {
80
+ type: DataTypes.DATE,
81
+ allowNull: false,
82
+ defaultValue: Sequelize.Sequelize.literal('CURRENT_TIMESTAMP'),
83
+ field: 'updated_at'
84
+ }
85
+ }, {
86
+ sequelize,
87
+ tableName: 'jukebox_canon_genre_relation',
88
+ schema: 'eb',
89
+ timestamps: false,
90
+ indexes: [
91
+ {
92
+ name: "jukebox_canon_genre_relation_pkey",
93
+ unique: true,
94
+ fields: [
95
+ { name: "id" },
96
+ ]
97
+ },
98
+ {
99
+ name: "unique_jukebox_canon_genre",
100
+ unique: true,
101
+ fields: [
102
+ { name: "jukebox_session_id" },
103
+ { name: "canon_genre_id" },
104
+ ]
105
+ },
106
+ ]
107
+ });
108
+ }
109
+ }