@earbug/db-models 0.0.60 → 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.
Files changed (230) hide show
  1. package/.dockerignore +10 -0
  2. package/.github/workflows/publish.yaml +266 -19
  3. package/Dockerfile.generate +19 -0
  4. package/dist/AffinityRelationshipType.d.ts +2 -2
  5. package/dist/AffinityRelationshipType.js +6 -6
  6. package/dist/AppUser.d.ts +5 -5
  7. package/dist/AppUser.js +7 -7
  8. package/dist/AppUserDevice.d.ts +2 -2
  9. package/dist/AppUserDevice.js +6 -6
  10. package/dist/AppUserDeviceClassicBackup20260906.d.ts +23 -0
  11. package/dist/AppUserDeviceClassicBackup20260906.js +46 -0
  12. package/dist/AppUserFollowRelation.d.ts +3 -3
  13. package/dist/AppUserFollowRelation.js +6 -6
  14. package/dist/AppUserPlatformRelation.d.ts +13 -13
  15. package/dist/AppUserPlatformRelation.js +25 -25
  16. package/dist/CanonAlbum.d.ts +5 -5
  17. package/dist/CanonAlbum.js +10 -10
  18. package/dist/CanonArtist.d.ts +5 -5
  19. package/dist/CanonArtist.js +11 -11
  20. package/dist/CanonGenre.d.ts +3 -3
  21. package/dist/CanonGenre.js +6 -6
  22. package/dist/CanonLabel.d.ts +2 -2
  23. package/dist/CanonLabel.js +6 -6
  24. package/dist/CanonMember.d.ts +3 -3
  25. package/dist/CanonMember.js +6 -6
  26. package/dist/CanonMemberExternalReferenceRelation.d.ts +2 -2
  27. package/dist/CanonMemberExternalReferenceRelation.js +5 -5
  28. package/dist/CanonTrack.d.ts +5 -5
  29. package/dist/CanonTrack.js +11 -11
  30. package/dist/ConfigParam.d.ts +2 -2
  31. package/dist/ConfigParam.js +5 -5
  32. package/dist/ExternalReference.d.ts +2 -2
  33. package/dist/ExternalReference.js +5 -5
  34. package/dist/FeedContentType.d.ts +2 -2
  35. package/dist/FeedContentType.js +4 -4
  36. package/dist/GuestUser.d.ts +5 -5
  37. package/dist/GuestUser.js +13 -13
  38. package/dist/JukeboxAccessType.d.ts +2 -2
  39. package/dist/JukeboxAccessType.js +4 -4
  40. package/dist/JukeboxCanonGenreRelation.d.ts +2 -2
  41. package/dist/JukeboxCanonGenreRelation.js +6 -6
  42. package/dist/JukeboxInvite.d.ts +3 -3
  43. package/dist/JukeboxInvite.js +6 -6
  44. package/dist/JukeboxQueueEntry.d.ts +9 -9
  45. package/dist/JukeboxQueueEntry.js +25 -25
  46. package/dist/JukeboxQueueMode.d.ts +2 -2
  47. package/dist/JukeboxQueueMode.js +4 -4
  48. package/dist/JukeboxSession.d.ts +9 -9
  49. package/dist/JukeboxSession.js +20 -20
  50. package/dist/JukeboxSessionArtistAffinity.d.ts +2 -2
  51. package/dist/JukeboxSessionArtistAffinity.js +6 -6
  52. package/dist/JukeboxSessionGenreAffinity.d.ts +2 -2
  53. package/dist/JukeboxSessionGenreAffinity.js +6 -6
  54. package/dist/JukeboxTerminationCondition.d.ts +2 -2
  55. package/dist/JukeboxTerminationCondition.js +4 -4
  56. package/dist/JukeboxType.d.ts +2 -2
  57. package/dist/JukeboxType.js +4 -4
  58. package/dist/JukeboxUser.d.ts +7 -7
  59. package/dist/JukeboxUser.js +20 -20
  60. package/dist/KnexMigrations.d.ts +3 -3
  61. package/dist/KnexMigrations.js +6 -6
  62. package/dist/KnexMigrationsLock.d.ts +3 -3
  63. package/dist/KnexMigrationsLock.js +5 -5
  64. package/dist/MerchItem.d.ts +3 -3
  65. package/dist/MerchItem.js +6 -6
  66. package/dist/MerchOrchestration.d.ts +3 -3
  67. package/dist/MerchOrchestration.js +6 -6
  68. package/dist/MerchPlatform.d.ts +2 -2
  69. package/dist/MerchPlatform.js +6 -6
  70. package/dist/MerchType.d.ts +2 -2
  71. package/dist/MerchType.js +4 -4
  72. package/dist/MetricsDaily.d.ts +3 -3
  73. package/dist/MetricsDaily.js +4 -4
  74. package/dist/NewsSite.d.ts +3 -3
  75. package/dist/NewsSite.js +6 -6
  76. package/dist/Notification.d.ts +13 -13
  77. package/dist/Notification.js +33 -33
  78. package/dist/Platform.d.ts +2 -2
  79. package/dist/Platform.js +7 -7
  80. package/dist/PlatformAlbum.d.ts +5 -5
  81. package/dist/PlatformAlbum.js +10 -10
  82. package/dist/PlatformArtist.d.ts +5 -5
  83. package/dist/PlatformArtist.js +10 -10
  84. package/dist/PlatformGenre.d.ts +2 -2
  85. package/dist/PlatformGenre.js +6 -6
  86. package/dist/PlatformTrack.d.ts +3 -3
  87. package/dist/PlatformTrack.js +6 -6
  88. package/dist/PlatformUserAlbum.d.ts +2 -2
  89. package/dist/PlatformUserAlbum.js +6 -6
  90. package/dist/PlatformUserAlbumTrack.d.ts +4 -4
  91. package/dist/PlatformUserAlbumTrack.js +11 -11
  92. package/dist/PlatformUserPlaylist.d.ts +5 -5
  93. package/dist/PlatformUserPlaylist.js +11 -11
  94. package/dist/PlatformUserPlaylistArtistAffinity.d.ts +4 -4
  95. package/dist/PlatformUserPlaylistArtistAffinity.js +12 -12
  96. package/dist/PlatformUserPlaylistGenreAffinity.d.ts +2 -2
  97. package/dist/PlatformUserPlaylistGenreAffinity.js +6 -6
  98. package/dist/PlatformUserPlaylistTrack.d.ts +7 -7
  99. package/dist/PlatformUserPlaylistTrack.js +17 -17
  100. package/dist/PlaybackStatus.d.ts +2 -2
  101. package/dist/PlaybackStatus.js +4 -4
  102. package/dist/RadioShow.d.ts +3 -3
  103. package/dist/RadioShow.js +6 -6
  104. package/dist/RadioShowMedia.d.ts +3 -3
  105. package/dist/RadioShowMedia.js +6 -6
  106. package/dist/RadioShowPlacement.d.ts +3 -3
  107. package/dist/RadioShowPlacement.js +6 -6
  108. package/dist/RadioShowPublishRequests.d.ts +3 -3
  109. package/dist/RadioShowPublishRequests.js +6 -6
  110. package/dist/State.d.ts +2 -2
  111. package/dist/State.js +4 -4
  112. package/dist/UnmatchedAlbum.d.ts +2 -2
  113. package/dist/UnmatchedAlbum.js +6 -6
  114. package/dist/UnmatchedArtist.d.ts +2 -2
  115. package/dist/UnmatchedArtist.js +6 -6
  116. package/dist/UserAbuseReports.d.ts +7 -7
  117. package/dist/UserAbuseReports.js +18 -18
  118. package/dist/UserAffinity.d.ts +2 -2
  119. package/dist/UserAffinity.js +6 -6
  120. package/dist/UserArtistAffinity.d.ts +2 -2
  121. package/dist/UserArtistAffinity.js +6 -6
  122. package/dist/UserBookmarks.d.ts +3 -3
  123. package/dist/UserBookmarks.js +6 -6
  124. package/dist/UserComments.d.ts +5 -5
  125. package/dist/UserComments.js +12 -12
  126. package/dist/UserContacts.d.ts +3 -3
  127. package/dist/UserContacts.js +7 -7
  128. package/dist/UserEngagementFactor.d.ts +2 -2
  129. package/dist/UserEngagementFactor.js +6 -6
  130. package/dist/UserGenreAffinity.d.ts +2 -2
  131. package/dist/UserGenreAffinity.js +6 -6
  132. package/dist/UserLikes.d.ts +3 -3
  133. package/dist/UserLikes.js +6 -6
  134. package/dist/UserMessages.d.ts +5 -5
  135. package/dist/UserMessages.js +15 -15
  136. package/dist/Versus.d.ts +5 -5
  137. package/dist/Versus.js +11 -11
  138. package/dist/VersusCoCreator.d.ts +4 -4
  139. package/dist/VersusCoCreator.js +12 -12
  140. package/dist/VersusOption.d.ts +3 -3
  141. package/dist/VersusOption.js +6 -6
  142. package/dist/VersusPublishIssue.d.ts +3 -3
  143. package/dist/VersusPublishIssue.js +6 -6
  144. package/dist/VersusQuestion.d.ts +2 -2
  145. package/dist/VersusQuestion.js +6 -6
  146. package/dist/VersusVote.d.ts +2 -2
  147. package/dist/VersusVote.js +6 -6
  148. package/dist/init-models.d.ts +349 -3
  149. package/dist/init-models.js +905 -1
  150. package/models/AffinityRelationshipType.ts +8 -8
  151. package/models/AppUser.ts +12 -12
  152. package/models/AppUserDevice.ts +8 -8
  153. package/models/AppUserDeviceClassicBackup20260906.ts +66 -0
  154. package/models/AppUserFollowRelation.ts +9 -9
  155. package/models/AppUserPlatformRelation.ts +38 -38
  156. package/models/CanonAlbum.ts +15 -15
  157. package/models/CanonArtist.ts +16 -16
  158. package/models/CanonGenre.ts +9 -9
  159. package/models/CanonLabel.ts +8 -8
  160. package/models/CanonMember.ts +9 -9
  161. package/models/CanonMemberExternalReferenceRelation.ts +7 -7
  162. package/models/CanonTrack.ts +16 -16
  163. package/models/ConfigParam.ts +7 -7
  164. package/models/ExternalReference.ts +7 -7
  165. package/models/FeedContentType.ts +6 -6
  166. package/models/GuestUser.ts +18 -18
  167. package/models/JukeboxAccessType.ts +6 -6
  168. package/models/JukeboxCanonGenreRelation.ts +8 -8
  169. package/models/JukeboxInvite.ts +9 -9
  170. package/models/JukeboxQueueEntry.ts +34 -34
  171. package/models/JukeboxQueueMode.ts +6 -6
  172. package/models/JukeboxSession.ts +29 -29
  173. package/models/JukeboxSessionArtistAffinity.ts +8 -8
  174. package/models/JukeboxSessionGenreAffinity.ts +8 -8
  175. package/models/JukeboxTerminationCondition.ts +6 -6
  176. package/models/JukeboxType.ts +6 -6
  177. package/models/JukeboxUser.ts +27 -27
  178. package/models/KnexMigrations.ts +9 -9
  179. package/models/KnexMigrationsLock.ts +8 -8
  180. package/models/MerchItem.ts +9 -9
  181. package/models/MerchOrchestration.ts +9 -9
  182. package/models/MerchPlatform.ts +8 -8
  183. package/models/MerchType.ts +6 -6
  184. package/models/MetricsDaily.ts +7 -7
  185. package/models/NewsSite.ts +9 -9
  186. package/models/Notification.ts +46 -46
  187. package/models/Platform.ts +9 -9
  188. package/models/PlatformAlbum.ts +15 -15
  189. package/models/PlatformArtist.ts +15 -15
  190. package/models/PlatformGenre.ts +8 -8
  191. package/models/PlatformTrack.ts +9 -9
  192. package/models/PlatformUserAlbum.ts +8 -8
  193. package/models/PlatformUserAlbumTrack.ts +15 -15
  194. package/models/PlatformUserPlaylist.ts +16 -16
  195. package/models/PlatformUserPlaylistArtistAffinity.ts +16 -16
  196. package/models/PlatformUserPlaylistGenreAffinity.ts +8 -8
  197. package/models/PlatformUserPlaylistTrack.ts +24 -24
  198. package/models/PlaybackStatus.ts +6 -6
  199. package/models/RadioShow.ts +9 -9
  200. package/models/RadioShowMedia.ts +9 -9
  201. package/models/RadioShowPlacement.ts +9 -9
  202. package/models/RadioShowPublishRequests.ts +9 -9
  203. package/models/State.ts +6 -6
  204. package/models/UnmatchedAlbum.ts +8 -8
  205. package/models/UnmatchedArtist.ts +8 -8
  206. package/models/UserAbuseReports.ts +25 -25
  207. package/models/UserAffinity.ts +8 -8
  208. package/models/UserArtistAffinity.ts +8 -8
  209. package/models/UserBookmarks.ts +9 -9
  210. package/models/UserComments.ts +17 -17
  211. package/models/UserContacts.ts +10 -10
  212. package/models/UserEngagementFactor.ts +8 -8
  213. package/models/UserGenreAffinity.ts +8 -8
  214. package/models/UserLikes.ts +9 -9
  215. package/models/UserMessages.ts +20 -20
  216. package/models/Versus.ts +16 -16
  217. package/models/VersusCoCreator.ts +16 -16
  218. package/models/VersusOption.ts +9 -9
  219. package/models/VersusPublishIssue.ts +9 -9
  220. package/models/VersusQuestion.ts +8 -8
  221. package/models/VersusVote.ts +8 -8
  222. package/models/init-models.ts +1245 -0
  223. package/package.json +1 -1
  224. package/scripts/generate-and-upload.mjs +123 -0
  225. package/dist/CanonAlbumImageHarvested.d.ts +0 -30
  226. package/dist/CanonAlbumImageHarvested.js +0 -70
  227. package/dist/CanonArtistImageHarvested.d.ts +0 -30
  228. package/dist/CanonArtistImageHarvested.js +0 -70
  229. package/models/CanonAlbumImageHarvested.ts +0 -98
  230. package/models/CanonArtistImageHarvested.ts +0 -98
@@ -29,17 +29,17 @@ const sequelize_1 = require("sequelize");
29
29
  class ExternalReference extends sequelize_1.Model {
30
30
  static initModel(sequelize) {
31
31
  return ExternalReference.init({
32
- name: {
33
- type: sequelize_1.DataTypes.TEXT,
34
- allowNull: false,
35
- unique: "external_reference_un"
36
- },
37
32
  id: {
38
33
  type: sequelize_1.DataTypes.UUID,
39
34
  allowNull: false,
40
35
  defaultValue: Sequelize.Sequelize.fn('uuid_generate_v1'),
41
36
  primaryKey: true
42
37
  },
38
+ name: {
39
+ type: sequelize_1.DataTypes.TEXT,
40
+ allowNull: false,
41
+ unique: "external_reference_un"
42
+ },
43
43
  createDate: {
44
44
  type: sequelize_1.DataTypes.DATE,
45
45
  allowNull: false,
@@ -2,8 +2,8 @@ import * as Sequelize from 'sequelize';
2
2
  import { Model, Optional } from 'sequelize';
3
3
  import type { UserEngagementFactor, UserEngagementFactorId } from './UserEngagementFactor';
4
4
  export interface FeedContentTypeAttributes {
5
- name: string;
6
5
  id: string;
6
+ name: string;
7
7
  mixPercentage: number;
8
8
  affinityMixHigh: number;
9
9
  affinityMixMedium: number;
@@ -18,8 +18,8 @@ export type FeedContentTypeId = FeedContentType[FeedContentTypePk];
18
18
  export type FeedContentTypeOptionalAttributes = "id" | "mixPercentage" | "affinityMixHigh" | "affinityMixMedium" | "affinityMixLow" | "apiEndpoint" | "isActive" | "createDate" | "updateDate";
19
19
  export type FeedContentTypeCreationAttributes = Optional<FeedContentTypeAttributes, FeedContentTypeOptionalAttributes>;
20
20
  export declare class FeedContentType extends Model<FeedContentTypeAttributes, FeedContentTypeCreationAttributes> implements FeedContentTypeAttributes {
21
- name: string;
22
21
  id: string;
22
+ name: string;
23
23
  mixPercentage: number;
24
24
  affinityMixHigh: number;
25
25
  affinityMixMedium: number;
@@ -29,16 +29,16 @@ const sequelize_1 = require("sequelize");
29
29
  class FeedContentType extends sequelize_1.Model {
30
30
  static initModel(sequelize) {
31
31
  return FeedContentType.init({
32
- name: {
33
- type: sequelize_1.DataTypes.STRING(50),
34
- allowNull: false
35
- },
36
32
  id: {
37
33
  type: sequelize_1.DataTypes.UUID,
38
34
  allowNull: false,
39
35
  defaultValue: sequelize_1.DataTypes.UUIDV4,
40
36
  primaryKey: true
41
37
  },
38
+ name: {
39
+ type: sequelize_1.DataTypes.STRING(50),
40
+ allowNull: false
41
+ },
42
42
  mixPercentage: {
43
43
  type: sequelize_1.DataTypes.DECIMAL,
44
44
  allowNull: false,
@@ -4,25 +4,25 @@ import type { JukeboxQueueEntry, JukeboxQueueEntryId } from './JukeboxQueueEntry
4
4
  import type { JukeboxSession, JukeboxSessionId } from './JukeboxSession';
5
5
  import type { Versus, VersusId } from './Versus';
6
6
  export interface GuestUserAttributes {
7
- jukeboxSessionId?: string;
7
+ id: string;
8
8
  firstName: string;
9
9
  lastName?: string;
10
+ jukeboxSessionId?: string;
10
11
  ipAddress?: string;
11
- id: string;
12
12
  createDate: Date;
13
13
  updateDate: Date;
14
14
  versusId?: string;
15
15
  }
16
16
  export type GuestUserPk = "id";
17
17
  export type GuestUserId = GuestUser[GuestUserPk];
18
- export type GuestUserOptionalAttributes = "jukeboxSessionId" | "lastName" | "ipAddress" | "id" | "createDate" | "updateDate" | "versusId";
18
+ export type GuestUserOptionalAttributes = "id" | "lastName" | "jukeboxSessionId" | "ipAddress" | "createDate" | "updateDate" | "versusId";
19
19
  export type GuestUserCreationAttributes = Optional<GuestUserAttributes, GuestUserOptionalAttributes>;
20
20
  export declare class GuestUser extends Model<GuestUserAttributes, GuestUserCreationAttributes> implements GuestUserAttributes {
21
- jukeboxSessionId?: string;
21
+ id: string;
22
22
  firstName: string;
23
23
  lastName?: string;
24
+ jukeboxSessionId?: string;
24
25
  ipAddress?: string;
25
- id: string;
26
26
  createDate: Date;
27
27
  updateDate: Date;
28
28
  versusId?: string;
package/dist/GuestUser.js CHANGED
@@ -29,14 +29,11 @@ const sequelize_1 = require("sequelize");
29
29
  class GuestUser extends sequelize_1.Model {
30
30
  static initModel(sequelize) {
31
31
  return GuestUser.init({
32
- jukeboxSessionId: {
32
+ id: {
33
33
  type: sequelize_1.DataTypes.UUID,
34
- allowNull: true,
35
- references: {
36
- model: 'jukebox_session',
37
- key: 'id'
38
- },
39
- field: 'jukebox_session_id'
34
+ allowNull: false,
35
+ defaultValue: sequelize_1.DataTypes.UUIDV4,
36
+ primaryKey: true
40
37
  },
41
38
  firstName: {
42
39
  type: sequelize_1.DataTypes.TEXT,
@@ -48,17 +45,20 @@ class GuestUser extends sequelize_1.Model {
48
45
  allowNull: true,
49
46
  field: 'last_name'
50
47
  },
48
+ jukeboxSessionId: {
49
+ type: sequelize_1.DataTypes.UUID,
50
+ allowNull: true,
51
+ references: {
52
+ model: 'jukebox_session',
53
+ key: 'id'
54
+ },
55
+ field: 'jukebox_session_id'
56
+ },
51
57
  ipAddress: {
52
58
  type: sequelize_1.DataTypes.TEXT,
53
59
  allowNull: true,
54
60
  field: 'ip_address'
55
61
  },
56
- id: {
57
- type: sequelize_1.DataTypes.UUID,
58
- allowNull: false,
59
- defaultValue: sequelize_1.DataTypes.UUIDV4,
60
- primaryKey: true
61
- },
62
62
  createDate: {
63
63
  type: sequelize_1.DataTypes.DATE,
64
64
  allowNull: false,
@@ -2,15 +2,15 @@ import * as Sequelize from 'sequelize';
2
2
  import { Model } from 'sequelize';
3
3
  import type { JukeboxSession, JukeboxSessionId } from './JukeboxSession';
4
4
  export interface JukeboxAccessTypeAttributes {
5
- description: string;
6
5
  id: number;
6
+ description: string;
7
7
  }
8
8
  export type JukeboxAccessTypePk = "id";
9
9
  export type JukeboxAccessTypeId = JukeboxAccessType[JukeboxAccessTypePk];
10
10
  export type JukeboxAccessTypeCreationAttributes = JukeboxAccessTypeAttributes;
11
11
  export declare class JukeboxAccessType extends Model<JukeboxAccessTypeAttributes, JukeboxAccessTypeCreationAttributes> implements JukeboxAccessTypeAttributes {
12
- description: string;
13
12
  id: number;
13
+ description: string;
14
14
  jukeboxSessions: JukeboxSession[];
15
15
  getJukeboxSessions: Sequelize.HasManyGetAssociationsMixin<JukeboxSession>;
16
16
  setJukeboxSessions: Sequelize.HasManySetAssociationsMixin<JukeboxSession, JukeboxSessionId>;
@@ -5,16 +5,16 @@ const sequelize_1 = require("sequelize");
5
5
  class JukeboxAccessType extends sequelize_1.Model {
6
6
  static initModel(sequelize) {
7
7
  return JukeboxAccessType.init({
8
- description: {
9
- type: sequelize_1.DataTypes.TEXT,
10
- allowNull: false
11
- },
12
8
  id: {
13
9
  autoIncrement: true,
14
10
  autoIncrementIdentity: true,
15
11
  type: sequelize_1.DataTypes.SMALLINT,
16
12
  allowNull: false,
17
13
  primaryKey: true
14
+ },
15
+ description: {
16
+ type: sequelize_1.DataTypes.TEXT,
17
+ allowNull: false
18
18
  }
19
19
  }, {
20
20
  sequelize,
@@ -3,10 +3,10 @@ import { Model, Optional } from 'sequelize';
3
3
  import type { CanonGenre, CanonGenreId } from './CanonGenre';
4
4
  import type { JukeboxSession, JukeboxSessionId } from './JukeboxSession';
5
5
  export interface JukeboxCanonGenreRelationAttributes {
6
+ id: string;
6
7
  jukeboxSessionId: string;
7
8
  canonGenreId: string;
8
9
  stateId: number;
9
- id: string;
10
10
  createdAt: Date;
11
11
  updatedAt: Date;
12
12
  }
@@ -15,10 +15,10 @@ export type JukeboxCanonGenreRelationId = JukeboxCanonGenreRelation[JukeboxCanon
15
15
  export type JukeboxCanonGenreRelationOptionalAttributes = "id" | "createdAt" | "updatedAt";
16
16
  export type JukeboxCanonGenreRelationCreationAttributes = Optional<JukeboxCanonGenreRelationAttributes, JukeboxCanonGenreRelationOptionalAttributes>;
17
17
  export declare class JukeboxCanonGenreRelation extends Model<JukeboxCanonGenreRelationAttributes, JukeboxCanonGenreRelationCreationAttributes> implements JukeboxCanonGenreRelationAttributes {
18
+ id: string;
18
19
  jukeboxSessionId: string;
19
20
  canonGenreId: string;
20
21
  stateId: number;
21
- id: string;
22
22
  createdAt: Date;
23
23
  updatedAt: Date;
24
24
  canonGenre: CanonGenre;
@@ -29,6 +29,12 @@ const sequelize_1 = require("sequelize");
29
29
  class JukeboxCanonGenreRelation extends sequelize_1.Model {
30
30
  static initModel(sequelize) {
31
31
  return JukeboxCanonGenreRelation.init({
32
+ id: {
33
+ type: sequelize_1.DataTypes.UUID,
34
+ allowNull: false,
35
+ defaultValue: sequelize_1.DataTypes.UUIDV4,
36
+ primaryKey: true
37
+ },
32
38
  jukeboxSessionId: {
33
39
  type: sequelize_1.DataTypes.UUID,
34
40
  allowNull: false,
@@ -54,12 +60,6 @@ class JukeboxCanonGenreRelation extends sequelize_1.Model {
54
60
  allowNull: false,
55
61
  field: 'state_id'
56
62
  },
57
- id: {
58
- type: sequelize_1.DataTypes.UUID,
59
- allowNull: false,
60
- defaultValue: sequelize_1.DataTypes.UUIDV4,
61
- primaryKey: true
62
- },
63
63
  createdAt: {
64
64
  type: sequelize_1.DataTypes.DATE,
65
65
  allowNull: false,
@@ -3,24 +3,24 @@ import { Model, Optional } from 'sequelize';
3
3
  import type { AppUser, AppUserId } from './AppUser';
4
4
  import type { JukeboxSession, JukeboxSessionId } from './JukeboxSession';
5
5
  export interface JukeboxInviteAttributes {
6
+ id: string;
6
7
  jukeboxSessionId: string;
7
8
  inviterUserId: string;
8
9
  invitedUserId?: string;
9
10
  email?: string;
10
- id: string;
11
11
  createdAt: Date;
12
12
  updatedAt: Date;
13
13
  }
14
14
  export type JukeboxInvitePk = "id";
15
15
  export type JukeboxInviteId = JukeboxInvite[JukeboxInvitePk];
16
- export type JukeboxInviteOptionalAttributes = "invitedUserId" | "email" | "id" | "createdAt" | "updatedAt";
16
+ export type JukeboxInviteOptionalAttributes = "id" | "invitedUserId" | "email" | "createdAt" | "updatedAt";
17
17
  export type JukeboxInviteCreationAttributes = Optional<JukeboxInviteAttributes, JukeboxInviteOptionalAttributes>;
18
18
  export declare class JukeboxInvite extends Model<JukeboxInviteAttributes, JukeboxInviteCreationAttributes> implements JukeboxInviteAttributes {
19
+ id: string;
19
20
  jukeboxSessionId: string;
20
21
  inviterUserId: string;
21
22
  invitedUserId?: string;
22
23
  email?: string;
23
- id: string;
24
24
  createdAt: Date;
25
25
  updatedAt: Date;
26
26
  invitedUser: AppUser;
@@ -29,6 +29,12 @@ const sequelize_1 = require("sequelize");
29
29
  class JukeboxInvite extends sequelize_1.Model {
30
30
  static initModel(sequelize) {
31
31
  return JukeboxInvite.init({
32
+ id: {
33
+ type: sequelize_1.DataTypes.UUID,
34
+ allowNull: false,
35
+ defaultValue: sequelize_1.DataTypes.UUIDV4,
36
+ primaryKey: true
37
+ },
32
38
  jukeboxSessionId: {
33
39
  type: sequelize_1.DataTypes.UUID,
34
40
  allowNull: false,
@@ -60,12 +66,6 @@ class JukeboxInvite extends sequelize_1.Model {
60
66
  type: sequelize_1.DataTypes.TEXT,
61
67
  allowNull: true
62
68
  },
63
- id: {
64
- type: sequelize_1.DataTypes.UUID,
65
- allowNull: false,
66
- defaultValue: sequelize_1.DataTypes.UUIDV4,
67
- primaryKey: true
68
- },
69
69
  createdAt: {
70
70
  type: sequelize_1.DataTypes.DATE,
71
71
  allowNull: false,
@@ -9,17 +9,17 @@ import type { PlatformTrack, PlatformTrackId } from './PlatformTrack';
9
9
  import type { PlaybackStatusType, PlaybackStatusTypeId } from './PlaybackStatusType';
10
10
  import type { TrackDeletionReason, TrackDeletionReasonId } from './TrackDeletionReason';
11
11
  export interface JukeboxQueueEntryAttributes {
12
+ id: string;
12
13
  jukeboxSessionId: string;
14
+ trackId?: string;
13
15
  playbackPriority?: number;
14
- playbackStarted?: Date;
15
- id: string;
16
+ trackAddedUserId?: string;
16
17
  createdAt: Date;
17
18
  updatedAt: Date;
18
19
  setOrder: number;
19
20
  trackDeletionReasonId: number;
20
21
  playbackStatusTypeId: number;
21
- trackId?: string;
22
- trackAddedUserId?: string;
22
+ playbackStarted?: Date;
23
23
  trackThumbsUp?: string[];
24
24
  trackThumbsDown?: string[];
25
25
  platformTrackId?: string;
@@ -27,20 +27,20 @@ export interface JukeboxQueueEntryAttributes {
27
27
  }
28
28
  export type JukeboxQueueEntryPk = "id";
29
29
  export type JukeboxQueueEntryId = JukeboxQueueEntry[JukeboxQueueEntryPk];
30
- export type JukeboxQueueEntryOptionalAttributes = "playbackPriority" | "playbackStarted" | "id" | "createdAt" | "updatedAt" | "setOrder" | "trackDeletionReasonId" | "playbackStatusTypeId" | "trackId" | "trackAddedUserId" | "trackThumbsUp" | "trackThumbsDown" | "platformTrackId" | "trackAddedGuestUserId";
30
+ export type JukeboxQueueEntryOptionalAttributes = "id" | "trackId" | "playbackPriority" | "trackAddedUserId" | "createdAt" | "updatedAt" | "setOrder" | "trackDeletionReasonId" | "playbackStatusTypeId" | "playbackStarted" | "trackThumbsUp" | "trackThumbsDown" | "platformTrackId" | "trackAddedGuestUserId";
31
31
  export type JukeboxQueueEntryCreationAttributes = Optional<JukeboxQueueEntryAttributes, JukeboxQueueEntryOptionalAttributes>;
32
32
  export declare class JukeboxQueueEntry extends Model<JukeboxQueueEntryAttributes, JukeboxQueueEntryCreationAttributes> implements JukeboxQueueEntryAttributes {
33
+ id: string;
33
34
  jukeboxSessionId: string;
35
+ trackId?: string;
34
36
  playbackPriority?: number;
35
- playbackStarted?: Date;
36
- id: string;
37
+ trackAddedUserId?: string;
37
38
  createdAt: Date;
38
39
  updatedAt: Date;
39
40
  setOrder: number;
40
41
  trackDeletionReasonId: number;
41
42
  playbackStatusTypeId: number;
42
- trackId?: string;
43
- trackAddedUserId?: string;
43
+ playbackStarted?: Date;
44
44
  trackThumbsUp?: string[];
45
45
  trackThumbsDown?: string[];
46
46
  platformTrackId?: string;
@@ -29,6 +29,12 @@ const sequelize_1 = require("sequelize");
29
29
  class JukeboxQueueEntry extends sequelize_1.Model {
30
30
  static initModel(sequelize) {
31
31
  return JukeboxQueueEntry.init({
32
+ id: {
33
+ type: sequelize_1.DataTypes.UUID,
34
+ allowNull: false,
35
+ defaultValue: sequelize_1.DataTypes.UUIDV4,
36
+ primaryKey: true
37
+ },
32
38
  jukeboxSessionId: {
33
39
  type: sequelize_1.DataTypes.UUID,
34
40
  allowNull: false,
@@ -38,21 +44,28 @@ class JukeboxQueueEntry extends sequelize_1.Model {
38
44
  },
39
45
  field: 'jukebox_session_id'
40
46
  },
47
+ trackId: {
48
+ type: sequelize_1.DataTypes.UUID,
49
+ allowNull: true,
50
+ references: {
51
+ model: 'canon_track',
52
+ key: 'id'
53
+ },
54
+ field: 'track_id'
55
+ },
41
56
  playbackPriority: {
42
57
  type: sequelize_1.DataTypes.DECIMAL,
43
58
  allowNull: true,
44
59
  field: 'playback_priority'
45
60
  },
46
- playbackStarted: {
47
- type: sequelize_1.DataTypes.DATE,
48
- allowNull: true,
49
- field: 'playback_started'
50
- },
51
- id: {
61
+ trackAddedUserId: {
52
62
  type: sequelize_1.DataTypes.UUID,
53
- allowNull: false,
54
- defaultValue: sequelize_1.DataTypes.UUIDV4,
55
- primaryKey: true
63
+ allowNull: true,
64
+ references: {
65
+ model: 'app_user',
66
+ key: 'id'
67
+ },
68
+ field: 'track_added_user_id'
56
69
  },
57
70
  createdAt: {
58
71
  type: sequelize_1.DataTypes.DATE,
@@ -92,23 +105,10 @@ class JukeboxQueueEntry extends sequelize_1.Model {
92
105
  },
93
106
  field: 'playback_status_type_id'
94
107
  },
95
- trackId: {
96
- type: sequelize_1.DataTypes.UUID,
97
- allowNull: true,
98
- references: {
99
- model: 'canon_track',
100
- key: 'id'
101
- },
102
- field: 'track_id'
103
- },
104
- trackAddedUserId: {
105
- type: sequelize_1.DataTypes.UUID,
108
+ playbackStarted: {
109
+ type: sequelize_1.DataTypes.DATE,
106
110
  allowNull: true,
107
- references: {
108
- model: 'app_user',
109
- key: 'id'
110
- },
111
- field: 'track_added_user_id'
111
+ field: 'playback_started'
112
112
  },
113
113
  trackThumbsUp: {
114
114
  type: sequelize_1.DataTypes.ARRAY(sequelize_1.DataTypes.UUID),
@@ -2,15 +2,15 @@ import * as Sequelize from 'sequelize';
2
2
  import { Model } from 'sequelize';
3
3
  import type { JukeboxSession, JukeboxSessionId } from './JukeboxSession';
4
4
  export interface JukeboxQueueModeAttributes {
5
- description: string;
6
5
  id: number;
6
+ description: string;
7
7
  }
8
8
  export type JukeboxQueueModePk = "id";
9
9
  export type JukeboxQueueModeId = JukeboxQueueMode[JukeboxQueueModePk];
10
10
  export type JukeboxQueueModeCreationAttributes = JukeboxQueueModeAttributes;
11
11
  export declare class JukeboxQueueMode extends Model<JukeboxQueueModeAttributes, JukeboxQueueModeCreationAttributes> implements JukeboxQueueModeAttributes {
12
- description: string;
13
12
  id: number;
13
+ description: string;
14
14
  jukeboxSessions: JukeboxSession[];
15
15
  getJukeboxSessions: Sequelize.HasManyGetAssociationsMixin<JukeboxSession>;
16
16
  setJukeboxSessions: Sequelize.HasManySetAssociationsMixin<JukeboxSession, JukeboxSessionId>;
@@ -5,16 +5,16 @@ const sequelize_1 = require("sequelize");
5
5
  class JukeboxQueueMode extends sequelize_1.Model {
6
6
  static initModel(sequelize) {
7
7
  return JukeboxQueueMode.init({
8
- description: {
9
- type: sequelize_1.DataTypes.TEXT,
10
- allowNull: false
11
- },
12
8
  id: {
13
9
  autoIncrement: true,
14
10
  autoIncrementIdentity: true,
15
11
  type: sequelize_1.DataTypes.SMALLINT,
16
12
  allowNull: false,
17
13
  primaryKey: true
14
+ },
15
+ description: {
16
+ type: sequelize_1.DataTypes.TEXT,
17
+ allowNull: false
18
18
  }
19
19
  }, {
20
20
  sequelize,
@@ -18,36 +18,36 @@ import type { UserBookmarks, UserBookmarksId } from './UserBookmarks';
18
18
  import type { UserComments, UserCommentsId } from './UserComments';
19
19
  import type { UserLikes, UserLikesId } from './UserLikes';
20
20
  export interface JukeboxSessionAttributes {
21
+ id: string;
21
22
  typeId: number;
22
23
  accessTypeId: number;
23
24
  terminationConditionId: number;
24
25
  jukeboxQueueModeId: number;
25
- trackQueue?: string[];
26
- stateMachineArn?: string;
27
- id: string;
28
26
  createdAt: Date;
29
27
  updatedAt: Date;
30
- description?: string;
31
28
  jukeboxStatusId: number;
29
+ trackQueue?: string[];
30
+ description?: string;
31
+ stateMachineArn?: string;
32
32
  durationMs: number;
33
33
  pausedAt?: Date;
34
34
  }
35
35
  export type JukeboxSessionPk = "id";
36
36
  export type JukeboxSessionId = JukeboxSession[JukeboxSessionPk];
37
- export type JukeboxSessionOptionalAttributes = "trackQueue" | "stateMachineArn" | "id" | "createdAt" | "updatedAt" | "description" | "jukeboxStatusId" | "durationMs" | "pausedAt";
37
+ export type JukeboxSessionOptionalAttributes = "id" | "createdAt" | "updatedAt" | "jukeboxStatusId" | "trackQueue" | "description" | "stateMachineArn" | "durationMs" | "pausedAt";
38
38
  export type JukeboxSessionCreationAttributes = Optional<JukeboxSessionAttributes, JukeboxSessionOptionalAttributes>;
39
39
  export declare class JukeboxSession extends Model<JukeboxSessionAttributes, JukeboxSessionCreationAttributes> implements JukeboxSessionAttributes {
40
+ id: string;
40
41
  typeId: number;
41
42
  accessTypeId: number;
42
43
  terminationConditionId: number;
43
44
  jukeboxQueueModeId: number;
44
- trackQueue?: string[];
45
- stateMachineArn?: string;
46
- id: string;
47
45
  createdAt: Date;
48
46
  updatedAt: Date;
49
- description?: string;
50
47
  jukeboxStatusId: number;
48
+ trackQueue?: string[];
49
+ description?: string;
50
+ stateMachineArn?: string;
51
51
  durationMs: number;
52
52
  pausedAt?: Date;
53
53
  accessType: JukeboxAccessType;
@@ -29,6 +29,12 @@ const sequelize_1 = require("sequelize");
29
29
  class JukeboxSession extends sequelize_1.Model {
30
30
  static initModel(sequelize) {
31
31
  return JukeboxSession.init({
32
+ id: {
33
+ type: sequelize_1.DataTypes.UUID,
34
+ allowNull: false,
35
+ defaultValue: sequelize_1.DataTypes.UUIDV4,
36
+ primaryKey: true
37
+ },
32
38
  typeId: {
33
39
  type: sequelize_1.DataTypes.SMALLINT,
34
40
  allowNull: false,
@@ -65,22 +71,6 @@ class JukeboxSession extends sequelize_1.Model {
65
71
  },
66
72
  field: 'jukebox_queue_mode_id'
67
73
  },
68
- trackQueue: {
69
- type: sequelize_1.DataTypes.ARRAY(sequelize_1.DataTypes.TEXT),
70
- allowNull: true,
71
- field: 'track_queue'
72
- },
73
- stateMachineArn: {
74
- type: sequelize_1.DataTypes.STRING(255),
75
- allowNull: true,
76
- field: 'state_machine_arn'
77
- },
78
- id: {
79
- type: sequelize_1.DataTypes.UUID,
80
- allowNull: false,
81
- defaultValue: sequelize_1.DataTypes.UUIDV4,
82
- primaryKey: true
83
- },
84
74
  createdAt: {
85
75
  type: sequelize_1.DataTypes.DATE,
86
76
  allowNull: false,
@@ -93,10 +83,6 @@ class JukeboxSession extends sequelize_1.Model {
93
83
  defaultValue: Sequelize.Sequelize.literal('CURRENT_TIMESTAMP'),
94
84
  field: 'updated_at'
95
85
  },
96
- description: {
97
- type: sequelize_1.DataTypes.STRING(512),
98
- allowNull: true
99
- },
100
86
  jukeboxStatusId: {
101
87
  type: sequelize_1.DataTypes.SMALLINT,
102
88
  allowNull: false,
@@ -107,6 +93,20 @@ class JukeboxSession extends sequelize_1.Model {
107
93
  },
108
94
  field: 'jukebox_status_id'
109
95
  },
96
+ trackQueue: {
97
+ type: sequelize_1.DataTypes.ARRAY(sequelize_1.DataTypes.TEXT),
98
+ allowNull: true,
99
+ field: 'track_queue'
100
+ },
101
+ description: {
102
+ type: sequelize_1.DataTypes.STRING(512),
103
+ allowNull: true
104
+ },
105
+ stateMachineArn: {
106
+ type: sequelize_1.DataTypes.STRING(255),
107
+ allowNull: true,
108
+ field: 'state_machine_arn'
109
+ },
110
110
  durationMs: {
111
111
  type: sequelize_1.DataTypes.INTEGER,
112
112
  allowNull: false,
@@ -4,11 +4,11 @@ import type { AffinityTier, AffinityTierId } from './AffinityTier';
4
4
  import type { CanonArtist, CanonArtistId } from './CanonArtist';
5
5
  import type { JukeboxSession, JukeboxSessionId } from './JukeboxSession';
6
6
  export interface JukeboxSessionArtistAffinityAttributes {
7
+ id: string;
7
8
  jukeboxSessionId: string;
8
9
  canonArtistId: string;
9
10
  affinityTierId: number;
10
11
  rank: number;
11
- id: string;
12
12
  createdAt: Date;
13
13
  updatedAt: Date;
14
14
  }
@@ -17,11 +17,11 @@ export type JukeboxSessionArtistAffinityId = JukeboxSessionArtistAffinity[Jukebo
17
17
  export type JukeboxSessionArtistAffinityOptionalAttributes = "id" | "createdAt" | "updatedAt";
18
18
  export type JukeboxSessionArtistAffinityCreationAttributes = Optional<JukeboxSessionArtistAffinityAttributes, JukeboxSessionArtistAffinityOptionalAttributes>;
19
19
  export declare class JukeboxSessionArtistAffinity extends Model<JukeboxSessionArtistAffinityAttributes, JukeboxSessionArtistAffinityCreationAttributes> implements JukeboxSessionArtistAffinityAttributes {
20
+ id: string;
20
21
  jukeboxSessionId: string;
21
22
  canonArtistId: string;
22
23
  affinityTierId: number;
23
24
  rank: number;
24
- id: string;
25
25
  createdAt: Date;
26
26
  updatedAt: Date;
27
27
  affinityTier: AffinityTier;
@@ -29,6 +29,12 @@ const sequelize_1 = require("sequelize");
29
29
  class JukeboxSessionArtistAffinity extends sequelize_1.Model {
30
30
  static initModel(sequelize) {
31
31
  return JukeboxSessionArtistAffinity.init({
32
+ id: {
33
+ type: sequelize_1.DataTypes.UUID,
34
+ allowNull: false,
35
+ defaultValue: sequelize_1.DataTypes.UUIDV4,
36
+ primaryKey: true
37
+ },
32
38
  jukeboxSessionId: {
33
39
  type: sequelize_1.DataTypes.UUID,
34
40
  allowNull: false,
@@ -62,12 +68,6 @@ class JukeboxSessionArtistAffinity extends sequelize_1.Model {
62
68
  type: sequelize_1.DataTypes.INTEGER,
63
69
  allowNull: false
64
70
  },
65
- id: {
66
- type: sequelize_1.DataTypes.UUID,
67
- allowNull: false,
68
- defaultValue: sequelize_1.DataTypes.UUIDV4,
69
- primaryKey: true
70
- },
71
71
  createdAt: {
72
72
  type: sequelize_1.DataTypes.DATE,
73
73
  allowNull: false,
@@ -4,11 +4,11 @@ import type { AffinityTier, AffinityTierId } from './AffinityTier';
4
4
  import type { CanonGenre, CanonGenreId } from './CanonGenre';
5
5
  import type { JukeboxSession, JukeboxSessionId } from './JukeboxSession';
6
6
  export interface JukeboxSessionGenreAffinityAttributes {
7
+ id: string;
7
8
  jukeboxSessionId: string;
8
9
  canonGenreId: string;
9
10
  affinityTierId: number;
10
11
  rank: number;
11
- id: string;
12
12
  createdAt: Date;
13
13
  updatedAt: Date;
14
14
  }
@@ -17,11 +17,11 @@ export type JukeboxSessionGenreAffinityId = JukeboxSessionGenreAffinity[JukeboxS
17
17
  export type JukeboxSessionGenreAffinityOptionalAttributes = "id" | "createdAt" | "updatedAt";
18
18
  export type JukeboxSessionGenreAffinityCreationAttributes = Optional<JukeboxSessionGenreAffinityAttributes, JukeboxSessionGenreAffinityOptionalAttributes>;
19
19
  export declare class JukeboxSessionGenreAffinity extends Model<JukeboxSessionGenreAffinityAttributes, JukeboxSessionGenreAffinityCreationAttributes> implements JukeboxSessionGenreAffinityAttributes {
20
+ id: string;
20
21
  jukeboxSessionId: string;
21
22
  canonGenreId: string;
22
23
  affinityTierId: number;
23
24
  rank: number;
24
- id: string;
25
25
  createdAt: Date;
26
26
  updatedAt: Date;
27
27
  affinityTier: AffinityTier;