volleyballsimtypes 0.0.188 → 0.0.190

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/data/init-models.js +10 -8
  2. package/dist/cjs/src/data/models/competition.d.ts +6 -6
  3. package/dist/cjs/src/data/models/division-season.d.ts +23 -0
  4. package/dist/cjs/src/data/models/{league-season.js → division-season.js} +9 -9
  5. package/dist/cjs/src/data/models/division.d.ts +35 -0
  6. package/dist/cjs/src/data/models/division.js +47 -0
  7. package/dist/cjs/src/data/models/index.d.ts +2 -1
  8. package/dist/cjs/src/data/models/index.js +2 -1
  9. package/dist/cjs/src/data/models/league.d.ts +13 -24
  10. package/dist/cjs/src/data/models/team.d.ts +1 -8
  11. package/dist/cjs/src/data/models/team.js +0 -8
  12. package/dist/cjs/src/data/transformers/division.d.ts +5 -0
  13. package/dist/cjs/src/data/transformers/division.js +23 -0
  14. package/dist/cjs/src/data/transformers/index.d.ts +1 -0
  15. package/dist/cjs/src/data/transformers/index.js +1 -0
  16. package/dist/cjs/src/data/transformers/league.js +3 -6
  17. package/dist/cjs/src/data/transformers/season.d.ts +1 -1
  18. package/dist/cjs/src/data/transformers/season.js +1 -2
  19. package/dist/cjs/src/data/transformers/team.js +0 -2
  20. package/dist/cjs/src/service/coach/formation.js +13 -13
  21. package/dist/cjs/src/service/competition/division.d.ts +15 -0
  22. package/dist/cjs/src/service/competition/division.js +12 -0
  23. package/dist/cjs/src/service/competition/index.d.ts +1 -0
  24. package/dist/cjs/src/service/competition/index.js +1 -0
  25. package/dist/cjs/src/service/competition/league.d.ts +4 -4
  26. package/dist/cjs/src/service/competition/league.js +2 -2
  27. package/dist/cjs/src/service/match/match-rating.js +13 -19
  28. package/dist/cjs/src/service/team/team.d.ts +1 -4
  29. package/dist/cjs/src/service/team/team.js +1 -2
  30. package/dist/cjs/src/service/utils/number-utils.d.ts +1 -0
  31. package/dist/cjs/src/service/utils/number-utils.js +19 -1
  32. package/dist/esm/src/data/init-models.js +11 -9
  33. package/dist/esm/src/data/models/competition.d.ts +6 -6
  34. package/dist/esm/src/data/models/division-season.d.ts +23 -0
  35. package/dist/esm/src/data/models/{league-season.js → division-season.js} +7 -7
  36. package/dist/esm/src/data/models/division.d.ts +35 -0
  37. package/dist/esm/src/data/models/division.js +43 -0
  38. package/dist/esm/src/data/models/index.d.ts +2 -1
  39. package/dist/esm/src/data/models/index.js +2 -1
  40. package/dist/esm/src/data/models/league.d.ts +13 -24
  41. package/dist/esm/src/data/models/team.d.ts +1 -8
  42. package/dist/esm/src/data/models/team.js +0 -8
  43. package/dist/esm/src/data/transformers/division.d.ts +5 -0
  44. package/dist/esm/src/data/transformers/division.js +19 -0
  45. package/dist/esm/src/data/transformers/index.d.ts +1 -0
  46. package/dist/esm/src/data/transformers/index.js +1 -0
  47. package/dist/esm/src/data/transformers/league.js +4 -7
  48. package/dist/esm/src/data/transformers/season.d.ts +1 -1
  49. package/dist/esm/src/data/transformers/season.js +1 -2
  50. package/dist/esm/src/data/transformers/team.js +1 -3
  51. package/dist/esm/src/service/coach/formation.js +13 -13
  52. package/dist/esm/src/service/competition/division.d.ts +15 -0
  53. package/dist/esm/src/service/competition/division.js +8 -0
  54. package/dist/esm/src/service/competition/index.d.ts +1 -0
  55. package/dist/esm/src/service/competition/index.js +1 -0
  56. package/dist/esm/src/service/competition/league.d.ts +4 -4
  57. package/dist/esm/src/service/competition/league.js +2 -2
  58. package/dist/esm/src/service/match/match-rating.js +14 -20
  59. package/dist/esm/src/service/team/team.d.ts +1 -4
  60. package/dist/esm/src/service/team/team.js +1 -2
  61. package/dist/esm/src/service/utils/number-utils.d.ts +1 -0
  62. package/dist/esm/src/service/utils/number-utils.js +17 -0
  63. package/package.json +1 -1
  64. package/dist/cjs/src/data/models/league-season.d.ts +0 -23
  65. package/dist/esm/src/data/models/league-season.d.ts +0 -23
@@ -13,7 +13,8 @@ function initModels(sequelize) {
13
13
  const DraftPick = models_1.DraftPickModel.initModel(sequelize);
14
14
  const Iteration = models_1.IterationModel.initModel(sequelize);
15
15
  const League = models_1.LeagueModel.initModel(sequelize);
16
- const LeagueSeason = models_1.LeagueSeasonModel.initModel(sequelize);
16
+ const Division = models_1.DivisionModel.initModel(sequelize);
17
+ const DivisionSeason = models_1.DivisionSeasonModel.initModel(sequelize);
17
18
  const Match = models_1.MatchModel.initModel(sequelize);
18
19
  const MatchRating = models_1.MatchRatingModel.initModel(sequelize);
19
20
  const MatchResult = models_1.MatchResultModel.initModel(sequelize);
@@ -32,7 +33,7 @@ function initModels(sequelize) {
32
33
  Competition.hasMany(CompetitionMatch, { as: 'CompetitionMatches', foreignKey: 'competition_id' });
33
34
  Competition.hasMany(CompetitionTeams, { as: 'CompetitionTeams', foreignKey: 'competition_id' });
34
35
  Competition.hasOne(CompetitionChampion, { as: 'CompetitionChampion', foreignKey: 'competition_id' });
35
- Competition.hasOne(LeagueSeason, { as: 'LeagueSeason', foreignKey: 'competition_id' });
36
+ Competition.hasOne(DivisionSeason, { as: 'DivisionSeason', foreignKey: 'competition_id' });
36
37
  Competition.belongsToMany(Team, {
37
38
  as: 'Teams',
38
39
  through: CompetitionTeams,
@@ -55,10 +56,11 @@ function initModels(sequelize) {
55
56
  DraftPick.belongsTo(Team, { as: 'team', foreignKey: 'team_id' });
56
57
  Iteration.hasMany(Competition, { as: 'Competitions', foreignKey: 'iteration' });
57
58
  League.belongsTo(Country, { as: 'country', foreignKey: 'country_id' });
58
- League.hasMany(LeagueSeason, { as: 'LeagueSeasons', foreignKey: 'league_id' });
59
- League.hasMany(Team, { as: 'Teams', foreignKey: 'league_id' });
60
- LeagueSeason.belongsTo(Competition, { as: 'competition', foreignKey: 'competition_id' });
61
- LeagueSeason.belongsTo(League, { as: 'league', foreignKey: 'league_id' });
59
+ League.hasMany(Division, { as: 'Divisions', foreignKey: 'league_id' });
60
+ Division.belongsTo(League, { as: 'league', foreignKey: 'league_id' });
61
+ Division.hasMany(DivisionSeason, { as: 'DivisionSeasons', foreignKey: 'division_id' });
62
+ DivisionSeason.belongsTo(Competition, { as: 'competition', foreignKey: 'competition_id' });
63
+ DivisionSeason.belongsTo(Division, { as: 'division', foreignKey: 'division_id' });
62
64
  Match.belongsTo(Team, { as: 'AwayTeam', foreignKey: 'away_team' });
63
65
  Match.belongsTo(Team, { as: 'HomeTeam', foreignKey: 'home_team' });
64
66
  Match.belongsToMany(Team, {
@@ -126,7 +128,6 @@ function initModels(sequelize) {
126
128
  SetPosition.belongsTo(Player, { as: 'player', foreignKey: 'player_id' });
127
129
  Team.belongsTo(Coach, { as: 'coach', foreignKey: 'coach_id' });
128
130
  Team.belongsTo(Country, { as: 'country', foreignKey: 'country_id' });
129
- Team.belongsTo(League, { as: 'league', foreignKey: 'league_id' });
130
131
  Team.belongsToMany(Competition, {
131
132
  as: 'Competitions',
132
133
  through: CompetitionTeams,
@@ -161,11 +162,12 @@ function initModels(sequelize) {
161
162
  CompetitionMatch,
162
163
  CompetitionTeams,
163
164
  Country,
165
+ Division,
164
166
  Draft,
165
167
  DraftPick,
166
168
  Iteration,
167
169
  League,
168
- LeagueSeason,
170
+ DivisionSeason,
169
171
  Match,
170
172
  MatchRating,
171
173
  MatchResult,
@@ -1,13 +1,13 @@
1
1
  import * as Sequelize from 'sequelize';
2
2
  import { Model } from 'sequelize';
3
- import { CompetitionChampionAttributes, CompetitionChampionId, CompetitionChampionModel, CompetitionMatchAttributes, CompetitionMatchId, CompetitionMatchModel, CompetitionTeamsAttributes, CompetitionTeamsId, CompetitionTeamsModel, IterationId, IterationModel, LeagueSeasonAttributes, LeagueSeasonId, LeagueSeasonModel, TeamId, TeamModel } from '.';
3
+ import { CompetitionChampionAttributes, CompetitionChampionId, CompetitionChampionModel, CompetitionMatchAttributes, CompetitionMatchId, CompetitionMatchModel, CompetitionTeamsAttributes, CompetitionTeamsId, CompetitionTeamsModel, DivisionSeasonAttributes, DivisionSeasonId, DivisionSeasonModel, IterationId, IterationModel, TeamId, TeamModel } from '.';
4
4
  import { Status } from '../common';
5
5
  export interface CompetitionAttributes {
6
6
  competition_id: string;
7
7
  iteration: number;
8
8
  status: Status;
9
9
  type: CompetitionType;
10
- LeagueSeason?: LeagueSeasonAttributes;
10
+ DivisionSeason?: DivisionSeasonAttributes;
11
11
  CompetitionChampion?: CompetitionChampionAttributes;
12
12
  CompetitionMatches?: CompetitionMatchAttributes[];
13
13
  CompetitionTeams?: CompetitionTeamsAttributes[];
@@ -47,10 +47,10 @@ export declare class CompetitionModel extends Model<CompetitionAttributes, Compe
47
47
  hasCompetitionTeam: Sequelize.HasManyHasAssociationMixin<CompetitionTeamsModel, CompetitionTeamsId>;
48
48
  hasCompetitionTeams: Sequelize.HasManyHasAssociationsMixin<CompetitionTeamsModel, CompetitionTeamsId>;
49
49
  countCompetitionTeams: Sequelize.HasManyCountAssociationsMixin;
50
- LeagueSeason: LeagueSeasonModel;
51
- getLeagueSeason: Sequelize.HasOneGetAssociationMixin<LeagueSeasonModel>;
52
- setLeagueSeason: Sequelize.HasOneSetAssociationMixin<LeagueSeasonModel, LeagueSeasonId>;
53
- createLeagueSeason: Sequelize.HasOneCreateAssociationMixin<LeagueSeasonModel>;
50
+ DivisionSeason: DivisionSeasonModel;
51
+ getDivisionSeason: Sequelize.HasOneGetAssociationMixin<DivisionSeasonModel>;
52
+ setDivisionSeason: Sequelize.HasOneSetAssociationMixin<DivisionSeasonModel, DivisionSeasonId>;
53
+ createDivisionSeason: Sequelize.HasOneCreateAssociationMixin<DivisionSeasonModel>;
54
54
  Teams: TeamModel[];
55
55
  getTeams: Sequelize.BelongsToManyGetAssociationsMixin<TeamModel>;
56
56
  setTeams: Sequelize.BelongsToManySetAssociationsMixin<TeamModel, TeamId>;
@@ -0,0 +1,23 @@
1
+ import * as Sequelize from 'sequelize';
2
+ import { Model } from 'sequelize';
3
+ import { CompetitionId, CompetitionModel, DivisionId, DivisionModel } from '.';
4
+ export interface DivisionSeasonAttributes {
5
+ division_id: string;
6
+ competition_id: string;
7
+ }
8
+ export type DivisionSeasonPk = 'competition_id';
9
+ export type DivisionSeasonId = DivisionSeasonModel[DivisionSeasonPk];
10
+ export type DivisionSeasonCreationAttributes = DivisionSeasonAttributes;
11
+ export declare class DivisionSeasonModel extends Model<DivisionSeasonAttributes, DivisionSeasonCreationAttributes> implements DivisionSeasonAttributes {
12
+ division_id: string;
13
+ competition_id: string;
14
+ competition: CompetitionModel;
15
+ getCompetition: Sequelize.BelongsToGetAssociationMixin<CompetitionModel>;
16
+ setCompetition: Sequelize.BelongsToSetAssociationMixin<CompetitionModel, CompetitionId>;
17
+ createCompetition: Sequelize.BelongsToCreateAssociationMixin<CompetitionModel>;
18
+ division: DivisionModel;
19
+ getDivision: Sequelize.BelongsToGetAssociationMixin<DivisionModel>;
20
+ setDivision: Sequelize.BelongsToSetAssociationMixin<DivisionModel, DivisionId>;
21
+ createDivision: Sequelize.BelongsToCreateAssociationMixin<DivisionModel>;
22
+ static initModel(sequelize: Sequelize.Sequelize): typeof DivisionSeasonModel;
23
+ }
@@ -1,16 +1,16 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.LeagueSeasonModel = void 0;
3
+ exports.DivisionSeasonModel = void 0;
4
4
  const sequelize_1 = require("sequelize");
5
- class LeagueSeasonModel extends sequelize_1.Model {
5
+ class DivisionSeasonModel extends sequelize_1.Model {
6
6
  static initModel(sequelize) {
7
- return LeagueSeasonModel.init({
8
- league_id: {
7
+ return DivisionSeasonModel.init({
8
+ division_id: {
9
9
  type: sequelize_1.DataTypes.UUID,
10
10
  allowNull: false,
11
11
  references: {
12
- model: 'League',
13
- key: 'league_id'
12
+ model: 'Division',
13
+ key: 'division_id'
14
14
  }
15
15
  },
16
16
  competition_id: {
@@ -24,15 +24,15 @@ class LeagueSeasonModel extends sequelize_1.Model {
24
24
  }
25
25
  }, {
26
26
  sequelize,
27
- tableName: 'LeagueSeason',
27
+ tableName: 'DivisionSeason',
28
28
  schema: 'public',
29
29
  timestamps: false,
30
30
  indexes: [{
31
- name: 'leagueseason_pk',
31
+ name: 'divisionseason_pk',
32
32
  unique: true,
33
33
  fields: [{ name: 'competition_id' }]
34
34
  }]
35
35
  });
36
36
  }
37
37
  }
38
- exports.LeagueSeasonModel = LeagueSeasonModel;
38
+ exports.DivisionSeasonModel = DivisionSeasonModel;
@@ -0,0 +1,35 @@
1
+ import * as Sequelize from 'sequelize';
2
+ import { Model } from 'sequelize';
3
+ import { DivisionSeasonAttributes, DivisionSeasonId, DivisionSeasonModel, LeagueId, LeagueModel } from '.';
4
+ export interface DivisionAttributes {
5
+ division_id: string;
6
+ league_id: string;
7
+ tier: number;
8
+ name: string;
9
+ DivisionSeasons?: DivisionSeasonAttributes[];
10
+ }
11
+ export type DivisionPk = 'division_id';
12
+ export type DivisionId = DivisionModel[DivisionPk];
13
+ export type DivisionCreationAttributes = DivisionAttributes;
14
+ export declare class DivisionModel extends Model<DivisionAttributes, DivisionCreationAttributes> implements DivisionAttributes {
15
+ division_id: string;
16
+ league_id: string;
17
+ tier: number;
18
+ name: string;
19
+ league: LeagueModel;
20
+ getLeague: Sequelize.BelongsToGetAssociationMixin<LeagueModel>;
21
+ setLeague: Sequelize.BelongsToSetAssociationMixin<LeagueModel, LeagueId>;
22
+ createLeague: Sequelize.BelongsToCreateAssociationMixin<LeagueModel>;
23
+ DivisionSeasons: DivisionSeasonModel[];
24
+ getDivisionSeasons: Sequelize.HasManyGetAssociationsMixin<DivisionSeasonModel>;
25
+ setDivisionSeasons: Sequelize.HasManySetAssociationsMixin<DivisionSeasonModel, DivisionSeasonId>;
26
+ addDivisionSeason: Sequelize.HasManyAddAssociationMixin<DivisionSeasonModel, DivisionSeasonId>;
27
+ addDivisionSeasons: Sequelize.HasManyAddAssociationsMixin<DivisionSeasonModel, DivisionSeasonId>;
28
+ createDivisionSeason: Sequelize.HasManyCreateAssociationMixin<DivisionSeasonModel>;
29
+ removeDivisionSeason: Sequelize.HasManyRemoveAssociationMixin<DivisionSeasonModel, DivisionSeasonId>;
30
+ removeDivisionSeasons: Sequelize.HasManyRemoveAssociationsMixin<DivisionSeasonModel, DivisionSeasonId>;
31
+ hasDivisionSeason: Sequelize.HasManyHasAssociationMixin<DivisionSeasonModel, DivisionSeasonId>;
32
+ hasDivisionSeasons: Sequelize.HasManyHasAssociationsMixin<DivisionSeasonModel, DivisionSeasonId>;
33
+ countDivisionSeasons: Sequelize.HasManyCountAssociationsMixin;
34
+ static initModel(sequelize: Sequelize.Sequelize): typeof DivisionModel;
35
+ }
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DivisionModel = void 0;
4
+ const sequelize_1 = require("sequelize");
5
+ class DivisionModel extends sequelize_1.Model {
6
+ static initModel(sequelize) {
7
+ return DivisionModel.init({
8
+ division_id: {
9
+ type: sequelize_1.DataTypes.UUID,
10
+ allowNull: false,
11
+ primaryKey: true
12
+ },
13
+ league_id: {
14
+ type: sequelize_1.DataTypes.UUID,
15
+ allowNull: false,
16
+ references: {
17
+ model: 'League',
18
+ key: 'league_id'
19
+ }
20
+ },
21
+ tier: {
22
+ type: sequelize_1.DataTypes.INTEGER,
23
+ allowNull: false
24
+ },
25
+ name: {
26
+ type: sequelize_1.DataTypes.STRING,
27
+ allowNull: false,
28
+ unique: true
29
+ }
30
+ }, {
31
+ sequelize,
32
+ tableName: 'Division',
33
+ schema: 'public',
34
+ timestamps: false,
35
+ indexes: [{
36
+ name: 'Division_pk',
37
+ unique: true,
38
+ fields: [{ name: 'division_id' }]
39
+ }, {
40
+ name: 'Division_name_key',
41
+ unique: true,
42
+ fields: [{ name: 'name' }]
43
+ }]
44
+ });
45
+ }
46
+ }
47
+ exports.DivisionModel = DivisionModel;
@@ -9,7 +9,8 @@ export * from './draft';
9
9
  export * from './draft-pick';
10
10
  export * from './iteration';
11
11
  export * from './league';
12
- export * from './league-season';
12
+ export * from './division';
13
+ export * from './division-season';
13
14
  export * from './match';
14
15
  export * from './match-rating';
15
16
  export * from './match-result';
@@ -25,7 +25,8 @@ __exportStar(require("./draft"), exports);
25
25
  __exportStar(require("./draft-pick"), exports);
26
26
  __exportStar(require("./iteration"), exports);
27
27
  __exportStar(require("./league"), exports);
28
- __exportStar(require("./league-season"), exports);
28
+ __exportStar(require("./division"), exports);
29
+ __exportStar(require("./division-season"), exports);
29
30
  __exportStar(require("./match"), exports);
30
31
  __exportStar(require("./match-rating"), exports);
31
32
  __exportStar(require("./match-result"), exports);
@@ -1,11 +1,11 @@
1
1
  import * as Sequelize from 'sequelize';
2
2
  import { Model } from 'sequelize';
3
- import { CountryId, CountryModel, LeagueSeasonAttributes, LeagueSeasonId, LeagueSeasonModel, TeamId, TeamModel } from '.';
3
+ import { CountryId, CountryModel, DivisionAttributes, DivisionId, DivisionModel } from '.';
4
4
  export interface LeagueAttributes {
5
5
  league_id: string;
6
6
  country_id: string;
7
7
  name: string;
8
- LeagueSeasons?: LeagueSeasonAttributes[];
8
+ Divisions?: DivisionAttributes[];
9
9
  }
10
10
  export type LeaguePk = 'league_id';
11
11
  export type LeagueId = LeagueModel[LeaguePk];
@@ -18,27 +18,16 @@ export declare class LeagueModel extends Model<LeagueAttributes, LeagueCreationA
18
18
  getCountry: Sequelize.BelongsToGetAssociationMixin<CountryModel>;
19
19
  setCountry: Sequelize.BelongsToSetAssociationMixin<CountryModel, CountryId>;
20
20
  createCountry: Sequelize.BelongsToCreateAssociationMixin<CountryModel>;
21
- LeagueSeasons: LeagueSeasonModel[];
22
- getLeagueSeasons: Sequelize.HasManyGetAssociationsMixin<LeagueSeasonModel>;
23
- setLeagueSeasons: Sequelize.HasManySetAssociationsMixin<LeagueSeasonModel, LeagueSeasonId>;
24
- addLeagueSeason: Sequelize.HasManyAddAssociationMixin<LeagueSeasonModel, LeagueSeasonId>;
25
- addLeagueSeasons: Sequelize.HasManyAddAssociationsMixin<LeagueSeasonModel, LeagueSeasonId>;
26
- createLeagueSeason: Sequelize.HasManyCreateAssociationMixin<LeagueSeasonModel>;
27
- removeLeagueSeason: Sequelize.HasManyRemoveAssociationMixin<LeagueSeasonModel, LeagueSeasonId>;
28
- removeLeagueSeasons: Sequelize.HasManyRemoveAssociationsMixin<LeagueSeasonModel, LeagueSeasonId>;
29
- hasLeagueSeason: Sequelize.HasManyHasAssociationMixin<LeagueSeasonModel, LeagueSeasonId>;
30
- hasLeagueSeasons: Sequelize.HasManyHasAssociationsMixin<LeagueSeasonModel, LeagueSeasonId>;
31
- countLeagueSeasons: Sequelize.HasManyCountAssociationsMixin;
32
- Teams: TeamModel[];
33
- getTeams: Sequelize.HasManyGetAssociationsMixin<TeamModel>;
34
- setTeams: Sequelize.HasManySetAssociationsMixin<TeamModel, TeamId>;
35
- addTeam: Sequelize.HasManyAddAssociationMixin<TeamModel, TeamId>;
36
- addTeams: Sequelize.HasManyAddAssociationsMixin<TeamModel, TeamId>;
37
- createTeam: Sequelize.HasManyCreateAssociationMixin<TeamModel>;
38
- removeTeam: Sequelize.HasManyRemoveAssociationMixin<TeamModel, TeamId>;
39
- removeTeams: Sequelize.HasManyRemoveAssociationsMixin<TeamModel, TeamId>;
40
- hasTeam: Sequelize.HasManyHasAssociationMixin<TeamModel, TeamId>;
41
- hasTeams: Sequelize.HasManyHasAssociationsMixin<TeamModel, TeamId>;
42
- countTeams: Sequelize.HasManyCountAssociationsMixin;
21
+ Divisions: DivisionModel[];
22
+ getDivisions: Sequelize.HasManyGetAssociationsMixin<DivisionModel>;
23
+ setDivisions: Sequelize.HasManySetAssociationsMixin<DivisionModel, DivisionId>;
24
+ addDivision: Sequelize.HasManyAddAssociationMixin<DivisionModel, DivisionId>;
25
+ addDivisions: Sequelize.HasManyAddAssociationsMixin<DivisionModel, DivisionId>;
26
+ createDivision: Sequelize.HasManyCreateAssociationMixin<DivisionModel>;
27
+ removeDivision: Sequelize.HasManyRemoveAssociationMixin<DivisionModel, DivisionId>;
28
+ removeDivisions: Sequelize.HasManyRemoveAssociationsMixin<DivisionModel, DivisionId>;
29
+ hasDivision: Sequelize.HasManyHasAssociationMixin<DivisionModel, DivisionId>;
30
+ hasDivisions: Sequelize.HasManyHasAssociationsMixin<DivisionModel, DivisionId>;
31
+ countDivisions: Sequelize.HasManyCountAssociationsMixin;
43
32
  static initModel(sequelize: Sequelize.Sequelize): typeof LeagueModel;
44
33
  }
@@ -1,16 +1,14 @@
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, LeagueAttributes, LeagueId, LeagueModel, MatchId, MatchModel, MatchRatingId, MatchRatingModel, PlayerAttributes, PlayerId, PlayerModel, PlayerTeamId, PlayerTeamModel, RallyId, RallyModel } from '.';
3
+ import { CoachAttributes, CoachId, CoachModel, CompetitionChampionId, CompetitionChampionModel, CompetitionId, CompetitionModel, CompetitionTeamsId, CompetitionTeamsModel, CountryId, CountryModel, DraftPickId, DraftPickModel, 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
9
  coach_id?: string;
10
- league_id?: string;
11
10
  country_id?: string;
12
11
  coach?: CoachAttributes;
13
- league?: LeagueAttributes;
14
12
  Players?: PlayerAttributes[];
15
13
  }
16
14
  export type TeamPk = 'team_id';
@@ -23,7 +21,6 @@ export declare class TeamModel extends Model<TeamAttributes, TeamCreationAttribu
23
21
  name: string;
24
22
  short_name: string;
25
23
  country_id: string;
26
- league_id: string;
27
24
  rating: number;
28
25
  coach: CoachModel;
29
26
  getCoach: Sequelize.BelongsToGetAssociationMixin<CoachModel>;
@@ -33,10 +30,6 @@ export declare class TeamModel extends Model<TeamAttributes, TeamCreationAttribu
33
30
  getCountry: Sequelize.BelongsToGetAssociationMixin<CountryModel>;
34
31
  setCountry: Sequelize.BelongsToSetAssociationMixin<CountryModel, CountryId>;
35
32
  createCountry: Sequelize.BelongsToCreateAssociationMixin<CountryModel>;
36
- league: LeagueModel;
37
- getLeague: Sequelize.BelongsToGetAssociationMixin<LeagueModel>;
38
- setLeague: Sequelize.BelongsToSetAssociationMixin<LeagueModel, LeagueId>;
39
- createLeague: Sequelize.BelongsToCreateAssociationMixin<LeagueModel>;
40
33
  Competitions: CompetitionModel[];
41
34
  getCompetitions: Sequelize.BelongsToManyGetAssociationsMixin<CompetitionModel>;
42
35
  setCompetitions: Sequelize.BelongsToManySetAssociationsMixin<CompetitionModel, CompetitionId>;
@@ -34,14 +34,6 @@ class TeamModel extends sequelize_1.Model {
34
34
  key: 'country_id'
35
35
  }
36
36
  },
37
- league_id: {
38
- type: sequelize_1.DataTypes.UUID,
39
- allowNull: false,
40
- references: {
41
- model: 'League',
42
- key: 'league_id'
43
- }
44
- },
45
37
  rating: {
46
38
  type: sequelize_1.DataTypes.REAL,
47
39
  allowNull: false,
@@ -0,0 +1,5 @@
1
+ import { DivisionAttributes, DivisionModel } from '../models';
2
+ import { Division } from '../../service';
3
+ declare function transformToAttributes(division: Division, leagueId: string): DivisionAttributes;
4
+ declare function transformToObject(model: DivisionModel): Division;
5
+ export { transformToObject as transformToDivision, transformToAttributes as transformFromDivision };
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.transformFromDivision = exports.transformToDivision = void 0;
4
+ const service_1 = require("../../service");
5
+ const season_1 = require("./season");
6
+ function transformToAttributes(division, leagueId) {
7
+ return {
8
+ division_id: division.id,
9
+ league_id: leagueId,
10
+ tier: division.tier,
11
+ name: division.name
12
+ };
13
+ }
14
+ exports.transformFromDivision = transformToAttributes;
15
+ function transformToObject(model) {
16
+ return new service_1.Division({
17
+ id: model.division_id,
18
+ name: model.name,
19
+ tier: model.tier,
20
+ seasons: (model.DivisionSeasons ?? []).map((ds) => (0, season_1.transformToSeason)(ds.competition))
21
+ });
22
+ }
23
+ exports.transformToDivision = transformToObject;
@@ -6,6 +6,7 @@ export * from './iteration';
6
6
  export * from './draft';
7
7
  export * from './draft-pick';
8
8
  export * from './league';
9
+ export * from './division';
9
10
  export * from './tournament';
10
11
  export * from './tournament-match';
11
12
  export * from './stage';
@@ -22,6 +22,7 @@ __exportStar(require("./iteration"), exports);
22
22
  __exportStar(require("./draft"), exports);
23
23
  __exportStar(require("./draft-pick"), exports);
24
24
  __exportStar(require("./league"), exports);
25
+ __exportStar(require("./division"), exports);
25
26
  __exportStar(require("./tournament"), exports);
26
27
  __exportStar(require("./tournament-match"), exports);
27
28
  __exportStar(require("./stage"), exports);
@@ -4,15 +4,12 @@ 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 LeagueSeasons = league.seasons?.map((season) => ({
8
- league_id: league.id,
9
- competition_id: season.id
10
- }));
7
+ const Divisions = league.division?.map(div => (0, _1.transformFromDivision)(div, league.id));
11
8
  return {
12
9
  league_id: league.id,
13
10
  country_id: league.country.id,
14
11
  name: league.name,
15
- LeagueSeasons
12
+ Divisions
16
13
  };
17
14
  }
18
15
  exports.transformFromLeague = transformToAttributes;
@@ -21,7 +18,7 @@ function transformToObject(model) {
21
18
  id: model.league_id,
22
19
  name: model.name,
23
20
  country: (0, _1.transformToCountry)(model.country),
24
- seasons: (model.LeagueSeasons ?? []).map((ls) => (0, _1.transformToSeason)(ls.competition))
21
+ division: (model.Divisions ?? []).map((division) => (0, _1.transformToDivision)(division))
25
22
  });
26
23
  }
27
24
  exports.transformToLeague = transformToObject;
@@ -1,5 +1,5 @@
1
1
  import { CompetitionAttributes, CompetitionModel } from '../models';
2
2
  import { Season } from '../../service';
3
- declare function transformToAttributes(season: Season, leagueId: string): CompetitionAttributes;
3
+ declare function transformToAttributes(season: Season): CompetitionAttributes;
4
4
  declare function transformToObject(model: CompetitionModel): Season;
5
5
  export { transformToObject as transformToSeason, transformToAttributes as transformFromSeason };
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.transformFromSeason = exports.transformToSeason = void 0;
4
4
  const _1 = require(".");
5
5
  const service_1 = require("../../service");
6
- function transformToAttributes(season, leagueId) {
6
+ function transformToAttributes(season) {
7
7
  const matches = (season.matches ?? []).map((match, index) => (0, _1.transformFromSeasonMatch)(season.id, match, index));
8
8
  const teams = season.teams.map(team => ({
9
9
  competition_id: season.id,
@@ -19,7 +19,6 @@ function transformToAttributes(season, leagueId) {
19
19
  competition_id: season.id,
20
20
  type: 'LEAGUE',
21
21
  iteration: season.iteration.id,
22
- LeagueSeason: { league_id: leagueId, competition_id: season.id },
23
22
  CompetitionChampion: champion,
24
23
  CompetitionMatches: matches,
25
24
  CompetitionTeams: teams,
@@ -10,7 +10,6 @@ function transformToAttributes(team) {
10
10
  short_name: team.shortName,
11
11
  coach_id: team.coach?.id,
12
12
  country_id: team.country?.id,
13
- league_id: team.league?.id,
14
13
  coach: team.coach != null ? (0, _1.transformFromCoach)(team.coach) : undefined,
15
14
  rating: team.rating
16
15
  };
@@ -24,7 +23,6 @@ function transformToObject(model) {
24
23
  country: model.country != null ? (0, _1.transformToCountry)(model.country) : undefined,
25
24
  coach: model.coach != null ? (0, _1.transformToCoach)(model.coach) : undefined,
26
25
  roster: (model.PlayerTeams ?? []).map((pt) => (0, _1.transformToPlayer)(pt.player)),
27
- league: model.league != null ? (0, _1.transformToLeague)(model.league) : undefined,
28
26
  rating: model.rating
29
27
  });
30
28
  }
@@ -32,7 +32,7 @@ Formation['5-1'] = new Formation({
32
32
  3: [player_1.RoleEnum.MIDDLE_BLOCKER],
33
33
  4: [player_1.RoleEnum.OUTSIDE_HITTER],
34
34
  5: [player_1.RoleEnum.OUTSIDE_HITTER],
35
- 6: [player_1.RoleEnum.LIBERO]
35
+ 6: [player_1.RoleEnum.LIBERO, player_1.RoleEnum.MIDDLE_BLOCKER]
36
36
  },
37
37
  draftingPriorities: [
38
38
  [player_1.RoleEnum.SETTER, player_1.RoleEnum.OPPOSITE_HITTER],
@@ -54,20 +54,20 @@ Formation['5-1'] = new Formation({
54
54
  Formation['4-2'] = new Formation({
55
55
  name: '4-2',
56
56
  initialRotation: {
57
- 1: [player_1.RoleEnum.MIDDLE_BLOCKER],
58
- 2: [player_1.RoleEnum.SETTER],
59
- 3: [player_1.RoleEnum.OUTSIDE_HITTER],
60
- 4: [player_1.RoleEnum.MIDDLE_BLOCKER],
61
- 5: [player_1.RoleEnum.SETTER],
62
- 6: [player_1.RoleEnum.OPPOSITE_HITTER]
57
+ 1: [player_1.RoleEnum.SETTER],
58
+ 2: [player_1.RoleEnum.OUTSIDE_HITTER],
59
+ 3: [player_1.RoleEnum.MIDDLE_BLOCKER],
60
+ 4: [player_1.RoleEnum.SETTER],
61
+ 5: [player_1.RoleEnum.OUTSIDE_HITTER],
62
+ 6: [player_1.RoleEnum.MIDDLE_BLOCKER]
63
63
  },
64
64
  base: {
65
65
  1: [player_1.RoleEnum.SETTER],
66
- 2: [player_1.RoleEnum.OPPOSITE_HITTER, player_1.RoleEnum.SETTER],
66
+ 2: [player_1.RoleEnum.SETTER],
67
67
  3: [player_1.RoleEnum.MIDDLE_BLOCKER],
68
68
  4: [player_1.RoleEnum.OUTSIDE_HITTER],
69
69
  5: [player_1.RoleEnum.OUTSIDE_HITTER],
70
- 6: [player_1.RoleEnum.LIBERO]
70
+ 6: [player_1.RoleEnum.LIBERO, player_1.RoleEnum.MIDDLE_BLOCKER]
71
71
  },
72
72
  draftingPriorities: [
73
73
  [player_1.RoleEnum.SETTER, player_1.RoleEnum.OPPOSITE_HITTER],
@@ -89,20 +89,20 @@ Formation['4-2'] = new Formation({
89
89
  Formation['6-2'] = new Formation({
90
90
  name: '6-2',
91
91
  initialRotation: {
92
- 1: [player_1.RoleEnum.OPPOSITE_HITTER, player_1.RoleEnum.SETTER],
92
+ 1: [player_1.RoleEnum.OPPOSITE_HITTER, player_1.RoleEnum.SETTER, player_1.RoleEnum.OUTSIDE_HITTER],
93
93
  2: [player_1.RoleEnum.OUTSIDE_HITTER],
94
94
  3: [player_1.RoleEnum.MIDDLE_BLOCKER],
95
- 4: [player_1.RoleEnum.OPPOSITE_HITTER, player_1.RoleEnum.SETTER],
95
+ 4: [player_1.RoleEnum.OPPOSITE_HITTER, player_1.RoleEnum.SETTER, player_1.RoleEnum.OUTSIDE_HITTER],
96
96
  5: [player_1.RoleEnum.OUTSIDE_HITTER],
97
97
  6: [player_1.RoleEnum.MIDDLE_BLOCKER]
98
98
  },
99
99
  base: {
100
- 1: [player_1.RoleEnum.SETTER],
100
+ 1: [player_1.RoleEnum.SETTER, player_1.RoleEnum.OPPOSITE_HITTER],
101
101
  2: [player_1.RoleEnum.OPPOSITE_HITTER, player_1.RoleEnum.SETTER],
102
102
  3: [player_1.RoleEnum.MIDDLE_BLOCKER],
103
103
  4: [player_1.RoleEnum.OUTSIDE_HITTER],
104
104
  5: [player_1.RoleEnum.OUTSIDE_HITTER],
105
- 6: [player_1.RoleEnum.LIBERO]
105
+ 6: [player_1.RoleEnum.LIBERO, player_1.RoleEnum.MIDDLE_BLOCKER]
106
106
  },
107
107
  draftingPriorities: [
108
108
  [player_1.RoleEnum.SETTER, player_1.RoleEnum.OPPOSITE_HITTER],
@@ -0,0 +1,15 @@
1
+ import { Season } from './season';
2
+ interface DivisionOpts {
3
+ readonly id: string;
4
+ readonly name: string;
5
+ readonly tier: number;
6
+ readonly seasons: Season[];
7
+ }
8
+ export declare class Division {
9
+ readonly id: string;
10
+ readonly name: string;
11
+ readonly tier: number;
12
+ readonly seasons: Season[];
13
+ constructor({ id, name, tier, seasons }: DivisionOpts);
14
+ }
15
+ export {};
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Division = void 0;
4
+ class Division {
5
+ constructor({ id, name, tier, seasons }) {
6
+ this.id = id;
7
+ this.name = name;
8
+ this.tier = tier;
9
+ this.seasons = seasons;
10
+ }
11
+ }
12
+ exports.Division = Division;
@@ -1,6 +1,7 @@
1
1
  export * from './standing';
2
2
  export * from './season';
3
3
  export * from './league';
4
+ export * from './division';
4
5
  export * from './iteration';
5
6
  export * from './tournament';
6
7
  export * from './tournament-match';
@@ -18,6 +18,7 @@ exports._CompetitionType = void 0;
18
18
  __exportStar(require("./standing"), exports);
19
19
  __exportStar(require("./season"), exports);
20
20
  __exportStar(require("./league"), exports);
21
+ __exportStar(require("./division"), exports);
21
22
  __exportStar(require("./iteration"), exports);
22
23
  __exportStar(require("./tournament"), exports);
23
24
  __exportStar(require("./tournament-match"), exports);
@@ -1,16 +1,16 @@
1
- import { Season } from './season';
2
1
  import { Country } from '../country';
2
+ import { Division } from './division';
3
3
  interface LeagueOpts {
4
4
  readonly id: string;
5
5
  readonly name: string;
6
6
  readonly country: Country;
7
- readonly seasons: Season[];
7
+ readonly division: Division[];
8
8
  }
9
9
  export declare class League {
10
10
  readonly id: string;
11
11
  readonly name: string;
12
- readonly seasons: Season[];
12
+ readonly division: Division[];
13
13
  readonly country: Country;
14
- constructor({ id, name, country, seasons }: LeagueOpts);
14
+ constructor({ id, name, country, division }: LeagueOpts);
15
15
  }
16
16
  export {};
@@ -2,11 +2,11 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.League = void 0;
4
4
  class League {
5
- constructor({ id, name, country, seasons }) {
5
+ constructor({ id, name, country, division }) {
6
6
  this.id = id;
7
7
  this.name = name;
8
8
  this.country = country;
9
- this.seasons = seasons;
9
+ this.division = division;
10
10
  }
11
11
  }
12
12
  exports.League = League;