@ttt-productions/q-core 0.1.52 → 0.1.54

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 (87) hide show
  1. package/dist/constants/business.d.ts +1 -0
  2. package/dist/constants/business.d.ts.map +1 -1
  3. package/dist/constants/business.js +1 -0
  4. package/dist/constants/business.js.map +1 -1
  5. package/dist/constants/media.d.ts +0 -3
  6. package/dist/constants/media.d.ts.map +1 -1
  7. package/dist/constants/media.js +0 -5
  8. package/dist/constants/media.js.map +1 -1
  9. package/dist/constants/sports.d.ts +1 -1
  10. package/dist/constants/sports.d.ts.map +1 -1
  11. package/dist/constants/sports.js +3 -3
  12. package/dist/constants/sports.js.map +1 -1
  13. package/dist/doc-schemas/atoms.d.ts +1 -0
  14. package/dist/doc-schemas/atoms.d.ts.map +1 -1
  15. package/dist/doc-schemas/atoms.js +3 -2
  16. package/dist/doc-schemas/atoms.js.map +1 -1
  17. package/dist/doc-schemas/game-stat-history.js +2 -2
  18. package/dist/doc-schemas/game-stat-history.js.map +1 -1
  19. package/dist/doc-schemas/index.d.ts +0 -1
  20. package/dist/doc-schemas/index.d.ts.map +1 -1
  21. package/dist/doc-schemas/index.js +0 -1
  22. package/dist/doc-schemas/index.js.map +1 -1
  23. package/dist/doc-schemas/pending-media.d.ts +9 -0
  24. package/dist/doc-schemas/pending-media.d.ts.map +1 -1
  25. package/dist/doc-schemas/pending-media.js +6 -1
  26. package/dist/doc-schemas/pending-media.js.map +1 -1
  27. package/dist/doc-schemas/registry.d.ts +1 -24
  28. package/dist/doc-schemas/registry.d.ts.map +1 -1
  29. package/dist/doc-schemas/registry.js +0 -3
  30. package/dist/doc-schemas/registry.js.map +1 -1
  31. package/dist/doc-schemas/sport-game.d.ts.map +1 -1
  32. package/dist/doc-schemas/sport-game.js +2 -1
  33. package/dist/doc-schemas/sport-game.js.map +1 -1
  34. package/dist/doc-schemas/stats-job.d.ts +1 -1
  35. package/dist/media/file-origins.d.ts.map +1 -1
  36. package/dist/media/file-origins.js +3 -0
  37. package/dist/media/file-origins.js.map +1 -1
  38. package/dist/paths/collection-refs.d.ts +0 -1
  39. package/dist/paths/collection-refs.d.ts.map +1 -1
  40. package/dist/paths/collection-refs.js +0 -1
  41. package/dist/paths/collection-refs.js.map +1 -1
  42. package/dist/paths/collections.d.ts +0 -1
  43. package/dist/paths/collections.d.ts.map +1 -1
  44. package/dist/paths/collections.js +0 -1
  45. package/dist/paths/collections.js.map +1 -1
  46. package/dist/paths/path-builders.d.ts +0 -1
  47. package/dist/paths/path-builders.d.ts.map +1 -1
  48. package/dist/paths/path-builders.js +0 -4
  49. package/dist/paths/path-builders.js.map +1 -1
  50. package/dist/paths/storage-paths.d.ts +3 -4
  51. package/dist/paths/storage-paths.d.ts.map +1 -1
  52. package/dist/paths/storage-paths.js +10 -12
  53. package/dist/paths/storage-paths.js.map +1 -1
  54. package/dist/schemas/admin-notifications.d.ts +1 -4
  55. package/dist/schemas/admin-notifications.d.ts.map +1 -1
  56. package/dist/schemas/admin-notifications.js +4 -6
  57. package/dist/schemas/admin-notifications.js.map +1 -1
  58. package/dist/schemas/scoring.d.ts +0 -1
  59. package/dist/schemas/scoring.d.ts.map +1 -1
  60. package/dist/schemas/scoring.js +1 -1
  61. package/dist/schemas/scoring.js.map +1 -1
  62. package/dist/schemas/stats.d.ts +2 -4
  63. package/dist/schemas/stats.d.ts.map +1 -1
  64. package/dist/schemas/stats.js +3 -5
  65. package/dist/schemas/stats.js.map +1 -1
  66. package/dist/schemas/teams.d.ts +0 -1
  67. package/dist/schemas/teams.d.ts.map +1 -1
  68. package/dist/schemas/teams.js +1 -1
  69. package/dist/schemas/teams.js.map +1 -1
  70. package/dist/sports/basketball-scoring.d.ts.map +1 -1
  71. package/dist/sports/basketball-scoring.js +2 -9
  72. package/dist/sports/basketball-scoring.js.map +1 -1
  73. package/dist/sports/bulk-entry.d.ts +0 -1
  74. package/dist/sports/bulk-entry.d.ts.map +1 -1
  75. package/dist/sports/bulk-entry.js +0 -1
  76. package/dist/sports/bulk-entry.js.map +1 -1
  77. package/dist/sports/curling-scoring.d.ts.map +1 -1
  78. package/dist/sports/curling-scoring.js +2 -9
  79. package/dist/sports/curling-scoring.js.map +1 -1
  80. package/dist/sports/football-scoring.d.ts.map +1 -1
  81. package/dist/sports/football-scoring.js +2 -9
  82. package/dist/sports/football-scoring.js.map +1 -1
  83. package/package.json +3 -3
  84. package/dist/doc-schemas/signature-copy-intent.d.ts +0 -39
  85. package/dist/doc-schemas/signature-copy-intent.d.ts.map +0 -1
  86. package/dist/doc-schemas/signature-copy-intent.js +0 -53
  87. package/dist/doc-schemas/signature-copy-intent.js.map +0 -1
@@ -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;AAGxB,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;AA6CtD,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;AAIxB,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;AA6CtD,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,5 +1,6 @@
1
1
  import { z } from 'zod';
2
2
  import { parseGameRosterPlayerId } from '../ids/compound-ids.js';
3
+ import { MAX_TEAMS_PER_GAME } from '../constants/business.js';
3
4
  import { GAME_MEMO_INPUT, SCHEDULE_WEEK_TITLE_INPUT } from '../constants/text-fields.js';
4
5
  import { SPORT_LINE_SCHEMAS } from './aggregate-stats.js';
5
6
  import { gameStatsSchema } from './game-stats.js';
@@ -28,7 +29,7 @@ const sportGameBase = {
28
29
  subLocation: gameLocationSubLocationSchema.optional(),
29
30
  status: gameStatusSchema,
30
31
  teams: z.tuple([GameTeamSchema, GameTeamSchema]),
31
- teamIds: z.array(teamIdSchema).min(1).max(2),
32
+ teamIds: z.array(teamIdSchema).min(1).max(MAX_TEAMS_PER_GAME),
32
33
  score: z.record(teamIdSchema, countSchema),
33
34
  statEventSequence: countSchema,
34
35
  memos: z.record(z.string(), textFieldSchema(GAME_MEMO_INPUT)).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 { GAME_MEMO_INPUT, SCHEDULE_WEEK_TITLE_INPUT } from '../constants/text-fields.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 teamIdSchema,\n userIdSchema,\n} from './atoms.js';\nimport { textFieldSchema } from '../schemas/text-field.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),\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)).optional(),\n absentRosterPlayerIds: z.array(gameRosterPlayerIdSchema),\n nonScoringRosterPlayerIds: z.array(gameRosterPlayerIdSchema).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 { MAX_TEAMS_PER_GAME } from '../constants/business.js';\nimport { GAME_MEMO_INPUT, SCHEDULE_WEEK_TITLE_INPUT } from '../constants/text-fields.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 teamIdSchema,\n userIdSchema,\n} from './atoms.js';\nimport { textFieldSchema } from '../schemas/text-field.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),\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(MAX_TEAMS_PER_GAME),\n score: z.record(teamIdSchema, countSchema),\n statEventSequence: countSchema,\n memos: z.record(z.string(), textFieldSchema(GAME_MEMO_INPUT)).optional(),\n absentRosterPlayerIds: z.array(gameRosterPlayerIdSchema),\n nonScoringRosterPlayerIds: z.array(gameRosterPlayerIdSchema).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"]}
@@ -12,8 +12,8 @@ export declare const StatsJobSchema: z.ZodObject<{
12
12
  failed: "failed";
13
13
  }>;
14
14
  stage: z.ZodEnum<{
15
- hallOfFame: "hallOfFame";
16
15
  games: "games";
16
+ hallOfFame: "hallOfFame";
17
17
  leagues: "leagues";
18
18
  people: "people";
19
19
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"file-origins.d.ts","sourceRoot":"","sources":["../../src/media/file-origins.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAEnF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAE5D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE1D,eAAO,MAAM,mBAAmB,mGAMtB,CAAC;AACX,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEjE,eAAO,MAAM,qBAAqB,qDAAsD,CAAC;AACzF,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,qBAAqB,CAAC,CAAC,MAAM,CAAC,CAAC;AAErE,eAAO,MAAM,gBAAgB,6IAA8D,CAAC;AAC5F,MAAM,MAAM,UAAU,GAAG,aAAa,GAAG,eAAe,CAAC;AAIzD,eAAO,MAAM,wBAAwB,QAAU,CAAC;AAEhD,eAAO,MAAM,oBAAoB,KAAK,CAAC;AAIvC,eAAO,MAAM,0BAA0B,0BAA2B,CAAC;AACnE,MAAM,MAAM,mBAAmB,GAAG,CAAC,OAAO,0BAA0B,CAAC,CAAC,MAAM,CAAC,CAAC;AAE9E,eAAO,MAAM,uBAAuB,4BAA6B,CAAC;AAClE,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,uBAAuB,CAAC,CAAC,MAAM,CAAC,CAAC;AAExE,eAAO,MAAM,wBAAwB,wDAAyD,CAAC;AAE/F,eAAO,MAAM,cAAc,EAAE,WAG5B,CAAC;AAEF,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;IAC/B,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,iBAAiB,EAAE,WAAW,CAAC,CAAC,CAAC;IACjE,QAAQ,CAAC,MAAM,EAAE,mBAAmB,CAAC;IACrC,QAAQ,CAAC,SAAS,EAAE,gBAAgB,CAAC;CACtC;AAED,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmD6B,CAAC;AA+CxD,eAAO,MAAM,0BAA0B,QAAS,CAAC;AACjD,eAAO,MAAM,sBAAsB,cAAc,CAAC;AAElD,eAAO,MAAM,gBAAgB,EAAE,WAG9B,CAAC;AAiBF,eAAO,MAAM,kBAAkB,EAAE,QAAQ,CAAC,MAAM,CAAC,UAAU,EAAE,eAAe,CAAC,CAQ5E,CAAC;AAEF,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,IAAI,UAAU,CAE/D;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,IAAI,aAAa,CAErE;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,IAAI,eAAe,CAEzE"}
1
+ {"version":3,"file":"file-origins.d.ts","sourceRoot":"","sources":["../../src/media/file-origins.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAEnF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAE5D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE1D,eAAO,MAAM,mBAAmB,mGAMtB,CAAC;AACX,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEjE,eAAO,MAAM,qBAAqB,qDAAsD,CAAC;AACzF,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,qBAAqB,CAAC,CAAC,MAAM,CAAC,CAAC;AAErE,eAAO,MAAM,gBAAgB,6IAA8D,CAAC;AAC5F,MAAM,MAAM,UAAU,GAAG,aAAa,GAAG,eAAe,CAAC;AAIzD,eAAO,MAAM,wBAAwB,QAAU,CAAC;AAEhD,eAAO,MAAM,oBAAoB,KAAK,CAAC;AAIvC,eAAO,MAAM,0BAA0B,0BAA2B,CAAC;AACnE,MAAM,MAAM,mBAAmB,GAAG,CAAC,OAAO,0BAA0B,CAAC,CAAC,MAAM,CAAC,CAAC;AAE9E,eAAO,MAAM,uBAAuB,4BAA6B,CAAC;AAClE,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,uBAAuB,CAAC,CAAC,MAAM,CAAC,CAAC;AAExE,eAAO,MAAM,wBAAwB,wDAAyD,CAAC;AAE/F,eAAO,MAAM,cAAc,EAAE,WAG5B,CAAC;AAEF,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;IAC/B,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,iBAAiB,EAAE,WAAW,CAAC,CAAC,CAAC;IACjE,QAAQ,CAAC,MAAM,EAAE,mBAAmB,CAAC;IACrC,QAAQ,CAAC,SAAS,EAAE,gBAAgB,CAAC;CACtC;AAED,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmD6B,CAAC;AAiDxD,eAAO,MAAM,0BAA0B,QAAS,CAAC;AACjD,eAAO,MAAM,sBAAsB,cAAc,CAAC;AAElD,eAAO,MAAM,gBAAgB,EAAE,WAG9B,CAAC;AAkBF,eAAO,MAAM,kBAAkB,EAAE,QAAQ,CAAC,MAAM,CAAC,UAAU,EAAE,eAAe,CAAC,CAQ5E,CAAC;AAEF,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,IAAI,UAAU,CAE/D;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,IAAI,aAAa,CAErE;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,IAAI,eAAe,CAEzE"}
@@ -105,6 +105,8 @@ function pictureOriginSpec(kind) {
105
105
  allowRecordVideo: false,
106
106
  allowRecordAudio: false,
107
107
  },
108
+ preserveOriginal: false,
109
+ allowSignedOut: false,
108
110
  processing: {
109
111
  image: {
110
112
  kind: 'image',
@@ -135,6 +137,7 @@ function signatureOriginSpec() {
135
137
  allowRecordAudio: false,
136
138
  },
137
139
  preserveOriginal: true,
140
+ allowSignedOut: false,
138
141
  };
139
142
  }
140
143
  export const MEDIA_ORIGIN_SPECS = {
@@ -1 +1 @@
1
- {"version":3,"file":"file-origins.js","sourceRoot":"","sources":["../../src/media/file-origins.ts"],"names":[],"mappings":"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","sourcesContent":["import type { MediaAccept, MediaOriginSpec } from '@ttt-productions/media-schemas';\nimport { PICTURE_VARIANT_KEYS } from '../types/unions.js';\nimport type { PictureVariantKey } from '../types/unions.js';\nimport { PICTURE_ASPECT_RATIOS, pictureAspectRatio } from './picture-aspects.js';\nimport type { PictureAspect } from './picture-aspects.js';\n\nexport const PICTURE_ORIGIN_KEYS = [\n 'league-picture',\n 'team-picture',\n 'landing-picture',\n 'location-picture',\n 'award-badge',\n] as const;\nexport type PictureOrigin = (typeof PICTURE_ORIGIN_KEYS)[number];\n\nexport const SIGNATURE_ORIGIN_KEYS = ['waiver-signature', 'hardware-signature'] as const;\nexport type SignatureOrigin = (typeof SIGNATURE_ORIGIN_KEYS)[number];\n\nexport const FILE_ORIGIN_KEYS = [...PICTURE_ORIGIN_KEYS, ...SIGNATURE_ORIGIN_KEYS] as const;\nexport type FileOrigin = PictureOrigin | SignatureOrigin;\n\nconst MB = 1024 * 1024;\n\nexport const PICTURE_UPLOAD_MAX_BYTES = 25 * MB;\n\nexport const PICTURE_JPEG_QUALITY = 85;\n\n// What a picture kind is stored as: a photo as JPEG, a badge as PNG, which keeps the transparent\n// corners of a badge drawn round.\nexport const PICTURE_STORED_FORMAT_KEYS = ['jpeg', 'png'] as const;\nexport type PictureStoredFormat = (typeof PICTURE_STORED_FORMAT_KEYS)[number];\n\nexport const PICTURE_CROP_SHAPE_KEYS = ['rect', 'round'] as const;\nexport type PictureCropShape = (typeof PICTURE_CROP_SHAPE_KEYS)[number];\n\nexport const PICTURE_ACCEPTED_FORMATS = ['jpeg', 'png', 'gif', 'webp', 'bmp', 'tiff'] as const;\n\nexport const PICTURE_ACCEPT: MediaAccept = {\n kinds: ['image'],\n formats: [...PICTURE_ACCEPTED_FORMATS],\n};\n\nexport interface PictureSize {\n readonly width: number;\n readonly height: number;\n}\n\nexport interface PictureKind {\n readonly aspect: PictureAspect;\n readonly sizes: Readonly<Record<PictureVariantKey, PictureSize>>;\n readonly format: PictureStoredFormat;\n readonly cropShape: PictureCropShape;\n}\n\nexport const PICTURE_KINDS = {\n 'league-picture': {\n aspect: 'landscape',\n format: 'jpeg',\n cropShape: 'rect',\n sizes: {\n sm: { width: 480, height: 270 },\n md: { width: 960, height: 540 },\n lg: { width: 1920, height: 1080 },\n },\n },\n 'team-picture': {\n aspect: 'classic',\n format: 'jpeg',\n cropShape: 'rect',\n sizes: {\n sm: { width: 480, height: 360 },\n md: { width: 960, height: 720 },\n lg: { width: 1600, height: 1200 },\n },\n },\n 'landing-picture': {\n aspect: 'banner',\n format: 'jpeg',\n cropShape: 'rect',\n sizes: {\n sm: { width: 720, height: 240 },\n md: { width: 1440, height: 480 },\n lg: { width: 2400, height: 800 },\n },\n },\n 'location-picture': {\n aspect: 'landscape',\n format: 'jpeg',\n cropShape: 'rect',\n sizes: {\n sm: { width: 480, height: 270 },\n md: { width: 960, height: 540 },\n lg: { width: 1280, height: 720 },\n },\n },\n 'award-badge': {\n aspect: 'square',\n format: 'png',\n cropShape: 'round',\n sizes: {\n sm: { width: 64, height: 64 },\n md: { width: 256, height: 256 },\n lg: { width: 512, height: 512 },\n },\n },\n} as const satisfies Record<PictureOrigin, PictureKind>;\n\nfunction pictureOriginSpec(kind: PictureKind): MediaOriginSpec {\n const ratio = pictureAspectRatio(kind.aspect);\n const { width, height } = PICTURE_ASPECT_RATIOS[kind.aspect];\n const variants = PICTURE_VARIANT_KEYS.map((key) => ({\n key,\n crop: {\n width: kind.sizes[key].width,\n height: kind.sizes[key].height,\n gravity: 'center' as const,\n },\n format: kind.format,\n ...(kind.format === 'jpeg' ? { quality: PICTURE_JPEG_QUALITY } : {}),\n }));\n return {\n kind: 'image',\n accept: PICTURE_ACCEPT,\n maxBytes: PICTURE_UPLOAD_MAX_BYTES,\n imageCrop: {\n aspectRatio: ratio,\n outputWidth: kind.sizes.lg.width,\n outputHeight: kind.sizes.lg.height,\n shape: kind.cropShape,\n format: kind.format,\n ...(kind.format === 'jpeg' ? { quality: PICTURE_JPEG_QUALITY } : {}),\n aspectRatioDisplay: `${width}:${height}`,\n },\n client: {\n allowPick: true,\n allowCapturePhoto: true,\n allowRecordVideo: false,\n allowRecordAudio: false,\n },\n processing: {\n image: {\n kind: 'image',\n accept: PICTURE_ACCEPT,\n maxBytes: PICTURE_UPLOAD_MAX_BYTES,\n requiredAspectRatio: ratio,\n allowAutoFormat: true,\n image: { variants, stripMetadata: true },\n },\n },\n };\n}\n\nexport const SIGNATURE_UPLOAD_MAX_BYTES = 1 * MB;\nexport const SIGNATURE_CONTENT_TYPE = 'image/png';\n\nexport const SIGNATURE_ACCEPT: MediaAccept = {\n kinds: ['file'],\n mimes: [SIGNATURE_CONTENT_TYPE],\n};\n\nfunction signatureOriginSpec(): MediaOriginSpec {\n return {\n kind: 'generic',\n accept: SIGNATURE_ACCEPT,\n maxBytes: SIGNATURE_UPLOAD_MAX_BYTES,\n client: {\n allowPick: false,\n allowCapturePhoto: false,\n allowRecordVideo: false,\n allowRecordAudio: false,\n },\n preserveOriginal: true,\n };\n}\n\nexport const MEDIA_ORIGIN_SPECS: Readonly<Record<FileOrigin, MediaOriginSpec>> = {\n 'league-picture': pictureOriginSpec(PICTURE_KINDS['league-picture']),\n 'team-picture': pictureOriginSpec(PICTURE_KINDS['team-picture']),\n 'landing-picture': pictureOriginSpec(PICTURE_KINDS['landing-picture']),\n 'location-picture': pictureOriginSpec(PICTURE_KINDS['location-picture']),\n 'award-badge': pictureOriginSpec(PICTURE_KINDS['award-badge']),\n 'waiver-signature': signatureOriginSpec(),\n 'hardware-signature': signatureOriginSpec(),\n};\n\nexport function isFileOrigin(value: string): value is FileOrigin {\n return (FILE_ORIGIN_KEYS as readonly string[]).includes(value);\n}\n\nexport function isPictureOrigin(value: string): value is PictureOrigin {\n return (PICTURE_ORIGIN_KEYS as readonly string[]).includes(value);\n}\n\nexport function isSignatureOrigin(value: string): value is SignatureOrigin {\n return (SIGNATURE_ORIGIN_KEYS as readonly string[]).includes(value);\n}\n"]}
1
+ {"version":3,"file":"file-origins.js","sourceRoot":"","sources":["../../src/media/file-origins.ts"],"names":[],"mappings":"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","sourcesContent":["import type { MediaAccept, MediaOriginSpec } from '@ttt-productions/media-schemas';\nimport { PICTURE_VARIANT_KEYS } from '../types/unions.js';\nimport type { PictureVariantKey } from '../types/unions.js';\nimport { PICTURE_ASPECT_RATIOS, pictureAspectRatio } from './picture-aspects.js';\nimport type { PictureAspect } from './picture-aspects.js';\n\nexport const PICTURE_ORIGIN_KEYS = [\n 'league-picture',\n 'team-picture',\n 'landing-picture',\n 'location-picture',\n 'award-badge',\n] as const;\nexport type PictureOrigin = (typeof PICTURE_ORIGIN_KEYS)[number];\n\nexport const SIGNATURE_ORIGIN_KEYS = ['waiver-signature', 'hardware-signature'] as const;\nexport type SignatureOrigin = (typeof SIGNATURE_ORIGIN_KEYS)[number];\n\nexport const FILE_ORIGIN_KEYS = [...PICTURE_ORIGIN_KEYS, ...SIGNATURE_ORIGIN_KEYS] as const;\nexport type FileOrigin = PictureOrigin | SignatureOrigin;\n\nconst MB = 1024 * 1024;\n\nexport const PICTURE_UPLOAD_MAX_BYTES = 25 * MB;\n\nexport const PICTURE_JPEG_QUALITY = 85;\n\n// What a picture kind is stored as: a photo as JPEG, a badge as PNG, which keeps the transparent\n// corners of a badge drawn round.\nexport const PICTURE_STORED_FORMAT_KEYS = ['jpeg', 'png'] as const;\nexport type PictureStoredFormat = (typeof PICTURE_STORED_FORMAT_KEYS)[number];\n\nexport const PICTURE_CROP_SHAPE_KEYS = ['rect', 'round'] as const;\nexport type PictureCropShape = (typeof PICTURE_CROP_SHAPE_KEYS)[number];\n\nexport const PICTURE_ACCEPTED_FORMATS = ['jpeg', 'png', 'gif', 'webp', 'bmp', 'tiff'] as const;\n\nexport const PICTURE_ACCEPT: MediaAccept = {\n kinds: ['image'],\n formats: [...PICTURE_ACCEPTED_FORMATS],\n};\n\nexport interface PictureSize {\n readonly width: number;\n readonly height: number;\n}\n\nexport interface PictureKind {\n readonly aspect: PictureAspect;\n readonly sizes: Readonly<Record<PictureVariantKey, PictureSize>>;\n readonly format: PictureStoredFormat;\n readonly cropShape: PictureCropShape;\n}\n\nexport const PICTURE_KINDS = {\n 'league-picture': {\n aspect: 'landscape',\n format: 'jpeg',\n cropShape: 'rect',\n sizes: {\n sm: { width: 480, height: 270 },\n md: { width: 960, height: 540 },\n lg: { width: 1920, height: 1080 },\n },\n },\n 'team-picture': {\n aspect: 'classic',\n format: 'jpeg',\n cropShape: 'rect',\n sizes: {\n sm: { width: 480, height: 360 },\n md: { width: 960, height: 720 },\n lg: { width: 1600, height: 1200 },\n },\n },\n 'landing-picture': {\n aspect: 'banner',\n format: 'jpeg',\n cropShape: 'rect',\n sizes: {\n sm: { width: 720, height: 240 },\n md: { width: 1440, height: 480 },\n lg: { width: 2400, height: 800 },\n },\n },\n 'location-picture': {\n aspect: 'landscape',\n format: 'jpeg',\n cropShape: 'rect',\n sizes: {\n sm: { width: 480, height: 270 },\n md: { width: 960, height: 540 },\n lg: { width: 1280, height: 720 },\n },\n },\n 'award-badge': {\n aspect: 'square',\n format: 'png',\n cropShape: 'round',\n sizes: {\n sm: { width: 64, height: 64 },\n md: { width: 256, height: 256 },\n lg: { width: 512, height: 512 },\n },\n },\n} as const satisfies Record<PictureOrigin, PictureKind>;\n\nfunction pictureOriginSpec(kind: PictureKind): MediaOriginSpec {\n const ratio = pictureAspectRatio(kind.aspect);\n const { width, height } = PICTURE_ASPECT_RATIOS[kind.aspect];\n const variants = PICTURE_VARIANT_KEYS.map((key) => ({\n key,\n crop: {\n width: kind.sizes[key].width,\n height: kind.sizes[key].height,\n gravity: 'center' as const,\n },\n format: kind.format,\n ...(kind.format === 'jpeg' ? { quality: PICTURE_JPEG_QUALITY } : {}),\n }));\n return {\n kind: 'image',\n accept: PICTURE_ACCEPT,\n maxBytes: PICTURE_UPLOAD_MAX_BYTES,\n imageCrop: {\n aspectRatio: ratio,\n outputWidth: kind.sizes.lg.width,\n outputHeight: kind.sizes.lg.height,\n shape: kind.cropShape,\n format: kind.format,\n ...(kind.format === 'jpeg' ? { quality: PICTURE_JPEG_QUALITY } : {}),\n aspectRatioDisplay: `${width}:${height}`,\n },\n client: {\n allowPick: true,\n allowCapturePhoto: true,\n allowRecordVideo: false,\n allowRecordAudio: false,\n },\n preserveOriginal: false,\n allowSignedOut: false,\n processing: {\n image: {\n kind: 'image',\n accept: PICTURE_ACCEPT,\n maxBytes: PICTURE_UPLOAD_MAX_BYTES,\n requiredAspectRatio: ratio,\n allowAutoFormat: true,\n image: { variants, stripMetadata: true },\n },\n },\n };\n}\n\nexport const SIGNATURE_UPLOAD_MAX_BYTES = 1 * MB;\nexport const SIGNATURE_CONTENT_TYPE = 'image/png';\n\nexport const SIGNATURE_ACCEPT: MediaAccept = {\n kinds: ['file'],\n mimes: [SIGNATURE_CONTENT_TYPE],\n};\n\nfunction signatureOriginSpec(): MediaOriginSpec {\n return {\n kind: 'generic',\n accept: SIGNATURE_ACCEPT,\n maxBytes: SIGNATURE_UPLOAD_MAX_BYTES,\n client: {\n allowPick: false,\n allowCapturePhoto: false,\n allowRecordVideo: false,\n allowRecordAudio: false,\n },\n preserveOriginal: true,\n allowSignedOut: false,\n };\n}\n\nexport const MEDIA_ORIGIN_SPECS: Readonly<Record<FileOrigin, MediaOriginSpec>> = {\n 'league-picture': pictureOriginSpec(PICTURE_KINDS['league-picture']),\n 'team-picture': pictureOriginSpec(PICTURE_KINDS['team-picture']),\n 'landing-picture': pictureOriginSpec(PICTURE_KINDS['landing-picture']),\n 'location-picture': pictureOriginSpec(PICTURE_KINDS['location-picture']),\n 'award-badge': pictureOriginSpec(PICTURE_KINDS['award-badge']),\n 'waiver-signature': signatureOriginSpec(),\n 'hardware-signature': signatureOriginSpec(),\n};\n\nexport function isFileOrigin(value: string): value is FileOrigin {\n return (FILE_ORIGIN_KEYS as readonly string[]).includes(value);\n}\n\nexport function isPictureOrigin(value: string): value is PictureOrigin {\n return (PICTURE_ORIGIN_KEYS as readonly string[]).includes(value);\n}\n\nexport function isSignatureOrigin(value: string): value is SignatureOrigin {\n return (SIGNATURE_ORIGIN_KEYS as readonly string[]).includes(value);\n}\n"]}
@@ -16,7 +16,6 @@ export declare const COLLECTION_REFS: {
16
16
  readonly waiverTemplates: () => [string];
17
17
  readonly signedWaivers: () => [string];
18
18
  readonly hardwareLoanContracts: () => [string];
19
- readonly signatureCopyIntents: () => [string];
20
19
  readonly awardDefinitions: () => [string];
21
20
  readonly statsValidationReports: () => [string];
22
21
  readonly statsJobs: () => [string];
@@ -1 +1 @@
1
- {"version":3,"file":"collection-refs.d.ts","sourceRoot":"","sources":["../../src/paths/collection-refs.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,eAAe;iCACR,CAAC,MAAM,CAAC;gCACT,CAAC,MAAM,CAAC;yCACC,CAAC,MAAM,CAAC;uCACV,CAAC,MAAM,CAAC;yCACN,CAAC,MAAM,CAAC;iCAChB,CAAC,MAAM,CAAC;gCACT,CAAC,MAAM,CAAC;uCACD,CAAC,MAAM,CAAC;oCACX,CAAC,MAAM,CAAC;oCACR,CAAC,MAAM,CAAC;qCACP,CAAC,MAAM,CAAC;qCACR,CAAC,MAAM,CAAC;+BACd,CAAC,MAAM,CAAC;kCACL,CAAC,MAAM,CAAC;oCACN,CAAC,MAAM,CAAC;kCACV,CAAC,MAAM,CAAC;0CACA,CAAC,MAAM,CAAC;yCACT,CAAC,MAAM,CAAC;qCACZ,CAAC,MAAM,CAAC;2CACF,CAAC,MAAM,CAAC;8BACrB,CAAC,MAAM,CAAC;wCACE,CAAC,MAAM,CAAC;oCACZ,CAAC,MAAM,CAAC;iCACX,CAAC,MAAM,CAAC;uCACF,CAAC,MAAM,CAAC;gCACf,CAAC,MAAM,CAAC;6CACK,CAAC,MAAM,CAAC;6CACR,CAAC,MAAM,CAAC;2CACV,CAAC,MAAM,CAAC;+CACJ,CAAC,MAAM,CAAC;CAChC,CAAC"}
1
+ {"version":3,"file":"collection-refs.d.ts","sourceRoot":"","sources":["../../src/paths/collection-refs.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,eAAe;iCACR,CAAC,MAAM,CAAC;gCACT,CAAC,MAAM,CAAC;yCACC,CAAC,MAAM,CAAC;uCACV,CAAC,MAAM,CAAC;yCACN,CAAC,MAAM,CAAC;iCAChB,CAAC,MAAM,CAAC;gCACT,CAAC,MAAM,CAAC;uCACD,CAAC,MAAM,CAAC;oCACX,CAAC,MAAM,CAAC;oCACR,CAAC,MAAM,CAAC;qCACP,CAAC,MAAM,CAAC;qCACR,CAAC,MAAM,CAAC;+BACd,CAAC,MAAM,CAAC;kCACL,CAAC,MAAM,CAAC;oCACN,CAAC,MAAM,CAAC;kCACV,CAAC,MAAM,CAAC;0CACA,CAAC,MAAM,CAAC;qCACb,CAAC,MAAM,CAAC;2CACF,CAAC,MAAM,CAAC;8BACrB,CAAC,MAAM,CAAC;wCACE,CAAC,MAAM,CAAC;oCACZ,CAAC,MAAM,CAAC;iCACX,CAAC,MAAM,CAAC;uCACF,CAAC,MAAM,CAAC;gCACf,CAAC,MAAM,CAAC;6CACK,CAAC,MAAM,CAAC;6CACR,CAAC,MAAM,CAAC;2CACV,CAAC,MAAM,CAAC;+CACJ,CAAC,MAAM,CAAC;CAChC,CAAC"}
@@ -17,7 +17,6 @@ export const COLLECTION_REFS = {
17
17
  waiverTemplates: () => [COLLECTIONS.WAIVER_TEMPLATES],
18
18
  signedWaivers: () => [COLLECTIONS.SIGNED_WAIVERS],
19
19
  hardwareLoanContracts: () => [COLLECTIONS.HARDWARE_LOAN_CONTRACTS],
20
- signatureCopyIntents: () => [COLLECTIONS.SIGNATURE_COPY_INTENTS],
21
20
  awardDefinitions: () => [COLLECTIONS.AWARD_DEFINITIONS],
22
21
  statsValidationReports: () => [COLLECTIONS.STATS_VALIDATION_REPORTS],
23
22
  statsJobs: () => [COLLECTIONS.STATS_JOBS],
@@ -1 +1 @@
1
- {"version":3,"file":"collection-refs.js","sourceRoot":"","sources":["../../src/paths/collection-refs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,YAAY,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,aAAa,CAAC;IACzD,WAAW,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,YAAY,CAAC;IACvD,oBAAoB,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,sBAAsB,CAAC;IAC1E,kBAAkB,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,mBAAmB,CAAC;IACrE,oBAAoB,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,sBAAsB,CAAC;IAC1E,YAAY,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,aAAa,CAAC;IACzD,WAAW,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,YAAY,CAAC;IACvD,kBAAkB,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,oBAAoB,CAAC;IACtE,eAAe,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,gBAAgB,CAAC;IAC/D,eAAe,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,gBAAgB,CAAC;IAC/D,gBAAgB,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,kBAAkB,CAAC;IAClE,gBAAgB,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,kBAAkB,CAAC;IAClE,UAAU,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,WAAW,CAAC;IACrD,aAAa,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,cAAc,CAAC;IAC3D,eAAe,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,gBAAgB,CAAC;IAC/D,aAAa,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,cAAc,CAAC;IAC3D,qBAAqB,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,uBAAuB,CAAC;IAC5E,oBAAoB,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,sBAAsB,CAAC;IAC1E,gBAAgB,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,iBAAiB,CAAC;IACjE,sBAAsB,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,wBAAwB,CAAC;IAC9E,SAAS,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,UAAU,CAAC;IACnD,mBAAmB,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,qBAAqB,CAAC;IACxE,eAAe,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,gBAAgB,CAAC;IAC/D,YAAY,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,aAAa,CAAC;IACzD,kBAAkB,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,mBAAmB,CAAC;IACrE,WAAW,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,YAAY,CAAC;IACvD,wBAAwB,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,0BAA0B,CAAC;IAClF,wBAAwB,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,0BAA0B,CAAC;IAClF,sBAAsB,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,uBAAuB,CAAC;IAC7E,0BAA0B,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,6BAA6B,CAAC;CAC/E,CAAC","sourcesContent":["import { COLLECTIONS } from './collections.js';\n\nexport const COLLECTION_REFS = {\n userProfiles: (): [string] => [COLLECTIONS.USER_PROFILES],\n publicUsers: (): [string] => [COLLECTIONS.PUBLIC_USERS],\n statusReconcileQueue: (): [string] => [COLLECTIONS.STATUS_RECONCILE_QUEUE],\n registrationStarts: (): [string] => [COLLECTIONS.REGISTRATION_STARTS],\n reservedDisplayNames: (): [string] => [COLLECTIONS.RESERVED_DISPLAY_NAMES],\n sportLeagues: (): [string] => [COLLECTIONS.SPORT_LEAGUES],\n leagueTeams: (): [string] => [COLLECTIONS.LEAGUE_TEAMS],\n leagueTeamContacts: (): [string] => [COLLECTIONS.LEAGUE_TEAM_CONTACTS],\n teamMemberships: (): [string] => [COLLECTIONS.TEAM_MEMBERSHIPS],\n teamInvitations: (): [string] => [COLLECTIONS.TEAM_INVITATIONS],\n teamJoinRequests: (): [string] => [COLLECTIONS.TEAM_JOIN_REQUESTS],\n leagueFreeAgents: (): [string] => [COLLECTIONS.LEAGUE_FREE_AGENTS],\n sportGames: (): [string] => [COLLECTIONS.SPORT_GAMES],\n gameLocations: (): [string] => [COLLECTIONS.GAME_LOCATIONS],\n waiverTemplates: (): [string] => [COLLECTIONS.WAIVER_TEMPLATES],\n signedWaivers: (): [string] => [COLLECTIONS.SIGNED_WAIVERS],\n hardwareLoanContracts: (): [string] => [COLLECTIONS.HARDWARE_LOAN_CONTRACTS],\n signatureCopyIntents: (): [string] => [COLLECTIONS.SIGNATURE_COPY_INTENTS],\n awardDefinitions: (): [string] => [COLLECTIONS.AWARD_DEFINITIONS],\n statsValidationReports: (): [string] => [COLLECTIONS.STATS_VALIDATION_REPORTS],\n statsJobs: (): [string] => [COLLECTIONS.STATS_JOBS],\n migrationActionRuns: (): [string] => [COLLECTIONS.MIGRATION_ACTION_RUNS],\n galleryPictures: (): [string] => [COLLECTIONS.GALLERY_PICTURES],\n pendingMedia: (): [string] => [COLLECTIONS.PENDING_MEDIA],\n pictureRetirements: (): [string] => [COLLECTIONS.PICTURE_RETIREMENTS],\n auditEvents: (): [string] => [COLLECTIONS.AUDIT_EVENTS],\n activeAdminNotifications: (): [string] => [COLLECTIONS.ACTIVE_ADMIN_NOTIFICATIONS],\n adminNotificationHistory: (): [string] => [COLLECTIONS.ADMIN_NOTIFICATION_HISTORY],\n notificationDeliveries: (): [string] => [COLLECTIONS.NOTIFICATION_DELIVERIES],\n notificationArchiveAllJobs: (): [string] => [COLLECTIONS.NOTIFICATION_ARCHIVE_ALL_JOBS],\n} as const;\n"]}
1
+ {"version":3,"file":"collection-refs.js","sourceRoot":"","sources":["../../src/paths/collection-refs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,YAAY,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,aAAa,CAAC;IACzD,WAAW,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,YAAY,CAAC;IACvD,oBAAoB,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,sBAAsB,CAAC;IAC1E,kBAAkB,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,mBAAmB,CAAC;IACrE,oBAAoB,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,sBAAsB,CAAC;IAC1E,YAAY,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,aAAa,CAAC;IACzD,WAAW,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,YAAY,CAAC;IACvD,kBAAkB,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,oBAAoB,CAAC;IACtE,eAAe,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,gBAAgB,CAAC;IAC/D,eAAe,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,gBAAgB,CAAC;IAC/D,gBAAgB,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,kBAAkB,CAAC;IAClE,gBAAgB,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,kBAAkB,CAAC;IAClE,UAAU,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,WAAW,CAAC;IACrD,aAAa,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,cAAc,CAAC;IAC3D,eAAe,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,gBAAgB,CAAC;IAC/D,aAAa,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,cAAc,CAAC;IAC3D,qBAAqB,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,uBAAuB,CAAC;IAC5E,gBAAgB,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,iBAAiB,CAAC;IACjE,sBAAsB,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,wBAAwB,CAAC;IAC9E,SAAS,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,UAAU,CAAC;IACnD,mBAAmB,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,qBAAqB,CAAC;IACxE,eAAe,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,gBAAgB,CAAC;IAC/D,YAAY,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,aAAa,CAAC;IACzD,kBAAkB,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,mBAAmB,CAAC;IACrE,WAAW,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,YAAY,CAAC;IACvD,wBAAwB,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,0BAA0B,CAAC;IAClF,wBAAwB,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,0BAA0B,CAAC;IAClF,sBAAsB,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,uBAAuB,CAAC;IAC7E,0BAA0B,EAAE,GAAa,EAAE,CAAC,CAAC,WAAW,CAAC,6BAA6B,CAAC;CAC/E,CAAC","sourcesContent":["import { COLLECTIONS } from './collections.js';\n\nexport const COLLECTION_REFS = {\n userProfiles: (): [string] => [COLLECTIONS.USER_PROFILES],\n publicUsers: (): [string] => [COLLECTIONS.PUBLIC_USERS],\n statusReconcileQueue: (): [string] => [COLLECTIONS.STATUS_RECONCILE_QUEUE],\n registrationStarts: (): [string] => [COLLECTIONS.REGISTRATION_STARTS],\n reservedDisplayNames: (): [string] => [COLLECTIONS.RESERVED_DISPLAY_NAMES],\n sportLeagues: (): [string] => [COLLECTIONS.SPORT_LEAGUES],\n leagueTeams: (): [string] => [COLLECTIONS.LEAGUE_TEAMS],\n leagueTeamContacts: (): [string] => [COLLECTIONS.LEAGUE_TEAM_CONTACTS],\n teamMemberships: (): [string] => [COLLECTIONS.TEAM_MEMBERSHIPS],\n teamInvitations: (): [string] => [COLLECTIONS.TEAM_INVITATIONS],\n teamJoinRequests: (): [string] => [COLLECTIONS.TEAM_JOIN_REQUESTS],\n leagueFreeAgents: (): [string] => [COLLECTIONS.LEAGUE_FREE_AGENTS],\n sportGames: (): [string] => [COLLECTIONS.SPORT_GAMES],\n gameLocations: (): [string] => [COLLECTIONS.GAME_LOCATIONS],\n waiverTemplates: (): [string] => [COLLECTIONS.WAIVER_TEMPLATES],\n signedWaivers: (): [string] => [COLLECTIONS.SIGNED_WAIVERS],\n hardwareLoanContracts: (): [string] => [COLLECTIONS.HARDWARE_LOAN_CONTRACTS],\n awardDefinitions: (): [string] => [COLLECTIONS.AWARD_DEFINITIONS],\n statsValidationReports: (): [string] => [COLLECTIONS.STATS_VALIDATION_REPORTS],\n statsJobs: (): [string] => [COLLECTIONS.STATS_JOBS],\n migrationActionRuns: (): [string] => [COLLECTIONS.MIGRATION_ACTION_RUNS],\n galleryPictures: (): [string] => [COLLECTIONS.GALLERY_PICTURES],\n pendingMedia: (): [string] => [COLLECTIONS.PENDING_MEDIA],\n pictureRetirements: (): [string] => [COLLECTIONS.PICTURE_RETIREMENTS],\n auditEvents: (): [string] => [COLLECTIONS.AUDIT_EVENTS],\n activeAdminNotifications: (): [string] => [COLLECTIONS.ACTIVE_ADMIN_NOTIFICATIONS],\n adminNotificationHistory: (): [string] => [COLLECTIONS.ADMIN_NOTIFICATION_HISTORY],\n notificationDeliveries: (): [string] => [COLLECTIONS.NOTIFICATION_DELIVERIES],\n notificationArchiveAllJobs: (): [string] => [COLLECTIONS.NOTIFICATION_ARCHIVE_ALL_JOBS],\n} as const;\n"]}
@@ -17,7 +17,6 @@ export declare const COLLECTIONS: {
17
17
  readonly WAIVER_TEMPLATES: "waiverTemplates";
18
18
  readonly SIGNED_WAIVERS: "signedWaivers";
19
19
  readonly HARDWARE_LOAN_CONTRACTS: "hardwareLoanContracts";
20
- readonly SIGNATURE_COPY_INTENTS: "signatureCopyIntents";
21
20
  readonly AWARD_DEFINITIONS: "awardDefinitions";
22
21
  readonly SPORT_HALL_OF_FAME: "sportHallOfFame";
23
22
  readonly STATS_VALIDATION_REPORTS: "statsValidationReports";
@@ -1 +1 @@
1
- {"version":3,"file":"collections.d.ts","sourceRoot":"","sources":["../../src/paths/collections.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6Cd,CAAC;AAEX,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,OAAO,WAAW,CAAC,CAAC;AAE5E,eAAO,MAAM,2BAA2B;;;CAG9B,CAAC;AAEX,eAAO,MAAM,yBAAyB;;;;CAI5B,CAAC;AAEX,eAAO,MAAM,8BAA8B;;CAEjC,CAAC;AAEX,eAAO,MAAM,YAAY;;;;;;;;;CAYf,CAAC;AAIX,eAAO,MAAM,cAAc;;;;;;;;;;;;CAyB2B,CAAC;AAEvD,MAAM,MAAM,YAAY,GAAG,MAAM,OAAO,cAAc,CAAC"}
1
+ {"version":3,"file":"collections.d.ts","sourceRoot":"","sources":["../../src/paths/collections.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4Cd,CAAC;AAEX,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,OAAO,WAAW,CAAC,CAAC;AAE5E,eAAO,MAAM,2BAA2B;;;CAG9B,CAAC;AAEX,eAAO,MAAM,yBAAyB;;;;CAI5B,CAAC;AAEX,eAAO,MAAM,8BAA8B;;CAEjC,CAAC;AAEX,eAAO,MAAM,YAAY;;;;;;;;;CAYf,CAAC;AAIX,eAAO,MAAM,cAAc;;;;;;;;;;;;CAyB2B,CAAC;AAEvD,MAAM,MAAM,YAAY,GAAG,MAAM,OAAO,cAAc,CAAC"}
@@ -17,7 +17,6 @@ export const COLLECTIONS = {
17
17
  WAIVER_TEMPLATES: 'waiverTemplates',
18
18
  SIGNED_WAIVERS: 'signedWaivers',
19
19
  HARDWARE_LOAN_CONTRACTS: 'hardwareLoanContracts',
20
- SIGNATURE_COPY_INTENTS: 'signatureCopyIntents',
21
20
  AWARD_DEFINITIONS: 'awardDefinitions',
22
21
  SPORT_HALL_OF_FAME: 'sportHallOfFame',
23
22
  STATS_VALIDATION_REPORTS: 'statsValidationReports',
@@ -1 +1 @@
1
- {"version":3,"file":"collections.js","sourceRoot":"","sources":["../../src/paths/collections.ts"],"names":[],"mappings":"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","sourcesContent":["export const COLLECTIONS = {\n USER_PROFILES: 'userProfiles',\n PUBLIC_USERS: 'publicUsers',\n RESERVED_DISPLAY_NAMES: 'reservedDisplayNames',\n STATUS_RECONCILE_QUEUE: 'statusReconcileQueue',\n REGISTRATION_STARTS: 'registrationStarts',\n SWEEP_STATE: 'sweepState',\n\n SPORT_LEAGUES: 'sportLeagues',\n LEAGUE_TEAMS: 'leagueTeams',\n LEAGUE_TEAM_CONTACTS: 'leagueTeamContacts',\n TEAM_MEMBERSHIPS: 'teamMemberships',\n TEAM_INVITATIONS: 'teamInvitations',\n TEAM_JOIN_REQUESTS: 'teamJoinRequests',\n LEAGUE_FREE_AGENTS: 'leagueFreeAgents',\n\n SPORT_GAMES: 'sportGames',\n GAME_LOCATIONS: 'gameLocations',\n\n WAIVER_TEMPLATES: 'waiverTemplates',\n SIGNED_WAIVERS: 'signedWaivers',\n HARDWARE_LOAN_CONTRACTS: 'hardwareLoanContracts',\n SIGNATURE_COPY_INTENTS: 'signatureCopyIntents',\n\n AWARD_DEFINITIONS: 'awardDefinitions',\n SPORT_HALL_OF_FAME: 'sportHallOfFame',\n STATS_VALIDATION_REPORTS: 'statsValidationReports',\n STATS_JOBS: 'statsJobs',\n\n MIGRATION_ACTION_RUNS: 'migrationActionRuns',\n\n GALLERY_PICTURES: 'galleryPictures',\n PENDING_MEDIA: 'pendingMedia',\n PICTURE_RETIREMENTS: 'pictureRetirements',\n\n AUDIT_EVENTS: 'auditEvents',\n\n ACTIVE_ADMIN_NOTIFICATIONS: 'activeAdminNotifications',\n ADMIN_NOTIFICATION_HISTORY: 'adminNotificationHistory',\n NOTIFICATION_DELIVERIES: 'notificationDeliveries',\n NOTIFICATION_ARCHIVE_ALL_JOBS: 'notificationArchiveAllJobs',\n\n APP_CONFIG: '_appConfig',\n SYSTEM_DATA: '_systemData',\n SERVER_DATA: '_serverData',\n} as const;\n\nexport type CollectionName = (typeof COLLECTIONS)[keyof typeof COLLECTIONS];\n\nexport const USER_PROFILE_SUBCOLLECTIONS = {\n HISTORICAL_STATS: 'historicalStats',\n PRIVATE_DATA: 'privateData',\n} as const;\n\nexport const SPORT_GAME_SUBCOLLECTIONS = {\n GAME_ROSTER_PLAYERS: 'gameRosterPlayers',\n GAME_STAT_EVENTS: 'gameStatEvents',\n GAME_STAT_HISTORY: 'gameStatHistory',\n} as const;\n\nexport const WAIVER_TEMPLATE_SUBCOLLECTIONS = {\n WAIVER_TEMPLATE_VERSIONS: 'waiverTemplateVersions',\n} as const;\n\nexport const SPECIAL_DOCS = {\n APP_CONFIG: 'app',\n LANDING_PAGE: 'landingPage',\n STATS_BEACON: 'statsBeacon',\n\n ADMIN_LIST: 'adminList',\n\n MIGRATION_CONSOLE: 'migrationConsole',\n GAME_LOCATION_REGISTRY: 'gameLocationRegistry',\n WAIVER_TEMPLATE_REGISTRY: 'waiverTemplateRegistry',\n\n GAME_STAT_HISTORY_RECORD: 'record',\n} as const;\n\n// The nouns a name may use for a thing with no collection of its own (RULE-STD-ARCH-104), each\n// with the collections it lives in or reads. Every other name's thing is a collection, singular.\nexport const DECLARED_NOUNS = {\n ghostPlayer: [\n COLLECTIONS.PUBLIC_USERS,\n COLLECTIONS.TEAM_MEMBERSHIPS,\n SPORT_GAME_SUBCOLLECTIONS.GAME_ROSTER_PLAYERS,\n ],\n scheduleWeek: [COLLECTIONS.SPORT_LEAGUES],\n displayName: [COLLECTIONS.RESERVED_DISPLAY_NAMES, COLLECTIONS.USER_PROFILES],\n deadLetter: [COLLECTIONS.NOTIFICATION_DELIVERIES],\n adminNotification: [\n COLLECTIONS.ACTIVE_ADMIN_NOTIFICATIONS,\n COLLECTIONS.ADMIN_NOTIFICATION_HISTORY,\n ],\n siteCounts: [\n COLLECTIONS.USER_PROFILES,\n COLLECTIONS.LEAGUE_TEAMS,\n COLLECTIONS.SPORT_LEAGUES,\n COLLECTIONS.SPORT_GAMES,\n COLLECTIONS.LEAGUE_FREE_AGENTS,\n ],\n appConfig: [COLLECTIONS.APP_CONFIG],\n landingPage: [COLLECTIONS.APP_CONFIG],\n statsBeacon: [COLLECTIONS.APP_CONFIG],\n adminList: [COLLECTIONS.SYSTEM_DATA],\n migrationConsole: [COLLECTIONS.SERVER_DATA],\n} as const satisfies Record<string, readonly string[]>;\n\nexport type DeclaredNoun = keyof typeof DECLARED_NOUNS;\n"]}
1
+ {"version":3,"file":"collections.js","sourceRoot":"","sources":["../../src/paths/collections.ts"],"names":[],"mappings":"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","sourcesContent":["export const COLLECTIONS = {\n USER_PROFILES: 'userProfiles',\n PUBLIC_USERS: 'publicUsers',\n RESERVED_DISPLAY_NAMES: 'reservedDisplayNames',\n STATUS_RECONCILE_QUEUE: 'statusReconcileQueue',\n REGISTRATION_STARTS: 'registrationStarts',\n SWEEP_STATE: 'sweepState',\n\n SPORT_LEAGUES: 'sportLeagues',\n LEAGUE_TEAMS: 'leagueTeams',\n LEAGUE_TEAM_CONTACTS: 'leagueTeamContacts',\n TEAM_MEMBERSHIPS: 'teamMemberships',\n TEAM_INVITATIONS: 'teamInvitations',\n TEAM_JOIN_REQUESTS: 'teamJoinRequests',\n LEAGUE_FREE_AGENTS: 'leagueFreeAgents',\n\n SPORT_GAMES: 'sportGames',\n GAME_LOCATIONS: 'gameLocations',\n\n WAIVER_TEMPLATES: 'waiverTemplates',\n SIGNED_WAIVERS: 'signedWaivers',\n HARDWARE_LOAN_CONTRACTS: 'hardwareLoanContracts',\n\n AWARD_DEFINITIONS: 'awardDefinitions',\n SPORT_HALL_OF_FAME: 'sportHallOfFame',\n STATS_VALIDATION_REPORTS: 'statsValidationReports',\n STATS_JOBS: 'statsJobs',\n\n MIGRATION_ACTION_RUNS: 'migrationActionRuns',\n\n GALLERY_PICTURES: 'galleryPictures',\n PENDING_MEDIA: 'pendingMedia',\n PICTURE_RETIREMENTS: 'pictureRetirements',\n\n AUDIT_EVENTS: 'auditEvents',\n\n ACTIVE_ADMIN_NOTIFICATIONS: 'activeAdminNotifications',\n ADMIN_NOTIFICATION_HISTORY: 'adminNotificationHistory',\n NOTIFICATION_DELIVERIES: 'notificationDeliveries',\n NOTIFICATION_ARCHIVE_ALL_JOBS: 'notificationArchiveAllJobs',\n\n APP_CONFIG: '_appConfig',\n SYSTEM_DATA: '_systemData',\n SERVER_DATA: '_serverData',\n} as const;\n\nexport type CollectionName = (typeof COLLECTIONS)[keyof typeof COLLECTIONS];\n\nexport const USER_PROFILE_SUBCOLLECTIONS = {\n HISTORICAL_STATS: 'historicalStats',\n PRIVATE_DATA: 'privateData',\n} as const;\n\nexport const SPORT_GAME_SUBCOLLECTIONS = {\n GAME_ROSTER_PLAYERS: 'gameRosterPlayers',\n GAME_STAT_EVENTS: 'gameStatEvents',\n GAME_STAT_HISTORY: 'gameStatHistory',\n} as const;\n\nexport const WAIVER_TEMPLATE_SUBCOLLECTIONS = {\n WAIVER_TEMPLATE_VERSIONS: 'waiverTemplateVersions',\n} as const;\n\nexport const SPECIAL_DOCS = {\n APP_CONFIG: 'app',\n LANDING_PAGE: 'landingPage',\n STATS_BEACON: 'statsBeacon',\n\n ADMIN_LIST: 'adminList',\n\n MIGRATION_CONSOLE: 'migrationConsole',\n GAME_LOCATION_REGISTRY: 'gameLocationRegistry',\n WAIVER_TEMPLATE_REGISTRY: 'waiverTemplateRegistry',\n\n GAME_STAT_HISTORY_RECORD: 'record',\n} as const;\n\n// The nouns a name may use for a thing with no collection of its own (RULE-STD-ARCH-104), each\n// with the collections it lives in or reads. Every other name's thing is a collection, singular.\nexport const DECLARED_NOUNS = {\n ghostPlayer: [\n COLLECTIONS.PUBLIC_USERS,\n COLLECTIONS.TEAM_MEMBERSHIPS,\n SPORT_GAME_SUBCOLLECTIONS.GAME_ROSTER_PLAYERS,\n ],\n scheduleWeek: [COLLECTIONS.SPORT_LEAGUES],\n displayName: [COLLECTIONS.RESERVED_DISPLAY_NAMES, COLLECTIONS.USER_PROFILES],\n deadLetter: [COLLECTIONS.NOTIFICATION_DELIVERIES],\n adminNotification: [\n COLLECTIONS.ACTIVE_ADMIN_NOTIFICATIONS,\n COLLECTIONS.ADMIN_NOTIFICATION_HISTORY,\n ],\n siteCounts: [\n COLLECTIONS.USER_PROFILES,\n COLLECTIONS.LEAGUE_TEAMS,\n COLLECTIONS.SPORT_LEAGUES,\n COLLECTIONS.SPORT_GAMES,\n COLLECTIONS.LEAGUE_FREE_AGENTS,\n ],\n appConfig: [COLLECTIONS.APP_CONFIG],\n landingPage: [COLLECTIONS.APP_CONFIG],\n statsBeacon: [COLLECTIONS.APP_CONFIG],\n adminList: [COLLECTIONS.SYSTEM_DATA],\n migrationConsole: [COLLECTIONS.SERVER_DATA],\n} as const satisfies Record<string, readonly string[]>;\n\nexport type DeclaredNoun = keyof typeof DECLARED_NOUNS;\n"]}
@@ -29,7 +29,6 @@ export declare const PATH_BUILDERS: {
29
29
  readonly waiverTemplateVersions: (waiverTemplateId: string) => [string, string, string];
30
30
  readonly signedWaiver: (leagueId: string, userId: string) => [string, string];
31
31
  readonly hardwareLoanContract: (contractId: string) => [string, string];
32
- readonly signatureCopyIntent: (stagingId: string) => [string, string];
33
32
  readonly awardDefinition: (awardId: string) => [string, string];
34
33
  readonly sportHallOfFame: (sportKey: SportKey) => [string, string];
35
34
  readonly statsValidationReport: (reportId: string) => [string, string];
@@ -1 +1 @@
1
- {"version":3,"file":"path-builders.d.ts","sourceRoot":"","sources":["../../src/paths/path-builders.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"path-builders.d.ts","sourceRoot":"","sources":["../../src/paths/path-builders.ts"],"names":[],"mappings":"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"}
@@ -110,10 +110,6 @@ export const PATH_BUILDERS = {
110
110
  COLLECTIONS.HARDWARE_LOAN_CONTRACTS,
111
111
  contractId,
112
112
  ],
113
- signatureCopyIntent: (stagingId) => [
114
- COLLECTIONS.SIGNATURE_COPY_INTENTS,
115
- stagingId,
116
- ],
117
113
  awardDefinition: (awardId) => [COLLECTIONS.AWARD_DEFINITIONS, awardId],
118
114
  sportHallOfFame: (sportKey) => [
119
115
  COLLECTIONS.SPORT_HALL_OF_FAME,
@@ -1 +1 @@
1
- {"version":3,"file":"path-builders.js","sourceRoot":"","sources":["../../src/paths/path-builders.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n COLLECTIONS,\n SPORT_GAME_SUBCOLLECTIONS,\n SPECIAL_DOCS,\n USER_PROFILE_SUBCOLLECTIONS,\n WAIVER_TEMPLATE_SUBCOLLECTIONS,\n} from './collections.js';\nimport type { SweepStateName } from '../constants/scheduled-jobs.js';\nimport {\n buildGameRosterPlayerId,\n buildLeagueFreeAgentId,\n buildTeamMembershipId,\n buildSignedWaiverId,\n} from '../ids/compound-ids.js';\nimport { buildWaiverTemplateVersionId } from '../ids/waiver-template-ids.js';\nimport type { SportKey } from '../types/sports.js';\nimport { toReservedDisplayNameKey } from '../utils/display-name.js';\n\nexport const PATH_BUILDERS = {\n userProfile: (userId: string): [string, string] => [COLLECTIONS.USER_PROFILES, userId],\n userPrivateData: (userId: string): [string, string, string, string] => [\n COLLECTIONS.USER_PROFILES,\n userId,\n USER_PROFILE_SUBCOLLECTIONS.PRIVATE_DATA,\n userId,\n ],\n historicalStat: (userId: string, sportKey: SportKey): [string, string, string, string] => [\n COLLECTIONS.USER_PROFILES,\n userId,\n USER_PROFILE_SUBCOLLECTIONS.HISTORICAL_STATS,\n sportKey,\n ],\n historicalStats: (userId: string): [string, string, string] => [\n COLLECTIONS.USER_PROFILES,\n userId,\n USER_PROFILE_SUBCOLLECTIONS.HISTORICAL_STATS,\n ],\n publicUser: (userId: string): [string, string] => [COLLECTIONS.PUBLIC_USERS, userId],\n statusReconcileQueueEntry: (userId: string): [string, string] => [\n COLLECTIONS.STATUS_RECONCILE_QUEUE,\n userId,\n ],\n registrationStart: (userId: string): [string, string] => [\n COLLECTIONS.REGISTRATION_STARTS,\n userId,\n ],\n sweepState: (name: SweepStateName): [string, string] => [COLLECTIONS.SWEEP_STATE, name],\n reservedDisplayName: (displayName: string): [string, string] => [\n COLLECTIONS.RESERVED_DISPLAY_NAMES,\n toReservedDisplayNameKey(displayName),\n ],\n\n sportLeague: (leagueId: string): [string, string] => [COLLECTIONS.SPORT_LEAGUES, leagueId],\n leagueTeam: (teamId: string): [string, string] => [COLLECTIONS.LEAGUE_TEAMS, teamId],\n leagueTeamContact: (teamId: string): [string, string] => [\n COLLECTIONS.LEAGUE_TEAM_CONTACTS,\n teamId,\n ],\n teamMembership: (leagueId: string, teamId: string, userId: string): [string, string] => [\n COLLECTIONS.TEAM_MEMBERSHIPS,\n buildTeamMembershipId(leagueId, teamId, userId),\n ],\n teamInvitation: (inviteId: string): [string, string] => [COLLECTIONS.TEAM_INVITATIONS, inviteId],\n teamJoinRequest: (requestId: string): [string, string] => [\n COLLECTIONS.TEAM_JOIN_REQUESTS,\n requestId,\n ],\n leagueFreeAgent: (leagueId: string, userId: string): [string, string] => [\n COLLECTIONS.LEAGUE_FREE_AGENTS,\n buildLeagueFreeAgentId(leagueId, userId),\n ],\n\n sportGame: (gameId: string): [string, string] => [COLLECTIONS.SPORT_GAMES, gameId],\n gameRosterPlayer: (\n gameId: string,\n teamId: string,\n userId: string,\n ): [string, string, string, string] => [\n COLLECTIONS.SPORT_GAMES,\n gameId,\n SPORT_GAME_SUBCOLLECTIONS.GAME_ROSTER_PLAYERS,\n buildGameRosterPlayerId(teamId, userId),\n ],\n gameRosterPlayers: (gameId: string): [string, string, string] => [\n COLLECTIONS.SPORT_GAMES,\n gameId,\n SPORT_GAME_SUBCOLLECTIONS.GAME_ROSTER_PLAYERS,\n ],\n gameStatEvent: (gameId: string, eventId: string): [string, string, string, string] => [\n COLLECTIONS.SPORT_GAMES,\n gameId,\n SPORT_GAME_SUBCOLLECTIONS.GAME_STAT_EVENTS,\n eventId,\n ],\n gameStatEvents: (gameId: string): [string, string, string] => [\n COLLECTIONS.SPORT_GAMES,\n gameId,\n SPORT_GAME_SUBCOLLECTIONS.GAME_STAT_EVENTS,\n ],\n gameStatHistoryRecord: (gameId: string): [string, string, string, string] => [\n COLLECTIONS.SPORT_GAMES,\n gameId,\n SPORT_GAME_SUBCOLLECTIONS.GAME_STAT_HISTORY,\n SPECIAL_DOCS.GAME_STAT_HISTORY_RECORD,\n ],\n gameLocation: (gameLocationId: string): [string, string] => [\n COLLECTIONS.GAME_LOCATIONS,\n gameLocationId,\n ],\n\n waiverTemplate: (waiverTemplateId: string): [string, string] => [\n COLLECTIONS.WAIVER_TEMPLATES,\n waiverTemplateId,\n ],\n waiverTemplateVersion: (\n waiverTemplateId: string,\n version: number,\n ): [string, string, string, string] => [\n COLLECTIONS.WAIVER_TEMPLATES,\n waiverTemplateId,\n WAIVER_TEMPLATE_SUBCOLLECTIONS.WAIVER_TEMPLATE_VERSIONS,\n buildWaiverTemplateVersionId(version),\n ],\n waiverTemplateVersions: (waiverTemplateId: string): [string, string, string] => [\n COLLECTIONS.WAIVER_TEMPLATES,\n waiverTemplateId,\n WAIVER_TEMPLATE_SUBCOLLECTIONS.WAIVER_TEMPLATE_VERSIONS,\n ],\n signedWaiver: (leagueId: string, userId: string): [string, string] => [\n COLLECTIONS.SIGNED_WAIVERS,\n buildSignedWaiverId(leagueId, userId),\n ],\n hardwareLoanContract: (contractId: string): [string, string] => [\n COLLECTIONS.HARDWARE_LOAN_CONTRACTS,\n contractId,\n ],\n signatureCopyIntent: (stagingId: string): [string, string] => [\n COLLECTIONS.SIGNATURE_COPY_INTENTS,\n stagingId,\n ],\n\n awardDefinition: (awardId: string): [string, string] => [COLLECTIONS.AWARD_DEFINITIONS, awardId],\n sportHallOfFame: (sportKey: SportKey): [string, string] => [\n COLLECTIONS.SPORT_HALL_OF_FAME,\n sportKey,\n ],\n statsValidationReport: (reportId: string): [string, string] => [\n COLLECTIONS.STATS_VALIDATION_REPORTS,\n reportId,\n ],\n statsJob: (jobId: string): [string, string] => [COLLECTIONS.STATS_JOBS, jobId],\n migrationActionRun: (actionId: string): [string, string] => [\n COLLECTIONS.MIGRATION_ACTION_RUNS,\n actionId,\n ],\n\n galleryPicture: (pictureId: string): [string, string] => [\n COLLECTIONS.GALLERY_PICTURES,\n pictureId,\n ],\n pendingMedia: (pendingMediaId: string): [string, string] => [\n COLLECTIONS.PENDING_MEDIA,\n pendingMediaId,\n ],\n pictureRetirement: (retirementId: string): [string, string] => [\n COLLECTIONS.PICTURE_RETIREMENTS,\n retirementId,\n ],\n\n auditEvent: (auditEventId: string): [string, string] => [COLLECTIONS.AUDIT_EVENTS, auditEventId],\n\n activeAdminNotification: (notificationId: string): [string, string] => [\n COLLECTIONS.ACTIVE_ADMIN_NOTIFICATIONS,\n notificationId,\n ],\n adminNotificationHistoryEntry: (historyId: string): [string, string] => [\n COLLECTIONS.ADMIN_NOTIFICATION_HISTORY,\n historyId,\n ],\n notificationDelivery: (deliveryId: string): [string, string] => [\n COLLECTIONS.NOTIFICATION_DELIVERIES,\n deliveryId,\n ],\n notificationArchiveAllJob: (jobId: string): [string, string] => [\n COLLECTIONS.NOTIFICATION_ARCHIVE_ALL_JOBS,\n jobId,\n ],\n\n landingPageConfig: (): [string, string] => [COLLECTIONS.APP_CONFIG, SPECIAL_DOCS.LANDING_PAGE],\n appConfig: (): [string, string] => [COLLECTIONS.APP_CONFIG, SPECIAL_DOCS.APP_CONFIG],\n statsBeacon: (): [string, string] => [COLLECTIONS.APP_CONFIG, SPECIAL_DOCS.STATS_BEACON],\n adminList: (): [string, string] => [COLLECTIONS.SYSTEM_DATA, SPECIAL_DOCS.ADMIN_LIST],\n migrationConsole: (): [string, string] => [\n COLLECTIONS.SERVER_DATA,\n SPECIAL_DOCS.MIGRATION_CONSOLE,\n ],\n gameLocationRegistry: (): [string, string] => [\n COLLECTIONS.SERVER_DATA,\n SPECIAL_DOCS.GAME_LOCATION_REGISTRY,\n ],\n waiverTemplateRegistry: (): [string, string] => [\n COLLECTIONS.SERVER_DATA,\n SPECIAL_DOCS.WAIVER_TEMPLATE_REGISTRY,\n ],\n} as const;\n"]}
1
+ {"version":3,"file":"path-builders.js","sourceRoot":"","sources":["../../src/paths/path-builders.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n COLLECTIONS,\n SPORT_GAME_SUBCOLLECTIONS,\n SPECIAL_DOCS,\n USER_PROFILE_SUBCOLLECTIONS,\n WAIVER_TEMPLATE_SUBCOLLECTIONS,\n} from './collections.js';\nimport type { SweepStateName } from '../constants/scheduled-jobs.js';\nimport {\n buildGameRosterPlayerId,\n buildLeagueFreeAgentId,\n buildTeamMembershipId,\n buildSignedWaiverId,\n} from '../ids/compound-ids.js';\nimport { buildWaiverTemplateVersionId } from '../ids/waiver-template-ids.js';\nimport type { SportKey } from '../types/sports.js';\nimport { toReservedDisplayNameKey } from '../utils/display-name.js';\n\nexport const PATH_BUILDERS = {\n userProfile: (userId: string): [string, string] => [COLLECTIONS.USER_PROFILES, userId],\n userPrivateData: (userId: string): [string, string, string, string] => [\n COLLECTIONS.USER_PROFILES,\n userId,\n USER_PROFILE_SUBCOLLECTIONS.PRIVATE_DATA,\n userId,\n ],\n historicalStat: (userId: string, sportKey: SportKey): [string, string, string, string] => [\n COLLECTIONS.USER_PROFILES,\n userId,\n USER_PROFILE_SUBCOLLECTIONS.HISTORICAL_STATS,\n sportKey,\n ],\n historicalStats: (userId: string): [string, string, string] => [\n COLLECTIONS.USER_PROFILES,\n userId,\n USER_PROFILE_SUBCOLLECTIONS.HISTORICAL_STATS,\n ],\n publicUser: (userId: string): [string, string] => [COLLECTIONS.PUBLIC_USERS, userId],\n statusReconcileQueueEntry: (userId: string): [string, string] => [\n COLLECTIONS.STATUS_RECONCILE_QUEUE,\n userId,\n ],\n registrationStart: (userId: string): [string, string] => [\n COLLECTIONS.REGISTRATION_STARTS,\n userId,\n ],\n sweepState: (name: SweepStateName): [string, string] => [COLLECTIONS.SWEEP_STATE, name],\n reservedDisplayName: (displayName: string): [string, string] => [\n COLLECTIONS.RESERVED_DISPLAY_NAMES,\n toReservedDisplayNameKey(displayName),\n ],\n\n sportLeague: (leagueId: string): [string, string] => [COLLECTIONS.SPORT_LEAGUES, leagueId],\n leagueTeam: (teamId: string): [string, string] => [COLLECTIONS.LEAGUE_TEAMS, teamId],\n leagueTeamContact: (teamId: string): [string, string] => [\n COLLECTIONS.LEAGUE_TEAM_CONTACTS,\n teamId,\n ],\n teamMembership: (leagueId: string, teamId: string, userId: string): [string, string] => [\n COLLECTIONS.TEAM_MEMBERSHIPS,\n buildTeamMembershipId(leagueId, teamId, userId),\n ],\n teamInvitation: (inviteId: string): [string, string] => [COLLECTIONS.TEAM_INVITATIONS, inviteId],\n teamJoinRequest: (requestId: string): [string, string] => [\n COLLECTIONS.TEAM_JOIN_REQUESTS,\n requestId,\n ],\n leagueFreeAgent: (leagueId: string, userId: string): [string, string] => [\n COLLECTIONS.LEAGUE_FREE_AGENTS,\n buildLeagueFreeAgentId(leagueId, userId),\n ],\n\n sportGame: (gameId: string): [string, string] => [COLLECTIONS.SPORT_GAMES, gameId],\n gameRosterPlayer: (\n gameId: string,\n teamId: string,\n userId: string,\n ): [string, string, string, string] => [\n COLLECTIONS.SPORT_GAMES,\n gameId,\n SPORT_GAME_SUBCOLLECTIONS.GAME_ROSTER_PLAYERS,\n buildGameRosterPlayerId(teamId, userId),\n ],\n gameRosterPlayers: (gameId: string): [string, string, string] => [\n COLLECTIONS.SPORT_GAMES,\n gameId,\n SPORT_GAME_SUBCOLLECTIONS.GAME_ROSTER_PLAYERS,\n ],\n gameStatEvent: (gameId: string, eventId: string): [string, string, string, string] => [\n COLLECTIONS.SPORT_GAMES,\n gameId,\n SPORT_GAME_SUBCOLLECTIONS.GAME_STAT_EVENTS,\n eventId,\n ],\n gameStatEvents: (gameId: string): [string, string, string] => [\n COLLECTIONS.SPORT_GAMES,\n gameId,\n SPORT_GAME_SUBCOLLECTIONS.GAME_STAT_EVENTS,\n ],\n gameStatHistoryRecord: (gameId: string): [string, string, string, string] => [\n COLLECTIONS.SPORT_GAMES,\n gameId,\n SPORT_GAME_SUBCOLLECTIONS.GAME_STAT_HISTORY,\n SPECIAL_DOCS.GAME_STAT_HISTORY_RECORD,\n ],\n gameLocation: (gameLocationId: string): [string, string] => [\n COLLECTIONS.GAME_LOCATIONS,\n gameLocationId,\n ],\n\n waiverTemplate: (waiverTemplateId: string): [string, string] => [\n COLLECTIONS.WAIVER_TEMPLATES,\n waiverTemplateId,\n ],\n waiverTemplateVersion: (\n waiverTemplateId: string,\n version: number,\n ): [string, string, string, string] => [\n COLLECTIONS.WAIVER_TEMPLATES,\n waiverTemplateId,\n WAIVER_TEMPLATE_SUBCOLLECTIONS.WAIVER_TEMPLATE_VERSIONS,\n buildWaiverTemplateVersionId(version),\n ],\n waiverTemplateVersions: (waiverTemplateId: string): [string, string, string] => [\n COLLECTIONS.WAIVER_TEMPLATES,\n waiverTemplateId,\n WAIVER_TEMPLATE_SUBCOLLECTIONS.WAIVER_TEMPLATE_VERSIONS,\n ],\n signedWaiver: (leagueId: string, userId: string): [string, string] => [\n COLLECTIONS.SIGNED_WAIVERS,\n buildSignedWaiverId(leagueId, userId),\n ],\n hardwareLoanContract: (contractId: string): [string, string] => [\n COLLECTIONS.HARDWARE_LOAN_CONTRACTS,\n contractId,\n ],\n\n awardDefinition: (awardId: string): [string, string] => [COLLECTIONS.AWARD_DEFINITIONS, awardId],\n sportHallOfFame: (sportKey: SportKey): [string, string] => [\n COLLECTIONS.SPORT_HALL_OF_FAME,\n sportKey,\n ],\n statsValidationReport: (reportId: string): [string, string] => [\n COLLECTIONS.STATS_VALIDATION_REPORTS,\n reportId,\n ],\n statsJob: (jobId: string): [string, string] => [COLLECTIONS.STATS_JOBS, jobId],\n migrationActionRun: (actionId: string): [string, string] => [\n COLLECTIONS.MIGRATION_ACTION_RUNS,\n actionId,\n ],\n\n galleryPicture: (pictureId: string): [string, string] => [\n COLLECTIONS.GALLERY_PICTURES,\n pictureId,\n ],\n pendingMedia: (pendingMediaId: string): [string, string] => [\n COLLECTIONS.PENDING_MEDIA,\n pendingMediaId,\n ],\n pictureRetirement: (retirementId: string): [string, string] => [\n COLLECTIONS.PICTURE_RETIREMENTS,\n retirementId,\n ],\n\n auditEvent: (auditEventId: string): [string, string] => [COLLECTIONS.AUDIT_EVENTS, auditEventId],\n\n activeAdminNotification: (notificationId: string): [string, string] => [\n COLLECTIONS.ACTIVE_ADMIN_NOTIFICATIONS,\n notificationId,\n ],\n adminNotificationHistoryEntry: (historyId: string): [string, string] => [\n COLLECTIONS.ADMIN_NOTIFICATION_HISTORY,\n historyId,\n ],\n notificationDelivery: (deliveryId: string): [string, string] => [\n COLLECTIONS.NOTIFICATION_DELIVERIES,\n deliveryId,\n ],\n notificationArchiveAllJob: (jobId: string): [string, string] => [\n COLLECTIONS.NOTIFICATION_ARCHIVE_ALL_JOBS,\n jobId,\n ],\n\n landingPageConfig: (): [string, string] => [COLLECTIONS.APP_CONFIG, SPECIAL_DOCS.LANDING_PAGE],\n appConfig: (): [string, string] => [COLLECTIONS.APP_CONFIG, SPECIAL_DOCS.APP_CONFIG],\n statsBeacon: (): [string, string] => [COLLECTIONS.APP_CONFIG, SPECIAL_DOCS.STATS_BEACON],\n adminList: (): [string, string] => [COLLECTIONS.SYSTEM_DATA, SPECIAL_DOCS.ADMIN_LIST],\n migrationConsole: (): [string, string] => [\n COLLECTIONS.SERVER_DATA,\n SPECIAL_DOCS.MIGRATION_CONSOLE,\n ],\n gameLocationRegistry: (): [string, string] => [\n COLLECTIONS.SERVER_DATA,\n SPECIAL_DOCS.GAME_LOCATION_REGISTRY,\n ],\n waiverTemplateRegistry: (): [string, string] => [\n COLLECTIONS.SERVER_DATA,\n SPECIAL_DOCS.WAIVER_TEMPLATE_REGISTRY,\n ],\n} as const;\n"]}
@@ -2,15 +2,14 @@ import type { FileOrigin } from '../media/file-origins.js';
2
2
  import type { PictureVariantKey } from '../types/unions.js';
3
3
  export declare const USER_FILES_PREFIX = "users/";
4
4
  export declare const STAGING_UPLOAD_PREFIX = "uploads/";
5
- export declare function buildSignedWaiverPath(userId: string, leagueId: string, fileName: string): string;
6
- export declare function buildGhostSignedWaiverPath(ghostUserId: string, leagueId: string, teamId: string, fileName: string): string;
5
+ export declare const SIGNED_OUT_UPLOAD_OWNER = "signed-out";
7
6
  export declare function buildHardwareSignaturePath(userId: string, contractId: string, fileId: string): string;
8
7
  export declare function buildPictureObjectPrefix(pictureId: string): string;
9
8
  export declare function buildPictureObjectPath(pictureId: string, variantKey: PictureVariantKey): string;
10
- export declare function buildStagingUploadPath(fileOrigin: FileOrigin, userId: string, stagingId: string): string;
9
+ export declare function buildStagingUploadPath(fileOrigin: FileOrigin, owner: string, stagingId: string): string;
11
10
  export interface StagingUploadPathParts {
12
11
  fileOrigin: FileOrigin;
13
- userId: string;
12
+ owner: string;
14
13
  stagingId: string;
15
14
  }
16
15
  export declare function parseStagingUploadPath(path: string): StagingUploadPathParts | null;
@@ -1 +1 @@
1
- {"version":3,"file":"storage-paths.d.ts","sourceRoot":"","sources":["../../src/paths/storage-paths.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAE3D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAE5D,eAAO,MAAM,iBAAiB,WAAW,CAAC;AAM1C,eAAO,MAAM,qBAAqB,aAAuB,CAAC;AAE1D,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEhG;AAED,wBAAgB,0BAA0B,CACxC,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GACf,MAAM,CAER;AAED,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,GACb,MAAM,CAER;AAED,wBAAgB,wBAAwB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAElE;AAED,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,iBAAiB,GAAG,MAAM,CAE/F;AAED,wBAAgB,sBAAsB,CACpC,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAChB,MAAM,CAER;AAED,MAAM,WAAW,sBAAsB;IACrC,UAAU,EAAE,UAAU,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,sBAAsB,GAAG,IAAI,CAOlF"}
1
+ {"version":3,"file":"storage-paths.d.ts","sourceRoot":"","sources":["../../src/paths/storage-paths.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAE3D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAE5D,eAAO,MAAM,iBAAiB,WAAW,CAAC;AAK1C,eAAO,MAAM,qBAAqB,aAAuB,CAAC;AAI1D,eAAO,MAAM,uBAAuB,eAAe,CAAC;AAIpD,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,GACb,MAAM,CAER;AAED,wBAAgB,wBAAwB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAElE;AAED,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,iBAAiB,GAAG,MAAM,CAE/F;AAED,wBAAgB,sBAAsB,CACpC,UAAU,EAAE,UAAU,EACtB,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,GAChB,MAAM,CAER;AAED,MAAM,WAAW,sBAAsB;IACrC,UAAU,EAAE,UAAU,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,sBAAsB,GAAG,IAAI,CAOlF"}
@@ -1,17 +1,15 @@
1
1
  import { isFileOrigin } from '../media/file-origins.js';
2
2
  import { isStagingId } from '../ids/picture-ids.js';
3
3
  export const USER_FILES_PREFIX = 'users/';
4
- const SIGNED_WAIVERS_FOLDER = 'waiverSigs';
5
4
  const HARDWARE_SIGNATURES_FOLDER = 'hardwareSigs';
6
5
  const PICTURES_FOLDER = 'pictures';
7
6
  const STAGING_FOLDER = 'uploads';
8
7
  export const STAGING_UPLOAD_PREFIX = `${STAGING_FOLDER}/`;
9
- export function buildSignedWaiverPath(userId, leagueId, fileName) {
10
- return `${USER_FILES_PREFIX}${userId}/${SIGNED_WAIVERS_FOLDER}/${leagueId}/${fileName}`;
11
- }
12
- export function buildGhostSignedWaiverPath(ghostUserId, leagueId, teamId, fileName) {
13
- return `${USER_FILES_PREFIX}${ghostUserId}/${SIGNED_WAIVERS_FOLDER}/${leagueId}/${teamId}/${fileName}`;
14
- }
8
+ // The owner segment of a signed-out upload, in place of a uid. Its hyphen keeps it from ever
9
+ // equalling a Firebase Auth uid, which is alphanumeric.
10
+ export const SIGNED_OUT_UPLOAD_OWNER = 'signed-out';
11
+ // Where V1 kept a hardware contract's signature; the migration console checks a carried contract's
12
+ // file against it.
15
13
  export function buildHardwareSignaturePath(userId, contractId, fileId) {
16
14
  return `${USER_FILES_PREFIX}${userId}/${HARDWARE_SIGNATURES_FOLDER}/${contractId}/${fileId}`;
17
15
  }
@@ -21,18 +19,18 @@ export function buildPictureObjectPrefix(pictureId) {
21
19
  export function buildPictureObjectPath(pictureId, variantKey) {
22
20
  return `${buildPictureObjectPrefix(pictureId)}/${variantKey}`;
23
21
  }
24
- export function buildStagingUploadPath(fileOrigin, userId, stagingId) {
25
- return `${STAGING_UPLOAD_PREFIX}${fileOrigin}/${userId}/${stagingId}`;
22
+ export function buildStagingUploadPath(fileOrigin, owner, stagingId) {
23
+ return `${STAGING_UPLOAD_PREFIX}${fileOrigin}/${owner}/${stagingId}`;
26
24
  }
27
25
  export function parseStagingUploadPath(path) {
28
26
  const segments = path.split('/');
29
27
  if (segments.length !== 4)
30
28
  return null;
31
- const [folder, fileOrigin, userId, stagingId] = segments;
32
- if (folder !== STAGING_FOLDER || !isFileOrigin(fileOrigin) || userId.length === 0)
29
+ const [folder, fileOrigin, owner, stagingId] = segments;
30
+ if (folder !== STAGING_FOLDER || !isFileOrigin(fileOrigin) || owner.length === 0)
33
31
  return null;
34
32
  if (!isStagingId(stagingId))
35
33
  return null;
36
- return { fileOrigin, userId, stagingId };
34
+ return { fileOrigin, owner, stagingId };
37
35
  }
38
36
  //# sourceMappingURL=storage-paths.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"storage-paths.js","sourceRoot":"","sources":["../../src/paths/storage-paths.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAExD,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAGpD,MAAM,CAAC,MAAM,iBAAiB,GAAG,QAAQ,CAAC;AAC1C,MAAM,qBAAqB,GAAG,YAAY,CAAC;AAC3C,MAAM,0BAA0B,GAAG,cAAc,CAAC;AAClD,MAAM,eAAe,GAAG,UAAU,CAAC;AACnC,MAAM,cAAc,GAAG,SAAS,CAAC;AAEjC,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAG,cAAc,GAAG,CAAC;AAE1D,MAAM,UAAU,qBAAqB,CAAC,MAAc,EAAE,QAAgB,EAAE,QAAgB;IACtF,OAAO,GAAG,iBAAiB,GAAG,MAAM,IAAI,qBAAqB,IAAI,QAAQ,IAAI,QAAQ,EAAE,CAAC;AAC1F,CAAC;AAED,MAAM,UAAU,0BAA0B,CACxC,WAAmB,EACnB,QAAgB,EAChB,MAAc,EACd,QAAgB;IAEhB,OAAO,GAAG,iBAAiB,GAAG,WAAW,IAAI,qBAAqB,IAAI,QAAQ,IAAI,MAAM,IAAI,QAAQ,EAAE,CAAC;AACzG,CAAC;AAED,MAAM,UAAU,0BAA0B,CACxC,MAAc,EACd,UAAkB,EAClB,MAAc;IAEd,OAAO,GAAG,iBAAiB,GAAG,MAAM,IAAI,0BAA0B,IAAI,UAAU,IAAI,MAAM,EAAE,CAAC;AAC/F,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,SAAiB;IACxD,OAAO,GAAG,eAAe,IAAI,SAAS,EAAE,CAAC;AAC3C,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,SAAiB,EAAE,UAA6B;IACrF,OAAO,GAAG,wBAAwB,CAAC,SAAS,CAAC,IAAI,UAAU,EAAE,CAAC;AAChE,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,UAAsB,EACtB,MAAc,EACd,SAAiB;IAEjB,OAAO,GAAG,qBAAqB,GAAG,UAAU,IAAI,MAAM,IAAI,SAAS,EAAE,CAAC;AACxE,CAAC;AAQD,MAAM,UAAU,sBAAsB,CAAC,IAAY;IACjD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACjC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACvC,MAAM,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,CAAC,GAAG,QAA4C,CAAC;IAC7F,IAAI,MAAM,KAAK,cAAc,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAC/F,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IACzC,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;AAC3C,CAAC","sourcesContent":["import { isFileOrigin } from '../media/file-origins.js';\nimport type { FileOrigin } from '../media/file-origins.js';\nimport { isStagingId } from '../ids/picture-ids.js';\nimport type { PictureVariantKey } from '../types/unions.js';\n\nexport const USER_FILES_PREFIX = 'users/';\nconst SIGNED_WAIVERS_FOLDER = 'waiverSigs';\nconst HARDWARE_SIGNATURES_FOLDER = 'hardwareSigs';\nconst PICTURES_FOLDER = 'pictures';\nconst STAGING_FOLDER = 'uploads';\n\nexport const STAGING_UPLOAD_PREFIX = `${STAGING_FOLDER}/`;\n\nexport function buildSignedWaiverPath(userId: string, leagueId: string, fileName: string): string {\n return `${USER_FILES_PREFIX}${userId}/${SIGNED_WAIVERS_FOLDER}/${leagueId}/${fileName}`;\n}\n\nexport function buildGhostSignedWaiverPath(\n ghostUserId: string,\n leagueId: string,\n teamId: string,\n fileName: string,\n): string {\n return `${USER_FILES_PREFIX}${ghostUserId}/${SIGNED_WAIVERS_FOLDER}/${leagueId}/${teamId}/${fileName}`;\n}\n\nexport function buildHardwareSignaturePath(\n userId: string,\n contractId: string,\n fileId: string,\n): string {\n return `${USER_FILES_PREFIX}${userId}/${HARDWARE_SIGNATURES_FOLDER}/${contractId}/${fileId}`;\n}\n\nexport function buildPictureObjectPrefix(pictureId: string): string {\n return `${PICTURES_FOLDER}/${pictureId}`;\n}\n\nexport function buildPictureObjectPath(pictureId: string, variantKey: PictureVariantKey): string {\n return `${buildPictureObjectPrefix(pictureId)}/${variantKey}`;\n}\n\nexport function buildStagingUploadPath(\n fileOrigin: FileOrigin,\n userId: string,\n stagingId: string,\n): string {\n return `${STAGING_UPLOAD_PREFIX}${fileOrigin}/${userId}/${stagingId}`;\n}\n\nexport interface StagingUploadPathParts {\n fileOrigin: FileOrigin;\n userId: string;\n stagingId: string;\n}\n\nexport function parseStagingUploadPath(path: string): StagingUploadPathParts | null {\n const segments = path.split('/');\n if (segments.length !== 4) return null;\n const [folder, fileOrigin, userId, stagingId] = segments as [string, string, string, string];\n if (folder !== STAGING_FOLDER || !isFileOrigin(fileOrigin) || userId.length === 0) return null;\n if (!isStagingId(stagingId)) return null;\n return { fileOrigin, userId, stagingId };\n}\n"]}
1
+ {"version":3,"file":"storage-paths.js","sourceRoot":"","sources":["../../src/paths/storage-paths.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAExD,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAGpD,MAAM,CAAC,MAAM,iBAAiB,GAAG,QAAQ,CAAC;AAC1C,MAAM,0BAA0B,GAAG,cAAc,CAAC;AAClD,MAAM,eAAe,GAAG,UAAU,CAAC;AACnC,MAAM,cAAc,GAAG,SAAS,CAAC;AAEjC,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAG,cAAc,GAAG,CAAC;AAE1D,6FAA6F;AAC7F,wDAAwD;AACxD,MAAM,CAAC,MAAM,uBAAuB,GAAG,YAAY,CAAC;AAEpD,mGAAmG;AACnG,mBAAmB;AACnB,MAAM,UAAU,0BAA0B,CACxC,MAAc,EACd,UAAkB,EAClB,MAAc;IAEd,OAAO,GAAG,iBAAiB,GAAG,MAAM,IAAI,0BAA0B,IAAI,UAAU,IAAI,MAAM,EAAE,CAAC;AAC/F,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,SAAiB;IACxD,OAAO,GAAG,eAAe,IAAI,SAAS,EAAE,CAAC;AAC3C,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,SAAiB,EAAE,UAA6B;IACrF,OAAO,GAAG,wBAAwB,CAAC,SAAS,CAAC,IAAI,UAAU,EAAE,CAAC;AAChE,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,UAAsB,EACtB,KAAa,EACb,SAAiB;IAEjB,OAAO,GAAG,qBAAqB,GAAG,UAAU,IAAI,KAAK,IAAI,SAAS,EAAE,CAAC;AACvE,CAAC;AAQD,MAAM,UAAU,sBAAsB,CAAC,IAAY;IACjD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACjC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACvC,MAAM,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,CAAC,GAAG,QAA4C,CAAC;IAC5F,IAAI,MAAM,KAAK,cAAc,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAC9F,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IACzC,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;AAC1C,CAAC","sourcesContent":["import { isFileOrigin } from '../media/file-origins.js';\nimport type { FileOrigin } from '../media/file-origins.js';\nimport { isStagingId } from '../ids/picture-ids.js';\nimport type { PictureVariantKey } from '../types/unions.js';\n\nexport const USER_FILES_PREFIX = 'users/';\nconst HARDWARE_SIGNATURES_FOLDER = 'hardwareSigs';\nconst PICTURES_FOLDER = 'pictures';\nconst STAGING_FOLDER = 'uploads';\n\nexport const STAGING_UPLOAD_PREFIX = `${STAGING_FOLDER}/`;\n\n// The owner segment of a signed-out upload, in place of a uid. Its hyphen keeps it from ever\n// equalling a Firebase Auth uid, which is alphanumeric.\nexport const SIGNED_OUT_UPLOAD_OWNER = 'signed-out';\n\n// Where V1 kept a hardware contract's signature; the migration console checks a carried contract's\n// file against it.\nexport function buildHardwareSignaturePath(\n userId: string,\n contractId: string,\n fileId: string,\n): string {\n return `${USER_FILES_PREFIX}${userId}/${HARDWARE_SIGNATURES_FOLDER}/${contractId}/${fileId}`;\n}\n\nexport function buildPictureObjectPrefix(pictureId: string): string {\n return `${PICTURES_FOLDER}/${pictureId}`;\n}\n\nexport function buildPictureObjectPath(pictureId: string, variantKey: PictureVariantKey): string {\n return `${buildPictureObjectPrefix(pictureId)}/${variantKey}`;\n}\n\nexport function buildStagingUploadPath(\n fileOrigin: FileOrigin,\n owner: string,\n stagingId: string,\n): string {\n return `${STAGING_UPLOAD_PREFIX}${fileOrigin}/${owner}/${stagingId}`;\n}\n\nexport interface StagingUploadPathParts {\n fileOrigin: FileOrigin;\n owner: string;\n stagingId: string;\n}\n\nexport function parseStagingUploadPath(path: string): StagingUploadPathParts | null {\n const segments = path.split('/');\n if (segments.length !== 4) return null;\n const [folder, fileOrigin, owner, stagingId] = segments as [string, string, string, string];\n if (folder !== STAGING_FOLDER || !isFileOrigin(fileOrigin) || owner.length === 0) return null;\n if (!isStagingId(stagingId)) return null;\n return { fileOrigin, owner, stagingId };\n}\n"]}
@@ -1,12 +1,9 @@
1
1
  import { z } from 'zod';
2
2
  export declare const adminNotificationIdSchema: z.ZodString;
3
- export declare const activityGenerationSchema: z.ZodString;
4
- export declare const notificationRequestIdSchema: z.ZodUUID;
5
- export declare const notificationArchiveAllJobIdSchema: z.ZodString;
6
3
  export declare const AdminUpdateAdminNotificationArchiveInputSchema: z.ZodObject<{
7
4
  requestId: z.ZodUUID;
8
5
  notificationId: z.ZodString;
9
- observedActivityGeneration: z.ZodString;
6
+ observedActivityGeneration: z.ZodUUID;
10
7
  }, z.core.$strict>;
11
8
  export type AdminUpdateAdminNotificationArchiveInput = z.infer<typeof AdminUpdateAdminNotificationArchiveInputSchema>;
12
9
  export declare const AdminUpdateAdminNotificationArchiveResultSchema: z.ZodObject<{
@@ -1 +1 @@
1
- {"version":3,"file":"admin-notifications.d.ts","sourceRoot":"","sources":["../../src/schemas/admin-notifications.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAQxB,eAAO,MAAM,yBAAyB,aAEoB,CAAC;AAE3D,eAAO,MAAM,wBAAwB,aAA6B,CAAC;AAEnE,eAAO,MAAM,2BAA2B,WAAW,CAAC;AAEpD,eAAO,MAAM,iCAAiC,aAEgD,CAAC;AAE/F,eAAO,MAAM,8CAA8C;;;;kBAMhD,CAAC;AACZ,MAAM,MAAM,wCAAwC,GAAG,CAAC,CAAC,KAAK,CAC5D,OAAO,8CAA8C,CACtD,CAAC;AACF,eAAO,MAAM,+CAA+C;;kBAEjD,CAAC;AACZ,MAAM,MAAM,yCAAyC,GAAG,CAAC,CAAC,KAAK,CAC7D,OAAO,+CAA+C,CACvD,CAAC;AAEF,eAAO,MAAM,+CAA+C;;kBAEjD,CAAC;AACZ,MAAM,MAAM,yCAAyC,GAAG,CAAC,CAAC,KAAK,CAC7D,OAAO,+CAA+C,CACvD,CAAC;AACF,eAAO,MAAM,gDAAgD;;kBAElD,CAAC;AACZ,MAAM,MAAM,0CAA0C,GAAG,CAAC,CAAC,KAAK,CAC9D,OAAO,gDAAgD,CACxD,CAAC;AAEF,eAAO,MAAM,4CAA4C;;kBAE9C,CAAC;AACZ,MAAM,MAAM,sCAAsC,GAAG,CAAC,CAAC,KAAK,CAC1D,OAAO,4CAA4C,CACpD,CAAC;AACF,eAAO,MAAM,6CAA6C;;;;;;;;;;;kBAQ/C,CAAC;AACZ,MAAM,MAAM,uCAAuC,GAAG,CAAC,CAAC,KAAK,CAC3D,OAAO,6CAA6C,CACrD,CAAC"}
1
+ {"version":3,"file":"admin-notifications.d.ts","sourceRoot":"","sources":["../../src/schemas/admin-notifications.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AASxB,eAAO,MAAM,yBAAyB,aAEoB,CAAC;AAS3D,eAAO,MAAM,8CAA8C;;;;kBAMhD,CAAC;AACZ,MAAM,MAAM,wCAAwC,GAAG,CAAC,CAAC,KAAK,CAC5D,OAAO,8CAA8C,CACtD,CAAC;AACF,eAAO,MAAM,+CAA+C;;kBAEjD,CAAC;AACZ,MAAM,MAAM,yCAAyC,GAAG,CAAC,CAAC,KAAK,CAC7D,OAAO,+CAA+C,CACvD,CAAC;AAEF,eAAO,MAAM,+CAA+C;;kBAEjD,CAAC;AACZ,MAAM,MAAM,yCAAyC,GAAG,CAAC,CAAC,KAAK,CAC7D,OAAO,+CAA+C,CACvD,CAAC;AACF,eAAO,MAAM,gDAAgD;;kBAElD,CAAC;AACZ,MAAM,MAAM,0CAA0C,GAAG,CAAC,CAAC,KAAK,CAC9D,OAAO,gDAAgD,CACxD,CAAC;AAEF,eAAO,MAAM,4CAA4C;;kBAE9C,CAAC;AACZ,MAAM,MAAM,sCAAsC,GAAG,CAAC,CAAC,KAAK,CAC1D,OAAO,4CAA4C,CACpD,CAAC;AACF,eAAO,MAAM,6CAA6C;;;;;;;;;;;kBAQ/C,CAAC;AACZ,MAAM,MAAM,uCAAuC,GAAG,CAAC,CAAC,KAAK,CAC3D,OAAO,6CAA6C,CACrD,CAAC"}
@@ -1,15 +1,13 @@
1
1
  import { z } from 'zod';
2
+ import { activityGenerationSchema } from '@ttt-productions/notification-core';
2
3
  import { parseNotificationArchiveAllJobId } from '../ids/notification-ids.js';
3
4
  import { ADMIN_NOTIFICATION_CATEGORY, NOTIFICATION_ARCHIVE_ALL_JOB_STATE_KEYS, } from '../types/notifications.js';
4
- import { countSchema } from '../doc-schemas/atoms.js';
5
+ import { countSchema, documentIdSegmentSchema } from '../doc-schemas/atoms.js';
5
6
  export const adminNotificationIdSchema = z
6
7
  .string()
7
8
  .regex(/^[A-Za-z0-9]{1,128}$/, 'Not a notification id.');
8
- export const activityGenerationSchema = z.string().min(1).max(128);
9
- export const notificationRequestIdSchema = z.uuid();
10
- export const notificationArchiveAllJobIdSchema = z
11
- .string()
12
- .refine((id) => parseNotificationArchiveAllJobId(id) !== null, 'Not an archive-all job id.');
9
+ const notificationRequestIdSchema = z.uuid();
10
+ const notificationArchiveAllJobIdSchema = documentIdSegmentSchema.refine((id) => parseNotificationArchiveAllJobId(id) !== null, 'Not an archive-all job id.');
13
11
  export const AdminUpdateAdminNotificationArchiveInputSchema = z
14
12
  .object({
15
13
  requestId: notificationRequestIdSchema,
@@ -1 +1 @@
1
- {"version":3,"file":"admin-notifications.js","sourceRoot":"","sources":["../../src/schemas/admin-notifications.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,gCAAgC,EAAE,MAAM,4BAA4B,CAAC;AAC9E,OAAO,EACL,2BAA2B,EAC3B,uCAAuC,GACxC,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEtD,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC;KACvC,MAAM,EAAE;KACR,KAAK,CAAC,sBAAsB,EAAE,wBAAwB,CAAC,CAAC;AAE3D,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAEnE,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;AAEpD,MAAM,CAAC,MAAM,iCAAiC,GAAG,CAAC;KAC/C,MAAM,EAAE;KACR,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,gCAAgC,CAAC,EAAE,CAAC,KAAK,IAAI,EAAE,4BAA4B,CAAC,CAAC;AAE/F,MAAM,CAAC,MAAM,8CAA8C,GAAG,CAAC;KAC5D,MAAM,CAAC;IACN,SAAS,EAAE,2BAA2B;IACtC,cAAc,EAAE,yBAAyB;IACzC,0BAA0B,EAAE,wBAAwB;CACrD,CAAC;KACD,MAAM,EAAE,CAAC;AAIZ,MAAM,CAAC,MAAM,+CAA+C,GAAG,CAAC;KAC7D,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;KACjC,MAAM,EAAE,CAAC;AAKZ,MAAM,CAAC,MAAM,+CAA+C,GAAG,CAAC;KAC7D,MAAM,CAAC,EAAE,SAAS,EAAE,2BAA2B,EAAE,CAAC;KAClD,MAAM,EAAE,CAAC;AAIZ,MAAM,CAAC,MAAM,gDAAgD,GAAG,CAAC;KAC9D,MAAM,CAAC,EAAE,KAAK,EAAE,iCAAiC,EAAE,CAAC;KACpD,MAAM,EAAE,CAAC;AAKZ,MAAM,CAAC,MAAM,4CAA4C,GAAG,CAAC;KAC1D,MAAM,CAAC,EAAE,KAAK,EAAE,iCAAiC,EAAE,CAAC;KACpD,MAAM,EAAE,CAAC;AAIZ,MAAM,CAAC,MAAM,6CAA6C,GAAG,CAAC;KAC3D,MAAM,CAAC;IACN,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,uCAAuC,CAAC;IACtD,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,2BAA2B,CAAC;IAChD,QAAQ,EAAE,WAAW;IACrB,WAAW,EAAE,WAAW,CAAC,QAAQ,EAAE;IACnC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC7B,CAAC;KACD,MAAM,EAAE,CAAC","sourcesContent":["import { z } from 'zod';\nimport { parseNotificationArchiveAllJobId } from '../ids/notification-ids.js';\nimport {\n ADMIN_NOTIFICATION_CATEGORY,\n NOTIFICATION_ARCHIVE_ALL_JOB_STATE_KEYS,\n} from '../types/notifications.js';\nimport { countSchema } from '../doc-schemas/atoms.js';\n\nexport const adminNotificationIdSchema = z\n .string()\n .regex(/^[A-Za-z0-9]{1,128}$/, 'Not a notification id.');\n\nexport const activityGenerationSchema = z.string().min(1).max(128);\n\nexport const notificationRequestIdSchema = z.uuid();\n\nexport const notificationArchiveAllJobIdSchema = z\n .string()\n .refine((id) => parseNotificationArchiveAllJobId(id) !== null, 'Not an archive-all job id.');\n\nexport const AdminUpdateAdminNotificationArchiveInputSchema = z\n .object({\n requestId: notificationRequestIdSchema,\n notificationId: adminNotificationIdSchema,\n observedActivityGeneration: activityGenerationSchema,\n })\n .strict();\nexport type AdminUpdateAdminNotificationArchiveInput = z.infer<\n typeof AdminUpdateAdminNotificationArchiveInputSchema\n>;\nexport const AdminUpdateAdminNotificationArchiveResultSchema = z\n .object({ archived: z.boolean() })\n .strict();\nexport type AdminUpdateAdminNotificationArchiveResult = z.infer<\n typeof AdminUpdateAdminNotificationArchiveResultSchema\n>;\n\nexport const AdminCreateNotificationArchiveAllJobInputSchema = z\n .object({ requestId: notificationRequestIdSchema })\n .strict();\nexport type AdminCreateNotificationArchiveAllJobInput = z.infer<\n typeof AdminCreateNotificationArchiveAllJobInputSchema\n>;\nexport const AdminCreateNotificationArchiveAllJobResultSchema = z\n .object({ jobId: notificationArchiveAllJobIdSchema })\n .strict();\nexport type AdminCreateNotificationArchiveAllJobResult = z.infer<\n typeof AdminCreateNotificationArchiveAllJobResultSchema\n>;\n\nexport const AdminGetNotificationArchiveAllJobInputSchema = z\n .object({ jobId: notificationArchiveAllJobIdSchema })\n .strict();\nexport type AdminGetNotificationArchiveAllJobInput = z.infer<\n typeof AdminGetNotificationArchiveAllJobInputSchema\n>;\nexport const AdminGetNotificationArchiveAllJobResultSchema = z\n .object({\n state: z.enum(NOTIFICATION_ARCHIVE_ALL_JOB_STATE_KEYS),\n category: z.literal(ADMIN_NOTIFICATION_CATEGORY),\n archived: countSchema,\n notArchived: countSchema.optional(),\n error: z.string().optional(),\n })\n .strict();\nexport type AdminGetNotificationArchiveAllJobResult = z.infer<\n typeof AdminGetNotificationArchiveAllJobResultSchema\n>;\n"]}
1
+ {"version":3,"file":"admin-notifications.js","sourceRoot":"","sources":["../../src/schemas/admin-notifications.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,wBAAwB,EAAE,MAAM,oCAAoC,CAAC;AAC9E,OAAO,EAAE,gCAAgC,EAAE,MAAM,4BAA4B,CAAC;AAC9E,OAAO,EACL,2BAA2B,EAC3B,uCAAuC,GACxC,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAE/E,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC;KACvC,MAAM,EAAE;KACR,KAAK,CAAC,sBAAsB,EAAE,wBAAwB,CAAC,CAAC;AAE3D,MAAM,2BAA2B,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;AAE7C,MAAM,iCAAiC,GAAG,uBAAuB,CAAC,MAAM,CACtE,CAAC,EAAE,EAAE,EAAE,CAAC,gCAAgC,CAAC,EAAE,CAAC,KAAK,IAAI,EACrD,4BAA4B,CAC7B,CAAC;AAEF,MAAM,CAAC,MAAM,8CAA8C,GAAG,CAAC;KAC5D,MAAM,CAAC;IACN,SAAS,EAAE,2BAA2B;IACtC,cAAc,EAAE,yBAAyB;IACzC,0BAA0B,EAAE,wBAAwB;CACrD,CAAC;KACD,MAAM,EAAE,CAAC;AAIZ,MAAM,CAAC,MAAM,+CAA+C,GAAG,CAAC;KAC7D,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;KACjC,MAAM,EAAE,CAAC;AAKZ,MAAM,CAAC,MAAM,+CAA+C,GAAG,CAAC;KAC7D,MAAM,CAAC,EAAE,SAAS,EAAE,2BAA2B,EAAE,CAAC;KAClD,MAAM,EAAE,CAAC;AAIZ,MAAM,CAAC,MAAM,gDAAgD,GAAG,CAAC;KAC9D,MAAM,CAAC,EAAE,KAAK,EAAE,iCAAiC,EAAE,CAAC;KACpD,MAAM,EAAE,CAAC;AAKZ,MAAM,CAAC,MAAM,4CAA4C,GAAG,CAAC;KAC1D,MAAM,CAAC,EAAE,KAAK,EAAE,iCAAiC,EAAE,CAAC;KACpD,MAAM,EAAE,CAAC;AAIZ,MAAM,CAAC,MAAM,6CAA6C,GAAG,CAAC;KAC3D,MAAM,CAAC;IACN,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,uCAAuC,CAAC;IACtD,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,2BAA2B,CAAC;IAChD,QAAQ,EAAE,WAAW;IACrB,WAAW,EAAE,WAAW,CAAC,QAAQ,EAAE;IACnC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC7B,CAAC;KACD,MAAM,EAAE,CAAC","sourcesContent":["import { z } from 'zod';\nimport { activityGenerationSchema } from '@ttt-productions/notification-core';\nimport { parseNotificationArchiveAllJobId } from '../ids/notification-ids.js';\nimport {\n ADMIN_NOTIFICATION_CATEGORY,\n NOTIFICATION_ARCHIVE_ALL_JOB_STATE_KEYS,\n} from '../types/notifications.js';\nimport { countSchema, documentIdSegmentSchema } from '../doc-schemas/atoms.js';\n\nexport const adminNotificationIdSchema = z\n .string()\n .regex(/^[A-Za-z0-9]{1,128}$/, 'Not a notification id.');\n\nconst notificationRequestIdSchema = z.uuid();\n\nconst notificationArchiveAllJobIdSchema = documentIdSegmentSchema.refine(\n (id) => parseNotificationArchiveAllJobId(id) !== null,\n 'Not an archive-all job id.',\n);\n\nexport const AdminUpdateAdminNotificationArchiveInputSchema = z\n .object({\n requestId: notificationRequestIdSchema,\n notificationId: adminNotificationIdSchema,\n observedActivityGeneration: activityGenerationSchema,\n })\n .strict();\nexport type AdminUpdateAdminNotificationArchiveInput = z.infer<\n typeof AdminUpdateAdminNotificationArchiveInputSchema\n>;\nexport const AdminUpdateAdminNotificationArchiveResultSchema = z\n .object({ archived: z.boolean() })\n .strict();\nexport type AdminUpdateAdminNotificationArchiveResult = z.infer<\n typeof AdminUpdateAdminNotificationArchiveResultSchema\n>;\n\nexport const AdminCreateNotificationArchiveAllJobInputSchema = z\n .object({ requestId: notificationRequestIdSchema })\n .strict();\nexport type AdminCreateNotificationArchiveAllJobInput = z.infer<\n typeof AdminCreateNotificationArchiveAllJobInputSchema\n>;\nexport const AdminCreateNotificationArchiveAllJobResultSchema = z\n .object({ jobId: notificationArchiveAllJobIdSchema })\n .strict();\nexport type AdminCreateNotificationArchiveAllJobResult = z.infer<\n typeof AdminCreateNotificationArchiveAllJobResultSchema\n>;\n\nexport const AdminGetNotificationArchiveAllJobInputSchema = z\n .object({ jobId: notificationArchiveAllJobIdSchema })\n .strict();\nexport type AdminGetNotificationArchiveAllJobInput = z.infer<\n typeof AdminGetNotificationArchiveAllJobInputSchema\n>;\nexport const AdminGetNotificationArchiveAllJobResultSchema = z\n .object({\n state: z.enum(NOTIFICATION_ARCHIVE_ALL_JOB_STATE_KEYS),\n category: z.literal(ADMIN_NOTIFICATION_CATEGORY),\n archived: countSchema,\n notArchived: countSchema.optional(),\n error: z.string().optional(),\n })\n .strict();\nexport type AdminGetNotificationArchiveAllJobResult = z.infer<\n typeof AdminGetNotificationArchiveAllJobResultSchema\n>;\n"]}
@@ -1,5 +1,4 @@
1
1
  import { z } from 'zod';
2
- export declare const sportStatEventIdSchema: z.ZodString;
3
2
  export declare const StatEventSubmissionSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
4
3
  eventId: z.ZodString;
5
4
  type: z.ZodLiteral<"1PT">;
@@ -1 +1 @@
1
- {"version":3,"file":"scoring.d.ts","sourceRoot":"","sources":["../../src/schemas/scoring.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAoDxB,eAAO,MAAM,sBAAsB,aAGlC,CAAC;AAIF,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BAuBpC,CAAC;AACH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAE5E,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAKhC,CAAC;AACZ,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC;AAEtF,eAAO,MAAM,uBAAuB;;;;;;;;kBAMzB,CAAC;AACZ,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE,eAAO,MAAM,+BAA+B;;;;;;;;;;;kBAKjC,CAAC;AACZ,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,+BAA+B,CAAC,CAAC;AAExF,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;kBAK/B,CAAC;AACZ,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAC;AAEpF,eAAO,MAAM,uCAAuC;;;;kBAMzC,CAAC;AACZ,MAAM,MAAM,iCAAiC,GAAG,CAAC,CAAC,KAAK,CACrD,OAAO,uCAAuC,CAC/C,CAAC;AAEF,eAAO,MAAM,wCAAwC;;;;;kBAO1C,CAAC;AACZ,MAAM,MAAM,kCAAkC,GAAG,CAAC,CAAC,KAAK,CACtD,OAAO,wCAAwC,CAChD,CAAC;AAEF,eAAO,MAAM,cAAc,wDAAmC,CAAC;AAE/D,eAAO,MAAM,8BAA8B;;;;kBAMhC,CAAC;AACZ,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC;AAEtF,eAAO,MAAM,+BAA+B;;;;;kBAOjC,CAAC;AACZ,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,+BAA+B,CAAC,CAAC;AAExF,eAAO,MAAM,kCAAkC;;;kBAKpC,CAAC;AACZ,MAAM,MAAM,4BAA4B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kCAAkC,CAAC,CAAC;AAE9F,eAAO,MAAM,mCAAmC;;;;kBAMrC,CAAC;AACZ,MAAM,MAAM,6BAA6B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mCAAmC,CAAC,CAAC"}
1
+ {"version":3,"file":"scoring.d.ts","sourceRoot":"","sources":["../../src/schemas/scoring.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAwDxB,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BAuBpC,CAAC;AACH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAE5E,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAKhC,CAAC;AACZ,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC;AAEtF,eAAO,MAAM,uBAAuB;;;;;;;;kBAMzB,CAAC;AACZ,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE,eAAO,MAAM,+BAA+B;;;;;;;;;;;kBAKjC,CAAC;AACZ,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,+BAA+B,CAAC,CAAC;AAExF,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;kBAK/B,CAAC;AACZ,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAC;AAEpF,eAAO,MAAM,uCAAuC;;;;kBAMzC,CAAC;AACZ,MAAM,MAAM,iCAAiC,GAAG,CAAC,CAAC,KAAK,CACrD,OAAO,uCAAuC,CAC/C,CAAC;AAEF,eAAO,MAAM,wCAAwC;;;;;kBAO1C,CAAC;AACZ,MAAM,MAAM,kCAAkC,GAAG,CAAC,CAAC,KAAK,CACtD,OAAO,wCAAwC,CAChD,CAAC;AAEF,eAAO,MAAM,cAAc,wDAAmC,CAAC;AAE/D,eAAO,MAAM,8BAA8B;;;;kBAMhC,CAAC;AACZ,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC;AAEtF,eAAO,MAAM,+BAA+B;;;;;kBAOjC,CAAC;AACZ,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,+BAA+B,CAAC,CAAC;AAExF,eAAO,MAAM,kCAAkC;;;kBAKpC,CAAC;AACZ,MAAM,MAAM,4BAA4B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kCAAkC,CAAC,CAAC;AAE9F,eAAO,MAAM,mCAAmC;;;;kBAMrC,CAAC;AACZ,MAAM,MAAM,6BAA6B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mCAAmC,CAAC,CAAC"}
@@ -14,7 +14,7 @@ function callerShape(shape, omitted = []) {
14
14
  const dropped = new Set([...SERVER_DERIVED_FIELDS, ...omitted]);
15
15
  return Object.fromEntries(Object.entries(shape).filter(([field]) => !dropped.has(field)));
16
16
  }
17
- export const sportStatEventIdSchema = statEventIdSchema.refine(isSportStatEventId, 'Not a stat event id.');
17
+ const sportStatEventIdSchema = statEventIdSchema.refine(isSportStatEventId, 'Not a stat event id.');
18
18
  const sportEventId = { eventId: sportStatEventIdSchema };
19
19
  export const StatEventSubmissionSchema = z.discriminatedUnion('type', [
20
20
  z.strictObject({ ...callerShape(BasketballOnePointEventSchema.shape), ...sportEventId }),