volleyballsimtypes 0.0.191 → 0.0.193

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 (63) hide show
  1. package/dist/cjs/src/data/init-models.js +6 -24
  2. package/dist/cjs/src/data/models/country.d.ts +1 -12
  3. package/dist/cjs/src/data/models/division.d.ts +12 -23
  4. package/dist/cjs/src/data/models/index.d.ts +1 -2
  5. package/dist/cjs/src/data/models/index.js +1 -2
  6. package/dist/cjs/src/data/models/tactics.d.ts +30 -0
  7. package/dist/cjs/src/data/models/{coach.js → tactics.js} +9 -24
  8. package/dist/cjs/src/data/models/team.d.ts +15 -25
  9. package/dist/cjs/src/data/models/team.js +10 -2
  10. package/dist/cjs/src/data/transformers/division.d.ts +1 -1
  11. package/dist/cjs/src/data/transformers/division.js +14 -4
  12. package/dist/cjs/src/data/transformers/index.d.ts +1 -1
  13. package/dist/cjs/src/data/transformers/index.js +1 -1
  14. package/dist/cjs/src/data/transformers/league.js +1 -1
  15. package/dist/cjs/src/data/transformers/tactics.d.ts +5 -0
  16. package/dist/cjs/src/data/transformers/tactics.js +21 -0
  17. package/dist/cjs/src/data/transformers/team.js +7 -5
  18. package/dist/cjs/src/service/coach/index.d.ts +1 -1
  19. package/dist/cjs/src/service/coach/index.js +1 -1
  20. package/dist/cjs/src/service/coach/tactics.d.ts +13 -0
  21. package/dist/cjs/src/service/coach/{coach.js → tactics.js} +4 -6
  22. package/dist/cjs/src/service/competition/division.d.ts +6 -1
  23. package/dist/cjs/src/service/competition/division.js +3 -1
  24. package/dist/cjs/src/service/team/team.d.ts +6 -4
  25. package/dist/cjs/src/service/team/team.js +3 -2
  26. package/dist/esm/src/data/init-models.js +7 -25
  27. package/dist/esm/src/data/models/country.d.ts +1 -12
  28. package/dist/esm/src/data/models/division.d.ts +12 -23
  29. package/dist/esm/src/data/models/index.d.ts +1 -2
  30. package/dist/esm/src/data/models/index.js +1 -2
  31. package/dist/esm/src/data/models/tactics.d.ts +30 -0
  32. package/dist/esm/src/data/models/{coach.js → tactics.js} +7 -22
  33. package/dist/esm/src/data/models/team.d.ts +15 -25
  34. package/dist/esm/src/data/models/team.js +10 -2
  35. package/dist/esm/src/data/transformers/division.d.ts +1 -1
  36. package/dist/esm/src/data/transformers/division.js +14 -4
  37. package/dist/esm/src/data/transformers/index.d.ts +1 -1
  38. package/dist/esm/src/data/transformers/index.js +1 -1
  39. package/dist/esm/src/data/transformers/league.js +1 -1
  40. package/dist/esm/src/data/transformers/tactics.d.ts +5 -0
  41. package/dist/esm/src/data/transformers/tactics.js +17 -0
  42. package/dist/esm/src/data/transformers/team.js +8 -6
  43. package/dist/esm/src/service/coach/index.d.ts +1 -1
  44. package/dist/esm/src/service/coach/index.js +1 -1
  45. package/dist/esm/src/service/coach/tactics.d.ts +13 -0
  46. package/dist/esm/src/service/coach/{coach.js → tactics.js} +2 -4
  47. package/dist/esm/src/service/competition/division.d.ts +6 -1
  48. package/dist/esm/src/service/competition/division.js +3 -1
  49. package/dist/esm/src/service/team/team.d.ts +6 -4
  50. package/dist/esm/src/service/team/team.js +3 -2
  51. package/package.json +2 -2
  52. package/dist/cjs/src/data/models/coach.d.ts +0 -40
  53. package/dist/cjs/src/data/models/division-teams.d.ts +0 -23
  54. package/dist/cjs/src/data/models/division-teams.js +0 -43
  55. package/dist/cjs/src/data/transformers/coach.d.ts +0 -5
  56. package/dist/cjs/src/data/transformers/coach.js +0 -29
  57. package/dist/cjs/src/service/coach/coach.d.ts +0 -19
  58. package/dist/esm/src/data/models/coach.d.ts +0 -40
  59. package/dist/esm/src/data/models/division-teams.d.ts +0 -23
  60. package/dist/esm/src/data/models/division-teams.js +0 -39
  61. package/dist/esm/src/data/transformers/coach.d.ts +0 -5
  62. package/dist/esm/src/data/transformers/coach.js +0 -25
  63. package/dist/esm/src/service/coach/coach.d.ts +0 -19
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.initModels = void 0;
4
4
  const models_1 = require("./models");
5
5
  function initModels(sequelize) {
6
- const Coach = models_1.CoachModel.initModel(sequelize);
6
+ const Tactics = models_1.TacticsModel.initModel(sequelize);
7
7
  const Country = models_1.CountryModel.initModel(sequelize);
8
8
  const Competition = models_1.CompetitionModel.initModel(sequelize);
9
9
  const CompetitionTeams = models_1.CompetitionTeamsModel.initModel(sequelize);
@@ -15,7 +15,6 @@ function initModels(sequelize) {
15
15
  const League = models_1.LeagueModel.initModel(sequelize);
16
16
  const Division = models_1.DivisionModel.initModel(sequelize);
17
17
  const DivisionSeason = models_1.DivisionSeasonModel.initModel(sequelize);
18
- const DivisionTeams = models_1.DivisionTeamsModel.initModel(sequelize);
19
18
  const Match = models_1.MatchModel.initModel(sequelize);
20
19
  const MatchRating = models_1.MatchRatingModel.initModel(sequelize);
21
20
  const MatchResult = models_1.MatchResultModel.initModel(sequelize);
@@ -28,8 +27,7 @@ function initModels(sequelize) {
28
27
  const SetPosition = models_1.SetPositionModel.initModel(sequelize);
29
28
  const Team = models_1.TeamModel.initModel(sequelize);
30
29
  const User = models_1.UserModel.initModel(sequelize);
31
- Coach.belongsTo(Country, { as: 'country', foreignKey: 'country_id' });
32
- Coach.hasMany(Team, { as: 'Teams', foreignKey: 'coach_id' });
30
+ Tactics.hasMany(Team, { as: 'Teams', foreignKey: 'tactics_id' });
33
31
  Competition.belongsTo(Iteration, { as: 'Iteration', foreignKey: 'iteration' });
34
32
  Competition.hasMany(CompetitionMatch, { as: 'CompetitionMatches', foreignKey: 'competition_id' });
35
33
  Competition.hasMany(CompetitionTeams, { as: 'CompetitionTeams', foreignKey: 'competition_id' });
@@ -47,7 +45,6 @@ function initModels(sequelize) {
47
45
  CompetitionMatch.belongsTo(Match, { as: 'Match', foreignKey: 'match_id' });
48
46
  CompetitionTeams.belongsTo(Competition, { as: 'competition', foreignKey: 'competition_id' });
49
47
  CompetitionTeams.belongsTo(Team, { as: 'team', foreignKey: 'team_id' });
50
- Country.hasMany(Coach, { as: 'Coaches', foreignKey: 'country_id' });
51
48
  Country.hasMany(League, { as: 'Leagues', foreignKey: 'country_id' });
52
49
  Country.hasMany(Player, { as: 'Players', foreignKey: 'country_id' });
53
50
  Country.hasMany(Team, { as: 'Teams', foreignKey: 'country_id' });
@@ -60,24 +57,10 @@ function initModels(sequelize) {
60
57
  League.hasMany(Division, { as: 'Divisions', foreignKey: 'league_id' });
61
58
  Division.belongsTo(League, { as: 'league', foreignKey: 'league_id' });
62
59
  Division.hasMany(DivisionSeason, { as: 'DivisionSeasons', foreignKey: 'division_id' });
63
- Division.hasMany(DivisionTeams, { as: 'DivisionTeams', foreignKey: 'division_id' });
64
- Division.belongsToMany(Team, {
65
- as: 'Teams',
66
- through: DivisionTeams,
67
- foreignKey: 'division_id',
68
- otherKey: 'team_id'
69
- });
60
+ Division.hasMany(Team, { as: 'Teams', foreignKey: 'division_id' });
70
61
  DivisionSeason.belongsTo(Competition, { as: 'competition', foreignKey: 'competition_id' });
71
62
  DivisionSeason.belongsTo(Division, { as: 'division', foreignKey: 'division_id' });
72
- DivisionTeams.belongsTo(Division, { as: 'division', foreignKey: 'division_id' });
73
- DivisionTeams.belongsTo(Team, { as: 'team', foreignKey: 'team_id' });
74
- Team.hasOne(DivisionTeams, { as: 'DivisionTeams', foreignKey: 'team_id' });
75
- Team.belongsToMany(Division, {
76
- as: 'Divisions',
77
- through: DivisionTeams,
78
- foreignKey: 'team_id',
79
- otherKey: 'division_id'
80
- });
63
+ Team.belongsTo(Division, { as: 'Division', foreignKey: 'division_id' });
81
64
  Match.belongsTo(Team, { as: 'AwayTeam', foreignKey: 'away_team' });
82
65
  Match.belongsTo(Team, { as: 'HomeTeam', foreignKey: 'home_team' });
83
66
  Match.belongsToMany(Team, {
@@ -143,7 +126,7 @@ function initModels(sequelize) {
143
126
  Rally.belongsTo(Team, { as: 'ServingTeam', foreignKey: 'serving_team' });
144
127
  SetPosition.belongsTo(MatchSet, { as: 'matchSet', foreignKey: 'match_set_id' });
145
128
  SetPosition.belongsTo(Player, { as: 'player', foreignKey: 'player_id' });
146
- Team.belongsTo(Coach, { as: 'coach', foreignKey: 'coach_id' });
129
+ Team.belongsTo(Tactics, { as: 'tactics', foreignKey: 'tactics_id' });
147
130
  Team.belongsTo(Country, { as: 'country', foreignKey: 'country_id' });
148
131
  Team.belongsToMany(Competition, {
149
132
  as: 'Competitions',
@@ -173,7 +156,6 @@ function initModels(sequelize) {
173
156
  Team.hasMany(Rally, { as: 'Rallies', foreignKey: 'serving_team' });
174
157
  Team.hasMany(MatchResult, { as: 'WonMatches', foreignKey: 'winner_team_id' });
175
158
  return {
176
- Coach,
177
159
  Competition,
178
160
  CompetitionChampion,
179
161
  CompetitionMatch,
@@ -191,12 +173,12 @@ function initModels(sequelize) {
191
173
  MatchSet,
192
174
  BoxScore,
193
175
  PerformanceStats,
194
- DivisionTeams,
195
176
  Player,
196
177
  PlayerTeam,
197
178
  Rally,
198
179
  SetPosition,
199
180
  Team,
181
+ Tactics,
200
182
  User
201
183
  };
202
184
  }
@@ -1,6 +1,6 @@
1
1
  import * as Sequelize from 'sequelize';
2
2
  import { Model } from 'sequelize';
3
- import { CoachId, CoachModel, LeagueId, LeagueModel, PlayerId, PlayerModel, TeamId, TeamModel } from '.';
3
+ import { LeagueId, LeagueModel, PlayerId, PlayerModel, TeamId, TeamModel } from '.';
4
4
  export interface CountryAttributes {
5
5
  country_id: string;
6
6
  name: string;
@@ -13,17 +13,6 @@ export declare class CountryModel extends Model<CountryAttributes, CountryCreati
13
13
  country_id: string;
14
14
  name: string;
15
15
  short_name: string;
16
- Coaches: CoachModel[];
17
- getCoaches: Sequelize.HasManyGetAssociationsMixin<CoachModel>;
18
- setCoaches: Sequelize.HasManySetAssociationsMixin<CoachModel, CoachId>;
19
- addCoach: Sequelize.HasManyAddAssociationMixin<CoachModel, CoachId>;
20
- addCoaches: Sequelize.HasManyAddAssociationsMixin<CoachModel, CoachId>;
21
- createCoach: Sequelize.HasManyCreateAssociationMixin<CoachModel>;
22
- removeCoach: Sequelize.HasManyRemoveAssociationMixin<CoachModel, CoachId>;
23
- removeCoaches: Sequelize.HasManyRemoveAssociationsMixin<CoachModel, CoachId>;
24
- hasCoach: Sequelize.HasManyHasAssociationMixin<CoachModel, CoachId>;
25
- hasCoaches: Sequelize.HasManyHasAssociationsMixin<CoachModel, CoachId>;
26
- countCoaches: Sequelize.HasManyCountAssociationsMixin;
27
16
  Leagues: LeagueModel[];
28
17
  getLeagues: Sequelize.HasManyGetAssociationsMixin<LeagueModel>;
29
18
  setLeagues: Sequelize.HasManySetAssociationsMixin<LeagueModel, LeagueId>;
@@ -1,13 +1,13 @@
1
1
  import * as Sequelize from 'sequelize';
2
2
  import { Model } from 'sequelize';
3
- import { DivisionSeasonAttributes, DivisionSeasonId, DivisionSeasonModel, DivisionTeamsAttributes, DivisionTeamsId, DivisionTeamsModel, LeagueId, LeagueModel, TeamId, TeamModel } from '.';
3
+ import { DivisionSeasonAttributes, DivisionSeasonId, DivisionSeasonModel, LeagueId, LeagueModel, TeamAttributes, TeamId, TeamModel } from '.';
4
4
  export interface DivisionAttributes {
5
5
  division_id: string;
6
6
  league_id: string;
7
7
  tier: number;
8
8
  name: string;
9
9
  DivisionSeasons?: DivisionSeasonAttributes[];
10
- DivisionTeams?: DivisionTeamsAttributes[];
10
+ Teams?: TeamAttributes[];
11
11
  }
12
12
  export type DivisionPk = 'division_id';
13
13
  export type DivisionId = DivisionModel[DivisionPk];
@@ -32,27 +32,16 @@ export declare class DivisionModel extends Model<DivisionAttributes, DivisionCre
32
32
  hasDivisionSeason: Sequelize.HasManyHasAssociationMixin<DivisionSeasonModel, DivisionSeasonId>;
33
33
  hasDivisionSeasons: Sequelize.HasManyHasAssociationsMixin<DivisionSeasonModel, DivisionSeasonId>;
34
34
  countDivisionSeasons: Sequelize.HasManyCountAssociationsMixin;
35
- DivisionTeams: DivisionTeamsModel[];
36
- getDivisionTeams: Sequelize.HasManyGetAssociationsMixin<DivisionTeamsModel>;
37
- setDivisionTeams: Sequelize.HasManySetAssociationsMixin<DivisionTeamsModel, DivisionTeamsId>;
38
- addDivisionTeam: Sequelize.HasManyAddAssociationMixin<DivisionTeamsModel, DivisionTeamsId>;
39
- addDivisionTeams: Sequelize.HasManyAddAssociationsMixin<DivisionTeamsModel, DivisionTeamsId>;
40
- createDivisionTeam: Sequelize.HasManyCreateAssociationMixin<DivisionTeamsModel>;
41
- removeDivisionTeam: Sequelize.HasManyRemoveAssociationMixin<DivisionTeamsModel, DivisionTeamsId>;
42
- removeDivisionTeams: Sequelize.HasManyRemoveAssociationsMixin<DivisionTeamsModel, DivisionTeamsId>;
43
- hasDivisionTeam: Sequelize.HasManyHasAssociationMixin<DivisionTeamsModel, DivisionTeamsId>;
44
- hasDivisionTeams: Sequelize.HasManyHasAssociationsMixin<DivisionTeamsModel, DivisionTeamsId>;
45
- countDivisionTeams: Sequelize.HasManyCountAssociationsMixin;
46
35
  Teams: TeamModel[];
47
- getTeams: Sequelize.BelongsToManyGetAssociationsMixin<TeamModel>;
48
- setTeams: Sequelize.BelongsToManySetAssociationsMixin<TeamModel, TeamId>;
49
- addTeam: Sequelize.BelongsToManyAddAssociationMixin<TeamModel, TeamId>;
50
- addTeams: Sequelize.BelongsToManyAddAssociationsMixin<TeamModel, TeamId>;
51
- createTeam: Sequelize.BelongsToManyCreateAssociationMixin<TeamModel>;
52
- removeTeam: Sequelize.BelongsToManyRemoveAssociationMixin<TeamModel, TeamId>;
53
- removeTeams: Sequelize.BelongsToManyRemoveAssociationsMixin<TeamModel, TeamId>;
54
- hasTeam: Sequelize.BelongsToManyHasAssociationMixin<TeamModel, TeamId>;
55
- hasTeams: Sequelize.BelongsToManyHasAssociationsMixin<TeamModel, TeamId>;
56
- countTeams: Sequelize.BelongsToManyCountAssociationsMixin;
36
+ getTeams: Sequelize.HasManyGetAssociationsMixin<TeamModel>;
37
+ setTeams: Sequelize.HasManySetAssociationsMixin<TeamModel, TeamId>;
38
+ addTeam: Sequelize.HasManyAddAssociationMixin<TeamModel, TeamId>;
39
+ addTeams: Sequelize.HasManyAddAssociationsMixin<TeamModel, TeamId>;
40
+ createTeam: Sequelize.HasManyCreateAssociationMixin<TeamModel>;
41
+ removeTeam: Sequelize.HasManyRemoveAssociationMixin<TeamModel, TeamId>;
42
+ removeTeams: Sequelize.HasManyRemoveAssociationsMixin<TeamModel, TeamId>;
43
+ hasTeam: Sequelize.HasManyHasAssociationMixin<TeamModel, TeamId>;
44
+ hasTeams: Sequelize.HasManyHasAssociationsMixin<TeamModel, TeamId>;
45
+ countTeams: Sequelize.HasManyCountAssociationsMixin;
57
46
  static initModel(sequelize: Sequelize.Sequelize): typeof DivisionModel;
58
47
  }
@@ -1,5 +1,4 @@
1
1
  export * from './box-score';
2
- export * from './coach';
3
2
  export * from './competition';
4
3
  export * from './competition-champion';
5
4
  export * from './competition-match';
@@ -11,7 +10,6 @@ export * from './iteration';
11
10
  export * from './league';
12
11
  export * from './division';
13
12
  export * from './division-season';
14
- export * from './division-teams';
15
13
  export * from './match';
16
14
  export * from './match-rating';
17
15
  export * from './match-result';
@@ -23,3 +21,4 @@ export * from './rally';
23
21
  export * from './set-position';
24
22
  export * from './team';
25
23
  export * from './user';
24
+ export * from './tactics';
@@ -15,7 +15,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./box-score"), exports);
18
- __exportStar(require("./coach"), exports);
19
18
  __exportStar(require("./competition"), exports);
20
19
  __exportStar(require("./competition-champion"), exports);
21
20
  __exportStar(require("./competition-match"), exports);
@@ -27,7 +26,6 @@ __exportStar(require("./iteration"), exports);
27
26
  __exportStar(require("./league"), exports);
28
27
  __exportStar(require("./division"), exports);
29
28
  __exportStar(require("./division-season"), exports);
30
- __exportStar(require("./division-teams"), exports);
31
29
  __exportStar(require("./match"), exports);
32
30
  __exportStar(require("./match-rating"), exports);
33
31
  __exportStar(require("./match-result"), exports);
@@ -39,3 +37,4 @@ __exportStar(require("./rally"), exports);
39
37
  __exportStar(require("./set-position"), exports);
40
38
  __exportStar(require("./team"), exports);
41
39
  __exportStar(require("./user"), exports);
40
+ __exportStar(require("./tactics"), exports);
@@ -0,0 +1,30 @@
1
+ import * as Sequelize from 'sequelize';
2
+ import { Model, Optional } from 'sequelize';
3
+ import { TeamId, TeamModel } from '.';
4
+ export interface TacticsAttributes {
5
+ tactics_id: string;
6
+ formation: FormationType;
7
+ substitution_tolerance: number;
8
+ }
9
+ export type FormationType = '4-2' | '5-1' | '6-2';
10
+ export type TacticsPk = 'tactics_id';
11
+ export type TacticsId = TacticsModel[TacticsPk];
12
+ export type TacticsOptionalAttributes = 'substitution_tolerance';
13
+ export type TacticsCreationAttributes = Optional<TacticsAttributes, TacticsOptionalAttributes>;
14
+ export declare class TacticsModel extends Model<TacticsAttributes, TacticsCreationAttributes> implements TacticsAttributes {
15
+ tactics_id: string;
16
+ formation: FormationType;
17
+ substitution_tolerance: number;
18
+ Teams: TeamModel[];
19
+ getTeams: Sequelize.HasManyGetAssociationsMixin<TeamModel>;
20
+ setTeams: Sequelize.HasManySetAssociationsMixin<TeamModel, TeamId>;
21
+ addTeam: Sequelize.HasManyAddAssociationMixin<TeamModel, TeamId>;
22
+ addTeams: Sequelize.HasManyAddAssociationsMixin<TeamModel, TeamId>;
23
+ createTeam: Sequelize.HasManyCreateAssociationMixin<TeamModel>;
24
+ removeTeam: Sequelize.HasManyRemoveAssociationMixin<TeamModel, TeamId>;
25
+ removeTeams: Sequelize.HasManyRemoveAssociationsMixin<TeamModel, TeamId>;
26
+ hasTeam: Sequelize.HasManyHasAssociationMixin<TeamModel, TeamId>;
27
+ hasTeams: Sequelize.HasManyHasAssociationsMixin<TeamModel, TeamId>;
28
+ countTeams: Sequelize.HasManyCountAssociationsMixin;
29
+ static initModel(sequelize: Sequelize.Sequelize): typeof TacticsModel;
30
+ }
@@ -1,14 +1,15 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CoachModel = void 0;
3
+ exports.TacticsModel = void 0;
4
4
  const sequelize_1 = require("sequelize");
5
- class CoachModel extends sequelize_1.Model {
5
+ class TacticsModel extends sequelize_1.Model {
6
6
  static initModel(sequelize) {
7
- return CoachModel.init({
8
- coach_id: {
7
+ return TacticsModel.init({
8
+ tactics_id: {
9
9
  type: sequelize_1.DataTypes.UUID,
10
10
  allowNull: false,
11
- primaryKey: true
11
+ primaryKey: true,
12
+ field: 'coach_id'
12
13
  },
13
14
  formation: {
14
15
  type: sequelize_1.DataTypes.ENUM('4-2', '5-1', '6-2'),
@@ -18,31 +19,15 @@ class CoachModel extends sequelize_1.Model {
18
19
  type: sequelize_1.DataTypes.REAL,
19
20
  allowNull: false,
20
21
  defaultValue: 0
21
- },
22
- first_name: {
23
- type: sequelize_1.DataTypes.STRING,
24
- allowNull: false
25
- },
26
- last_name: {
27
- type: sequelize_1.DataTypes.STRING,
28
- allowNull: false
29
- },
30
- country_id: {
31
- type: sequelize_1.DataTypes.UUID,
32
- allowNull: false,
33
- references: {
34
- model: 'Country',
35
- key: 'country_id'
36
- }
37
22
  }
38
23
  }, {
39
24
  sequelize,
40
- tableName: 'Coach',
25
+ tableName: 'Tactics',
41
26
  schema: 'public',
42
27
  timestamps: false,
43
28
  indexes: [
44
29
  {
45
- name: 'Coach_pk',
30
+ name: 'Tactics_pk',
46
31
  unique: true,
47
32
  fields: [
48
33
  { name: 'coach_id' }
@@ -52,4 +37,4 @@ class CoachModel extends sequelize_1.Model {
52
37
  });
53
38
  }
54
39
  }
55
- exports.CoachModel = CoachModel;
40
+ exports.TacticsModel = TacticsModel;
@@ -1,17 +1,17 @@
1
1
  import * as Sequelize from 'sequelize';
2
2
  import { Model, Optional } from 'sequelize';
3
- import { CoachAttributes, CoachId, CoachModel, CompetitionChampionId, CompetitionChampionModel, CompetitionId, CompetitionModel, CompetitionTeamsId, CompetitionTeamsModel, CountryId, CountryModel, DraftPickId, DraftPickModel, DivisionAttributes, DivisionId, DivisionModel, DivisionTeamsAttributes, DivisionTeamsId, DivisionTeamsModel, MatchId, MatchModel, MatchRatingId, MatchRatingModel, PlayerAttributes, PlayerId, PlayerModel, PlayerTeamId, PlayerTeamModel, RallyId, RallyModel } from '.';
3
+ import { TacticsAttributes, TacticsId, TacticsModel, CompetitionChampionId, CompetitionChampionModel, CompetitionId, CompetitionModel, CompetitionTeamsId, CompetitionTeamsModel, CountryId, CountryModel, DraftPickId, DraftPickModel, DivisionAttributes, DivisionId, DivisionModel, MatchId, MatchModel, MatchRatingId, MatchRatingModel, PlayerAttributes, PlayerId, PlayerModel, PlayerTeamId, PlayerTeamModel, RallyId, RallyModel } from '.';
4
4
  export interface TeamAttributes {
5
5
  team_id: string;
6
6
  name: string;
7
7
  short_name: string;
8
8
  rating: number;
9
- coach_id?: string;
9
+ tactics_id?: string;
10
10
  country_id?: string;
11
- coach?: CoachAttributes;
11
+ division_id: string;
12
+ tactics?: TacticsAttributes;
12
13
  Players?: PlayerAttributes[];
13
- DivisionTeams?: DivisionTeamsAttributes;
14
- Divisions?: DivisionAttributes[];
14
+ Division?: DivisionAttributes;
15
15
  }
16
16
  export type TeamPk = 'team_id';
17
17
  export type TeamId = TeamModel[TeamPk];
@@ -19,15 +19,16 @@ export type TeamOptionalAttributes = 'rating';
19
19
  export type TeamCreationAttributes = Optional<TeamAttributes, TeamOptionalAttributes>;
20
20
  export declare class TeamModel extends Model<TeamAttributes, TeamCreationAttributes> implements TeamAttributes {
21
21
  team_id: string;
22
- coach_id: string;
22
+ tactics_id: string;
23
23
  name: string;
24
24
  short_name: string;
25
25
  country_id: string;
26
26
  rating: number;
27
- coach: CoachModel;
28
- getCoach: Sequelize.BelongsToGetAssociationMixin<CoachModel>;
29
- setCoach: Sequelize.BelongsToSetAssociationMixin<CoachModel, CoachId>;
30
- createCoach: Sequelize.BelongsToCreateAssociationMixin<CoachModel>;
27
+ division_id: string;
28
+ tactics: TacticsModel;
29
+ getTactics: Sequelize.BelongsToGetAssociationMixin<TacticsModel>;
30
+ setTactics: Sequelize.BelongsToSetAssociationMixin<TacticsModel, TacticsId>;
31
+ createTactics: Sequelize.BelongsToCreateAssociationMixin<TacticsModel>;
31
32
  country: CountryModel;
32
33
  getCountry: Sequelize.BelongsToGetAssociationMixin<CountryModel>;
33
34
  setCountry: Sequelize.BelongsToSetAssociationMixin<CountryModel, CountryId>;
@@ -109,21 +110,10 @@ export declare class TeamModel extends Model<TeamAttributes, TeamCreationAttribu
109
110
  hasRatingMatch: Sequelize.BelongsToManyHasAssociationMixin<MatchModel, MatchId>;
110
111
  hasRatingMatches: Sequelize.BelongsToManyHasAssociationsMixin<MatchModel, MatchId>;
111
112
  countRatingMatches: Sequelize.BelongsToManyCountAssociationsMixin;
112
- DivisionTeams: DivisionTeamsModel;
113
- getDivisionTeams: Sequelize.HasOneGetAssociationMixin<DivisionTeamsModel>;
114
- setDivisionTeams: Sequelize.HasOneSetAssociationMixin<DivisionTeamsModel, DivisionTeamsId>;
115
- createDivisionTeams: Sequelize.HasOneCreateAssociationMixin<DivisionTeamsModel>;
116
- Divisions: DivisionModel[];
117
- getDivisions: Sequelize.BelongsToManyGetAssociationsMixin<DivisionModel>;
118
- setDivisions: Sequelize.BelongsToManySetAssociationsMixin<DivisionModel, DivisionId>;
119
- addDivision: Sequelize.BelongsToManyAddAssociationMixin<DivisionModel, DivisionId>;
120
- addDivisions: Sequelize.BelongsToManyAddAssociationsMixin<DivisionModel, DivisionId>;
121
- createDivision: Sequelize.BelongsToManyCreateAssociationMixin<DivisionModel>;
122
- removeDivision: Sequelize.BelongsToManyRemoveAssociationMixin<DivisionModel, DivisionId>;
123
- removeDivisions: Sequelize.BelongsToManyRemoveAssociationsMixin<DivisionModel, DivisionId>;
124
- hasDivision: Sequelize.BelongsToManyHasAssociationMixin<DivisionModel, DivisionId>;
125
- hasDivisions: Sequelize.BelongsToManyHasAssociationsMixin<DivisionModel, DivisionId>;
126
- countDivisions: Sequelize.BelongsToManyCountAssociationsMixin;
113
+ Division: DivisionModel;
114
+ getDivision: Sequelize.BelongsToGetAssociationMixin<DivisionModel>;
115
+ setDivision: Sequelize.BelongsToSetAssociationMixin<DivisionModel, DivisionId>;
116
+ createDivision: Sequelize.BelongsToCreateAssociationMixin<DivisionModel>;
127
117
  MatchRatings: MatchRatingModel[];
128
118
  getMatchRatings: Sequelize.HasManyGetAssociationsMixin<MatchRatingModel>;
129
119
  setMatchRatings: Sequelize.HasManySetAssociationsMixin<MatchRatingModel, MatchRatingId>;
@@ -10,11 +10,11 @@ class TeamModel extends sequelize_1.Model {
10
10
  allowNull: false,
11
11
  primaryKey: true
12
12
  },
13
- coach_id: {
13
+ tactics_id: {
14
14
  type: sequelize_1.DataTypes.UUID,
15
15
  allowNull: false,
16
16
  references: {
17
- model: 'Coach',
17
+ model: 'Tactics',
18
18
  key: 'coach_id'
19
19
  }
20
20
  },
@@ -34,6 +34,14 @@ class TeamModel extends sequelize_1.Model {
34
34
  key: 'country_id'
35
35
  }
36
36
  },
37
+ division_id: {
38
+ type: sequelize_1.DataTypes.UUID,
39
+ allowNull: false,
40
+ references: {
41
+ model: 'Division',
42
+ key: 'division_id'
43
+ }
44
+ },
37
45
  rating: {
38
46
  type: sequelize_1.DataTypes.REAL,
39
47
  allowNull: false,
@@ -1,5 +1,5 @@
1
1
  import { DivisionAttributes, DivisionModel } from '../models';
2
2
  import { Division } from '../../service';
3
- declare function transformToAttributes(division: Division, leagueId: string): DivisionAttributes;
3
+ declare function transformToAttributes(division: Division): DivisionAttributes;
4
4
  declare function transformToObject(model: DivisionModel): Division;
5
5
  export { transformToObject as transformToDivision, transformToAttributes as transformFromDivision };
@@ -3,12 +3,20 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.transformFromDivision = exports.transformToDivision = void 0;
4
4
  const service_1 = require("../../service");
5
5
  const season_1 = require("./season");
6
- function transformToAttributes(division, leagueId) {
6
+ const team_1 = require("./team");
7
+ function transformToAttributes(division) {
8
+ const Teams = (division.teams ?? []).map(team_1.transformFromTeam);
9
+ const DivisionSeasons = division.seasons.map(season => ({
10
+ division_id: division.id,
11
+ competition_id: season.id
12
+ }));
7
13
  return {
8
14
  division_id: division.id,
9
- league_id: leagueId,
15
+ league_id: division.leagueId,
10
16
  tier: division.tier,
11
- name: division.name
17
+ name: division.name,
18
+ DivisionSeasons,
19
+ Teams
12
20
  };
13
21
  }
14
22
  exports.transformFromDivision = transformToAttributes;
@@ -17,7 +25,9 @@ function transformToObject(model) {
17
25
  id: model.division_id,
18
26
  name: model.name,
19
27
  tier: model.tier,
20
- seasons: (model.DivisionSeasons ?? []).map((ds) => (0, season_1.transformToSeason)(ds.competition))
28
+ leagueId: model.league_id,
29
+ seasons: (model.DivisionSeasons ?? []).map((ds) => (0, season_1.transformToSeason)(ds.competition)),
30
+ teams: model.Teams != null ? model.Teams.map(team_1.transformToTeam) : undefined
21
31
  });
22
32
  }
23
33
  exports.transformToDivision = transformToObject;
@@ -1,4 +1,3 @@
1
- export * from './coach';
2
1
  export * from './country';
3
2
  export * from './court-position';
4
3
  export * from './formation';
@@ -22,3 +21,4 @@ export * from './season-match';
22
21
  export * from './player-team';
23
22
  export * from './match-rating';
24
23
  export * from './team';
24
+ export * from './tactics';
@@ -14,7 +14,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./coach"), exports);
18
17
  __exportStar(require("./country"), exports);
19
18
  __exportStar(require("./court-position"), exports);
20
19
  __exportStar(require("./formation"), exports);
@@ -38,3 +37,4 @@ __exportStar(require("./season-match"), exports);
38
37
  __exportStar(require("./player-team"), exports);
39
38
  __exportStar(require("./match-rating"), exports);
40
39
  __exportStar(require("./team"), exports);
40
+ __exportStar(require("./tactics"), exports);
@@ -4,7 +4,7 @@ exports.transformFromLeague = exports.transformToLeague = void 0;
4
4
  const service_1 = require("../../service");
5
5
  const _1 = require(".");
6
6
  function transformToAttributes(league) {
7
- const Divisions = league.divisions?.map(div => (0, _1.transformFromDivision)(div, league.id));
7
+ const Divisions = league.divisions?.map((division) => (0, _1.transformFromDivision)(division));
8
8
  return {
9
9
  league_id: league.id,
10
10
  country_id: league.country.id,
@@ -0,0 +1,5 @@
1
+ import { TacticsAttributes, TacticsModel } from '../models';
2
+ import { Tactics } from '../../service';
3
+ declare function transformToAttributes(tactics: Tactics): TacticsAttributes;
4
+ declare function transformToObject(model: TacticsModel): Tactics;
5
+ export { transformToObject as transformToTactics, transformToAttributes as transformFromTactics };
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.transformFromTactics = exports.transformToTactics = void 0;
4
+ const _1 = require(".");
5
+ const service_1 = require("../../service");
6
+ function transformToAttributes(tactics) {
7
+ return {
8
+ tactics_id: tactics.id,
9
+ substitution_tolerance: tactics.substitutionTolerance ?? 0,
10
+ formation: (0, _1.transformFromFormation)(tactics.formation)
11
+ };
12
+ }
13
+ exports.transformFromTactics = transformToAttributes;
14
+ function transformToObject(model) {
15
+ return new service_1.Tactics({
16
+ id: model.tactics_id,
17
+ substitutionTolerance: model.substitution_tolerance,
18
+ formation: (0, _1.transformToFormation)(model.formation)
19
+ });
20
+ }
21
+ exports.transformToTactics = transformToObject;
@@ -8,10 +8,11 @@ function transformToAttributes(team) {
8
8
  team_id: team.id,
9
9
  name: team.name,
10
10
  short_name: team.shortName,
11
- coach_id: team.coach?.id,
11
+ tactics_id: team.tactics?.id,
12
12
  country_id: team.country?.id,
13
- coach: team.coach != null ? (0, _1.transformFromCoach)(team.coach) : undefined,
14
- rating: team.rating
13
+ tactics: team.tactics != null ? (0, _1.transformFromTactics)(team.tactics) : undefined,
14
+ rating: team.rating,
15
+ division_id: team.divisionId
15
16
  };
16
17
  }
17
18
  exports.transformFromTeam = transformToAttributes;
@@ -21,9 +22,10 @@ function transformToObject(model) {
21
22
  name: model.name,
22
23
  shortName: model.short_name,
23
24
  country: model.country != null ? (0, _1.transformToCountry)(model.country) : undefined,
24
- coach: model.coach != null ? (0, _1.transformToCoach)(model.coach) : undefined,
25
+ tactics: model.tactics != null ? (0, _1.transformToTactics)(model.tactics) : undefined,
25
26
  roster: (model.PlayerTeams ?? []).map((pt) => (0, _1.transformToPlayer)(pt.player)),
26
- rating: model.rating
27
+ rating: model.rating,
28
+ divisionId: model.division_id
27
29
  });
28
30
  }
29
31
  exports.transformToTeam = transformToObject;
@@ -1,2 +1,2 @@
1
- export * from './coach';
1
+ export * from './tactics';
2
2
  export * from './formation';
@@ -14,5 +14,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./coach"), exports);
17
+ __exportStar(require("./tactics"), exports);
18
18
  __exportStar(require("./formation"), exports);
@@ -0,0 +1,13 @@
1
+ import { Formation } from './formation';
2
+ interface TacticsOpts {
3
+ readonly id: string;
4
+ readonly formation: Formation;
5
+ readonly substitutionTolerance?: number;
6
+ }
7
+ export declare class Tactics {
8
+ readonly id: string;
9
+ readonly formation: Formation;
10
+ readonly substitutionTolerance: number;
11
+ constructor({ id, formation, substitutionTolerance }: TacticsOpts);
12
+ }
13
+ export {};
@@ -1,15 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Coach = void 0;
3
+ exports.Tactics = void 0;
4
4
  const utils_1 = require("../utils");
5
- class Coach {
6
- constructor({ id, name, country, formation, substitutionTolerance }) {
5
+ class Tactics {
6
+ constructor({ id, formation, substitutionTolerance = 0 }) {
7
7
  (0, utils_1.validateUUID)(id);
8
8
  this.id = id;
9
- this.name = name;
10
- this.country = country;
11
9
  this.formation = formation;
12
10
  this.substitutionTolerance = substitutionTolerance;
13
11
  }
14
12
  }
15
- exports.Coach = Coach;
13
+ exports.Tactics = Tactics;
@@ -1,15 +1,20 @@
1
1
  import { Season } from './season';
2
+ import { Team } from '../team';
2
3
  interface DivisionOpts {
3
4
  readonly id: string;
4
5
  readonly name: string;
5
6
  readonly tier: number;
7
+ readonly leagueId: string;
6
8
  readonly seasons: Season[];
9
+ readonly teams?: Team[];
7
10
  }
8
11
  export declare class Division {
9
12
  readonly id: string;
10
13
  readonly name: string;
11
14
  readonly tier: number;
15
+ readonly leagueId: string;
12
16
  readonly seasons: Season[];
13
- constructor({ id, name, tier, seasons }: DivisionOpts);
17
+ readonly teams?: Team[];
18
+ constructor({ id, name, tier, seasons, teams, leagueId }: DivisionOpts);
14
19
  }
15
20
  export {};
@@ -2,11 +2,13 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Division = void 0;
4
4
  class Division {
5
- constructor({ id, name, tier, seasons }) {
5
+ constructor({ id, name, tier, seasons, teams, leagueId }) {
6
6
  this.id = id;
7
7
  this.name = name;
8
8
  this.tier = tier;
9
+ this.leagueId = leagueId;
9
10
  this.seasons = seasons;
11
+ this.teams = teams;
10
12
  }
11
13
  }
12
14
  exports.Division = Division;