@mshowes/brackets-manager 1.8.6 → 1.8.8

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 (145) hide show
  1. package/dist/core/base/getter.d.ts +7 -6
  2. package/dist/core/base/getter.d.ts.map +1 -1
  3. package/dist/core/base/getter.js +82 -80
  4. package/dist/core/base/getter.js.map +1 -1
  5. package/dist/core/base/stage/creator.d.ts +6 -5
  6. package/dist/core/base/stage/creator.d.ts.map +1 -1
  7. package/dist/core/base/stage/creator.js +189 -151
  8. package/dist/core/base/stage/creator.js.map +1 -1
  9. package/dist/core/base/updater.d.ts +2 -2
  10. package/dist/core/base/updater.d.ts.map +1 -1
  11. package/dist/core/base/updater.js +47 -70
  12. package/dist/core/base/updater.js.map +1 -1
  13. package/dist/core/create.d.ts +3 -49
  14. package/dist/core/create.d.ts.map +1 -1
  15. package/dist/core/create.js +5 -119
  16. package/dist/core/create.js.map +1 -1
  17. package/dist/core/db.d.ts +113 -0
  18. package/dist/core/db.d.ts.map +1 -0
  19. package/dist/core/db.js +473 -0
  20. package/dist/core/db.js.map +1 -0
  21. package/dist/core/delete.d.ts +5 -5
  22. package/dist/core/delete.d.ts.map +1 -1
  23. package/dist/core/delete.js +14 -27
  24. package/dist/core/delete.js.map +1 -1
  25. package/dist/core/find.d.ts +22 -42
  26. package/dist/core/find.d.ts.map +1 -1
  27. package/dist/core/find.js +29 -196
  28. package/dist/core/find.js.map +1 -1
  29. package/dist/core/get.d.ts +1 -1
  30. package/dist/core/get.d.ts.map +1 -1
  31. package/dist/core/get.js +35 -88
  32. package/dist/core/get.js.map +1 -1
  33. package/dist/core/helpers.d.ts +1 -1
  34. package/dist/core/helpers.js +182 -319
  35. package/dist/core/helpers.js.map +1 -1
  36. package/dist/core/manager.d.ts +31 -35
  37. package/dist/core/manager.d.ts.map +1 -1
  38. package/dist/core/manager.js +53 -196
  39. package/dist/core/manager.js.map +1 -1
  40. package/dist/core/ordering.d.ts +1 -1
  41. package/dist/core/ordering.js +3 -6
  42. package/dist/core/ordering.js.map +1 -1
  43. package/dist/core/reset.d.ts +13 -8
  44. package/dist/core/reset.d.ts.map +1 -1
  45. package/dist/core/reset.js +30 -68
  46. package/dist/core/reset.js.map +1 -1
  47. package/dist/core/types.d.ts +1 -73
  48. package/dist/core/types.d.ts.map +1 -1
  49. package/dist/core/types.js +1 -2
  50. package/dist/core/update.d.ts +1 -1
  51. package/dist/core/update.d.ts.map +1 -1
  52. package/dist/core/update.js +36 -79
  53. package/dist/core/update.js.map +1 -1
  54. package/dist/index.d.ts +15 -16
  55. package/dist/index.d.ts.map +1 -1
  56. package/dist/index.js +15 -54
  57. package/dist/index.js.map +1 -1
  58. package/dist/model/index.js +4 -20
  59. package/dist/model/index.js.map +1 -1
  60. package/dist/model/input.js +1 -2
  61. package/dist/model/input.js.map +1 -1
  62. package/dist/model/other.js +2 -5
  63. package/dist/model/other.js.map +1 -1
  64. package/dist/model/storage.js +1 -2
  65. package/dist/model/storage.js.map +1 -1
  66. package/dist/model/unions.js +1 -2
  67. package/dist/model/unions.js.map +1 -1
  68. package/dist/storage/drizzle/db/index.js +7 -37
  69. package/dist/storage/drizzle/db/index.js.map +1 -1
  70. package/dist/storage/drizzle/db/schema/enums.js +6 -9
  71. package/dist/storage/drizzle/db/schema/enums.js.map +1 -1
  72. package/dist/storage/drizzle/db/schema/group.js +16 -19
  73. package/dist/storage/drizzle/db/schema/group.js.map +1 -1
  74. package/dist/storage/drizzle/db/schema/index.js +8 -24
  75. package/dist/storage/drizzle/db/schema/index.js.map +1 -1
  76. package/dist/storage/drizzle/db/schema/match-game.d.ts +1 -1
  77. package/dist/storage/drizzle/db/schema/match-game.js +21 -24
  78. package/dist/storage/drizzle/db/schema/match-game.js.map +1 -1
  79. package/dist/storage/drizzle/db/schema/match.d.ts +1 -1
  80. package/dist/storage/drizzle/db/schema/match.js +30 -33
  81. package/dist/storage/drizzle/db/schema/match.js.map +1 -1
  82. package/dist/storage/drizzle/db/schema/participant.js +12 -15
  83. package/dist/storage/drizzle/db/schema/participant.js.map +1 -1
  84. package/dist/storage/drizzle/db/schema/round.js +20 -23
  85. package/dist/storage/drizzle/db/schema/round.js.map +1 -1
  86. package/dist/storage/drizzle/db/schema/stage.d.ts +20 -20
  87. package/dist/storage/drizzle/db/schema/stage.d.ts.map +1 -1
  88. package/dist/storage/drizzle/db/schema/stage.js +24 -27
  89. package/dist/storage/drizzle/db/schema/stage.js.map +1 -1
  90. package/dist/storage/drizzle/db/schema/tournament.js +15 -18
  91. package/dist/storage/drizzle/db/schema/tournament.js.map +1 -1
  92. package/dist/storage/drizzle/index.js +3 -23
  93. package/dist/storage/drizzle/index.js.map +1 -1
  94. package/dist/storage/drizzle/storage-handlers/delete-handlers/group.d.ts +1 -1
  95. package/dist/storage/drizzle/storage-handlers/delete-handlers/match-game.d.ts +1 -1
  96. package/dist/storage/drizzle/storage-handlers/delete-handlers/match.d.ts +1 -1
  97. package/dist/storage/drizzle/storage-handlers/delete-handlers/participant.d.ts +1 -1
  98. package/dist/storage/drizzle/storage-handlers/delete-handlers/round.d.ts +1 -1
  99. package/dist/storage/drizzle/storage-handlers/delete-handlers/stage.d.ts +1 -1
  100. package/dist/storage/drizzle/storage-handlers/delete.d.ts +1 -1
  101. package/dist/storage/drizzle/storage-handlers/insert-handlers/group.d.ts +1 -1
  102. package/dist/storage/drizzle/storage-handlers/insert-handlers/match-game.d.ts +1 -1
  103. package/dist/storage/drizzle/storage-handlers/insert-handlers/match.d.ts +1 -1
  104. package/dist/storage/drizzle/storage-handlers/insert-handlers/participant.d.ts +1 -1
  105. package/dist/storage/drizzle/storage-handlers/insert-handlers/round.d.ts +1 -1
  106. package/dist/storage/drizzle/storage-handlers/insert-handlers/stage.d.ts +1 -1
  107. package/dist/storage/drizzle/storage-handlers/insert.d.ts +1 -1
  108. package/dist/storage/drizzle/storage-handlers/select-handlers/group.d.ts +1 -1
  109. package/dist/storage/drizzle/storage-handlers/select-handlers/match-game.d.ts +1 -1
  110. package/dist/storage/drizzle/storage-handlers/select-handlers/match.d.ts +1 -1
  111. package/dist/storage/drizzle/storage-handlers/select-handlers/participant.d.ts +1 -1
  112. package/dist/storage/drizzle/storage-handlers/select-handlers/round.d.ts +1 -1
  113. package/dist/storage/drizzle/storage-handlers/select-handlers/stage.d.ts +1 -1
  114. package/dist/storage/drizzle/storage-handlers/select-handlers/tournament.d.ts +1 -1
  115. package/dist/storage/drizzle/storage-handlers/select.d.ts +1 -1
  116. package/dist/storage/drizzle/storage-handlers/update-handlers/group.d.ts +1 -1
  117. package/dist/storage/drizzle/storage-handlers/update-handlers/match-game.d.ts +1 -1
  118. package/dist/storage/drizzle/storage-handlers/update-handlers/match.d.ts +1 -1
  119. package/dist/storage/drizzle/storage-handlers/update-handlers/participant.d.ts +1 -1
  120. package/dist/storage/drizzle/storage-handlers/update-handlers/round.d.ts +1 -1
  121. package/dist/storage/drizzle/storage-handlers/update-handlers/stage.d.ts +1 -1
  122. package/dist/storage/drizzle/storage-handlers/update.d.ts +1 -1
  123. package/dist/storage/drizzle/storage.d.ts +1 -1
  124. package/dist/storage/drizzle/storage.d.ts.map +1 -1
  125. package/dist/storage/drizzle/storage.js +29 -35
  126. package/dist/storage/drizzle/storage.js.map +1 -1
  127. package/dist/storage/drizzle/transformers/enum/grand-final-type.d.ts +1 -1
  128. package/dist/storage/drizzle/transformers/enum/match-result.d.ts +1 -1
  129. package/dist/storage/drizzle/transformers/enum/match-status.d.ts +1 -1
  130. package/dist/storage/drizzle/transformers/enum/match-status.js +1 -1
  131. package/dist/storage/drizzle/transformers/enum/round-robin-mode.d.ts +1 -1
  132. package/dist/storage/drizzle/transformers/enum/seed-ordering.d.ts +1 -1
  133. package/dist/storage/drizzle/transformers/enum/stage-type.d.ts +1 -1
  134. package/dist/storage/drizzle/transformers/model/group.d.ts +2 -2
  135. package/dist/storage/drizzle/transformers/model/match-game.d.ts +2 -2
  136. package/dist/storage/drizzle/transformers/model/match.d.ts +2 -2
  137. package/dist/storage/drizzle/transformers/model/participant-result.d.ts +1 -1
  138. package/dist/storage/drizzle/transformers/model/participant.d.ts +3 -3
  139. package/dist/storage/drizzle/transformers/model/round.d.ts +2 -2
  140. package/dist/storage/drizzle/transformers/model/stage-settings.d.ts +2 -2
  141. package/dist/storage/drizzle/transformers/model/stage.d.ts +2 -2
  142. package/dist/storage/drizzle/transformers/model/tournament.d.ts +1 -1
  143. package/dist/storage/drizzle/types.d.ts +1 -1
  144. package/dist/storage/drizzle/types.js +1 -2
  145. package/package.json +12 -17
@@ -1 +1 @@
1
- {"version":3,"file":"create.js","sourceRoot":"","sources":["../../src/core/create.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create.js","sourceRoot":"","sources":["../../src/core/create.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAG9C,MAAM,CAAC,KAAK,UAAU,WAAW,CAC7B,EAAmB,EACnB,KAAiB;IAEjB,4DAA4D;IAC5D,MAAM,OAAO,GAAG,EAAE,EAAE,EAAE,CAAC;IACvB,OAAO,MAAM,CAAC,IAAI,CAAC,OAAc,EAAE,KAAK,CAAC,CAAC;AAC9C,CAAC"}
@@ -0,0 +1,113 @@
1
+ /**
2
+ * Database utilities for Drizzle ORM operations.
3
+ * Provides typed query helpers for all bracket tables.
4
+ */
5
+ import type { DrizzleDatabase } from '../storage/drizzle/db';
6
+ import { tournament, participant, stage, group, round, match, matchGame } from '../storage/drizzle/db/schema';
7
+ import type { Id, Stage, Group, Round, Match, MatchGame, Participant } from '../model';
8
+ import type { Tournament } from './types';
9
+ export type { DrizzleDatabase } from '../storage/drizzle/db';
10
+ export declare const tournamentDb: {
11
+ getById(db: DrizzleDatabase, id: Id): Promise<Tournament | null>;
12
+ getAll(db: DrizzleDatabase): Promise<Tournament[]>;
13
+ insert(db: DrizzleDatabase, data: typeof tournament.$inferInsert): Promise<string>;
14
+ update(db: DrizzleDatabase, id: Id, data: Partial<typeof tournament.$inferInsert>): Promise<boolean>;
15
+ delete(db: DrizzleDatabase, id: Id): Promise<boolean>;
16
+ deleteByFilter(db: DrizzleDatabase, filter: {
17
+ id?: Id;
18
+ }): Promise<boolean>;
19
+ };
20
+ export declare const participantDb: {
21
+ getById(db: DrizzleDatabase, id: Id): Promise<Participant | null>;
22
+ getAll(db: DrizzleDatabase): Promise<Participant[]>;
23
+ getByTournament(db: DrizzleDatabase, tournamentId: Id): Promise<Participant[]>;
24
+ getByFilter(db: DrizzleDatabase, filter: {
25
+ tournament_id?: Id;
26
+ name?: string;
27
+ }): Promise<Participant[]>;
28
+ insert(db: DrizzleDatabase, data: typeof participant.$inferInsert | (typeof participant.$inferInsert)[]): Promise<string | number>;
29
+ delete(db: DrizzleDatabase, filter?: {
30
+ tournament_id?: Id;
31
+ }): Promise<boolean>;
32
+ };
33
+ export declare const stageDb: {
34
+ getById(db: DrizzleDatabase, id: Id): Promise<Stage | null>;
35
+ getAll(db: DrizzleDatabase): Promise<Stage[]>;
36
+ getByTournament(db: DrizzleDatabase, tournamentId: Id): Promise<Stage[]>;
37
+ insert(db: DrizzleDatabase, data: typeof stage.$inferInsert | (typeof stage.$inferInsert)[]): Promise<string | number>;
38
+ update(db: DrizzleDatabase, id: Id, data: Partial<typeof stage.$inferInsert>): Promise<boolean>;
39
+ delete(db: DrizzleDatabase, filter?: {
40
+ id?: Id;
41
+ tournament_id?: Id;
42
+ }): Promise<boolean>;
43
+ };
44
+ export declare const groupDb: {
45
+ getById(db: DrizzleDatabase, id: Id): Promise<Group | null>;
46
+ getByStage(db: DrizzleDatabase, stageId: Id): Promise<Group[]>;
47
+ getFirst(db: DrizzleDatabase, filter: {
48
+ stage_id: Id;
49
+ number?: number;
50
+ }): Promise<Group | null>;
51
+ insert(db: DrizzleDatabase, data: typeof group.$inferInsert | (typeof group.$inferInsert)[]): Promise<string | number>;
52
+ delete(db: DrizzleDatabase, filter?: {
53
+ stage_id?: Id;
54
+ }): Promise<boolean>;
55
+ };
56
+ export declare const roundDb: {
57
+ getById(db: DrizzleDatabase, id: Id): Promise<Round | null>;
58
+ getByStage(db: DrizzleDatabase, stageId: Id): Promise<Round[]>;
59
+ getByGroup(db: DrizzleDatabase, groupId: Id): Promise<Round[]>;
60
+ getFirst(db: DrizzleDatabase, filter: {
61
+ stage_id?: Id;
62
+ group_id?: Id;
63
+ number?: number;
64
+ }): Promise<Round | null>;
65
+ getLast(db: DrizzleDatabase, filter: {
66
+ group_id: Id;
67
+ }): Promise<Round | null>;
68
+ insert(db: DrizzleDatabase, data: typeof round.$inferInsert | (typeof round.$inferInsert)[]): Promise<string | number>;
69
+ delete(db: DrizzleDatabase, filter?: {
70
+ stage_id?: Id;
71
+ }): Promise<boolean>;
72
+ };
73
+ export declare const matchDb: {
74
+ getById(db: DrizzleDatabase, id: Id): Promise<Match | null>;
75
+ getByStage(db: DrizzleDatabase, stageId: Id): Promise<Match[]>;
76
+ getByRound(db: DrizzleDatabase, roundId: Id): Promise<Match[]>;
77
+ getByGroup(db: DrizzleDatabase, groupId: Id): Promise<Match[]>;
78
+ getFirst(db: DrizzleDatabase, filter: {
79
+ round_id?: Id;
80
+ group_id?: Id;
81
+ number?: number;
82
+ }): Promise<Match | null>;
83
+ insert(db: DrizzleDatabase, data: typeof match.$inferInsert | (typeof match.$inferInsert)[]): Promise<string | number>;
84
+ update(db: DrizzleDatabase, id: Id, data: Partial<Match>): Promise<boolean>;
85
+ updateByFilter(db: DrizzleDatabase, filter: {
86
+ stage_id?: Id;
87
+ group_id?: Id;
88
+ round_id?: Id;
89
+ parent_id?: Id;
90
+ }, data: Partial<Match>): Promise<boolean>;
91
+ delete(db: DrizzleDatabase, filter?: {
92
+ stage_id?: Id;
93
+ }): Promise<boolean>;
94
+ };
95
+ export declare const matchGameDb: {
96
+ getById(db: DrizzleDatabase, id: Id): Promise<MatchGame | null>;
97
+ getByParent(db: DrizzleDatabase, parentId: Id): Promise<MatchGame[]>;
98
+ getFirst(db: DrizzleDatabase, filter: {
99
+ parent_id?: Id;
100
+ number?: number;
101
+ }): Promise<MatchGame | null>;
102
+ insert(db: DrizzleDatabase, data: typeof matchGame.$inferInsert | (typeof matchGame.$inferInsert)[]): Promise<string | number>;
103
+ update(db: DrizzleDatabase, id: Id, data: Partial<MatchGame>): Promise<boolean>;
104
+ updateByFilter(db: DrizzleDatabase, filter: {
105
+ parent_id?: Id;
106
+ }, data: Partial<MatchGame>): Promise<boolean>;
107
+ delete(db: DrizzleDatabase, filter?: {
108
+ stage_id?: Id;
109
+ parent_id?: Id;
110
+ number?: number;
111
+ }): Promise<boolean>;
112
+ };
113
+ //# sourceMappingURL=db.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../../src/core/db.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,473 @@
1
+ /**
2
+ * Database utilities for Drizzle ORM operations.
3
+ * Provides typed query helpers for all bracket tables.
4
+ */
5
+ import { eq, and, asc, desc } from 'drizzle-orm';
6
+ import { tournament, participant, stage, group, round, match, matchGame, } from '../storage/drizzle/db/schema';
7
+ // Helper to convert Id to string for database queries
8
+ const toStr = (id) => String(id);
9
+ // Cast functions to convert Drizzle types to model types
10
+ const castStage = (s) => s;
11
+ const castGroup = (g) => g;
12
+ const castRound = (r) => r;
13
+ const castMatch = (m) => m;
14
+ const castMatchGame = (mg) => mg;
15
+ const castParticipant = (p) => p;
16
+ const castTournament = (t) => t;
17
+ // ============================================================================
18
+ // Tournament Operations
19
+ // ============================================================================
20
+ export const tournamentDb = {
21
+ async getById(db, id) {
22
+ const results = await db
23
+ .select()
24
+ .from(tournament)
25
+ .where(eq(tournament.id, toStr(id)))
26
+ .limit(1);
27
+ return results[0] ? castTournament(results[0]) : null;
28
+ },
29
+ async getAll(db) {
30
+ const results = await db.select().from(tournament);
31
+ return results.map(castTournament);
32
+ },
33
+ async insert(db, data) {
34
+ await db.insert(tournament).values(data);
35
+ return data.id;
36
+ },
37
+ async update(db, id, data) {
38
+ await db
39
+ .update(tournament)
40
+ .set(data)
41
+ .where(eq(tournament.id, toStr(id)));
42
+ return true;
43
+ },
44
+ async delete(db, id) {
45
+ await db.delete(tournament).where(eq(tournament.id, toStr(id)));
46
+ return true;
47
+ },
48
+ async deleteByFilter(db, filter) {
49
+ if (filter.id !== undefined) {
50
+ await db
51
+ .delete(tournament)
52
+ .where(eq(tournament.id, toStr(filter.id)));
53
+ }
54
+ else {
55
+ await db.delete(tournament);
56
+ }
57
+ return true;
58
+ },
59
+ };
60
+ // ============================================================================
61
+ // Participant Operations
62
+ // ============================================================================
63
+ export const participantDb = {
64
+ async getById(db, id) {
65
+ const results = await db
66
+ .select()
67
+ .from(participant)
68
+ .where(eq(participant.id, toStr(id)))
69
+ .limit(1);
70
+ return results[0] ? castParticipant(results[0]) : null;
71
+ },
72
+ async getAll(db) {
73
+ const results = await db.select().from(participant);
74
+ return results.map(castParticipant);
75
+ },
76
+ async getByTournament(db, tournamentId) {
77
+ const results = await db
78
+ .select()
79
+ .from(participant)
80
+ .where(eq(participant.tournament_id, toStr(tournamentId)));
81
+ return results.map(castParticipant);
82
+ },
83
+ async getByFilter(db, filter) {
84
+ const conditions = [];
85
+ if (filter.tournament_id !== undefined) {
86
+ conditions.push(eq(participant.tournament_id, toStr(filter.tournament_id)));
87
+ }
88
+ if (filter.name !== undefined) {
89
+ conditions.push(eq(participant.name, filter.name));
90
+ }
91
+ const results = await db
92
+ .select()
93
+ .from(participant)
94
+ .where(conditions.length > 0 ? and(...conditions) : undefined);
95
+ return results.map(castParticipant);
96
+ },
97
+ async insert(db, data) {
98
+ const values = Array.isArray(data) ? data : [data];
99
+ await db.insert(participant).values(values);
100
+ return Array.isArray(data) ? values.length : values[0].id;
101
+ },
102
+ async delete(db, filter) {
103
+ if (filter?.tournament_id !== undefined) {
104
+ await db
105
+ .delete(participant)
106
+ .where(eq(participant.tournament_id, toStr(filter.tournament_id)));
107
+ }
108
+ else {
109
+ await db.delete(participant);
110
+ }
111
+ return true;
112
+ },
113
+ };
114
+ // ============================================================================
115
+ // Stage Operations
116
+ // ============================================================================
117
+ export const stageDb = {
118
+ async getById(db, id) {
119
+ const results = await db
120
+ .select()
121
+ .from(stage)
122
+ .where(eq(stage.id, toStr(id)))
123
+ .limit(1);
124
+ return results[0] ? castStage(results[0]) : null;
125
+ },
126
+ async getAll(db) {
127
+ const results = await db
128
+ .select()
129
+ .from(stage)
130
+ .orderBy(asc(stage.number));
131
+ return results.map(castStage);
132
+ },
133
+ async getByTournament(db, tournamentId) {
134
+ const results = await db
135
+ .select()
136
+ .from(stage)
137
+ .where(eq(stage.tournament_id, toStr(tournamentId)))
138
+ .orderBy(asc(stage.number));
139
+ return results.map(castStage);
140
+ },
141
+ async insert(db, data) {
142
+ const values = Array.isArray(data) ? data : [data];
143
+ await db.insert(stage).values(values);
144
+ return Array.isArray(data) ? values.length : values[0].id;
145
+ },
146
+ async update(db, id, data) {
147
+ await db
148
+ .update(stage)
149
+ .set(data)
150
+ .where(eq(stage.id, toStr(id)));
151
+ return true;
152
+ },
153
+ async delete(db, filter) {
154
+ if (filter?.id !== undefined) {
155
+ await db.delete(stage).where(eq(stage.id, toStr(filter.id)));
156
+ }
157
+ else if (filter?.tournament_id !== undefined) {
158
+ await db
159
+ .delete(stage)
160
+ .where(eq(stage.tournament_id, toStr(filter.tournament_id)));
161
+ }
162
+ else {
163
+ await db.delete(stage);
164
+ }
165
+ return true;
166
+ },
167
+ };
168
+ // ============================================================================
169
+ // Group Operations
170
+ // ============================================================================
171
+ export const groupDb = {
172
+ async getById(db, id) {
173
+ const results = await db
174
+ .select()
175
+ .from(group)
176
+ .where(eq(group.id, toStr(id)))
177
+ .limit(1);
178
+ return results[0] ? castGroup(results[0]) : null;
179
+ },
180
+ async getByStage(db, stageId) {
181
+ const results = await db
182
+ .select()
183
+ .from(group)
184
+ .where(eq(group.stage_id, toStr(stageId)))
185
+ .orderBy(asc(group.number));
186
+ return results.map(castGroup);
187
+ },
188
+ async getFirst(db, filter) {
189
+ const conditions = [eq(group.stage_id, toStr(filter.stage_id))];
190
+ if (filter.number !== undefined) {
191
+ conditions.push(eq(group.number, filter.number));
192
+ }
193
+ const results = await db
194
+ .select()
195
+ .from(group)
196
+ .where(and(...conditions))
197
+ .orderBy(asc(group.number))
198
+ .limit(1);
199
+ return results[0] ? castGroup(results[0]) : null;
200
+ },
201
+ async insert(db, data) {
202
+ const values = Array.isArray(data) ? data : [data];
203
+ await db.insert(group).values(values);
204
+ return Array.isArray(data) ? values.length : values[0].id;
205
+ },
206
+ async delete(db, filter) {
207
+ if (filter?.stage_id !== undefined) {
208
+ await db
209
+ .delete(group)
210
+ .where(eq(group.stage_id, toStr(filter.stage_id)));
211
+ }
212
+ else {
213
+ await db.delete(group);
214
+ }
215
+ return true;
216
+ },
217
+ };
218
+ // ============================================================================
219
+ // Round Operations
220
+ // ============================================================================
221
+ export const roundDb = {
222
+ async getById(db, id) {
223
+ const results = await db
224
+ .select()
225
+ .from(round)
226
+ .where(eq(round.id, toStr(id)))
227
+ .limit(1);
228
+ return results[0] ? castRound(results[0]) : null;
229
+ },
230
+ async getByStage(db, stageId) {
231
+ const results = await db
232
+ .select()
233
+ .from(round)
234
+ .where(eq(round.stage_id, toStr(stageId)))
235
+ .orderBy(asc(round.number));
236
+ return results.map(castRound);
237
+ },
238
+ async getByGroup(db, groupId) {
239
+ const results = await db
240
+ .select()
241
+ .from(round)
242
+ .where(eq(round.group_id, toStr(groupId)))
243
+ .orderBy(asc(round.number));
244
+ return results.map(castRound);
245
+ },
246
+ async getFirst(db, filter) {
247
+ const conditions = [];
248
+ if (filter.stage_id !== undefined) {
249
+ conditions.push(eq(round.stage_id, toStr(filter.stage_id)));
250
+ }
251
+ if (filter.group_id !== undefined) {
252
+ conditions.push(eq(round.group_id, toStr(filter.group_id)));
253
+ }
254
+ if (filter.number !== undefined) {
255
+ conditions.push(eq(round.number, filter.number));
256
+ }
257
+ const results = await db
258
+ .select()
259
+ .from(round)
260
+ .where(conditions.length > 0 ? and(...conditions) : undefined)
261
+ .orderBy(asc(round.number))
262
+ .limit(1);
263
+ return results[0] ? castRound(results[0]) : null;
264
+ },
265
+ async getLast(db, filter) {
266
+ const results = await db
267
+ .select()
268
+ .from(round)
269
+ .where(eq(round.group_id, toStr(filter.group_id)))
270
+ .orderBy(desc(round.number))
271
+ .limit(1);
272
+ return results[0] ? castRound(results[0]) : null;
273
+ },
274
+ async insert(db, data) {
275
+ const values = Array.isArray(data) ? data : [data];
276
+ await db.insert(round).values(values);
277
+ return Array.isArray(data) ? values.length : values[0].id;
278
+ },
279
+ async delete(db, filter) {
280
+ if (filter?.stage_id !== undefined) {
281
+ await db
282
+ .delete(round)
283
+ .where(eq(round.stage_id, toStr(filter.stage_id)));
284
+ }
285
+ else {
286
+ await db.delete(round);
287
+ }
288
+ return true;
289
+ },
290
+ };
291
+ // ============================================================================
292
+ // Match Operations
293
+ // ============================================================================
294
+ export const matchDb = {
295
+ async getById(db, id) {
296
+ const results = await db
297
+ .select()
298
+ .from(match)
299
+ .where(eq(match.id, toStr(id)))
300
+ .limit(1);
301
+ return results[0] ? castMatch(results[0]) : null;
302
+ },
303
+ async getByStage(db, stageId) {
304
+ const results = await db
305
+ .select()
306
+ .from(match)
307
+ .where(eq(match.stage_id, toStr(stageId)))
308
+ .orderBy(asc(match.number));
309
+ return results.map(castMatch);
310
+ },
311
+ async getByRound(db, roundId) {
312
+ const results = await db
313
+ .select()
314
+ .from(match)
315
+ .where(eq(match.round_id, toStr(roundId)))
316
+ .orderBy(asc(match.number));
317
+ return results.map(castMatch);
318
+ },
319
+ async getByGroup(db, groupId) {
320
+ const results = await db
321
+ .select()
322
+ .from(match)
323
+ .where(eq(match.group_id, toStr(groupId)))
324
+ .orderBy(asc(match.number));
325
+ return results.map(castMatch);
326
+ },
327
+ async getFirst(db, filter) {
328
+ const conditions = [];
329
+ if (filter.round_id !== undefined) {
330
+ conditions.push(eq(match.round_id, toStr(filter.round_id)));
331
+ }
332
+ if (filter.group_id !== undefined) {
333
+ conditions.push(eq(match.group_id, toStr(filter.group_id)));
334
+ }
335
+ if (filter.number !== undefined) {
336
+ conditions.push(eq(match.number, filter.number));
337
+ }
338
+ const results = await db
339
+ .select()
340
+ .from(match)
341
+ .where(conditions.length > 0 ? and(...conditions) : undefined)
342
+ .orderBy(asc(match.number))
343
+ .limit(1);
344
+ return results[0] ? castMatch(results[0]) : null;
345
+ },
346
+ async insert(db, data) {
347
+ const values = Array.isArray(data) ? data : [data];
348
+ await db.insert(match).values(values);
349
+ return Array.isArray(data) ? values.length : values[0].id;
350
+ },
351
+ async update(db, id, data) {
352
+ await db
353
+ .update(match)
354
+ .set(data)
355
+ .where(eq(match.id, toStr(id)));
356
+ return true;
357
+ },
358
+ async updateByFilter(db, filter, data) {
359
+ const conditions = [];
360
+ if (filter.stage_id !== undefined) {
361
+ conditions.push(eq(match.stage_id, toStr(filter.stage_id)));
362
+ }
363
+ if (filter.group_id !== undefined) {
364
+ conditions.push(eq(match.group_id, toStr(filter.group_id)));
365
+ }
366
+ if (filter.round_id !== undefined) {
367
+ conditions.push(eq(match.round_id, toStr(filter.round_id)));
368
+ }
369
+ if (conditions.length === 0)
370
+ return false;
371
+ await db
372
+ .update(match)
373
+ .set(data)
374
+ .where(and(...conditions));
375
+ return true;
376
+ },
377
+ async delete(db, filter) {
378
+ if (filter?.stage_id !== undefined) {
379
+ await db
380
+ .delete(match)
381
+ .where(eq(match.stage_id, toStr(filter.stage_id)));
382
+ }
383
+ else {
384
+ await db.delete(match);
385
+ }
386
+ return true;
387
+ },
388
+ };
389
+ // ============================================================================
390
+ // Match Game Operations
391
+ // ============================================================================
392
+ export const matchGameDb = {
393
+ async getById(db, id) {
394
+ const results = await db
395
+ .select()
396
+ .from(matchGame)
397
+ .where(eq(matchGame.id, toStr(id)))
398
+ .limit(1);
399
+ return results[0] ? castMatchGame(results[0]) : null;
400
+ },
401
+ async getByParent(db, parentId) {
402
+ const results = await db
403
+ .select()
404
+ .from(matchGame)
405
+ .where(eq(matchGame.parent_id, toStr(parentId)))
406
+ .orderBy(asc(matchGame.number));
407
+ return results.map(castMatchGame);
408
+ },
409
+ async getFirst(db, filter) {
410
+ const conditions = [];
411
+ if (filter.parent_id !== undefined) {
412
+ conditions.push(eq(matchGame.parent_id, toStr(filter.parent_id)));
413
+ }
414
+ if (filter.number !== undefined) {
415
+ conditions.push(eq(matchGame.number, filter.number));
416
+ }
417
+ const results = await db
418
+ .select()
419
+ .from(matchGame)
420
+ .where(conditions.length > 0 ? and(...conditions) : undefined)
421
+ .orderBy(asc(matchGame.number))
422
+ .limit(1);
423
+ return results[0] ? castMatchGame(results[0]) : null;
424
+ },
425
+ async insert(db, data) {
426
+ const values = Array.isArray(data) ? data : [data];
427
+ await db.insert(matchGame).values(values);
428
+ return Array.isArray(data) ? values.length : values[0].id;
429
+ },
430
+ async update(db, id, data) {
431
+ await db
432
+ .update(matchGame)
433
+ .set(data)
434
+ .where(eq(matchGame.id, toStr(id)));
435
+ return true;
436
+ },
437
+ async updateByFilter(db, filter, data) {
438
+ const conditions = [];
439
+ if (filter.parent_id !== undefined) {
440
+ conditions.push(eq(matchGame.parent_id, toStr(filter.parent_id)));
441
+ }
442
+ if (conditions.length === 0)
443
+ return false;
444
+ await db
445
+ .update(matchGame)
446
+ .set(data)
447
+ .where(and(...conditions));
448
+ return true;
449
+ },
450
+ async delete(db, filter) {
451
+ if (filter?.stage_id !== undefined) {
452
+ await db
453
+ .delete(matchGame)
454
+ .where(eq(matchGame.stage_id, toStr(filter.stage_id)));
455
+ }
456
+ else if (filter?.parent_id !== undefined &&
457
+ filter?.number !== undefined) {
458
+ await db
459
+ .delete(matchGame)
460
+ .where(and(eq(matchGame.parent_id, toStr(filter.parent_id)), eq(matchGame.number, filter.number)));
461
+ }
462
+ else if (filter?.parent_id !== undefined) {
463
+ await db
464
+ .delete(matchGame)
465
+ .where(eq(matchGame.parent_id, toStr(filter.parent_id)));
466
+ }
467
+ else {
468
+ await db.delete(matchGame);
469
+ }
470
+ return true;
471
+ },
472
+ };
473
+ //# sourceMappingURL=db.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"db.js","sourceRoot":"","sources":["../../src/core/db.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,13 @@
1
- import { Id } from '@/model';
2
- import { Storage } from './types';
1
+ import { Id } from '../model';
2
+ import type { DrizzleDatabase } from './db';
3
3
  export declare class Delete {
4
- private readonly storage;
4
+ private readonly db;
5
5
  /**
6
6
  * Creates an instance of Delete, which will handle cleanly deleting data in the storage.
7
7
  *
8
- * @param storage The implementation of Storage.
8
+ * @param db The Drizzle database instance.
9
9
  */
10
- constructor(storage: Storage);
10
+ constructor(db: DrizzleDatabase);
11
11
  /**
12
12
  * Deletes a tournament and all its components:
13
13
  *
@@ -1 +1 @@
1
- {"version":3,"file":"delete.d.ts","sourceRoot":"","sources":["../../src/core/delete.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAC7B,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAElC,qBAAa,MAAM;IACf,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAU;IAElC;;;;OAIG;gBACS,OAAO,EAAE,OAAO;IAI5B;;;;;;;;OAQG;IACU,UAAU,CAAC,YAAY,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAiBxD;;;;;;OAMG;IACU,gBAAgB,CAAC,YAAY,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAU9D;;;;;;;;;;;OAWG;IACU,KAAK,CAAC,OAAO,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAkBjD"}
1
+ {"version":3,"file":"delete.d.ts","sourceRoot":"","sources":["../../src/core/delete.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAC7B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AAW5C,qBAAa,MAAM;IACf,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAkB;IAErC;;;;OAIG;gBACS,EAAE,EAAE,eAAe;IAI/B;;;;;;;;OAQG;IACU,UAAU,CAAC,YAAY,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAWxD;;;;;;OAMG;IACU,gBAAgB,CAAC,YAAY,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ9D;;;;;;;;;;;OAWG;IACU,KAAK,CAAC,OAAO,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CASjD"}