@earbug/db-models 0.0.16 → 0.0.17

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.
@@ -0,0 +1,54 @@
1
+ name: Regenerate Models and Publish
2
+
3
+ on:
4
+ repository_dispatch:
5
+ types: [migration_completed]
6
+
7
+ jobs:
8
+ publish:
9
+ name: Regenerate, Build, and Publish
10
+ runs-on: ubuntu-latest
11
+ permissions:
12
+ contents: write
13
+ id-token: write
14
+ steps:
15
+ - uses: actions/checkout@v4
16
+
17
+ - uses: actions/setup-node@v4
18
+ with:
19
+ node-version: 24
20
+ registry-url: https://registry.npmjs.org
21
+
22
+ - run: npm ci
23
+
24
+ - name: Patch sequelize-auto to support citext
25
+ run: |
26
+ sed -i 's/\^(char/\^(citext|char/' \
27
+ node_modules/sequelize-auto/lib/auto-generator.js
28
+
29
+ - name: Generate models from dev database
30
+ run: |
31
+ npx sequelize-auto -l ts --cm=p --cf=p --cp=c -o "./models" -a ./model_options.json \
32
+ -d earbug_live -h "$DEV_EB_DB_HOST" -u postgres -x "$DEV_EB_DB_USER_PASSWORD" -p 5432 -e postgres \
33
+ -T harvested_article article_to_artist_relation
34
+ env:
35
+ DEV_EB_DB_HOST: ${{ secrets.DEV_EB_DB_HOST }}
36
+ DEV_EB_DB_USER_PASSWORD: ${{ secrets.DEV_EB_DB_USER_PASSWORD }}
37
+
38
+ - name: Build
39
+ run: npm run build
40
+
41
+ - name: Bump patch version
42
+ id: version
43
+ run: echo "version=$(npm version patch --no-git-tag-version)" >> $GITHUB_OUTPUT
44
+
45
+ - name: Publish to npm
46
+ run: npm publish --access public
47
+
48
+ - name: Commit and push changes
49
+ run: |
50
+ git config user.name "github-actions[bot]"
51
+ git config user.email "github-actions[bot]@users.noreply.github.com"
52
+ git add models/ dist/ package.json
53
+ git commit -m "${{ steps.version.outputs.version }} — regenerate models and publish"
54
+ git push
package/.nvmrc CHANGED
@@ -1 +1 @@
1
- 20
1
+ 24
package/dist/AppUser.d.ts CHANGED
@@ -11,7 +11,9 @@ import type { PlatformUserAlbum, PlatformUserAlbumId } from './PlatformUserAlbum
11
11
  import type { PlatformUserPlaylist, PlatformUserPlaylistId } from './PlatformUserPlaylist';
12
12
  import type { RadioShow, RadioShowId } from './RadioShow';
13
13
  import type { State, StateId } from './State';
14
+ import type { UserComments, UserCommentsId } from './UserComments';
14
15
  import type { UserContacts, UserContactsId } from './UserContacts';
16
+ import type { UserLikes, UserLikesId } from './UserLikes';
15
17
  export interface AppUserAttributes {
16
18
  email: string;
17
19
  firstName: string;
@@ -179,6 +181,17 @@ export declare class AppUser extends Model<AppUserAttributes, AppUserCreationAtt
179
181
  hasRadioShow: Sequelize.HasManyHasAssociationMixin<RadioShow, RadioShowId>;
180
182
  hasRadioShows: Sequelize.HasManyHasAssociationsMixin<RadioShow, RadioShowId>;
181
183
  countRadioShows: Sequelize.HasManyCountAssociationsMixin;
184
+ userComments: UserComments[];
185
+ getUserComments: Sequelize.HasManyGetAssociationsMixin<UserComments>;
186
+ setUserComments: Sequelize.HasManySetAssociationsMixin<UserComments, UserCommentsId>;
187
+ addUserComment: Sequelize.HasManyAddAssociationMixin<UserComments, UserCommentsId>;
188
+ addUserComments: Sequelize.HasManyAddAssociationsMixin<UserComments, UserCommentsId>;
189
+ createUserComment: Sequelize.HasManyCreateAssociationMixin<UserComments>;
190
+ removeUserComment: Sequelize.HasManyRemoveAssociationMixin<UserComments, UserCommentsId>;
191
+ removeUserComments: Sequelize.HasManyRemoveAssociationsMixin<UserComments, UserCommentsId>;
192
+ hasUserComment: Sequelize.HasManyHasAssociationMixin<UserComments, UserCommentsId>;
193
+ hasUserComments: Sequelize.HasManyHasAssociationsMixin<UserComments, UserCommentsId>;
194
+ countUserComments: Sequelize.HasManyCountAssociationsMixin;
182
195
  userContacts: UserContacts[];
183
196
  getUserContacts: Sequelize.HasManyGetAssociationsMixin<UserContacts>;
184
197
  setUserContacts: Sequelize.HasManySetAssociationsMixin<UserContacts, UserContactsId>;
@@ -190,6 +203,17 @@ export declare class AppUser extends Model<AppUserAttributes, AppUserCreationAtt
190
203
  hasUserContact: Sequelize.HasManyHasAssociationMixin<UserContacts, UserContactsId>;
191
204
  hasUserContacts: Sequelize.HasManyHasAssociationsMixin<UserContacts, UserContactsId>;
192
205
  countUserContacts: Sequelize.HasManyCountAssociationsMixin;
206
+ userLikes: UserLikes[];
207
+ getUserLikes: Sequelize.HasManyGetAssociationsMixin<UserLikes>;
208
+ setUserLikes: Sequelize.HasManySetAssociationsMixin<UserLikes, UserLikesId>;
209
+ addUserLike: Sequelize.HasManyAddAssociationMixin<UserLikes, UserLikesId>;
210
+ addUserLikes: Sequelize.HasManyAddAssociationsMixin<UserLikes, UserLikesId>;
211
+ createUserLike: Sequelize.HasManyCreateAssociationMixin<UserLikes>;
212
+ removeUserLike: Sequelize.HasManyRemoveAssociationMixin<UserLikes, UserLikesId>;
213
+ removeUserLikes: Sequelize.HasManyRemoveAssociationsMixin<UserLikes, UserLikesId>;
214
+ hasUserLike: Sequelize.HasManyHasAssociationMixin<UserLikes, UserLikesId>;
215
+ hasUserLikes: Sequelize.HasManyHasAssociationsMixin<UserLikes, UserLikesId>;
216
+ countUserLikes: Sequelize.HasManyCountAssociationsMixin;
193
217
  state: State;
194
218
  getState: Sequelize.BelongsToGetAssociationMixin<State>;
195
219
  setState: Sequelize.BelongsToSetAssociationMixin<State, StateId>;
@@ -1,52 +1,52 @@
1
- import * as Sequelize from "sequelize";
2
- import { Model, Optional } from "sequelize";
3
- import type { CanonArtistAlbumRelation, CanonArtistAlbumRelationId } from "./CanonArtistAlbumRelation";
4
- import type { CanonArtistImageHarvested, CanonArtistImageHarvestedId } from "./CanonArtistImageHarvested";
5
- import type { CanonArtistTrackRelation, CanonArtistTrackRelationId } from "./CanonArtistTrackRelation";
6
- import type { CanonToPlatformArtistRelation, CanonToPlatformArtistRelationId } from "./CanonToPlatformArtistRelation";
7
- import type { CanonTrack, CanonTrackId } from "./CanonTrack";
8
- import type { MerchItem, MerchItemId } from "./MerchItem";
9
- import type { MerchOrchestration, MerchOrchestrationId } from "./MerchOrchestration";
10
- import type { NewsArticle, NewsArticleId } from "./NewsArticle";
11
- import type { PlatformAlbum, PlatformAlbumId } from "./PlatformAlbum";
12
- import type { PlatformArtist, PlatformArtistId } from "./PlatformArtist";
1
+ import * as Sequelize from 'sequelize';
2
+ import { Model, Optional } from 'sequelize';
3
+ import type { CanonArtistAlbumRelation, CanonArtistAlbumRelationId } from './CanonArtistAlbumRelation';
4
+ import type { CanonArtistImageHarvested, CanonArtistImageHarvestedId } from './CanonArtistImageHarvested';
5
+ import type { CanonArtistTrackRelation, CanonArtistTrackRelationId } from './CanonArtistTrackRelation';
6
+ import type { CanonToPlatformArtistRelation, CanonToPlatformArtistRelationId } from './CanonToPlatformArtistRelation';
7
+ import type { CanonTrack, CanonTrackId } from './CanonTrack';
8
+ import type { MerchItem, MerchItemId } from './MerchItem';
9
+ import type { MerchOrchestration, MerchOrchestrationId } from './MerchOrchestration';
10
+ import type { NewsArticle, NewsArticleId } from './NewsArticle';
11
+ import type { PlatformAlbum, PlatformAlbumId } from './PlatformAlbum';
12
+ import type { PlatformArtist, PlatformArtistId } from './PlatformArtist';
13
13
  export interface CanonArtistAttributes {
14
- id: string;
15
14
  name: string;
16
15
  asciiName: string;
17
16
  description?: string;
17
+ id: string;
18
18
  hasPhoto: boolean;
19
19
  createDate: Date;
20
20
  updateDate: Date;
21
21
  hasThumbnailPhoto?: boolean;
22
22
  images?: object;
23
23
  lastImageHarvestAttempt?: Date;
24
- lastGenreHarvestAttempt?: Date;
25
- genreHarvestCount: number;
26
24
  merchHarvestDay?: number;
27
25
  newsHarvestDay?: number;
28
26
  harvestPopularity?: number;
27
+ lastGenreHarvestAttempt?: Date;
28
+ genreHarvestCount: number;
29
29
  }
30
30
  export type CanonArtistPk = "id";
31
31
  export type CanonArtistId = CanonArtist[CanonArtistPk];
32
- export type CanonArtistOptionalAttributes = "id" | "description" | "createDate" | "updateDate" | "hasThumbnailPhoto" | "images" | "lastImageHarvestAttempt" | "lastGenreHarvestAttempt" | "genreHarvestCount" | "merchHarvestDay" | "newsHarvestDay" | "harvestPopularity";
32
+ export type CanonArtistOptionalAttributes = "description" | "id" | "createDate" | "updateDate" | "hasThumbnailPhoto" | "images" | "lastImageHarvestAttempt" | "merchHarvestDay" | "newsHarvestDay" | "harvestPopularity" | "lastGenreHarvestAttempt" | "genreHarvestCount";
33
33
  export type CanonArtistCreationAttributes = Optional<CanonArtistAttributes, CanonArtistOptionalAttributes>;
34
34
  export declare class CanonArtist extends Model<CanonArtistAttributes, CanonArtistCreationAttributes> implements CanonArtistAttributes {
35
+ name: string;
36
+ asciiName: string;
37
+ description?: string;
35
38
  id: string;
36
- name: any;
37
- asciiName: any;
38
- description?: any;
39
39
  hasPhoto: boolean;
40
40
  createDate: Date;
41
41
  updateDate: Date;
42
42
  hasThumbnailPhoto?: boolean;
43
43
  images?: object;
44
44
  lastImageHarvestAttempt?: Date;
45
- lastGenreHarvestAttempt?: Date;
46
- genreHarvestCount: number;
47
45
  merchHarvestDay?: number;
48
46
  newsHarvestDay?: number;
49
47
  harvestPopularity?: number;
48
+ lastGenreHarvestAttempt?: Date;
49
+ genreHarvestCount: number;
50
50
  canonArtistAlbumRelations: CanonArtistAlbumRelation[];
51
51
  getCanonArtistAlbumRelations: Sequelize.HasManyGetAssociationsMixin<CanonArtistAlbumRelation>;
52
52
  setCanonArtistAlbumRelations: Sequelize.HasManySetAssociationsMixin<CanonArtistAlbumRelation, CanonArtistAlbumRelationId>;
@@ -31,98 +31,109 @@ class CanonArtist extends sequelize_1.Model {
31
31
  return CanonArtist.init({
32
32
  name: {
33
33
  type: sequelize_1.DataTypes.TEXT,
34
- allowNull: false,
34
+ allowNull: false
35
35
  },
36
36
  asciiName: {
37
37
  type: sequelize_1.DataTypes.TEXT,
38
38
  allowNull: false,
39
- field: "ascii_name",
39
+ field: 'ascii_name'
40
40
  },
41
41
  description: {
42
42
  type: sequelize_1.DataTypes.TEXT,
43
- allowNull: true,
43
+ allowNull: true
44
44
  },
45
45
  id: {
46
46
  type: sequelize_1.DataTypes.UUID,
47
47
  allowNull: false,
48
- defaultValue: Sequelize.Sequelize.fn("uuid_generate_v1"),
49
- primaryKey: true,
48
+ defaultValue: Sequelize.Sequelize.fn('uuid_generate_v1'),
49
+ primaryKey: true
50
50
  },
51
51
  hasPhoto: {
52
52
  type: sequelize_1.DataTypes.BOOLEAN,
53
53
  allowNull: false,
54
54
  defaultValue: false,
55
- field: "has_photo",
55
+ field: 'has_photo'
56
56
  },
57
57
  createDate: {
58
58
  type: sequelize_1.DataTypes.DATE,
59
59
  allowNull: false,
60
- defaultValue: Sequelize.Sequelize.literal("CURRENT_TIMESTAMP"),
61
- field: "create_date",
60
+ defaultValue: Sequelize.Sequelize.literal('CURRENT_TIMESTAMP'),
61
+ field: 'create_date'
62
62
  },
63
63
  updateDate: {
64
64
  type: sequelize_1.DataTypes.DATE,
65
65
  allowNull: false,
66
- defaultValue: Sequelize.Sequelize.literal("CURRENT_TIMESTAMP"),
67
- field: "update_date",
66
+ defaultValue: Sequelize.Sequelize.literal('CURRENT_TIMESTAMP'),
67
+ field: 'update_date'
68
68
  },
69
69
  hasThumbnailPhoto: {
70
70
  type: sequelize_1.DataTypes.BOOLEAN,
71
71
  allowNull: true,
72
72
  defaultValue: false,
73
- field: "has_thumbnail_photo",
73
+ field: 'has_thumbnail_photo'
74
74
  },
75
75
  images: {
76
76
  type: sequelize_1.DataTypes.JSONB,
77
- allowNull: true,
77
+ allowNull: true
78
78
  },
79
79
  lastImageHarvestAttempt: {
80
80
  type: sequelize_1.DataTypes.DATE,
81
81
  allowNull: true,
82
- field: "last_image_harvest_attempt",
83
- },
84
- lastGenreHarvestAttempt: {
85
- type: sequelize_1.DataTypes.DATE,
86
- allowNull: true,
87
- field: "last_genre_harvest_attempt",
88
- },
89
- genreHarvestCount: {
90
- type: sequelize_1.DataTypes.INTEGER,
91
- allowNull: false,
92
- defaultValue: 0,
93
- field: "genre_harvest_count",
82
+ field: 'last_image_harvest_attempt'
94
83
  },
95
84
  merchHarvestDay: {
96
85
  type: sequelize_1.DataTypes.SMALLINT,
97
86
  allowNull: true,
98
- field: "merch_harvest_day",
87
+ field: 'merch_harvest_day'
99
88
  },
100
89
  newsHarvestDay: {
101
90
  type: sequelize_1.DataTypes.SMALLINT,
102
91
  allowNull: true,
103
- field: "news_harvest_day",
92
+ field: 'news_harvest_day'
104
93
  },
94
+ harvestPopularity: {
95
+ type: sequelize_1.DataTypes.INTEGER,
96
+ allowNull: true,
97
+ field: 'harvest_popularity'
98
+ },
99
+ lastGenreHarvestAttempt: {
100
+ type: sequelize_1.DataTypes.DATE,
101
+ allowNull: true,
102
+ field: 'last_genre_harvest_attempt'
103
+ },
104
+ genreHarvestCount: {
105
+ type: sequelize_1.DataTypes.INTEGER,
106
+ allowNull: false,
107
+ defaultValue: 0,
108
+ field: 'genre_harvest_count'
109
+ }
105
110
  }, {
106
111
  sequelize,
107
- tableName: "canon_artist",
108
- schema: "eb",
112
+ tableName: 'canon_artist',
113
+ schema: 'eb',
109
114
  timestamps: false,
110
115
  indexes: [
111
116
  {
112
117
  name: "artist_name_idx",
113
118
  unique: true,
114
- fields: [{ name: "name" }],
119
+ fields: [
120
+ { name: "name" },
121
+ ]
115
122
  },
116
123
  {
117
124
  name: "artist_pkey",
118
125
  unique: true,
119
- fields: [{ name: "id" }],
126
+ fields: [
127
+ { name: "id" },
128
+ ]
120
129
  },
121
130
  {
122
131
  name: "eb_canon_artist_last_image_harvest_attempt",
123
- fields: [{ name: "last_image_harvest_attempt" }],
132
+ fields: [
133
+ { name: "last_image_harvest_attempt" },
134
+ ]
124
135
  },
125
- ],
136
+ ]
126
137
  });
127
138
  }
128
139
  }
@@ -11,6 +11,8 @@ import type { JukeboxTerminationCondition, JukeboxTerminationConditionId } from
11
11
  import type { JukeboxType, JukeboxTypeId } from './JukeboxType';
12
12
  import type { JukeboxUser, JukeboxUserId } from './JukeboxUser';
13
13
  import type { Notification, NotificationId } from './Notification';
14
+ import type { UserComments, UserCommentsId } from './UserComments';
15
+ import type { UserLikes, UserLikesId } from './UserLikes';
14
16
  export interface JukeboxSessionAttributes {
15
17
  typeId: number;
16
18
  accessTypeId: number;
@@ -116,6 +118,28 @@ export declare class JukeboxSession extends Model<JukeboxSessionAttributes, Juke
116
118
  hasNotification: Sequelize.HasManyHasAssociationMixin<Notification, NotificationId>;
117
119
  hasNotifications: Sequelize.HasManyHasAssociationsMixin<Notification, NotificationId>;
118
120
  countNotifications: Sequelize.HasManyCountAssociationsMixin;
121
+ userComments: UserComments[];
122
+ getUserComments: Sequelize.HasManyGetAssociationsMixin<UserComments>;
123
+ setUserComments: Sequelize.HasManySetAssociationsMixin<UserComments, UserCommentsId>;
124
+ addUserComment: Sequelize.HasManyAddAssociationMixin<UserComments, UserCommentsId>;
125
+ addUserComments: Sequelize.HasManyAddAssociationsMixin<UserComments, UserCommentsId>;
126
+ createUserComment: Sequelize.HasManyCreateAssociationMixin<UserComments>;
127
+ removeUserComment: Sequelize.HasManyRemoveAssociationMixin<UserComments, UserCommentsId>;
128
+ removeUserComments: Sequelize.HasManyRemoveAssociationsMixin<UserComments, UserCommentsId>;
129
+ hasUserComment: Sequelize.HasManyHasAssociationMixin<UserComments, UserCommentsId>;
130
+ hasUserComments: Sequelize.HasManyHasAssociationsMixin<UserComments, UserCommentsId>;
131
+ countUserComments: Sequelize.HasManyCountAssociationsMixin;
132
+ userLikes: UserLikes[];
133
+ getUserLikes: Sequelize.HasManyGetAssociationsMixin<UserLikes>;
134
+ setUserLikes: Sequelize.HasManySetAssociationsMixin<UserLikes, UserLikesId>;
135
+ addUserLike: Sequelize.HasManyAddAssociationMixin<UserLikes, UserLikesId>;
136
+ addUserLikes: Sequelize.HasManyAddAssociationsMixin<UserLikes, UserLikesId>;
137
+ createUserLike: Sequelize.HasManyCreateAssociationMixin<UserLikes>;
138
+ removeUserLike: Sequelize.HasManyRemoveAssociationMixin<UserLikes, UserLikesId>;
139
+ removeUserLikes: Sequelize.HasManyRemoveAssociationsMixin<UserLikes, UserLikesId>;
140
+ hasUserLike: Sequelize.HasManyHasAssociationMixin<UserLikes, UserLikesId>;
141
+ hasUserLikes: Sequelize.HasManyHasAssociationsMixin<UserLikes, UserLikesId>;
142
+ countUserLikes: Sequelize.HasManyCountAssociationsMixin;
119
143
  jukeboxStatus: JukeboxStatus;
120
144
  getJukeboxStatus: Sequelize.BelongsToGetAssociationMixin<JukeboxStatus>;
121
145
  setJukeboxStatus: Sequelize.BelongsToSetAssociationMixin<JukeboxStatus, JukeboxStatusId>;
@@ -4,7 +4,6 @@ import type { CanonArtist, CanonArtistId } from './CanonArtist';
4
4
  import type { MerchPlatform, MerchPlatformId } from './MerchPlatform';
5
5
  import type { MerchType, MerchTypeId } from './MerchType';
6
6
  export interface MerchItemAttributes {
7
- id: string;
8
7
  canonArtistId: string;
9
8
  merchTypeId: string;
10
9
  merchPlatformId: string;
@@ -13,16 +12,16 @@ export interface MerchItemAttributes {
13
12
  description: string;
14
13
  photo?: string;
15
14
  popularity?: number;
15
+ id: string;
16
16
  inactive?: boolean;
17
17
  createDate: Date;
18
18
  updateDate: Date;
19
19
  }
20
20
  export type MerchItemPk = "id";
21
21
  export type MerchItemId = MerchItem[MerchItemPk];
22
- export type MerchItemOptionalAttributes = "id" | "photo" | "popularity" | "inactive" | "createDate" | "updateDate";
22
+ export type MerchItemOptionalAttributes = "photo" | "popularity" | "id" | "inactive" | "createDate" | "updateDate";
23
23
  export type MerchItemCreationAttributes = Optional<MerchItemAttributes, MerchItemOptionalAttributes>;
24
24
  export declare class MerchItem extends Model<MerchItemAttributes, MerchItemCreationAttributes> implements MerchItemAttributes {
25
- id: string;
26
25
  canonArtistId: string;
27
26
  merchTypeId: string;
28
27
  merchPlatformId: string;
@@ -31,6 +30,7 @@ export declare class MerchItem extends Model<MerchItemAttributes, MerchItemCreat
31
30
  description: string;
32
31
  photo?: string;
33
32
  popularity?: number;
33
+ id: string;
34
34
  inactive?: boolean;
35
35
  createDate: Date;
36
36
  updateDate: Date;
package/dist/MerchItem.js CHANGED
@@ -29,12 +29,6 @@ const sequelize_1 = require("sequelize");
29
29
  class MerchItem extends sequelize_1.Model {
30
30
  static initModel(sequelize) {
31
31
  return MerchItem.init({
32
- id: {
33
- type: sequelize_1.DataTypes.UUID,
34
- allowNull: false,
35
- defaultValue: sequelize_1.DataTypes.UUIDV4,
36
- primaryKey: true
37
- },
38
32
  canonArtistId: {
39
33
  type: sequelize_1.DataTypes.UUID,
40
34
  allowNull: false,
@@ -83,6 +77,12 @@ class MerchItem extends sequelize_1.Model {
83
77
  type: sequelize_1.DataTypes.SMALLINT,
84
78
  allowNull: true
85
79
  },
80
+ id: {
81
+ type: sequelize_1.DataTypes.UUID,
82
+ allowNull: false,
83
+ defaultValue: sequelize_1.DataTypes.UUIDV4,
84
+ primaryKey: true
85
+ },
86
86
  inactive: {
87
87
  type: sequelize_1.DataTypes.BOOLEAN,
88
88
  allowNull: true,
@@ -4,26 +4,26 @@ import type { CanonArtist, CanonArtistId } from './CanonArtist';
4
4
  import type { MerchPlatform, MerchPlatformId } from './MerchPlatform';
5
5
  import type { MerchType, MerchTypeId } from './MerchType';
6
6
  export interface MerchOrchestrationAttributes {
7
- id: string;
8
7
  canonArtistId: string;
9
8
  merchTypeId: string;
10
9
  merchPlatformId: string;
11
10
  errorMessage?: string;
12
11
  lastHarvestDate?: Date;
12
+ id: string;
13
13
  createDate: Date;
14
14
  updateDate: Date;
15
15
  }
16
16
  export type MerchOrchestrationPk = "id";
17
17
  export type MerchOrchestrationId = MerchOrchestration[MerchOrchestrationPk];
18
- export type MerchOrchestrationOptionalAttributes = "id" | "errorMessage" | "lastHarvestDate" | "createDate" | "updateDate";
18
+ export type MerchOrchestrationOptionalAttributes = "errorMessage" | "lastHarvestDate" | "id" | "createDate" | "updateDate";
19
19
  export type MerchOrchestrationCreationAttributes = Optional<MerchOrchestrationAttributes, MerchOrchestrationOptionalAttributes>;
20
20
  export declare class MerchOrchestration extends Model<MerchOrchestrationAttributes, MerchOrchestrationCreationAttributes> implements MerchOrchestrationAttributes {
21
- id: string;
22
21
  canonArtistId: string;
23
22
  merchTypeId: string;
24
23
  merchPlatformId: string;
25
24
  errorMessage?: string;
26
25
  lastHarvestDate?: Date;
26
+ id: string;
27
27
  createDate: Date;
28
28
  updateDate: Date;
29
29
  canonArtist: CanonArtist;
@@ -29,12 +29,6 @@ const sequelize_1 = require("sequelize");
29
29
  class MerchOrchestration extends sequelize_1.Model {
30
30
  static initModel(sequelize) {
31
31
  return MerchOrchestration.init({
32
- id: {
33
- type: sequelize_1.DataTypes.UUID,
34
- allowNull: false,
35
- defaultValue: sequelize_1.DataTypes.UUIDV4,
36
- primaryKey: true
37
- },
38
32
  canonArtistId: {
39
33
  type: sequelize_1.DataTypes.UUID,
40
34
  allowNull: false,
@@ -72,6 +66,12 @@ class MerchOrchestration extends sequelize_1.Model {
72
66
  allowNull: true,
73
67
  field: 'last_harvest_date'
74
68
  },
69
+ id: {
70
+ type: sequelize_1.DataTypes.UUID,
71
+ allowNull: false,
72
+ defaultValue: sequelize_1.DataTypes.UUIDV4,
73
+ primaryKey: true
74
+ },
75
75
  createDate: {
76
76
  type: sequelize_1.DataTypes.DATE,
77
77
  allowNull: false,
@@ -3,9 +3,9 @@ import { Model, Optional } from 'sequelize';
3
3
  import type { MerchItem, MerchItemId } from './MerchItem';
4
4
  import type { MerchOrchestration, MerchOrchestrationId } from './MerchOrchestration';
5
5
  export interface MerchPlatformAttributes {
6
- id: string;
7
6
  name: string;
8
7
  host: string;
8
+ id: string;
9
9
  createDate: Date;
10
10
  updateDate: Date;
11
11
  }
@@ -14,9 +14,9 @@ export type MerchPlatformId = MerchPlatform[MerchPlatformPk];
14
14
  export type MerchPlatformOptionalAttributes = "id" | "createDate" | "updateDate";
15
15
  export type MerchPlatformCreationAttributes = Optional<MerchPlatformAttributes, MerchPlatformOptionalAttributes>;
16
16
  export declare class MerchPlatform extends Model<MerchPlatformAttributes, MerchPlatformCreationAttributes> implements MerchPlatformAttributes {
17
- id: string;
18
17
  name: string;
19
18
  host: string;
19
+ id: string;
20
20
  createDate: Date;
21
21
  updateDate: Date;
22
22
  merchItems: MerchItem[];
@@ -29,12 +29,6 @@ const sequelize_1 = require("sequelize");
29
29
  class MerchPlatform extends sequelize_1.Model {
30
30
  static initModel(sequelize) {
31
31
  return MerchPlatform.init({
32
- id: {
33
- type: sequelize_1.DataTypes.UUID,
34
- allowNull: false,
35
- defaultValue: sequelize_1.DataTypes.UUIDV4,
36
- primaryKey: true
37
- },
38
32
  name: {
39
33
  type: sequelize_1.DataTypes.TEXT,
40
34
  allowNull: false
@@ -43,6 +37,12 @@ class MerchPlatform extends sequelize_1.Model {
43
37
  type: sequelize_1.DataTypes.TEXT,
44
38
  allowNull: false
45
39
  },
40
+ id: {
41
+ type: sequelize_1.DataTypes.UUID,
42
+ allowNull: false,
43
+ defaultValue: sequelize_1.DataTypes.UUIDV4,
44
+ primaryKey: true
45
+ },
46
46
  createDate: {
47
47
  type: sequelize_1.DataTypes.DATE,
48
48
  allowNull: false,
@@ -3,8 +3,8 @@ import { Model, Optional } from 'sequelize';
3
3
  import type { MerchItem, MerchItemId } from './MerchItem';
4
4
  import type { MerchOrchestration, MerchOrchestrationId } from './MerchOrchestration';
5
5
  export interface MerchTypeAttributes {
6
- id: string;
7
6
  description: string;
7
+ id: string;
8
8
  createDate: Date;
9
9
  updateDate: Date;
10
10
  }
@@ -13,8 +13,8 @@ export type MerchTypeId = MerchType[MerchTypePk];
13
13
  export type MerchTypeOptionalAttributes = "id" | "createDate" | "updateDate";
14
14
  export type MerchTypeCreationAttributes = Optional<MerchTypeAttributes, MerchTypeOptionalAttributes>;
15
15
  export declare class MerchType extends Model<MerchTypeAttributes, MerchTypeCreationAttributes> implements MerchTypeAttributes {
16
- id: string;
17
16
  description: string;
17
+ id: string;
18
18
  createDate: Date;
19
19
  updateDate: Date;
20
20
  merchItems: MerchItem[];
package/dist/MerchType.js CHANGED
@@ -29,16 +29,16 @@ const sequelize_1 = require("sequelize");
29
29
  class MerchType extends sequelize_1.Model {
30
30
  static initModel(sequelize) {
31
31
  return MerchType.init({
32
+ description: {
33
+ type: sequelize_1.DataTypes.TEXT,
34
+ allowNull: false
35
+ },
32
36
  id: {
33
37
  type: sequelize_1.DataTypes.UUID,
34
38
  allowNull: false,
35
39
  defaultValue: sequelize_1.DataTypes.UUIDV4,
36
40
  primaryKey: true
37
41
  },
38
- description: {
39
- type: sequelize_1.DataTypes.TEXT,
40
- allowNull: false
41
- },
42
42
  createDate: {
43
43
  type: sequelize_1.DataTypes.DATE,
44
44
  allowNull: false,
@@ -4,6 +4,8 @@ import type { AppUser, AppUserId } from './AppUser';
4
4
  import type { Platform, PlatformId } from './Platform';
5
5
  import type { PlatformUserPlaylistTrack, PlatformUserPlaylistTrackId } from './PlatformUserPlaylistTrack';
6
6
  import type { State, StateId } from './State';
7
+ import type { UserComments, UserCommentsId } from './UserComments';
8
+ import type { UserLikes, UserLikesId } from './UserLikes';
7
9
  export interface PlatformUserPlaylistAttributes {
8
10
  appUserId: string;
9
11
  platformId: number;
@@ -56,6 +58,28 @@ export declare class PlatformUserPlaylist extends Model<PlatformUserPlaylistAttr
56
58
  hasPlatformUserPlaylistTrack: Sequelize.HasManyHasAssociationMixin<PlatformUserPlaylistTrack, PlatformUserPlaylistTrackId>;
57
59
  hasPlatformUserPlaylistTracks: Sequelize.HasManyHasAssociationsMixin<PlatformUserPlaylistTrack, PlatformUserPlaylistTrackId>;
58
60
  countPlatformUserPlaylistTracks: Sequelize.HasManyCountAssociationsMixin;
61
+ userComments: UserComments[];
62
+ getUserComments: Sequelize.HasManyGetAssociationsMixin<UserComments>;
63
+ setUserComments: Sequelize.HasManySetAssociationsMixin<UserComments, UserCommentsId>;
64
+ addUserComment: Sequelize.HasManyAddAssociationMixin<UserComments, UserCommentsId>;
65
+ addUserComments: Sequelize.HasManyAddAssociationsMixin<UserComments, UserCommentsId>;
66
+ createUserComment: Sequelize.HasManyCreateAssociationMixin<UserComments>;
67
+ removeUserComment: Sequelize.HasManyRemoveAssociationMixin<UserComments, UserCommentsId>;
68
+ removeUserComments: Sequelize.HasManyRemoveAssociationsMixin<UserComments, UserCommentsId>;
69
+ hasUserComment: Sequelize.HasManyHasAssociationMixin<UserComments, UserCommentsId>;
70
+ hasUserComments: Sequelize.HasManyHasAssociationsMixin<UserComments, UserCommentsId>;
71
+ countUserComments: Sequelize.HasManyCountAssociationsMixin;
72
+ userLikes: UserLikes[];
73
+ getUserLikes: Sequelize.HasManyGetAssociationsMixin<UserLikes>;
74
+ setUserLikes: Sequelize.HasManySetAssociationsMixin<UserLikes, UserLikesId>;
75
+ addUserLike: Sequelize.HasManyAddAssociationMixin<UserLikes, UserLikesId>;
76
+ addUserLikes: Sequelize.HasManyAddAssociationsMixin<UserLikes, UserLikesId>;
77
+ createUserLike: Sequelize.HasManyCreateAssociationMixin<UserLikes>;
78
+ removeUserLike: Sequelize.HasManyRemoveAssociationMixin<UserLikes, UserLikesId>;
79
+ removeUserLikes: Sequelize.HasManyRemoveAssociationsMixin<UserLikes, UserLikesId>;
80
+ hasUserLike: Sequelize.HasManyHasAssociationMixin<UserLikes, UserLikesId>;
81
+ hasUserLikes: Sequelize.HasManyHasAssociationsMixin<UserLikes, UserLikesId>;
82
+ countUserLikes: Sequelize.HasManyCountAssociationsMixin;
59
83
  state: State;
60
84
  getState: Sequelize.BelongsToGetAssociationMixin<State>;
61
85
  setState: Sequelize.BelongsToSetAssociationMixin<State, StateId>;
@@ -5,6 +5,8 @@ import type { RadioShowGenres, RadioShowGenresId } from './RadioShowGenres';
5
5
  import type { RadioShowMedia, RadioShowMediaId } from './RadioShowMedia';
6
6
  import type { RadioShowPlacement, RadioShowPlacementId } from './RadioShowPlacement';
7
7
  import type { RadioShowPublishRequests, RadioShowPublishRequestsId } from './RadioShowPublishRequests';
8
+ import type { UserComments, UserCommentsId } from './UserComments';
9
+ import type { UserLikes, UserLikesId } from './UserLikes';
8
10
  export interface RadioShowAttributes {
9
11
  creatorUserId: string;
10
12
  scheduledRelease?: Date;
@@ -76,5 +78,27 @@ export declare class RadioShow extends Model<RadioShowAttributes, RadioShowCreat
76
78
  hasRadioShowPublishRequest: Sequelize.HasManyHasAssociationMixin<RadioShowPublishRequests, RadioShowPublishRequestsId>;
77
79
  hasRadioShowPublishRequests: Sequelize.HasManyHasAssociationsMixin<RadioShowPublishRequests, RadioShowPublishRequestsId>;
78
80
  countRadioShowPublishRequests: Sequelize.HasManyCountAssociationsMixin;
81
+ userComments: UserComments[];
82
+ getUserComments: Sequelize.HasManyGetAssociationsMixin<UserComments>;
83
+ setUserComments: Sequelize.HasManySetAssociationsMixin<UserComments, UserCommentsId>;
84
+ addUserComment: Sequelize.HasManyAddAssociationMixin<UserComments, UserCommentsId>;
85
+ addUserComments: Sequelize.HasManyAddAssociationsMixin<UserComments, UserCommentsId>;
86
+ createUserComment: Sequelize.HasManyCreateAssociationMixin<UserComments>;
87
+ removeUserComment: Sequelize.HasManyRemoveAssociationMixin<UserComments, UserCommentsId>;
88
+ removeUserComments: Sequelize.HasManyRemoveAssociationsMixin<UserComments, UserCommentsId>;
89
+ hasUserComment: Sequelize.HasManyHasAssociationMixin<UserComments, UserCommentsId>;
90
+ hasUserComments: Sequelize.HasManyHasAssociationsMixin<UserComments, UserCommentsId>;
91
+ countUserComments: Sequelize.HasManyCountAssociationsMixin;
92
+ userLikes: UserLikes[];
93
+ getUserLikes: Sequelize.HasManyGetAssociationsMixin<UserLikes>;
94
+ setUserLikes: Sequelize.HasManySetAssociationsMixin<UserLikes, UserLikesId>;
95
+ addUserLike: Sequelize.HasManyAddAssociationMixin<UserLikes, UserLikesId>;
96
+ addUserLikes: Sequelize.HasManyAddAssociationsMixin<UserLikes, UserLikesId>;
97
+ createUserLike: Sequelize.HasManyCreateAssociationMixin<UserLikes>;
98
+ removeUserLike: Sequelize.HasManyRemoveAssociationMixin<UserLikes, UserLikesId>;
99
+ removeUserLikes: Sequelize.HasManyRemoveAssociationsMixin<UserLikes, UserLikesId>;
100
+ hasUserLike: Sequelize.HasManyHasAssociationMixin<UserLikes, UserLikesId>;
101
+ hasUserLikes: Sequelize.HasManyHasAssociationsMixin<UserLikes, UserLikesId>;
102
+ countUserLikes: Sequelize.HasManyCountAssociationsMixin;
79
103
  static initModel(sequelize: Sequelize.Sequelize): typeof RadioShow;
80
104
  }