@natrave/shared-entities 9.2.0 → 9.3.0

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.
@@ -22,6 +22,8 @@ export declare const MEMBER_TOURNAMENT_IDENTITY_COLUMNS: {
22
22
  readonly tournamentTeamId: "tournament_team_id";
23
23
  readonly shirtNumberSource: "shirt_number_source";
24
24
  readonly positionsSource: "positions_source";
25
+ readonly typeSource: "type_source";
26
+ readonly roleSource: "role_source";
25
27
  readonly isOwner: "is_owner";
26
28
  readonly calledUpAt: "called_up_at";
27
29
  readonly teamMemberDeletedAt: "team_member_deleted_at";
@@ -1 +1 @@
1
- {"version":3,"file":"member-identity-sql.d.ts","sourceRoot":"","sources":["../../../src/identity/sql/member-identity-sql.ts"],"names":[],"mappings":"AAkCA,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;CAG/B,CAAC;AAEX,eAAO,MAAM,kCAAkC;;;;;;;;;;;;;;;;;;;;;;;;CASrC,CAAC;AAEX,MAAM,MAAM,uBAAuB,GAAG,MAAM,OAAO,4BAA4B,CAAC;AAChF,MAAM,MAAM,6BAA6B,GAAG,MAAM,OAAO,kCAAkC,CAAC;AAsB5F,eAAO,MAAM,iBAAiB;;;wCAKQ,MAAM,uBAAqB,MAAM;4BAK7C,MAAM,uBAAsB,MAAM;0CAKpB,MAAM,uBAAqB,MAAM;8CAI7B,MAAM,uBAAqB,MAAM;8BAKjD,MAAM,uBAAsB,MAAM;kCAI9B,MAAM,uBAAsB,MAAM;4BAKxC,6BAA6B,uBAAqB,MAAM;sBAI9D,uBAAuB,uBAAsB,MAAM;6BAU3D,SAAS,6BAA6B,EAAE,wCAG/C,MAAM;uBAIU,SAAS,uBAAuB,EAAE,wCAAmC,MAAM;CAG/F,CAAC"}
1
+ {"version":3,"file":"member-identity-sql.d.ts","sourceRoot":"","sources":["../../../src/identity/sql/member-identity-sql.ts"],"names":[],"mappings":"AAkCA,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;CAG/B,CAAC;AAEX,eAAO,MAAM,kCAAkC;;;;;;;;;;;;;;;;;;;;;;;;;;CAWrC,CAAC;AAEX,MAAM,MAAM,uBAAuB,GAAG,MAAM,OAAO,4BAA4B,CAAC;AAChF,MAAM,MAAM,6BAA6B,GAAG,MAAM,OAAO,kCAAkC,CAAC;AAsB5F,eAAO,MAAM,iBAAiB;;;wCAKQ,MAAM,uBAAqB,MAAM;4BAK7C,MAAM,uBAAsB,MAAM;0CAKpB,MAAM,uBAAqB,MAAM;8CAI7B,MAAM,uBAAqB,MAAM;8BAKjD,MAAM,uBAAsB,MAAM;kCAI9B,MAAM,uBAAsB,MAAM;4BAKxC,6BAA6B,uBAAqB,MAAM;sBAI9D,uBAAuB,uBAAsB,MAAM;6BAU3D,SAAS,6BAA6B,EAAE,wCAG/C,MAAM;uBAIU,SAAS,uBAAuB,EAAE,wCAAmC,MAAM;CAG/F,CAAC"}
@@ -30,6 +30,8 @@ const MEMBER_TOURNAMENT_IDENTITY_COLUMNS = {
30
30
  tournamentTeamId: "tournament_team_id",
31
31
  shirtNumberSource: "shirt_number_source",
32
32
  positionsSource: "positions_source",
33
+ typeSource: "type_source",
34
+ roleSource: "role_source",
33
35
  isOwner: "is_owner",
34
36
  calledUpAt: "called_up_at",
35
37
  teamMemberDeletedAt: "team_member_deleted_at"
@@ -10,5 +10,6 @@ export interface MemberIdentityViewsVersion {
10
10
  export declare const MEMBER_IDENTITY_VIEWS_V1: MemberIdentityViewsVersion;
11
11
  export declare const MEMBER_IDENTITY_VIEWS_V2: MemberIdentityViewsVersion;
12
12
  export declare const MEMBER_IDENTITY_VIEWS_V3: MemberIdentityViewsVersion;
13
+ export declare const MEMBER_IDENTITY_VIEWS_V4: MemberIdentityViewsVersion;
13
14
  export declare const MEMBER_IDENTITY_VIEWS_LATEST: MemberIdentityViewsVersion;
14
15
  //# sourceMappingURL=member-identity-views.sql.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"member-identity-views.sql.d.ts","sourceRoot":"","sources":["../../../src/identity/views/member-identity-views.sql.ts"],"names":[],"mappings":"AAcA,eAAO,MAAM,yBAAyB,yBAAyB,CAAC;AAChE,eAAO,MAAM,+BAA+B,+BAA+B,CAAC;AAG5E,MAAM,WAAW,0BAA0B;IACzC,OAAO,EAAE,MAAM,CAAC;IAEhB,UAAU,EAAE,MAAM,CAAC;IAEnB,gBAAgB,EAAE,MAAM,CAAC;IACzB,EAAE,EAAE,SAAS,MAAM,EAAE,CAAC;IACtB,IAAI,EAAE,SAAS,MAAM,EAAE,CAAC;CACzB;AA6GD,eAAO,MAAM,wBAAwB,EAAE,0BAsBtC,CAAC;AAkBF,eAAO,MAAM,wBAAwB,EAAE,0BAmBtC,CAAC;AA0CF,eAAO,MAAM,wBAAwB,EAAE,0BAmBtC,CAAC;AAGF,eAAO,MAAM,4BAA4B,4BAA2B,CAAC"}
1
+ {"version":3,"file":"member-identity-views.sql.d.ts","sourceRoot":"","sources":["../../../src/identity/views/member-identity-views.sql.ts"],"names":[],"mappings":"AAcA,eAAO,MAAM,yBAAyB,yBAAyB,CAAC;AAChE,eAAO,MAAM,+BAA+B,+BAA+B,CAAC;AAG5E,MAAM,WAAW,0BAA0B;IACzC,OAAO,EAAE,MAAM,CAAC;IAEhB,UAAU,EAAE,MAAM,CAAC;IAEnB,gBAAgB,EAAE,MAAM,CAAC;IACzB,EAAE,EAAE,SAAS,MAAM,EAAE,CAAC;IACtB,IAAI,EAAE,SAAS,MAAM,EAAE,CAAC;CACzB;AA6GD,eAAO,MAAM,wBAAwB,EAAE,0BAsBtC,CAAC;AAkBF,eAAO,MAAM,wBAAwB,EAAE,0BAmBtC,CAAC;AA0CF,eAAO,MAAM,wBAAwB,EAAE,0BAmBtC,CAAC;AA2BF,eAAO,MAAM,wBAAwB,EAAE,0BAoBtC,CAAC;AAGF,eAAO,MAAM,4BAA4B,4BAA2B,CAAC"}
@@ -182,12 +182,48 @@ const MEMBER_IDENTITY_VIEWS_V3 = {
182
182
  ],
183
183
  down: MEMBER_IDENTITY_VIEWS_V2.up
184
184
  };
185
- const MEMBER_IDENTITY_VIEWS_LATEST = MEMBER_IDENTITY_VIEWS_V3;
185
+ const TOURNAMENT_SELECT_V4 = replaceOnce(
186
+ TOURNAMENT_SELECT_V3,
187
+ [
188
+ " mti.type AS type,",
189
+ " mti.role AS role,"
190
+ ].join("\n"),
191
+ [
192
+ " CASE WHEN tp.type IS NOT NULL THEN tp.type::text ELSE mti.type END AS type,",
193
+ " CASE WHEN tp.type IS NOT NULL THEN 'tournament' ELSE 'team' END AS type_source,",
194
+ " CASE WHEN tp.type IS NOT NULL THEN tp.role::text ELSE mti.role END AS role,",
195
+ " CASE WHEN tp.type IS NOT NULL THEN 'tournament' ELSE 'team' END AS role_source,"
196
+ ].join("\n"),
197
+ "o par tipo e cargo da categoria"
198
+ );
199
+ const MEMBER_IDENTITY_VIEWS_V4 = {
200
+ version: 4,
201
+ teamSelect: TEAM_SELECT_V3,
202
+ tournamentSelect: TOURNAMENT_SELECT_V4,
203
+ up: [
204
+ `DROP VIEW IF EXISTS ${MEMBER_TOURNAMENT_IDENTITY_VIEW}`,
205
+ `CREATE VIEW ${MEMBER_TOURNAMENT_IDENTITY_VIEW} AS ${TOURNAMENT_SELECT_V4}`,
206
+ comment(
207
+ `VIEW ${MEMBER_TOURNAMENT_IDENTITY_VIEW}`,
208
+ "Identidade v4 do membro na categoria: tournament_players (inclusive o par tipo/cargo), depois member_team_identity. Defini\xE7\xE3o em @natrave/shared-entities (docs/IDENTIDADE.md)."
209
+ )
210
+ ],
211
+ down: [
212
+ `DROP VIEW IF EXISTS ${MEMBER_TOURNAMENT_IDENTITY_VIEW}`,
213
+ `CREATE VIEW ${MEMBER_TOURNAMENT_IDENTITY_VIEW} AS ${TOURNAMENT_SELECT_V3}`,
214
+ comment(
215
+ `VIEW ${MEMBER_TOURNAMENT_IDENTITY_VIEW}`,
216
+ "Identidade v3 do membro na categoria: tournament_players, depois member_team_identity. Defini\xE7\xE3o em @natrave/shared-entities (docs/IDENTIDADE.md)."
217
+ )
218
+ ]
219
+ };
220
+ const MEMBER_IDENTITY_VIEWS_LATEST = MEMBER_IDENTITY_VIEWS_V4;
186
221
  export {
187
222
  MEMBER_IDENTITY_VIEWS_LATEST,
188
223
  MEMBER_IDENTITY_VIEWS_V1,
189
224
  MEMBER_IDENTITY_VIEWS_V2,
190
225
  MEMBER_IDENTITY_VIEWS_V3,
226
+ MEMBER_IDENTITY_VIEWS_V4,
191
227
  MEMBER_TEAM_IDENTITY_VIEW,
192
228
  MEMBER_TOURNAMENT_IDENTITY_VIEW
193
229
  };
@@ -18,7 +18,9 @@ export declare class MemberTournamentIdentity {
18
18
  positions: string[];
19
19
  positionsSource: IdentityLayer.TOURNAMENT | IdentityLayer.TEAM;
20
20
  type: string;
21
+ typeSource: IdentityLayer.TOURNAMENT | IdentityLayer.TEAM;
21
22
  role: string | null;
23
+ roleSource: IdentityLayer.TOURNAMENT | IdentityLayer.TEAM;
22
24
  isOwner: boolean;
23
25
  calledUpAt: Date;
24
26
  deletedAt: Date | null;
@@ -1 +1 @@
1
- {"version":3,"file":"member-tournament-identity.view.d.ts","sourceRoot":"","sources":["../../../src/identity/views/member-tournament-identity.view.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAavD,qBAKa,wBAAwB;IAEnC,kBAAkB,EAAE,MAAM,CAAC;IAI3B,gBAAgB,EAAE,MAAM,CAAC;IAGzB,YAAY,EAAE,MAAM,CAAC;IAGrB,QAAQ,EAAE,MAAM,CAAC;IAIjB,MAAM,EAAE,MAAM,CAAC;IAGf,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAGtB,UAAU,EAAE,OAAO,CAAC;IAGpB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAGpB,UAAU,EAAE,aAAa,GAAG,IAAI,CAAC;IAGjC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IAGxB,WAAW,EAAE,aAAa,GAAG,IAAI,CAAC;IAGlC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IAGxB,cAAc,EAAE,aAAa,CAAC,UAAU,GAAG,aAAa,CAAC,IAAI,GAAG,aAAa,CAAC,MAAM,GAAG,IAAI,CAAC;IAG5F,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAG3B,iBAAiB,EAAE,aAAa,CAAC,UAAU,GAAG,aAAa,CAAC,IAAI,GAAG,IAAI,CAAC;IAIxE,SAAS,EAAE,MAAM,EAAE,CAAC;IAGpB,eAAe,EAAE,aAAa,CAAC,UAAU,GAAG,aAAa,CAAC,IAAI,CAAC;IAI/D,IAAI,EAAE,MAAM,CAAC;IAIb,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAGpB,OAAO,EAAE,OAAO,CAAC;IAGjB,UAAU,EAAE,IAAI,CAAC;IAIjB,SAAS,EAAE,IAAI,GAAG,IAAI,CAAC;IAIvB,mBAAmB,EAAE,IAAI,GAAG,IAAI,CAAC;CAClC"}
1
+ {"version":3,"file":"member-tournament-identity.view.d.ts","sourceRoot":"","sources":["../../../src/identity/views/member-tournament-identity.view.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAavD,qBAKa,wBAAwB;IAEnC,kBAAkB,EAAE,MAAM,CAAC;IAI3B,gBAAgB,EAAE,MAAM,CAAC;IAGzB,YAAY,EAAE,MAAM,CAAC;IAGrB,QAAQ,EAAE,MAAM,CAAC;IAIjB,MAAM,EAAE,MAAM,CAAC;IAGf,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAGtB,UAAU,EAAE,OAAO,CAAC;IAGpB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAGpB,UAAU,EAAE,aAAa,GAAG,IAAI,CAAC;IAGjC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IAGxB,WAAW,EAAE,aAAa,GAAG,IAAI,CAAC;IAGlC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IAGxB,cAAc,EAAE,aAAa,CAAC,UAAU,GAAG,aAAa,CAAC,IAAI,GAAG,aAAa,CAAC,MAAM,GAAG,IAAI,CAAC;IAG5F,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAG3B,iBAAiB,EAAE,aAAa,CAAC,UAAU,GAAG,aAAa,CAAC,IAAI,GAAG,IAAI,CAAC;IAIxE,SAAS,EAAE,MAAM,EAAE,CAAC;IAGpB,eAAe,EAAE,aAAa,CAAC,UAAU,GAAG,aAAa,CAAC,IAAI,CAAC;IAI/D,IAAI,EAAE,MAAM,CAAC;IAIb,UAAU,EAAE,aAAa,CAAC,UAAU,GAAG,aAAa,CAAC,IAAI,CAAC;IAI1D,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAGpB,UAAU,EAAE,aAAa,CAAC,UAAU,GAAG,aAAa,CAAC,IAAI,CAAC;IAG1D,OAAO,EAAE,OAAO,CAAC;IAGjB,UAAU,EAAE,IAAI,CAAC;IAIjB,SAAS,EAAE,IAAI,GAAG,IAAI,CAAC;IAIvB,mBAAmB,EAAE,IAAI,GAAG,IAAI,CAAC;CAClC"}
@@ -69,9 +69,15 @@ __decorateClass([
69
69
  __decorateClass([
70
70
  ViewColumn()
71
71
  ], MemberTournamentIdentity.prototype, "type", 2);
72
+ __decorateClass([
73
+ ViewColumn({ name: "type_source" })
74
+ ], MemberTournamentIdentity.prototype, "typeSource", 2);
72
75
  __decorateClass([
73
76
  ViewColumn()
74
77
  ], MemberTournamentIdentity.prototype, "role", 2);
78
+ __decorateClass([
79
+ ViewColumn({ name: "role_source" })
80
+ ], MemberTournamentIdentity.prototype, "roleSource", 2);
75
81
  __decorateClass([
76
82
  ViewColumn({ name: "is_owner" })
77
83
  ], MemberTournamentIdentity.prototype, "isOwner", 2);
@@ -1,6 +1,8 @@
1
1
  import { ITournamentPlayer } from '@natrave/tournaments-service-types';
2
2
  import { Position } from '../../players/player-position/enums/position.enum';
3
3
  import { PlayerTeam } from '../../teams';
4
+ import { TeamMemberType } from '../../teams/player-team/enums/team-member-type.enum';
5
+ import { TechnicalStaffRole } from '../../teams/player-team/enums/technical-staff-role.enum';
4
6
  import { TournamentMatchCard } from '../tournament-match-cards';
5
7
  import { TournamentMatchGoal } from '../tournament-match-goals';
6
8
  import { TournamentMatchSubstitution } from '../tournament-match-substitutions';
@@ -16,6 +18,8 @@ export declare class TournamentPlayer implements ITournamentPlayer {
16
18
  nickname: string | null;
17
19
  positions: Position[] | null;
18
20
  photoUrl: string | null;
21
+ type: TeamMemberType | null;
22
+ role: TechnicalStaffRole | null;
19
23
  calledUpBy: CallUpSource;
20
24
  calledUpByOrganizationUserId: number | null;
21
25
  originMatchId: number | null;
@@ -1 +1 @@
1
- {"version":3,"file":"tournament-player.entity.d.ts","sourceRoot":"","sources":["../../../src/tournaments/tournament-players/tournament-player.entity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAgBvE,OAAO,EAAE,QAAQ,EAAE,MAAM,mDAAmD,CAAC;AAC7E,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,2BAA2B,EAAE,MAAM,mCAAmC,CAAC;AAChF,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAE3D,qBAYa,gBAAiB,YAAW,iBAAiB;IAExD,EAAE,EAAE,MAAM,CAAC;IAIX,YAAY,EAAE,MAAM,CAAC;IAGrB,MAAM,EAAE,MAAM,CAAC;IASf,OAAO,EAAE,OAAO,CAAC;IA2BjB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAU3B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAS3B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IAgBxB,SAAS,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;IAkB7B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IAkBxB,UAAU,EAAE,YAAY,CAAC;IAczB,4BAA4B,EAAE,MAAM,GAAG,IAAI,CAAC;IAa5C,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAG7B,SAAS,EAAE,IAAI,CAAC;IAGhB,SAAS,EAAE,IAAI,CAAC;IAShB,UAAU,EAAE,UAAU,CAAC;IAQvB,SAAS,EAAE,IAAI,GAAG,IAAI,CAAC;IAOvB,IAAI,EAAE,cAAc,CAAC;IAGrB,KAAK,EAAE,mBAAmB,EAAE,CAAC;IAG7B,OAAO,EAAE,mBAAmB,EAAE,CAAC;IAG/B,KAAK,EAAE,mBAAmB,EAAE,CAAC;IAI7B,eAAe,EAAE,2BAA2B,EAAE,CAAC;IAI/C,gBAAgB,EAAE,2BAA2B,EAAE,CAAC;CACjD"}
1
+ {"version":3,"file":"tournament-player.entity.d.ts","sourceRoot":"","sources":["../../../src/tournaments/tournament-players/tournament-player.entity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAgBvE,OAAO,EAAE,QAAQ,EAAE,MAAM,mDAAmD,CAAC;AAC7E,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,qDAAqD,CAAC;AACrF,OAAO,EAAE,kBAAkB,EAAE,MAAM,yDAAyD,CAAC;AAC7F,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,2BAA2B,EAAE,MAAM,mCAAmC,CAAC;AAChF,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAE3D,qBAgBa,gBAAiB,YAAW,iBAAiB;IAExD,EAAE,EAAE,MAAM,CAAC;IAIX,YAAY,EAAE,MAAM,CAAC;IAGrB,MAAM,EAAE,MAAM,CAAC;IASf,OAAO,EAAE,OAAO,CAAC;IA2BjB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAU3B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAS3B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IAgBxB,SAAS,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;IAkB7B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IAyBxB,IAAI,EAAE,cAAc,GAAG,IAAI,CAAC;IAS5B,IAAI,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAkBhC,UAAU,EAAE,YAAY,CAAC;IAczB,4BAA4B,EAAE,MAAM,GAAG,IAAI,CAAC;IAa5C,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAG7B,SAAS,EAAE,IAAI,CAAC;IAGhB,SAAS,EAAE,IAAI,CAAC;IAShB,UAAU,EAAE,UAAU,CAAC;IAQvB,SAAS,EAAE,IAAI,GAAG,IAAI,CAAC;IAOvB,IAAI,EAAE,cAAc,CAAC;IAGrB,KAAK,EAAE,mBAAmB,EAAE,CAAC;IAG7B,OAAO,EAAE,mBAAmB,EAAE,CAAC;IAG/B,KAAK,EAAE,mBAAmB,EAAE,CAAC;IAI7B,eAAe,EAAE,2BAA2B,EAAE,CAAC;IAI/C,gBAAgB,EAAE,2BAA2B,EAAE,CAAC;CACjD"}
@@ -24,6 +24,8 @@ import {
24
24
  } from "typeorm";
25
25
  import { Position } from "../../players/player-position/enums/position.enum.js";
26
26
  import { PlayerTeam } from "../../teams/index.js";
27
+ import { TeamMemberType } from "../../teams/player-team/enums/team-member-type.enum.js";
28
+ import { TechnicalStaffRole } from "../../teams/player-team/enums/technical-staff-role.enum.js";
27
29
  import { TournamentMatchCard } from "../tournament-match-cards/index.js";
28
30
  import { TournamentMatchGoal } from "../tournament-match-goals/index.js";
29
31
  import { TournamentMatchSubstitution } from "../tournament-match-substitutions/index.js";
@@ -91,6 +93,22 @@ __decorateClass([
91
93
  comment: "Foto da carteirinha nesta categoria. NULL usa a foto da conta (users.image_url)."
92
94
  })
93
95
  ], TournamentPlayer.prototype, "photoUrl", 2);
96
+ __decorateClass([
97
+ Column({
98
+ type: "enum",
99
+ enum: TeamMemberType,
100
+ nullable: true,
101
+ comment: "Jogador ou comiss\xE3o nesta categoria. NULL herda o par tipo/cargo do time (player_teams)."
102
+ })
103
+ ], TournamentPlayer.prototype, "type", 2);
104
+ __decorateClass([
105
+ Column({
106
+ type: "enum",
107
+ enum: TechnicalStaffRole,
108
+ nullable: true,
109
+ comment: "Cargo na comiss\xE3o nesta categoria. S\xF3 vale com type preenchido (o par \xE9 da categoria)."
110
+ })
111
+ ], TournamentPlayer.prototype, "role", 2);
94
112
  __decorateClass([
95
113
  Column({
96
114
  name: "called_up_by",
@@ -171,7 +189,11 @@ TournamentPlayer = __decorateClass([
171
189
  "CHK_tournament_players_display_name",
172
190
  `"display_name" IS NULL OR btrim("display_name") <> ''`
173
191
  ),
174
- Check("CHK_tournament_players_nickname", `"nickname" IS NULL OR btrim("nickname") <> ''`)
192
+ Check("CHK_tournament_players_nickname", `"nickname" IS NULL OR btrim("nickname") <> ''`),
193
+ Check(
194
+ "CHK_tournament_players_role_needs_coach_staff",
195
+ `"role" IS NULL OR "type" IS NOT DISTINCT FROM 'coach_staff'`
196
+ )
175
197
  ], TournamentPlayer);
176
198
  export {
177
199
  TournamentPlayer
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@natrave/shared-entities",
3
- "version": "9.2.0",
3
+ "version": "9.3.0",
4
4
  "description": "Entidades compartilhadass da NaTrave",
5
5
  "module": "dist/index.js",
6
6
  "main": "dist/index.js",