tods-competition-factory 1.8.44 → 1.8.45
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/forge/generate.mjs +30 -16
- package/dist/forge/generate.mjs.map +1 -1
- package/dist/forge/transform.mjs +11 -10
- package/dist/forge/transform.mjs.map +1 -1
- package/dist/index.mjs +65 -38
- package/dist/index.mjs.map +1 -1
- package/dist/tods-competition-factory.development.cjs.js +86 -54
- package/dist/tods-competition-factory.development.cjs.js.map +1 -1
- package/dist/tods-competition-factory.production.cjs.min.js +1 -1
- package/dist/tods-competition-factory.production.cjs.min.js.map +1 -1
- package/package.json +1 -1
package/dist/forge/generate.mjs
CHANGED
|
@@ -16481,20 +16481,17 @@ function ensureSideLineUps({
|
|
|
16481
16481
|
|
|
16482
16482
|
const mixedGenderError = "MIXED events can not contain mixed singles or { gender: ANY } collections";
|
|
16483
16483
|
const anyMixedError = "events with { gender: ANY } can not contain MIXED singles collections";
|
|
16484
|
-
function tieFormatGenderValidityCheck({
|
|
16485
|
-
referenceEvent,
|
|
16486
|
-
referenceGender,
|
|
16487
|
-
matchUpType,
|
|
16488
|
-
gender
|
|
16489
|
-
}) {
|
|
16484
|
+
function tieFormatGenderValidityCheck(params) {
|
|
16490
16485
|
const stack = "tieFormatGenderValidityCheck";
|
|
16486
|
+
const { referenceGender, matchUpType, gender } = params;
|
|
16491
16487
|
if (referenceGender && gender && [GenderEnum.Male, GenderEnum.Female].includes(referenceGender) && referenceGender !== gender)
|
|
16492
16488
|
return decorateResult({
|
|
16493
16489
|
result: { valid: false, error: INVALID_GENDER },
|
|
16494
16490
|
context: { gender },
|
|
16495
16491
|
stack
|
|
16496
16492
|
});
|
|
16497
|
-
|
|
16493
|
+
const eventType = params.eventType ?? params.referenceEvent?.eventType;
|
|
16494
|
+
if (referenceGender === MIXED && (eventType !== TEAM$2 || gender === ANY || gender === MIXED && matchUpType !== TypeEnum.Doubles)) {
|
|
16498
16495
|
return decorateResult({
|
|
16499
16496
|
result: { error: INVALID_GENDER, valid: false },
|
|
16500
16497
|
info: mixedGenderError,
|
|
@@ -16849,6 +16846,7 @@ function validateTieFormat(params) {
|
|
|
16849
16846
|
const checkGender = !!(params?.enforceGender !== false && params?.gender);
|
|
16850
16847
|
const checkCollectionIds = params?.checkCollectionIds;
|
|
16851
16848
|
const tieFormat = params?.tieFormat;
|
|
16849
|
+
const event = params?.event;
|
|
16852
16850
|
const stack = "validateTieFormat";
|
|
16853
16851
|
const errors = [];
|
|
16854
16852
|
if (!params || !tieFormat || typeof tieFormat !== "object") {
|
|
@@ -16884,10 +16882,12 @@ function validateTieFormat(params) {
|
|
|
16884
16882
|
const { valid: valid2, errors: collectionDefinitionErrors } = validateCollectionDefinition({
|
|
16885
16883
|
referenceCategory: params.category,
|
|
16886
16884
|
referenceGender: params.gender,
|
|
16885
|
+
eventType: params.eventType,
|
|
16887
16886
|
collectionDefinition,
|
|
16888
16887
|
checkCollectionIds,
|
|
16889
16888
|
checkCategory,
|
|
16890
|
-
checkGender
|
|
16889
|
+
checkGender,
|
|
16890
|
+
event
|
|
16891
16891
|
});
|
|
16892
16892
|
if (valid2) {
|
|
16893
16893
|
return true;
|
|
@@ -16934,6 +16934,7 @@ function validateCollectionDefinition({
|
|
|
16934
16934
|
checkGender = true,
|
|
16935
16935
|
referenceCategory,
|
|
16936
16936
|
referenceGender,
|
|
16937
|
+
eventType,
|
|
16937
16938
|
event
|
|
16938
16939
|
}) {
|
|
16939
16940
|
referenceGender = referenceGender ?? event?.gender;
|
|
@@ -17001,7 +17002,7 @@ function validateCollectionDefinition({
|
|
|
17001
17002
|
}
|
|
17002
17003
|
if (checkGender) {
|
|
17003
17004
|
const result = tieFormatGenderValidityCheck({
|
|
17004
|
-
|
|
17005
|
+
eventType: eventType ?? event?.eventType,
|
|
17005
17006
|
referenceGender,
|
|
17006
17007
|
matchUpType,
|
|
17007
17008
|
gender
|
|
@@ -17033,8 +17034,15 @@ function validateCollectionDefinition({
|
|
|
17033
17034
|
});
|
|
17034
17035
|
return { valid: true };
|
|
17035
17036
|
}
|
|
17036
|
-
function checkTieFormat(
|
|
17037
|
-
|
|
17037
|
+
function checkTieFormat({
|
|
17038
|
+
tieFormat,
|
|
17039
|
+
eventType
|
|
17040
|
+
}) {
|
|
17041
|
+
const result = validateTieFormat({
|
|
17042
|
+
checkCollectionIds: false,
|
|
17043
|
+
eventType,
|
|
17044
|
+
tieFormat
|
|
17045
|
+
});
|
|
17038
17046
|
if (result.error)
|
|
17039
17047
|
return result;
|
|
17040
17048
|
for (const collectionDefinition of tieFormat.collectionDefinitions) {
|
|
@@ -17259,7 +17267,7 @@ function generateTieMatchUpScore(params) {
|
|
|
17259
17267
|
const tieFormat = resolveTieFormat({ matchUp, drawDefinition, structure, event })?.tieFormat || params?.tieFormat;
|
|
17260
17268
|
if (!tieFormat)
|
|
17261
17269
|
return { error: MISSING_TIE_FORMAT };
|
|
17262
|
-
const result = validateTieFormat({ tieFormat });
|
|
17270
|
+
const result = validateTieFormat({ tieFormat, eventType: event?.eventType });
|
|
17263
17271
|
if (result.error)
|
|
17264
17272
|
return result;
|
|
17265
17273
|
const collectionDefinitions = tieFormat?.collectionDefinitions || [];
|
|
@@ -20130,7 +20138,8 @@ function generateVoluntaryConsolation$1(params) {
|
|
|
20130
20138
|
return { error: INVALID_DRAW_SIZE };
|
|
20131
20139
|
let { tieFormat, matchUpType } = params;
|
|
20132
20140
|
if (tieFormat) {
|
|
20133
|
-
const
|
|
20141
|
+
const eventType = params.event?.eventType;
|
|
20142
|
+
const result2 = validateTieFormat({ tieFormat, eventType });
|
|
20134
20143
|
if (result2.error)
|
|
20135
20144
|
return result2;
|
|
20136
20145
|
}
|
|
@@ -21232,7 +21241,8 @@ function generateDrawTypeAndModifyDrawDefinition(params) {
|
|
|
21232
21241
|
const drawDefinition = modifyOriginal ? params.drawDefinition : makeDeepCopy(params.drawDefinition, false, true);
|
|
21233
21242
|
let { tieFormat, matchUpType } = params;
|
|
21234
21243
|
if (tieFormat) {
|
|
21235
|
-
const
|
|
21244
|
+
const eventType = params.event?.eventType;
|
|
21245
|
+
const result2 = validateTieFormat({ tieFormat, eventType });
|
|
21236
21246
|
if (result2.error)
|
|
21237
21247
|
return result2;
|
|
21238
21248
|
}
|
|
@@ -23717,7 +23727,8 @@ function generateDrawDefinition(params) {
|
|
|
23717
23727
|
const result = validateTieFormat({
|
|
23718
23728
|
gender: event?.gender,
|
|
23719
23729
|
enforceGender,
|
|
23720
|
-
tieFormat
|
|
23730
|
+
tieFormat,
|
|
23731
|
+
event
|
|
23721
23732
|
});
|
|
23722
23733
|
if (result.error)
|
|
23723
23734
|
return decorateResult({ result, stack });
|
|
@@ -23736,7 +23747,10 @@ function generateDrawDefinition(params) {
|
|
|
23736
23747
|
const equivalentInScope = matchUpFormat && event?.matchUpFormat === matchUpFormat || event?.tieFormat && tieFormat && JSON.stringify(event.tieFormat) === JSON.stringify(tieFormat);
|
|
23737
23748
|
if (!equivalentInScope) {
|
|
23738
23749
|
if (tieFormat) {
|
|
23739
|
-
const result = checkTieFormat(
|
|
23750
|
+
const result = checkTieFormat({
|
|
23751
|
+
eventType: event.eventType,
|
|
23752
|
+
tieFormat
|
|
23753
|
+
});
|
|
23740
23754
|
if (result.error)
|
|
23741
23755
|
return decorateResult({ result, stack });
|
|
23742
23756
|
drawDefinition.tieFormat = result.tieFormat ?? tieFormat;
|