@ttt-productions/q-core 0.1.37 → 0.1.38

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 (47) hide show
  1. package/dist/doc-schemas/game-location.d.ts +9 -4
  2. package/dist/doc-schemas/game-location.d.ts.map +1 -1
  3. package/dist/doc-schemas/game-location.js +18 -5
  4. package/dist/doc-schemas/game-location.js.map +1 -1
  5. package/dist/doc-schemas/league-team.d.ts +1 -1
  6. package/dist/doc-schemas/league-team.d.ts.map +1 -1
  7. package/dist/doc-schemas/league-team.js +2 -2
  8. package/dist/doc-schemas/league-team.js.map +1 -1
  9. package/dist/doc-schemas/registry.d.ts +27 -27
  10. package/dist/doc-schemas/sport-game.d.ts +18 -18
  11. package/dist/doc-schemas/sport-game.d.ts.map +1 -1
  12. package/dist/doc-schemas/sport-game.js +6 -5
  13. package/dist/doc-schemas/sport-game.js.map +1 -1
  14. package/dist/doc-schemas/sport-league.d.ts +3 -3
  15. package/dist/doc-schemas/sport-league.d.ts.map +1 -1
  16. package/dist/doc-schemas/sport-league.js +9 -7
  17. package/dist/doc-schemas/sport-league.js.map +1 -1
  18. package/dist/doc-schemas/system.d.ts +4 -4
  19. package/dist/doc-schemas/system.d.ts.map +1 -1
  20. package/dist/doc-schemas/system.js +7 -6
  21. package/dist/doc-schemas/system.js.map +1 -1
  22. package/dist/doc-schemas/team-membership.d.ts +2 -2
  23. package/dist/doc-schemas/team-membership.d.ts.map +1 -1
  24. package/dist/doc-schemas/team-membership.js +4 -3
  25. package/dist/doc-schemas/team-membership.js.map +1 -1
  26. package/dist/doc-schemas/user-profile.d.ts +1 -1
  27. package/dist/doc-schemas/user-profile.d.ts.map +1 -1
  28. package/dist/doc-schemas/user-profile.js +2 -2
  29. package/dist/doc-schemas/user-profile.js.map +1 -1
  30. package/dist/doc-schemas/waiver-template.d.ts +4 -4
  31. package/dist/doc-schemas/waiver-template.d.ts.map +1 -1
  32. package/dist/doc-schemas/waiver-template.js +8 -5
  33. package/dist/doc-schemas/waiver-template.js.map +1 -1
  34. package/dist/migration-console/manifest.d.ts.map +1 -1
  35. package/dist/migration-console/manifest.js +6 -5
  36. package/dist/migration-console/manifest.js.map +1 -1
  37. package/dist/schemas/game-locations.d.ts +0 -5
  38. package/dist/schemas/game-locations.d.ts.map +1 -1
  39. package/dist/schemas/game-locations.js +1 -14
  40. package/dist/schemas/game-locations.js.map +1 -1
  41. package/dist/schemas/leagues.d.ts +0 -1
  42. package/dist/schemas/leagues.d.ts.map +1 -1
  43. package/dist/schemas/leagues.js +1 -3
  44. package/dist/schemas/leagues.js.map +1 -1
  45. package/dist/schemas/schedules.js +1 -1
  46. package/dist/schemas/schedules.js.map +1 -1
  47. package/package.json +1 -1
@@ -1,10 +1,15 @@
1
1
  import { z } from 'zod';
2
2
  export declare const gameLocationIdSchema: z.ZodString;
3
+ export declare const gameLocationNameSchema: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
4
+ export declare const gameLocationStreetAddressSchema: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
5
+ export declare const gameLocationSubLocationSchema: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
6
+ export declare const gameLocationSubLocationsSchema: z.ZodArray<z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>>;
7
+ export declare const gameLocationMemoSchema: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
3
8
  export declare const GameLocationSchema: z.ZodObject<{
4
- name: z.ZodString;
5
- streetAddress: z.ZodString;
6
- subLocations: z.ZodArray<z.ZodString>;
7
- memo: z.ZodOptional<z.ZodString>;
9
+ name: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
10
+ streetAddress: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
11
+ subLocations: z.ZodArray<z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>>;
12
+ memo: z.ZodOptional<z.ZodPipe<z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>, z.ZodString>>;
8
13
  pictureId: z.ZodOptional<z.ZodString>;
9
14
  createdAt: z.ZodNumber;
10
15
  updatedAt: z.ZodNumber;
@@ -1 +1 @@
1
- {"version":3,"file":"game-location.d.ts","sourceRoot":"","sources":["../../src/doc-schemas/game-location.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,oBAAoB,aAA0B,CAAC;AAE5D,eAAO,MAAM,kBAAkB;;;;;;;;iBAQ7B,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAI9D,eAAO,MAAM,0BAA0B;;kBAErC,CAAC;AACH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC"}
1
+ {"version":3,"file":"game-location.d.ts","sourceRoot":"","sources":["../../src/doc-schemas/game-location.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAWxB,eAAO,MAAM,oBAAoB,aAA0B,CAAC;AAE5D,eAAO,MAAM,sBAAsB,wDAAmD,CAAC;AACvF,eAAO,MAAM,+BAA+B,wDAE3C,CAAC;AACF,eAAO,MAAM,6BAA6B,wDAEzC,CAAC;AACF,eAAO,MAAM,8BAA8B,oEAKvC,CAAC;AACL,eAAO,MAAM,sBAAsB,wDAAmD,CAAC;AAEvF,eAAO,MAAM,kBAAkB;;;;;;;;iBAS7B,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAI9D,eAAO,MAAM,0BAA0B;;kBAErC,CAAC;AACH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC"}
@@ -1,12 +1,25 @@
1
1
  import { z } from 'zod';
2
- import { countSchema, documentIdSegmentSchema, epochMsSchema } from './atoms.js';
2
+ import { MAX_GAME_LOCATION_SUB_LOCATIONS } from '../constants/business.js';
3
+ import { GAME_LOCATION_MEMO_INPUT_FORMAT, GAME_LOCATION_NAME_INPUT_FORMAT, GAME_LOCATION_STREET_ADDRESS_INPUT_FORMAT, GAME_LOCATION_SUB_LOCATION_INPUT_FORMAT, } from '../input-formats/input-formats.js';
4
+ import { countSchema, documentIdSegmentSchema, epochMsSchema, textFieldSchema } from './atoms.js';
3
5
  import { pictureIdSchema } from './gallery.js';
4
6
  export const gameLocationIdSchema = documentIdSegmentSchema;
7
+ export const gameLocationNameSchema = textFieldSchema(GAME_LOCATION_NAME_INPUT_FORMAT);
8
+ export const gameLocationStreetAddressSchema = textFieldSchema(GAME_LOCATION_STREET_ADDRESS_INPUT_FORMAT);
9
+ export const gameLocationSubLocationSchema = textFieldSchema(GAME_LOCATION_SUB_LOCATION_INPUT_FORMAT);
10
+ export const gameLocationSubLocationsSchema = z
11
+ .array(gameLocationSubLocationSchema)
12
+ .max(MAX_GAME_LOCATION_SUB_LOCATIONS)
13
+ .refine((subLocations) => new Set(subLocations).size === subLocations.length, {
14
+ message: 'Each sub-location may appear only once.',
15
+ });
16
+ export const gameLocationMemoSchema = textFieldSchema(GAME_LOCATION_MEMO_INPUT_FORMAT);
5
17
  export const GameLocationSchema = z.object({
6
- name: z.string().min(1),
7
- streetAddress: z.string(),
8
- subLocations: z.array(z.string()),
9
- memo: z.string().min(1).optional(),
18
+ name: gameLocationNameSchema,
19
+ streetAddress: gameLocationStreetAddressSchema,
20
+ subLocations: gameLocationSubLocationsSchema,
21
+ // An empty memo is stored as no memo.
22
+ memo: gameLocationMemoSchema.pipe(z.string().min(1)).optional(),
10
23
  pictureId: pictureIdSchema.optional(),
11
24
  createdAt: epochMsSchema,
12
25
  updatedAt: epochMsSchema,
@@ -1 +1 @@
1
- {"version":3,"file":"game-location.js","sourceRoot":"","sources":["../../src/doc-schemas/game-location.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,WAAW,EAAE,uBAAuB,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AACjF,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/C,MAAM,CAAC,MAAM,oBAAoB,GAAG,uBAAuB,CAAC;AAE5D,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE;IACzB,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IACjC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IAClC,SAAS,EAAE,eAAe,CAAC,QAAQ,EAAE;IACrC,SAAS,EAAE,aAAa;IACxB,SAAS,EAAE,aAAa;CACzB,CAAC,CAAC;AAGH,gGAAgG;AAChG,6BAA6B;AAC7B,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,YAAY,CAAC;IACvD,gBAAgB,EAAE,WAAW;CAC9B,CAAC,CAAC","sourcesContent":["import { z } from 'zod';\nimport { countSchema, documentIdSegmentSchema, epochMsSchema } from './atoms.js';\nimport { pictureIdSchema } from './gallery.js';\n\nexport const gameLocationIdSchema = documentIdSegmentSchema;\n\nexport const GameLocationSchema = z.object({\n name: z.string().min(1),\n streetAddress: z.string(),\n subLocations: z.array(z.string()),\n memo: z.string().min(1).optional(),\n pictureId: pictureIdSchema.optional(),\n createdAt: epochMsSchema,\n updatedAt: epochMsSchema,\n});\nexport type GameLocation = z.infer<typeof GameLocationSchema>;\n\n// `_serverData/gameLocationRegistry` — the write fence of the venue cap (RULE-STD-BACKEND-116):\n// only its changing matters.\nexport const GameLocationRegistrySchema = z.strictObject({\n locationRevision: countSchema,\n});\nexport type GameLocationRegistry = z.infer<typeof GameLocationRegistrySchema>;\n"]}
1
+ {"version":3,"file":"game-location.js","sourceRoot":"","sources":["../../src/doc-schemas/game-location.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,+BAA+B,EAAE,MAAM,0BAA0B,CAAC;AAC3E,OAAO,EACL,+BAA+B,EAC/B,+BAA+B,EAC/B,yCAAyC,EACzC,uCAAuC,GACxC,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,uBAAuB,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAClG,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/C,MAAM,CAAC,MAAM,oBAAoB,GAAG,uBAAuB,CAAC;AAE5D,MAAM,CAAC,MAAM,sBAAsB,GAAG,eAAe,CAAC,+BAA+B,CAAC,CAAC;AACvF,MAAM,CAAC,MAAM,+BAA+B,GAAG,eAAe,CAC5D,yCAAyC,CAC1C,CAAC;AACF,MAAM,CAAC,MAAM,6BAA6B,GAAG,eAAe,CAC1D,uCAAuC,CACxC,CAAC;AACF,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC;KAC5C,KAAK,CAAC,6BAA6B,CAAC;KACpC,GAAG,CAAC,+BAA+B,CAAC;KACpC,MAAM,CAAC,CAAC,YAAY,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC,IAAI,KAAK,YAAY,CAAC,MAAM,EAAE;IAC5E,OAAO,EAAE,yCAAyC;CACnD,CAAC,CAAC;AACL,MAAM,CAAC,MAAM,sBAAsB,GAAG,eAAe,CAAC,+BAA+B,CAAC,CAAC;AAEvF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,IAAI,EAAE,sBAAsB;IAC5B,aAAa,EAAE,+BAA+B;IAC9C,YAAY,EAAE,8BAA8B;IAC5C,sCAAsC;IACtC,IAAI,EAAE,sBAAsB,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IAC/D,SAAS,EAAE,eAAe,CAAC,QAAQ,EAAE;IACrC,SAAS,EAAE,aAAa;IACxB,SAAS,EAAE,aAAa;CACzB,CAAC,CAAC;AAGH,gGAAgG;AAChG,6BAA6B;AAC7B,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,YAAY,CAAC;IACvD,gBAAgB,EAAE,WAAW;CAC9B,CAAC,CAAC","sourcesContent":["import { z } from 'zod';\nimport { MAX_GAME_LOCATION_SUB_LOCATIONS } from '../constants/business.js';\nimport {\n GAME_LOCATION_MEMO_INPUT_FORMAT,\n GAME_LOCATION_NAME_INPUT_FORMAT,\n GAME_LOCATION_STREET_ADDRESS_INPUT_FORMAT,\n GAME_LOCATION_SUB_LOCATION_INPUT_FORMAT,\n} from '../input-formats/input-formats.js';\nimport { countSchema, documentIdSegmentSchema, epochMsSchema, textFieldSchema } from './atoms.js';\nimport { pictureIdSchema } from './gallery.js';\n\nexport const gameLocationIdSchema = documentIdSegmentSchema;\n\nexport const gameLocationNameSchema = textFieldSchema(GAME_LOCATION_NAME_INPUT_FORMAT);\nexport const gameLocationStreetAddressSchema = textFieldSchema(\n GAME_LOCATION_STREET_ADDRESS_INPUT_FORMAT,\n);\nexport const gameLocationSubLocationSchema = textFieldSchema(\n GAME_LOCATION_SUB_LOCATION_INPUT_FORMAT,\n);\nexport const gameLocationSubLocationsSchema = z\n .array(gameLocationSubLocationSchema)\n .max(MAX_GAME_LOCATION_SUB_LOCATIONS)\n .refine((subLocations) => new Set(subLocations).size === subLocations.length, {\n message: 'Each sub-location may appear only once.',\n });\nexport const gameLocationMemoSchema = textFieldSchema(GAME_LOCATION_MEMO_INPUT_FORMAT);\n\nexport const GameLocationSchema = z.object({\n name: gameLocationNameSchema,\n streetAddress: gameLocationStreetAddressSchema,\n subLocations: gameLocationSubLocationsSchema,\n // An empty memo is stored as no memo.\n memo: gameLocationMemoSchema.pipe(z.string().min(1)).optional(),\n pictureId: pictureIdSchema.optional(),\n createdAt: epochMsSchema,\n updatedAt: epochMsSchema,\n});\nexport type GameLocation = z.infer<typeof GameLocationSchema>;\n\n// `_serverData/gameLocationRegistry` — the write fence of the venue cap (RULE-STD-BACKEND-116):\n// only its changing matters.\nexport const GameLocationRegistrySchema = z.strictObject({\n locationRevision: countSchema,\n});\nexport type GameLocationRegistry = z.infer<typeof GameLocationRegistrySchema>;\n"]}
@@ -1,6 +1,6 @@
1
1
  import { z } from 'zod';
2
2
  export declare const LeagueTeamSchema: z.ZodObject<{
3
- name: z.ZodString;
3
+ name: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
4
4
  icon: z.ZodEnum<{
5
5
  Shield: "Shield";
6
6
  Swords: "Swords";
@@ -1 +1 @@
1
- {"version":3,"file":"league-team.d.ts","sourceRoot":"","sources":["../../src/doc-schemas/league-team.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAcxB,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAoB3B,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D,eAAO,MAAM,uBAAuB;;;;iBAIlC,CAAC;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC"}
1
+ {"version":3,"file":"league-team.d.ts","sourceRoot":"","sources":["../../src/doc-schemas/league-team.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAiBxB,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAoB3B,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D,eAAO,MAAM,uBAAuB;;;;iBAIlC,CAAC;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC"}
@@ -1,10 +1,10 @@
1
1
  import { z } from 'zod';
2
- import { CONTACT_PHONE_INPUT_FORMAT } from '../input-formats/input-formats.js';
2
+ import { CONTACT_PHONE_INPUT_FORMAT, TEAM_NAME_INPUT_FORMAT, } from '../input-formats/input-formats.js';
3
3
  import { countSchema, epochMsSchema, leagueIdSchema, teamIconSchema, teamTypeSchema, textFieldSchema, userIdSchema, } from './atoms.js';
4
4
  import { PlayerSeasonStatsSchema, TeamSeasonStatsSchema } from './aggregate-stats.js';
5
5
  import { GallerySummarySchema } from './gallery.js';
6
6
  export const LeagueTeamSchema = z.object({
7
- name: z.string(),
7
+ name: textFieldSchema(TEAM_NAME_INPUT_FORMAT),
8
8
  icon: teamIconSchema,
9
9
  leagueId: leagueIdSchema,
10
10
  teamType: teamTypeSchema.optional(),
@@ -1 +1 @@
1
- {"version":3,"file":"league-team.js","sourceRoot":"","sources":["../../src/doc-schemas/league-team.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAC;AAC/E,OAAO,EACL,WAAW,EACX,aAAa,EACb,cAAc,EACd,cAAc,EACd,cAAc,EACd,eAAe,EACf,YAAY,GACb,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AACtF,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAEpD,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IACvC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,IAAI,EAAE,cAAc;IACpB,QAAQ,EAAE,cAAc;IACxB,QAAQ,EAAE,cAAc,CAAC,QAAQ,EAAE;IACnC,eAAe,EAAE,YAAY;IAC7B,WAAW,EAAE,qBAAqB,CAAC,QAAQ,EAAE;IAC7C,iBAAiB,EAAE,CAAC,CAAC,MAAM,CAAC,YAAY,EAAE,uBAAuB,CAAC,CAAC,QAAQ,EAAE;IAC7E,QAAQ,EAAE,oBAAoB,CAAC,QAAQ,EAAE;IACzC,2FAA2F;IAC3F,0BAA0B;IAC1B,kBAAkB,EAAE,WAAW,CAAC,QAAQ,EAAE;IAC1C,+FAA+F;IAC/F,2CAA2C;IAC3C,YAAY,EAAE,WAAW,CAAC,QAAQ,EAAE;IACpC,2FAA2F;IAC3F,0BAA0B;IAC1B,gBAAgB,EAAE,WAAW,CAAC,QAAQ,EAAE;IACxC,SAAS,EAAE,aAAa;IACxB,SAAS,EAAE,aAAa;CACzB,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9C,QAAQ,EAAE,cAAc;IACxB,YAAY,EAAE,eAAe,CAAC,0BAA0B,CAAC;IACzD,SAAS,EAAE,aAAa;CACzB,CAAC,CAAC","sourcesContent":["import { z } from 'zod';\nimport { CONTACT_PHONE_INPUT_FORMAT } from '../input-formats/input-formats.js';\nimport {\n countSchema,\n epochMsSchema,\n leagueIdSchema,\n teamIconSchema,\n teamTypeSchema,\n textFieldSchema,\n userIdSchema,\n} from './atoms.js';\nimport { PlayerSeasonStatsSchema, TeamSeasonStatsSchema } from './aggregate-stats.js';\nimport { GallerySummarySchema } from './gallery.js';\n\nexport const LeagueTeamSchema = z.object({\n name: z.string(),\n icon: teamIconSchema,\n leagueId: leagueIdSchema,\n teamType: teamTypeSchema.optional(),\n createdByUserId: userIdSchema,\n seasonStats: TeamSeasonStatsSchema.optional(),\n playerSeasonStats: z.record(userIdSchema, PlayerSeasonStatsSchema).optional(),\n pictures: GallerySummarySchema.optional(),\n // Only its changing matters: the write fence between membership changes and roster seeding\n // (RULE-STD-BACKEND-116).\n membershipRevision: countSchema.optional(),\n // Only its changing matters: the write fence between competing invitations, join requests, and\n // membership doors (RULE-STD-BACKEND-116).\n joinRevision: countSchema.optional(),\n // Only its changing matters: the write fence between game creation and the team's deletion\n // (RULE-STD-BACKEND-116).\n scheduleRevision: countSchema.optional(),\n createdAt: epochMsSchema,\n updatedAt: epochMsSchema,\n});\nexport type LeagueTeam = z.infer<typeof LeagueTeamSchema>;\n\nexport const LeagueTeamContactSchema = z.object({\n leagueId: leagueIdSchema,\n contactPhone: textFieldSchema(CONTACT_PHONE_INPUT_FORMAT),\n updatedAt: epochMsSchema,\n});\nexport type LeagueTeamContact = z.infer<typeof LeagueTeamContactSchema>;\n"]}
1
+ {"version":3,"file":"league-team.js","sourceRoot":"","sources":["../../src/doc-schemas/league-team.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACL,0BAA0B,EAC1B,sBAAsB,GACvB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EACL,WAAW,EACX,aAAa,EACb,cAAc,EACd,cAAc,EACd,cAAc,EACd,eAAe,EACf,YAAY,GACb,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AACtF,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAEpD,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IACvC,IAAI,EAAE,eAAe,CAAC,sBAAsB,CAAC;IAC7C,IAAI,EAAE,cAAc;IACpB,QAAQ,EAAE,cAAc;IACxB,QAAQ,EAAE,cAAc,CAAC,QAAQ,EAAE;IACnC,eAAe,EAAE,YAAY;IAC7B,WAAW,EAAE,qBAAqB,CAAC,QAAQ,EAAE;IAC7C,iBAAiB,EAAE,CAAC,CAAC,MAAM,CAAC,YAAY,EAAE,uBAAuB,CAAC,CAAC,QAAQ,EAAE;IAC7E,QAAQ,EAAE,oBAAoB,CAAC,QAAQ,EAAE;IACzC,2FAA2F;IAC3F,0BAA0B;IAC1B,kBAAkB,EAAE,WAAW,CAAC,QAAQ,EAAE;IAC1C,+FAA+F;IAC/F,2CAA2C;IAC3C,YAAY,EAAE,WAAW,CAAC,QAAQ,EAAE;IACpC,2FAA2F;IAC3F,0BAA0B;IAC1B,gBAAgB,EAAE,WAAW,CAAC,QAAQ,EAAE;IACxC,SAAS,EAAE,aAAa;IACxB,SAAS,EAAE,aAAa;CACzB,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9C,QAAQ,EAAE,cAAc;IACxB,YAAY,EAAE,eAAe,CAAC,0BAA0B,CAAC;IACzD,SAAS,EAAE,aAAa;CACzB,CAAC,CAAC","sourcesContent":["import { z } from 'zod';\nimport {\n CONTACT_PHONE_INPUT_FORMAT,\n TEAM_NAME_INPUT_FORMAT,\n} from '../input-formats/input-formats.js';\nimport {\n countSchema,\n epochMsSchema,\n leagueIdSchema,\n teamIconSchema,\n teamTypeSchema,\n textFieldSchema,\n userIdSchema,\n} from './atoms.js';\nimport { PlayerSeasonStatsSchema, TeamSeasonStatsSchema } from './aggregate-stats.js';\nimport { GallerySummarySchema } from './gallery.js';\n\nexport const LeagueTeamSchema = z.object({\n name: textFieldSchema(TEAM_NAME_INPUT_FORMAT),\n icon: teamIconSchema,\n leagueId: leagueIdSchema,\n teamType: teamTypeSchema.optional(),\n createdByUserId: userIdSchema,\n seasonStats: TeamSeasonStatsSchema.optional(),\n playerSeasonStats: z.record(userIdSchema, PlayerSeasonStatsSchema).optional(),\n pictures: GallerySummarySchema.optional(),\n // Only its changing matters: the write fence between membership changes and roster seeding\n // (RULE-STD-BACKEND-116).\n membershipRevision: countSchema.optional(),\n // Only its changing matters: the write fence between competing invitations, join requests, and\n // membership doors (RULE-STD-BACKEND-116).\n joinRevision: countSchema.optional(),\n // Only its changing matters: the write fence between game creation and the team's deletion\n // (RULE-STD-BACKEND-116).\n scheduleRevision: countSchema.optional(),\n createdAt: epochMsSchema,\n updatedAt: epochMsSchema,\n});\nexport type LeagueTeam = z.infer<typeof LeagueTeamSchema>;\n\nexport const LeagueTeamContactSchema = z.object({\n leagueId: leagueIdSchema,\n contactPhone: textFieldSchema(CONTACT_PHONE_INPUT_FORMAT),\n updatedAt: epochMsSchema,\n});\nexport type LeagueTeamContact = z.infer<typeof LeagueTeamContactSchema>;\n"]}
@@ -1,7 +1,7 @@
1
1
  import type { z } from 'zod';
2
2
  export declare const COLLECTION_SCHEMAS: {
3
3
  readonly 'userProfiles/{userId}': z.ZodObject<{
4
- displayName: z.ZodString;
4
+ displayName: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
5
5
  displayName_lowercase: z.ZodString;
6
6
  userStatus: z.ZodEnum<{
7
7
  active: "active";
@@ -91,8 +91,8 @@ export declare const COLLECTION_SCHEMAS: {
91
91
  expireAt: z.ZodCustom<import("./firestore-primitives.js").FirestoreTimestampLike, import("./firestore-primitives.js").FirestoreTimestampLike>;
92
92
  }, z.core.$strict>;
93
93
  readonly 'sportLeagues/{leagueId}': z.ZodObject<{
94
- leagueTitle: z.ZodString;
95
- description: z.ZodString;
94
+ leagueTitle: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
95
+ description: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
96
96
  leagueType: z.ZodEnum<{
97
97
  Basketball: "Basketball";
98
98
  Curling: "Curling";
@@ -126,7 +126,7 @@ export declare const COLLECTION_SCHEMAS: {
126
126
  updatedAt: z.ZodNumber;
127
127
  }, z.core.$strip>;
128
128
  readonly 'leagueTeams/{teamId}': z.ZodObject<{
129
- name: z.ZodString;
129
+ name: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
130
130
  icon: z.ZodEnum<{
131
131
  Shield: "Shield";
132
132
  Swords: "Swords";
@@ -341,7 +341,7 @@ export declare const COLLECTION_SCHEMAS: {
341
341
  teamId: z.ZodString;
342
342
  invitedUserId: z.ZodString;
343
343
  invitedByUserId: z.ZodString;
344
- message: z.ZodString;
344
+ message: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
345
345
  status: z.ZodEnum<{
346
346
  pending: "pending";
347
347
  approved: "approved";
@@ -355,7 +355,7 @@ export declare const COLLECTION_SCHEMAS: {
355
355
  leagueId: z.ZodString;
356
356
  teamId: z.ZodString;
357
357
  userId: z.ZodString;
358
- message: z.ZodString;
358
+ message: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
359
359
  status: z.ZodEnum<{
360
360
  pending: "pending";
361
361
  approved: "approved";
@@ -386,14 +386,14 @@ export declare const COLLECTION_SCHEMAS: {
386
386
  jumpBallTeamId: z.ZodOptional<z.ZodString>;
387
387
  leagueId: z.ZodString;
388
388
  weekId: z.ZodString;
389
- weekTitle: z.ZodString;
389
+ weekTitle: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
390
390
  weekLocation: z.ZodString;
391
391
  weekStartDate: z.ZodNumber;
392
392
  startTime: z.ZodNumber;
393
393
  dayKey: z.ZodString;
394
394
  locationLabel: z.ZodString;
395
395
  gameLocationId: z.ZodOptional<z.ZodString>;
396
- subLocation: z.ZodOptional<z.ZodString>;
396
+ subLocation: z.ZodOptional<z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>>;
397
397
  status: z.ZodEnum<{
398
398
  scheduled: "scheduled";
399
399
  inprogress: "inprogress";
@@ -407,7 +407,7 @@ export declare const COLLECTION_SCHEMAS: {
407
407
  teamIds: z.ZodArray<z.ZodString>;
408
408
  score: z.ZodRecord<z.ZodString, z.ZodNumber>;
409
409
  statEventSequence: z.ZodNumber;
410
- memos: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
410
+ memos: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>>>;
411
411
  absentRosterPlayerIds: z.ZodArray<z.ZodString>;
412
412
  nonScoringRosterPlayerIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
413
413
  statsOperationId: z.ZodOptional<z.ZodString>;
@@ -426,14 +426,14 @@ export declare const COLLECTION_SCHEMAS: {
426
426
  }, z.core.$strict>;
427
427
  leagueId: z.ZodString;
428
428
  weekId: z.ZodString;
429
- weekTitle: z.ZodString;
429
+ weekTitle: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
430
430
  weekLocation: z.ZodString;
431
431
  weekStartDate: z.ZodNumber;
432
432
  startTime: z.ZodNumber;
433
433
  dayKey: z.ZodString;
434
434
  locationLabel: z.ZodString;
435
435
  gameLocationId: z.ZodOptional<z.ZodString>;
436
- subLocation: z.ZodOptional<z.ZodString>;
436
+ subLocation: z.ZodOptional<z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>>;
437
437
  status: z.ZodEnum<{
438
438
  scheduled: "scheduled";
439
439
  inprogress: "inprogress";
@@ -447,7 +447,7 @@ export declare const COLLECTION_SCHEMAS: {
447
447
  teamIds: z.ZodArray<z.ZodString>;
448
448
  score: z.ZodRecord<z.ZodString, z.ZodNumber>;
449
449
  statEventSequence: z.ZodNumber;
450
- memos: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
450
+ memos: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>>>;
451
451
  absentRosterPlayerIds: z.ZodArray<z.ZodString>;
452
452
  nonScoringRosterPlayerIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
453
453
  statsOperationId: z.ZodOptional<z.ZodString>;
@@ -465,14 +465,14 @@ export declare const COLLECTION_SCHEMAS: {
465
465
  }, z.core.$strict>;
466
466
  leagueId: z.ZodString;
467
467
  weekId: z.ZodString;
468
- weekTitle: z.ZodString;
468
+ weekTitle: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
469
469
  weekLocation: z.ZodString;
470
470
  weekStartDate: z.ZodNumber;
471
471
  startTime: z.ZodNumber;
472
472
  dayKey: z.ZodString;
473
473
  locationLabel: z.ZodString;
474
474
  gameLocationId: z.ZodOptional<z.ZodString>;
475
- subLocation: z.ZodOptional<z.ZodString>;
475
+ subLocation: z.ZodOptional<z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>>;
476
476
  status: z.ZodEnum<{
477
477
  scheduled: "scheduled";
478
478
  inprogress: "inprogress";
@@ -486,7 +486,7 @@ export declare const COLLECTION_SCHEMAS: {
486
486
  teamIds: z.ZodArray<z.ZodString>;
487
487
  score: z.ZodRecord<z.ZodString, z.ZodNumber>;
488
488
  statEventSequence: z.ZodNumber;
489
- memos: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
489
+ memos: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>>>;
490
490
  absentRosterPlayerIds: z.ZodArray<z.ZodString>;
491
491
  nonScoringRosterPlayerIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
492
492
  statsOperationId: z.ZodOptional<z.ZodString>;
@@ -1154,17 +1154,17 @@ export declare const COLLECTION_SCHEMAS: {
1154
1154
  }, z.core.$strict>], "type">>;
1155
1155
  }, z.core.$strict>]>;
1156
1156
  readonly 'gameLocations/{gameLocationId}': z.ZodObject<{
1157
- name: z.ZodString;
1158
- streetAddress: z.ZodString;
1159
- subLocations: z.ZodArray<z.ZodString>;
1160
- memo: z.ZodOptional<z.ZodString>;
1157
+ name: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
1158
+ streetAddress: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
1159
+ subLocations: z.ZodArray<z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>>;
1160
+ memo: z.ZodOptional<z.ZodPipe<z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>, z.ZodString>>;
1161
1161
  pictureId: z.ZodOptional<z.ZodString>;
1162
1162
  createdAt: z.ZodNumber;
1163
1163
  updatedAt: z.ZodNumber;
1164
1164
  }, z.core.$strip>;
1165
1165
  readonly 'waiverTemplates/{waiverTemplateId}': z.ZodObject<{
1166
- title: z.ZodString;
1167
- waiverText: z.ZodString;
1166
+ title: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
1167
+ waiverText: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
1168
1168
  version: z.ZodNumber;
1169
1169
  createdAt: z.ZodNumber;
1170
1170
  updatedAt: z.ZodNumber;
@@ -1174,8 +1174,8 @@ export declare const COLLECTION_SCHEMAS: {
1174
1174
  }, z.core.$strip>;
1175
1175
  readonly 'waiverTemplates/{waiverTemplateId}/waiverTemplateVersions/{versionId}': z.ZodObject<{
1176
1176
  version: z.ZodNumber;
1177
- title: z.ZodString;
1178
- waiverText: z.ZodString;
1177
+ title: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
1178
+ waiverText: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
1179
1179
  publishedByUserId: z.ZodOptional<z.ZodString>;
1180
1180
  publishedAt: z.ZodNumber;
1181
1181
  }, z.core.$strip>;
@@ -2795,8 +2795,8 @@ export declare const COLLECTION_SCHEMAS: {
2795
2795
  expireAt: z.ZodOptional<z.ZodCustom<import("./firestore-primitives.js").FirestoreTimestampLike, import("./firestore-primitives.js").FirestoreTimestampLike>>;
2796
2796
  }, z.core.$strip>;
2797
2797
  readonly '_appConfig/landingPage': z.ZodObject<{
2798
- heroTitle: z.ZodString;
2799
- aboutCompany: z.ZodString;
2798
+ heroTitle: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
2799
+ aboutCompany: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
2800
2800
  pictures: z.ZodOptional<z.ZodObject<{
2801
2801
  count: z.ZodNumber;
2802
2802
  featuredPictureId: z.ZodOptional<z.ZodString>;
@@ -2807,9 +2807,9 @@ export declare const COLLECTION_SCHEMAS: {
2807
2807
  readonly '_appConfig/app': z.ZodObject<{
2808
2808
  appVersion: z.ZodString;
2809
2809
  maintenanceMode: z.ZodBoolean;
2810
- maintenanceMessage: z.ZodOptional<z.ZodString>;
2810
+ maintenanceMessage: z.ZodOptional<z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>>;
2811
2811
  registrationEnabled: z.ZodBoolean;
2812
- announcementMessage: z.ZodOptional<z.ZodString>;
2812
+ announcementMessage: z.ZodOptional<z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>>;
2813
2813
  }, z.core.$strip>;
2814
2814
  readonly '_appConfig/statsBeacon': z.ZodObject<{
2815
2815
  updatedAt: z.ZodNumber;
@@ -52,14 +52,14 @@ export declare const BasketballGameSchema: z.ZodObject<{
52
52
  jumpBallTeamId: z.ZodOptional<z.ZodString>;
53
53
  leagueId: z.ZodString;
54
54
  weekId: z.ZodString;
55
- weekTitle: z.ZodString;
55
+ weekTitle: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
56
56
  weekLocation: z.ZodString;
57
57
  weekStartDate: z.ZodNumber;
58
58
  startTime: z.ZodNumber;
59
59
  dayKey: z.ZodString;
60
60
  locationLabel: z.ZodString;
61
61
  gameLocationId: z.ZodOptional<z.ZodString>;
62
- subLocation: z.ZodOptional<z.ZodString>;
62
+ subLocation: z.ZodOptional<z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>>;
63
63
  status: z.ZodEnum<{
64
64
  scheduled: "scheduled";
65
65
  inprogress: "inprogress";
@@ -73,7 +73,7 @@ export declare const BasketballGameSchema: z.ZodObject<{
73
73
  teamIds: z.ZodArray<z.ZodString>;
74
74
  score: z.ZodRecord<z.ZodString, z.ZodNumber>;
75
75
  statEventSequence: z.ZodNumber;
76
- memos: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
76
+ memos: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>>>;
77
77
  absentRosterPlayerIds: z.ZodArray<z.ZodString>;
78
78
  nonScoringRosterPlayerIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
79
79
  statsOperationId: z.ZodOptional<z.ZodString>;
@@ -94,14 +94,14 @@ export declare const CurlingGameSchema: z.ZodObject<{
94
94
  }, z.core.$strict>;
95
95
  leagueId: z.ZodString;
96
96
  weekId: z.ZodString;
97
- weekTitle: z.ZodString;
97
+ weekTitle: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
98
98
  weekLocation: z.ZodString;
99
99
  weekStartDate: z.ZodNumber;
100
100
  startTime: z.ZodNumber;
101
101
  dayKey: z.ZodString;
102
102
  locationLabel: z.ZodString;
103
103
  gameLocationId: z.ZodOptional<z.ZodString>;
104
- subLocation: z.ZodOptional<z.ZodString>;
104
+ subLocation: z.ZodOptional<z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>>;
105
105
  status: z.ZodEnum<{
106
106
  scheduled: "scheduled";
107
107
  inprogress: "inprogress";
@@ -115,7 +115,7 @@ export declare const CurlingGameSchema: z.ZodObject<{
115
115
  teamIds: z.ZodArray<z.ZodString>;
116
116
  score: z.ZodRecord<z.ZodString, z.ZodNumber>;
117
117
  statEventSequence: z.ZodNumber;
118
- memos: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
118
+ memos: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>>>;
119
119
  absentRosterPlayerIds: z.ZodArray<z.ZodString>;
120
120
  nonScoringRosterPlayerIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
121
121
  statsOperationId: z.ZodOptional<z.ZodString>;
@@ -135,14 +135,14 @@ export declare const FootballGameSchema: z.ZodObject<{
135
135
  }, z.core.$strict>;
136
136
  leagueId: z.ZodString;
137
137
  weekId: z.ZodString;
138
- weekTitle: z.ZodString;
138
+ weekTitle: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
139
139
  weekLocation: z.ZodString;
140
140
  weekStartDate: z.ZodNumber;
141
141
  startTime: z.ZodNumber;
142
142
  dayKey: z.ZodString;
143
143
  locationLabel: z.ZodString;
144
144
  gameLocationId: z.ZodOptional<z.ZodString>;
145
- subLocation: z.ZodOptional<z.ZodString>;
145
+ subLocation: z.ZodOptional<z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>>;
146
146
  status: z.ZodEnum<{
147
147
  scheduled: "scheduled";
148
148
  inprogress: "inprogress";
@@ -156,7 +156,7 @@ export declare const FootballGameSchema: z.ZodObject<{
156
156
  teamIds: z.ZodArray<z.ZodString>;
157
157
  score: z.ZodRecord<z.ZodString, z.ZodNumber>;
158
158
  statEventSequence: z.ZodNumber;
159
- memos: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
159
+ memos: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>>>;
160
160
  absentRosterPlayerIds: z.ZodArray<z.ZodString>;
161
161
  nonScoringRosterPlayerIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
162
162
  statsOperationId: z.ZodOptional<z.ZodString>;
@@ -183,14 +183,14 @@ export declare const SportGameSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
183
183
  jumpBallTeamId: z.ZodOptional<z.ZodString>;
184
184
  leagueId: z.ZodString;
185
185
  weekId: z.ZodString;
186
- weekTitle: z.ZodString;
186
+ weekTitle: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
187
187
  weekLocation: z.ZodString;
188
188
  weekStartDate: z.ZodNumber;
189
189
  startTime: z.ZodNumber;
190
190
  dayKey: z.ZodString;
191
191
  locationLabel: z.ZodString;
192
192
  gameLocationId: z.ZodOptional<z.ZodString>;
193
- subLocation: z.ZodOptional<z.ZodString>;
193
+ subLocation: z.ZodOptional<z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>>;
194
194
  status: z.ZodEnum<{
195
195
  scheduled: "scheduled";
196
196
  inprogress: "inprogress";
@@ -204,7 +204,7 @@ export declare const SportGameSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
204
204
  teamIds: z.ZodArray<z.ZodString>;
205
205
  score: z.ZodRecord<z.ZodString, z.ZodNumber>;
206
206
  statEventSequence: z.ZodNumber;
207
- memos: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
207
+ memos: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>>>;
208
208
  absentRosterPlayerIds: z.ZodArray<z.ZodString>;
209
209
  nonScoringRosterPlayerIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
210
210
  statsOperationId: z.ZodOptional<z.ZodString>;
@@ -223,14 +223,14 @@ export declare const SportGameSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
223
223
  }, z.core.$strict>;
224
224
  leagueId: z.ZodString;
225
225
  weekId: z.ZodString;
226
- weekTitle: z.ZodString;
226
+ weekTitle: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
227
227
  weekLocation: z.ZodString;
228
228
  weekStartDate: z.ZodNumber;
229
229
  startTime: z.ZodNumber;
230
230
  dayKey: z.ZodString;
231
231
  locationLabel: z.ZodString;
232
232
  gameLocationId: z.ZodOptional<z.ZodString>;
233
- subLocation: z.ZodOptional<z.ZodString>;
233
+ subLocation: z.ZodOptional<z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>>;
234
234
  status: z.ZodEnum<{
235
235
  scheduled: "scheduled";
236
236
  inprogress: "inprogress";
@@ -244,7 +244,7 @@ export declare const SportGameSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
244
244
  teamIds: z.ZodArray<z.ZodString>;
245
245
  score: z.ZodRecord<z.ZodString, z.ZodNumber>;
246
246
  statEventSequence: z.ZodNumber;
247
- memos: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
247
+ memos: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>>>;
248
248
  absentRosterPlayerIds: z.ZodArray<z.ZodString>;
249
249
  nonScoringRosterPlayerIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
250
250
  statsOperationId: z.ZodOptional<z.ZodString>;
@@ -262,14 +262,14 @@ export declare const SportGameSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
262
262
  }, z.core.$strict>;
263
263
  leagueId: z.ZodString;
264
264
  weekId: z.ZodString;
265
- weekTitle: z.ZodString;
265
+ weekTitle: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
266
266
  weekLocation: z.ZodString;
267
267
  weekStartDate: z.ZodNumber;
268
268
  startTime: z.ZodNumber;
269
269
  dayKey: z.ZodString;
270
270
  locationLabel: z.ZodString;
271
271
  gameLocationId: z.ZodOptional<z.ZodString>;
272
- subLocation: z.ZodOptional<z.ZodString>;
272
+ subLocation: z.ZodOptional<z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>>;
273
273
  status: z.ZodEnum<{
274
274
  scheduled: "scheduled";
275
275
  inprogress: "inprogress";
@@ -283,7 +283,7 @@ export declare const SportGameSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
283
283
  teamIds: z.ZodArray<z.ZodString>;
284
284
  score: z.ZodRecord<z.ZodString, z.ZodNumber>;
285
285
  statEventSequence: z.ZodNumber;
286
- memos: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
286
+ memos: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>>>;
287
287
  absentRosterPlayerIds: z.ZodArray<z.ZodString>;
288
288
  nonScoringRosterPlayerIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
289
289
  statsOperationId: z.ZodOptional<z.ZodString>;
@@ -1 +1 @@
1
- {"version":3,"file":"sport-game.d.ts","sourceRoot":"","sources":["../../src/doc-schemas/sport-game.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAkBrD,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;CAaa,CAAC;AAEnD,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,UAAU,CAAC,CAAC;AACtF,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,OAAO,CAAC,CAAC;AAChF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,QAAQ,CAAC,CAAC;AAElF,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,wBAAwB,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;AAE/E,eAAO,MAAM,cAAc;;iBAEzB,CAAC;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AA8CtD,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAOa,CAAC;AAC/C,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAMgB,CAAC;AAC/C,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAMe,CAAC;AAC/C,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iCAI1B,CAAC;AACH,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAExD,eAAO,MAAM,sBAAsB;;;;;iBAKjC,CAAC;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC"}
1
+ {"version":3,"file":"sport-game.d.ts","sourceRoot":"","sources":["../../src/doc-schemas/sport-game.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAmBrD,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;CAaa,CAAC;AAEnD,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,UAAU,CAAC,CAAC;AACtF,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,OAAO,CAAC,CAAC;AAChF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,QAAQ,CAAC,CAAC;AAElF,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,wBAAwB,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;AAE/E,eAAO,MAAM,cAAc;;iBAEzB,CAAC;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AA8CtD,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAOa,CAAC;AAC/C,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAMgB,CAAC;AAC/C,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAMe,CAAC;AAC/C,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iCAI1B,CAAC;AACH,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAExD,eAAO,MAAM,sBAAsB;;;;;iBAKjC,CAAC;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC"}
@@ -1,9 +1,10 @@
1
1
  import { z } from 'zod';
2
2
  import { parseGameRosterPlayerId } from '../ids/compound-ids.js';
3
+ import { GAME_MEMO_INPUT_FORMAT, SCHEDULE_WEEK_TITLE_INPUT_FORMAT, } from '../input-formats/input-formats.js';
3
4
  import { SPORT_LINE_SCHEMAS } from './aggregate-stats.js';
4
5
  import { gameStatsSchema } from './game-stats.js';
5
- import { calendarDateSchema, countSchema, epochMsSchema, gameRosterPlayerIdSchema, gameStatusSchema, leagueIdSchema, scheduleWeekIdSchema, statsOperationIdSchema, teamIdSchema, userIdSchema, } from './atoms.js';
6
- import { gameLocationIdSchema } from './game-location.js';
6
+ import { calendarDateSchema, countSchema, epochMsSchema, gameRosterPlayerIdSchema, gameStatusSchema, leagueIdSchema, scheduleWeekIdSchema, statsOperationIdSchema, teamIdSchema, textFieldSchema, userIdSchema, } from './atoms.js';
7
+ import { gameLocationIdSchema, gameLocationSubLocationSchema } from './game-location.js';
7
8
  // Spelled per sport so each payload keeps its exact type.
8
9
  export const SPORT_GAME_STATS_SCHEMAS = {
9
10
  Basketball: gameStatsSchema(SPORT_LINE_SCHEMAS.Basketball.gameTeam, SPORT_LINE_SCHEMAS.Basketball.gamePlayer),
@@ -16,20 +17,20 @@ export const GameTeamSchema = z.object({
16
17
  const sportGameBase = {
17
18
  leagueId: leagueIdSchema,
18
19
  weekId: scheduleWeekIdSchema,
19
- weekTitle: z.string(),
20
+ weekTitle: textFieldSchema(SCHEDULE_WEEK_TITLE_INPUT_FORMAT),
20
21
  weekLocation: z.string(),
21
22
  weekStartDate: epochMsSchema,
22
23
  startTime: epochMsSchema,
23
24
  dayKey: calendarDateSchema,
24
25
  locationLabel: z.string(),
25
26
  gameLocationId: gameLocationIdSchema.optional(),
26
- subLocation: z.string().optional(),
27
+ subLocation: gameLocationSubLocationSchema.optional(),
27
28
  status: gameStatusSchema,
28
29
  teams: z.tuple([GameTeamSchema, GameTeamSchema]),
29
30
  teamIds: z.array(teamIdSchema).min(1).max(2),
30
31
  score: z.record(teamIdSchema, countSchema),
31
32
  statEventSequence: countSchema,
32
- memos: z.record(z.string(), z.string()).optional(),
33
+ memos: z.record(z.string(), textFieldSchema(GAME_MEMO_INPUT_FORMAT)).optional(),
33
34
  absentRosterPlayerIds: z.array(gameRosterPlayerIdSchema),
34
35
  nonScoringRosterPlayerIds: z.array(gameRosterPlayerIdSchema).optional(),
35
36
  statsOperationId: statsOperationIdSchema.optional(),
@@ -1 +1 @@
1
- {"version":3,"file":"sport-game.js","sourceRoot":"","sources":["../../src/doc-schemas/sport-game.ts"],"names":[],"mappings":"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","sourcesContent":["import { z } from 'zod';\nimport { parseGameRosterPlayerId } from '../ids/compound-ids.js';\nimport type { LeagueType } from '../types/sports.js';\nimport { SPORT_LINE_SCHEMAS } from './aggregate-stats.js';\nimport { gameStatsSchema } from './game-stats.js';\nimport {\n calendarDateSchema,\n countSchema,\n epochMsSchema,\n gameRosterPlayerIdSchema,\n gameStatusSchema,\n leagueIdSchema,\n scheduleWeekIdSchema,\n statsOperationIdSchema,\n teamIdSchema,\n userIdSchema,\n} from './atoms.js';\nimport { gameLocationIdSchema } from './game-location.js';\n\n// Spelled per sport so each payload keeps its exact type.\nexport const SPORT_GAME_STATS_SCHEMAS = {\n Basketball: gameStatsSchema(\n SPORT_LINE_SCHEMAS.Basketball.gameTeam,\n SPORT_LINE_SCHEMAS.Basketball.gamePlayer,\n ),\n Curling: gameStatsSchema(\n SPORT_LINE_SCHEMAS.Curling.gameTeam,\n SPORT_LINE_SCHEMAS.Curling.gamePlayer,\n ),\n Football: gameStatsSchema(\n SPORT_LINE_SCHEMAS.Football.gameTeam,\n SPORT_LINE_SCHEMAS.Football.gamePlayer,\n ),\n} as const satisfies Record<LeagueType, z.ZodType>;\n\nexport type BasketballGameStats = z.infer<typeof SPORT_GAME_STATS_SCHEMAS.Basketball>;\nexport type CurlingGameStats = z.infer<typeof SPORT_GAME_STATS_SCHEMAS.Curling>;\nexport type FootballGameStats = z.infer<typeof SPORT_GAME_STATS_SCHEMAS.Football>;\n\nexport type GameStats = z.infer<(typeof SPORT_GAME_STATS_SCHEMAS)[LeagueType]>;\n\nexport const GameTeamSchema = z.object({\n teamId: teamIdSchema,\n});\nexport type GameTeam = z.infer<typeof GameTeamSchema>;\n\nconst sportGameBase = {\n leagueId: leagueIdSchema,\n weekId: scheduleWeekIdSchema,\n weekTitle: z.string(),\n weekLocation: z.string(),\n weekStartDate: epochMsSchema,\n startTime: epochMsSchema,\n dayKey: calendarDateSchema,\n locationLabel: z.string(),\n gameLocationId: gameLocationIdSchema.optional(),\n subLocation: z.string().optional(),\n status: gameStatusSchema,\n teams: z.tuple([GameTeamSchema, GameTeamSchema]),\n teamIds: z.array(teamIdSchema).min(1).max(2),\n score: z.record(teamIdSchema, countSchema),\n statEventSequence: countSchema,\n memos: z.record(z.string(), z.string()).optional(),\n absentRosterPlayerIds: z.array(gameRosterPlayerIdSchema),\n nonScoringRosterPlayerIds: z.array(gameRosterPlayerIdSchema).optional(),\n statsOperationId: statsOperationIdSchema.optional(),\n finalizedAt: epochMsSchema.optional(),\n reopenedAt: epochMsSchema.optional(),\n createdAt: epochMsSchema,\n updatedAt: epochMsSchema,\n};\n\nfunction rollupMatchesTeams(game: {\n teamIds: string[];\n score: Record<string, number>;\n stats: { teamStats: Record<string, unknown>; playerStats: Record<string, unknown> };\n}): boolean {\n const teams = new Set(game.teamIds);\n const namesEveryTeam = (keys: string[]) =>\n keys.length === teams.size && keys.every((key) => teams.has(key));\n return (\n namesEveryTeam(Object.keys(game.stats.teamStats)) &&\n namesEveryTeam(Object.keys(game.score)) &&\n Object.keys(game.stats.playerStats).every((key) =>\n teams.has(parseGameRosterPlayerId(key)?.teamId ?? ''),\n )\n );\n}\nconst ROLLUP_MISMATCH = \"The stats rollup and score mirror hold exactly the game's teams.\";\n\nexport const BasketballGameSchema = z\n .object({\n ...sportGameBase,\n leagueType: z.literal('Basketball' satisfies LeagueType),\n stats: SPORT_GAME_STATS_SCHEMAS.Basketball,\n jumpBallTeamId: teamIdSchema.optional(),\n })\n .refine(rollupMatchesTeams, ROLLUP_MISMATCH);\nexport type BasketballGame = z.infer<typeof BasketballGameSchema>;\n\nexport const CurlingGameSchema = z\n .object({\n ...sportGameBase,\n leagueType: z.literal('Curling' satisfies LeagueType),\n stats: SPORT_GAME_STATS_SCHEMAS.Curling,\n })\n .refine(rollupMatchesTeams, ROLLUP_MISMATCH);\nexport type CurlingGame = z.infer<typeof CurlingGameSchema>;\n\nexport const FootballGameSchema = z\n .object({\n ...sportGameBase,\n leagueType: z.literal('Football' satisfies LeagueType),\n stats: SPORT_GAME_STATS_SCHEMAS.Football,\n })\n .refine(rollupMatchesTeams, ROLLUP_MISMATCH);\nexport type FootballGame = z.infer<typeof FootballGameSchema>;\n\nexport const SportGameSchema = z.discriminatedUnion('leagueType', [\n BasketballGameSchema,\n CurlingGameSchema,\n FootballGameSchema,\n]);\nexport type SportGame = z.infer<typeof SportGameSchema>;\n\nexport const GameRosterPlayerSchema = z.object({\n userId: userIdSchema,\n teamId: teamIdSchema,\n isGhost: z.boolean(),\n syncedAt: epochMsSchema,\n});\nexport type GameRosterPlayer = z.infer<typeof GameRosterPlayerSchema>;\n"]}
1
+ {"version":3,"file":"sport-game.js","sourceRoot":"","sources":["../../src/doc-schemas/sport-game.ts"],"names":[],"mappings":"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","sourcesContent":["import { z } from 'zod';\nimport { parseGameRosterPlayerId } from '../ids/compound-ids.js';\nimport {\n GAME_MEMO_INPUT_FORMAT,\n SCHEDULE_WEEK_TITLE_INPUT_FORMAT,\n} from '../input-formats/input-formats.js';\nimport type { LeagueType } from '../types/sports.js';\nimport { SPORT_LINE_SCHEMAS } from './aggregate-stats.js';\nimport { gameStatsSchema } from './game-stats.js';\nimport {\n calendarDateSchema,\n countSchema,\n epochMsSchema,\n gameRosterPlayerIdSchema,\n gameStatusSchema,\n leagueIdSchema,\n scheduleWeekIdSchema,\n statsOperationIdSchema,\n teamIdSchema,\n textFieldSchema,\n userIdSchema,\n} from './atoms.js';\nimport { gameLocationIdSchema, gameLocationSubLocationSchema } from './game-location.js';\n\n// Spelled per sport so each payload keeps its exact type.\nexport const SPORT_GAME_STATS_SCHEMAS = {\n Basketball: gameStatsSchema(\n SPORT_LINE_SCHEMAS.Basketball.gameTeam,\n SPORT_LINE_SCHEMAS.Basketball.gamePlayer,\n ),\n Curling: gameStatsSchema(\n SPORT_LINE_SCHEMAS.Curling.gameTeam,\n SPORT_LINE_SCHEMAS.Curling.gamePlayer,\n ),\n Football: gameStatsSchema(\n SPORT_LINE_SCHEMAS.Football.gameTeam,\n SPORT_LINE_SCHEMAS.Football.gamePlayer,\n ),\n} as const satisfies Record<LeagueType, z.ZodType>;\n\nexport type BasketballGameStats = z.infer<typeof SPORT_GAME_STATS_SCHEMAS.Basketball>;\nexport type CurlingGameStats = z.infer<typeof SPORT_GAME_STATS_SCHEMAS.Curling>;\nexport type FootballGameStats = z.infer<typeof SPORT_GAME_STATS_SCHEMAS.Football>;\n\nexport type GameStats = z.infer<(typeof SPORT_GAME_STATS_SCHEMAS)[LeagueType]>;\n\nexport const GameTeamSchema = z.object({\n teamId: teamIdSchema,\n});\nexport type GameTeam = z.infer<typeof GameTeamSchema>;\n\nconst sportGameBase = {\n leagueId: leagueIdSchema,\n weekId: scheduleWeekIdSchema,\n weekTitle: textFieldSchema(SCHEDULE_WEEK_TITLE_INPUT_FORMAT),\n weekLocation: z.string(),\n weekStartDate: epochMsSchema,\n startTime: epochMsSchema,\n dayKey: calendarDateSchema,\n locationLabel: z.string(),\n gameLocationId: gameLocationIdSchema.optional(),\n subLocation: gameLocationSubLocationSchema.optional(),\n status: gameStatusSchema,\n teams: z.tuple([GameTeamSchema, GameTeamSchema]),\n teamIds: z.array(teamIdSchema).min(1).max(2),\n score: z.record(teamIdSchema, countSchema),\n statEventSequence: countSchema,\n memos: z.record(z.string(), textFieldSchema(GAME_MEMO_INPUT_FORMAT)).optional(),\n absentRosterPlayerIds: z.array(gameRosterPlayerIdSchema),\n nonScoringRosterPlayerIds: z.array(gameRosterPlayerIdSchema).optional(),\n statsOperationId: statsOperationIdSchema.optional(),\n finalizedAt: epochMsSchema.optional(),\n reopenedAt: epochMsSchema.optional(),\n createdAt: epochMsSchema,\n updatedAt: epochMsSchema,\n};\n\nfunction rollupMatchesTeams(game: {\n teamIds: string[];\n score: Record<string, number>;\n stats: { teamStats: Record<string, unknown>; playerStats: Record<string, unknown> };\n}): boolean {\n const teams = new Set(game.teamIds);\n const namesEveryTeam = (keys: string[]) =>\n keys.length === teams.size && keys.every((key) => teams.has(key));\n return (\n namesEveryTeam(Object.keys(game.stats.teamStats)) &&\n namesEveryTeam(Object.keys(game.score)) &&\n Object.keys(game.stats.playerStats).every((key) =>\n teams.has(parseGameRosterPlayerId(key)?.teamId ?? ''),\n )\n );\n}\nconst ROLLUP_MISMATCH = \"The stats rollup and score mirror hold exactly the game's teams.\";\n\nexport const BasketballGameSchema = z\n .object({\n ...sportGameBase,\n leagueType: z.literal('Basketball' satisfies LeagueType),\n stats: SPORT_GAME_STATS_SCHEMAS.Basketball,\n jumpBallTeamId: teamIdSchema.optional(),\n })\n .refine(rollupMatchesTeams, ROLLUP_MISMATCH);\nexport type BasketballGame = z.infer<typeof BasketballGameSchema>;\n\nexport const CurlingGameSchema = z\n .object({\n ...sportGameBase,\n leagueType: z.literal('Curling' satisfies LeagueType),\n stats: SPORT_GAME_STATS_SCHEMAS.Curling,\n })\n .refine(rollupMatchesTeams, ROLLUP_MISMATCH);\nexport type CurlingGame = z.infer<typeof CurlingGameSchema>;\n\nexport const FootballGameSchema = z\n .object({\n ...sportGameBase,\n leagueType: z.literal('Football' satisfies LeagueType),\n stats: SPORT_GAME_STATS_SCHEMAS.Football,\n })\n .refine(rollupMatchesTeams, ROLLUP_MISMATCH);\nexport type FootballGame = z.infer<typeof FootballGameSchema>;\n\nexport const SportGameSchema = z.discriminatedUnion('leagueType', [\n BasketballGameSchema,\n CurlingGameSchema,\n FootballGameSchema,\n]);\nexport type SportGame = z.infer<typeof SportGameSchema>;\n\nexport const GameRosterPlayerSchema = z.object({\n userId: userIdSchema,\n teamId: teamIdSchema,\n isGhost: z.boolean(),\n syncedAt: epochMsSchema,\n});\nexport type GameRosterPlayer = z.infer<typeof GameRosterPlayerSchema>;\n"]}
@@ -11,10 +11,10 @@ export declare function refineLeagueSettings<T extends {
11
11
  requiresWaiver: boolean;
12
12
  waiverTemplateId?: string | undefined;
13
13
  }>(league: T, ctx: z.core.$RefinementCtx<T>): void;
14
- export declare const playoffCutoffCountSchema: z.ZodNumber;
14
+ export declare const playoffCutoffSchema: z.ZodNumber;
15
15
  export declare const SportLeagueSchema: z.ZodObject<{
16
- leagueTitle: z.ZodString;
17
- description: z.ZodString;
16
+ leagueTitle: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
17
+ description: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
18
18
  leagueType: z.ZodEnum<{
19
19
  Basketball: "Basketball";
20
20
  Curling: "Curling";
@@ -1 +1 @@
1
- {"version":3,"file":"sport-league.d.ts","sourceRoot":"","sources":["../../src/doc-schemas/sport-league.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAYxB,eAAO,MAAM,iCAAiC,4CAA4C,CAAC;AAC3F,eAAO,MAAM,mCAAmC,2FAC0C,CAAC;AAE3F,wBAAgB,8BAA8B,CAAC,MAAM,EAAE;IACrD,cAAc,EAAE,OAAO,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACvC,GAAG,OAAO,CAEV;AAED,wBAAgB,oBAAoB,CAClC,CAAC,SAAS;IACR,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,OAAO,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACvC,EACD,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,GAAG,IAAI,CAehD;AAED,eAAO,MAAM,wBAAwB,aAAc,CAAC;AAEpD,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAwBM,CAAC;AACrC,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC"}
1
+ {"version":3,"file":"sport-league.d.ts","sourceRoot":"","sources":["../../src/doc-schemas/sport-league.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAkBxB,eAAO,MAAM,iCAAiC,4CAA4C,CAAC;AAC3F,eAAO,MAAM,mCAAmC,2FAC0C,CAAC;AAE3F,wBAAgB,8BAA8B,CAAC,MAAM,EAAE;IACrD,cAAc,EAAE,OAAO,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACvC,GAAG,OAAO,CAEV;AAED,wBAAgB,oBAAoB,CAClC,CAAC,SAAS;IACR,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,OAAO,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACvC,EACD,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,GAAG,IAAI,CAehD;AAED,eAAO,MAAM,mBAAmB,aAAsC,CAAC;AAEvE,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAwBM,CAAC;AACrC,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC"}
@@ -1,5 +1,7 @@
1
1
  import { z } from 'zod';
2
- import { calendarDateSchema, countSchema, epochMsSchema, leagueModeSchema, leagueStatusSchema, leagueTypeSchema, } from './atoms.js';
2
+ import { MAX_PLAYOFF_CUTOFF } from '../constants/business.js';
3
+ import { LEAGUE_DESCRIPTION_INPUT_FORMAT, LEAGUE_TITLE_INPUT_FORMAT, } from '../input-formats/input-formats.js';
4
+ import { calendarDateSchema, countSchema, epochMsSchema, leagueModeSchema, leagueStatusSchema, leagueTypeSchema, textFieldSchema, } from './atoms.js';
3
5
  import { GallerySummarySchema } from './gallery.js';
4
6
  import { waiverTemplateIdSchema } from './waiver-template.js';
5
7
  export const LEAGUE_DATES_OUT_OF_ORDER_MESSAGE = 'The league cannot end before it starts.';
@@ -23,19 +25,19 @@ export function refineLeagueSettings(league, ctx) {
23
25
  });
24
26
  }
25
27
  }
26
- export const playoffCutoffCountSchema = countSchema;
28
+ export const playoffCutoffSchema = countSchema.max(MAX_PLAYOFF_CUTOFF);
27
29
  export const SportLeagueSchema = z
28
30
  .object({
29
- leagueTitle: z.string(),
30
- description: z.string(),
31
+ leagueTitle: textFieldSchema(LEAGUE_TITLE_INPUT_FORMAT),
32
+ description: textFieldSchema(LEAGUE_DESCRIPTION_INPUT_FORMAT),
31
33
  leagueType: leagueTypeSchema,
32
34
  leagueMode: leagueModeSchema,
33
35
  leagueStartDate: calendarDateSchema,
34
36
  leagueEndDate: calendarDateSchema,
35
37
  status: leagueStatusSchema,
36
- playoffCutoff: playoffCutoffCountSchema,
37
- playoffCutoffComp: playoffCutoffCountSchema,
38
- playoffCutoffRec: playoffCutoffCountSchema,
38
+ playoffCutoff: playoffCutoffSchema,
39
+ playoffCutoffComp: playoffCutoffSchema,
40
+ playoffCutoffRec: playoffCutoffSchema,
39
41
  requiresWaiver: z.boolean(),
40
42
  waiverTemplateId: waiverTemplateIdSchema.optional(),
41
43
  pictures: GallerySummarySchema.optional(),