Grabbed dndbeyond's source code
``` ~/go/bin/sourcemapper -output ddb -jsurl https://media.dndbeyond.com/character-app/static/js/main.90aa78c5.js ```
This commit is contained in:
@@ -0,0 +1,104 @@
|
||||
import { useSelector } from "react-redux";
|
||||
|
||||
import {
|
||||
RuleDataUtils as ruleDataUtils,
|
||||
ruleDataSelectors as s,
|
||||
} from "@dndbeyond/character-rules-engine";
|
||||
|
||||
/**
|
||||
* A hook that provides access to the rule data state without having to
|
||||
* import rules engine all over the place in your components. This reduces
|
||||
* touchpoints to the rules engine and makes it easier to refactor the rules
|
||||
* engine in the future.
|
||||
*/
|
||||
export const useRuleData = () => ({
|
||||
// Export all data coming from the RuleData selectors
|
||||
allData: useSelector(s.getAllData),
|
||||
abilityScoreDisplayTypes: useSelector(s.getAbilityScoreDisplayTypes),
|
||||
abilitySkills: useSelector(s.getAbilitySkills),
|
||||
activationTypes: useSelector(s.getActivationTypes),
|
||||
additionalLevelTypes: useSelector(s.getAdditionalLevelTypes),
|
||||
adjustmentDataTypes: useSelector(s.getAdjustmentDataTypes),
|
||||
adjustmentTypes: useSelector(s.getAdjustmentTypes),
|
||||
alignments: useSelector(s.getAlignments),
|
||||
aoeTypes: useSelector(s.getAoeTypes),
|
||||
armor: useSelector(s.getArmor),
|
||||
basicActions: useSelector(s.getBasicActions),
|
||||
baseWeaponReach: useSelector(s.getBaseWeaponReach),
|
||||
basicMaxStatScore: useSelector(s.getBasicMaxStatScore),
|
||||
challengeRatings: useSelector(s.getChallengeRatings),
|
||||
conditionTypes: useSelector(s.getConditionTypes),
|
||||
conditions: useSelector(s.getConditions),
|
||||
creatureGroupCategories: useSelector(s.getCreatureGroupCategories),
|
||||
creatureGroupFlags: useSelector(s.getCreatureGroupFlags),
|
||||
creatureGroups: useSelector(s.getCreatureGroups),
|
||||
creatureSizes: useSelector(s.getCreatureSizes),
|
||||
currencyData: useSelector(s.getCurrencyData),
|
||||
damageAdjustments: useSelector(s.getDamageAdjustments),
|
||||
damageTypes: useSelector(s.getDamageTypes),
|
||||
defaultArmorImageUrl: useSelector(s.getDefaultArmorImageUrl),
|
||||
defaultAttunedItemCountMax: useSelector(s.getDefaultAttunedItemCountMax),
|
||||
defaultGearImageUrl: useSelector(s.getDefaultGearImageUrl),
|
||||
defaultRacePortraitUrl: useSelector(s.getDefaultRacePortraitUrl),
|
||||
defaultWeaponImageUrl: useSelector(s.getDefaultWeaponImageUrl),
|
||||
diceValues: useSelector(s.getDiceValues),
|
||||
environments: useSelector(s.getEnvironments),
|
||||
initiativeScore: useSelector(s.getInitiativeScore),
|
||||
languageTypeId: useSelector(s.getLanguageTypeId),
|
||||
languages: useSelector(s.getLanguages),
|
||||
levelExperiencePoints: useSelector(s.getLevelExperiencePoints),
|
||||
levelProficiencyBonuses: useSelector(s.getLevelProficiencyBonuses),
|
||||
lifestyles: useSelector(s.getLifestyles),
|
||||
limitedUseResetTypes: useSelector(s.getLimitedUseResetTypes),
|
||||
longRestMinHitDiceUsedRecovered: useSelector(
|
||||
s.getLongRestMinimumHitDiceUsedRecovered
|
||||
),
|
||||
maxAttunedItemCountMax: useSelector(s.getMaxAttunedItemCountMax),
|
||||
maxCharacterLevel: useSelector(s.getMaxCharacterLevel),
|
||||
maxDeathsavesFail: useSelector(s.getMaxDeathsavesFail),
|
||||
maxDeathsavesSuccess: useSelector(s.getMaxDeathsavesSuccess),
|
||||
maxSpellLevel: useSelector(s.getMaxSpellLevel),
|
||||
maxStatScore: useSelector(s.getMaxStatScore),
|
||||
minAttunedItemCountMax: useSelector(s.getMinAttunedItemCountMax),
|
||||
minStatScore: useSelector(s.getMinStatScore),
|
||||
minimumHpTotal: useSelector(s.getMinimumHpTotal),
|
||||
minimumLimitedUseMaxUse: useSelector(s.getMinimumLimitedUseMaxUse),
|
||||
monsterSubTypes: useSelector(s.getMonsterSubTypes),
|
||||
monsterTypes: useSelector(s.getMonsterTypes),
|
||||
movements: useSelector(s.getMovements),
|
||||
multiClassSpellSlots: useSelector(s.getMultiClassSpellSlots),
|
||||
naturalActions: useSelector(s.getNaturalActions),
|
||||
noArmorAcAmount: useSelector(s.getNoArmorAcAmount),
|
||||
pactMagicMultiClassSpellSlots: useSelector(
|
||||
s.getPactMagicMultiClassSpellSlots
|
||||
),
|
||||
privacyTypes: useSelector(s.getPrivacyTypes),
|
||||
proficiencyGroups: useSelector(s.getProficiencyGroups),
|
||||
raceGroups: useSelector(s.getRaceGroups),
|
||||
rangeTypes: useSelector(s.getRangeTypes),
|
||||
ritualCastingTimeMinuteAddition: useSelector(
|
||||
s.getRitualCastingTimeMinuteAddition
|
||||
),
|
||||
rules: useSelector(s.getRules),
|
||||
senses: useSelector(s.getSenses),
|
||||
sharingTypes: useSelector(s.getSharingTypes),
|
||||
sourceCategories: useSelector(s.getSourceCategories),
|
||||
sources: useSelector(s.getSources),
|
||||
spellComponents: useSelector(s.getSpellComponents),
|
||||
spellConditionTypes: useSelector(s.getSpellConditionTypes),
|
||||
spellRangeTypes: useSelector(s.getSpellRangeTypes),
|
||||
statModifiers: useSelector(s.getStatModifiers),
|
||||
stats: useSelector(s.getStats),
|
||||
stealthCheckTypes: useSelector(s.getStealthCheckTypes),
|
||||
stringMartialArts: useSelector(s.getStringMartialArts),
|
||||
stringPactMagic: useSelector(s.getStringPactMagic),
|
||||
stringSpellCasting: useSelector(s.getStringSpellCasting),
|
||||
stringSpellEldritchBlast: useSelector(s.getStringSpellEldritchBlast),
|
||||
weapons: useSelector(s.getWeapons),
|
||||
weaponCategories: useSelector(s.getWeaponCategories),
|
||||
weaponProperties: useSelector(s.getWeaponProperties),
|
||||
weaponPropertyReachDistance: useSelector(s.getWeaponPropertyReachDistance),
|
||||
|
||||
// Export all utils from RuleDataUtils
|
||||
ruleDataUtils,
|
||||
});
|
||||
Reference in New Issue
Block a user