@pokepc/dataset 7.1.0 → 7.1.2

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.
@@ -1 +1 @@
1
- {"version":3,"file":"schemas-Bl5_UJHu.mjs","names":["z"],"sources":["../src/lib/schemas.ts"],"sourcesContent":["import { z } from 'zod'\nimport { POKEPC_LATEST_GENERATION } from './constants'\nimport { evolutionMethodSchema } from './evolution-schemas'\nexport { evolutionConditionSchema, evolutionMethodSchema } from './evolution-schemas'\nimport { formMethodSchema } from './form-schemas'\nexport {\n formConditionSchema,\n formMethodSchema,\n formRevertSchema,\n formRevertDetailSchema,\n} from './form-schemas'\nimport {\n abilityTagIds,\n battleStyles,\n gamePlatforms,\n gameSeries,\n gameType,\n itemCategory,\n languageAlpha3Codes,\n languageIds,\n languageInGameCodes,\n moveCategory,\n pokeballCategory,\n raidStyles,\n ribbonCategory,\n statIds,\n typeIds,\n} from './enums'\n\nconst common = {\n name: z.string().max(50),\n gen: z.coerce.number().int().min(0).max(POKEPC_LATEST_GENERATION),\n slug: z\n .string()\n .max(50)\n .regex(/^[a-z0-9-]+$/),\n desc: z.string().max(2000).nullable(),\n shortDesc: z.string().max(200),\n // sortIndex: z.coerce.number().min(0),\n colorHex: z.string().regex(/^#[0-9a-f]{6}$/i),\n dateDay: z.string().regex(/^\\d{4}-\\d{2}-\\d{2}$/),\n statId: z.enum(statIds),\n typeId: z.enum(typeIds),\n int: z.coerce.number().int(),\n dexNum: z.union([z.string().regex(/^\\d{1,5}$/), z.coerce.number().int().min(0).max(99999)]),\n level: z.coerce.number().int().min(1).max(100),\n statValue: z.coerce.number().int().min(-1).max(255),\n}\n\nconst base = {\n entity: z.object({\n id: common.slug,\n name: common.name,\n // sortIndex: defs.sortIndex,\n }),\n entityWithGenAndDescs: z.object({\n id: common.slug,\n name: common.name,\n gen: common.gen,\n shortDesc: common.shortDesc,\n desc: common.desc,\n // sortIndex: defs.sortIndex,\n }),\n entityWithGenAndDescsAndShowdownName: z.object({\n id: common.slug,\n name: common.name,\n psName: common.name,\n gen: common.gen,\n shortDesc: common.shortDesc,\n desc: common.desc,\n // sortIndex: defs.sortIndex,\n }),\n}\n\nexport const i18nTextSchema = z.record(z.enum(languageAlpha3Codes), z.string().optional())\n\nexport const abilitySchema = base.entityWithGenAndDescsAndShowdownName.extend({\n tags: z.array(z.enum(abilityTagIds)).min(1),\n immunities: z.array(common.typeId).optional(),\n weaknesses: z.array(common.typeId).optional(),\n})\nexport const personalitySchema = z.object({\n id: common.slug,\n shortDesc: common.shortDesc,\n // sortIndex: defs.sortIndex,\n})\nexport const characterSchema = base.entity.extend({\n // sprite: z.string(),\n})\nexport const colorSchema = base.entity.extend({\n color: common.colorHex,\n})\nexport const gameFeaturesSchema = z.object({\n storage: z.boolean(), // when true, the game has a storage system (boxes, etc)\n party: z.boolean(), // when true, Pokemon are carried in a party (see maxPartySize)\n battleTeams: z.boolean(), // when true, teams can be registered for battles (see maxBattleTeams)\n pokedex: z.boolean(), // when true, the game has at least one pokedex\n training: z.boolean(), // when true, the Pokemon are trainable with traditional methods (evs, ivs, hyper training, etc)\n shiny: z.boolean(),\n items: z.boolean(),\n gender: z.boolean(),\n pokerus: z.boolean(), // All except Gen 1, GO and from S/V onwards\n nature: z.boolean(),\n ribbons: z.boolean(), // Since gen 3\n marks: z.boolean(), // Since gen 8\n markings: z.boolean(), // Since gen 3 (circle, triangle, square, heart, star, diamond)\n shadow: z.boolean(), // Colosseum, XD and GO\n ball: z.boolean(), // Caught balls, since gen 4\n mega: z.boolean(),\n zmove: z.boolean(),\n gmax: z.boolean(),\n alpha: z.boolean(),\n tera: z.boolean(),\n plusmvs: z.boolean(), // mastered moves, LA and LZA only\n mints: z.boolean(),\n sizes: z.boolean(), // For some games like Let's GO, Legends, etc.\n abilities: z.boolean(), // gen 1-2 and Legends games have no abilities\n})\nexport const onlineFeaturesSchema = z.object({\n battles: z.boolean(),\n battleStyles: z.array(z.enum(battleStyles)),\n trades: z.boolean(),\n raids: z.boolean(),\n raidStyles: z.array(z.enum(raidStyles)),\n coop: z.boolean(),\n})\nexport const gameSchema = base.entity.extend({\n gen: common.gen,\n nameSlug: common.slug,\n pokeApiGameVersionId: z.number().int().positive().nullable(), // /version/{id}; null for grouped or unmapped records\n pokeApiGameVersionGroupId: z.number().int().positive().nullable(), // /version-group/{id}; null when no exact group exists\n codename: common.name.nullable(),\n type: z.enum(gameType),\n series: z.enum(gameSeries),\n gameSet: common.slug.nullable(),\n gameSuperSet: common.slug.nullable(),\n releaseDate: common.dateDay,\n region: common.slug.nullable(),\n originMark: common.slug.nullable(),\n pokedexes: z.array(common.slug),\n maxBoxes: common.int,\n maxBoxSize: common.int,\n maxPartySize: common.int, // Pokemon carried at once, 0 when the game has no party\n maxBattleTeams: common.int, // registrable battle teams, 0 when unsupported (the gen 5-6 Battle Box counts as 1)\n platforms: z.array(z.enum(gamePlatforms)).min(1),\n isUnreleased: z.coerce.boolean().optional(),\n features: gameFeaturesSchema,\n onlineFeatures: onlineFeaturesSchema.optional(),\n // sprite: z.string(),\n // spriteIcon: z.string(),\n})\nexport const generationSchema = z.object({\n id: common.int,\n minDexNum: common.int,\n maxDexNum: common.int,\n})\nexport const itemSchema = base.entityWithGenAndDescsAndShowdownName.extend({\n category: z.enum(itemCategory),\n unholdable: z.coerce.boolean().optional(),\n // sprite: z.string(),\n})\nexport const pokeballSchema = base.entityWithGenAndDescs.extend({\n category: z.enum(pokeballCategory),\n unusable: z.coerce.boolean().optional(),\n})\nexport const languageSchema = base.entity.extend({\n id: z.enum(languageIds),\n name: z.string(),\n nameEng: z.string(),\n alpha3: z.enum(languageAlpha3Codes),\n inGameCode: z.enum(languageInGameCodes),\n locale: z.string(),\n flag: z.string(),\n pkApiId: z.string().nullable(), // PokeAPI ID\n})\nexport const markSchema = base.entityWithGenAndDescs.extend({\n title: common.shortDesc,\n conditions: common.shortDesc,\n chance: z.string(),\n chanceCharm: z.string(),\n // sprite: z.string(),\n})\nexport const ribbonSchema = base.entityWithGenAndDescs.extend({\n title: common.shortDesc,\n category: z.enum(ribbonCategory),\n // sprite: z.string(),\n})\nexport const originMarkSchema = base.entity\nexport const regionSchema = base.entity\nexport const locationSchema = z\n .object({\n id: common.slug,\n name: z.string().min(1).max(120),\n games: z.array(common.slug).min(1).nullable(),\n region: common.slug.nullable(),\n pokeApiId: z.number().int().positive().nullable(),\n })\n .strict()\nexport const typeSchema = base.entity.extend({\n color: common.colorHex,\n isCanonical: z.boolean(),\n})\nexport const natureSchema = base.entity.extend({\n raises: common.statId.nullable(),\n lowers: common.statId.nullable(),\n})\nexport const moveSchema = base.entityWithGenAndDescsAndShowdownName.extend({\n type: common.typeId,\n power: common.int.min(0).max(999),\n accuracy: common.int.min(0).max(101),\n pp: common.int.min(0).max(100),\n category: z.enum(moveCategory),\n priority: common.int.min(-10).max(10),\n isZ: z.boolean(),\n isGmax: z.boolean(),\n})\n\nexport const pokedexEntrySchema = z.object({\n pid: common.slug,\n dexNum: common.dexNum,\n isForm: z.coerce.boolean(),\n transferOnly: z.coerce.boolean().optional(),\n originDex: common.slug.optional(),\n isNonCanonical: z.coerce.boolean().optional(), // if true, the pokemon is not canonical/main-series species or form. e.g Mosslax.\n // meta: optional data that can be used if the pokemon is not found in the main-series dataset,\n // e.g. this is relevant for spin-off games that contain special forms like in Pokopia.\n // For example, Mosslax has a different dex number than Snorlax in Pokopia, so it needs a special entry.\n meta: z\n .object({\n names: i18nTextSchema,\n speciesNames: i18nTextSchema.optional(),\n formNames: i18nTextSchema.optional(),\n type1: common.slug.optional(),\n type2: common.slug.optional(),\n attributes: z.record(common.slug, z.string()).optional(), // key-value info\n tags: z.array(common.slug).optional(),\n canonicalPid: common.slug.optional(), // e.g. for professor tangrowth, it would be tangrowth\n imgNid: common.slug.optional(), // if using a different nid for the image\n })\n .optional(),\n})\n\nexport const pokedexSchema = base.entity.extend({\n shortDesc: common.shortDesc.optional(),\n desc: common.desc.optional(),\n gen: common.gen,\n region: common.slug.nullable(),\n isNational: z.coerce.boolean(),\n baseDex: common.slug.nullable(),\n pkApiId: z.string().nullable(),\n entries: z.array(pokedexEntrySchema.strict()),\n // transferEntries: z.array(pokedexEntrySchema.strict()).optional(),\n})\n\nexport const pokemonRefsSchema = z.object({\n pkApiId: z.string(),\n pkApiFormId: z.string(),\n pkApiFormSlug: z.string(),\n smogon: z.string(),\n showdown: z.string(),\n showdownName: z.string(),\n serebii: z.string(),\n bulbapedia: z.string(),\n})\n\nexport const pokemonSchema = z.object({\n id: common.slug,\n nid: common.slug,\n imgNid: common.slug.optional(), // if using a different nid for the image\n dexNum: common.dexNum,\n formId: common.slug.optional(),\n // sprite2d: z.string().nullable(), // TODO:! make not nullable\n // sprite3d: z.string().nullable(), // TODO:! make not nullable\n // sprite3dShiny: z.string().nullable(), // TODO:! make not nullable\n region: common.slug,\n gen: common.gen,\n type1: common.slug,\n type2: common.slug.optional(),\n color: common.slug,\n ability1: common.slug,\n ability2: common.slug.optional(),\n abilityHidden: common.slug.optional(),\n abilitySpecial: common.slug.optional(),\n legacyAbilities: z\n .array(common.slug)\n .optional()\n .describe(\n 'Previously obtainable ability IDs for this exact form, excluding its current abilities and any unused or unreleased assignments.',\n ),\n isPrerelease: z.coerce.boolean(),\n isDefault: z.coerce.boolean(),\n isForm: z.coerce.boolean(),\n isLegendary: z.coerce.boolean(),\n isMythical: z.coerce.boolean(),\n isBaby: z.coerce.boolean(),\n isUltraBeast: z.coerce.boolean(),\n isParadox: z.coerce.boolean(),\n paradoxSpecies: z.array(common.slug).optional(),\n isConvergent: z.coerce.boolean(),\n convergentSpecies: z.array(common.slug).optional(),\n isCosmeticForm: z.coerce.boolean(),\n isFemaleForm: z.coerce.boolean(),\n hasGenderDifferences: z.coerce.boolean(),\n isBattleOnlyForm: z.coerce.boolean(),\n isFusion: z.coerce.boolean(),\n isMega: z.coerce.boolean(),\n isPrimal: z.coerce.boolean(),\n isGmax: z.coerce.boolean(),\n isRegional: z.coerce.boolean(),\n canGmax: z.coerce.boolean(),\n canDynamax: z.coerce.boolean(),\n canBeAlpha: z.coerce.boolean(),\n // ---- Availability: canonical definitions in docs/pokemon-availability.md.\n debutIn: common.slug, // the first game it appeared in\n obtainableIn: z.array(common.slug), // exportable ordinary acquisition; Megas require a native base route; GO means historically released, even if not exportable; excludes Champions recruits\n transferOnlyIn: z.array(common.slug), // external acquisition/dependency, including distributions and verified visitors\n storableIn: z.array(common.slug), // exact form persists in storage; independent of acquisition/exportability\n eventOnlyIn: z.array(common.slug), // obtainable via in-game events; disjoint from obtainableIn and transferOnlyIn\n shinyLockedIn: z.array(common.slug).optional(), // native acquisition is shiny-locked; does not prohibit imported shinies\n shinyReleased: z.coerce.boolean(), // a legal shiny of this form has been released somewhere\n shinyBase: common.slug.optional(), // shared shiny appearance reference, not availability inheritance\n // -------------------\n baseHp: common.statValue,\n baseAtk: common.statValue,\n baseDef: common.statValue,\n baseSpAtk: common.statValue,\n baseSpDef: common.statValue,\n baseSpeed: common.statValue,\n height: common.int.min(-1).max(999999),\n weight: common.int.min(-1).max(999999),\n maleRate: z.coerce.number().min(-1).max(100),\n femaleRate: z.coerce.number().min(-1).max(100),\n baseSpecies: common.slug.optional(),\n baseForms: z.array(common.slug),\n forms: z.array(common.slug),\n formsDesc: z.string().optional(),\n family: common.slug.optional(),\n refs: pokemonRefsSchema,\n // Evolution methods are alternatives. Missing game scope is unknown, not universal support.\n evoMethods: z.array(evolutionMethodSchema).min(1).optional(),\n // Incoming form transitions, including separately described reverse transitions.\n formMethods: z.array(formMethodSchema).min(1).optional(),\n // translations:\n names: i18nTextSchema,\n genus: i18nTextSchema,\n speciesNames: i18nTextSchema,\n formNames: i18nTextSchema,\n})\n\n// --- legacy\n\nexport const boxPresetIndexItemSchema = z\n .object({\n id: common.slug,\n gameSet: common.slug,\n legacyId: common.slug.nullable(),\n name: common.name,\n isHidden: z.coerce.boolean().optional(),\n })\n .strict()\n\nexport const boxPresetBoxPokemonSchema = common.slug.nullable().or(\n z.object({\n pid: common.slug,\n gmax: z.coerce.boolean().optional(),\n shinyLocked: z.coerce.boolean().optional(),\n shiny: z.coerce.boolean().optional(),\n }),\n)\n\nexport const boxPresetBoxSchema = z.object({\n title: z.string().max(120).optional(),\n pokemon: z.array(boxPresetBoxPokemonSchema),\n})\n\nexport const boxPresetSchema = z.object({\n id: common.slug,\n legacyId: common.slug.optional(),\n name: z.string().max(120),\n version: z.coerce.number().int().min(0),\n gameSet: common.slug.nullable(),\n description: z.string(),\n boxes: z.array(boxPresetBoxSchema),\n isHidden: z.coerce.boolean().optional(),\n})\n\nexport const boxPresetMapSchema = z.record(z.string(), z.record(z.string(), boxPresetSchema))\n\nexport const modernBoxPresetTags = [\n 'recommended',\n 'national',\n 'grouped',\n 'sorted',\n 'minimal',\n 'shiny',\n 'forms',\n] as const\n\nexport const modernBoxPresetIndexSchema = z.array(common.slug)\n\nexport const modernBoxPresetSlotSchema = common.slug.nullable().or(\n z\n .object({\n pokemon: common.slug,\n shiny: z.coerce.boolean().optional(),\n gmax: z.coerce.boolean().optional(),\n shinyLocked: z.coerce.boolean().optional(),\n })\n .strict(),\n)\n\nexport const modernBoxPresetBoxSchema = z\n .object({\n name: z.string().max(120).optional(),\n slots: z.array(modernBoxPresetSlotSchema),\n })\n .strict()\n\nexport const modernBoxPresetSchema = z\n .object({\n schemaVersion: z.literal(1),\n id: common.slug,\n gameSet: common.slug,\n name: z.string().max(120),\n description: z.string().max(2000).optional(),\n source: z\n .object({\n kind: z.literal('classic'),\n gameSet: common.slug,\n presetId: common.slug,\n version: z.coerce.number().int().min(0).optional(),\n legacyId: common.slug.optional(),\n })\n .strict()\n .optional(),\n tags: z.array(z.enum(modernBoxPresetTags)).optional(),\n boxes: z.array(modernBoxPresetBoxSchema),\n })\n .strict()\n\nexport const pokemonSearchFilterSchema = z.object({\n q: z.string().optional().catch(undefined),\n gen: z.coerce.number().min(1).max(POKEPC_LATEST_GENERATION).optional().catch(undefined),\n lang: z.string().optional().default('en'),\n // pokemon-specific filters:\n color: z.string().optional().catch(undefined),\n type: z.string().optional().catch(undefined),\n forms: z.coerce.boolean().optional().catch(undefined),\n shiny: z.coerce.boolean().optional().catch(undefined),\n})\n"],"mappings":"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"}
1
+ {"version":3,"file":"schemas-Bl5_UJHu.mjs","names":["z"],"sources":["../src/lib/schemas.ts"],"sourcesContent":["import { z } from 'zod'\nimport { POKEPC_LATEST_GENERATION } from './constants'\nimport { evolutionMethodSchema } from './evolution-schemas'\nexport { evolutionConditionSchema, evolutionMethodSchema } from './evolution-schemas'\nimport { formMethodSchema } from './form-schemas'\nexport {\n formConditionSchema,\n formMethodSchema,\n formRevertSchema,\n formRevertDetailSchema,\n} from './form-schemas'\nimport {\n abilityTagIds,\n battleStyles,\n gamePlatforms,\n gameSeries,\n gameType,\n itemCategory,\n languageAlpha3Codes,\n languageIds,\n languageInGameCodes,\n moveCategory,\n pokeballCategory,\n raidStyles,\n ribbonCategory,\n statIds,\n typeIds,\n} from './enums'\n\nconst common = {\n name: z.string().max(50),\n gen: z.coerce.number().int().min(0).max(POKEPC_LATEST_GENERATION),\n slug: z\n .string()\n .max(50)\n .regex(/^[a-z0-9-]+$/),\n desc: z.string().max(2000).nullable(),\n shortDesc: z.string().max(200),\n // sortIndex: z.coerce.number().min(0),\n colorHex: z.string().regex(/^#[0-9a-f]{6}$/i),\n dateDay: z.string().regex(/^\\d{4}-\\d{2}-\\d{2}$/),\n statId: z.enum(statIds),\n typeId: z.enum(typeIds),\n int: z.coerce.number().int(),\n dexNum: z.union([z.string().regex(/^\\d{1,5}$/), z.coerce.number().int().min(0).max(99999)]),\n level: z.coerce.number().int().min(1).max(100),\n statValue: z.coerce.number().int().min(-1).max(255),\n}\n\nconst base = {\n entity: z.object({\n id: common.slug,\n name: common.name,\n // sortIndex: defs.sortIndex,\n }),\n entityWithGenAndDescs: z.object({\n id: common.slug,\n name: common.name,\n gen: common.gen,\n shortDesc: common.shortDesc,\n desc: common.desc,\n // sortIndex: defs.sortIndex,\n }),\n entityWithGenAndDescsAndShowdownName: z.object({\n id: common.slug,\n name: common.name,\n psName: common.name,\n gen: common.gen,\n shortDesc: common.shortDesc,\n desc: common.desc,\n // sortIndex: defs.sortIndex,\n }),\n}\n\nexport const i18nTextSchema = z.record(z.enum(languageAlpha3Codes), z.string().optional())\n\nexport const abilitySchema = base.entityWithGenAndDescsAndShowdownName.extend({\n tags: z.array(z.enum(abilityTagIds)).min(1),\n immunities: z.array(common.typeId).optional(),\n weaknesses: z.array(common.typeId).optional(),\n})\nexport const personalitySchema = z.object({\n id: common.slug,\n shortDesc: common.shortDesc,\n // sortIndex: defs.sortIndex,\n})\nexport const characterSchema = base.entity.extend({\n // sprite: z.string(),\n})\nexport const colorSchema = base.entity.extend({\n color: common.colorHex,\n})\nexport const gameFeaturesSchema = z.object({\n storage: z.boolean(), // when true, the game has a storage system (boxes, etc)\n party: z.boolean(), // when true, Pokemon are carried in a party (see maxPartySize)\n battleTeams: z.boolean(), // when true, teams can be registered for battles (see maxBattleTeams)\n pokedex: z.boolean(), // when true, the game has at least one pokedex\n training: z.boolean(), // when true, the Pokemon are trainable with traditional methods (evs, ivs, hyper training, etc)\n shiny: z.boolean(),\n items: z.boolean(),\n gender: z.boolean(),\n pokerus: z.boolean(), // All except Gen 1, GO and from S/V onwards\n nature: z.boolean(),\n ribbons: z.boolean(), // Since gen 3\n marks: z.boolean(), // Since gen 8\n markings: z.boolean(), // Since gen 3 (circle, triangle, square, heart, star, diamond)\n shadow: z.boolean(), // Colosseum, XD and GO\n ball: z.boolean(), // Caught balls, since gen 4\n mega: z.boolean(),\n zmove: z.boolean(),\n gmax: z.boolean(),\n alpha: z.boolean(),\n tera: z.boolean(),\n plusmvs: z.boolean(), // mastered moves, LA and LZA only\n mints: z.boolean(),\n sizes: z.boolean(), // For some games like Let's GO, Legends, etc.\n abilities: z.boolean(), // gen 1-2 and Legends games have no abilities\n})\nexport const onlineFeaturesSchema = z.object({\n battles: z.boolean(),\n battleStyles: z.array(z.enum(battleStyles)),\n trades: z.boolean(),\n raids: z.boolean(),\n raidStyles: z.array(z.enum(raidStyles)),\n coop: z.boolean(),\n})\nexport const gameSchema = base.entity.extend({\n gen: common.gen,\n nameSlug: common.slug,\n pokeApiGameVersionId: z.number().int().positive().nullable(), // /version/{id}; null for grouped or unmapped records\n pokeApiGameVersionGroupId: z.number().int().positive().nullable(), // /version-group/{id}; null when no exact group exists\n codename: common.name.nullable(),\n type: z.enum(gameType),\n series: z.enum(gameSeries),\n gameSet: common.slug.nullable(),\n gameSuperSet: common.slug.nullable(),\n releaseDate: common.dateDay,\n region: common.slug.nullable(),\n originMark: common.slug.nullable(),\n pokedexes: z.array(common.slug),\n maxBoxes: common.int,\n maxBoxSize: common.int,\n maxPartySize: common.int, // Pokemon carried at once, 0 when the game has no party\n maxBattleTeams: common.int, // registrable battle teams, 0 when unsupported (the gen 5-6 Battle Box counts as 1)\n platforms: z.array(z.enum(gamePlatforms)).min(1),\n isUnreleased: z.coerce.boolean().optional(),\n features: gameFeaturesSchema,\n onlineFeatures: onlineFeaturesSchema.optional(),\n // sprite: z.string(),\n // spriteIcon: z.string(),\n})\nexport const generationSchema = z.object({\n id: common.int,\n minDexNum: common.int,\n maxDexNum: common.int,\n})\nexport const itemSchema = base.entityWithGenAndDescsAndShowdownName.extend({\n category: z.enum(itemCategory),\n unholdable: z.coerce.boolean().optional(),\n // sprite: z.string(),\n})\nexport const pokeballSchema = base.entityWithGenAndDescs.extend({\n category: z.enum(pokeballCategory),\n unusable: z.coerce.boolean().optional(),\n})\nexport const languageSchema = base.entity.extend({\n id: z.enum(languageIds),\n name: z.string(),\n nameEng: z.string(),\n alpha3: z.enum(languageAlpha3Codes),\n inGameCode: z.enum(languageInGameCodes),\n locale: z.string(),\n flag: z.string(),\n pkApiId: z.string().nullable(), // PokeAPI ID\n})\nexport const markSchema = base.entityWithGenAndDescs.extend({\n title: common.shortDesc,\n conditions: common.shortDesc,\n chance: z.string(),\n chanceCharm: z.string(),\n // sprite: z.string(),\n})\nexport const ribbonSchema = base.entityWithGenAndDescs.extend({\n title: common.shortDesc,\n category: z.enum(ribbonCategory),\n // sprite: z.string(),\n})\nexport const originMarkSchema = base.entity\nexport const regionSchema = base.entity\nexport const locationSchema = z\n .object({\n id: common.slug,\n name: z.string().min(1).max(120),\n games: z.array(common.slug).min(1).nullable(),\n region: common.slug.nullable(),\n pokeApiId: z.number().int().positive().nullable(),\n })\n .strict()\nexport const typeSchema = base.entity.extend({\n color: common.colorHex,\n isCanonical: z.boolean(),\n})\nexport const natureSchema = base.entity.extend({\n raises: common.statId.nullable(),\n lowers: common.statId.nullable(),\n})\nexport const moveSchema = base.entityWithGenAndDescsAndShowdownName.extend({\n type: common.typeId,\n power: common.int.min(0).max(999),\n accuracy: common.int.min(0).max(101),\n pp: common.int.min(0).max(100),\n category: z.enum(moveCategory),\n priority: common.int.min(-10).max(10),\n isZ: z.boolean(),\n isGmax: z.boolean(),\n})\n\nexport const pokedexEntrySchema = z.object({\n pid: common.slug,\n dexNum: common.dexNum,\n isForm: z.coerce.boolean(),\n transferOnly: z.coerce.boolean().optional(),\n originDex: common.slug.optional(),\n isNonCanonical: z.coerce.boolean().optional(), // if true, the pokemon is not canonical/main-series species or form. e.g Mosslax.\n // meta: optional data that can be used if the pokemon is not found in the main-series dataset,\n // e.g. this is relevant for spin-off games that contain special forms like in Pokopia.\n // For example, Mosslax has a different dex number than Snorlax in Pokopia, so it needs a special entry.\n meta: z\n .object({\n names: i18nTextSchema,\n speciesNames: i18nTextSchema.optional(),\n formNames: i18nTextSchema.optional(),\n type1: common.slug.optional(),\n type2: common.slug.optional(),\n attributes: z.record(common.slug, z.string()).optional(), // key-value info\n tags: z.array(common.slug).optional(),\n canonicalPid: common.slug.optional(), // e.g. for professor tangrowth, it would be tangrowth\n imgNid: common.slug.optional(), // if using a different nid for the image\n })\n .optional(),\n})\n\nexport const pokedexSchema = base.entity.extend({\n shortDesc: common.shortDesc.optional(),\n desc: common.desc.optional(),\n gen: common.gen,\n region: common.slug.nullable(),\n isNational: z.coerce.boolean(),\n baseDex: common.slug.nullable(),\n pkApiId: z.string().nullable(),\n entries: z.array(pokedexEntrySchema.strict()),\n // transferEntries: z.array(pokedexEntrySchema.strict()).optional(),\n})\n\nexport const pokemonRefsSchema = z.object({\n pkApiId: z.string(),\n pkApiFormId: z.string(),\n pkApiFormSlug: z.string(),\n smogon: z.string(),\n showdown: z.string(),\n showdownName: z.string(),\n serebii: z.string(),\n bulbapedia: z.string(),\n})\n\nexport const pokemonSchema = z.object({\n id: common.slug,\n nid: common.slug,\n imgNid: common.slug.optional(), // if using a different nid for the image\n dexNum: common.dexNum,\n formId: common.slug.optional(),\n // sprite2d: z.string().nullable(), // TODO:! make not nullable\n // sprite3d: z.string().nullable(), // TODO:! make not nullable\n // sprite3dShiny: z.string().nullable(), // TODO:! make not nullable\n region: common.slug,\n gen: common.gen,\n type1: common.slug,\n type2: common.slug.optional(),\n color: common.slug,\n ability1: common.slug,\n ability2: common.slug.optional(),\n abilityHidden: common.slug.optional(),\n abilitySpecial: common.slug.optional(),\n legacyAbilities: z\n .array(common.slug)\n .optional()\n .describe(\n 'Previously obtainable ability IDs for this exact form, excluding its current abilities and any unused or unreleased assignments.',\n ),\n isPrerelease: z.coerce.boolean(),\n isDefault: z.coerce.boolean(),\n isForm: z.coerce.boolean(),\n isLegendary: z.coerce.boolean(),\n isMythical: z.coerce.boolean(),\n isBaby: z.coerce.boolean(),\n isUltraBeast: z.coerce.boolean(),\n isParadox: z.coerce.boolean(),\n paradoxSpecies: z.array(common.slug).optional(),\n isConvergent: z.coerce.boolean(),\n convergentSpecies: z.array(common.slug).optional(),\n isCosmeticForm: z.coerce.boolean(),\n isFemaleForm: z.coerce.boolean(),\n hasGenderDifferences: z.coerce.boolean(),\n isBattleOnlyForm: z.coerce.boolean(),\n isFusion: z.coerce.boolean(),\n isMega: z.coerce.boolean(),\n isPrimal: z.coerce.boolean(),\n isGmax: z.coerce.boolean(),\n isRegional: z.coerce.boolean(),\n canGmax: z.coerce.boolean(),\n canDynamax: z.coerce.boolean(),\n canBeAlpha: z.coerce.boolean(),\n // ---- Availability: canonical definitions in docs/pokemon-availability.md.\n debutIn: common.slug, // the first game it appeared in\n obtainableIn: z.array(common.slug), // exportable ordinary acquisition; Megas require a native base route; GO allows non-exportable releases but excludes researched event-only routes; excludes Champions recruits\n transferOnlyIn: z.array(common.slug), // external acquisition/dependency, including distributions and verified visitors\n storableIn: z.array(common.slug), // exact form persists in storage; independent of acquisition/exportability\n eventOnlyIn: z.array(common.slug), // obtainable via in-game events, including GO event-gated research/pass rewards; disjoint from obtainableIn and transferOnlyIn\n shinyLockedIn: z.array(common.slug).optional(), // native acquisition is shiny-locked; does not prohibit imported shinies\n shinyReleased: z.coerce.boolean(), // a legal shiny of this form has been released somewhere\n shinyBase: common.slug.optional(), // shared shiny appearance reference, not availability inheritance\n // -------------------\n baseHp: common.statValue,\n baseAtk: common.statValue,\n baseDef: common.statValue,\n baseSpAtk: common.statValue,\n baseSpDef: common.statValue,\n baseSpeed: common.statValue,\n height: common.int.min(-1).max(999999),\n weight: common.int.min(-1).max(999999),\n maleRate: z.coerce.number().min(-1).max(100),\n femaleRate: z.coerce.number().min(-1).max(100),\n baseSpecies: common.slug.optional(),\n baseForms: z.array(common.slug),\n forms: z.array(common.slug),\n formsDesc: z.string().optional(),\n family: common.slug.optional(),\n refs: pokemonRefsSchema,\n // Evolution methods are alternatives. Missing game scope is unknown, not universal support.\n evoMethods: z.array(evolutionMethodSchema).min(1).optional(),\n // Incoming form transitions, including separately described reverse transitions.\n formMethods: z.array(formMethodSchema).min(1).optional(),\n // translations:\n names: i18nTextSchema,\n genus: i18nTextSchema,\n speciesNames: i18nTextSchema,\n formNames: i18nTextSchema,\n})\n\n// --- legacy\n\nexport const boxPresetIndexItemSchema = z\n .object({\n id: common.slug,\n gameSet: common.slug,\n legacyId: common.slug.nullable(),\n name: common.name,\n isHidden: z.coerce.boolean().optional(),\n })\n .strict()\n\nexport const boxPresetBoxPokemonSchema = common.slug.nullable().or(\n z.object({\n pid: common.slug,\n gmax: z.coerce.boolean().optional(),\n shinyLocked: z.coerce.boolean().optional(),\n shiny: z.coerce.boolean().optional(),\n }),\n)\n\nexport const boxPresetBoxSchema = z.object({\n title: z.string().max(120).optional(),\n pokemon: z.array(boxPresetBoxPokemonSchema),\n})\n\nexport const boxPresetSchema = z.object({\n id: common.slug,\n legacyId: common.slug.optional(),\n name: z.string().max(120),\n version: z.coerce.number().int().min(0),\n gameSet: common.slug.nullable(),\n description: z.string(),\n boxes: z.array(boxPresetBoxSchema),\n isHidden: z.coerce.boolean().optional(),\n})\n\nexport const boxPresetMapSchema = z.record(z.string(), z.record(z.string(), boxPresetSchema))\n\nexport const modernBoxPresetTags = [\n 'recommended',\n 'national',\n 'grouped',\n 'sorted',\n 'minimal',\n 'shiny',\n 'forms',\n] as const\n\nexport const modernBoxPresetIndexSchema = z.array(common.slug)\n\nexport const modernBoxPresetSlotSchema = common.slug.nullable().or(\n z\n .object({\n pokemon: common.slug,\n shiny: z.coerce.boolean().optional(),\n gmax: z.coerce.boolean().optional(),\n shinyLocked: z.coerce.boolean().optional(),\n })\n .strict(),\n)\n\nexport const modernBoxPresetBoxSchema = z\n .object({\n name: z.string().max(120).optional(),\n slots: z.array(modernBoxPresetSlotSchema),\n })\n .strict()\n\nexport const modernBoxPresetSchema = z\n .object({\n schemaVersion: z.literal(1),\n id: common.slug,\n gameSet: common.slug,\n name: z.string().max(120),\n description: z.string().max(2000).optional(),\n source: z\n .object({\n kind: z.literal('classic'),\n gameSet: common.slug,\n presetId: common.slug,\n version: z.coerce.number().int().min(0).optional(),\n legacyId: common.slug.optional(),\n })\n .strict()\n .optional(),\n tags: z.array(z.enum(modernBoxPresetTags)).optional(),\n boxes: z.array(modernBoxPresetBoxSchema),\n })\n .strict()\n\nexport const pokemonSearchFilterSchema = z.object({\n q: z.string().optional().catch(undefined),\n gen: z.coerce.number().min(1).max(POKEPC_LATEST_GENERATION).optional().catch(undefined),\n lang: z.string().optional().default('en'),\n // pokemon-specific filters:\n color: z.string().optional().catch(undefined),\n type: z.string().optional().catch(undefined),\n forms: z.coerce.boolean().optional().catch(undefined),\n shiny: z.coerce.boolean().optional().catch(undefined),\n})\n"],"mappings":"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"}
@@ -91,6 +91,21 @@
91
91
  { "pid": "tauros", "dexNum": 128, "isForm": false },
92
92
  { "pid": "rhydon", "dexNum": 112, "isForm": false },
93
93
  { "pid": "exeggutor", "dexNum": 103, "isForm": false },
94
- { "pid": "dragonite", "dexNum": 149, "isForm": false }
94
+ { "pid": "dragonite", "dexNum": 149, "isForm": false },
95
+ { "pid": "hoppip", "dexNum": 187, "isForm": false },
96
+ { "pid": "phanpy", "dexNum": 231, "isForm": false },
97
+ { "pid": "surskit", "dexNum": 283, "isForm": false },
98
+ { "pid": "zubat", "dexNum": 41, "isForm": false },
99
+ { "pid": "aron", "dexNum": 304, "isForm": false },
100
+ { "pid": "wooper", "dexNum": 194, "isForm": false },
101
+ { "pid": "sandshrew", "dexNum": 27, "isForm": false },
102
+ { "pid": "gligar", "dexNum": 207, "isForm": false },
103
+ { "pid": "trapinch", "dexNum": 328, "isForm": false },
104
+ { "pid": "chikorita", "dexNum": 152, "isForm": false },
105
+ { "pid": "cyndaquil", "dexNum": 155, "isForm": false },
106
+ { "pid": "totodile", "dexNum": 158, "isForm": false },
107
+ { "pid": "meditite", "dexNum": 307, "isForm": false },
108
+ { "pid": "shuckle", "dexNum": 213, "isForm": false },
109
+ { "pid": "larvitar", "dexNum": 246, "isForm": false }
95
110
  ]
96
111
  }
@@ -31,8 +31,8 @@
31
31
  "canDynamax": true,
32
32
  "canBeAlpha": false,
33
33
  "debutIn": "sm",
34
- "obtainableIn": ["go", "sm-s", "sm-m", "usum-us", "usum-um", "swsh-sw", "swsh-sh"],
35
- "eventOnlyIn": [],
34
+ "obtainableIn": ["sm-s", "sm-m", "usum-us", "usum-um", "swsh-sw", "swsh-sh"],
35
+ "eventOnlyIn": ["go"],
36
36
  "storableIn": [
37
37
  "go",
38
38
  "sm-s",
@@ -31,8 +31,8 @@
31
31
  "canDynamax": true,
32
32
  "canBeAlpha": false,
33
33
  "debutIn": "sm",
34
- "obtainableIn": ["go", "sm-s", "sm-m", "usum-us", "usum-um", "swsh-sw", "swsh-sh"],
35
- "eventOnlyIn": [],
34
+ "obtainableIn": ["sm-s", "sm-m", "usum-us", "usum-um", "swsh-sw", "swsh-sh"],
35
+ "eventOnlyIn": ["go"],
36
36
  "storableIn": [
37
37
  "go",
38
38
  "sm-s",
@@ -32,8 +32,8 @@
32
32
  "canDynamax": false,
33
33
  "canBeAlpha": false,
34
34
  "debutIn": "swsh",
35
- "obtainableIn": ["go", "swsh-sw", "swsh-sh"],
36
- "eventOnlyIn": [],
35
+ "obtainableIn": ["swsh-sw", "swsh-sh"],
36
+ "eventOnlyIn": ["go"],
37
37
  "storableIn": ["go", "swsh-sw", "swsh-sh", "home", "sv-s", "sv-v"],
38
38
  "shinyReleased": true,
39
39
  "shinyLockedIn": ["swsh-sw", "swsh-sh"],
@@ -31,8 +31,8 @@
31
31
  "canDynamax": true,
32
32
  "canBeAlpha": false,
33
33
  "debutIn": "swsh",
34
- "obtainableIn": ["go", "swsh-sw", "swsh-sh", "sv-s", "sv-v"],
35
- "eventOnlyIn": [],
34
+ "obtainableIn": ["swsh-sw", "swsh-sh", "sv-s", "sv-v"],
35
+ "eventOnlyIn": ["go"],
36
36
  "storableIn": ["go", "swsh-sw", "swsh-sh", "home", "sv-s", "sv-v"],
37
37
  "shinyReleased": false,
38
38
  "shinyLockedIn": ["swsh-sw", "swsh-sh", "sv-s", "sv-v"],
@@ -33,8 +33,8 @@
33
33
  "canDynamax": true,
34
34
  "canBeAlpha": false,
35
35
  "debutIn": "swsh",
36
- "obtainableIn": ["go", "swsh-sw", "swsh-sh", "sv-s", "sv-v"],
37
- "eventOnlyIn": [],
36
+ "obtainableIn": ["swsh-sw", "swsh-sh", "sv-s", "sv-v"],
37
+ "eventOnlyIn": ["go"],
38
38
  "storableIn": ["go", "swsh-sw", "swsh-sh", "home", "sv-s", "sv-v"],
39
39
  "shinyReleased": false,
40
40
  "shinyLockedIn": ["swsh-sw", "swsh-sh", "sv-s", "sv-v"],
@@ -33,8 +33,8 @@
33
33
  "canDynamax": true,
34
34
  "canBeAlpha": false,
35
35
  "debutIn": "swsh",
36
- "obtainableIn": ["go", "swsh-sw", "swsh-sh", "sv-s", "sv-v"],
37
- "eventOnlyIn": [],
36
+ "obtainableIn": ["swsh-sw", "swsh-sh", "sv-s", "sv-v"],
37
+ "eventOnlyIn": ["go"],
38
38
  "storableIn": ["go", "swsh-sw", "swsh-sh", "home", "sv-s", "sv-v"],
39
39
  "shinyReleased": false,
40
40
  "shinyLockedIn": ["swsh-sw", "swsh-sh", "sv-s", "sv-v"],
@@ -32,8 +32,8 @@
32
32
  "canDynamax": true,
33
33
  "canBeAlpha": false,
34
34
  "debutIn": "swsh",
35
- "obtainableIn": ["go"],
36
- "eventOnlyIn": [],
35
+ "obtainableIn": [],
36
+ "eventOnlyIn": ["go"],
37
37
  "storableIn": ["go", "swsh-sw", "swsh-sh", "home", "sv-s", "sv-v"],
38
38
  "shinyReleased": false,
39
39
  "baseHp": 105,
@@ -31,8 +31,8 @@
31
31
  "canDynamax": true,
32
32
  "canBeAlpha": false,
33
33
  "debutIn": "usum",
34
- "obtainableIn": ["go"],
35
- "eventOnlyIn": ["lza"],
34
+ "obtainableIn": [],
35
+ "eventOnlyIn": ["lza", "go"],
36
36
  "storableIn": ["go", "usum-us", "usum-um", "swsh-sw", "swsh-sh", "home", "lza"],
37
37
  "shinyReleased": true,
38
38
  "shinyLockedIn": ["lza"],
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pokepc/dataset",
3
- "version": "7.1.0",
3
+ "version": "7.1.2",
4
4
  "homepage": "https://pokepc.github.io/dataset",
5
5
  "license": "MIT",
6
6
  "repository": {