CachedAssetsManager
Index
Constructors
Properties
Methods
- _downloadCacheZip
- _getExcelData
- _getExcelDataPath
- _validateCache
- activateAutoCacheUpdater
- cacheDirectorySetup
- checkForUpdates
- deactivateAutoCacheUpdater
- fetchAllContents
- fetchLanguageData
- formatExcel
- getExcelData
- getJSONDataPath
- getLanguageData
- getLanguageDataPath
- getObjectKeysManager
- hasAllContents
- refreshAllData
- removeUnusedTextData
- updateContents
Constructors
constructor
Parameters
enka: EnkaClient
Returns CachedAssetsManager
Properties
_cacheUpdater
_githubCache
_isFetching
cacheDirectoryPath
readonlydefaultCacheDirectoryPath
Default path of genshin cache data directory
readonlyenka
The client that instantiated this
gameDataBaseUrl
Base URL for fetching game data
Methods
_downloadCacheZip
Download the zip file, which contains genshin cache data, from https://raw.githubusercontent.com/yuko1101/enka-network-api/main/cache.zip
Parameters
options: { ghproxy?: boolean } = {}
Returns Promise<void>
_getExcelData
Type parameters
- T: AvatarExcelConfigData | FetterInfoExcelConfigData | AvatarCostumeExcelConfigData | AvatarSkillDepotExcelConfigData | AvatarSkillExcelConfigData | ProudSkillExcelConfigData | AvatarTalentExcelConfigData | AvatarPromoteExcelConfigData | AvatarCurveExcelConfigData | AvatarCodexExcelConfigData | WeaponExcelConfigData | WeaponPromoteExcelConfigData | WeaponCurveExcelConfigData | WeaponCodexExcelConfigData | EquipAffixExcelConfigData | ReliquaryExcelConfigData | ReliquaryLevelExcelConfigData | ReliquaryAffixExcelConfigData | ReliquarySetExcelConfigData | ReliquaryCodexExcelConfigData | ManualTextMapConfigData | AvatarHeroEntityExcelConfigData | TrialAvatarFetterDataConfigData | MaterialExcelConfigData | FetterCharacterCardExcelConfigData | RewardExcelConfigData | ProfilePictureExcelConfigData | RoleCombatDifficultyExcelConfigData
Parameters
excel: T
Returns SingleBy<{ AvatarCodexExcelConfigData: readonly [avatarId]; AvatarCostumeExcelConfigData: readonly [characterId, skinId]; AvatarCurveExcelConfigData: readonly [level]; AvatarExcelConfigData: readonly [id]; AvatarHeroEntityExcelConfigData: readonly [avatarId]; AvatarPromoteExcelConfigData: readonly [avatarPromoteId, readonly [promoteLevel, 0]]; AvatarSkillDepotExcelConfigData: readonly [id]; AvatarSkillExcelConfigData: readonly [id]; AvatarTalentExcelConfigData: readonly [talentId]; EquipAffixExcelConfigData: readonly [id, readonly [level, 0]]; FetterCharacterCardExcelConfigData: readonly [avatarId]; FetterInfoExcelConfigData: readonly [avatarId]; ManualTextMapConfigData: readonly [textMapId]; MaterialExcelConfigData: readonly [id]; ProfilePictureExcelConfigData: readonly [id]; ProudSkillExcelConfigData: readonly [proudSkillGroupId, level]; ReliquaryAffixExcelConfigData: readonly [id]; ReliquaryCodexExcelConfigData: readonly [suitId, level]; ReliquaryExcelConfigData: readonly [id]; ReliquaryLevelExcelConfigData: readonly [readonly [rank, 0], level]; ReliquarySetExcelConfigData: readonly [setId]; RewardExcelConfigData: readonly [rewardId]; RoleCombatDifficultyExcelConfigData: readonly [difficultyId]; TrialAvatarFetterDataConfigData: readonly [avatarId]; WeaponCodexExcelConfigData: readonly [weaponId]; WeaponCurveExcelConfigData: readonly [level]; WeaponExcelConfigData: readonly [id]; WeaponPromoteExcelConfigData: readonly [weaponPromoteId, readonly [promoteLevel, 0]] }[T]>
_getExcelDataPath
Parameters
excel: AvatarExcelConfigData | FetterInfoExcelConfigData | AvatarCostumeExcelConfigData | AvatarSkillDepotExcelConfigData | AvatarSkillExcelConfigData | ProudSkillExcelConfigData | AvatarTalentExcelConfigData | AvatarPromoteExcelConfigData | AvatarCurveExcelConfigData | AvatarCodexExcelConfigData | WeaponExcelConfigData | WeaponPromoteExcelConfigData | WeaponCurveExcelConfigData | WeaponCodexExcelConfigData | EquipAffixExcelConfigData | ReliquaryExcelConfigData | ReliquaryLevelExcelConfigData | ReliquaryAffixExcelConfigData | ReliquarySetExcelConfigData | ReliquaryCodexExcelConfigData | ManualTextMapConfigData | AvatarHeroEntityExcelConfigData | TrialAvatarFetterDataConfigData | MaterialExcelConfigData | FetterCharacterCardExcelConfigData | RewardExcelConfigData | ProfilePictureExcelConfigData | RoleCombatDifficultyExcelConfigData
Returns string
_validateCache
Parameters
showLog: boolean = true
Returns boolean
whether the cache is valid or not
activateAutoCacheUpdater
Parameters
options: Partial<AutoCacheUpdaterOptions> = {}
Returns void
cacheDirectorySetup
Create the necessary folders and files, and if the directory cacheDirectoryPath did not exist, move the cache files from the default path.
Returns Promise<void>
checkForUpdates
Parameters
useRawGenshinData: boolean = false
Whether to fetch from gitlab repo (https://gitlab.com/Dimbreath/AnimeGameData) instead of downloading cache.zip
Returns Promise<boolean>
Whether the game data update is available or not.
deactivateAutoCacheUpdater
Disables the updater activated by activateAutoCacheUpdater
Returns void
fetchAllContents
Parameters
options: Partial<FetchContentsOptions> = {}
Returns Promise<void>
fetchLanguageData
Obtains a text map for a specific language.
Parameters
lang: id | chs | cht | de | en | es | fr | jp | kr | pt | ru | th | vi
Returns Promise<Record<string, string>>
formatExcel
Type parameters
- T: AvatarExcelConfigData | FetterInfoExcelConfigData | AvatarCostumeExcelConfigData | AvatarSkillDepotExcelConfigData | AvatarSkillExcelConfigData | ProudSkillExcelConfigData | AvatarTalentExcelConfigData | AvatarPromoteExcelConfigData | AvatarCurveExcelConfigData | AvatarCodexExcelConfigData | WeaponExcelConfigData | WeaponPromoteExcelConfigData | WeaponCurveExcelConfigData | WeaponCodexExcelConfigData | EquipAffixExcelConfigData | ReliquaryExcelConfigData | ReliquaryLevelExcelConfigData | ReliquaryAffixExcelConfigData | ReliquarySetExcelConfigData | ReliquaryCodexExcelConfigData | ManualTextMapConfigData | AvatarHeroEntityExcelConfigData | TrialAvatarFetterDataConfigData | MaterialExcelConfigData | FetterCharacterCardExcelConfigData | RewardExcelConfigData | ProfilePictureExcelConfigData | RoleCombatDifficultyExcelConfigData
Parameters
excel: T
data: FlexJsonObject<JsonOptions, T>[]
Returns SingleBy<{ AvatarCodexExcelConfigData: readonly [avatarId]; AvatarCostumeExcelConfigData: readonly [characterId, skinId]; AvatarCurveExcelConfigData: readonly [level]; AvatarExcelConfigData: readonly [id]; AvatarHeroEntityExcelConfigData: readonly [avatarId]; AvatarPromoteExcelConfigData: readonly [avatarPromoteId, readonly [promoteLevel, 0]]; AvatarSkillDepotExcelConfigData: readonly [id]; AvatarSkillExcelConfigData: readonly [id]; AvatarTalentExcelConfigData: readonly [talentId]; EquipAffixExcelConfigData: readonly [id, readonly [level, 0]]; FetterCharacterCardExcelConfigData: readonly [avatarId]; FetterInfoExcelConfigData: readonly [avatarId]; ManualTextMapConfigData: readonly [textMapId]; MaterialExcelConfigData: readonly [id]; ProfilePictureExcelConfigData: readonly [id]; ProudSkillExcelConfigData: readonly [proudSkillGroupId, level]; ReliquaryAffixExcelConfigData: readonly [id]; ReliquaryCodexExcelConfigData: readonly [suitId, level]; ReliquaryExcelConfigData: readonly [id]; ReliquaryLevelExcelConfigData: readonly [readonly [rank, 0], level]; ReliquarySetExcelConfigData: readonly [setId]; RewardExcelConfigData: readonly [rewardId]; RoleCombatDifficultyExcelConfigData: readonly [difficultyId]; TrialAvatarFetterDataConfigData: readonly [avatarId]; WeaponCodexExcelConfigData: readonly [weaponId]; WeaponCurveExcelConfigData: readonly [level]; WeaponExcelConfigData: readonly [id]; WeaponPromoteExcelConfigData: readonly [weaponPromoteId, readonly [promoteLevel, 0]] }[T]>
getExcelData
Type parameters
- T: AvatarExcelConfigData | FetterInfoExcelConfigData | AvatarCostumeExcelConfigData | AvatarSkillDepotExcelConfigData | AvatarSkillExcelConfigData | ProudSkillExcelConfigData | AvatarTalentExcelConfigData | AvatarPromoteExcelConfigData | AvatarCurveExcelConfigData | AvatarCodexExcelConfigData | WeaponExcelConfigData | WeaponPromoteExcelConfigData | WeaponCurveExcelConfigData | WeaponCodexExcelConfigData | EquipAffixExcelConfigData | ReliquaryExcelConfigData | ReliquaryLevelExcelConfigData | ReliquaryAffixExcelConfigData | ReliquarySetExcelConfigData | ReliquaryCodexExcelConfigData | ManualTextMapConfigData | AvatarHeroEntityExcelConfigData | TrialAvatarFetterDataConfigData | MaterialExcelConfigData | FetterCharacterCardExcelConfigData | RewardExcelConfigData | ProfilePictureExcelConfigData | RoleCombatDifficultyExcelConfigData
- U: (string | number)[]
Parameters
excel: T
rest...keys: U
Returns IndexBy<SingleBy<{ AvatarCodexExcelConfigData: readonly [avatarId]; AvatarCostumeExcelConfigData: readonly [characterId, skinId]; AvatarCurveExcelConfigData: readonly [level]; AvatarExcelConfigData: readonly [id]; AvatarHeroEntityExcelConfigData: readonly [avatarId]; AvatarPromoteExcelConfigData: readonly [avatarPromoteId, readonly [promoteLevel, 0]]; AvatarSkillDepotExcelConfigData: readonly [id]; AvatarSkillExcelConfigData: readonly [id]; AvatarTalentExcelConfigData: readonly [talentId]; EquipAffixExcelConfigData: readonly [id, readonly [level, 0]]; FetterCharacterCardExcelConfigData: readonly [avatarId]; FetterInfoExcelConfigData: readonly [avatarId]; ManualTextMapConfigData: readonly [textMapId]; MaterialExcelConfigData: readonly [id]; ProfilePictureExcelConfigData: readonly [id]; ProudSkillExcelConfigData: readonly [proudSkillGroupId, level]; ReliquaryAffixExcelConfigData: readonly [id]; ReliquaryCodexExcelConfigData: readonly [suitId, level]; ReliquaryExcelConfigData: readonly [id]; ReliquaryLevelExcelConfigData: readonly [readonly [rank, 0], level]; ReliquarySetExcelConfigData: readonly [setId]; RewardExcelConfigData: readonly [rewardId]; RoleCombatDifficultyExcelConfigData: readonly [difficultyId]; TrialAvatarFetterDataConfigData: readonly [avatarId]; WeaponCodexExcelConfigData: readonly [weaponId]; WeaponCurveExcelConfigData: readonly [level]; WeaponExcelConfigData: readonly [id]; WeaponPromoteExcelConfigData: readonly [weaponPromoteId, readonly [promoteLevel, 0]] }[T]>, U>
getJSONDataPath
Parameters
name: string
without extensions (.json)
Returns string
excel bin file path
getLanguageData
Parameters
lang: id | chs | cht | de | en | es | fr | jp | kr | pt | ru | th | vi
optionaldirectory: string
Returns JsonObject<string>
text map for a specific language
getLanguageDataPath
Parameters
lang: id | chs | cht | de | en | es | fr | jp | kr | pt | ru | th | vi
optionaldirectory: string
Returns string
text map file path for a specific language
getObjectKeysManager
Returns ObjectKeysManager
ObjectKeysManager of this
hasAllContents
Returns boolean
whether all genshin cache data files exist.
refreshAllData
Clean memory of cache data. Then reload data that was loaded before the clean if
reload
is true. Ifreload
is false, load each file as needed.Parameters
reload: boolean = false
Returns void
removeUnusedTextData
Remove all unused text map entries
Parameters
data: LoadedExcelDataMap
langsData: LoadedLanguageMap
showLog: boolean = true
Returns LoadedLanguageMap
updateContents
Parameters
options: Partial<UpdateContentsOptions> = {}
Returns Promise<void>
true if there were any updates, false if there were no updates.
Path of directory where genshin cache data is stored