@pokepc/dataset 6.3.0 → 6.4.0

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 (105) hide show
  1. package/README.md +73 -117
  2. package/build/lib/enums.d.mts +3 -0
  3. package/build/lib/enums.d.mts.map +1 -1
  4. package/build/lib/enums.mjs +3 -0
  5. package/build/lib/enums.mjs.map +1 -1
  6. package/build/lib/fs.d.mts +6 -6
  7. package/build/lib/schemas.d.mts +49 -49
  8. package/build/lib-next/_build.d.mts +1 -0
  9. package/build/lib-next/_build.mjs +32958 -0
  10. package/build/lib-next/_build.mjs.map +1 -0
  11. package/build/lib-next/enums.d.mts +54 -0
  12. package/build/lib-next/enums.d.mts.map +1 -0
  13. package/build/lib-next/enums.mjs +263 -0
  14. package/build/lib-next/enums.mjs.map +1 -0
  15. package/build/lib-next/languages.d.mts +40 -0
  16. package/build/lib-next/languages.d.mts.map +1 -0
  17. package/build/lib-next/languages.mjs +251 -0
  18. package/build/lib-next/languages.mjs.map +1 -0
  19. package/build/lib-next/schemas.d.mts +414 -0
  20. package/build/lib-next/schemas.d.mts.map +1 -0
  21. package/build/lib-next/schemas.mjs +92 -0
  22. package/build/lib-next/schemas.mjs.map +1 -0
  23. package/data/pokemon/archaludon.json +1 -1
  24. package/data/pokemon/dipplin.json +1 -1
  25. package/data/pokemon/fezandipiti.json +1 -1
  26. package/data/pokemon/gougingfire.json +1 -1
  27. package/data/pokemon/hydrapple.json +1 -1
  28. package/data/pokemon/ironboulder.json +1 -1
  29. package/data/pokemon/ironcrown.json +1 -1
  30. package/data/pokemon/munkidori.json +1 -1
  31. package/data/pokemon/ogerpon-cornerstone.json +1 -1
  32. package/data/pokemon/ogerpon-hearthflame.json +1 -1
  33. package/data/pokemon/ogerpon-wellspring.json +1 -1
  34. package/data/pokemon/ogerpon.json +1 -1
  35. package/data/pokemon/okidogi.json +1 -1
  36. package/data/pokemon/pecharunt.json +1 -1
  37. package/data/pokemon/ragingbolt.json +1 -1
  38. package/data/pokemon/sinistcha-masterpiece.json +1 -1
  39. package/data/pokemon/sinistcha.json +1 -1
  40. package/data/pokemon/terapagos-stellar.json +1 -1
  41. package/data/pokemon/terapagos-terastal.json +1 -1
  42. package/data/pokemon/terapagos.json +1 -1
  43. package/data/pokemon/ursaluna-bloodmoon.json +1 -1
  44. package/data-next/champions/abilities.json +1360 -0
  45. package/data-next/champions/battle-states.json +464 -0
  46. package/data-next/champions/i18n/chs/abilities.json +1360 -0
  47. package/data-next/champions/i18n/chs/battle-states.json +464 -0
  48. package/data-next/champions/i18n/chs/items.json +938 -0
  49. package/data-next/champions/i18n/chs/moves.json +5847 -0
  50. package/data-next/champions/i18n/chs/pokemon.json +2205 -0
  51. package/data-next/champions/i18n/cht/abilities.json +1360 -0
  52. package/data-next/champions/i18n/cht/battle-states.json +464 -0
  53. package/data-next/champions/i18n/cht/items.json +938 -0
  54. package/data-next/champions/i18n/cht/moves.json +5847 -0
  55. package/data-next/champions/i18n/cht/pokemon.json +2205 -0
  56. package/data-next/champions/i18n/deu/abilities.json +1360 -0
  57. package/data-next/champions/i18n/deu/battle-states.json +464 -0
  58. package/data-next/champions/i18n/deu/items.json +938 -0
  59. package/data-next/champions/i18n/deu/moves.json +5847 -0
  60. package/data-next/champions/i18n/deu/pokemon.json +2205 -0
  61. package/data-next/champions/i18n/eng/abilities.json +1360 -0
  62. package/data-next/champions/i18n/eng/battle-states.json +464 -0
  63. package/data-next/champions/i18n/eng/items.json +938 -0
  64. package/data-next/champions/i18n/eng/moves.json +5847 -0
  65. package/data-next/champions/i18n/eng/pokemon.json +2205 -0
  66. package/data-next/champions/i18n/es-es/abilities.json +1360 -0
  67. package/data-next/champions/i18n/es-es/battle-states.json +464 -0
  68. package/data-next/champions/i18n/es-es/items.json +938 -0
  69. package/data-next/champions/i18n/es-es/moves.json +5847 -0
  70. package/data-next/champions/i18n/es-es/pokemon.json +2205 -0
  71. package/data-next/champions/i18n/es-la/abilities.json +1360 -0
  72. package/data-next/champions/i18n/es-la/battle-states.json +464 -0
  73. package/data-next/champions/i18n/es-la/items.json +938 -0
  74. package/data-next/champions/i18n/es-la/moves.json +5847 -0
  75. package/data-next/champions/i18n/es-la/pokemon.json +2205 -0
  76. package/data-next/champions/i18n/fra/abilities.json +1360 -0
  77. package/data-next/champions/i18n/fra/battle-states.json +464 -0
  78. package/data-next/champions/i18n/fra/items.json +938 -0
  79. package/data-next/champions/i18n/fra/moves.json +5847 -0
  80. package/data-next/champions/i18n/fra/pokemon.json +2205 -0
  81. package/data-next/champions/i18n/ita/abilities.json +1360 -0
  82. package/data-next/champions/i18n/ita/battle-states.json +464 -0
  83. package/data-next/champions/i18n/ita/items.json +938 -0
  84. package/data-next/champions/i18n/ita/moves.json +5847 -0
  85. package/data-next/champions/i18n/ita/pokemon.json +2205 -0
  86. package/data-next/champions/i18n/jpn/abilities.json +1360 -0
  87. package/data-next/champions/i18n/jpn/battle-states.json +464 -0
  88. package/data-next/champions/i18n/jpn/items.json +938 -0
  89. package/data-next/champions/i18n/jpn/moves.json +5847 -0
  90. package/data-next/champions/i18n/jpn/pokemon.json +2205 -0
  91. package/data-next/champions/i18n/kor/abilities.json +1360 -0
  92. package/data-next/champions/i18n/kor/battle-states.json +464 -0
  93. package/data-next/champions/i18n/kor/items.json +938 -0
  94. package/data-next/champions/i18n/kor/moves.json +5847 -0
  95. package/data-next/champions/i18n/kor/pokemon.json +2205 -0
  96. package/data-next/champions/i18n/pt-br/abilities.json +1360 -0
  97. package/data-next/champions/i18n/pt-br/battle-states.json +464 -0
  98. package/data-next/champions/i18n/pt-br/items.json +938 -0
  99. package/data-next/champions/i18n/pt-br/moves.json +5847 -0
  100. package/data-next/champions/i18n/pt-br/pokemon.json +2205 -0
  101. package/data-next/champions/items.json +1055 -0
  102. package/data-next/champions/moves.json +14197 -0
  103. package/data-next/champions/pokemon-moves.json +14304 -0
  104. package/data-next/champions/pokemon.json +10000 -0
  105. package/package.json +16 -2
@@ -0,0 +1,54 @@
1
+ //#region src/lib-next/enums.d.ts
2
+ declare const gameTypes: readonly ["superset", "set", "game", "dlc"];
3
+ type GameType = (typeof gameTypes)[number];
4
+ declare const gameSeries: readonly ["main", "spinoff", "storage", "legends"];
5
+ type GameSeries = (typeof gameSeries)[number];
6
+ declare const gamePlatforms: readonly ["gb", "gbc", "gba", "nds", "3ds", "mobile", "ngc", "wii", "wiiu", "switch", "switch2"];
7
+ type GamePlatform = (typeof gamePlatforms)[number];
8
+ declare const pokemonTypes: readonly ["normal", "fire", "water", "electric", "grass", "ice", "fighting", "poison", "ground", "flying", "psychic", "bug", "rock", "ghost", "dragon", "dark", "steel", "fairy"];
9
+ declare const pokemonTypesInternalOrder: PokemonType[];
10
+ type PokemonType = (typeof pokemonTypes)[number];
11
+ declare const moveCategories: readonly ["physical", "special", "status"];
12
+ type MoveCategory = (typeof moveCategories)[number];
13
+ declare const moveClasses: readonly ["punching", "sound_based", "dance", "slicing", "wind", "powder", "ball_bomb", "pulse", "biting", "explosive", "mental", "healing"];
14
+ type MoveClass = (typeof moveClasses)[number];
15
+ declare const moveTargets: readonly ["single_target", "self", "single_ally", "all_allies", "random_opponent", "all_opponents", "entire_field", "opponents_side", "users_side", "all_pokemon", "varies"];
16
+ type MoveTarget = (typeof moveTargets)[number];
17
+ declare const statusConditions: readonly ["paralyzed", "frozen", "poisoned", "badly_poisoned", "burned", "asleep"];
18
+ type StatusCondition = (typeof statusConditions)[number];
19
+ declare const battleStates: string[];
20
+ type BattleState = (typeof battleStates)[number];
21
+ declare const itemCategories: readonly ["power_boost", "recovery", "defense", "stat_boost", "effect_extend", "berry", "other", "mega_stone"];
22
+ type ItemCategory = (typeof itemCategories)[number];
23
+ declare const bagCategories: readonly ["ball", "medicine", "battle", "berry", "machine", "mega_stone", "z_crystal", "treasure", "ingredient", "material", "key", "other"];
24
+ type BagCategory = (typeof bagCategories)[number];
25
+ declare const pokeballCategories: readonly ["regular", "special", "hisuian", "other"];
26
+ type PokeballCategory = (typeof pokeballCategories)[number];
27
+ declare const ribbonCategories: readonly ["league", "contest", "tower", "memory", "gift"];
28
+ type RibbonCategory = (typeof ribbonCategories)[number];
29
+ declare const statIds: readonly ["hp", "atk", "def", "spa", "spd", "spe", "acc", "eva"];
30
+ type StatId = (typeof statIds)[number];
31
+ declare const titleTypes: readonly ["ribbon", "mark", "custom"];
32
+ type TitleType = (typeof titleTypes)[number];
33
+ declare const pokemonSizes: readonly ["xs", "s", "m", "l", "xl"];
34
+ type PokemonSize = (typeof pokemonSizes)[number];
35
+ declare const genders: readonly ["m", "f"];
36
+ type Gender = (typeof genders)[number];
37
+ /**
38
+ * In most core series games:
39
+ * - IV of 0: "No good" (or "Not So Good" in Let's GO)
40
+ * - IV range of 1-15: "Decent" (or "OK" in Let's GO)
41
+ * - IV range of 16-25: "Pretty good" (or "Good" in Let's GO)
42
+ * - IV range 26-29: "Very good"
43
+ * - IV of 30: "Fantastic"
44
+ * - IV of 31: "Best"
45
+ * */
46
+ declare const ivJudgeValues: readonly ["nogood", "decent", "good", "verygood", "fantastic", "best"];
47
+ type IvJudgeValue = (typeof ivJudgeValues)[number];
48
+ declare const battleStyles: readonly ["singles", "doubles", "triples", "rotation", "royale"];
49
+ type BattleStyle = (typeof battleStyles)[number];
50
+ declare const raidStyles: readonly ["dynamax", "tera"];
51
+ type RaidStyle = (typeof raidStyles)[number];
52
+ //#endregion
53
+ export { BagCategory, BattleState, BattleStyle, GamePlatform, GameSeries, GameType, Gender, ItemCategory, IvJudgeValue, MoveCategory, MoveClass, MoveTarget, PokeballCategory, PokemonSize, PokemonType, RaidStyle, RibbonCategory, StatId, StatusCondition, TitleType, bagCategories, battleStates, battleStyles, gamePlatforms, gameSeries, gameTypes, genders, itemCategories, ivJudgeValues, moveCategories, moveClasses, moveTargets, pokeballCategories, pokemonSizes, pokemonTypes, pokemonTypesInternalOrder, raidStyles, ribbonCategories, statIds, statusConditions, titleTypes };
54
+ //# sourceMappingURL=enums.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enums.d.mts","names":[],"sources":["../../src/lib-next/enums.ts"],"mappings":";cAAa,SAAA;AAAA,KACD,QAAA,WAAmB,SAAS;AAAA,cAE3B,UAAA;AAAA,KACD,UAAA,WAAqB,UAAU;AAAA,cAE9B,aAAA;AAAA,KAaD,YAAA,WAAuB,aAAa;AAAA,cAEnC,YAAA;AAAA,cAqBA,yBAAA,EAA2B,WAAW;AAAA,KAoBvC,WAAA,WAAsB,YAAY;AAAA,cAEjC,cAAA;AAAA,KACD,YAAA,WAAuB,cAAc;AAAA,cAEpC,WAAA;AAAA,KAcD,SAAA,WAAoB,WAAW;AAAA,cAE9B,WAAA;AAAA,KAaD,UAAA,WAAqB,WAAW;AAAA,cAE/B,gBAAA;AAAA,KAQD,eAAA,WAA0B,gBAAgB;AAAA,cAEzC,YAAA;AAAA,KAoED,WAAA,WAAsB,YAAY;AAAA,cAEjC,cAAA;AAAA,KAUD,YAAA,WAAuB,cAAc;AAAA,cAEpC,aAAA;AAAA,KAcD,WAAA,WAAsB,aAAa;AAAA,cAElC,kBAAA;AAAA,KACD,gBAAA,WAA2B,kBAAkB;AAAA,cAE5C,gBAAA;AAAA,KACD,cAAA,WAAyB,gBAAgB;AAAA,cAExC,OAAA;AAAA,KACD,MAAA,WAAiB,OAAO;AAAA,cAEvB,UAAA;AAAA,KACD,SAAA,WAAoB,UAAU;AAAA,cAE7B,YAAA;AAAA,KACD,WAAA,WAAsB,YAAY;AAAA,cAEjC,OAAA;AAAA,KACD,MAAA,WAAiB,OAAO;AAtL1B;AAEV;;;;AAAmD;AAoBnD;;;AAtBU,cAiMG,aAAA;AAAA,KACD,YAAA,WAAuB,aAAa;AAAA,cAEnC,YAAA;AAAA,KACD,WAAA,WAAsB,YAAY;AAAA,cAEjC,UAAA;AAAA,KACD,SAAA,WAAoB,UAAU"}
@@ -0,0 +1,263 @@
1
+ //#region src/lib-next/enums.ts
2
+ const gameTypes = [
3
+ "superset",
4
+ "set",
5
+ "game",
6
+ "dlc"
7
+ ];
8
+ const gameSeries = [
9
+ "main",
10
+ "spinoff",
11
+ "storage",
12
+ "legends"
13
+ ];
14
+ const gamePlatforms = [
15
+ "gb",
16
+ "gbc",
17
+ "gba",
18
+ "nds",
19
+ "3ds",
20
+ "mobile",
21
+ "ngc",
22
+ "wii",
23
+ "wiiu",
24
+ "switch",
25
+ "switch2"
26
+ ];
27
+ const pokemonTypes = [
28
+ "normal",
29
+ "fire",
30
+ "water",
31
+ "electric",
32
+ "grass",
33
+ "ice",
34
+ "fighting",
35
+ "poison",
36
+ "ground",
37
+ "flying",
38
+ "psychic",
39
+ "bug",
40
+ "rock",
41
+ "ghost",
42
+ "dragon",
43
+ "dark",
44
+ "steel",
45
+ "fairy"
46
+ ];
47
+ const pokemonTypesInternalOrder = [
48
+ "normal",
49
+ "fighting",
50
+ "flying",
51
+ "poison",
52
+ "ground",
53
+ "rock",
54
+ "bug",
55
+ "ghost",
56
+ "steel",
57
+ "fire",
58
+ "water",
59
+ "grass",
60
+ "electric",
61
+ "psychic",
62
+ "ice",
63
+ "dragon",
64
+ "dark",
65
+ "fairy"
66
+ ];
67
+ const moveCategories = [
68
+ "physical",
69
+ "special",
70
+ "status"
71
+ ];
72
+ const moveClasses = [
73
+ "punching",
74
+ "sound_based",
75
+ "dance",
76
+ "slicing",
77
+ "wind",
78
+ "powder",
79
+ "ball_bomb",
80
+ "pulse",
81
+ "biting",
82
+ "explosive",
83
+ "mental",
84
+ "healing"
85
+ ];
86
+ const moveTargets = [
87
+ "single_target",
88
+ "self",
89
+ "single_ally",
90
+ "all_allies",
91
+ "random_opponent",
92
+ "all_opponents",
93
+ "entire_field",
94
+ "opponents_side",
95
+ "users_side",
96
+ "all_pokemon",
97
+ "varies"
98
+ ];
99
+ const statusConditions = [
100
+ "paralyzed",
101
+ "frozen",
102
+ "poisoned",
103
+ "badly_poisoned",
104
+ "burned",
105
+ "asleep"
106
+ ];
107
+ const battleStates = [
108
+ "harsh_sunlight",
109
+ "rain",
110
+ "sandstorm",
111
+ "snow",
112
+ "electric_terrain",
113
+ "grassy_terrain",
114
+ "misty_terrain",
115
+ "trick_room",
116
+ "magic_room",
117
+ "wonder_room",
118
+ "critical_hit_ratio_boost",
119
+ "confused",
120
+ "infatuated",
121
+ "drowsy",
122
+ "encore",
123
+ "no_ability",
124
+ "unable_to_repeat",
125
+ "tailwind",
126
+ "move_disabled",
127
+ "cant_escape",
128
+ "locked_on",
129
+ "electric_boost",
130
+ "gravity",
131
+ "safeguard",
132
+ "stealth_rock",
133
+ "stockpiling",
134
+ "taunted",
135
+ "magnet_rise",
136
+ "toxic_spikes",
137
+ "wish",
138
+ "sticky_web",
139
+ "ingrained",
140
+ "cursed",
141
+ "trick_or_treating",
142
+ "light_screen",
143
+ "reflect",
144
+ "sealing_off",
145
+ "perishing",
146
+ "spikes",
147
+ "destiny_bound",
148
+ "forest_cursed",
149
+ "leech_seeded",
150
+ "bound",
151
+ "rampaging",
152
+ "badly_poisoned",
153
+ "future_attack",
154
+ "uproar",
155
+ "aqua_ring",
156
+ "landed",
157
+ "fairy_locked",
158
+ "psychic_terrain",
159
+ "throat_chopped",
160
+ "aurora_veil",
161
+ "salt_cured",
162
+ "syrupy",
163
+ "healing_prevented",
164
+ "recharging",
165
+ "charging",
166
+ "sky_high",
167
+ "submerged",
168
+ "underground",
169
+ "concealed",
170
+ "minimized",
171
+ "atk_def_swapped",
172
+ "flash_fire",
173
+ "micle_berry"
174
+ ];
175
+ const itemCategories = [
176
+ "power_boost",
177
+ "recovery",
178
+ "defense",
179
+ "stat_boost",
180
+ "effect_extend",
181
+ "berry",
182
+ "other",
183
+ "mega_stone"
184
+ ];
185
+ const bagCategories = [
186
+ "ball",
187
+ "medicine",
188
+ "battle",
189
+ "berry",
190
+ "machine",
191
+ "mega_stone",
192
+ "z_crystal",
193
+ "treasure",
194
+ "ingredient",
195
+ "material",
196
+ "key",
197
+ "other"
198
+ ];
199
+ const pokeballCategories = [
200
+ "regular",
201
+ "special",
202
+ "hisuian",
203
+ "other"
204
+ ];
205
+ const ribbonCategories = [
206
+ "league",
207
+ "contest",
208
+ "tower",
209
+ "memory",
210
+ "gift"
211
+ ];
212
+ const statIds = [
213
+ "hp",
214
+ "atk",
215
+ "def",
216
+ "spa",
217
+ "spd",
218
+ "spe",
219
+ "acc",
220
+ "eva"
221
+ ];
222
+ const titleTypes = [
223
+ "ribbon",
224
+ "mark",
225
+ "custom"
226
+ ];
227
+ const pokemonSizes = [
228
+ "xs",
229
+ "s",
230
+ "m",
231
+ "l",
232
+ "xl"
233
+ ];
234
+ const genders = ["m", "f"];
235
+ /**
236
+ * In most core series games:
237
+ * - IV of 0: "No good" (or "Not So Good" in Let's GO)
238
+ * - IV range of 1-15: "Decent" (or "OK" in Let's GO)
239
+ * - IV range of 16-25: "Pretty good" (or "Good" in Let's GO)
240
+ * - IV range 26-29: "Very good"
241
+ * - IV of 30: "Fantastic"
242
+ * - IV of 31: "Best"
243
+ * */
244
+ const ivJudgeValues = [
245
+ "nogood",
246
+ "decent",
247
+ "good",
248
+ "verygood",
249
+ "fantastic",
250
+ "best"
251
+ ];
252
+ const battleStyles = [
253
+ "singles",
254
+ "doubles",
255
+ "triples",
256
+ "rotation",
257
+ "royale"
258
+ ];
259
+ const raidStyles = ["dynamax", "tera"];
260
+ //#endregion
261
+ export { bagCategories, battleStates, battleStyles, gamePlatforms, gameSeries, gameTypes, genders, itemCategories, ivJudgeValues, moveCategories, moveClasses, moveTargets, pokeballCategories, pokemonSizes, pokemonTypes, pokemonTypesInternalOrder, raidStyles, ribbonCategories, statIds, statusConditions, titleTypes };
262
+
263
+ //# sourceMappingURL=enums.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enums.mjs","names":[],"sources":["../../src/lib-next/enums.ts"],"sourcesContent":["export const gameTypes = ['superset', 'set', 'game', 'dlc'] as const\nexport type GameType = (typeof gameTypes)[number]\n\nexport const gameSeries = ['main', 'spinoff', 'storage', 'legends'] as const\nexport type GameSeries = (typeof gameSeries)[number]\n\nexport const gamePlatforms = [\n 'gb',\n 'gbc',\n 'gba',\n 'nds',\n '3ds',\n 'mobile',\n 'ngc',\n 'wii',\n 'wiiu',\n 'switch',\n 'switch2',\n] as const\nexport type GamePlatform = (typeof gamePlatforms)[number]\n\nexport const pokemonTypes = [\n 'normal',\n 'fire',\n 'water',\n 'electric',\n 'grass',\n 'ice',\n 'fighting',\n 'poison',\n 'ground',\n 'flying',\n 'psychic',\n 'bug',\n 'rock',\n 'ghost',\n 'dragon',\n 'dark',\n 'steel',\n 'fairy',\n] as const\n\nexport const pokemonTypesInternalOrder: PokemonType[] = [\n 'normal',\n 'fighting',\n 'flying',\n 'poison',\n 'ground',\n 'rock',\n 'bug',\n 'ghost',\n 'steel',\n 'fire',\n 'water',\n 'grass',\n 'electric',\n 'psychic',\n 'ice',\n 'dragon',\n 'dark',\n 'fairy',\n]\nexport type PokemonType = (typeof pokemonTypes)[number]\n\nexport const moveCategories = ['physical', 'special', 'status'] as const\nexport type MoveCategory = (typeof moveCategories)[number]\n\nexport const moveClasses = [\n 'punching',\n 'sound_based',\n 'dance',\n 'slicing',\n 'wind',\n 'powder',\n 'ball_bomb',\n 'pulse',\n 'biting',\n 'explosive',\n 'mental',\n 'healing',\n] as const\nexport type MoveClass = (typeof moveClasses)[number]\n\nexport const moveTargets = [\n 'single_target',\n 'self',\n 'single_ally',\n 'all_allies',\n 'random_opponent',\n 'all_opponents',\n 'entire_field',\n 'opponents_side',\n 'users_side',\n 'all_pokemon',\n 'varies',\n] as const\nexport type MoveTarget = (typeof moveTargets)[number]\n\nexport const statusConditions = [\n 'paralyzed',\n 'frozen',\n 'poisoned',\n 'badly_poisoned',\n 'burned',\n 'asleep',\n] as const\nexport type StatusCondition = (typeof statusConditions)[number]\n\nexport const battleStates = [\n 'harsh_sunlight',\n 'rain',\n 'sandstorm',\n 'snow',\n 'electric_terrain',\n 'grassy_terrain',\n 'misty_terrain',\n 'trick_room',\n 'magic_room',\n 'wonder_room',\n 'critical_hit_ratio_boost',\n 'confused',\n 'infatuated',\n 'drowsy',\n 'encore',\n 'no_ability',\n 'unable_to_repeat',\n 'tailwind',\n 'move_disabled',\n 'cant_escape',\n 'locked_on',\n 'electric_boost',\n 'gravity',\n 'safeguard',\n 'stealth_rock',\n 'stockpiling',\n 'taunted',\n 'magnet_rise',\n 'toxic_spikes',\n 'wish',\n 'sticky_web',\n 'ingrained',\n 'cursed',\n 'trick_or_treating',\n 'light_screen',\n 'reflect',\n 'sealing_off',\n 'perishing',\n 'spikes',\n 'destiny_bound',\n 'forest_cursed',\n 'leech_seeded',\n 'bound',\n 'rampaging',\n 'badly_poisoned',\n 'future_attack',\n 'uproar',\n 'aqua_ring',\n 'landed',\n 'fairy_locked',\n 'psychic_terrain',\n 'throat_chopped',\n 'aurora_veil',\n 'salt_cured',\n 'syrupy',\n 'healing_prevented',\n 'recharging',\n 'charging',\n 'sky_high',\n 'submerged',\n 'underground',\n 'concealed',\n 'minimized',\n 'atk_def_swapped',\n 'flash_fire',\n 'micle_berry',\n]\nexport type BattleState = (typeof battleStates)[number]\n\nexport const itemCategories = [\n 'power_boost',\n 'recovery',\n 'defense',\n 'stat_boost',\n 'effect_extend',\n 'berry',\n 'other',\n 'mega_stone',\n] as const\nexport type ItemCategory = (typeof itemCategories)[number]\n\nexport const bagCategories = [\n 'ball',\n 'medicine',\n 'battle',\n 'berry',\n 'machine',\n 'mega_stone',\n 'z_crystal',\n 'treasure',\n 'ingredient',\n 'material',\n 'key',\n 'other',\n] as const\nexport type BagCategory = (typeof bagCategories)[number]\n\nexport const pokeballCategories = ['regular', 'special', 'hisuian', 'other'] as const\nexport type PokeballCategory = (typeof pokeballCategories)[number]\n\nexport const ribbonCategories = ['league', 'contest', 'tower', 'memory', 'gift'] as const\nexport type RibbonCategory = (typeof ribbonCategories)[number]\n\nexport const statIds = ['hp', 'atk', 'def', 'spa', 'spd', 'spe', 'acc', 'eva'] as const\nexport type StatId = (typeof statIds)[number]\n\nexport const titleTypes = ['ribbon', 'mark', 'custom'] as const\nexport type TitleType = (typeof titleTypes)[number]\n\nexport const pokemonSizes = ['xs', 's', 'm', 'l', 'xl'] as const\nexport type PokemonSize = (typeof pokemonSizes)[number]\n\nexport const genders = ['m', 'f'] as const // m: male, f: female, null/undefined: genderless\nexport type Gender = (typeof genders)[number]\n\n/**\n * In most core series games:\n * - IV of 0: \"No good\" (or \"Not So Good\" in Let's GO)\n * - IV range of 1-15: \"Decent\" (or \"OK\" in Let's GO)\n * - IV range of 16-25: \"Pretty good\" (or \"Good\" in Let's GO)\n * - IV range 26-29: \"Very good\"\n * - IV of 30: \"Fantastic\"\n * - IV of 31: \"Best\"\n * */\nexport const ivJudgeValues = ['nogood', 'decent', 'good', 'verygood', 'fantastic', 'best'] as const\nexport type IvJudgeValue = (typeof ivJudgeValues)[number]\n\nexport const battleStyles = ['singles', 'doubles', 'triples', 'rotation', 'royale'] as const\nexport type BattleStyle = (typeof battleStyles)[number]\n\nexport const raidStyles = ['dynamax', 'tera'] as const\nexport type RaidStyle = (typeof raidStyles)[number]\n"],"mappings":";AAAA,MAAa,YAAY;CAAC;CAAY;CAAO;CAAQ;AAAK;AAG1D,MAAa,aAAa;CAAC;CAAQ;CAAW;CAAW;AAAS;AAGlE,MAAa,gBAAgB;CAC3B;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACF;AAGA,MAAa,eAAe;CAC1B;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACF;AAEA,MAAa,4BAA2C;CACtD;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACF;AAGA,MAAa,iBAAiB;CAAC;CAAY;CAAW;AAAQ;AAG9D,MAAa,cAAc;CACzB;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACF;AAGA,MAAa,cAAc;CACzB;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACF;AAGA,MAAa,mBAAmB;CAC9B;CACA;CACA;CACA;CACA;CACA;AACF;AAGA,MAAa,eAAe;CAC1B;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACF;AAGA,MAAa,iBAAiB;CAC5B;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACF;AAGA,MAAa,gBAAgB;CAC3B;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACF;AAGA,MAAa,qBAAqB;CAAC;CAAW;CAAW;CAAW;AAAO;AAG3E,MAAa,mBAAmB;CAAC;CAAU;CAAW;CAAS;CAAU;AAAM;AAG/E,MAAa,UAAU;CAAC;CAAM;CAAO;CAAO;CAAO;CAAO;CAAO;CAAO;AAAK;AAG7E,MAAa,aAAa;CAAC;CAAU;CAAQ;AAAQ;AAGrD,MAAa,eAAe;CAAC;CAAM;CAAK;CAAK;CAAK;AAAI;AAGtD,MAAa,UAAU,CAAC,KAAK,GAAG;;;;;;;;;;AAYhC,MAAa,gBAAgB;CAAC;CAAU;CAAU;CAAQ;CAAY;CAAa;AAAM;AAGzF,MAAa,eAAe;CAAC;CAAW;CAAW;CAAW;CAAY;AAAQ;AAGlF,MAAa,aAAa,CAAC,WAAW,MAAM"}
@@ -0,0 +1,40 @@
1
+ //#region src/lib-next/languages.d.ts
2
+ declare const browserLocales: readonly ["en", "es", "es-419", "de", "it", "fr", "ko", "ja", "zh-tw", "zh-cn", "pt-br"];
3
+ type BrowserLocale = (typeof browserLocales)[number];
4
+ declare const DEFAULT_LOCALE: BrowserLocale;
5
+ declare const gameLocales: readonly ["ENG", "ES-ES", "ES-LA", "FRA", "DEU", "ITA", "JPN", "KOR", "CHT", "CHS", "PT-BR"];
6
+ type GameLocale = (typeof gameLocales)[number];
7
+ declare const DEFAULT_GAME_LOCALE: GameLocale;
8
+ declare const langSlugs: readonly ["en", "es", "mx", "de", "it", "fr", "kr", "jp", "tw", "cn", "br"];
9
+ type LangSlug = (typeof langSlugs)[number];
10
+ declare const DEFAULT_LANG_SLUG: LangSlug;
11
+ declare const browserLocaleMap: Record<BrowserLocale, {
12
+ slug: LangSlug;
13
+ gameLocale: GameLocale;
14
+ }>;
15
+ declare const gameLocaleMap: Record<GameLocale, {
16
+ slug: LangSlug;
17
+ browserLocale: BrowserLocale;
18
+ }>;
19
+ declare const langSlugMap: Record<LangSlug, {
20
+ gameLocale: GameLocale;
21
+ browserLocale: BrowserLocale;
22
+ }>;
23
+ declare const langMeta: Record<LangSlug, {
24
+ name: string;
25
+ engName: string;
26
+ flag: string;
27
+ }>;
28
+ type LangInfo = {
29
+ slug: LangSlug;
30
+ locale: BrowserLocale;
31
+ gameLocale: GameLocale;
32
+ name: string;
33
+ engName: string;
34
+ flag: string;
35
+ };
36
+ declare const appLangs: LangInfo[];
37
+ declare const appLangsBySlug: Record<LangSlug, LangInfo>;
38
+ //#endregion
39
+ export { BrowserLocale, DEFAULT_GAME_LOCALE, DEFAULT_LANG_SLUG, DEFAULT_LOCALE, GameLocale, LangInfo, LangSlug, appLangs, appLangsBySlug, browserLocaleMap, browserLocales, gameLocaleMap, gameLocales, langMeta, langSlugMap, langSlugs };
40
+ //# sourceMappingURL=languages.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"languages.d.mts","names":[],"sources":["../../src/lib-next/languages.ts"],"mappings":";cACa,cAAA;AAAA,KAaD,aAAA,WAAwB,cAAc;AAAA,cACrC,cAAA,EAAgB,aAAoB;AAAA,cAGpC,WAAA;AAAA,KAaD,UAAA,WAAqB,WAAW;AAAA,cAC/B,mBAAA,EAAqB,UAAkB;AAAA,cAIvC,SAAA;AAAA,KAaD,QAAA,WAAmB,SAAS;AAAA,cAC3B,iBAAA,EAAmB,QAAe;AAAA,cAElC,gBAAA,EAAkB,MAAA,CAAO,aAAA;EAAiB,IAAA,EAAM,QAAA;EAAU,UAAA,EAAY,UAAA;AAAA;AAAA,cAatE,aAAA,EAAe,MAAA,CAAO,UAAA;EAAc,IAAA,EAAM,QAAA;EAAU,aAAA,EAAe,aAAA;AAAA;AAAA,cAcnE,WAAA,EAAa,MAAA,CACxB,QAAA;EACE,UAAA,EAAY,UAAA;EAAY,aAAA,EAAe,aAAA;AAAA;AAAA,cAe9B,QAAA,EAAU,MAAM,CAAC,QAAA;EAAY,IAAA;EAAc,OAAA;EAAiB,IAAA;AAAA;AAAA,KAc7D,QAAA;EACV,IAAA,EAAM,QAAA;EACN,MAAA,EAAQ,aAAA;EACR,UAAA,EAAY,UAAA;EACZ,IAAA;EACA,OAAA;EACA,IAAA;AAAA;AAAA,cAGW,QAAA,EAAU,QAAQ;AAAA,cASlB,cAAA,EAER,MAAA,CAAO,QAAA,EAAU,QAAA"}
@@ -0,0 +1,251 @@
1
+ //#region src/lib-next/languages.ts
2
+ const browserLocales = [
3
+ "en",
4
+ "es",
5
+ "es-419",
6
+ "de",
7
+ "it",
8
+ "fr",
9
+ "ko",
10
+ "ja",
11
+ "zh-tw",
12
+ "zh-cn",
13
+ "pt-br"
14
+ ];
15
+ const DEFAULT_LOCALE = "en";
16
+ const gameLocales = [
17
+ "ENG",
18
+ "ES-ES",
19
+ "ES-LA",
20
+ "FRA",
21
+ "DEU",
22
+ "ITA",
23
+ "JPN",
24
+ "KOR",
25
+ "CHT",
26
+ "CHS",
27
+ "PT-BR"
28
+ ];
29
+ const DEFAULT_GAME_LOCALE = "ENG";
30
+ const langSlugs = [
31
+ "en",
32
+ "es",
33
+ "mx",
34
+ "de",
35
+ "it",
36
+ "fr",
37
+ "kr",
38
+ "jp",
39
+ "tw",
40
+ "cn",
41
+ "br"
42
+ ];
43
+ const DEFAULT_LANG_SLUG = "en";
44
+ const browserLocaleMap = {
45
+ en: {
46
+ slug: "en",
47
+ gameLocale: "ENG"
48
+ },
49
+ es: {
50
+ slug: "es",
51
+ gameLocale: "ES-ES"
52
+ },
53
+ "es-419": {
54
+ slug: "mx",
55
+ gameLocale: "ES-LA"
56
+ },
57
+ de: {
58
+ slug: "de",
59
+ gameLocale: "DEU"
60
+ },
61
+ it: {
62
+ slug: "it",
63
+ gameLocale: "ITA"
64
+ },
65
+ fr: {
66
+ slug: "fr",
67
+ gameLocale: "FRA"
68
+ },
69
+ ko: {
70
+ slug: "kr",
71
+ gameLocale: "KOR"
72
+ },
73
+ ja: {
74
+ slug: "jp",
75
+ gameLocale: "JPN"
76
+ },
77
+ "zh-tw": {
78
+ slug: "tw",
79
+ gameLocale: "CHT"
80
+ },
81
+ "zh-cn": {
82
+ slug: "cn",
83
+ gameLocale: "CHS"
84
+ },
85
+ "pt-br": {
86
+ slug: "br",
87
+ gameLocale: "PT-BR"
88
+ }
89
+ };
90
+ const gameLocaleMap = {
91
+ ENG: {
92
+ slug: "en",
93
+ browserLocale: "en"
94
+ },
95
+ "ES-ES": {
96
+ slug: "es",
97
+ browserLocale: "es"
98
+ },
99
+ "ES-LA": {
100
+ slug: "mx",
101
+ browserLocale: "es-419"
102
+ },
103
+ DEU: {
104
+ slug: "de",
105
+ browserLocale: "de"
106
+ },
107
+ ITA: {
108
+ slug: "it",
109
+ browserLocale: "it"
110
+ },
111
+ FRA: {
112
+ slug: "fr",
113
+ browserLocale: "fr"
114
+ },
115
+ KOR: {
116
+ slug: "kr",
117
+ browserLocale: "ko"
118
+ },
119
+ JPN: {
120
+ slug: "jp",
121
+ browserLocale: "ja"
122
+ },
123
+ CHT: {
124
+ slug: "tw",
125
+ browserLocale: "zh-tw"
126
+ },
127
+ CHS: {
128
+ slug: "cn",
129
+ browserLocale: "zh-cn"
130
+ },
131
+ "PT-BR": {
132
+ slug: "br",
133
+ browserLocale: "pt-br"
134
+ }
135
+ };
136
+ const langSlugMap = {
137
+ en: {
138
+ gameLocale: "ENG",
139
+ browserLocale: "en"
140
+ },
141
+ es: {
142
+ gameLocale: "ES-ES",
143
+ browserLocale: "es"
144
+ },
145
+ mx: {
146
+ gameLocale: "ES-LA",
147
+ browserLocale: "es-419"
148
+ },
149
+ de: {
150
+ gameLocale: "DEU",
151
+ browserLocale: "de"
152
+ },
153
+ it: {
154
+ gameLocale: "ITA",
155
+ browserLocale: "it"
156
+ },
157
+ fr: {
158
+ gameLocale: "FRA",
159
+ browserLocale: "fr"
160
+ },
161
+ kr: {
162
+ gameLocale: "KOR",
163
+ browserLocale: "ko"
164
+ },
165
+ jp: {
166
+ gameLocale: "JPN",
167
+ browserLocale: "ja"
168
+ },
169
+ tw: {
170
+ gameLocale: "CHT",
171
+ browserLocale: "zh-tw"
172
+ },
173
+ cn: {
174
+ gameLocale: "CHS",
175
+ browserLocale: "zh-cn"
176
+ },
177
+ br: {
178
+ gameLocale: "PT-BR",
179
+ browserLocale: "pt-br"
180
+ }
181
+ };
182
+ const langMeta = {
183
+ en: {
184
+ name: "English",
185
+ engName: "English",
186
+ flag: "🇺🇸"
187
+ },
188
+ es: {
189
+ name: "Español",
190
+ engName: "Spanish",
191
+ flag: "🇪🇸"
192
+ },
193
+ mx: {
194
+ name: "Español (Latinoamérica)",
195
+ engName: "Spanish (Latin America)",
196
+ flag: "🇲🇽"
197
+ },
198
+ de: {
199
+ name: "Deutsch",
200
+ engName: "German",
201
+ flag: "🇩🇪"
202
+ },
203
+ it: {
204
+ name: "Italiano",
205
+ engName: "Italian",
206
+ flag: "🇮🇹"
207
+ },
208
+ fr: {
209
+ name: "Français",
210
+ engName: "French",
211
+ flag: "🇫🇷"
212
+ },
213
+ kr: {
214
+ name: "한국어",
215
+ engName: "Korean",
216
+ flag: "🇰🇷"
217
+ },
218
+ jp: {
219
+ name: "日本語",
220
+ engName: "Japanese",
221
+ flag: "🇯🇵"
222
+ },
223
+ tw: {
224
+ name: "繁體中文",
225
+ engName: "Traditional Chinese",
226
+ flag: "🇹🇼"
227
+ },
228
+ cn: {
229
+ name: "简体中文",
230
+ engName: "Simplified Chinese",
231
+ flag: "🇨🇳"
232
+ },
233
+ br: {
234
+ name: "Português (Brasil)",
235
+ engName: "Portuguese (Brazil)",
236
+ flag: "🇧🇷"
237
+ }
238
+ };
239
+ const appLangs = browserLocales.map((locale) => ({
240
+ slug: browserLocaleMap[locale].slug,
241
+ locale,
242
+ gameLocale: browserLocaleMap[locale].gameLocale,
243
+ name: langMeta[browserLocaleMap[locale].slug].name,
244
+ engName: langMeta[browserLocaleMap[locale].slug].engName,
245
+ flag: langMeta[browserLocaleMap[locale].slug].flag
246
+ }));
247
+ const appLangsBySlug = Object.fromEntries(Object.values(appLangs).map((info) => [info.slug, info]));
248
+ //#endregion
249
+ export { DEFAULT_GAME_LOCALE, DEFAULT_LANG_SLUG, DEFAULT_LOCALE, appLangs, appLangsBySlug, browserLocaleMap, browserLocales, gameLocaleMap, gameLocales, langMeta, langSlugMap, langSlugs };
250
+
251
+ //# sourceMappingURL=languages.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"languages.mjs","names":[],"sources":["../../src/lib-next/languages.ts"],"sourcesContent":["// Browser-compatible locales\nexport const browserLocales = [\n 'en',\n 'es',\n 'es-419', // official code for ES-LATAM\n 'de',\n 'it',\n 'fr',\n 'ko',\n 'ja',\n 'zh-tw',\n 'zh-cn',\n 'pt-br',\n] as const\nexport type BrowserLocale = (typeof browserLocales)[number]\nexport const DEFAULT_LOCALE: BrowserLocale = 'en'\n\n// In-game locale codes (in their lang)\nexport const gameLocales = [\n 'ENG',\n 'ES-ES',\n 'ES-LA',\n 'FRA',\n 'DEU',\n 'ITA',\n 'JPN',\n 'KOR',\n 'CHT',\n 'CHS',\n 'PT-BR',\n] as const\nexport type GameLocale = (typeof gameLocales)[number]\nexport const DEFAULT_GAME_LOCALE: GameLocale = 'ENG'\n\n// These are 2-char codes commonly used in website URLs and domains\n// Use them in URL paths, DB, etc. but not in HTML lang attributes (use locale instead)\nexport const langSlugs = [\n 'en',\n 'es',\n 'mx', // latam spanish (mexican spanish is the standard basis for es-419/ES-LA)\n 'de',\n 'it',\n 'fr',\n 'kr',\n 'jp',\n 'tw', // traditional chinese (taiwanese)\n 'cn', // simplified chinese (mainland)\n 'br', // brazilian portuguese\n] as const\nexport type LangSlug = (typeof langSlugs)[number]\nexport const DEFAULT_LANG_SLUG: LangSlug = 'en'\n\nexport const browserLocaleMap: Record<BrowserLocale, { slug: LangSlug; gameLocale: GameLocale }> = {\n en: { slug: 'en', gameLocale: 'ENG' },\n es: { slug: 'es', gameLocale: 'ES-ES' },\n 'es-419': { slug: 'mx', gameLocale: 'ES-LA' },\n de: { slug: 'de', gameLocale: 'DEU' },\n it: { slug: 'it', gameLocale: 'ITA' },\n fr: { slug: 'fr', gameLocale: 'FRA' },\n ko: { slug: 'kr', gameLocale: 'KOR' },\n ja: { slug: 'jp', gameLocale: 'JPN' },\n 'zh-tw': { slug: 'tw', gameLocale: 'CHT' },\n 'zh-cn': { slug: 'cn', gameLocale: 'CHS' },\n 'pt-br': { slug: 'br', gameLocale: 'PT-BR' },\n}\nexport const gameLocaleMap: Record<GameLocale, { slug: LangSlug; browserLocale: BrowserLocale }> = {\n ENG: { slug: 'en', browserLocale: 'en' },\n 'ES-ES': { slug: 'es', browserLocale: 'es' },\n 'ES-LA': { slug: 'mx', browserLocale: 'es-419' },\n DEU: { slug: 'de', browserLocale: 'de' },\n ITA: { slug: 'it', browserLocale: 'it' },\n FRA: { slug: 'fr', browserLocale: 'fr' },\n KOR: { slug: 'kr', browserLocale: 'ko' },\n JPN: { slug: 'jp', browserLocale: 'ja' },\n CHT: { slug: 'tw', browserLocale: 'zh-tw' },\n CHS: { slug: 'cn', browserLocale: 'zh-cn' },\n 'PT-BR': { slug: 'br', browserLocale: 'pt-br' },\n}\n\nexport const langSlugMap: Record<\n LangSlug,\n { gameLocale: GameLocale; browserLocale: BrowserLocale }\n> = {\n en: { gameLocale: 'ENG', browserLocale: 'en' },\n es: { gameLocale: 'ES-ES', browserLocale: 'es' },\n mx: { gameLocale: 'ES-LA', browserLocale: 'es-419' },\n de: { gameLocale: 'DEU', browserLocale: 'de' },\n it: { gameLocale: 'ITA', browserLocale: 'it' },\n fr: { gameLocale: 'FRA', browserLocale: 'fr' },\n kr: { gameLocale: 'KOR', browserLocale: 'ko' },\n jp: { gameLocale: 'JPN', browserLocale: 'ja' },\n tw: { gameLocale: 'CHT', browserLocale: 'zh-tw' },\n cn: { gameLocale: 'CHS', browserLocale: 'zh-cn' },\n br: { gameLocale: 'PT-BR', browserLocale: 'pt-br' },\n}\n\nexport const langMeta: Record<LangSlug, { name: string; engName: string; flag: string }> = {\n en: { name: 'English', engName: 'English', flag: '🇺🇸' },\n es: { name: 'Español', engName: 'Spanish', flag: '🇪🇸' },\n mx: { name: 'Español (Latinoamérica)', engName: 'Spanish (Latin America)', flag: '🇲🇽' },\n de: { name: 'Deutsch', engName: 'German', flag: '🇩🇪' },\n it: { name: 'Italiano', engName: 'Italian', flag: '🇮🇹' },\n fr: { name: 'Français', engName: 'French', flag: '🇫🇷' },\n kr: { name: '한국어', engName: 'Korean', flag: '🇰🇷' },\n jp: { name: '日本語', engName: 'Japanese', flag: '🇯🇵' },\n tw: { name: '繁體中文', engName: 'Traditional Chinese', flag: '🇹🇼' },\n cn: { name: '简体中文', engName: 'Simplified Chinese', flag: '🇨🇳' },\n br: { name: 'Português (Brasil)', engName: 'Portuguese (Brazil)', flag: '🇧🇷' },\n}\n\nexport type LangInfo = {\n slug: LangSlug\n locale: BrowserLocale\n gameLocale: GameLocale\n name: string\n engName: string\n flag: string\n}\n\nexport const appLangs: LangInfo[] = browserLocales.map((locale) => ({\n slug: browserLocaleMap[locale].slug,\n locale,\n gameLocale: browserLocaleMap[locale].gameLocale,\n name: langMeta[browserLocaleMap[locale].slug].name,\n engName: langMeta[browserLocaleMap[locale].slug].engName,\n flag: langMeta[browserLocaleMap[locale].slug].flag,\n}))\n\nexport const appLangsBySlug = Object.fromEntries(\n Object.values(appLangs).map((info) => [info.slug, info]),\n) as Record<LangSlug, LangInfo>\n"],"mappings":"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"}