volleyballsimtypes 0.0.83 → 0.0.84

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 (65) hide show
  1. package/dist/cjs/src/api/player.d.ts +2 -7
  2. package/dist/cjs/src/api/player.js +0 -10
  3. package/dist/cjs/src/data/init-models.js +61 -0
  4. package/dist/cjs/src/data/models/block.d.ts +12 -2
  5. package/dist/cjs/src/data/models/event-trait.d.ts +23 -0
  6. package/dist/cjs/src/data/models/event-trait.js +42 -0
  7. package/dist/cjs/src/data/models/event.d.ts +12 -1
  8. package/dist/cjs/src/data/models/index.d.ts +3 -0
  9. package/dist/cjs/src/data/models/index.js +3 -0
  10. package/dist/cjs/src/data/models/match.d.ts +1 -1
  11. package/dist/cjs/src/data/models/player-trait.d.ts +23 -0
  12. package/dist/cjs/src/data/models/player-trait.js +42 -0
  13. package/dist/cjs/src/data/models/player.d.ts +14 -7
  14. package/dist/cjs/src/data/models/player.js +0 -4
  15. package/dist/cjs/src/data/models/reception.d.ts +12 -2
  16. package/dist/cjs/src/data/models/season-match.d.ts +1 -1
  17. package/dist/cjs/src/data/models/season.d.ts +3 -3
  18. package/dist/cjs/src/data/models/serve.d.ts +12 -2
  19. package/dist/cjs/src/data/models/set.d.ts +12 -2
  20. package/dist/cjs/src/data/models/spike.d.ts +12 -2
  21. package/dist/cjs/src/data/models/team.d.ts +1 -1
  22. package/dist/cjs/src/data/models/tournament.d.ts +1 -1
  23. package/dist/cjs/src/data/models/trait.d.ts +70 -0
  24. package/dist/cjs/src/data/models/trait.js +50 -0
  25. package/dist/cjs/src/data/transformers/player.js +2 -3
  26. package/dist/cjs/src/data/transformers/trait.d.ts +5 -5
  27. package/dist/cjs/src/data/transformers/trait.js +18 -26
  28. package/dist/cjs/src/service/match/match-set.d.ts +1 -1
  29. package/dist/cjs/src/service/match/rally.d.ts +1 -1
  30. package/dist/cjs/src/service/player/trait.d.ts +2 -3
  31. package/dist/cjs/src/service/player/trait.js +10 -12
  32. package/dist/cjs/src/service/team/team.d.ts +1 -1
  33. package/dist/esm/src/api/player.d.ts +2 -7
  34. package/dist/esm/src/api/player.js +1 -9
  35. package/dist/esm/src/data/init-models.js +62 -1
  36. package/dist/esm/src/data/models/block.d.ts +12 -2
  37. package/dist/esm/src/data/models/event-trait.d.ts +23 -0
  38. package/dist/esm/src/data/models/event-trait.js +38 -0
  39. package/dist/esm/src/data/models/event.d.ts +12 -1
  40. package/dist/esm/src/data/models/index.d.ts +3 -0
  41. package/dist/esm/src/data/models/index.js +3 -0
  42. package/dist/esm/src/data/models/match.d.ts +1 -1
  43. package/dist/esm/src/data/models/player-trait.d.ts +23 -0
  44. package/dist/esm/src/data/models/player-trait.js +38 -0
  45. package/dist/esm/src/data/models/player.d.ts +14 -7
  46. package/dist/esm/src/data/models/player.js +0 -4
  47. package/dist/esm/src/data/models/reception.d.ts +12 -2
  48. package/dist/esm/src/data/models/season-match.d.ts +1 -1
  49. package/dist/esm/src/data/models/season.d.ts +3 -3
  50. package/dist/esm/src/data/models/serve.d.ts +12 -2
  51. package/dist/esm/src/data/models/set.d.ts +12 -2
  52. package/dist/esm/src/data/models/spike.d.ts +12 -2
  53. package/dist/esm/src/data/models/team.d.ts +1 -1
  54. package/dist/esm/src/data/models/tournament.d.ts +1 -1
  55. package/dist/esm/src/data/models/trait.d.ts +70 -0
  56. package/dist/esm/src/data/models/trait.js +46 -0
  57. package/dist/esm/src/data/transformers/player.js +3 -4
  58. package/dist/esm/src/data/transformers/trait.d.ts +5 -5
  59. package/dist/esm/src/data/transformers/trait.js +15 -23
  60. package/dist/esm/src/service/match/match-set.d.ts +1 -1
  61. package/dist/esm/src/service/match/rally.d.ts +1 -1
  62. package/dist/esm/src/service/player/trait.d.ts +2 -3
  63. package/dist/esm/src/service/player/trait.js +10 -12
  64. package/dist/esm/src/service/team/team.d.ts +1 -1
  65. package/package.json +1 -1
@@ -1,12 +1,7 @@
1
1
  import { Country, Name, Role, Stat } from '../service';
2
2
  import { APISetStatistics } from './';
3
- export declare enum APITrait {
4
- MASTER_MIND = "Master Mind",
5
- MOVING_WALL = "Moving Wall",
6
- MARKSMAN = "Marksman",
7
- METEOR_SERVE = "Meteor Serve",
8
- VIGOROUS = "Vigorous",
9
- GUARDIAN = "Guardian"
3
+ export interface APITrait {
4
+ readonly name: string;
10
5
  }
11
6
  export interface APIPlayer {
12
7
  readonly id: string;
@@ -1,12 +1,2 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.APITrait = void 0;
4
- var APITrait;
5
- (function (APITrait) {
6
- APITrait["MASTER_MIND"] = "Master Mind";
7
- APITrait["MOVING_WALL"] = "Moving Wall";
8
- APITrait["MARKSMAN"] = "Marksman";
9
- APITrait["METEOR_SERVE"] = "Meteor Serve";
10
- APITrait["VIGOROUS"] = "Vigorous";
11
- APITrait["GUARDIAN"] = "Guardian";
12
- })(APITrait = exports.APITrait || (exports.APITrait = {}));
@@ -9,6 +9,7 @@ function initModels(sequelize) {
9
9
  const Draft = models_1.DraftModel.initModel(sequelize);
10
10
  const DraftPick = models_1.DraftPickModel.initModel(sequelize);
11
11
  const Event = models_1.EventModel.initModel(sequelize);
12
+ const EventTrait = models_1.EventTraitModel.initModel(sequelize);
12
13
  const Iteration = models_1.IterationModel.initModel(sequelize);
13
14
  const League = models_1.LeagueModel.initModel(sequelize);
14
15
  const LiberoReplacement = models_1.LiberoReplacementModel.initModel(sequelize);
@@ -19,6 +20,7 @@ function initModels(sequelize) {
19
20
  const PerformanceStats = models_1.PerformanceStatsModel.initModel(sequelize);
20
21
  const Player = models_1.PlayerModel.initModel(sequelize);
21
22
  const PlayerTeam = models_1.PlayerTeamModel.initModel(sequelize);
23
+ const PlayerTrait = models_1.PlayerTraitModel.initModel(sequelize);
22
24
  const Rally = models_1.RallyModel.initModel(sequelize);
23
25
  const RallyPosition = models_1.RallyPositionModel.initModel(sequelize);
24
26
  const Reception = models_1.ReceptionModel.initModel(sequelize);
@@ -34,6 +36,7 @@ function initModels(sequelize) {
34
36
  const Tournament = models_1.TournamentModel.initModel(sequelize);
35
37
  const TournamentMatch = models_1.TournamentMatchModel.initModel(sequelize);
36
38
  const TournamentTeams = models_1.TournamentTeamsModel.initModel(sequelize);
39
+ const Trait = models_1.TraitModel.initModel(sequelize);
37
40
  const User = models_1.UserModel.initModel(sequelize);
38
41
  Draft.hasMany(DraftPick, { as: 'DraftPicks', foreignKey: 'draft_id' });
39
42
  DraftPick.belongsTo(Draft, { as: 'draft', foreignKey: 'draft_id' });
@@ -44,6 +47,12 @@ function initModels(sequelize) {
44
47
  Block.belongsTo(Player, { as: 'Blocker_3', foreignKey: 'blocker_3' });
45
48
  Block.belongsTo(Player, { as: 'player', foreignKey: 'player_id' });
46
49
  Block.belongsTo(Rally, { as: 'rally', foreignKey: 'rally_id' });
50
+ Block.belongsToMany(Trait, {
51
+ as: 'Traits',
52
+ through: EventTrait,
53
+ foreignKey: 'event_id',
54
+ otherKey: 'trait_id'
55
+ });
47
56
  Coach.belongsTo(Country, { as: 'country', foreignKey: 'country_id' });
48
57
  Coach.hasMany(Team, { as: 'Teams', foreignKey: 'coach_id' });
49
58
  Country.hasMany(Coach, { as: 'Coaches', foreignKey: 'country_id' });
@@ -52,6 +61,13 @@ function initModels(sequelize) {
52
61
  Country.hasMany(Team, { as: 'Teams', foreignKey: 'country_id' });
53
62
  Event.belongsTo(Player, { as: 'player', foreignKey: 'player_id' });
54
63
  Event.belongsTo(Rally, { as: 'rally', foreignKey: 'rally_id' });
64
+ Event.belongsToMany(Trait, {
65
+ as: 'Traits',
66
+ through: EventTrait,
67
+ foreignKey: 'event_id',
68
+ otherKey: 'trait_id'
69
+ });
70
+ EventTrait.belongsTo(Trait, { as: 'trait', foreignKey: 'trait_id' });
55
71
  Iteration.hasMany(Season, { as: 'Seasons', foreignKey: 'iteration' });
56
72
  Iteration.hasOne(Tournament, { as: 'Tournament', foreignKey: 'iteration' });
57
73
  League.belongsTo(Country, { as: 'country', foreignKey: 'country_id' });
@@ -122,8 +138,15 @@ function initModels(sequelize) {
122
138
  foreignKey: 'player_id',
123
139
  otherKey: 'rally_id'
124
140
  });
141
+ Player.belongsToMany(Trait, {
142
+ as: 'Traits',
143
+ through: PlayerTrait,
144
+ foreignKey: 'player_id',
145
+ otherKey: 'trait_id'
146
+ });
125
147
  PlayerTeam.belongsTo(Player, { as: 'player', foreignKey: 'player_id' });
126
148
  PlayerTeam.belongsTo(Team, { as: 'team', foreignKey: 'team_id' });
149
+ PlayerTrait.belongsTo(Trait, { as: 'trait', foreignKey: 'trait_id' });
127
150
  Rally.belongsTo(MatchSet, { as: 'match_set', foreignKey: 'match_set_id' });
128
151
  Rally.belongsTo(Team, { as: 'servingTeam', foreignKey: 'serving_team' });
129
152
  Rally.hasMany(Block, { as: 'Blocks', foreignKey: 'rally_id' });
@@ -146,6 +169,12 @@ function initModels(sequelize) {
146
169
  RallyPosition.belongsTo(Rally, { as: 'rally', foreignKey: 'rally_id' });
147
170
  Reception.belongsTo(Player, { as: 'player', foreignKey: 'player_id' });
148
171
  Reception.belongsTo(Rally, { as: 'rally', foreignKey: 'rally_id' });
172
+ Reception.belongsToMany(Trait, {
173
+ as: 'Traits',
174
+ through: EventTrait,
175
+ foreignKey: 'event_id',
176
+ otherKey: 'trait_id'
177
+ });
149
178
  Score.belongsTo(Player, { as: 'player', foreignKey: 'player_id' });
150
179
  Score.belongsTo(Rally, { as: 'rally', foreignKey: 'rally_id' });
151
180
  Score.belongsTo(Team, { as: 'team', foreignKey: 'team_id' });
@@ -166,10 +195,28 @@ function initModels(sequelize) {
166
195
  SeasonTeams.belongsTo(Team, { as: 'team', foreignKey: 'team_id' });
167
196
  Serve.belongsTo(Player, { as: 'player', foreignKey: 'player_id' });
168
197
  Serve.belongsTo(Rally, { as: 'rally', foreignKey: 'rally_id' });
198
+ Serve.belongsToMany(Trait, {
199
+ as: 'Traits',
200
+ through: EventTrait,
201
+ foreignKey: 'event_id',
202
+ otherKey: 'trait_id'
203
+ });
169
204
  Set.belongsTo(Player, { as: 'player', foreignKey: 'player_id' });
170
205
  Set.belongsTo(Rally, { as: 'rally', foreignKey: 'rally_id' });
206
+ Set.belongsToMany(Trait, {
207
+ as: 'Traits',
208
+ through: EventTrait,
209
+ foreignKey: 'event_id',
210
+ otherKey: 'trait_id'
211
+ });
171
212
  Spike.belongsTo(Player, { as: 'player', foreignKey: 'player_id' });
172
213
  Spike.belongsTo(Rally, { as: 'rally', foreignKey: 'rally_id' });
214
+ Spike.belongsToMany(Trait, {
215
+ as: 'Traits',
216
+ through: EventTrait,
217
+ foreignKey: 'event_id',
218
+ otherKey: 'trait_id'
219
+ });
173
220
  Substitution.belongsTo(Player, { as: 'player', foreignKey: 'player_id' });
174
221
  Substitution.belongsTo(Player, { as: 'playerOut', foreignKey: 'player_out' });
175
222
  Substitution.belongsTo(Rally, { as: 'rally', foreignKey: 'rally_id' });
@@ -219,6 +266,20 @@ function initModels(sequelize) {
219
266
  TournamentMatch.belongsTo(Tournament, { as: 'tournament', foreignKey: 'tournament_id' });
220
267
  TournamentTeams.belongsTo(Team, { as: 'team', foreignKey: 'team_id' });
221
268
  TournamentTeams.belongsTo(Tournament, { as: 'tournament', foreignKey: 'tournament_id' });
269
+ Trait.belongsToMany(Event, {
270
+ as: 'Events',
271
+ through: EventTrait,
272
+ foreignKey: 'trait_id',
273
+ otherKey: 'event_id'
274
+ });
275
+ Trait.belongsToMany(Player, {
276
+ as: 'Players',
277
+ through: PlayerTrait,
278
+ foreignKey: 'trait_id',
279
+ otherKey: 'player_id'
280
+ });
281
+ Trait.hasMany(PlayerTrait, { as: 'PlayerTraits', foreignKey: 'trait_id' });
282
+ Trait.hasMany(EventTrait, { as: 'EventTraits', foreignKey: 'trait_id' });
222
283
  return {
223
284
  Block,
224
285
  Coach,
@@ -1,6 +1,6 @@
1
1
  import * as Sequelize from 'sequelize';
2
2
  import { Model, Optional } from 'sequelize';
3
- import { CourtTarget, EventType, PlayerId, PlayerModel, RallyId, RallyModel, TraitType } from '.';
3
+ import { CourtTarget, EventType, PlayerId, PlayerModel, RallyId, RallyModel, TraitId, TraitModel } from '.';
4
4
  export interface BlockAttributes {
5
5
  event_id: string;
6
6
  rally_id: string;
@@ -36,7 +36,6 @@ export declare class BlockModel extends Model<BlockAttributes, BlockCreationAttr
36
36
  blocker_3?: string;
37
37
  modifier: number;
38
38
  score: number;
39
- active_traits: TraitType[];
40
39
  player: PlayerModel;
41
40
  getPlayer: Sequelize.BelongsToGetAssociationMixin<PlayerModel>;
42
41
  setPlayer: Sequelize.BelongsToSetAssociationMixin<PlayerModel, PlayerId>;
@@ -57,5 +56,16 @@ export declare class BlockModel extends Model<BlockAttributes, BlockCreationAttr
57
56
  getRally: Sequelize.BelongsToGetAssociationMixin<RallyModel>;
58
57
  setRally: Sequelize.BelongsToSetAssociationMixin<RallyModel, RallyId>;
59
58
  createRally: Sequelize.BelongsToCreateAssociationMixin<RallyModel>;
59
+ Traits: TraitModel[];
60
+ getTraits: Sequelize.BelongsToManyGetAssociationsMixin<TraitModel>;
61
+ setTraits: Sequelize.BelongsToManySetAssociationsMixin<TraitModel, TraitId>;
62
+ addTrait: Sequelize.BelongsToManyAddAssociationMixin<TraitModel, TraitId>;
63
+ addTraits: Sequelize.BelongsToManyAddAssociationsMixin<TraitModel, TraitId>;
64
+ createTrait: Sequelize.BelongsToManyCreateAssociationMixin<TraitModel>;
65
+ removeTrait: Sequelize.BelongsToManyRemoveAssociationMixin<TraitModel, TraitId>;
66
+ removeTraits: Sequelize.BelongsToManyRemoveAssociationsMixin<TraitModel, TraitId>;
67
+ hasTrait: Sequelize.BelongsToManyHasAssociationMixin<TraitModel, TraitId>;
68
+ hasTraits: Sequelize.BelongsToManyHasAssociationsMixin<TraitModel, TraitId>;
69
+ countTraits: Sequelize.BelongsToManyCountAssociationsMixin;
60
70
  static initModel(sequelize: Sequelize.Sequelize): typeof BlockModel;
61
71
  }
@@ -0,0 +1,23 @@
1
+ import * as Sequelize from 'sequelize';
2
+ import { Model } from 'sequelize';
3
+ import type { EventId, EventModel, TraitId, TraitModel } from '.';
4
+ export interface EventTraitAttributes {
5
+ event_id: string;
6
+ trait_id: string;
7
+ }
8
+ export type EventTraitPk = 'event_id' | 'trait_id';
9
+ export type EventTraitId = EventTraitModel[EventTraitPk];
10
+ export type EventTraitCreationAttributes = EventTraitAttributes;
11
+ export declare class EventTraitModel extends Model<EventTraitAttributes, EventTraitCreationAttributes> implements EventTraitAttributes {
12
+ event_id: string;
13
+ trait_id: string;
14
+ event: EventModel;
15
+ getEvent: Sequelize.BelongsToGetAssociationMixin<EventModel>;
16
+ setEvent: Sequelize.BelongsToSetAssociationMixin<EventModel, EventId>;
17
+ createEvent: Sequelize.BelongsToCreateAssociationMixin<EventModel>;
18
+ trait: TraitModel;
19
+ getTrait: Sequelize.BelongsToGetAssociationMixin<TraitModel>;
20
+ setTrait: Sequelize.BelongsToSetAssociationMixin<TraitModel, TraitId>;
21
+ createTrait: Sequelize.BelongsToCreateAssociationMixin<TraitModel>;
22
+ static initModel(sequelize: Sequelize.Sequelize): typeof EventTraitModel;
23
+ }
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EventTraitModel = void 0;
4
+ const sequelize_1 = require("sequelize");
5
+ class EventTraitModel extends sequelize_1.Model {
6
+ static initModel(sequelize) {
7
+ return EventTraitModel.init({
8
+ event_id: {
9
+ type: sequelize_1.DataTypes.UUID,
10
+ allowNull: false,
11
+ primaryKey: true,
12
+ references: {
13
+ model: 'Event',
14
+ key: 'event_id'
15
+ }
16
+ },
17
+ trait_id: {
18
+ type: sequelize_1.DataTypes.UUID,
19
+ allowNull: false,
20
+ primaryKey: true,
21
+ references: {
22
+ model: 'Trait',
23
+ key: 'trait_id'
24
+ }
25
+ }
26
+ }, {
27
+ sequelize,
28
+ tableName: 'EventTrait',
29
+ schema: 'public',
30
+ timestamps: false,
31
+ indexes: [{
32
+ name: 'eventtrait_pk',
33
+ unique: true,
34
+ fields: [
35
+ { name: 'event_id' },
36
+ { name: 'trait_id' },
37
+ ]
38
+ }]
39
+ });
40
+ }
41
+ }
42
+ exports.EventTraitModel = EventTraitModel;
@@ -1,6 +1,6 @@
1
1
  import * as Sequelize from 'sequelize';
2
2
  import { Model } from 'sequelize';
3
- import { PlayerId, PlayerModel, RallyId, RallyModel } from '.';
3
+ import { PlayerId, PlayerModel, RallyId, RallyModel, TraitId, TraitModel } from '.';
4
4
  export interface EventAttributes {
5
5
  event_id: string;
6
6
  rally_id: string;
@@ -27,5 +27,16 @@ export declare class EventModel extends Model<EventAttributes, EventCreationAttr
27
27
  getRally: Sequelize.BelongsToGetAssociationMixin<RallyModel>;
28
28
  setRally: Sequelize.BelongsToSetAssociationMixin<RallyModel, RallyId>;
29
29
  createRally: Sequelize.BelongsToCreateAssociationMixin<RallyModel>;
30
+ Traits: TraitModel[];
31
+ getTraits: Sequelize.BelongsToManyGetAssociationsMixin<TraitModel>;
32
+ setTraits: Sequelize.BelongsToManySetAssociationsMixin<TraitModel, TraitId>;
33
+ addTrait: Sequelize.BelongsToManyAddAssociationMixin<TraitModel, TraitId>;
34
+ addTraits: Sequelize.BelongsToManyAddAssociationsMixin<TraitModel, TraitId>;
35
+ createTrait: Sequelize.BelongsToManyCreateAssociationMixin<TraitModel>;
36
+ removeTrait: Sequelize.BelongsToManyRemoveAssociationMixin<TraitModel, TraitId>;
37
+ removeTraits: Sequelize.BelongsToManyRemoveAssociationsMixin<TraitModel, TraitId>;
38
+ hasTrait: Sequelize.BelongsToManyHasAssociationMixin<TraitModel, TraitId>;
39
+ hasTraits: Sequelize.BelongsToManyHasAssociationsMixin<TraitModel, TraitId>;
40
+ countTraits: Sequelize.BelongsToManyCountAssociationsMixin;
30
41
  static initModel(sequelize: Sequelize.Sequelize): typeof EventModel;
31
42
  }
@@ -4,6 +4,7 @@ export * from './country';
4
4
  export * from './draft';
5
5
  export * from './draft-pick';
6
6
  export * from './event';
7
+ export * from './event-trait';
7
8
  export * from './iteration';
8
9
  export * from './league';
9
10
  export * from './libero-replacement';
@@ -14,6 +15,7 @@ export * from './match-set-stats';
14
15
  export * from './performance-stats';
15
16
  export * from './player';
16
17
  export * from './player-team';
18
+ export * from './player-trait';
17
19
  export * from './rally';
18
20
  export * from './rally-position';
19
21
  export * from './reception';
@@ -30,3 +32,4 @@ export * from './tournament';
30
32
  export * from './tournament-match';
31
33
  export * from './tournament-teams';
32
34
  export * from './user';
35
+ export * from './trait';
@@ -20,6 +20,7 @@ __exportStar(require("./country"), exports);
20
20
  __exportStar(require("./draft"), exports);
21
21
  __exportStar(require("./draft-pick"), exports);
22
22
  __exportStar(require("./event"), exports);
23
+ __exportStar(require("./event-trait"), exports);
23
24
  __exportStar(require("./iteration"), exports);
24
25
  __exportStar(require("./league"), exports);
25
26
  __exportStar(require("./libero-replacement"), exports);
@@ -30,6 +31,7 @@ __exportStar(require("./match-set-stats"), exports);
30
31
  __exportStar(require("./performance-stats"), exports);
31
32
  __exportStar(require("./player"), exports);
32
33
  __exportStar(require("./player-team"), exports);
34
+ __exportStar(require("./player-trait"), exports);
33
35
  __exportStar(require("./rally"), exports);
34
36
  __exportStar(require("./rally-position"), exports);
35
37
  __exportStar(require("./reception"), exports);
@@ -46,3 +48,4 @@ __exportStar(require("./tournament"), exports);
46
48
  __exportStar(require("./tournament-match"), exports);
47
49
  __exportStar(require("./tournament-teams"), exports);
48
50
  __exportStar(require("./user"), exports);
51
+ __exportStar(require("./trait"), exports);
@@ -19,6 +19,7 @@ export declare class MatchModel extends Model<MatchAttributes, MatchCreationAttr
19
19
  away_team: string;
20
20
  scheduled_date: Date;
21
21
  is_simulated: boolean;
22
+ MatchSets: MatchSetModel[];
22
23
  MatchRatings: MatchRatingModel[];
23
24
  getMatchRatings: Sequelize.HasManyGetAssociationsMixin<MatchRatingModel>;
24
25
  setMatchRatings: Sequelize.HasManySetAssociationsMixin<MatchRatingModel, MatchRatingId>;
@@ -30,7 +31,6 @@ export declare class MatchModel extends Model<MatchAttributes, MatchCreationAttr
30
31
  hasMatchRating: Sequelize.HasManyHasAssociationMixin<MatchRatingModel, MatchRatingId>;
31
32
  hasMatchRatings: Sequelize.HasManyHasAssociationsMixin<MatchRatingModel, MatchRatingId>;
32
33
  countMatchRatings: Sequelize.HasManyCountAssociationsMixin;
33
- MatchSets: MatchSetModel[];
34
34
  getMatchSets: Sequelize.HasManyGetAssociationsMixin<MatchSetModel>;
35
35
  setMatchSets: Sequelize.HasManySetAssociationsMixin<MatchSetModel, MatchSetId>;
36
36
  addMatchSet: Sequelize.HasManyAddAssociationMixin<MatchSetModel, MatchSetId>;
@@ -0,0 +1,23 @@
1
+ import * as Sequelize from 'sequelize';
2
+ import { Model } from 'sequelize';
3
+ import type { PlayerId, PlayerModel, TraitId, TraitModel } from '.';
4
+ export interface PlayerTraitAttributes {
5
+ player_id: string;
6
+ trait_id: string;
7
+ }
8
+ export type PlayerTraitPk = 'player_id' | 'trait_id';
9
+ export type PlayerTraitId = PlayerTraitModel[PlayerTraitPk];
10
+ export type PlayerTraitCreationAttributes = PlayerTraitAttributes;
11
+ export declare class PlayerTraitModel extends Model<PlayerTraitAttributes, PlayerTraitCreationAttributes> implements PlayerTraitAttributes {
12
+ player_id: string;
13
+ trait_id: string;
14
+ player: PlayerModel;
15
+ getPlayer: Sequelize.BelongsToGetAssociationMixin<PlayerModel>;
16
+ setPlayer: Sequelize.BelongsToSetAssociationMixin<PlayerModel, PlayerId>;
17
+ createPlayer: Sequelize.BelongsToCreateAssociationMixin<PlayerModel>;
18
+ trait: TraitModel;
19
+ getTrait: Sequelize.BelongsToGetAssociationMixin<TraitModel>;
20
+ setTrait: Sequelize.BelongsToSetAssociationMixin<TraitModel, TraitId>;
21
+ createTrait: Sequelize.BelongsToCreateAssociationMixin<TraitModel>;
22
+ static initModel(sequelize: Sequelize.Sequelize): typeof PlayerTraitModel;
23
+ }
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PlayerTraitModel = void 0;
4
+ const sequelize_1 = require("sequelize");
5
+ class PlayerTraitModel extends sequelize_1.Model {
6
+ static initModel(sequelize) {
7
+ return PlayerTraitModel.init({
8
+ player_id: {
9
+ type: sequelize_1.DataTypes.UUID,
10
+ allowNull: false,
11
+ primaryKey: true,
12
+ references: {
13
+ model: 'Player',
14
+ key: 'player_id'
15
+ }
16
+ },
17
+ trait_id: {
18
+ type: sequelize_1.DataTypes.UUID,
19
+ allowNull: false,
20
+ primaryKey: true,
21
+ references: {
22
+ model: 'Trait',
23
+ key: 'trait_id'
24
+ }
25
+ }
26
+ }, {
27
+ sequelize,
28
+ tableName: 'PlayerTrait',
29
+ schema: 'public',
30
+ timestamps: false,
31
+ indexes: [{
32
+ name: 'playertrait_pk',
33
+ unique: true,
34
+ fields: [
35
+ { name: 'trait_id' },
36
+ { name: 'player_id' },
37
+ ]
38
+ }]
39
+ });
40
+ }
41
+ }
42
+ exports.PlayerTraitModel = PlayerTraitModel;
@@ -1,19 +1,16 @@
1
1
  import * as Sequelize from 'sequelize';
2
2
  import { Model } from 'sequelize';
3
- import type { BlockId, CountryId, DraftPickId, EventId, LiberoReplacementId, MatchSetId, MatchSetStatsId, PerformanceStatsId, PlayerTeamId, RallyId, RallyPositionId, ReceptionId, ScoreId, ServeId, SetId, SpikeId, SubstitutionId } from '.';
4
- import { BlockModel, CountryModel, DraftPickModel, EventModel, LiberoReplacementModel, MatchSetModel, MatchSetStatsAttributes, MatchSetStatsModel, PerformanceStatsAttributes, PerformanceStatsModel, PlayerTeamModel, RallyModel, RallyPositionModel, ReceptionModel, ScoreModel, ServeModel, SetModel, SpikeModel, SubstitutionModel } from '.';
3
+ import { BlockId, BlockModel, CountryId, CountryModel, DraftPickId, DraftPickModel, EventId, EventModel, LiberoReplacementId, LiberoReplacementModel, MatchSetId, MatchSetModel, MatchSetStatsAttributes, MatchSetStatsId, MatchSetStatsModel, PerformanceStatsAttributes, PerformanceStatsId, PerformanceStatsModel, PlayerTeamId, PlayerTeamModel, RallyId, RallyModel, RallyPositionId, RallyPositionModel, ReceptionId, ReceptionModel, ScoreId, ScoreModel, ServeId, ServeModel, SetId, SetModel, SpikeId, SpikeModel, SubstitutionId, SubstitutionModel, TraitId, TraitModel } from '.';
5
4
  export interface PlayerAttributes {
6
5
  player_id: string;
7
6
  roles: RoleType[];
8
7
  first_name: string;
9
8
  last_name: string;
10
9
  country_id: string;
11
- traits: TraitType[];
12
10
  PerformanceStat?: PerformanceStatsAttributes;
13
11
  MatchSetStats?: MatchSetStatsAttributes[];
14
12
  }
15
13
  export type RoleType = 'SETTER' | 'LIBERO' | 'OUTSIDE_HITTER' | 'OPPOSITE_HITTER' | 'MIDDLE_BLOCKER' | 'DEFENSIVE_SPECIALIST';
16
- export type TraitType = 'MARKSMAN' | 'MOVING_WALL' | 'MASTER_MIND' | 'METEOR_SERVE' | 'VIGOROUS' | 'GUARDIAN';
17
14
  export type PlayerPk = 'player_id';
18
15
  export type PlayerId = PlayerModel[PlayerPk];
19
16
  export type PlayerCreationAttributes = PlayerAttributes;
@@ -23,7 +20,8 @@ export declare class PlayerModel extends Model<PlayerAttributes, PlayerCreationA
23
20
  first_name: string;
24
21
  last_name: string;
25
22
  country_id: string;
26
- traits: TraitType[];
23
+ PerformanceStat: PerformanceStatsModel;
24
+ MatchSetStats: MatchSetStatsModel[];
27
25
  country: CountryModel;
28
26
  getCountry: Sequelize.BelongsToGetAssociationMixin<CountryModel>;
29
27
  setCountry: Sequelize.BelongsToSetAssociationMixin<CountryModel, CountryId>;
@@ -142,7 +140,6 @@ export declare class PlayerModel extends Model<PlayerAttributes, PlayerCreationA
142
140
  hasMatchSet: Sequelize.BelongsToManyHasAssociationMixin<MatchSetModel, MatchSetId>;
143
141
  hasMatchSets: Sequelize.BelongsToManyHasAssociationsMixin<MatchSetModel, MatchSetId>;
144
142
  countMatchSets: Sequelize.BelongsToManyCountAssociationsMixin;
145
- MatchSetStats: MatchSetStatsModel[];
146
143
  getMatchSetStats: Sequelize.HasManyGetAssociationsMixin<MatchSetStatsModel>;
147
144
  setMatchSetStats: Sequelize.HasManySetAssociationsMixin<MatchSetStatsModel, MatchSetStatsId>;
148
145
  addMatchSetStat: Sequelize.HasManyAddAssociationMixin<MatchSetStatsModel, MatchSetStatsId>;
@@ -153,7 +150,6 @@ export declare class PlayerModel extends Model<PlayerAttributes, PlayerCreationA
153
150
  hasMatchSetStat: Sequelize.HasManyHasAssociationMixin<MatchSetStatsModel, MatchSetStatsId>;
154
151
  hasMatchSetStats: Sequelize.HasManyHasAssociationsMixin<MatchSetStatsModel, MatchSetStatsId>;
155
152
  countMatchSetStats: Sequelize.HasManyCountAssociationsMixin;
156
- PerformanceStat: PerformanceStatsModel;
157
153
  getPerformanceStat: Sequelize.HasOneGetAssociationMixin<PerformanceStatsModel>;
158
154
  setPerformanceStat: Sequelize.HasOneSetAssociationMixin<PerformanceStatsModel, PerformanceStatsId>;
159
155
  createPerformanceStat: Sequelize.HasOneCreateAssociationMixin<PerformanceStatsModel>;
@@ -260,5 +256,16 @@ export declare class PlayerModel extends Model<PlayerAttributes, PlayerCreationA
260
256
  hasInSubstitution: Sequelize.HasManyHasAssociationMixin<SubstitutionModel, SubstitutionId>;
261
257
  hasInSubstitutions: Sequelize.HasManyHasAssociationsMixin<SubstitutionModel, SubstitutionId>;
262
258
  countInSubstitutions: Sequelize.HasManyCountAssociationsMixin;
259
+ Traits: TraitModel[];
260
+ getTraits: Sequelize.BelongsToManyGetAssociationsMixin<TraitModel>;
261
+ setTraits: Sequelize.BelongsToManySetAssociationsMixin<TraitModel, TraitId>;
262
+ addTrait: Sequelize.BelongsToManyAddAssociationMixin<TraitModel, TraitId>;
263
+ addTraits: Sequelize.BelongsToManyAddAssociationsMixin<TraitModel, TraitId>;
264
+ createTrait: Sequelize.BelongsToManyCreateAssociationMixin<TraitModel>;
265
+ removeTrait: Sequelize.BelongsToManyRemoveAssociationMixin<TraitModel, TraitId>;
266
+ removeTraits: Sequelize.BelongsToManyRemoveAssociationsMixin<TraitModel, TraitId>;
267
+ hasTrait: Sequelize.BelongsToManyHasAssociationMixin<TraitModel, TraitId>;
268
+ hasTraits: Sequelize.BelongsToManyHasAssociationsMixin<TraitModel, TraitId>;
269
+ countTraits: Sequelize.BelongsToManyCountAssociationsMixin;
263
270
  static initModel(sequelize: Sequelize.Sequelize): typeof PlayerModel;
264
271
  }
@@ -29,10 +29,6 @@ class PlayerModel extends sequelize_1.Model {
29
29
  model: 'Country',
30
30
  key: 'country_id'
31
31
  }
32
- },
33
- traits: {
34
- type: sequelize_1.DataTypes.ARRAY(sequelize_1.DataTypes.ENUM('MARKSMAN', 'MOVING_WALL', 'MASTER_MIND', 'METEOR_SERVE', 'VIGOROUS', 'GUARDIAN')),
35
- allowNull: false
36
32
  }
37
33
  }, {
38
34
  sequelize,
@@ -1,6 +1,6 @@
1
1
  import * as Sequelize from 'sequelize';
2
2
  import { Model } from 'sequelize';
3
- import { CourtTarget, EventType, PlayerId, PlayerModel, RallyId, RallyModel, TraitType } from '.';
3
+ import { CourtTarget, EventType, PlayerId, PlayerModel, RallyId, RallyModel, TraitId, TraitModel } from '.';
4
4
  export interface ReceptionAttributes {
5
5
  event_id: string;
6
6
  rally_id: string;
@@ -29,7 +29,6 @@ export declare class ReceptionModel extends Model<ReceptionAttributes, Reception
29
29
  player_id: string;
30
30
  modifier: number;
31
31
  score: number;
32
- active_traits: TraitType[];
33
32
  player: PlayerModel;
34
33
  getPlayer: Sequelize.BelongsToGetAssociationMixin<PlayerModel>;
35
34
  setPlayer: Sequelize.BelongsToSetAssociationMixin<PlayerModel, PlayerId>;
@@ -38,5 +37,16 @@ export declare class ReceptionModel extends Model<ReceptionAttributes, Reception
38
37
  getRally: Sequelize.BelongsToGetAssociationMixin<RallyModel>;
39
38
  setRally: Sequelize.BelongsToSetAssociationMixin<RallyModel, RallyId>;
40
39
  createRally: Sequelize.BelongsToCreateAssociationMixin<RallyModel>;
40
+ Traits: TraitModel[];
41
+ getTraits: Sequelize.BelongsToManyGetAssociationsMixin<TraitModel>;
42
+ setTraits: Sequelize.BelongsToManySetAssociationsMixin<TraitModel, TraitId>;
43
+ addTrait: Sequelize.BelongsToManyAddAssociationMixin<TraitModel, TraitId>;
44
+ addTraits: Sequelize.BelongsToManyAddAssociationsMixin<TraitModel, TraitId>;
45
+ createTrait: Sequelize.BelongsToManyCreateAssociationMixin<TraitModel>;
46
+ removeTrait: Sequelize.BelongsToManyRemoveAssociationMixin<TraitModel, TraitId>;
47
+ removeTraits: Sequelize.BelongsToManyRemoveAssociationsMixin<TraitModel, TraitId>;
48
+ hasTrait: Sequelize.BelongsToManyHasAssociationMixin<TraitModel, TraitId>;
49
+ hasTraits: Sequelize.BelongsToManyHasAssociationsMixin<TraitModel, TraitId>;
50
+ countTraits: Sequelize.BelongsToManyCountAssociationsMixin;
41
51
  static initModel(sequelize: Sequelize.Sequelize): typeof ReceptionModel;
42
52
  }
@@ -13,11 +13,11 @@ export type SeasonMatchCreationAttributes = SeasonMatchAttributes;
13
13
  export declare class SeasonMatchModel extends Model<SeasonMatchAttributes, SeasonMatchCreationAttributes> implements SeasonMatchAttributes {
14
14
  season_id: string;
15
15
  match_id: string;
16
+ match: MatchModel;
16
17
  season: SeasonModel;
17
18
  getSeason: Sequelize.BelongsToGetAssociationMixin<SeasonModel>;
18
19
  setSeason: Sequelize.BelongsToSetAssociationMixin<SeasonModel, SeasonId>;
19
20
  createSeason: Sequelize.BelongsToCreateAssociationMixin<SeasonModel>;
20
- match: MatchModel;
21
21
  getMatch: Sequelize.BelongsToGetAssociationMixin<MatchModel>;
22
22
  setMatch: Sequelize.BelongsToSetAssociationMixin<MatchModel, MatchId>;
23
23
  createMatch: Sequelize.BelongsToCreateAssociationMixin<MatchModel>;
@@ -18,11 +18,13 @@ export declare class SeasonModel extends Model<SeasonAttributes, SeasonCreationA
18
18
  season_id: string;
19
19
  iteration: number;
20
20
  league_id: string;
21
+ seasonTeams: TeamModel[];
22
+ SeasonMatches: SeasonMatchModel[];
23
+ league: LeagueModel;
21
24
  Iteration: IterationModel;
22
25
  getIteration: Sequelize.BelongsToGetAssociationMixin<IterationModel>;
23
26
  setIteration: Sequelize.BelongsToSetAssociationMixin<IterationModel, IterationId>;
24
27
  createIteration: Sequelize.BelongsToCreateAssociationMixin<IterationModel>;
25
- league: LeagueModel;
26
28
  getLeague: Sequelize.BelongsToGetAssociationMixin<LeagueModel>;
27
29
  setLeague: Sequelize.BelongsToSetAssociationMixin<LeagueModel, LeagueId>;
28
30
  createLeague: Sequelize.BelongsToCreateAssociationMixin<LeagueModel>;
@@ -37,7 +39,6 @@ export declare class SeasonModel extends Model<SeasonAttributes, SeasonCreationA
37
39
  hasSeasonTeam: Sequelize.HasManyHasAssociationMixin<SeasonTeamsModel, SeasonTeamsId>;
38
40
  hasSeasonTeams: Sequelize.HasManyHasAssociationsMixin<SeasonTeamsModel, SeasonTeamsId>;
39
41
  countSeasonTeams: Sequelize.HasManyCountAssociationsMixin;
40
- seasonTeams: TeamModel[];
41
42
  getseasonTeams: Sequelize.BelongsToManyGetAssociationsMixin<TeamModel>;
42
43
  setseasonTeams: Sequelize.BelongsToManySetAssociationsMixin<TeamModel, TeamId>;
43
44
  addTeam_id_Team: Sequelize.BelongsToManyAddAssociationMixin<TeamModel, TeamId>;
@@ -48,7 +49,6 @@ export declare class SeasonModel extends Model<SeasonAttributes, SeasonCreationA
48
49
  hasTeam_id_Team: Sequelize.BelongsToManyHasAssociationMixin<TeamModel, TeamId>;
49
50
  hasseasonTeams: Sequelize.BelongsToManyHasAssociationsMixin<TeamModel, TeamId>;
50
51
  countseasonTeams: Sequelize.BelongsToManyCountAssociationsMixin;
51
- SeasonMatches: SeasonMatchModel[];
52
52
  getSeasonMatches: Sequelize.HasManyGetAssociationsMixin<SeasonMatchModel>;
53
53
  setSeasonMatches: Sequelize.HasManySetAssociationsMixin<SeasonMatchModel, SeasonMatchId>;
54
54
  addSeasonMatch: Sequelize.HasManyAddAssociationMixin<SeasonMatchModel, SeasonMatchId>;
@@ -1,6 +1,6 @@
1
1
  import * as Sequelize from 'sequelize';
2
2
  import { Model } from 'sequelize';
3
- import { CourtTarget, EventType, PlayerId, PlayerModel, RallyId, RallyModel, TraitType } from '.';
3
+ import { CourtTarget, EventType, PlayerId, PlayerModel, RallyId, RallyModel, TraitId, TraitModel } from '.';
4
4
  export interface ServeAttributes {
5
5
  event_id: string;
6
6
  rally_id: string;
@@ -29,7 +29,6 @@ export declare class ServeModel extends Model<ServeAttributes, ServeCreationAttr
29
29
  modifier: number;
30
30
  score: number;
31
31
  type: ServeType;
32
- active_traits: TraitType[];
33
32
  player: PlayerModel;
34
33
  getPlayer: Sequelize.BelongsToGetAssociationMixin<PlayerModel>;
35
34
  setPlayer: Sequelize.BelongsToSetAssociationMixin<PlayerModel, PlayerId>;
@@ -38,5 +37,16 @@ export declare class ServeModel extends Model<ServeAttributes, ServeCreationAttr
38
37
  getRally: Sequelize.BelongsToGetAssociationMixin<RallyModel>;
39
38
  setRally: Sequelize.BelongsToSetAssociationMixin<RallyModel, RallyId>;
40
39
  createRally: Sequelize.BelongsToCreateAssociationMixin<RallyModel>;
40
+ Traits: TraitModel[];
41
+ getTraits: Sequelize.BelongsToManyGetAssociationsMixin<TraitModel>;
42
+ setTraits: Sequelize.BelongsToManySetAssociationsMixin<TraitModel, TraitId>;
43
+ addTrait: Sequelize.BelongsToManyAddAssociationMixin<TraitModel, TraitId>;
44
+ addTraits: Sequelize.BelongsToManyAddAssociationsMixin<TraitModel, TraitId>;
45
+ createTrait: Sequelize.BelongsToManyCreateAssociationMixin<TraitModel>;
46
+ removeTrait: Sequelize.BelongsToManyRemoveAssociationMixin<TraitModel, TraitId>;
47
+ removeTraits: Sequelize.BelongsToManyRemoveAssociationsMixin<TraitModel, TraitId>;
48
+ hasTrait: Sequelize.BelongsToManyHasAssociationMixin<TraitModel, TraitId>;
49
+ hasTraits: Sequelize.BelongsToManyHasAssociationsMixin<TraitModel, TraitId>;
50
+ countTraits: Sequelize.BelongsToManyCountAssociationsMixin;
41
51
  static initModel(sequelize: Sequelize.Sequelize): typeof ServeModel;
42
52
  }
@@ -1,6 +1,6 @@
1
1
  import * as Sequelize from 'sequelize';
2
2
  import { Model } from 'sequelize';
3
- import { CourtTarget, EventType, PlayerId, PlayerModel, RallyId, RallyModel, TraitType } from '.';
3
+ import { CourtTarget, EventType, PlayerId, PlayerModel, RallyId, RallyModel, TraitId, TraitModel } from '.';
4
4
  export interface SetAttributes {
5
5
  event_id: string;
6
6
  rally_id: string;
@@ -29,7 +29,6 @@ export declare class SetModel extends Model<SetAttributes, SetCreationAttributes
29
29
  player_id: string;
30
30
  modifier: number;
31
31
  score: number;
32
- active_traits: TraitType[];
33
32
  player: PlayerModel;
34
33
  getPlayer: Sequelize.BelongsToGetAssociationMixin<PlayerModel>;
35
34
  setPlayer: Sequelize.BelongsToSetAssociationMixin<PlayerModel, PlayerId>;
@@ -38,5 +37,16 @@ export declare class SetModel extends Model<SetAttributes, SetCreationAttributes
38
37
  getRally: Sequelize.BelongsToGetAssociationMixin<RallyModel>;
39
38
  setRally: Sequelize.BelongsToSetAssociationMixin<RallyModel, RallyId>;
40
39
  createRally: Sequelize.BelongsToCreateAssociationMixin<RallyModel>;
40
+ Traits: TraitModel[];
41
+ getTraits: Sequelize.BelongsToManyGetAssociationsMixin<TraitModel>;
42
+ setTraits: Sequelize.BelongsToManySetAssociationsMixin<TraitModel, TraitId>;
43
+ addTrait: Sequelize.BelongsToManyAddAssociationMixin<TraitModel, TraitId>;
44
+ addTraits: Sequelize.BelongsToManyAddAssociationsMixin<TraitModel, TraitId>;
45
+ createTrait: Sequelize.BelongsToManyCreateAssociationMixin<TraitModel>;
46
+ removeTrait: Sequelize.BelongsToManyRemoveAssociationMixin<TraitModel, TraitId>;
47
+ removeTraits: Sequelize.BelongsToManyRemoveAssociationsMixin<TraitModel, TraitId>;
48
+ hasTrait: Sequelize.BelongsToManyHasAssociationMixin<TraitModel, TraitId>;
49
+ hasTraits: Sequelize.BelongsToManyHasAssociationsMixin<TraitModel, TraitId>;
50
+ countTraits: Sequelize.BelongsToManyCountAssociationsMixin;
41
51
  static initModel(sequelize: Sequelize.Sequelize): typeof SetModel;
42
52
  }