lol-constants 2.23.0 → 2.24.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (216) hide show
  1. package/assets/constants/BootsItemNames.js +1 -4
  2. package/assets/constants/Champion.js +1 -4
  3. package/assets/constants/Item.js +1 -4
  4. package/assets/constants/LegendaryItemNames.d.ts +1 -1
  5. package/assets/constants/LegendaryItemNames.js +4 -6
  6. package/assets/constants/RunesReforged.js +1 -4
  7. package/assets/constants/StatRunes.js +1 -4
  8. package/assets/constants/StatRunesByRow.js +1 -4
  9. package/assets/constants/Summoner.js +1 -4
  10. package/assets/index.js +4 -20
  11. package/assets/scripts/asset-scripts/champion.js +5 -7
  12. package/assets/scripts/asset-scripts/generate-all.js +4 -6
  13. package/assets/scripts/asset-scripts/item.js +5 -7
  14. package/assets/scripts/asset-scripts/runes-reforged.js +5 -7
  15. package/assets/scripts/asset-scripts/summoner.js +5 -7
  16. package/assets/scripts/constants/RuneIdComment.js +1 -4
  17. package/assets/scripts/generate-all.js +23 -25
  18. package/assets/scripts/generate-categorized-item-keys-num.js +15 -17
  19. package/assets/scripts/generate-categorized-item-keys.js +12 -14
  20. package/assets/scripts/generate-categorized-item-names.js +12 -14
  21. package/assets/scripts/generate-champion-ids-by-name.js +5 -7
  22. package/assets/scripts/generate-champion-ids.js +5 -7
  23. package/assets/scripts/generate-champion-keys-num.js +7 -9
  24. package/assets/scripts/generate-champion-keys.js +5 -7
  25. package/assets/scripts/generate-champion-names.js +5 -7
  26. package/assets/scripts/generate-item-keys-num.js +7 -9
  27. package/assets/scripts/generate-item-keys.js +5 -7
  28. package/assets/scripts/generate-item-names.js +5 -7
  29. package/assets/scripts/generate-non-stat-rune-ids-num.js +4 -6
  30. package/assets/scripts/generate-non-stat-rune-ids.js +6 -8
  31. package/assets/scripts/generate-non-stat-rune-names.js +4 -6
  32. package/assets/scripts/generate-rune-ids.js +8 -10
  33. package/assets/scripts/generate-rune-names.js +6 -8
  34. package/assets/scripts/generate-rune-picking-relationships.js +4 -6
  35. package/assets/scripts/generate-rune-sets-by-rune-names-num.js +12 -14
  36. package/assets/scripts/generate-rune-sets-by-rune-names.js +10 -12
  37. package/assets/scripts/generate-rune-sets.js +7 -9
  38. package/assets/scripts/generate-spell-ids-by-name.js +5 -7
  39. package/assets/scripts/generate-spell-ids.js +5 -7
  40. package/assets/scripts/generate-spell-keys-num.js +7 -9
  41. package/assets/scripts/generate-spell-keys.js +5 -7
  42. package/assets/scripts/generate-spell-names.js +5 -7
  43. package/assets/scripts/generate-stat-rune-ids.js +6 -8
  44. package/assets/scripts/generate-stat-rune-names.js +4 -6
  45. package/assets/scripts/helpers/enableEscapedValues.js +1 -5
  46. package/assets/scripts/helpers/generateIndexFile.js +1 -5
  47. package/assets/scripts/helpers/getExportStatement.js +6 -10
  48. package/assets/scripts/helpers/getFmtdComment.js +1 -5
  49. package/assets/scripts/helpers/validateNumber.js +1 -5
  50. package/assets/scripts/helpers/writeToTmpFile.js +5 -9
  51. package/assets/scripts/print-file-names.js +5 -7
  52. package/core/constants/Abilities.js +6 -11
  53. package/core/constants/BuildingTypes.js +3 -7
  54. package/core/constants/Champions/ChampionClasses.d.ts +17 -0
  55. package/core/constants/Champions/ChampionClasses.js +25 -0
  56. package/core/constants/Champions/ChampionIds.js +1 -4
  57. package/core/constants/Champions/ChampionIdsByName.js +1 -4
  58. package/core/constants/Champions/ChampionKeys.js +1 -4
  59. package/core/constants/Champions/ChampionKeysNum.js +1 -4
  60. package/core/constants/Champions/ChampionNames.js +1 -4
  61. package/core/constants/Continents.js +3 -7
  62. package/core/constants/DataDragonUrls.d.ts +16 -16
  63. package/core/constants/DataDragonUrls.js +3 -6
  64. package/core/constants/DragonTypes.js +3 -7
  65. package/core/constants/GameModes.js +3 -7
  66. package/core/constants/GameTypes.js +3 -7
  67. package/core/constants/Items/BootsItemKeys.js +1 -4
  68. package/core/constants/Items/BootsItemKeysNum.js +1 -4
  69. package/core/constants/Items/BootsItemNames.js +1 -4
  70. package/core/constants/Items/ItemKeys.js +1 -4
  71. package/core/constants/Items/ItemKeysNum.js +1 -4
  72. package/core/constants/Items/ItemNames.js +1 -4
  73. package/core/constants/Items/ItemTypes.js +3 -7
  74. package/core/constants/Items/LegendaryItemKeys.d.ts +1 -1
  75. package/core/constants/Items/LegendaryItemKeys.js +1 -4
  76. package/core/constants/Items/LegendaryItemKeysNum.d.ts +1 -1
  77. package/core/constants/Items/LegendaryItemKeysNum.js +1 -4
  78. package/core/constants/Items/LegendaryItemNames.d.ts +1 -1
  79. package/core/constants/Items/LegendaryItemNames.js +1 -4
  80. package/core/constants/KillTypes.js +3 -7
  81. package/core/constants/LaneTypes.js +3 -7
  82. package/core/constants/Lanes.js +3 -7
  83. package/core/constants/LeagueTexts.js +3 -7
  84. package/core/constants/Levels.js +3 -7
  85. package/core/constants/Locales.js +3 -7
  86. package/core/constants/MapIds.js +3 -7
  87. package/core/constants/MonsterTypes.d.ts +2 -1
  88. package/core/constants/MonsterTypes.js +5 -8
  89. package/core/constants/ParticipantIds.js +3 -7
  90. package/core/constants/PlatformApiUris.js +3 -7
  91. package/core/constants/PlatformIds.js +6 -11
  92. package/core/constants/Positions.js +3 -7
  93. package/core/constants/QueueIds.js +5 -9
  94. package/core/constants/QueueTypes.js +3 -7
  95. package/core/constants/RankedRanks.js +3 -7
  96. package/core/constants/RankedTiers.js +3 -7
  97. package/core/constants/RegionalApiUris.js +3 -7
  98. package/core/constants/Regions.js +6 -11
  99. package/core/constants/RelativeTeams.js +3 -7
  100. package/core/constants/Roles.js +3 -7
  101. package/core/constants/Runes/NonStatRuneIds.js +1 -4
  102. package/core/constants/Runes/NonStatRuneIdsNum.js +1 -4
  103. package/core/constants/Runes/NonStatRuneNames.js +1 -4
  104. package/core/constants/Runes/RuneIconFileNames.js +1 -4
  105. package/core/constants/Runes/RunePickingRelationships.js +1 -4
  106. package/core/constants/Runes/RuneSets.js +8 -11
  107. package/core/constants/Runes/RuneSetsByRuneNames.js +8 -11
  108. package/core/constants/Runes/RuneSetsByRuneNamesNum.js +8 -11
  109. package/core/constants/Runes/RuneTreeIds.js +6 -11
  110. package/core/constants/Runes/RuneTreeIdsNum.js +6 -11
  111. package/core/constants/Runes/RuneTreeNames.js +6 -11
  112. package/core/constants/Runes/RuneTreeTypes.js +3 -7
  113. package/core/constants/SkillSlots.js +3 -7
  114. package/core/constants/Skills.js +3 -7
  115. package/core/constants/Spells/SpellIds.js +1 -4
  116. package/core/constants/Spells/SpellIdsByName.js +1 -4
  117. package/core/constants/Spells/SpellKeys.js +1 -4
  118. package/core/constants/Spells/SpellKeysNum.js +1 -4
  119. package/core/constants/Spells/SpellNames.js +1 -4
  120. package/core/constants/TeamIds.js +3 -7
  121. package/core/constants/TowerTypes.js +3 -7
  122. package/core/constants/WardTypes.js +3 -7
  123. package/core/helpers/Champions/getChampionIdByKey.js +3 -7
  124. package/core/helpers/Champions/getChampionIdByName.js +3 -7
  125. package/core/helpers/Champions/getChampionKeyById.js +3 -7
  126. package/core/helpers/Champions/getChampionKeyByName.js +4 -8
  127. package/core/helpers/Champions/getChampionNameById.js +4 -8
  128. package/core/helpers/Champions/getChampionNameByKey.js +3 -7
  129. package/core/helpers/Champions/isChampionId.js +3 -7
  130. package/core/helpers/Champions/isChampionKey.js +3 -7
  131. package/core/helpers/Champions/isChampionKeyNum.js +3 -7
  132. package/core/helpers/Champions/isChampionName.js +3 -7
  133. package/core/helpers/Items/getItemKeyByName.js +3 -7
  134. package/core/helpers/Items/getItemKeyNumByName.d.ts +3 -0
  135. package/core/helpers/Items/getItemKeyNumByName.js +4 -0
  136. package/core/helpers/Items/getItemNameByKey.js +3 -7
  137. package/core/helpers/Items/isBootsItemKey.js +3 -7
  138. package/core/helpers/Items/isBootsItemKeyNum.js +3 -7
  139. package/core/helpers/Items/isBootsItemName.js +3 -7
  140. package/core/helpers/Items/isItemKey.js +3 -7
  141. package/core/helpers/Items/isItemKeyNum.js +3 -7
  142. package/core/helpers/Items/isItemName.js +3 -7
  143. package/core/helpers/Items/isLegendaryItemKey.js +3 -7
  144. package/core/helpers/Items/isLegendaryItemKeyNum.js +3 -7
  145. package/core/helpers/Items/isLegendaryItemName.js +3 -7
  146. package/core/helpers/Items/isTier2Boots.d.ts +3 -0
  147. package/core/helpers/Items/isTier2Boots.js +9 -0
  148. package/core/helpers/Runes/getNonStatRuneIdByName.js +3 -7
  149. package/core/helpers/Runes/getNonStatRuneNameById.js +3 -7
  150. package/core/helpers/Runes/getRuneCategoryName.js +8 -12
  151. package/core/helpers/Runes/getRuneCdnUrl.js +16 -20
  152. package/core/helpers/Runes/getRuneIdByName.js +3 -7
  153. package/core/helpers/Runes/getRuneNameById.js +3 -7
  154. package/core/helpers/Runes/getStatRuneIdByName.js +3 -7
  155. package/core/helpers/Runes/getStatRuneNameById.js +3 -7
  156. package/core/helpers/Runes/isDominationRuneId.js +3 -7
  157. package/core/helpers/Runes/isDominationRuneIdNum.js +3 -7
  158. package/core/helpers/Runes/isDominationRuneName.js +3 -7
  159. package/core/helpers/Runes/isInspirationRuneId.js +3 -7
  160. package/core/helpers/Runes/isInspirationRuneIdNum.js +3 -7
  161. package/core/helpers/Runes/isInspirationRuneName.js +3 -7
  162. package/core/helpers/Runes/isKeystoneRuneId.js +3 -7
  163. package/core/helpers/Runes/isKeystoneRuneIdNum.js +3 -7
  164. package/core/helpers/Runes/isKeystoneRuneName.js +3 -7
  165. package/core/helpers/Runes/isNonStatRuneId.js +3 -7
  166. package/core/helpers/Runes/isNonStatRuneIdNum.js +3 -7
  167. package/core/helpers/Runes/isNonStatRuneName.js +3 -7
  168. package/core/helpers/Runes/isPrecisionRuneId.js +3 -7
  169. package/core/helpers/Runes/isPrecisionRuneIdNum.js +3 -7
  170. package/core/helpers/Runes/isPrecisionRuneName.js +3 -7
  171. package/core/helpers/Runes/isResolveRuneId.js +3 -7
  172. package/core/helpers/Runes/isResolveRuneIdNum.js +3 -7
  173. package/core/helpers/Runes/isResolveRuneName.js +3 -7
  174. package/core/helpers/Runes/isRuneId.js +3 -7
  175. package/core/helpers/Runes/isRuneIdNum.js +3 -7
  176. package/core/helpers/Runes/isRuneName.js +3 -7
  177. package/core/helpers/Runes/isSorceryRuneId.js +3 -7
  178. package/core/helpers/Runes/isSorceryRuneIdNum.js +3 -7
  179. package/core/helpers/Runes/isSorceryRuneName.js +3 -7
  180. package/core/helpers/Runes/isStatRuneId.js +3 -7
  181. package/core/helpers/Runes/isStatRuneIdNum.js +3 -7
  182. package/core/helpers/Runes/isStatRuneName.js +3 -7
  183. package/core/helpers/Spells/getSpellIdByKey.js +3 -7
  184. package/core/helpers/Spells/getSpellIdByName.js +3 -7
  185. package/core/helpers/Spells/getSpellKeyById.js +3 -7
  186. package/core/helpers/Spells/getSpellKeyByName.js +4 -8
  187. package/core/helpers/Spells/getSpellNameById.js +4 -8
  188. package/core/helpers/Spells/getSpellNameByKey.js +3 -7
  189. package/core/helpers/Spells/isSpellId.js +3 -7
  190. package/core/helpers/Spells/isSpellKey.js +3 -7
  191. package/core/helpers/Spells/isSpellKeyNum.js +3 -7
  192. package/core/helpers/Spells/isSpellName.js +3 -7
  193. package/core/helpers/getPositionImageUrl.js +3 -7
  194. package/core/helpers/isRiotId.js +7 -11
  195. package/core/helpers/makeRiotId.js +1 -5
  196. package/core/helpers/splitRiotId.js +1 -5
  197. package/core/index.d.ts +4 -0
  198. package/core/index.js +138 -150
  199. package/core/types/championJson.js +1 -2
  200. package/core/types/interfaces.js +1 -2
  201. package/core/types/types.js +1 -2
  202. package/package.json +9 -7
  203. package/assets/constants/OrnnItemNames.d.ts +0 -1
  204. package/assets/constants/OrnnItemNames.js +0 -33
  205. package/core/constants/Items/OrnnItemKeys.d.ts +0 -23
  206. package/core/constants/Items/OrnnItemKeys.js +0 -4
  207. package/core/constants/Items/OrnnItemKeysNum.d.ts +0 -23
  208. package/core/constants/Items/OrnnItemKeysNum.js +0 -4
  209. package/core/constants/Items/OrnnItemNames.d.ts +0 -23
  210. package/core/constants/Items/OrnnItemNames.js +0 -4
  211. package/core/helpers/Items/isOrnnItemKey.d.ts +0 -2
  212. package/core/helpers/Items/isOrnnItemKey.js +0 -8
  213. package/core/helpers/Items/isOrnnItemKeyNum.d.ts +0 -2
  214. package/core/helpers/Items/isOrnnItemKeyNum.js +0 -8
  215. package/core/helpers/Items/isOrnnItemName.d.ts +0 -2
  216. package/core/helpers/Items/isOrnnItemName.js +0 -8
@@ -1,10 +1,8 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const RunesReforged_1 = require("../constants/RunesReforged");
4
- const StatRunesByRow_1 = require("../constants/StatRunesByRow");
5
- const RuneIdComment_1 = require("./constants/RuneIdComment");
6
- const validateNumber_1 = require("./helpers/validateNumber");
7
- const writeToTmpFile_1 = require("./helpers/writeToTmpFile");
1
+ import { RunesReforged } from '../constants/RunesReforged';
2
+ import { StatRunesByRow } from '../constants/StatRunesByRow';
3
+ import { RuneIdComment } from './constants/RuneIdComment';
4
+ import { validateNumber } from './helpers/validateNumber';
5
+ import { writeToTmpFile } from './helpers/writeToTmpFile';
8
6
  (async () => {
9
7
  const constant = 'RuneSetsByRuneNamesNum';
10
8
  const runeSets = {
@@ -17,7 +15,7 @@ const writeToTmpFile_1 = require("./helpers/writeToTmpFile");
17
15
  };
18
16
  const keystoneHSetIdx = 0;
19
17
  let totalRuneAmt = 0;
20
- for (const runeTree of RunesReforged_1.RunesReforged) {
18
+ for (const runeTree of RunesReforged) {
21
19
  const runeTreeName = runeTree.name;
22
20
  const horizontalSets = runeTree.slots;
23
21
  let currentHSetIdx = 0;
@@ -50,10 +48,10 @@ const writeToTmpFile_1 = require("./helpers/writeToTmpFile");
50
48
  ++currentHSetIdx;
51
49
  }
52
50
  }
53
- for (let hSetIdx in StatRunesByRow_1.StatRunesByRow) {
54
- const hSetRunes = StatRunesByRow_1.StatRunesByRow[hSetIdx];
51
+ for (let hSetIdx in StatRunesByRow) {
52
+ const hSetRunes = StatRunesByRow[hSetIdx];
55
53
  for (let [statRuneId, statRuneName] of Object.entries(hSetRunes)) {
56
- let statRuneIdNum = (0, validateNumber_1.validateNumber)(statRuneId, 'statRuneId');
54
+ let statRuneIdNum = validateNumber(statRuneId, 'statRuneId');
57
55
  // Keep track
58
56
  totalRuneAmt += 1;
59
57
  // Add to StatRuneIds
@@ -65,7 +63,7 @@ const writeToTmpFile_1 = require("./helpers/writeToTmpFile");
65
63
  }
66
64
  }
67
65
  // Write to file
68
- await (0, writeToTmpFile_1.writeToTmpFile)(constant, {
66
+ await writeToTmpFile(constant, {
69
67
  constName: 'PrimaryRuneTreesByRuneNamesNum',
70
68
  json: runeSets.PrimaryRuneTrees,
71
69
  }, {
@@ -77,12 +75,12 @@ const writeToTmpFile_1 = require("./helpers/writeToTmpFile");
77
75
  }, {
78
76
  constName: 'StatRuneIdsNum',
79
77
  typeName: 'StatRuneIdNum',
80
- typeComment: RuneIdComment_1.RuneIdComment,
78
+ typeComment: RuneIdComment,
81
79
  json: runeSets.StatRuneIds,
82
80
  }, {
83
81
  constName: 'RuneIdsNum',
84
82
  typeName: 'RuneIdNum',
85
- typeComment: RuneIdComment_1.RuneIdComment,
83
+ typeComment: RuneIdComment,
86
84
  json: {
87
85
  1: '...PrimaryRuneTreesByRuneNamesNum.Precision',
88
86
  2: '...PrimaryRuneTreesByRuneNamesNum.Domination',
@@ -1,9 +1,7 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const RunesReforged_1 = require("../constants/RunesReforged");
4
- const StatRunesByRow_1 = require("../constants/StatRunesByRow");
5
- const RuneIdComment_1 = require("./constants/RuneIdComment");
6
- const writeToTmpFile_1 = require("./helpers/writeToTmpFile");
1
+ import { RunesReforged } from '../constants/RunesReforged';
2
+ import { StatRunesByRow } from '../constants/StatRunesByRow';
3
+ import { RuneIdComment } from './constants/RuneIdComment';
4
+ import { writeToTmpFile } from './helpers/writeToTmpFile';
7
5
  (async () => {
8
6
  const constant = 'RuneSetsByRuneNames';
9
7
  const runeSets = {
@@ -16,7 +14,7 @@ const writeToTmpFile_1 = require("./helpers/writeToTmpFile");
16
14
  };
17
15
  const keystoneHSetIdx = 0;
18
16
  let totalRuneAmt = 0;
19
- for (const runeTree of RunesReforged_1.RunesReforged) {
17
+ for (const runeTree of RunesReforged) {
20
18
  const runeTreeName = runeTree.name;
21
19
  const horizontalSets = runeTree.slots;
22
20
  let currentHSetIdx = 0;
@@ -49,8 +47,8 @@ const writeToTmpFile_1 = require("./helpers/writeToTmpFile");
49
47
  ++currentHSetIdx;
50
48
  }
51
49
  }
52
- for (let hSetIdx in StatRunesByRow_1.StatRunesByRow) {
53
- const hSetRunes = StatRunesByRow_1.StatRunesByRow[hSetIdx];
50
+ for (let hSetIdx in StatRunesByRow) {
51
+ const hSetRunes = StatRunesByRow[hSetIdx];
54
52
  for (let [statRuneId, statRuneName] of Object.entries(hSetRunes)) {
55
53
  // Keep track
56
54
  totalRuneAmt += 1;
@@ -63,7 +61,7 @@ const writeToTmpFile_1 = require("./helpers/writeToTmpFile");
63
61
  }
64
62
  }
65
63
  // Write to file
66
- await (0, writeToTmpFile_1.writeToTmpFile)(constant, {
64
+ await writeToTmpFile(constant, {
67
65
  constName: 'PrimaryRuneTreesByRuneNames',
68
66
  json: runeSets.PrimaryRuneTrees,
69
67
  }, {
@@ -75,12 +73,12 @@ const writeToTmpFile_1 = require("./helpers/writeToTmpFile");
75
73
  }, {
76
74
  constName: 'StatRuneIds',
77
75
  includeAutoTypeName: true,
78
- typeComment: RuneIdComment_1.RuneIdComment,
76
+ typeComment: RuneIdComment,
79
77
  json: runeSets.StatRuneIds,
80
78
  }, {
81
79
  constName: 'RuneIds',
82
80
  includeAutoTypeName: true,
83
- typeComment: RuneIdComment_1.RuneIdComment,
81
+ typeComment: RuneIdComment,
84
82
  json: {
85
83
  1: '...PrimaryRuneTreesByRuneNames.Precision',
86
84
  2: '...PrimaryRuneTreesByRuneNames.Domination',
@@ -1,8 +1,6 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const RunesReforged_1 = require("../constants/RunesReforged");
4
- const StatRunesByRow_1 = require("../constants/StatRunesByRow");
5
- const writeToTmpFile_1 = require("./helpers/writeToTmpFile");
1
+ import { RunesReforged } from '../constants/RunesReforged';
2
+ import { StatRunesByRow } from '../constants/StatRunesByRow';
3
+ import { writeToTmpFile } from './helpers/writeToTmpFile';
6
4
  (async () => {
7
5
  const constant = 'RuneSets';
8
6
  const runeSets = {
@@ -15,7 +13,7 @@ const writeToTmpFile_1 = require("./helpers/writeToTmpFile");
15
13
  };
16
14
  const keystoneHSetIdx = 0;
17
15
  let totalRuneAmt = 0;
18
- for (const runeTree of RunesReforged_1.RunesReforged) {
16
+ for (const runeTree of RunesReforged) {
19
17
  const runeTreeName = runeTree.name;
20
18
  const horizontalSets = runeTree.slots;
21
19
  let currentHSetIdx = 0;
@@ -48,8 +46,8 @@ const writeToTmpFile_1 = require("./helpers/writeToTmpFile");
48
46
  ++currentHSetIdx;
49
47
  }
50
48
  }
51
- for (let hSetIdx in StatRunesByRow_1.StatRunesByRow) {
52
- const hSetRunes = StatRunesByRow_1.StatRunesByRow[hSetIdx];
49
+ for (let hSetIdx in StatRunesByRow) {
50
+ const hSetRunes = StatRunesByRow[hSetIdx];
53
51
  for (let [statRuneId, statRuneName] of Object.entries(hSetRunes)) {
54
52
  // Keep track
55
53
  totalRuneAmt += 1;
@@ -62,7 +60,7 @@ const writeToTmpFile_1 = require("./helpers/writeToTmpFile");
62
60
  }
63
61
  }
64
62
  // Write to file
65
- await (0, writeToTmpFile_1.writeToTmpFile)(constant, {
63
+ await writeToTmpFile(constant, {
66
64
  constName: 'PrimaryRuneTrees',
67
65
  json: runeSets.PrimaryRuneTrees,
68
66
  }, {
@@ -1,18 +1,16 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const Summoner_1 = require("../constants/Summoner");
4
- const writeToTmpFile_1 = require("./helpers/writeToTmpFile");
1
+ import { Summoner } from '../constants/Summoner';
2
+ import { writeToTmpFile } from './helpers/writeToTmpFile';
5
3
  (async () => {
6
4
  const spellIds = {};
7
5
  // Add all summoners spell data to each corresponding key value
8
6
  let spellId;
9
- for (spellId in Summoner_1.Summoner.data) {
10
- const spellData = Summoner_1.Summoner.data[spellId];
7
+ for (spellId in Summoner.data) {
8
+ const spellData = Summoner.data[spellId];
11
9
  spellIds[spellData.name] = spellId;
12
10
  }
13
11
  // Write to file
14
12
  const constName = 'SpellIdsByName';
15
- (0, writeToTmpFile_1.writeToTmpFile)(constName, {
13
+ writeToTmpFile(constName, {
16
14
  constName,
17
15
  json: spellIds,
18
16
  });
@@ -1,18 +1,16 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const Summoner_1 = require("../constants/Summoner");
4
- const writeToTmpFile_1 = require("./helpers/writeToTmpFile");
1
+ import { Summoner } from '../constants/Summoner';
2
+ import { writeToTmpFile } from './helpers/writeToTmpFile';
5
3
  (async () => {
6
4
  const spellIds = {};
7
5
  // Add all summoners spell data to each corresponding key value
8
6
  let spellId;
9
- for (spellId in Summoner_1.Summoner.data) {
10
- const spellData = Summoner_1.Summoner.data[spellId];
7
+ for (spellId in Summoner.data) {
8
+ const spellData = Summoner.data[spellId];
11
9
  spellIds[spellData.key] = spellId;
12
10
  }
13
11
  // Write to file
14
12
  const constName = 'SpellIds';
15
- (0, writeToTmpFile_1.writeToTmpFile)(constName, {
13
+ writeToTmpFile(constName, {
16
14
  constName,
17
15
  includeAutoTypeName: true,
18
16
  json: spellIds,
@@ -1,20 +1,18 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const Summoner_1 = require("../constants/Summoner");
4
- const validateNumber_1 = require("./helpers/validateNumber");
5
- const writeToTmpFile_1 = require("./helpers/writeToTmpFile");
1
+ import { Summoner } from '../constants/Summoner';
2
+ import { validateNumber } from './helpers/validateNumber';
3
+ import { writeToTmpFile } from './helpers/writeToTmpFile';
6
4
  (async () => {
7
5
  const spellKeys = {};
8
6
  // Add all summoners spell data to each corresponding key value
9
7
  let spellId;
10
- for (spellId in Summoner_1.Summoner.data) {
11
- const spellData = Summoner_1.Summoner.data[spellId];
12
- spellKeys[spellId] = (0, validateNumber_1.validateNumber)(spellData.key, 'spellKey');
8
+ for (spellId in Summoner.data) {
9
+ const spellData = Summoner.data[spellId];
10
+ spellKeys[spellId] = validateNumber(spellData.key, 'spellKey');
13
11
  }
14
12
  // Write to file
15
13
  const constName = 'SpellKeysNum';
16
14
  const typeName = 'SpellKeyNum';
17
- (0, writeToTmpFile_1.writeToTmpFile)(constName, {
15
+ writeToTmpFile(constName, {
18
16
  constName,
19
17
  typeName,
20
18
  json: spellKeys,
@@ -1,18 +1,16 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const Summoner_1 = require("../constants/Summoner");
4
- const writeToTmpFile_1 = require("./helpers/writeToTmpFile");
1
+ import { Summoner } from '../constants/Summoner';
2
+ import { writeToTmpFile } from './helpers/writeToTmpFile';
5
3
  (async () => {
6
4
  const spellKeys = {};
7
5
  // Add all summoners spell data to each corresponding key value
8
6
  let spellId;
9
- for (spellId in Summoner_1.Summoner.data) {
10
- const spellData = Summoner_1.Summoner.data[spellId];
7
+ for (spellId in Summoner.data) {
8
+ const spellData = Summoner.data[spellId];
11
9
  spellKeys[spellId] = spellData.key;
12
10
  }
13
11
  // Write to file
14
12
  const constName = 'SpellKeys';
15
- (0, writeToTmpFile_1.writeToTmpFile)(constName, {
13
+ writeToTmpFile(constName, {
16
14
  constName,
17
15
  includeAutoTypeName: true,
18
16
  json: spellKeys,
@@ -1,18 +1,16 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const Summoner_1 = require("../constants/Summoner");
4
- const writeToTmpFile_1 = require("./helpers/writeToTmpFile");
1
+ import { Summoner } from '../constants/Summoner';
2
+ import { writeToTmpFile } from './helpers/writeToTmpFile';
5
3
  (async () => {
6
4
  const spellNames = {};
7
5
  // Add all summoners spell data to each corresponding key value
8
6
  let spellId;
9
- for (spellId in Summoner_1.Summoner.data) {
10
- const spellData = Summoner_1.Summoner.data[spellId];
7
+ for (spellId in Summoner.data) {
8
+ const spellData = Summoner.data[spellId];
11
9
  spellNames[spellData.key] = spellData.name;
12
10
  }
13
11
  // Write to file
14
12
  const constName = 'SpellNames';
15
- (0, writeToTmpFile_1.writeToTmpFile)(constName, {
13
+ writeToTmpFile(constName, {
16
14
  constName,
17
15
  includeAutoTypeName: true,
18
16
  json: spellNames,
@@ -1,20 +1,18 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const StatRunes_1 = require("../constants/StatRunes");
4
- const writeToTmpFile_1 = require("./helpers/writeToTmpFile");
5
- const RuneIdComment_1 = require("./constants/RuneIdComment");
1
+ import { StatRunes } from '../constants/StatRunes';
2
+ import { writeToTmpFile } from './helpers/writeToTmpFile';
3
+ import { RuneIdComment } from './constants/RuneIdComment';
6
4
  (async () => {
7
5
  const runeIds = {};
8
6
  // Add Stat Runes
9
- for (const { description, id: statRuneId, } of StatRunes_1.StatRunes) {
7
+ for (const { description, id: statRuneId, } of StatRunes) {
10
8
  runeIds[description] = statRuneId;
11
9
  }
12
10
  // Write to file
13
11
  const constName = 'StatRuneIds';
14
- (0, writeToTmpFile_1.writeToTmpFile)(constName, {
12
+ writeToTmpFile(constName, {
15
13
  constName,
16
14
  includeAutoTypeName: true,
17
- typeComment: RuneIdComment_1.RuneIdComment,
15
+ typeComment: RuneIdComment,
18
16
  json: runeIds,
19
17
  });
20
18
  })();
@@ -1,16 +1,14 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const StatRunes_1 = require("../constants/StatRunes");
4
- const writeToTmpFile_1 = require("./helpers/writeToTmpFile");
1
+ import { StatRunes } from '../constants/StatRunes';
2
+ import { writeToTmpFile } from './helpers/writeToTmpFile';
5
3
  (async () => {
6
4
  const runeNames = {};
7
5
  // Add Stat Runes
8
- for (const { description, id: statRuneId, } of StatRunes_1.StatRunes) {
6
+ for (const { description, id: statRuneId, } of StatRunes) {
9
7
  runeNames[statRuneId] = description;
10
8
  }
11
9
  // Write to file
12
10
  const constName = 'StatRuneNames';
13
- (0, writeToTmpFile_1.writeToTmpFile)(constName, {
11
+ writeToTmpFile(constName, {
14
12
  constName,
15
13
  includeAutoTypeName: true,
16
14
  json: runeNames,
@@ -1,6 +1,3 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.enableEscapedValues = void 0;
4
1
  /**
5
2
  * Basically a modified `JSON.stringify()` function.
6
3
  *
@@ -13,7 +10,7 @@ exports.enableEscapedValues = void 0;
13
10
  * Example:
14
11
  * `{"key":"...ConstantValue"} => {...ConstantValue}`
15
12
  */
16
- function enableEscapedValues(obj, keysToEscape) {
13
+ export function enableEscapedValues(obj, keysToEscape) {
17
14
  let json = JSON.stringify(obj);
18
15
  for (let key of keysToEscape) {
19
16
  const stringifiedKey = `"${key}":`;
@@ -35,4 +32,3 @@ function enableEscapedValues(obj, keysToEscape) {
35
32
  }
36
33
  return json;
37
34
  }
38
- exports.enableEscapedValues = enableEscapedValues;
@@ -1,7 +1,3 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.generateIndexFile = void 0;
4
- function generateIndexFile() {
1
+ export function generateIndexFile() {
5
2
  throw 'not implemented';
6
3
  }
7
- exports.generateIndexFile = generateIndexFile;
@@ -1,12 +1,9 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getExportStatement = void 0;
4
- const enableEscapedValues_1 = require("./enableEscapedValues");
5
- const getFmtdComment_1 = require("./getFmtdComment");
1
+ import { enableEscapedValues } from './enableEscapedValues';
2
+ import { getFmtdComment } from './getFmtdComment';
6
3
  /**
7
4
  * Wraps the provided JSON in a TS export-as-const statement.
8
5
  */
9
- function getExportStatement(constName, json, keysToEscape, comment, typeName, typeComment, includeAutoTypeName) {
6
+ export function getExportStatement(constName, json, keysToEscape, comment, typeName, typeComment, includeAutoTypeName) {
10
7
  let contents = '';
11
8
  const auditNewLineChar = (endingSt, startingSt) => {
12
9
  if (endingSt.at(-1) != '\n' &&
@@ -16,10 +13,10 @@ function getExportStatement(constName, json, keysToEscape, comment, typeName, ty
16
13
  return endingSt;
17
14
  };
18
15
  const stringifiedJson = keysToEscape
19
- ? (0, enableEscapedValues_1.enableEscapedValues)(json, keysToEscape)
16
+ ? enableEscapedValues(json, keysToEscape)
20
17
  : JSON.stringify(json);
21
18
  if (comment) {
22
- contents += (0, getFmtdComment_1.getFmtdComment)(comment);
19
+ contents += getFmtdComment(comment);
23
20
  contents += '\n';
24
21
  }
25
22
  contents += `export const ${constName} = ${stringifiedJson} as const`;
@@ -28,7 +25,7 @@ function getExportStatement(constName, json, keysToEscape, comment, typeName, ty
28
25
  if (typeComment.includes('/**'))
29
26
  contents += typeComment;
30
27
  else
31
- contents += (0, getFmtdComment_1.getFmtdComment)(typeComment);
28
+ contents += getFmtdComment(typeComment);
32
29
  }
33
30
  if (typeName || includeAutoTypeName) {
34
31
  contents = auditNewLineChar(contents, '');
@@ -38,4 +35,3 @@ function getExportStatement(constName, json, keysToEscape, comment, typeName, ty
38
35
  }
39
36
  return contents;
40
37
  }
41
- exports.getExportStatement = getExportStatement;
@@ -1,15 +1,11 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getFmtdComment = void 0;
4
1
  /**
5
2
  * Returns a JavaScript-formatted comment,
6
3
  * the kind you put on top of functions, for example.
7
4
  */
8
- function getFmtdComment(comment) {
5
+ export function getFmtdComment(comment) {
9
6
  let st = '';
10
7
  st += '/**\n';
11
8
  st += ' * ' + comment + '\n';
12
9
  st += ' */';
13
10
  return st;
14
11
  }
15
- exports.getFmtdComment = getFmtdComment;
@@ -1,10 +1,6 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.validateNumber = void 0;
4
- function validateNumber(value, debugVariableLabel) {
1
+ export function validateNumber(value, debugVariableLabel) {
5
2
  let num = parseInt(value);
6
3
  if (Number.isNaN(num))
7
4
  throw `${debugVariableLabel} was NaN`;
8
5
  return num;
9
6
  }
10
- exports.validateNumber = validateNumber;
@@ -1,22 +1,18 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.writeToTmpFile = void 0;
4
- const fs_1 = require("fs");
5
- const getExportStatement_1 = require("./getExportStatement");
6
- function writeToTmpFile(mainConstName, ...constants) {
1
+ import { writeFile } from 'fs';
2
+ import { getExportStatement } from './getExportStatement';
3
+ export function writeToTmpFile(mainConstName, ...constants) {
7
4
  return new Promise((res, rej) => {
8
5
  const exportStatements = constants.reduce((finalSt, { constName, comment, json, keysToEscape, typeName, typeComment, validationFnName, validationFnComment, includeAutoTypeName, }, i) => {
9
- let exportStatement = (0, getExportStatement_1.getExportStatement)(constName, json, keysToEscape, comment, typeName, typeComment, includeAutoTypeName);
6
+ let exportStatement = getExportStatement(constName, json, keysToEscape, comment, typeName, typeComment, includeAutoTypeName);
10
7
  return (finalSt
11
8
  + exportStatement
12
9
  // On last statement, provide only a single empty ending line
13
10
  + (i + 1 == constants.length ? '\n' : '\n\n'));
14
11
  }, '');
15
- (0, fs_1.writeFile)(`tmp/${mainConstName}.ts`, exportStatements, err => {
12
+ writeFile(`tmp/${mainConstName}.ts`, exportStatements, err => {
16
13
  if (err)
17
14
  rej(err);
18
15
  res();
19
16
  });
20
17
  });
21
18
  }
22
- exports.writeToTmpFile = writeToTmpFile;
@@ -1,6 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const promises_1 = require("fs/promises");
1
+ import { readdir, readFile } from 'fs/promises';
4
2
  const folders1 = [
5
3
  'constants',
6
4
  'helpers',
@@ -32,9 +30,9 @@ async function getVariableNames(exportStatement, endingCharacter) {
32
30
  if (workspace[folder2] == null)
33
31
  workspace[folder2] = [];
34
32
  const base = `src/core/${folder1}/${folder2}`;
35
- const fileNames = await (0, promises_1.readdir)(base);
33
+ const fileNames = await readdir(base);
36
34
  for (const fileName of fileNames) {
37
- const contents = await (0, promises_1.readFile)(`${base}/${fileName}`, { encoding: 'utf-8' });
35
+ const contents = await readFile(`${base}/${fileName}`, { encoding: 'utf-8' });
38
36
  workspace[folder2].push(...getVariableNamesFromFileContents(contents, exportStatement, endingCharacter));
39
37
  }
40
38
  }
@@ -62,10 +60,10 @@ async function getOtherVariableInfo() {
62
60
  const constants = [];
63
61
  const types = [];
64
62
  const functions = [];
65
- const constantFileNames = (await (0, promises_1.readdir)('src/core/constants'))
63
+ const constantFileNames = (await readdir('src/core/constants'))
66
64
  .filter(fileName => fileName.includes('.ts'));
67
65
  for (const fileName of constantFileNames) {
68
- const contents = await (0, promises_1.readFile)(`src/core/constants/${fileName}`, { encoding: 'utf-8' });
66
+ const contents = await readFile(`src/core/constants/${fileName}`, { encoding: 'utf-8' });
69
67
  constants.push(...getVariableNamesFromFileContents(contents, 'export const', ' '));
70
68
  types.push(...getVariableNamesFromFileContents(contents, 'export type', ' '));
71
69
  functions.push(...getVariableNamesFromFileContents(contents, 'export function', '('));
@@ -1,24 +1,19 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isActiveAbility = exports.ActiveAbilities = exports.isAbility = exports.Abilities = void 0;
4
- exports.Abilities = {
1
+ export const Abilities = {
5
2
  'P': 'P',
6
3
  'Q': 'Q',
7
4
  'W': 'W',
8
5
  'E': 'E',
9
6
  'R': 'R',
10
7
  };
11
- function isAbility(value) {
12
- return typeof value == 'string' && value in exports.Abilities;
8
+ export function isAbility(value) {
9
+ return typeof value == 'string' && value in Abilities;
13
10
  }
14
- exports.isAbility = isAbility;
15
- exports.ActiveAbilities = {
11
+ export const ActiveAbilities = {
16
12
  'Q': 'Q',
17
13
  'W': 'W',
18
14
  'E': 'E',
19
15
  'R': 'R',
20
16
  };
21
- function isActiveAbility(value) {
22
- return typeof value == 'string' && value in exports.ActiveAbilities;
17
+ export function isActiveAbility(value) {
18
+ return typeof value == 'string' && value in ActiveAbilities;
23
19
  }
24
- exports.isActiveAbility = isActiveAbility;
@@ -1,11 +1,7 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isBuildingType = exports.BuildingTypes = void 0;
4
- exports.BuildingTypes = {
1
+ export const BuildingTypes = {
5
2
  'TOWER_BUILDING': 'TOWER_BUILDING',
6
3
  'INHIBITOR_BUILDING': 'INHIBITOR_BUILDING',
7
4
  };
8
- function isBuildingType(value) {
9
- return typeof value == 'string' && value in exports.BuildingTypes;
5
+ export function isBuildingType(value) {
6
+ return typeof value == 'string' && value in BuildingTypes;
10
7
  }
11
- exports.isBuildingType = isBuildingType;
@@ -0,0 +1,17 @@
1
+ export declare const ChampionClasses: {
2
+ readonly Enchanter: "Enchanter";
3
+ readonly Catcher: "Catcher";
4
+ readonly Juggernaut: "Juggernaut";
5
+ readonly Diver: "Diver";
6
+ readonly Burst: "Burst";
7
+ readonly Battlemage: "Battlemage";
8
+ readonly Artillery: "Artillery";
9
+ readonly Marksman: "Marksman";
10
+ readonly Assassin: "Assassin";
11
+ readonly Skirmisher: "Skirmisher";
12
+ readonly Vanguard: "Vanguard";
13
+ readonly Warden: "Warden";
14
+ readonly Specialist: "Specialist";
15
+ };
16
+ export type ChampionClass = typeof ChampionClasses[keyof typeof ChampionClasses];
17
+ export declare function isChampionClass(value: any): value is ChampionClass;
@@ -0,0 +1,25 @@
1
+ export const ChampionClasses = {
2
+ // # Controller
3
+ 'Enchanter': 'Enchanter',
4
+ 'Catcher': 'Catcher',
5
+ // # Fighter
6
+ 'Juggernaut': 'Juggernaut',
7
+ 'Diver': 'Diver',
8
+ // # Mage
9
+ 'Burst': 'Burst',
10
+ 'Battlemage': 'Battlemage',
11
+ 'Artillery': 'Artillery',
12
+ // # Marskman
13
+ 'Marksman': 'Marksman',
14
+ // # Slayer
15
+ 'Assassin': 'Assassin',
16
+ 'Skirmisher': 'Skirmisher',
17
+ // # Tank
18
+ 'Vanguard': 'Vanguard',
19
+ 'Warden': 'Warden',
20
+ // # Specialist
21
+ 'Specialist': 'Specialist',
22
+ };
23
+ export function isChampionClass(value) {
24
+ return typeof value == 'string' && value in ChampionClasses;
25
+ }
@@ -1,4 +1 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ChampionIds = void 0;
4
- exports.ChampionIds = { "1": "Annie", "2": "Olaf", "3": "Galio", "4": "TwistedFate", "5": "XinZhao", "6": "Urgot", "7": "Leblanc", "8": "Vladimir", "9": "Fiddlesticks", "10": "Kayle", "11": "MasterYi", "12": "Alistar", "13": "Ryze", "14": "Sion", "15": "Sivir", "16": "Soraka", "17": "Teemo", "18": "Tristana", "19": "Warwick", "20": "Nunu", "21": "MissFortune", "22": "Ashe", "23": "Tryndamere", "24": "Jax", "25": "Morgana", "26": "Zilean", "27": "Singed", "28": "Evelynn", "29": "Twitch", "30": "Karthus", "31": "Chogath", "32": "Amumu", "33": "Rammus", "34": "Anivia", "35": "Shaco", "36": "DrMundo", "37": "Sona", "38": "Kassadin", "39": "Irelia", "40": "Janna", "41": "Gangplank", "42": "Corki", "43": "Karma", "44": "Taric", "45": "Veigar", "48": "Trundle", "50": "Swain", "51": "Caitlyn", "53": "Blitzcrank", "54": "Malphite", "55": "Katarina", "56": "Nocturne", "57": "Maokai", "58": "Renekton", "59": "JarvanIV", "60": "Elise", "61": "Orianna", "62": "MonkeyKing", "63": "Brand", "64": "LeeSin", "67": "Vayne", "68": "Rumble", "69": "Cassiopeia", "72": "Skarner", "74": "Heimerdinger", "75": "Nasus", "76": "Nidalee", "77": "Udyr", "78": "Poppy", "79": "Gragas", "80": "Pantheon", "81": "Ezreal", "82": "Mordekaiser", "83": "Yorick", "84": "Akali", "85": "Kennen", "86": "Garen", "89": "Leona", "90": "Malzahar", "91": "Talon", "92": "Riven", "96": "KogMaw", "98": "Shen", "99": "Lux", "101": "Xerath", "102": "Shyvana", "103": "Ahri", "104": "Graves", "105": "Fizz", "106": "Volibear", "107": "Rengar", "110": "Varus", "111": "Nautilus", "112": "Viktor", "113": "Sejuani", "114": "Fiora", "115": "Ziggs", "117": "Lulu", "119": "Draven", "120": "Hecarim", "121": "Khazix", "122": "Darius", "126": "Jayce", "127": "Lissandra", "131": "Diana", "133": "Quinn", "134": "Syndra", "136": "AurelionSol", "141": "Kayn", "142": "Zoe", "143": "Zyra", "145": "Kaisa", "147": "Seraphine", "150": "Gnar", "154": "Zac", "157": "Yasuo", "161": "Velkoz", "163": "Taliyah", "164": "Camille", "166": "Akshan", "200": "Belveth", "201": "Braum", "202": "Jhin", "203": "Kindred", "221": "Zeri", "222": "Jinx", "223": "TahmKench", "233": "Briar", "234": "Viego", "235": "Senna", "236": "Lucian", "238": "Zed", "240": "Kled", "245": "Ekko", "246": "Qiyana", "254": "Vi", "266": "Aatrox", "267": "Nami", "268": "Azir", "350": "Yuumi", "360": "Samira", "412": "Thresh", "420": "Illaoi", "421": "RekSai", "427": "Ivern", "429": "Kalista", "432": "Bard", "497": "Rakan", "498": "Xayah", "516": "Ornn", "517": "Sylas", "518": "Neeko", "523": "Aphelios", "526": "Rell", "555": "Pyke", "711": "Vex", "777": "Yone", "875": "Sett", "876": "Lillia", "887": "Gwen", "888": "Renata", "895": "Nilah", "897": "KSante", "901": "Smolder", "902": "Milio", "910": "Hwei", "950": "Naafiri" };
1
+ export const ChampionIds = { "1": "Annie", "2": "Olaf", "3": "Galio", "4": "TwistedFate", "5": "XinZhao", "6": "Urgot", "7": "Leblanc", "8": "Vladimir", "9": "Fiddlesticks", "10": "Kayle", "11": "MasterYi", "12": "Alistar", "13": "Ryze", "14": "Sion", "15": "Sivir", "16": "Soraka", "17": "Teemo", "18": "Tristana", "19": "Warwick", "20": "Nunu", "21": "MissFortune", "22": "Ashe", "23": "Tryndamere", "24": "Jax", "25": "Morgana", "26": "Zilean", "27": "Singed", "28": "Evelynn", "29": "Twitch", "30": "Karthus", "31": "Chogath", "32": "Amumu", "33": "Rammus", "34": "Anivia", "35": "Shaco", "36": "DrMundo", "37": "Sona", "38": "Kassadin", "39": "Irelia", "40": "Janna", "41": "Gangplank", "42": "Corki", "43": "Karma", "44": "Taric", "45": "Veigar", "48": "Trundle", "50": "Swain", "51": "Caitlyn", "53": "Blitzcrank", "54": "Malphite", "55": "Katarina", "56": "Nocturne", "57": "Maokai", "58": "Renekton", "59": "JarvanIV", "60": "Elise", "61": "Orianna", "62": "MonkeyKing", "63": "Brand", "64": "LeeSin", "67": "Vayne", "68": "Rumble", "69": "Cassiopeia", "72": "Skarner", "74": "Heimerdinger", "75": "Nasus", "76": "Nidalee", "77": "Udyr", "78": "Poppy", "79": "Gragas", "80": "Pantheon", "81": "Ezreal", "82": "Mordekaiser", "83": "Yorick", "84": "Akali", "85": "Kennen", "86": "Garen", "89": "Leona", "90": "Malzahar", "91": "Talon", "92": "Riven", "96": "KogMaw", "98": "Shen", "99": "Lux", "101": "Xerath", "102": "Shyvana", "103": "Ahri", "104": "Graves", "105": "Fizz", "106": "Volibear", "107": "Rengar", "110": "Varus", "111": "Nautilus", "112": "Viktor", "113": "Sejuani", "114": "Fiora", "115": "Ziggs", "117": "Lulu", "119": "Draven", "120": "Hecarim", "121": "Khazix", "122": "Darius", "126": "Jayce", "127": "Lissandra", "131": "Diana", "133": "Quinn", "134": "Syndra", "136": "AurelionSol", "141": "Kayn", "142": "Zoe", "143": "Zyra", "145": "Kaisa", "147": "Seraphine", "150": "Gnar", "154": "Zac", "157": "Yasuo", "161": "Velkoz", "163": "Taliyah", "164": "Camille", "166": "Akshan", "200": "Belveth", "201": "Braum", "202": "Jhin", "203": "Kindred", "221": "Zeri", "222": "Jinx", "223": "TahmKench", "233": "Briar", "234": "Viego", "235": "Senna", "236": "Lucian", "238": "Zed", "240": "Kled", "245": "Ekko", "246": "Qiyana", "254": "Vi", "266": "Aatrox", "267": "Nami", "268": "Azir", "350": "Yuumi", "360": "Samira", "412": "Thresh", "420": "Illaoi", "421": "RekSai", "427": "Ivern", "429": "Kalista", "432": "Bard", "497": "Rakan", "498": "Xayah", "516": "Ornn", "517": "Sylas", "518": "Neeko", "523": "Aphelios", "526": "Rell", "555": "Pyke", "711": "Vex", "777": "Yone", "875": "Sett", "876": "Lillia", "887": "Gwen", "888": "Renata", "895": "Nilah", "897": "KSante", "901": "Smolder", "902": "Milio", "910": "Hwei", "950": "Naafiri" };