osrs-tools 2.5.3 → 2.6.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 (218) hide show
  1. package/README.md +270 -270
  2. package/dist/runescape/model/quest/QuestTool.d.ts.map +1 -1
  3. package/dist/runescape/model/quest/QuestTool.js +102 -4
  4. package/dist/runescape/model/quest/all/ANightAtTheTheatre.d.ts +4 -0
  5. package/dist/runescape/model/quest/all/ANightAtTheTheatre.d.ts.map +1 -0
  6. package/dist/runescape/model/quest/all/ANightAtTheTheatre.js +4 -0
  7. package/dist/runescape/model/quest/all/AtFirstLight.d.ts +4 -0
  8. package/dist/runescape/model/quest/all/AtFirstLight.d.ts.map +1 -0
  9. package/dist/runescape/model/quest/all/AtFirstLight.js +4 -0
  10. package/dist/runescape/model/quest/all/BeneathCursedSands.d.ts +4 -0
  11. package/dist/runescape/model/quest/all/BeneathCursedSands.d.ts.map +1 -0
  12. package/dist/runescape/model/quest/all/BeneathCursedSands.js +4 -0
  13. package/dist/runescape/model/quest/all/ChildrenOfTheSun.d.ts +4 -0
  14. package/dist/runescape/model/quest/all/ChildrenOfTheSun.d.ts.map +1 -0
  15. package/dist/runescape/model/quest/all/ChildrenOfTheSun.js +4 -0
  16. package/dist/runescape/model/quest/all/ColdWar.js +1 -1
  17. package/dist/runescape/model/quest/all/DeathOnTheIsle.d.ts +4 -0
  18. package/dist/runescape/model/quest/all/DeathOnTheIsle.d.ts.map +1 -0
  19. package/dist/runescape/model/quest/all/DeathOnTheIsle.js +4 -0
  20. package/dist/runescape/model/quest/all/DefenderOfVarrock.d.ts +4 -0
  21. package/dist/runescape/model/quest/all/DefenderOfVarrock.d.ts.map +1 -0
  22. package/dist/runescape/model/quest/all/DefenderOfVarrock.js +4 -0
  23. package/dist/runescape/model/quest/all/DesertTreasureI.d.ts +4 -0
  24. package/dist/runescape/model/quest/all/DesertTreasureI.d.ts.map +1 -0
  25. package/dist/runescape/model/quest/all/DesertTreasureI.js +4 -0
  26. package/dist/runescape/model/quest/all/DesertTreasureIITheFallenEmpire.d.ts +4 -0
  27. package/dist/runescape/model/quest/all/DesertTreasureIITheFallenEmpire.d.ts.map +1 -0
  28. package/dist/runescape/model/quest/all/DesertTreasureIITheFallenEmpire.js +4 -0
  29. package/dist/runescape/model/quest/all/DragonSlayerI.js +1 -1
  30. package/dist/runescape/model/quest/all/ErnestTheChicken.d.ts +4 -0
  31. package/dist/runescape/model/quest/all/ErnestTheChicken.d.ts.map +1 -0
  32. package/dist/runescape/model/quest/all/ErnestTheChicken.js +38 -0
  33. package/dist/runescape/model/quest/all/EthicallyAcquiredAntiquities.d.ts +4 -0
  34. package/dist/runescape/model/quest/all/EthicallyAcquiredAntiquities.d.ts.map +1 -0
  35. package/dist/runescape/model/quest/all/EthicallyAcquiredAntiquities.js +4 -0
  36. package/dist/runescape/model/quest/all/LandOfTheGoblins.d.ts +4 -0
  37. package/dist/runescape/model/quest/all/LandOfTheGoblins.d.ts.map +1 -0
  38. package/dist/runescape/model/quest/all/LandOfTheGoblins.js +4 -0
  39. package/dist/runescape/model/quest/all/LearningTheRopes.d.ts +4 -0
  40. package/dist/runescape/model/quest/all/LearningTheRopes.d.ts.map +1 -0
  41. package/dist/runescape/model/quest/all/LearningTheRopes.js +37 -0
  42. package/dist/runescape/model/quest/all/MakingFriendsWithMyArm.d.ts +4 -0
  43. package/dist/runescape/model/quest/all/MakingFriendsWithMyArm.d.ts.map +1 -0
  44. package/dist/runescape/model/quest/all/MakingFriendsWithMyArm.js +25 -0
  45. package/dist/runescape/model/quest/all/MisthalinMystery.d.ts +4 -0
  46. package/dist/runescape/model/quest/all/MisthalinMystery.d.ts.map +1 -0
  47. package/dist/runescape/model/quest/all/MisthalinMystery.js +4 -0
  48. package/dist/runescape/model/quest/all/MonkeyMadnessI.d.ts +4 -0
  49. package/dist/runescape/model/quest/all/MonkeyMadnessI.d.ts.map +1 -0
  50. package/dist/runescape/model/quest/all/MonkeyMadnessI.js +4 -0
  51. package/dist/runescape/model/quest/all/MountainDaughter.d.ts +4 -0
  52. package/dist/runescape/model/quest/all/MountainDaughter.d.ts.map +1 -0
  53. package/dist/runescape/model/quest/all/MountainDaughter.js +25 -0
  54. package/dist/runescape/model/quest/all/MourningsEndPartI.d.ts +4 -0
  55. package/dist/runescape/model/quest/all/MourningsEndPartI.d.ts.map +1 -0
  56. package/dist/runescape/model/quest/all/MourningsEndPartI.js +4 -0
  57. package/dist/runescape/model/quest/all/MourningsEndPartII.d.ts +4 -0
  58. package/dist/runescape/model/quest/all/MourningsEndPartII.d.ts.map +1 -0
  59. package/dist/runescape/model/quest/all/MourningsEndPartII.js +4 -0
  60. package/dist/runescape/model/quest/all/PerilousMoons.d.ts +4 -0
  61. package/dist/runescape/model/quest/all/PerilousMoons.d.ts.map +1 -0
  62. package/dist/runescape/model/quest/all/PerilousMoons.js +4 -0
  63. package/dist/runescape/model/quest/all/PiratesTreasure.d.ts +4 -0
  64. package/dist/runescape/model/quest/all/PiratesTreasure.d.ts.map +1 -0
  65. package/dist/runescape/model/quest/all/PiratesTreasure.js +4 -0
  66. package/dist/runescape/model/quest/all/PrinceAliRescue.d.ts +4 -0
  67. package/dist/runescape/model/quest/all/PrinceAliRescue.d.ts.map +1 -0
  68. package/dist/runescape/model/quest/all/PrinceAliRescue.js +4 -0
  69. package/dist/runescape/model/quest/all/RagAndBoneManI.d.ts +4 -0
  70. package/dist/runescape/model/quest/all/RagAndBoneManI.d.ts.map +1 -0
  71. package/dist/runescape/model/quest/all/RagAndBoneManI.js +4 -0
  72. package/dist/runescape/model/quest/all/RagAndBoneManII.d.ts +4 -0
  73. package/dist/runescape/model/quest/all/RagAndBoneManII.d.ts.map +1 -0
  74. package/dist/runescape/model/quest/all/RagAndBoneManII.js +4 -0
  75. package/dist/runescape/model/quest/all/RomeoAndJuliet.d.ts +4 -0
  76. package/dist/runescape/model/quest/all/RomeoAndJuliet.d.ts.map +1 -0
  77. package/dist/runescape/model/quest/all/RomeoAndJuliet.js +25 -0
  78. package/dist/runescape/model/quest/all/RuneMysteries.d.ts +4 -0
  79. package/dist/runescape/model/quest/all/RuneMysteries.d.ts.map +1 -0
  80. package/dist/runescape/model/quest/all/RuneMysteries.js +4 -0
  81. package/dist/runescape/model/quest/all/SecretsOfTheNorth.d.ts +4 -0
  82. package/dist/runescape/model/quest/all/SecretsOfTheNorth.d.ts.map +1 -0
  83. package/dist/runescape/model/quest/all/SecretsOfTheNorth.js +4 -0
  84. package/dist/runescape/model/quest/all/SheepShearer.d.ts +4 -0
  85. package/dist/runescape/model/quest/all/SheepShearer.d.ts.map +1 -0
  86. package/dist/runescape/model/quest/all/SheepShearer.js +4 -0
  87. package/dist/runescape/model/quest/all/ShieldOfArrav.d.ts +4 -0
  88. package/dist/runescape/model/quest/all/ShieldOfArrav.d.ts.map +1 -0
  89. package/dist/runescape/model/quest/all/ShieldOfArrav.js +4 -0
  90. package/dist/runescape/model/quest/all/SinsOfTheFather.d.ts +4 -0
  91. package/dist/runescape/model/quest/all/SinsOfTheFather.d.ts.map +1 -0
  92. package/dist/runescape/model/quest/all/SinsOfTheFather.js +4 -0
  93. package/dist/runescape/model/quest/all/SleepingGiants.d.ts +4 -0
  94. package/dist/runescape/model/quest/all/SleepingGiants.d.ts.map +1 -0
  95. package/dist/runescape/model/quest/all/SleepingGiants.js +4 -0
  96. package/dist/runescape/model/quest/all/TaleOfTheRighteous.d.ts +4 -0
  97. package/dist/runescape/model/quest/all/TaleOfTheRighteous.d.ts.map +1 -0
  98. package/dist/runescape/model/quest/all/TaleOfTheRighteous.js +4 -0
  99. package/dist/runescape/model/quest/all/TearsOfGuthix.d.ts +4 -0
  100. package/dist/runescape/model/quest/all/TearsOfGuthix.d.ts.map +1 -0
  101. package/dist/runescape/model/quest/all/TearsOfGuthix.js +4 -0
  102. package/dist/runescape/model/quest/all/TempleOfIkov.d.ts +4 -0
  103. package/dist/runescape/model/quest/all/TempleOfIkov.d.ts.map +1 -0
  104. package/dist/runescape/model/quest/all/TempleOfIkov.js +4 -0
  105. package/dist/runescape/model/quest/all/TempleOfTheEye.d.ts +4 -0
  106. package/dist/runescape/model/quest/all/TempleOfTheEye.d.ts.map +1 -0
  107. package/dist/runescape/model/quest/all/TempleOfTheEye.js +4 -0
  108. package/dist/runescape/model/quest/all/TheCorsairCurse.d.ts +4 -0
  109. package/dist/runescape/model/quest/all/TheCorsairCurse.d.ts.map +1 -0
  110. package/dist/runescape/model/quest/all/TheCorsairCurse.js +25 -0
  111. package/dist/runescape/model/quest/all/TheCurseOfArrav.d.ts +4 -0
  112. package/dist/runescape/model/quest/all/TheCurseOfArrav.d.ts.map +1 -0
  113. package/dist/runescape/model/quest/all/TheCurseOfArrav.js +34 -0
  114. package/dist/runescape/model/quest/all/TheDigSite.d.ts +4 -0
  115. package/dist/runescape/model/quest/all/TheDigSite.d.ts.map +1 -0
  116. package/dist/runescape/model/quest/all/TheDigSite.js +4 -0
  117. package/dist/runescape/model/quest/all/TheEyesOfGlouphrie.d.ts +4 -0
  118. package/dist/runescape/model/quest/all/TheEyesOfGlouphrie.d.ts.map +1 -0
  119. package/dist/runescape/model/quest/all/TheEyesOfGlouphrie.js +4 -0
  120. package/dist/runescape/model/quest/all/TheFeud.d.ts +4 -0
  121. package/dist/runescape/model/quest/all/TheFeud.d.ts.map +1 -0
  122. package/dist/runescape/model/quest/all/TheFeud.js +4 -0
  123. package/dist/runescape/model/quest/all/TheGardenOfDeath.d.ts +4 -0
  124. package/dist/runescape/model/quest/all/TheGardenOfDeath.d.ts.map +1 -0
  125. package/dist/runescape/model/quest/all/TheGardenOfDeath.js +4 -0
  126. package/dist/runescape/model/quest/all/TheHandInTheSand.js +1 -1
  127. package/dist/runescape/model/quest/all/TheHeartOfDarkness.d.ts +4 -0
  128. package/dist/runescape/model/quest/all/TheHeartOfDarkness.d.ts.map +1 -0
  129. package/dist/runescape/model/quest/all/TheHeartOfDarkness.js +4 -0
  130. package/dist/runescape/model/quest/all/TheIdesOfMilk.d.ts +4 -0
  131. package/dist/runescape/model/quest/all/TheIdesOfMilk.d.ts.map +1 -0
  132. package/dist/runescape/model/quest/all/TheIdesOfMilk.js +4 -0
  133. package/dist/runescape/model/quest/all/ThePathOfGlouphrie.d.ts +4 -0
  134. package/dist/runescape/model/quest/all/ThePathOfGlouphrie.d.ts.map +1 -0
  135. package/dist/runescape/model/quest/all/ThePathOfGlouphrie.js +4 -0
  136. package/dist/runescape/model/quest/all/TheRestlessGhost.d.ts +4 -0
  137. package/dist/runescape/model/quest/all/TheRestlessGhost.d.ts.map +1 -0
  138. package/dist/runescape/model/quest/all/TheRestlessGhost.js +4 -0
  139. package/dist/runescape/model/quest/all/TheRibbitingTaleOfALilyPadLabourDispute.d.ts +4 -0
  140. package/dist/runescape/model/quest/all/TheRibbitingTaleOfALilyPadLabourDispute.d.ts.map +1 -0
  141. package/dist/runescape/model/quest/all/TheRibbitingTaleOfALilyPadLabourDispute.js +4 -0
  142. package/dist/runescape/model/quest/all/TwilightsPromise.d.ts +4 -0
  143. package/dist/runescape/model/quest/all/TwilightsPromise.d.ts.map +1 -0
  144. package/dist/runescape/model/quest/all/TwilightsPromise.js +4 -0
  145. package/dist/runescape/model/quest/all/WhileGuthixSleeps.d.ts +4 -0
  146. package/dist/runescape/model/quest/all/WhileGuthixSleeps.d.ts.map +1 -0
  147. package/dist/runescape/model/quest/all/WhileGuthixSleeps.js +4 -0
  148. package/dist/runescape/model/quest/all/WitchsPotion.d.ts +4 -0
  149. package/dist/runescape/model/quest/all/WitchsPotion.d.ts.map +1 -0
  150. package/dist/runescape/model/quest/all/WitchsPotion.js +4 -0
  151. package/dist/runescape/model/quest/all/XMarksTheSpot.d.ts +4 -0
  152. package/dist/runescape/model/quest/all/XMarksTheSpot.d.ts.map +1 -0
  153. package/dist/runescape/model/quest/all/XMarksTheSpot.js +4 -0
  154. package/dist/runescape/model/quest/all/index.d.ts +47 -0
  155. package/dist/runescape/model/quest/all/index.d.ts.map +1 -1
  156. package/dist/runescape/model/quest/all/index.js +47 -0
  157. package/dist/runescape/model/slayer/index.d.ts +10 -10
  158. package/dist/runescape/model/slayer/index.d.ts.map +1 -1
  159. package/dist/runescape/model/slayer/index.js +8 -8
  160. package/dist/runescape/model/slayer/masters/index.d.ts +19 -19
  161. package/dist/runescape/model/slayer/masters/index.d.ts.map +1 -1
  162. package/dist/runescape/model/slayer/masters/index.js +20 -20
  163. package/dist/runescape/model/slayer/masters/registry.d.ts +1 -1
  164. package/dist/runescape/model/slayer/masters/registry.d.ts.map +1 -1
  165. package/dist/runescape/model/slayer/masters/registry.js +1 -1
  166. package/dist/runescape/model/slayer/masters.d.ts +8 -0
  167. package/dist/runescape/model/slayer/masters.d.ts.map +1 -0
  168. package/dist/runescape/model/slayer/masters.js +6 -0
  169. package/dist/runescape/model/slayer/tasks/index.d.ts +11 -11
  170. package/dist/runescape/model/slayer/tasks/index.js +11 -11
  171. package/package.json +96 -96
  172. package/public/assets/icons/diaries/Ardougne_Diary.png +0 -0
  173. package/public/assets/icons/diaries/Desert_Diary.png +0 -0
  174. package/public/assets/icons/diaries/Falador_Diary.png +0 -0
  175. package/public/assets/icons/diaries/Fremennik_Diary.png +0 -0
  176. package/public/assets/icons/diaries/Kandarin_Diary.png +0 -0
  177. package/public/assets/icons/diaries/Karamja_Diary.png +0 -0
  178. package/public/assets/icons/diaries/Morytania_Diary.png +0 -0
  179. package/public/assets/icons/diaries/Varrock_Diary.png +0 -0
  180. package/public/assets/icons/diaries/Wilderness_Diary.png +0 -0
  181. package/public/assets/icons/skills/Agility_icon.png +0 -0
  182. package/public/assets/icons/skills/Attack_icon.png +0 -0
  183. package/public/assets/icons/skills/Construction_icon.png +0 -0
  184. package/public/assets/icons/skills/Cooking_icon.png +0 -0
  185. package/public/assets/icons/skills/Crafting_icon.png +0 -0
  186. package/public/assets/icons/skills/Defence_icon.png +0 -0
  187. package/public/assets/icons/skills/Farming_icon.png +0 -0
  188. package/public/assets/icons/skills/Firemaking_icon.png +0 -0
  189. package/public/assets/icons/skills/Fishing_icon.png +0 -0
  190. package/public/assets/icons/skills/Fletching_icon.png +0 -0
  191. package/public/assets/icons/skills/Herblore_icon.png +0 -0
  192. package/public/assets/icons/skills/Hitpoints_icon.png +0 -0
  193. package/public/assets/icons/skills/Magic_icon.png +0 -0
  194. package/public/assets/icons/skills/Mining_icon.png +0 -0
  195. package/public/assets/icons/skills/Prayer_icon.png +0 -0
  196. package/public/assets/icons/skills/Ranged_icon.png +0 -0
  197. package/public/assets/icons/skills/Sailing_icon.png +0 -0
  198. package/public/assets/icons/skills/Slayer_icon.png +0 -0
  199. package/public/assets/icons/skills/Smithing_icon.png +0 -0
  200. package/public/assets/icons/skills/Strength_icon.png +0 -0
  201. package/public/assets/icons/skills/Thieving_icon.png +0 -0
  202. package/public/assets/icons/skills/Woodcutting_icon.png +0 -0
  203. package/public/assets/icons/tabs/Combat_Tab.png +0 -0
  204. package/public/assets/icons/tabs/Inventory_Tab.png +0 -0
  205. package/public/assets/icons/tabs/Magic_Tab.png +0 -0
  206. package/public/assets/icons/tabs/Prayer_Tab.png +0 -0
  207. package/public/assets/icons/tabs/Quest_Tab.png +0 -0
  208. package/public/assets/icons/tabs/Skills_Tab.png +0 -0
  209. package/public/assets/icons/ui/Bank.png +0 -0
  210. package/public/assets/icons/ui/Music.png +0 -0
  211. package/public/assets/icons/ui/Quest_Points.png +0 -0
  212. package/public/assets/icons/ui/Settings.png +0 -0
  213. package/dist/runescape/model/Item/ClueScrollRewards.js +0 -286
  214. package/dist/runescape/model/Item/all/StudiedChaps.js +0 -35
  215. package/dist/runescape/model/Item/models/YellowPartyhat.obj +0 -149
  216. package/dist/runescape/model/slayer/Masters.js +0 -101
  217. package/dist/runescape/tools/ClueScrollHelper.js +0 -103
  218. package/dist/runescape/utils/cache.js +0 -124
@@ -1,124 +0,0 @@
1
- /**
2
- * Generic cache implementation with LRU eviction and TTL support
3
- */
4
- export class Cache {
5
- store = new Map();
6
- maxSize;
7
- ttl;
8
- /**
9
- * Creates a new Cache instance
10
- * @param options Cache configuration options
11
- */
12
- constructor(options = {}) {
13
- this.maxSize = options.maxSize || 100;
14
- this.ttl = options.ttl;
15
- }
16
- /**
17
- * Store a value in the cache
18
- * @param key Cache key
19
- * @param value Value to store
20
- * @param ttl Optional TTL override for this item
21
- */
22
- set(key, value, ttl) {
23
- // Enforce size limit using LRU eviction
24
- if (this.store.size >= this.maxSize) {
25
- const firstKey = this.store.keys().next().value;
26
- this.store.delete(firstKey);
27
- }
28
- const expiresAt = ttl || this.ttl ? Date.now() + (ttl || this.ttl) : undefined;
29
- this.store.set(key, { expiresAt, value });
30
- }
31
- /**
32
- * Retrieve a value from the cache
33
- * @param key Cache key
34
- * @returns Stored value or undefined if not found/expired
35
- */
36
- get(key) {
37
- const item = this.store.get(key);
38
- if (!item) {
39
- return undefined;
40
- }
41
- // Check if item has expired
42
- if (item.expiresAt && Date.now() > item.expiresAt) {
43
- this.store.delete(key);
44
- return undefined;
45
- }
46
- return item.value;
47
- }
48
- /**
49
- * Remove an item from the cache
50
- * @param key Cache key
51
- * @returns true if item was found and removed
52
- */
53
- delete(key) {
54
- return this.store.delete(key);
55
- }
56
- /**
57
- * Clear all items from the cache
58
- */
59
- clear() {
60
- this.store.clear();
61
- }
62
- /**
63
- * Get the number of items in the cache
64
- */
65
- get size() {
66
- return this.store.size;
67
- }
68
- /**
69
- * Get all valid keys in the cache
70
- * @returns Array of cache keys
71
- */
72
- keys() {
73
- const now = Date.now();
74
- return Array.from(this.store.entries())
75
- .filter(([, item]) => !item.expiresAt || item.expiresAt > now)
76
- .map(([key]) => key);
77
- }
78
- /**
79
- * Remove all expired items from the cache
80
- * @returns Number of items removed
81
- */
82
- prune() {
83
- const now = Date.now();
84
- let removed = 0;
85
- for (const [key, item] of this.store.entries()) {
86
- if (item.expiresAt && item.expiresAt <= now) {
87
- this.store.delete(key);
88
- removed++;
89
- }
90
- }
91
- return removed;
92
- }
93
- /**
94
- * Check if a key exists in the cache and isn't expired
95
- * @param key Cache key
96
- * @returns true if key exists and isn't expired
97
- */
98
- has(key) {
99
- const item = this.store.get(key);
100
- if (!item) {
101
- return false;
102
- }
103
- if (item.expiresAt && Date.now() > item.expiresAt) {
104
- this.store.delete(key);
105
- return false;
106
- }
107
- return true;
108
- }
109
- /**
110
- * Get or set a cache value
111
- * @param key Cache key
112
- * @param factory Function to create value if not found
113
- * @returns Cached or newly created value
114
- */
115
- async getOrSet(key, factory) {
116
- const existing = this.get(key);
117
- if (existing !== undefined) {
118
- return existing;
119
- }
120
- const value = await factory();
121
- this.set(key, value);
122
- return value;
123
- }
124
- }