@mshowes/brackets-manager 1.8.6 → 1.8.7
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.
- package/dist/core/base/getter.d.ts +1 -1
- package/dist/core/base/getter.js +7 -33
- package/dist/core/base/getter.js.map +1 -1
- package/dist/core/base/stage/creator.d.ts +1 -1
- package/dist/core/base/stage/creator.js +38 -75
- package/dist/core/base/stage/creator.js.map +1 -1
- package/dist/core/base/updater.d.ts +1 -1
- package/dist/core/base/updater.js +21 -50
- package/dist/core/base/updater.js.map +1 -1
- package/dist/core/create.d.ts +1 -1
- package/dist/core/create.js +9 -13
- package/dist/core/create.js.map +1 -1
- package/dist/core/delete.d.ts +1 -1
- package/dist/core/delete.js +2 -5
- package/dist/core/delete.js.map +1 -1
- package/dist/core/find.d.ts +1 -1
- package/dist/core/find.js +20 -45
- package/dist/core/find.js.map +1 -1
- package/dist/core/get.d.ts +1 -1
- package/dist/core/get.js +9 -38
- package/dist/core/get.js.map +1 -1
- package/dist/core/helpers.d.ts +1 -1
- package/dist/core/helpers.js +182 -319
- package/dist/core/helpers.js.map +1 -1
- package/dist/core/manager.d.ts +1 -1
- package/dist/core/manager.js +28 -50
- package/dist/core/manager.js.map +1 -1
- package/dist/core/ordering.d.ts +1 -1
- package/dist/core/ordering.js +3 -6
- package/dist/core/ordering.js.map +1 -1
- package/dist/core/reset.d.ts +1 -1
- package/dist/core/reset.js +5 -32
- package/dist/core/reset.js.map +1 -1
- package/dist/core/types.d.ts +1 -1
- package/dist/core/types.js +1 -2
- package/dist/core/update.d.ts +1 -1
- package/dist/core/update.js +7 -34
- package/dist/core/update.js.map +1 -1
- package/dist/index.d.ts +16 -16
- package/dist/index.js +13 -52
- package/dist/index.js.map +1 -1
- package/dist/model/index.js +4 -20
- package/dist/model/index.js.map +1 -1
- package/dist/model/input.js +1 -2
- package/dist/model/input.js.map +1 -1
- package/dist/model/other.js +2 -5
- package/dist/model/other.js.map +1 -1
- package/dist/model/storage.js +1 -2
- package/dist/model/storage.js.map +1 -1
- package/dist/model/unions.js +1 -2
- package/dist/model/unions.js.map +1 -1
- package/dist/storage/drizzle/db/index.js +7 -37
- package/dist/storage/drizzle/db/index.js.map +1 -1
- package/dist/storage/drizzle/db/schema/enums.js +6 -9
- package/dist/storage/drizzle/db/schema/enums.js.map +1 -1
- package/dist/storage/drizzle/db/schema/group.js +16 -19
- package/dist/storage/drizzle/db/schema/group.js.map +1 -1
- package/dist/storage/drizzle/db/schema/index.js +8 -24
- package/dist/storage/drizzle/db/schema/index.js.map +1 -1
- package/dist/storage/drizzle/db/schema/match-game.d.ts +1 -1
- package/dist/storage/drizzle/db/schema/match-game.js +21 -24
- package/dist/storage/drizzle/db/schema/match-game.js.map +1 -1
- package/dist/storage/drizzle/db/schema/match.d.ts +1 -1
- package/dist/storage/drizzle/db/schema/match.js +30 -33
- package/dist/storage/drizzle/db/schema/match.js.map +1 -1
- package/dist/storage/drizzle/db/schema/participant.js +12 -15
- package/dist/storage/drizzle/db/schema/participant.js.map +1 -1
- package/dist/storage/drizzle/db/schema/round.js +20 -23
- package/dist/storage/drizzle/db/schema/round.js.map +1 -1
- package/dist/storage/drizzle/db/schema/stage.d.ts +20 -20
- package/dist/storage/drizzle/db/schema/stage.d.ts.map +1 -1
- package/dist/storage/drizzle/db/schema/stage.js +24 -27
- package/dist/storage/drizzle/db/schema/stage.js.map +1 -1
- package/dist/storage/drizzle/db/schema/tournament.js +15 -18
- package/dist/storage/drizzle/db/schema/tournament.js.map +1 -1
- package/dist/storage/drizzle/index.js +3 -23
- package/dist/storage/drizzle/index.js.map +1 -1
- package/dist/storage/drizzle/storage-handlers/delete-handlers/group.d.ts +1 -1
- package/dist/storage/drizzle/storage-handlers/delete-handlers/match-game.d.ts +1 -1
- package/dist/storage/drizzle/storage-handlers/delete-handlers/match.d.ts +1 -1
- package/dist/storage/drizzle/storage-handlers/delete-handlers/participant.d.ts +1 -1
- package/dist/storage/drizzle/storage-handlers/delete-handlers/round.d.ts +1 -1
- package/dist/storage/drizzle/storage-handlers/delete-handlers/stage.d.ts +1 -1
- package/dist/storage/drizzle/storage-handlers/delete.d.ts +1 -1
- package/dist/storage/drizzle/storage-handlers/insert-handlers/group.d.ts +1 -1
- package/dist/storage/drizzle/storage-handlers/insert-handlers/match-game.d.ts +1 -1
- package/dist/storage/drizzle/storage-handlers/insert-handlers/match.d.ts +1 -1
- package/dist/storage/drizzle/storage-handlers/insert-handlers/participant.d.ts +1 -1
- package/dist/storage/drizzle/storage-handlers/insert-handlers/round.d.ts +1 -1
- package/dist/storage/drizzle/storage-handlers/insert-handlers/stage.d.ts +1 -1
- package/dist/storage/drizzle/storage-handlers/insert.d.ts +1 -1
- package/dist/storage/drizzle/storage-handlers/select-handlers/group.d.ts +1 -1
- package/dist/storage/drizzle/storage-handlers/select-handlers/match-game.d.ts +1 -1
- package/dist/storage/drizzle/storage-handlers/select-handlers/match.d.ts +1 -1
- package/dist/storage/drizzle/storage-handlers/select-handlers/participant.d.ts +1 -1
- package/dist/storage/drizzle/storage-handlers/select-handlers/round.d.ts +1 -1
- package/dist/storage/drizzle/storage-handlers/select-handlers/stage.d.ts +1 -1
- package/dist/storage/drizzle/storage-handlers/select-handlers/tournament.d.ts +1 -1
- package/dist/storage/drizzle/storage-handlers/select.d.ts +1 -1
- package/dist/storage/drizzle/storage-handlers/update-handlers/group.d.ts +1 -1
- package/dist/storage/drizzle/storage-handlers/update-handlers/match-game.d.ts +1 -1
- package/dist/storage/drizzle/storage-handlers/update-handlers/match.d.ts +1 -1
- package/dist/storage/drizzle/storage-handlers/update-handlers/participant.d.ts +1 -1
- package/dist/storage/drizzle/storage-handlers/update-handlers/round.d.ts +1 -1
- package/dist/storage/drizzle/storage-handlers/update-handlers/stage.d.ts +1 -1
- package/dist/storage/drizzle/storage-handlers/update.d.ts +1 -1
- package/dist/storage/drizzle/storage.d.ts +1 -1
- package/dist/storage/drizzle/storage.d.ts.map +1 -1
- package/dist/storage/drizzle/storage.js +29 -35
- package/dist/storage/drizzle/storage.js.map +1 -1
- package/dist/storage/drizzle/transformers/enum/grand-final-type.d.ts +1 -1
- package/dist/storage/drizzle/transformers/enum/match-result.d.ts +1 -1
- package/dist/storage/drizzle/transformers/enum/match-status.d.ts +1 -1
- package/dist/storage/drizzle/transformers/enum/match-status.js +1 -1
- package/dist/storage/drizzle/transformers/enum/round-robin-mode.d.ts +1 -1
- package/dist/storage/drizzle/transformers/enum/seed-ordering.d.ts +1 -1
- package/dist/storage/drizzle/transformers/enum/stage-type.d.ts +1 -1
- package/dist/storage/drizzle/transformers/model/group.d.ts +2 -2
- package/dist/storage/drizzle/transformers/model/match-game.d.ts +2 -2
- package/dist/storage/drizzle/transformers/model/match.d.ts +2 -2
- package/dist/storage/drizzle/transformers/model/participant-result.d.ts +1 -1
- package/dist/storage/drizzle/transformers/model/participant.d.ts +3 -3
- package/dist/storage/drizzle/transformers/model/round.d.ts +2 -2
- package/dist/storage/drizzle/transformers/model/stage-settings.d.ts +2 -2
- package/dist/storage/drizzle/transformers/model/stage.d.ts +2 -2
- package/dist/storage/drizzle/transformers/model/tournament.d.ts +1 -1
- package/dist/storage/drizzle/types.d.ts +1 -1
- package/dist/storage/drizzle/types.js +1 -2
- package/package.json +12 -17
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { DataTypes } from '
|
|
1
|
+
import { DataTypes } from '../../../../core/types';
|
|
2
2
|
import type { DrizzleDatabase } from '../../db';
|
|
3
3
|
export declare function handleGroupUpdate(db: DrizzleDatabase, filter: Partial<DataTypes['group']> | number | string, value: Partial<DataTypes['group']> | DataTypes['group']): Promise<boolean>;
|
|
4
4
|
//# sourceMappingURL=group.d.ts.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import type { DrizzleDatabase } from '../../db';
|
|
2
|
-
import type { MatchGameWithExtra } from '
|
|
2
|
+
import type { MatchGameWithExtra } from '../../types';
|
|
3
3
|
export declare function handleMatchGameUpdate(db: DrizzleDatabase, filter: Partial<MatchGameWithExtra> | number | string, value: Partial<MatchGameWithExtra> | MatchGameWithExtra): Promise<boolean>;
|
|
4
4
|
//# sourceMappingURL=match-game.d.ts.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import type { DrizzleDatabase } from '../../db';
|
|
2
|
-
import type { MatchWithExtra } from '
|
|
2
|
+
import type { MatchWithExtra } from '../../types';
|
|
3
3
|
export declare function handleMatchUpdate(db: DrizzleDatabase, filter: Partial<MatchWithExtra> | number | string, value: Partial<MatchWithExtra> | MatchWithExtra): Promise<boolean>;
|
|
4
4
|
//# sourceMappingURL=match.d.ts.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { DataTypes } from '
|
|
1
|
+
import { DataTypes } from '../../../../core/types';
|
|
2
2
|
import type { DrizzleDatabase } from '../../db';
|
|
3
3
|
export declare function handleParticipantUpdate(db: DrizzleDatabase, filter: Partial<DataTypes['participant']> | number | string, value: Partial<DataTypes['participant']> | DataTypes['participant']): Promise<boolean>;
|
|
4
4
|
//# sourceMappingURL=participant.d.ts.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { DataTypes } from '
|
|
1
|
+
import { DataTypes } from '../../../../core/types';
|
|
2
2
|
import type { DrizzleDatabase } from '../../db';
|
|
3
3
|
export declare function handleRoundUpdate(db: DrizzleDatabase, filter: Partial<DataTypes['round']> | number | string, value: Partial<DataTypes['round']> | DataTypes['round']): Promise<boolean>;
|
|
4
4
|
//# sourceMappingURL=round.d.ts.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { DataTypes } from '
|
|
1
|
+
import { DataTypes } from '../../../../core/types';
|
|
2
2
|
import type { DrizzleDatabase } from '../../db';
|
|
3
3
|
export declare function handleStageUpdate(db: DrizzleDatabase, filter: Partial<DataTypes['stage']> | number | string, value: Partial<DataTypes['stage']> | DataTypes['stage']): Promise<boolean>;
|
|
4
4
|
//# sourceMappingURL=stage.d.ts.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { DataTypes } from '
|
|
1
|
+
import { DataTypes } from '../../../core/types';
|
|
2
2
|
import type { DrizzleDatabase } from '../db';
|
|
3
3
|
export declare function handleUpdate<T extends keyof DataTypes>(db: DrizzleDatabase, table: T | 'tournament', filter: Partial<DataTypes[T]> | number, value: Partial<DataTypes[T]> | DataTypes[T]): Promise<boolean>;
|
|
4
4
|
//# sourceMappingURL=update.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../../src/storage/drizzle/storage.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,aAAa,EAAqB,MAAM,cAAc,CAAC;AAChE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AAC5C,OAAO,EAQH,KAAK,UAAU,IAAI,aAAa,EAChC,KAAK,aAAa,EACrB,MAAM,aAAa,CAAC;AAuCrB;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,EAAE,EAAE,eAAe,GAAG,aAAa,CA8KhE;AAGD,eAAO,MAAM,oBAAoB;IAC7B;;;;;OAKG;eACc,eAAe,GAAG,
|
|
1
|
+
{"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../../src/storage/drizzle/storage.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,aAAa,EAAqB,MAAM,cAAc,CAAC;AAChE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AAC5C,OAAO,EAQH,KAAK,UAAU,IAAI,aAAa,EAChC,KAAK,aAAa,EACrB,MAAM,aAAa,CAAC;AAuCrB;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,EAAE,EAAE,eAAe,GAAG,aAAa,CA8KhE;AAGD,eAAO,MAAM,oBAAoB;IAC7B;;;;;OAKG;eACc,eAAe,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAI3D;;;;;;OAMG;gBAEK,eAAe,MACf,MAAM,GACX,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;IAShC;;;;;;OAMG;eACc,eAAe,QAAQ,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC;IAKvE;;;;;;;OAOG;eAEK,eAAe,MACf,MAAM,QACJ,OAAO,CAAC,aAAa,CAAC,GAC7B,OAAO,CAAC,OAAO,CAAC;IAKnB;;;;;;OAMG;eACc,eAAe,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAIlE,CAAC"}
|
|
@@ -1,19 +1,16 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.tournamentOperations = exports.createStorage = void 0;
|
|
4
1
|
/* eslint-disable @typescript-eslint/no-unsafe-member-access */
|
|
5
2
|
/* eslint-disable @typescript-eslint/no-unsafe-argument */
|
|
6
3
|
/* eslint-disable @typescript-eslint/no-unsafe-assignment */
|
|
7
|
-
|
|
8
|
-
|
|
4
|
+
import { eq, and, asc } from 'drizzle-orm';
|
|
5
|
+
import { tournament, participant, stage, group, round, match, matchGame, } from './db/schema';
|
|
9
6
|
// Map table names to Drizzle schema objects
|
|
10
7
|
const tables = {
|
|
11
|
-
participant
|
|
12
|
-
stage
|
|
13
|
-
group
|
|
14
|
-
round
|
|
15
|
-
match
|
|
16
|
-
match_game:
|
|
8
|
+
participant,
|
|
9
|
+
stage,
|
|
10
|
+
group,
|
|
11
|
+
round,
|
|
12
|
+
match,
|
|
13
|
+
match_game: matchGame,
|
|
17
14
|
};
|
|
18
15
|
/**
|
|
19
16
|
* Get a column from a table by key name.
|
|
@@ -43,7 +40,7 @@ function getTable(tableName) {
|
|
|
43
40
|
* @param db - The Drizzle database instance
|
|
44
41
|
* @returns An object implementing CrudInterface with insert, select, update, and delete methods
|
|
45
42
|
*/
|
|
46
|
-
function createStorage(db) {
|
|
43
|
+
export function createStorage(db) {
|
|
47
44
|
const insert = async (tableName, values) => {
|
|
48
45
|
const table = getTable(tableName);
|
|
49
46
|
if (!table)
|
|
@@ -59,18 +56,17 @@ function createStorage(db) {
|
|
|
59
56
|
}
|
|
60
57
|
};
|
|
61
58
|
const select = async (tableName, filter) => {
|
|
62
|
-
var _a, _b;
|
|
63
59
|
const table = getTable(tableName);
|
|
64
60
|
if (!table)
|
|
65
61
|
return null;
|
|
66
62
|
try {
|
|
67
63
|
// No filter - return all
|
|
68
64
|
if (filter === undefined) {
|
|
69
|
-
const orderCol =
|
|
65
|
+
const orderCol = getColumn(table, 'number') ?? getColumn(table, 'id');
|
|
70
66
|
const results = await db
|
|
71
67
|
.select()
|
|
72
68
|
.from(table)
|
|
73
|
-
.orderBy(orderCol ?
|
|
69
|
+
.orderBy(orderCol ? asc(orderCol) : asc(getColumn(table, 'id')));
|
|
74
70
|
return results;
|
|
75
71
|
}
|
|
76
72
|
// Filter by ID
|
|
@@ -79,7 +75,7 @@ function createStorage(db) {
|
|
|
79
75
|
const results = await db
|
|
80
76
|
.select()
|
|
81
77
|
.from(table)
|
|
82
|
-
.where(
|
|
78
|
+
.where(eq(idCol, String(filter)))
|
|
83
79
|
.limit(1);
|
|
84
80
|
return results.length > 0
|
|
85
81
|
? results[0]
|
|
@@ -95,15 +91,15 @@ function createStorage(db) {
|
|
|
95
91
|
const val = typeof value === 'number' && key.endsWith('_id')
|
|
96
92
|
? String(value)
|
|
97
93
|
: value;
|
|
98
|
-
return
|
|
94
|
+
return eq(column, val);
|
|
99
95
|
})
|
|
100
96
|
.filter((c) => c !== null);
|
|
101
|
-
const orderCol =
|
|
97
|
+
const orderCol = getColumn(table, 'number') ?? getColumn(table, 'id');
|
|
102
98
|
const results = await db
|
|
103
99
|
.select()
|
|
104
100
|
.from(table)
|
|
105
|
-
.where(conditions.length > 0 ?
|
|
106
|
-
.orderBy(orderCol ?
|
|
101
|
+
.where(conditions.length > 0 ? and(...conditions) : undefined)
|
|
102
|
+
.orderBy(orderCol ? asc(orderCol) : asc(getColumn(table, 'id')));
|
|
107
103
|
return results;
|
|
108
104
|
}
|
|
109
105
|
catch (e) {
|
|
@@ -122,7 +118,7 @@ function createStorage(db) {
|
|
|
122
118
|
await db
|
|
123
119
|
.update(table)
|
|
124
120
|
.set(value)
|
|
125
|
-
.where(
|
|
121
|
+
.where(eq(idCol, String(filter)));
|
|
126
122
|
return true;
|
|
127
123
|
}
|
|
128
124
|
// Filter by object
|
|
@@ -135,7 +131,7 @@ function createStorage(db) {
|
|
|
135
131
|
const val = typeof v === 'number' && key.endsWith('_id')
|
|
136
132
|
? String(v)
|
|
137
133
|
: v;
|
|
138
|
-
return
|
|
134
|
+
return eq(column, val);
|
|
139
135
|
})
|
|
140
136
|
.filter((c) => c !== null);
|
|
141
137
|
if (conditions.length === 0)
|
|
@@ -143,7 +139,7 @@ function createStorage(db) {
|
|
|
143
139
|
await db
|
|
144
140
|
.update(table)
|
|
145
141
|
.set(value)
|
|
146
|
-
.where(
|
|
142
|
+
.where(and(...conditions));
|
|
147
143
|
return true;
|
|
148
144
|
}
|
|
149
145
|
catch (e) {
|
|
@@ -171,13 +167,13 @@ function createStorage(db) {
|
|
|
171
167
|
const val = typeof v === 'number' && key.endsWith('_id')
|
|
172
168
|
? String(v)
|
|
173
169
|
: v;
|
|
174
|
-
return
|
|
170
|
+
return eq(column, val);
|
|
175
171
|
})
|
|
176
172
|
.filter((c) => c !== null);
|
|
177
173
|
if (conditions.length === 0)
|
|
178
174
|
await db.delete(table);
|
|
179
175
|
else
|
|
180
|
-
await db.delete(table).where(
|
|
176
|
+
await db.delete(table).where(and(...conditions));
|
|
181
177
|
return true;
|
|
182
178
|
}
|
|
183
179
|
catch (e) {
|
|
@@ -192,9 +188,8 @@ function createStorage(db) {
|
|
|
192
188
|
delete: deleteOp,
|
|
193
189
|
};
|
|
194
190
|
}
|
|
195
|
-
exports.createStorage = createStorage;
|
|
196
191
|
// Re-export tournament operations separately since it's not part of DataTypes
|
|
197
|
-
|
|
192
|
+
export const tournamentOperations = {
|
|
198
193
|
/**
|
|
199
194
|
* Get all tournaments.
|
|
200
195
|
*
|
|
@@ -202,7 +197,7 @@ exports.tournamentOperations = {
|
|
|
202
197
|
* @returns Array of all tournaments
|
|
203
198
|
*/
|
|
204
199
|
async getAll(db) {
|
|
205
|
-
return db.select().from(
|
|
200
|
+
return db.select().from(tournament);
|
|
206
201
|
},
|
|
207
202
|
/**
|
|
208
203
|
* Get a tournament by ID.
|
|
@@ -212,13 +207,12 @@ exports.tournamentOperations = {
|
|
|
212
207
|
* @returns The tournament or null if not found
|
|
213
208
|
*/
|
|
214
209
|
async getById(db, id) {
|
|
215
|
-
var _a;
|
|
216
210
|
const results = await db
|
|
217
211
|
.select()
|
|
218
|
-
.from(
|
|
219
|
-
.where(
|
|
212
|
+
.from(tournament)
|
|
213
|
+
.where(eq(tournament.id, id))
|
|
220
214
|
.limit(1);
|
|
221
|
-
return
|
|
215
|
+
return results[0] ?? null;
|
|
222
216
|
},
|
|
223
217
|
/**
|
|
224
218
|
* Create a new tournament.
|
|
@@ -228,7 +222,7 @@ exports.tournamentOperations = {
|
|
|
228
222
|
* @returns The created tournament ID
|
|
229
223
|
*/
|
|
230
224
|
async create(db, data) {
|
|
231
|
-
await db.insert(
|
|
225
|
+
await db.insert(tournament).values(data);
|
|
232
226
|
return data.id;
|
|
233
227
|
},
|
|
234
228
|
/**
|
|
@@ -240,7 +234,7 @@ exports.tournamentOperations = {
|
|
|
240
234
|
* @returns True if updated successfully
|
|
241
235
|
*/
|
|
242
236
|
async update(db, id, data) {
|
|
243
|
-
await db.update(
|
|
237
|
+
await db.update(tournament).set(data).where(eq(tournament.id, id));
|
|
244
238
|
return true;
|
|
245
239
|
},
|
|
246
240
|
/**
|
|
@@ -251,7 +245,7 @@ exports.tournamentOperations = {
|
|
|
251
245
|
* @returns True if deleted successfully
|
|
252
246
|
*/
|
|
253
247
|
async delete(db, id) {
|
|
254
|
-
await db.delete(
|
|
248
|
+
await db.delete(tournament).where(eq(tournament.id, id));
|
|
255
249
|
return true;
|
|
256
250
|
},
|
|
257
251
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"storage.js","sourceRoot":"","sources":["../../../src/storage/drizzle/storage.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"storage.js","sourceRoot":"","sources":["../../../src/storage/drizzle/storage.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.MatchStatusTransformer = void 0;
|
|
4
|
-
const model_1 = require("
|
|
4
|
+
const model_1 = require("../../../../model");
|
|
5
5
|
exports.MatchStatusTransformer = {
|
|
6
6
|
to(status) {
|
|
7
7
|
switch (status) {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { Group } from '
|
|
2
|
-
import { OmitId } from '
|
|
1
|
+
import { Group } from '../../../../model';
|
|
2
|
+
import { OmitId } from '../../../../core/types';
|
|
3
3
|
import type { Group as DrizzleGroup } from '../../db/schema';
|
|
4
4
|
type GroupInput = {
|
|
5
5
|
stage_id: number | string;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { OmitId } from '
|
|
2
|
-
import type { MatchGameWithExtra, MatchGameExtrasInput, JsonValue } from '
|
|
1
|
+
import { OmitId } from '../../../../core/types';
|
|
2
|
+
import type { MatchGameWithExtra, MatchGameExtrasInput, JsonValue } from '../../types';
|
|
3
3
|
import type { MatchGame as DrizzleMatchGame, ParticipantMatchGameResult } from '../../db/schema';
|
|
4
4
|
type DrizzleMatchGameWithRelations = DrizzleMatchGame & {
|
|
5
5
|
opponent1Result: ParticipantMatchGameResult | null;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { OmitId } from '
|
|
2
|
-
import type { MatchWithExtra, MatchExtrasInput, JsonValue } from '
|
|
1
|
+
import { OmitId } from '../../../../core/types';
|
|
2
|
+
import type { MatchWithExtra, MatchExtrasInput, JsonValue } from '../../types';
|
|
3
3
|
import type { Match as DrizzleMatch, ParticipantMatchResult } from '../../db/schema';
|
|
4
4
|
type DrizzleMatchWithRelations = DrizzleMatch & {
|
|
5
5
|
opponent1Result: ParticipantMatchResult | null;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ParticipantResult } from '
|
|
1
|
+
import { ParticipantResult } from '../../../../model';
|
|
2
2
|
import type { ParticipantMatchResult, ParticipantMatchGameResult } from '../../db/schema';
|
|
3
3
|
type DrizzleParticipantResult = ParticipantMatchResult | ParticipantMatchGameResult;
|
|
4
4
|
type ParticipantResultInput = {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { Participant } from '
|
|
2
|
-
import { OmitId } from '
|
|
1
|
+
import { Participant } from '../../../../model';
|
|
2
|
+
import { OmitId } from '../../../../core/types';
|
|
3
3
|
import type { Participant as DrizzleParticipant } from '../../db/schema';
|
|
4
|
-
import type { JsonValue } from '
|
|
4
|
+
import type { JsonValue } from '../../types';
|
|
5
5
|
export declare function participantExtraFromInput(input: Record<string, unknown>): JsonValue | null;
|
|
6
6
|
type ParticipantInput = {
|
|
7
7
|
name: string;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { Round } from '
|
|
2
|
-
import { OmitId } from '
|
|
1
|
+
import { Round } from '../../../../model';
|
|
2
|
+
import { OmitId } from '../../../../core/types';
|
|
3
3
|
import type { Round as DrizzleRound } from '../../db/schema';
|
|
4
4
|
type RoundInput = {
|
|
5
5
|
stage_id: number | string;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { StageSettings } from '
|
|
2
|
-
import { OmitId } from '
|
|
1
|
+
import { StageSettings } from '../../../../model';
|
|
2
|
+
import { OmitId } from '../../../../core/types';
|
|
3
3
|
import type { StageSettings as DrizzleStageSettings } from '../../db/schema';
|
|
4
4
|
export declare const StageSettingsTransformer: {
|
|
5
5
|
to(input: OmitId<StageSettings>): {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { Stage, StageType } from '
|
|
2
|
-
import { OmitId } from '
|
|
1
|
+
import { Stage, StageType } from '../../../../model';
|
|
2
|
+
import { OmitId } from '../../../../core/types';
|
|
3
3
|
import type { Stage as DrizzleStage, StageSettings as DrizzleStageSettings } from '../../db/schema';
|
|
4
4
|
type DrizzleStageWithSettings = DrizzleStage & {
|
|
5
5
|
settings: DrizzleStageSettings | null;
|
package/package.json
CHANGED
|
@@ -1,14 +1,21 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mshowes/brackets-manager",
|
|
3
|
-
"version": "1.8.
|
|
3
|
+
"version": "1.8.7",
|
|
4
4
|
"description": "A simple library to manage tournament brackets (based on brackets-manager.js)",
|
|
5
|
+
"type": "module",
|
|
5
6
|
"main": "./dist/index.js",
|
|
6
7
|
"types": "./dist/index.d.ts",
|
|
8
|
+
"exports": {
|
|
9
|
+
".": {
|
|
10
|
+
"types": "./dist/index.d.ts",
|
|
11
|
+
"import": "./dist/index.js"
|
|
12
|
+
}
|
|
13
|
+
},
|
|
7
14
|
"files": [
|
|
8
15
|
"dist"
|
|
9
16
|
],
|
|
10
17
|
"engines": {
|
|
11
|
-
"node": ">=
|
|
18
|
+
"node": ">=16"
|
|
12
19
|
},
|
|
13
20
|
"dependencies": {
|
|
14
21
|
"drizzle-orm": "^0.38.4",
|
|
@@ -16,30 +23,18 @@
|
|
|
16
23
|
"uuid": "^9.0.0"
|
|
17
24
|
},
|
|
18
25
|
"devDependencies": {
|
|
19
|
-
"@types/chai": "^4.3.3",
|
|
20
|
-
"@types/mocha": "^9.1.1",
|
|
21
26
|
"@types/node": "18.11.9",
|
|
22
27
|
"@types/uuid": "^9.0.2",
|
|
23
28
|
"@typescript-eslint/eslint-plugin": "^5.42.0",
|
|
24
29
|
"@typescript-eslint/parser": "^5.42.0",
|
|
25
|
-
"brackets-json-db": "1.0.2",
|
|
26
|
-
"brackets-memory-db": "^1.0.4",
|
|
27
|
-
"chai": "^4.3.6",
|
|
28
|
-
"chai-as-promised": "^7.1.1",
|
|
29
30
|
"eslint": "^8.26.0",
|
|
30
31
|
"eslint-plugin-jsdoc": "^39.6.2",
|
|
31
|
-
"
|
|
32
|
-
"
|
|
33
|
-
"mocha-each": "^2.0.1",
|
|
34
|
-
"nyc": "^15.1.0",
|
|
35
|
-
"typescript": "^4.8.4"
|
|
32
|
+
"tsc-alias": "^1.8.16",
|
|
33
|
+
"typescript": "^5.7.2"
|
|
36
34
|
},
|
|
37
35
|
"scripts": {
|
|
38
36
|
"lint": "eslint '**/*.{js,ts}' --fix",
|
|
39
|
-
"test": "mocha 'test/**/*.spec.js'",
|
|
40
|
-
"db": "json-server --watch db.json",
|
|
41
37
|
"start": "tsc --watch",
|
|
42
|
-
"build": "tsc"
|
|
43
|
-
"coverage": "nyc -r text -r lcov npm test"
|
|
38
|
+
"build": "tsc && tsc-alias"
|
|
44
39
|
}
|
|
45
40
|
}
|