@kitten-science/kitten-scientists 2.0.0-beta.10-20250403-28002ba → 2.0.0-beta.10-20250407-52a10b3

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 (419) hide show
  1. package/lib/BonfireManager.d.ts +3 -3
  2. package/lib/BonfireManager.d.ts.map +1 -1
  3. package/lib/BonfireManager.js +10 -10
  4. package/lib/BonfireManager.js.map +1 -1
  5. package/lib/Engine.d.ts +89 -89
  6. package/lib/Engine.d.ts.map +1 -1
  7. package/lib/Engine.js +17 -17
  8. package/lib/Engine.js.map +1 -1
  9. package/lib/KittenScientists.d.ts +1 -1
  10. package/lib/KittenScientists.d.ts.map +1 -1
  11. package/lib/KittenScientists.js +8 -8
  12. package/lib/KittenScientists.js.map +1 -1
  13. package/lib/ReligionManager.d.ts +2 -2
  14. package/lib/ReligionManager.d.ts.map +1 -1
  15. package/lib/ReligionManager.js +6 -6
  16. package/lib/ReligionManager.js.map +1 -1
  17. package/lib/ScienceManager.d.ts +2 -2
  18. package/lib/ScienceManager.d.ts.map +1 -1
  19. package/lib/ScienceManager.js +2 -2
  20. package/lib/ScienceManager.js.map +1 -1
  21. package/lib/SpaceManager.d.ts +2 -2
  22. package/lib/SpaceManager.d.ts.map +1 -1
  23. package/lib/SpaceManager.js +2 -2
  24. package/lib/SpaceManager.js.map +1 -1
  25. package/lib/TimeControlManager.d.ts +2 -2
  26. package/lib/TimeControlManager.d.ts.map +1 -1
  27. package/lib/TimeControlManager.js +3 -3
  28. package/lib/TimeControlManager.js.map +1 -1
  29. package/lib/TimeManager.d.ts +2 -2
  30. package/lib/TimeManager.d.ts.map +1 -1
  31. package/lib/TimeManager.js +3 -3
  32. package/lib/TimeManager.js.map +1 -1
  33. package/lib/TradeManager.d.ts +3 -3
  34. package/lib/TradeManager.d.ts.map +1 -1
  35. package/lib/TradeManager.js +4 -4
  36. package/lib/TradeManager.js.map +1 -1
  37. package/lib/UpgradeManager.js +3 -3
  38. package/lib/UpgradeManager.js.map +1 -1
  39. package/lib/VillageManager.d.ts +3 -3
  40. package/lib/VillageManager.d.ts.map +1 -1
  41. package/lib/VillageManager.js +2 -2
  42. package/lib/VillageManager.js.map +1 -1
  43. package/lib/WorkshopManager.d.ts +3 -3
  44. package/lib/WorkshopManager.d.ts.map +1 -1
  45. package/lib/WorkshopManager.js +4 -4
  46. package/lib/WorkshopManager.js.map +1 -1
  47. package/lib/helper/BulkPurchaseHelper.d.ts +1 -1
  48. package/lib/helper/BulkPurchaseHelper.d.ts.map +1 -1
  49. package/lib/helper/BulkPurchaseHelper.js +5 -5
  50. package/lib/helper/BulkPurchaseHelper.js.map +1 -1
  51. package/lib/i18n/en-US.json +20 -20
  52. package/lib/i18n/translations/da-DK.json +20 -20
  53. package/lib/i18n/translations/de-DE.json +20 -20
  54. package/lib/i18n/translations/fr-FR.json +20 -20
  55. package/lib/i18n/translations/he-IL.json +20 -20
  56. package/lib/i18n/translations/ko-KR.json +20 -20
  57. package/lib/i18n/translations/ru-RU.json +20 -20
  58. package/lib/i18n/translations/zh-CN.json +20 -20
  59. package/lib/images/Icons.d.ts +8 -8
  60. package/lib/images/Icons.d.ts.map +1 -1
  61. package/lib/images/Icons.js +8 -8
  62. package/lib/images/Icons.js.map +1 -1
  63. package/lib/settings/BonfireSettings.d.ts.map +1 -1
  64. package/lib/settings/BonfireSettings.js.map +1 -1
  65. package/lib/settings/BuildingUpgradeSettings.d.ts.map +1 -1
  66. package/lib/settings/BuildingUpgradeSettings.js.map +1 -1
  67. package/lib/settings/ElectLeaderSettings.d.ts.map +1 -1
  68. package/lib/settings/ElectLeaderSettings.js.map +1 -1
  69. package/lib/settings/EmbassySettings.d.ts.map +1 -1
  70. package/lib/settings/EmbassySettings.js.map +1 -1
  71. package/lib/settings/EngineSettings.d.ts.map +1 -1
  72. package/lib/settings/EngineSettings.js.map +1 -1
  73. package/lib/settings/LogFilterSettings.d.ts.map +1 -1
  74. package/lib/settings/LogFilterSettings.js.map +1 -1
  75. package/lib/settings/MissionSettings.d.ts.map +1 -1
  76. package/lib/settings/MissionSettings.js.map +1 -1
  77. package/lib/settings/PolicySettings.d.ts.map +1 -1
  78. package/lib/settings/PolicySettings.js.map +1 -1
  79. package/lib/settings/ReligionSettings.d.ts.map +1 -1
  80. package/lib/settings/ReligionSettings.js.map +1 -1
  81. package/lib/settings/ResetBonfireSettings.d.ts.map +1 -1
  82. package/lib/settings/ResetBonfireSettings.js.map +1 -1
  83. package/lib/settings/ResetReligionSettings.d.ts.map +1 -1
  84. package/lib/settings/ResetReligionSettings.js.map +1 -1
  85. package/lib/settings/ResetResourcesSettings.d.ts.map +1 -1
  86. package/lib/settings/ResetResourcesSettings.js.map +1 -1
  87. package/lib/settings/ResetSettings.d.ts.map +1 -1
  88. package/lib/settings/ResetSettings.js.map +1 -1
  89. package/lib/settings/ResetSpaceSettings.d.ts.map +1 -1
  90. package/lib/settings/ResetSpaceSettings.js.map +1 -1
  91. package/lib/settings/ResetTimeSettings.d.ts.map +1 -1
  92. package/lib/settings/ResetTimeSettings.js.map +1 -1
  93. package/lib/settings/ResetUpgradeSettings.d.ts.map +1 -1
  94. package/lib/settings/ResetUpgradeSettings.js.map +1 -1
  95. package/lib/settings/ResourcesSettings.d.ts.map +1 -1
  96. package/lib/settings/ResourcesSettings.js +1 -1
  97. package/lib/settings/ResourcesSettings.js.map +1 -1
  98. package/lib/settings/ScienceSettings.d.ts.map +1 -1
  99. package/lib/settings/ScienceSettings.js.map +1 -1
  100. package/lib/settings/Settings.d.ts.map +1 -1
  101. package/lib/settings/Settings.js.map +1 -1
  102. package/lib/settings/SpaceSettings.d.ts.map +1 -1
  103. package/lib/settings/SpaceSettings.js.map +1 -1
  104. package/lib/settings/StateSettings.d.ts.map +1 -1
  105. package/lib/settings/StateSettings.js.map +1 -1
  106. package/lib/settings/TechSettings.d.ts.map +1 -1
  107. package/lib/settings/TechSettings.js.map +1 -1
  108. package/lib/settings/TimeControlSettings.d.ts.map +1 -1
  109. package/lib/settings/TimeControlSettings.js.map +1 -1
  110. package/lib/settings/TimeSettings.d.ts.map +1 -1
  111. package/lib/settings/TimeSettings.js.map +1 -1
  112. package/lib/settings/TimeSkipHeatSettings.d.ts.map +1 -1
  113. package/lib/settings/TimeSkipHeatSettings.js.map +1 -1
  114. package/lib/settings/TimeSkipSettings.d.ts.map +1 -1
  115. package/lib/settings/TimeSkipSettings.js.map +1 -1
  116. package/lib/settings/TradeSettings.d.ts.map +1 -1
  117. package/lib/settings/TradeSettings.js +2 -2
  118. package/lib/settings/TradeSettings.js.map +1 -1
  119. package/lib/settings/UpgradeSettings.d.ts.map +1 -1
  120. package/lib/settings/UpgradeSettings.js.map +1 -1
  121. package/lib/settings/VillageSettings.d.ts.map +1 -1
  122. package/lib/settings/VillageSettings.js.map +1 -1
  123. package/lib/settings/WorkshopSettings.d.ts.map +1 -1
  124. package/lib/settings/WorkshopSettings.js.map +1 -1
  125. package/lib/tools/Log.d.ts +1 -1
  126. package/lib/tools/Log.d.ts.map +1 -1
  127. package/lib/tools/Log.js +4 -1
  128. package/lib/tools/Log.js.map +1 -1
  129. package/lib/types/game.d.ts +2 -2
  130. package/lib/types/game.d.ts.map +1 -1
  131. package/lib/types/index.d.ts +1 -1
  132. package/lib/types/index.d.ts.map +1 -1
  133. package/lib/types/village.d.ts.map +1 -1
  134. package/lib/ui/BonfireSettingsUi.d.ts +4 -5
  135. package/lib/ui/BonfireSettingsUi.d.ts.map +1 -1
  136. package/lib/ui/BonfireSettingsUi.js +100 -115
  137. package/lib/ui/BonfireSettingsUi.js.map +1 -1
  138. package/lib/ui/BuildSectionTools.d.ts +2 -26
  139. package/lib/ui/BuildSectionTools.d.ts.map +1 -1
  140. package/lib/ui/BuildSectionTools.js +50 -59
  141. package/lib/ui/BuildSectionTools.js.map +1 -1
  142. package/lib/ui/BuildingUpgradeSettingsUi.d.ts +2 -4
  143. package/lib/ui/BuildingUpgradeSettingsUi.d.ts.map +1 -1
  144. package/lib/ui/BuildingUpgradeSettingsUi.js +16 -23
  145. package/lib/ui/BuildingUpgradeSettingsUi.js.map +1 -1
  146. package/lib/ui/EmbassySettingsUi.d.ts +4 -5
  147. package/lib/ui/EmbassySettingsUi.d.ts.map +1 -1
  148. package/lib/ui/EmbassySettingsUi.js +54 -67
  149. package/lib/ui/EmbassySettingsUi.js.map +1 -1
  150. package/lib/ui/EngineSettingsUi.d.ts +3 -3
  151. package/lib/ui/EngineSettingsUi.d.ts.map +1 -1
  152. package/lib/ui/EngineSettingsUi.js +11 -9
  153. package/lib/ui/EngineSettingsUi.js.map +1 -1
  154. package/lib/ui/InternalsUi.d.ts +2 -2
  155. package/lib/ui/InternalsUi.d.ts.map +1 -1
  156. package/lib/ui/InternalsUi.js +44 -54
  157. package/lib/ui/InternalsUi.js.map +1 -1
  158. package/lib/ui/LogFilterSettingsUi.d.ts +2 -4
  159. package/lib/ui/LogFilterSettingsUi.d.ts.map +1 -1
  160. package/lib/ui/LogFilterSettingsUi.js +24 -32
  161. package/lib/ui/LogFilterSettingsUi.js.map +1 -1
  162. package/lib/ui/MissionSettingsUi.d.ts +2 -4
  163. package/lib/ui/MissionSettingsUi.d.ts.map +1 -1
  164. package/lib/ui/MissionSettingsUi.js +15 -20
  165. package/lib/ui/MissionSettingsUi.js.map +1 -1
  166. package/lib/ui/PolicySettingsUi.d.ts +2 -4
  167. package/lib/ui/PolicySettingsUi.d.ts.map +1 -1
  168. package/lib/ui/PolicySettingsUi.js +15 -22
  169. package/lib/ui/PolicySettingsUi.js.map +1 -1
  170. package/lib/ui/ReligionSettingsUi.d.ts +4 -6
  171. package/lib/ui/ReligionSettingsUi.d.ts.map +1 -1
  172. package/lib/ui/ReligionSettingsUi.js +128 -152
  173. package/lib/ui/ReligionSettingsUi.js.map +1 -1
  174. package/lib/ui/ResetBonfireSettingsUi.d.ts +2 -2
  175. package/lib/ui/ResetBonfireSettingsUi.d.ts.map +1 -1
  176. package/lib/ui/ResetBonfireSettingsUi.js +33 -39
  177. package/lib/ui/ResetBonfireSettingsUi.js.map +1 -1
  178. package/lib/ui/ResetReligionSettingsUi.d.ts +2 -2
  179. package/lib/ui/ResetReligionSettingsUi.d.ts.map +1 -1
  180. package/lib/ui/ResetReligionSettingsUi.js +45 -54
  181. package/lib/ui/ResetReligionSettingsUi.js.map +1 -1
  182. package/lib/ui/ResetResourcesSettingsUi.d.ts +2 -2
  183. package/lib/ui/ResetResourcesSettingsUi.d.ts.map +1 -1
  184. package/lib/ui/ResetResourcesSettingsUi.js +27 -34
  185. package/lib/ui/ResetResourcesSettingsUi.js.map +1 -1
  186. package/lib/ui/ResetSettingsUi.d.ts +2 -4
  187. package/lib/ui/ResetSettingsUi.d.ts.map +1 -1
  188. package/lib/ui/ResetSettingsUi.js +19 -24
  189. package/lib/ui/ResetSettingsUi.js.map +1 -1
  190. package/lib/ui/ResetSpaceSettingsUi.d.ts +2 -2
  191. package/lib/ui/ResetSpaceSettingsUi.d.ts.map +1 -1
  192. package/lib/ui/ResetSpaceSettingsUi.js +33 -42
  193. package/lib/ui/ResetSpaceSettingsUi.js.map +1 -1
  194. package/lib/ui/ResetTimeSettingsUi.d.ts +2 -2
  195. package/lib/ui/ResetTimeSettingsUi.d.ts.map +1 -1
  196. package/lib/ui/ResetTimeSettingsUi.js +35 -44
  197. package/lib/ui/ResetTimeSettingsUi.js.map +1 -1
  198. package/lib/ui/ResetUpgradesSettingsUi.d.ts +2 -2
  199. package/lib/ui/ResetUpgradesSettingsUi.d.ts.map +1 -1
  200. package/lib/ui/ResetUpgradesSettingsUi.js +12 -12
  201. package/lib/ui/ResetUpgradesSettingsUi.js.map +1 -1
  202. package/lib/ui/ResourcesSettingsUi.d.ts +2 -4
  203. package/lib/ui/ResourcesSettingsUi.d.ts.map +1 -1
  204. package/lib/ui/ResourcesSettingsUi.js +18 -22
  205. package/lib/ui/ResourcesSettingsUi.js.map +1 -1
  206. package/lib/ui/ScienceSettingsUi.d.ts +2 -5
  207. package/lib/ui/ScienceSettingsUi.d.ts.map +1 -1
  208. package/lib/ui/ScienceSettingsUi.js +26 -45
  209. package/lib/ui/ScienceSettingsUi.js.map +1 -1
  210. package/lib/ui/SpaceSettingsUi.d.ts +4 -5
  211. package/lib/ui/SpaceSettingsUi.d.ts.map +1 -1
  212. package/lib/ui/SpaceSettingsUi.js +47 -58
  213. package/lib/ui/SpaceSettingsUi.js.map +1 -1
  214. package/lib/ui/StateManagementUi.d.ts +2 -3
  215. package/lib/ui/StateManagementUi.d.ts.map +1 -1
  216. package/lib/ui/StateManagementUi.js +172 -179
  217. package/lib/ui/StateManagementUi.js.map +1 -1
  218. package/lib/ui/TechSettingsUi.d.ts +4 -5
  219. package/lib/ui/TechSettingsUi.d.ts.map +1 -1
  220. package/lib/ui/TechSettingsUi.js +56 -74
  221. package/lib/ui/TechSettingsUi.js.map +1 -1
  222. package/lib/ui/TimeControlSettingsUi.d.ts +3 -4
  223. package/lib/ui/TimeControlSettingsUi.d.ts.map +1 -1
  224. package/lib/ui/TimeControlSettingsUi.js +27 -39
  225. package/lib/ui/TimeControlSettingsUi.js.map +1 -1
  226. package/lib/ui/TimeSettingsUi.d.ts +4 -5
  227. package/lib/ui/TimeSettingsUi.d.ts.map +1 -1
  228. package/lib/ui/TimeSettingsUi.js +58 -65
  229. package/lib/ui/TimeSettingsUi.js.map +1 -1
  230. package/lib/ui/TimeSkipHeatSettingsUi.d.ts +4 -5
  231. package/lib/ui/TimeSkipHeatSettingsUi.d.ts.map +1 -1
  232. package/lib/ui/TimeSkipHeatSettingsUi.js +33 -49
  233. package/lib/ui/TimeSkipHeatSettingsUi.js.map +1 -1
  234. package/lib/ui/TimeSkipSettingsUi.d.ts +2 -4
  235. package/lib/ui/TimeSkipSettingsUi.d.ts.map +1 -1
  236. package/lib/ui/TimeSkipSettingsUi.js +78 -106
  237. package/lib/ui/TimeSkipSettingsUi.js.map +1 -1
  238. package/lib/ui/TradeSettingsUi.d.ts +4 -5
  239. package/lib/ui/TradeSettingsUi.d.ts.map +1 -1
  240. package/lib/ui/TradeSettingsUi.js +113 -128
  241. package/lib/ui/TradeSettingsUi.js.map +1 -1
  242. package/lib/ui/UpgradeSettingsUi.d.ts +4 -5
  243. package/lib/ui/UpgradeSettingsUi.d.ts.map +1 -1
  244. package/lib/ui/UpgradeSettingsUi.js +55 -71
  245. package/lib/ui/UpgradeSettingsUi.js.map +1 -1
  246. package/lib/ui/UserInterface.d.ts +4 -2
  247. package/lib/ui/UserInterface.d.ts.map +1 -1
  248. package/lib/ui/UserInterface.js +38 -21
  249. package/lib/ui/UserInterface.js.map +1 -1
  250. package/lib/ui/VillageSettingsUi.d.ts +2 -4
  251. package/lib/ui/VillageSettingsUi.d.ts.map +1 -1
  252. package/lib/ui/VillageSettingsUi.js +94 -112
  253. package/lib/ui/VillageSettingsUi.js.map +1 -1
  254. package/lib/ui/WorkshopSettingsUi.d.ts +4 -5
  255. package/lib/ui/WorkshopSettingsUi.d.ts.map +1 -1
  256. package/lib/ui/WorkshopSettingsUi.js +89 -110
  257. package/lib/ui/WorkshopSettingsUi.js.map +1 -1
  258. package/lib/ui/components/Button.d.ts +9 -9
  259. package/lib/ui/components/Button.d.ts.map +1 -1
  260. package/lib/ui/components/Button.js +31 -26
  261. package/lib/ui/components/Button.js.map +1 -1
  262. package/lib/ui/components/ButtonListItem.d.ts +4 -4
  263. package/lib/ui/components/ButtonListItem.d.ts.map +1 -1
  264. package/lib/ui/components/ButtonListItem.js +2 -7
  265. package/lib/ui/components/ButtonListItem.js.map +1 -1
  266. package/lib/ui/components/CollapsiblePanel.d.ts +15 -12
  267. package/lib/ui/components/CollapsiblePanel.d.ts.map +1 -1
  268. package/lib/ui/components/CollapsiblePanel.js +42 -26
  269. package/lib/ui/components/CollapsiblePanel.js.map +1 -1
  270. package/lib/ui/components/Container.d.ts +6 -2
  271. package/lib/ui/components/Container.d.ts.map +1 -1
  272. package/lib/ui/components/Container.js +5 -3
  273. package/lib/ui/components/Container.js.map +1 -1
  274. package/lib/ui/components/CyclesList.d.ts +7 -8
  275. package/lib/ui/components/CyclesList.d.ts.map +1 -1
  276. package/lib/ui/components/CyclesList.js +34 -27
  277. package/lib/ui/components/CyclesList.js.map +1 -1
  278. package/lib/ui/components/Delimiter.d.ts +2 -2
  279. package/lib/ui/components/Delimiter.d.ts.map +1 -1
  280. package/lib/ui/components/Delimiter.js +5 -2
  281. package/lib/ui/components/Delimiter.js.map +1 -1
  282. package/lib/ui/components/Dialog.d.ts +13 -6
  283. package/lib/ui/components/Dialog.d.ts.map +1 -1
  284. package/lib/ui/components/Dialog.js +65 -40
  285. package/lib/ui/components/Dialog.js.map +1 -1
  286. package/lib/ui/components/ExplainerListItem.d.ts +4 -2
  287. package/lib/ui/components/ExplainerListItem.d.ts.map +1 -1
  288. package/lib/ui/components/ExplainerListItem.js +6 -4
  289. package/lib/ui/components/ExplainerListItem.js.map +1 -1
  290. package/lib/ui/components/Fieldset.d.ts +5 -4
  291. package/lib/ui/components/Fieldset.d.ts.map +1 -1
  292. package/lib/ui/components/Fieldset.js +5 -3
  293. package/lib/ui/components/Fieldset.js.map +1 -1
  294. package/lib/ui/components/HeaderListItem.d.ts +5 -3
  295. package/lib/ui/components/HeaderListItem.d.ts.map +1 -1
  296. package/lib/ui/components/HeaderListItem.js +5 -3
  297. package/lib/ui/components/HeaderListItem.js.map +1 -1
  298. package/lib/ui/components/IconButton.d.ts +8 -7
  299. package/lib/ui/components/IconButton.d.ts.map +1 -1
  300. package/lib/ui/components/IconButton.js +23 -19
  301. package/lib/ui/components/IconButton.js.map +1 -1
  302. package/lib/ui/components/IconSettingsPanel.d.ts +5 -4
  303. package/lib/ui/components/IconSettingsPanel.d.ts.map +1 -1
  304. package/lib/ui/components/IconSettingsPanel.js +4 -2
  305. package/lib/ui/components/IconSettingsPanel.js.map +1 -1
  306. package/lib/ui/components/Input.d.ts +5 -3
  307. package/lib/ui/components/Input.d.ts.map +1 -1
  308. package/lib/ui/components/Input.js +5 -3
  309. package/lib/ui/components/Input.js.map +1 -1
  310. package/lib/ui/components/LabelListItem.d.ts +10 -7
  311. package/lib/ui/components/LabelListItem.d.ts.map +1 -1
  312. package/lib/ui/components/LabelListItem.js +21 -10
  313. package/lib/ui/components/LabelListItem.js.map +1 -1
  314. package/lib/ui/components/ListItem.d.ts +8 -6
  315. package/lib/ui/components/ListItem.d.ts.map +1 -1
  316. package/lib/ui/components/ListItem.js +5 -3
  317. package/lib/ui/components/ListItem.js.map +1 -1
  318. package/lib/ui/components/OptionsListItem.d.ts +6 -6
  319. package/lib/ui/components/OptionsListItem.d.ts.map +1 -1
  320. package/lib/ui/components/OptionsListItem.js +17 -12
  321. package/lib/ui/components/OptionsListItem.js.map +1 -1
  322. package/lib/ui/components/Paragraph.d.ts +6 -2
  323. package/lib/ui/components/Paragraph.d.ts.map +1 -1
  324. package/lib/ui/components/Paragraph.js +5 -3
  325. package/lib/ui/components/Paragraph.js.map +1 -1
  326. package/lib/ui/components/RadioItem.d.ts +9 -8
  327. package/lib/ui/components/RadioItem.d.ts.map +1 -1
  328. package/lib/ui/components/RadioItem.js +13 -9
  329. package/lib/ui/components/RadioItem.js.map +1 -1
  330. package/lib/ui/components/SeasonsList.d.ts +7 -6
  331. package/lib/ui/components/SeasonsList.d.ts.map +1 -1
  332. package/lib/ui/components/SeasonsList.js +20 -13
  333. package/lib/ui/components/SeasonsList.js.map +1 -1
  334. package/lib/ui/components/SettingLimitedListItem.d.ts +8 -8
  335. package/lib/ui/components/SettingLimitedListItem.d.ts.map +1 -1
  336. package/lib/ui/components/SettingLimitedListItem.js +8 -9
  337. package/lib/ui/components/SettingLimitedListItem.js.map +1 -1
  338. package/lib/ui/components/SettingLimitedTriggerListItem.d.ts +8 -7
  339. package/lib/ui/components/SettingLimitedTriggerListItem.d.ts.map +1 -1
  340. package/lib/ui/components/SettingLimitedTriggerListItem.js +13 -12
  341. package/lib/ui/components/SettingLimitedTriggerListItem.js.map +1 -1
  342. package/lib/ui/components/SettingListItem.d.ts +11 -12
  343. package/lib/ui/components/SettingListItem.d.ts.map +1 -1
  344. package/lib/ui/components/SettingListItem.js +38 -38
  345. package/lib/ui/components/SettingListItem.js.map +1 -1
  346. package/lib/ui/components/SettingMaxListItem.d.ts +8 -8
  347. package/lib/ui/components/SettingMaxListItem.d.ts.map +1 -1
  348. package/lib/ui/components/SettingMaxListItem.js +13 -11
  349. package/lib/ui/components/SettingMaxListItem.js.map +1 -1
  350. package/lib/ui/components/SettingMaxTriggerListItem.d.ts +11 -8
  351. package/lib/ui/components/SettingMaxTriggerListItem.d.ts.map +1 -1
  352. package/lib/ui/components/SettingMaxTriggerListItem.js +21 -16
  353. package/lib/ui/components/SettingMaxTriggerListItem.js.map +1 -1
  354. package/lib/ui/components/SettingTriggerListItem.d.ts +9 -8
  355. package/lib/ui/components/SettingTriggerListItem.d.ts.map +1 -1
  356. package/lib/ui/components/SettingTriggerListItem.js +16 -13
  357. package/lib/ui/components/SettingTriggerListItem.js.map +1 -1
  358. package/lib/ui/components/SettingsList.d.ts +12 -11
  359. package/lib/ui/components/SettingsList.d.ts.map +1 -1
  360. package/lib/ui/components/SettingsList.js +14 -16
  361. package/lib/ui/components/SettingsList.js.map +1 -1
  362. package/lib/ui/components/SettingsPanel.d.ts +9 -8
  363. package/lib/ui/components/SettingsPanel.d.ts.map +1 -1
  364. package/lib/ui/components/SettingsPanel.js +10 -10
  365. package/lib/ui/components/SettingsPanel.js.map +1 -1
  366. package/lib/ui/components/TextButton.d.ts +7 -7
  367. package/lib/ui/components/TextButton.d.ts.map +1 -1
  368. package/lib/ui/components/TextButton.js +17 -13
  369. package/lib/ui/components/TextButton.js.map +1 -1
  370. package/lib/ui/components/ToolbarListItem.d.ts +6 -5
  371. package/lib/ui/components/ToolbarListItem.d.ts.map +1 -1
  372. package/lib/ui/components/ToolbarListItem.js +7 -12
  373. package/lib/ui/components/ToolbarListItem.js.map +1 -1
  374. package/lib/ui/components/UiComponent.d.ts +31 -19
  375. package/lib/ui/components/UiComponent.d.ts.map +1 -1
  376. package/lib/ui/components/UiComponent.js +84 -19
  377. package/lib/ui/components/UiComponent.js.map +1 -1
  378. package/lib/ui/components/WorkshopCraftListItem.d.ts +10 -9
  379. package/lib/ui/components/WorkshopCraftListItem.d.ts.map +1 -1
  380. package/lib/ui/components/WorkshopCraftListItem.js +20 -21
  381. package/lib/ui/components/WorkshopCraftListItem.js.map +1 -1
  382. package/lib/ui/components/buttons/ConsumeButton.d.ts +5 -3
  383. package/lib/ui/components/buttons/ConsumeButton.d.ts.map +1 -1
  384. package/lib/ui/components/buttons/ConsumeButton.js +23 -30
  385. package/lib/ui/components/buttons/ConsumeButton.js.map +1 -1
  386. package/lib/ui/components/buttons/ExpandoButton.d.ts +6 -3
  387. package/lib/ui/components/buttons/ExpandoButton.d.ts.map +1 -1
  388. package/lib/ui/components/buttons/ExpandoButton.js +20 -17
  389. package/lib/ui/components/buttons/ExpandoButton.js.map +1 -1
  390. package/lib/ui/components/buttons/LimitedButton.d.ts +8 -8
  391. package/lib/ui/components/buttons/LimitedButton.d.ts.map +1 -1
  392. package/lib/ui/components/buttons/LimitedButton.js +27 -21
  393. package/lib/ui/components/buttons/LimitedButton.js.map +1 -1
  394. package/lib/ui/components/buttons/MaxButton.d.ts +5 -5
  395. package/lib/ui/components/buttons/MaxButton.d.ts.map +1 -1
  396. package/lib/ui/components/buttons/MaxButton.js +5 -7
  397. package/lib/ui/components/buttons/MaxButton.js.map +1 -1
  398. package/lib/ui/components/buttons/PaddingButton.d.ts +4 -2
  399. package/lib/ui/components/buttons/PaddingButton.d.ts.map +1 -1
  400. package/lib/ui/components/buttons/PaddingButton.js +5 -3
  401. package/lib/ui/components/buttons/PaddingButton.js.map +1 -1
  402. package/lib/ui/components/buttons/StockButton.d.ts +5 -3
  403. package/lib/ui/components/buttons/StockButton.d.ts.map +1 -1
  404. package/lib/ui/components/buttons/StockButton.js +32 -40
  405. package/lib/ui/components/buttons/StockButton.js.map +1 -1
  406. package/lib/ui/components/buttons/TriggerButton.d.ts +6 -6
  407. package/lib/ui/components/buttons/TriggerButton.d.ts.map +1 -1
  408. package/lib/ui/components/buttons/TriggerButton.js +16 -20
  409. package/lib/ui/components/buttons/TriggerButton.js.map +1 -1
  410. package/lib/ui/components/buttons-text/BuyButton.d.ts +6 -6
  411. package/lib/ui/components/buttons-text/BuyButton.d.ts.map +1 -1
  412. package/lib/ui/components/buttons-text/BuyButton.js +23 -28
  413. package/lib/ui/components/buttons-text/BuyButton.js.map +1 -1
  414. package/lib/ui/components/buttons-text/SellButton.d.ts +6 -6
  415. package/lib/ui/components/buttons-text/SellButton.d.ts.map +1 -1
  416. package/lib/ui/components/buttons-text/SellButton.js +23 -30
  417. package/lib/ui/components/buttons-text/SellButton.js.map +1 -1
  418. package/output/kitten-scientists.inject.js +7562 -7675
  419. package/package.json +7 -5
@@ -3,8 +3,8 @@ import { redirectErrorsToConsole } from "@oliversalzburg/js-utils/errors/console
3
3
  import { formatDistanceToNow } from "date-fns/formatDistanceToNow";
4
4
  import { de, enUS, he, zhCN } from "date-fns/locale";
5
5
  import { Engine } from "../Engine.js";
6
- import { KittenScientists } from "../KittenScientists.js";
7
6
  import { Icons } from "../images/Icons.js";
7
+ import { KittenScientists } from "../KittenScientists.js";
8
8
  import { Unique } from "../tools/Entries.js";
9
9
  import { cl } from "../tools/Log.js";
10
10
  import { SavegameLoader } from "../tools/SavegameLoader.js";
@@ -34,24 +34,28 @@ export class StateManagementUi extends SettingsPanel {
34
34
  gameList;
35
35
  stateList;
36
36
  locale;
37
- constructor(host, settings, locale) {
38
- const label = host.engine.i18n("state.title");
39
- super(host, settings, new LabelListItem(host, label, {
40
- childrenHead: [
41
- new Container(host, {
42
- classes: [stylesLabelListItem.fillSpace],
43
- }),
44
- ],
37
+ constructor(parent, settings, locale) {
38
+ const label = parent.host.engine.i18n("state.title");
39
+ super(parent, settings, new LabelListItem(parent, label, {
45
40
  classes: [stylesSettingListItem.checked, stylesSettingListItem.setting],
46
41
  icon: Icons.State,
47
- }));
48
- this.gameList = new SettingsList(host, {
49
- hasEnableAll: false,
50
- hasDisableAll: false,
42
+ }).addChildrenHead([
43
+ new Container(parent, {
44
+ classes: [stylesLabelListItem.fillSpace],
45
+ }),
46
+ ]), {
47
+ onRefresh: () => {
48
+ this._refreshGameList();
49
+ this._refreshStateList();
50
+ },
51
51
  });
52
- this.stateList = new SettingsList(host, {
52
+ this.gameList = new SettingsList(this, {
53
+ hasDisableAll: false,
53
54
  hasEnableAll: false,
55
+ });
56
+ this.stateList = new SettingsList(this, {
54
57
  hasDisableAll: false,
58
+ hasEnableAll: false,
55
59
  });
56
60
  this.locale =
57
61
  locale.selected === "zh-CN"
@@ -61,74 +65,73 @@ export class StateManagementUi extends SettingsPanel {
61
65
  : locale.selected === "de-DE"
62
66
  ? de
63
67
  : enUS;
64
- this.addChild(new SettingsList(host, {
65
- children: [
66
- new SettingListItem(host, this.setting.noConfirm, host.engine.i18n("state.noConfirm")),
67
- new ListItem(host, { children: [new Delimiter(host)] }),
68
- new HeaderListItem(host, host.engine.i18n("state.local")),
69
- new ToolbarListItem(host, [
70
- new Button(host, host.engine.i18n("state.import"), Icons.Import, {
71
- onClick: () => {
72
- this.import();
73
- },
74
- title: host.engine.i18n("state.importTitle"),
75
- }),
76
- ]),
77
- new ListItem(host, { children: [new Delimiter(host)] }),
78
- new HeaderListItem(host, host.engine.i18n("state.localStates")),
79
- new ToolbarListItem(host, [
80
- new Button(host, host.engine.i18n("state.store"), Icons.SaveAs, {
81
- onClick: () => {
82
- this.storeState();
83
- },
84
- title: host.engine.i18n("state.storeState"),
85
- }),
86
- new Button(host, host.engine.i18n("copy"), Icons.Copy, {
87
- onClick: () => {
88
- this.copyState().catch(redirectErrorsToConsole(console));
89
- host.engine.imessage("state.copied.stateCurrent");
90
- },
91
- title: host.engine.i18n("state.copy.stateCurrent"),
92
- }),
93
- new Button(host, host.engine.i18n("state.new"), Icons.Draft, {
94
- onClick: () => {
95
- this.storeStateFactoryDefaults();
96
- host.engine.imessage("state.stored.state");
97
- },
98
- title: host.engine.i18n("state.storeFactory"),
99
- }),
100
- new Button(host, host.engine.i18n("state.exportAll"), Icons.Sync, {
101
- onClick: () => {
102
- this.exportStateAll();
103
- },
104
- title: host.engine.i18n("state.exportAllTitle"),
105
- }),
106
- ]),
107
- new ListItem(host, { children: [this.stateList] }),
108
- new ListItem(host, { children: [new Delimiter(host)] }),
109
- new HeaderListItem(host, host.engine.i18n("state.localGames")),
110
- new ToolbarListItem(host, [
111
- new Button(host, host.engine.i18n("state.store"), Icons.SaveAs, {
112
- onClick: () => {
113
- this.storeGame();
114
- host.engine.imessage("state.stored.game");
115
- },
116
- title: host.engine.i18n("state.storeGame"),
117
- }),
118
- new Button(host, host.engine.i18n("copy"), Icons.Copy, {
119
- onClick: () => {
120
- this.copyGame().catch(redirectErrorsToConsole(console));
121
- host.engine.imessage("state.copied.gameCurrent");
122
- },
123
- title: host.engine.i18n("state.copy.gameCurrent"),
124
- }),
125
- ]),
126
- new ListItem(host, { children: [this.gameList] }),
127
- new SettingListItem(host, this.setting.compress, host.engine.i18n("state.compress")),
128
- ],
68
+ this.addChildContent(new SettingsList(this, {
129
69
  hasDisableAll: false,
130
70
  hasEnableAll: false,
131
- }));
71
+ }).addChildren([
72
+ new SettingListItem(this, this.setting.noConfirm, this.host.engine.i18n("state.noConfirm")),
73
+ new ListItem(this).addChild(new Delimiter(this)),
74
+ new HeaderListItem(this, this.host.engine.i18n("state.local")),
75
+ new ToolbarListItem(this).addChildren([
76
+ new Button(this, this.host.engine.i18n("state.import"), Icons.Import, {
77
+ onClick: () => {
78
+ this.import();
79
+ },
80
+ title: this.host.engine.i18n("state.importTitle"),
81
+ }),
82
+ ]),
83
+ new ListItem(this).addChild(new Delimiter(this)),
84
+ new HeaderListItem(this, this.host.engine.i18n("state.localStates")),
85
+ new ToolbarListItem(this).addChildren([
86
+ new Button(this, this.host.engine.i18n("state.store"), Icons.SaveAs, {
87
+ onClick: () => {
88
+ this.storeState();
89
+ },
90
+ title: this.host.engine.i18n("state.storeState"),
91
+ }),
92
+ new Button(this, this.host.engine.i18n("copy"), Icons.Copy, {
93
+ onClick: () => {
94
+ this.copyState().catch(redirectErrorsToConsole(console));
95
+ this.host.engine.imessage("state.copied.stateCurrent");
96
+ },
97
+ title: this.host.engine.i18n("state.copy.stateCurrent"),
98
+ }),
99
+ new Button(this, this.host.engine.i18n("state.new"), Icons.Draft, {
100
+ onClick: () => {
101
+ this.storeStateFactoryDefaults();
102
+ this.host.engine.imessage("state.stored.state");
103
+ },
104
+ title: this.host.engine.i18n("state.storeFactory"),
105
+ }),
106
+ new Button(this, this.host.engine.i18n("state.exportAll"), Icons.Sync, {
107
+ onClick: () => {
108
+ this.exportStateAll();
109
+ },
110
+ title: this.host.engine.i18n("state.exportAllTitle"),
111
+ }),
112
+ ]),
113
+ new ListItem(this).addChild(this.stateList),
114
+ new ListItem(this).addChild(new Delimiter(this)),
115
+ new HeaderListItem(this, this.host.engine.i18n("state.localGames")),
116
+ new ToolbarListItem(this).addChildren([
117
+ new Button(this, this.host.engine.i18n("state.store"), Icons.SaveAs, {
118
+ onClick: () => {
119
+ this.storeGame();
120
+ this.host.engine.imessage("state.stored.game");
121
+ },
122
+ title: this.host.engine.i18n("state.storeGame"),
123
+ }),
124
+ new Button(this, this.host.engine.i18n("copy"), Icons.Copy, {
125
+ onClick: () => {
126
+ this.copyGame().catch(redirectErrorsToConsole(console));
127
+ this.host.engine.imessage("state.copied.gameCurrent");
128
+ },
129
+ title: this.host.engine.i18n("state.copy.gameCurrent"),
130
+ }),
131
+ ]),
132
+ new ListItem(this).addChild(this.gameList),
133
+ new SettingListItem(this, this.setting.compress, this.host.engine.i18n("state.compress")),
134
+ ]));
132
135
  this._loadGames();
133
136
  this._loadStates();
134
137
  }
@@ -187,114 +190,105 @@ export class StateManagementUi extends SettingsPanel {
187
190
  localStorage.setItem(`ks.state.${stateIndex++}`, JSON.stringify(state));
188
191
  }
189
192
  }
190
- refreshUi() {
191
- super.refreshUi();
192
- this._refreshGameList();
193
- this._refreshStateList();
194
- }
195
193
  _refreshGameList() {
196
194
  this.gameList.removeChildren(this.gameList.children);
197
195
  this.gameList.addChildren(this.games
198
196
  .sort((a, b) => new Date(a.unwrap().timestamp).getTime() - new Date(b.unwrap().timestamp).getTime())
199
197
  .map(game => [game.unwrap(), game])
200
- .map(([game, gameSlot]) => new ButtonListItem(this._host, new TextButton(this._host, `${game.label} (${formatDistanceToNow(new Date(game.timestamp), {
198
+ .map(([game, gameSlot]) => new ButtonListItem(this, new TextButton(this, `${game.label} (${formatDistanceToNow(new Date(game.timestamp), {
201
199
  addSuffix: true,
202
200
  locale: this.locale,
203
201
  })})`, {
204
202
  onClick: () => {
205
203
  this.loadGame(game.game).catch(redirectErrorsToConsole(console));
206
- this._host.engine.imessage("state.loaded.game", [game.label]);
204
+ this.host.engine.imessage("state.loaded.game", [game.label]);
207
205
  },
208
206
  title: new Date(game.timestamp).toLocaleString(),
209
- }), {
210
- children: [
211
- new Container(this._host, { classes: [stylesLabelListItem.fillSpace] }),
212
- new IconButton(this._host, Icons.Save, this._host.engine.i18n("state.update.game"), {
213
- onClick: () => {
214
- this.updateGame(gameSlot, this._host.game.save());
215
- this._host.engine.imessage("state.updated.game", [game.label]);
216
- },
217
- }),
218
- new IconButton(this._host, Icons.Edit, this._host.engine.i18n("state.edit.game"), {
219
- onClick: () => {
220
- this.storeGame(game.game);
221
- this.deleteGame(gameSlot, true);
222
- this._host.engine.imessage("state.updated.game", [game.label]);
223
- },
224
- }),
225
- new IconButton(this._host, Icons.Copy, this._host.engine.i18n("state.copy.game"), {
226
- onClick: () => {
227
- this.copyGame(game.game).catch(redirectErrorsToConsole(console));
228
- this._host.engine.imessage("state.copied.game", [game.label]);
229
- },
230
- }),
231
- new IconButton(this._host, Icons.Delete, this._host.engine.i18n("state.delete.game"), {
232
- onClick: () => {
233
- this.deleteGame(gameSlot);
234
- this._host.engine.imessage("state.deleted.game", [game.label]);
235
- },
236
- }),
237
- ],
238
- })));
207
+ })).addChildren([
208
+ new Container(this, { classes: [stylesLabelListItem.fillSpace] }),
209
+ new IconButton(this, Icons.Save, this.host.engine.i18n("state.update.game"), {
210
+ onClick: () => {
211
+ this.updateGame(gameSlot, this.host.game.save());
212
+ this.host.engine.imessage("state.updated.game", [game.label]);
213
+ },
214
+ }),
215
+ new IconButton(this, Icons.Edit, this.host.engine.i18n("state.edit.game"), {
216
+ onClick: () => {
217
+ this.storeGame(game.game);
218
+ this.deleteGame(gameSlot, true);
219
+ this.host.engine.imessage("state.updated.game", [game.label]);
220
+ },
221
+ }),
222
+ new IconButton(this, Icons.Copy, this.host.engine.i18n("state.copy.game"), {
223
+ onClick: () => {
224
+ this.copyGame(game.game).catch(redirectErrorsToConsole(console));
225
+ this.host.engine.imessage("state.copied.game", [game.label]);
226
+ },
227
+ }),
228
+ new IconButton(this, Icons.Delete, this.host.engine.i18n("state.delete.game"), {
229
+ onClick: () => {
230
+ this.deleteGame(gameSlot);
231
+ this.host.engine.imessage("state.deleted.game", [game.label]);
232
+ },
233
+ }),
234
+ ])));
239
235
  }
240
236
  _refreshStateList() {
241
237
  this.stateList.removeChildren(this.stateList.children);
242
238
  this.stateList.addChildren(this.states
243
239
  .sort((a, b) => new Date(a.unwrap().timestamp).getTime() - new Date(b.unwrap().timestamp).getTime())
244
240
  .map(stateSlot => [stateSlot.unwrap(), stateSlot])
245
- .map(([state, stateSlot]) => new ButtonListItem(this._host, new TextButton(this._host, `${state.label} (${formatDistanceToNow(new Date(state.timestamp), {
241
+ .map(([state, stateSlot]) => new ButtonListItem(this, new TextButton(this, `${state.label} (${formatDistanceToNow(new Date(state.timestamp), {
246
242
  addSuffix: true,
247
243
  locale: this.locale,
248
244
  })})`, {
249
245
  onClick: () => {
250
246
  this.loadState(state.state);
251
- this._host.engine.imessage("state.loaded.state", [state.label]);
247
+ this.host.engine.imessage("state.loaded.state", [state.label]);
252
248
  },
253
249
  title: new Date(state.timestamp).toLocaleString(),
254
- }), {
255
- children: [
256
- new Container(this._host, { classes: [stylesLabelListItem.fillSpace] }),
257
- new IconButton(this._host, Icons.Save, this._host.engine.i18n("state.update.state"), {
258
- onClick: () => {
259
- this.updateState(stateSlot, this._host.engine.stateSerialize());
260
- this._host.engine.imessage("state.updated.state", [state.label]);
261
- },
262
- }),
263
- new IconButton(this._host, Icons.Edit, this._host.engine.i18n("state.edit.state"), {
264
- onClick: () => {
265
- this.storeState(state.state);
266
- this.deleteState(stateSlot, true);
267
- this._host.engine.imessage("state.updated.state", [state.label]);
268
- },
269
- }),
270
- new IconButton(this._host, Icons.Copy, this._host.engine.i18n("state.copy.state"), {
271
- onClick: () => {
272
- this.copyState(state.state).catch(redirectErrorsToConsole(console));
273
- this._host.engine.imessage("state.copied.state", [state.label]);
274
- },
275
- }),
276
- new IconButton(this._host, Icons.Delete, this._host.engine.i18n("state.delete.state"), {
277
- onClick: () => {
278
- this.deleteState(stateSlot);
279
- this._host.engine.imessage("state.deleted.state", [state.label]);
280
- },
281
- }),
282
- ],
283
- })));
250
+ })).addChildren([
251
+ new Container(this, { classes: [stylesLabelListItem.fillSpace] }),
252
+ new IconButton(this, Icons.Save, this.host.engine.i18n("state.update.state"), {
253
+ onClick: () => {
254
+ this.updateState(stateSlot, this.host.engine.stateSerialize());
255
+ this.host.engine.imessage("state.updated.state", [state.label]);
256
+ },
257
+ }),
258
+ new IconButton(this, Icons.Edit, this.host.engine.i18n("state.edit.state"), {
259
+ onClick: () => {
260
+ this.storeState(state.state);
261
+ this.deleteState(stateSlot, true);
262
+ this.host.engine.imessage("state.updated.state", [state.label]);
263
+ },
264
+ }),
265
+ new IconButton(this, Icons.Copy, this.host.engine.i18n("state.copy.state"), {
266
+ onClick: () => {
267
+ this.copyState(state.state).catch(redirectErrorsToConsole(console));
268
+ this.host.engine.imessage("state.copied.state", [state.label]);
269
+ },
270
+ }),
271
+ new IconButton(this, Icons.Delete, this.host.engine.i18n("state.delete.state"), {
272
+ onClick: () => {
273
+ this.deleteState(stateSlot);
274
+ this.host.engine.imessage("state.deleted.state", [state.label]);
275
+ },
276
+ }),
277
+ ])));
284
278
  }
285
279
  async copyState(state) {
286
- await this._host.copySettings(state, false);
280
+ await this.host.copySettings(state, false);
287
281
  }
288
282
  async copyGame(game) {
289
- const saveData = game ?? this._host.game.save();
283
+ const saveData = game ?? this.host.game.save();
290
284
  const saveDataString = JSON.stringify(saveData);
291
285
  const encodedData = this.setting.compress.enabled
292
- ? this._host.game.compressLZData(saveDataString)
286
+ ? this.host.game.compressLZData(saveDataString)
293
287
  : saveDataString;
294
288
  await window.navigator.clipboard.writeText(encodedData);
295
289
  }
296
290
  import() {
297
- const input = window.prompt(this._host.engine.i18n("state.loadPrompt"));
291
+ const input = window.prompt(this.host.engine.i18n("state.loadPrompt"));
298
292
  if (isNil(input)) {
299
293
  return;
300
294
  }
@@ -302,7 +296,7 @@ export class StateManagementUi extends SettingsPanel {
302
296
  // decodeSettings throws if the input is not a valid engine state.
303
297
  const state = KittenScientists.decodeSettings(input);
304
298
  this.storeState(state);
305
- this._host.engine.imessage("state.imported.state");
299
+ this.host.engine.imessage("state.imported.state");
306
300
  return;
307
301
  }
308
302
  catch (_error) {
@@ -315,7 +309,7 @@ export class StateManagementUi extends SettingsPanel {
315
309
  }
316
310
  catch (_error) {
317
311
  /* expected, as we assume compressed input */
318
- const uncompressed = this._host.game.decompressLZData(input);
312
+ const uncompressed = this.host.game.decompressLZData(input);
319
313
  subjectData = JSON.parse(uncompressed);
320
314
  }
321
315
  // If game contains KS settings, import those separately.
@@ -323,55 +317,54 @@ export class StateManagementUi extends SettingsPanel {
323
317
  if ("ks" in subjectData && !isNil(subjectData.ks)) {
324
318
  const state = subjectData.ks.state[0];
325
319
  stateLabel = this.storeState(state) ?? undefined;
326
- this._host.engine.imessage("state.imported.state");
320
+ this.host.engine.imessage("state.imported.state");
327
321
  subjectData.ks = undefined;
328
322
  }
329
323
  this.storeGame(subjectData, stateLabel);
330
- this._host.engine.imessage("state.imported.game");
324
+ this.host.engine.imessage("state.imported.game");
331
325
  }
332
326
  storeGame(game, label) {
333
327
  let gameLabel = label;
334
328
  if (isNil(gameLabel)) {
335
- gameLabel = window.prompt(this._host.engine.i18n("state.storeGame.prompt")) ?? undefined;
329
+ gameLabel = window.prompt(this.host.engine.i18n("state.storeGame.prompt")) ?? undefined;
336
330
  }
337
331
  if (isNil(gameLabel)) {
338
332
  return null;
339
333
  }
340
334
  // Normalize empty string to "no label".
341
335
  gameLabel =
342
- (gameLabel === "" ? undefined : gameLabel) ?? this._host.engine.i18n("state.unlabeledGame");
336
+ (gameLabel === "" ? undefined : gameLabel) ?? this.host.engine.i18n("state.unlabeledGame");
343
337
  // Ensure labels aren't excessively long.
344
338
  gameLabel = gameLabel.substring(0, 127);
345
339
  this.games.push(new Unique({
340
+ game: game ?? this.host.game.save(),
346
341
  label: gameLabel,
347
- game: game ?? this._host.game.save(),
348
342
  timestamp: new Date().toISOString(),
349
343
  }));
350
344
  this._storeGames();
351
- this.refreshUi();
345
+ this.requestRefresh();
352
346
  return gameLabel;
353
347
  }
354
348
  storeState(state, label) {
355
349
  let stateLabel = label;
356
350
  if (isNil(stateLabel)) {
357
- stateLabel = window.prompt(this._host.engine.i18n("state.storeState.prompt")) ?? undefined;
351
+ stateLabel = window.prompt(this.host.engine.i18n("state.storeState.prompt")) ?? undefined;
358
352
  }
359
353
  if (isNil(stateLabel)) {
360
354
  return null;
361
355
  }
362
356
  // Normalize empty string to "no label".
363
357
  stateLabel =
364
- (stateLabel === "" ? undefined : stateLabel) ??
365
- this._host.engine.i18n("state.unlabeledState");
358
+ (stateLabel === "" ? undefined : stateLabel) ?? this.host.engine.i18n("state.unlabeledState");
366
359
  // Ensure labels aren't excessively long.
367
360
  stateLabel = stateLabel.substring(0, 127);
368
361
  this.states.push(new Unique({
369
362
  label: stateLabel,
370
- state: state ?? this._host.engine.stateSerialize(),
363
+ state: state ?? this.host.engine.stateSerialize(),
371
364
  timestamp: new Date().toISOString(),
372
365
  }));
373
366
  this._storeStates();
374
- this.refreshUi();
367
+ this.requestRefresh();
375
368
  return stateLabel;
376
369
  }
377
370
  storeStateFactoryDefaults() {
@@ -387,7 +380,7 @@ export class StateManagementUi extends SettingsPanel {
387
380
  timestamp: new Date().toISOString(),
388
381
  });
389
382
  this._storeStates();
390
- this.refreshUi();
383
+ this.requestRefresh();
391
384
  return;
392
385
  }
393
386
  console.info(...cl("Storing new Auto-Save..."));
@@ -396,7 +389,7 @@ export class StateManagementUi extends SettingsPanel {
396
389
  exportStateAll() {
397
390
  const statesJson = this.states
398
391
  .map(state => state.unwrap())
399
- .map(state => ({
392
+ .map(state => JSON.stringify({
400
393
  label: state.label,
401
394
  state: KittenScientists.encodeSettings(state.state, false),
402
395
  timestamp: state.timestamp,
@@ -413,17 +406,17 @@ export class StateManagementUi extends SettingsPanel {
413
406
  if (this._destructiveActionPrevented()) {
414
407
  return;
415
408
  }
416
- await new SavegameLoader(this._host.game).loadRaw(game);
409
+ await new SavegameLoader(this.host.game).loadRaw(game);
417
410
  }
418
411
  loadState(state) {
419
412
  if (this._destructiveActionPrevented()) {
420
413
  return;
421
414
  }
422
- this._host.engine.stateLoad(state, true);
423
- this._host.refreshUi();
415
+ this.host.engine.stateLoad(state, true);
416
+ this.host.refreshEntireUserInterface();
424
417
  }
425
418
  loadAutoSave() {
426
- if (this._host.engine.isLoaded) {
419
+ if (this.host.engine.isLoaded) {
427
420
  console.info(...cl("Not attempting to load Auto-Save, because a state is already loaded."));
428
421
  return;
429
422
  }
@@ -433,7 +426,7 @@ export class StateManagementUi extends SettingsPanel {
433
426
  return;
434
427
  }
435
428
  console.info(...cl("Loading Auto-Save..."));
436
- this._host.engine.stateLoad(existing.unwrap().state, false);
429
+ this.host.engine.stateLoad(existing.unwrap().state, false);
437
430
  }
438
431
  updateGame(game, newGame) {
439
432
  if (this._destructiveActionPrevented()) {
@@ -441,12 +434,12 @@ export class StateManagementUi extends SettingsPanel {
441
434
  }
442
435
  const label = game.unwrap().label;
443
436
  game.replace({
444
- label,
445
437
  game: newGame,
438
+ label,
446
439
  timestamp: new Date().toISOString(),
447
440
  });
448
441
  this._storeGames();
449
- this.refreshUi();
442
+ this.requestRefresh();
450
443
  }
451
444
  updateState(state, newState) {
452
445
  if (this._destructiveActionPrevented()) {
@@ -459,7 +452,7 @@ export class StateManagementUi extends SettingsPanel {
459
452
  timestamp: new Date().toISOString(),
460
453
  });
461
454
  this._storeStates();
462
- this.refreshUi();
455
+ this.requestRefresh();
463
456
  }
464
457
  deleteGame(game, force = false) {
465
458
  if (!force && this._destructiveActionPrevented()) {
@@ -471,7 +464,7 @@ export class StateManagementUi extends SettingsPanel {
471
464
  }
472
465
  this.games.splice(index, 1);
473
466
  this._storeGames();
474
- this.refreshUi();
467
+ this.requestRefresh();
475
468
  }
476
469
  deleteState(state, force = false) {
477
470
  if (!force && this._destructiveActionPrevented()) {
@@ -483,11 +476,11 @@ export class StateManagementUi extends SettingsPanel {
483
476
  }
484
477
  this.states.splice(index, 1);
485
478
  this._storeStates();
486
- this.refreshUi();
479
+ this.requestRefresh();
487
480
  }
488
481
  _destructiveActionPrevented() {
489
482
  if (!this.setting.noConfirm.enabled &&
490
- !window.confirm(this._host.engine.i18n("state.confirmDestruction"))) {
483
+ !window.confirm(this.host.engine.i18n("state.confirmDestruction"))) {
491
484
  return true;
492
485
  }
493
486
  return false;
@@ -1 +1 @@
1
- {"version":3,"file":"StateManagementUi.js","sourceRoot":"","sources":["../../source/ui/StateManagementUi.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"StateManagementUi.js","sourceRoot":"","sources":["../../source/ui/StateManagementUi.ts"],"names":[],"mappings":"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"}