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,126 @@
|
||||
import { createSelector } from 'reselect';
|
||||
import { CharacterGenerators } from '../engine/Character';
|
||||
import { ValueGenerators } from '../engine/Value';
|
||||
import { initialChoiceComponentState, } from '../generated';
|
||||
import { SelectorHelpers } from '../utils';
|
||||
export const getActions = (state) => state.character.actions;
|
||||
export const getActiveSourceCategories = (state) => SelectorHelpers.getArrayOrNullFallback(state.character.activeSourceCategories);
|
||||
export const getAdjustmentXp = (state) => state.character.adjustmentXp;
|
||||
export const getAge = (state) => state.character.age;
|
||||
export const getAlignmentId = (state) => state.character.alignmentId;
|
||||
export const getBackground = (state) => state.character.background;
|
||||
export const getBaseHp = (state) => state.character.baseHitPoints;
|
||||
export const getBonusHp = (state) => state.character.bonusHitPoints;
|
||||
export const getBonusStats = (state) => SelectorHelpers.getArrayOrNullFallback(state.character.bonusStats);
|
||||
export const getCampaign = (state) => state.character.campaign;
|
||||
export const getCampaignSetting = (state) => state.character.campaignSetting;
|
||||
export const getCanEdit = (state) => state.character.canEdit;
|
||||
export const getIsAssignedToPlayer = (state) => state.character.isAssignedToPlayer;
|
||||
export const getCharacterValues = (state) => SelectorHelpers.getArrayOrNullFallback(state.character.characterValues);
|
||||
export const getChoices = (state) => state.character.choices || initialChoiceComponentState;
|
||||
export const getClassSpells = (state) => SelectorHelpers.getArrayOrNullFallback(state.character.classSpells);
|
||||
export const getClasses = (state) => SelectorHelpers.getArrayOrNullFallback(state.character.classes);
|
||||
export const getConditions = (state) => SelectorHelpers.getArrayOrNullFallback(state.character.conditions);
|
||||
export const getConfiguration = (state) => state.character.configuration;
|
||||
export const getCreatures = (state) => SelectorHelpers.getArrayOrNullFallback(state.character.creatures);
|
||||
export const getCurrencies = (state) => state.character.currencies;
|
||||
export const getCurrentXp = (state) => state.character.currentXp;
|
||||
export const getCustomActions = (state) => SelectorHelpers.getArrayOrNullFallback(state.character.customActions);
|
||||
export const getCustomDefenseAdjustments = (state) => SelectorHelpers.getArrayOrNullFallback(state.character.customDefenseAdjustments);
|
||||
export const getCustomItems = (state) => SelectorHelpers.getArrayOrNullFallback(state.character.customItems);
|
||||
export const getCustomProficiencies = (state) => SelectorHelpers.getArrayOrNullFallback(state.character.customProficiencies);
|
||||
export const getCustomSenses = (state) => SelectorHelpers.getArrayOrNullFallback(state.character.customSenses);
|
||||
export const getCustomSpeeds = (state) => SelectorHelpers.getArrayOrNullFallback(state.character.customSpeeds);
|
||||
export const getDeathSaves = (state) => state.character.deathSaves;
|
||||
export const getDecorations = (state) => state.character.decorations;
|
||||
export const getEyes = (state) => state.character.eyes;
|
||||
export const getFaith = (state) => state.character.faith;
|
||||
export const getFeats = (state) => SelectorHelpers.getArrayOrNullFallback(state.character.feats);
|
||||
export const getGender = (state) => state.character.gender;
|
||||
export const getHair = (state) => state.character.hair;
|
||||
export const getHeight = (state) => state.character.height;
|
||||
export const getId = (state) => state.character.id;
|
||||
export const getInspiration = (state) => state.character.inspiration;
|
||||
export const getInventory = (state) => SelectorHelpers.getArrayOrNullFallback(state.character.inventory);
|
||||
export const getLifestyleId = (state) => state.character.lifestyleId;
|
||||
export const getModifiers = (state) => state.character.modifiers;
|
||||
export const getName = (state) => state.character.name;
|
||||
export const getNotes = (state) => state.character.notes;
|
||||
export const getOptionalClassFeatures = (state) => SelectorHelpers.getArrayOrNullFallback(state.character.optionalClassFeatures);
|
||||
export const getOptionalOrigins = (state) => SelectorHelpers.getArrayOrNullFallback(state.character.optionalOrigins);
|
||||
export const getOptions = (state) => state.character.options;
|
||||
export const getOverrideHp = (state) => state.character.overrideHitPoints;
|
||||
export const getOverrideStats = (state) => SelectorHelpers.getArrayOrNullFallback(state.character.overrideStats);
|
||||
export const getPactMagicSlots = (state) => SelectorHelpers.getArrayOrNullFallback(state.character.pactMagic);
|
||||
export const getPreferences = (state) => state.character.preferences;
|
||||
export const getRace = (state) => state.character.race;
|
||||
export const getReadOnlyUrl = (state) => state.character.readonlyUrl;
|
||||
export const getRemovedHp = (state) => state.character.removedHitPoints;
|
||||
export const getSkin = (state) => state.character.skin;
|
||||
export const getSpellSlots = (state) => SelectorHelpers.getArrayOrNullFallback(state.character.spellSlots);
|
||||
export const getSpells = (state) => state.character.spells;
|
||||
export const getStats = (state) => SelectorHelpers.getArrayOrNullFallback(state.character.stats);
|
||||
export const getTempHp = (state) => state.character.temporaryHitPoints;
|
||||
export const getTraits = (state) => state.character.traits;
|
||||
export const getUserId = (state) => state.character.userId;
|
||||
export const getUsername = (state) => state.character.username;
|
||||
export const getWeight = (state) => state.character.weight;
|
||||
export const getDeathSavesFailCount = (state) => state.character.deathSaves === null ? null : state.character.deathSaves.failCount;
|
||||
export const getDeathSavesSuccessCount = (state) => state.character.deathSaves === null ? null : state.character.deathSaves.successCount;
|
||||
export const getActions_class = (state) => state.character.actions === null ? [] : SelectorHelpers.getArrayOrNullFallback(state.character.actions.class);
|
||||
export const getActions_feat = (state) => state.character.actions === null ? [] : SelectorHelpers.getArrayOrNullFallback(state.character.actions.feat);
|
||||
export const getActions_race = (state) => state.character.actions === null ? [] : SelectorHelpers.getArrayOrNullFallback(state.character.actions.race);
|
||||
export const getChoices_background = (state) => state.character.choices === null ? [] : SelectorHelpers.getArrayOrNullFallback(state.character.choices.background);
|
||||
export const getChoices_class = (state) => state.character.choices === null ? [] : SelectorHelpers.getArrayOrNullFallback(state.character.choices.class);
|
||||
export const getChoices_feat = (state) => state.character.choices === null ? [] : SelectorHelpers.getArrayOrNullFallback(state.character.choices.feat);
|
||||
export const getChoices_race = (state) => state.character.choices === null ? [] : SelectorHelpers.getArrayOrNullFallback(state.character.choices.race);
|
||||
/**
|
||||
* @name getChoices_choiceDefinitions()
|
||||
* @param state
|
||||
* @returns {Array<BuilderChoiceDefinitions>}
|
||||
* Returns empty array if Character choices is null
|
||||
* or choices definitions if choices property is populated.
|
||||
*/
|
||||
export const getChoices_choiceDefinitions = (state) => state.character.choices === null
|
||||
? []
|
||||
: SelectorHelpers.getArrayOrNullFallback(state.character.choices.choiceDefinitions);
|
||||
export const getModifiers_background = (state) => state.character.modifiers === null
|
||||
? []
|
||||
: SelectorHelpers.getArrayOrNullFallback(state.character.modifiers.background);
|
||||
export const getModifiers_class = (state) => state.character.modifiers === null ? [] : SelectorHelpers.getArrayOrNullFallback(state.character.modifiers.class);
|
||||
export const getModifiers_condition = (state) => state.character.modifiers === null
|
||||
? []
|
||||
: SelectorHelpers.getArrayOrNullFallback(state.character.modifiers.condition);
|
||||
export const getModifiers_feat = (state) => state.character.modifiers === null ? [] : SelectorHelpers.getArrayOrNullFallback(state.character.modifiers.feat);
|
||||
export const getModifiers_item = (state) => state.character.modifiers === null ? [] : SelectorHelpers.getArrayOrNullFallback(state.character.modifiers.item);
|
||||
export const getModifiers_race = (state) => state.character.modifiers === null ? [] : SelectorHelpers.getArrayOrNullFallback(state.character.modifiers.race);
|
||||
export const getOptions_class = (state) => state.character.options === null ? [] : SelectorHelpers.getArrayOrNullFallback(state.character.options.class);
|
||||
export const getOptions_feat = (state) => state.character.options === null ? [] : SelectorHelpers.getArrayOrNullFallback(state.character.options.feat);
|
||||
export const getOptions_race = (state) => state.character.options === null ? [] : SelectorHelpers.getArrayOrNullFallback(state.character.options.race);
|
||||
export const getSpells_class = (state) => state.character.spells === null ? [] : SelectorHelpers.getArrayOrNullFallback(state.character.spells.class);
|
||||
export const getSpells_feat = (state) => state.character.spells === null ? [] : SelectorHelpers.getArrayOrNullFallback(state.character.spells.feat);
|
||||
export const getSpells_item = (state) => state.character.spells === null ? [] : SelectorHelpers.getArrayOrNullFallback(state.character.spells.item);
|
||||
export const getSpells_race = (state) => state.character.spells === null ? [] : SelectorHelpers.getArrayOrNullFallback(state.character.spells.race);
|
||||
/**
|
||||
* @returns {CustomSpeedLookup}
|
||||
*/
|
||||
export const getCustomSpeedLookup = createSelector([getCustomSpeeds], CharacterGenerators.generateCustomSpeedLookup);
|
||||
/**
|
||||
* @returns {CustomSenseLookup}
|
||||
*/
|
||||
export const getCustomSenseLookup = createSelector([getCustomSenses], CharacterGenerators.generateCustomSenseLookup);
|
||||
/**
|
||||
* @returns {ValueLookup}
|
||||
*/
|
||||
export const getCharacterValueLookup = createSelector([getCharacterValues], ValueGenerators.generateCharacterValueLookup);
|
||||
/**
|
||||
* @returns {EntityValueLookup}
|
||||
*/
|
||||
export const getCharacterValueLookupByEntity = createSelector([getCharacterValues], ValueGenerators.generateCharacterEntityValueLookup);
|
||||
/**
|
||||
* @returns {TypeValueLookup}
|
||||
*/
|
||||
export const getCharacterValueLookupByType = createSelector([getCharacterValues], ValueGenerators.generateCharacterTypeValueLookup);
|
||||
export const getPremadeInfo = (state) => state.character.premadeInfo;
|
||||
export const getStatus = (state) => state.character.status;
|
||||
export const getStatusSlug = (state) => state.character.statusSlug;
|
||||
@@ -0,0 +1,2 @@
|
||||
export const getContext = (state) => state.characterEnv.context;
|
||||
export const getLoadingStatus = (state) => state.characterEnv.loadingStatus;
|
||||
@@ -0,0 +1,171 @@
|
||||
import { merge } from 'lodash';
|
||||
import { createSelector } from 'reselect';
|
||||
import { ApiRequests, ApiUtils } from "../../../api";
|
||||
import { ApiAdapterUtils } from "../../../apiAdapter";
|
||||
import { BackgroundAccessors } from "../../../engine/Background";
|
||||
import { ClassAccessors } from "../../../engine/Class";
|
||||
import { DefinitionTypeEnum } from "../../../engine/Definition";
|
||||
import { EntityUtils, } from "../../../engine/Entity";
|
||||
import { RaceAccessors } from "../../../engine/Race";
|
||||
import * as characterSelectors from "../../character";
|
||||
import * as rulesEngineSelectors from "../engine";
|
||||
function restrictGameDataDefinitionResponseData(response, entityRestrictionData, characterId) {
|
||||
let originalData = ApiAdapterUtils.getResponseData(response);
|
||||
if (originalData !== null && characterId !== null && response.data.data !== undefined) {
|
||||
response.data.data.definitionData = EntityUtils.filterNonRestrictedEntityDefinitions(originalData.definitionData, entityRestrictionData);
|
||||
}
|
||||
return response;
|
||||
}
|
||||
function restrictEntityDefinitionResponseData(response, entityRestrictionData, characterId) {
|
||||
let originalData = ApiAdapterUtils.getResponseData(response);
|
||||
if (originalData !== null && characterId !== null) {
|
||||
const filteredDataData = EntityUtils.filterNonRestrictedEntityDefinitions(originalData, entityRestrictionData);
|
||||
const newResponseData = Object.assign({}, response.data, { data: filteredDataData });
|
||||
return Object.assign({}, response, { data: newResponseData });
|
||||
}
|
||||
return response;
|
||||
}
|
||||
function restrictEntityResponseData(response, entityRestrictionData, characterId) {
|
||||
let originalData = ApiAdapterUtils.getResponseData(response);
|
||||
if (originalData !== null && characterId !== null) {
|
||||
const filteredDataData = EntityUtils.filterNonRestrictedEntities(originalData, entityRestrictionData);
|
||||
const newResponseData = Object.assign({}, response.data, { data: filteredDataData });
|
||||
return Object.assign({}, response, { data: newResponseData });
|
||||
}
|
||||
return response;
|
||||
}
|
||||
export const makeLoadAvailableClasses = createSelector([rulesEngineSelectors.getEntityRestrictionData, characterSelectors.getId], (entityRestrictionData, characterId) => (additionalConfig) => {
|
||||
return ApiRequests.getCharacterGameDataClasses(additionalConfig).then((response) => restrictEntityDefinitionResponseData(response, entityRestrictionData, characterId));
|
||||
});
|
||||
export const makeLoadAvailableSubclasses = createSelector([rulesEngineSelectors.getEntityRestrictionData, characterSelectors.getId], (entityRestrictionData, characterId) => (baseClassId, additionalConfig) => {
|
||||
const requiredConfig = {
|
||||
params: {
|
||||
baseClassId,
|
||||
},
|
||||
};
|
||||
return ApiRequests.getCharacterGameDataSubclasses(merge({}, additionalConfig, requiredConfig)).then((response) => restrictEntityDefinitionResponseData(response, entityRestrictionData, characterId));
|
||||
});
|
||||
export const makeLoadAvailableRaces = createSelector([rulesEngineSelectors.getEntityRestrictionData, characterSelectors.getId], (entityRestrictionData, characterId) => (additionalConfig) => {
|
||||
return ApiRequests.getCharacterGameDataRaces(additionalConfig).then((response) => restrictEntityDefinitionResponseData(response, entityRestrictionData, characterId));
|
||||
});
|
||||
export const makeLoadAvailableFeats = createSelector([rulesEngineSelectors.getEntityRestrictionData, characterSelectors.getId], (entityRestrictionData, characterId) => (additionalConfig) => {
|
||||
return ApiRequests.getCharacterGameDataFeats(additionalConfig).then((response) => restrictEntityDefinitionResponseData(response, entityRestrictionData, characterId));
|
||||
});
|
||||
export const makeLoadAvailableItems = createSelector([rulesEngineSelectors.getEntityRestrictionData, characterSelectors.getId], (entityRestrictionData, characterId) => (additionalConfig) => {
|
||||
return ApiRequests.getCharacterGameDataItems(additionalConfig).then((response) => restrictEntityDefinitionResponseData(response, entityRestrictionData, characterId));
|
||||
});
|
||||
export const makeLoadAvailableMonsters = createSelector([rulesEngineSelectors.getEntityRestrictionData, characterSelectors.getId], (entityRestrictionData, characterId) => (additionalConfig) => {
|
||||
return ApiRequests.getCharacterGameDataMonsters(additionalConfig).then((response) => restrictEntityDefinitionResponseData(response, entityRestrictionData, characterId));
|
||||
});
|
||||
export const makeLoadAvailableInfusions = createSelector([rulesEngineSelectors.getEntityRestrictionData, characterSelectors.getId], (entityRestrictionData, characterId) => (additionalConfig) => {
|
||||
return ApiUtils.makeGetAllDefinitionTypeRequest(DefinitionTypeEnum.INFUSION)(additionalConfig).then((response) => restrictGameDataDefinitionResponseData(response, entityRestrictionData, characterId));
|
||||
});
|
||||
export const makeLoadAvailableVehicles = createSelector([rulesEngineSelectors.getEntityRestrictionData, characterSelectors.getId], (entityRestrictionData, characterId) => (additionalConfig) => {
|
||||
return ApiUtils.makeGetAllDefinitionTypeRequest(DefinitionTypeEnum.VEHICLE)(additionalConfig).then((response) => restrictGameDataDefinitionResponseData(response, entityRestrictionData, characterId));
|
||||
});
|
||||
export const makeLoadClassStartingEquipment = createSelector([rulesEngineSelectors.getStartingClass], (startingClass) => {
|
||||
let id = -1;
|
||||
if (startingClass) {
|
||||
id = ClassAccessors.getId(startingClass);
|
||||
}
|
||||
return (additionalConfig) => {
|
||||
const requiredConfig = {
|
||||
params: {
|
||||
id,
|
||||
},
|
||||
};
|
||||
return ApiRequests.getCharacterGameDataClassStartingEquipment(merge({}, additionalConfig, requiredConfig));
|
||||
};
|
||||
});
|
||||
export const makeLoadBackgroundStartingEquipment = createSelector([rulesEngineSelectors.getBackgroundInfo], (backgroundInfo) => {
|
||||
let id = -1;
|
||||
if (backgroundInfo) {
|
||||
id = BackgroundAccessors.getId(backgroundInfo);
|
||||
}
|
||||
return (additionalConfig) => {
|
||||
const requiredConfig = {
|
||||
params: {
|
||||
id,
|
||||
},
|
||||
};
|
||||
return ApiRequests.getCharacterGameDataBackgroundStartingEquipment(merge({}, additionalConfig, requiredConfig));
|
||||
};
|
||||
});
|
||||
export const makeLoadClassRemainingSpells = createSelector([
|
||||
rulesEngineSelectors.getGlobalSpellListIds,
|
||||
rulesEngineSelectors.getEntityRestrictionData,
|
||||
characterSelectors.getId,
|
||||
], (globalSpellListIds, entityRestrictionData, characterId) => {
|
||||
return (charClass) => {
|
||||
if (!ClassAccessors.isSpellcastingActive(charClass) && !ClassAccessors.isPactMagicActive(charClass)) {
|
||||
return null;
|
||||
}
|
||||
return (additionalConfig) => {
|
||||
const requiredConfig = {
|
||||
params: {
|
||||
classId: ClassAccessors.getActiveId(charClass),
|
||||
classLevel: ClassAccessors.getLevel(charClass),
|
||||
spellListIds: [...globalSpellListIds, ...ClassAccessors.getSpellListIds(charClass)],
|
||||
},
|
||||
};
|
||||
return ApiRequests.getCharacterGameDataSpells(merge({}, additionalConfig, requiredConfig)).then((response) => restrictEntityResponseData(response, entityRestrictionData, characterId));
|
||||
};
|
||||
};
|
||||
});
|
||||
export const makeLoadClassAlwaysKnownSpells = createSelector([
|
||||
rulesEngineSelectors.getClasses,
|
||||
rulesEngineSelectors.getGlobalSpellListIds,
|
||||
rulesEngineSelectors.getEntityRestrictionData,
|
||||
characterSelectors.getId,
|
||||
], (classes, globalSpellListIds, entityRestrictionData, characterId) => {
|
||||
return (charClass) => {
|
||||
if (!ClassAccessors.getKnowsAllSpells(charClass)) {
|
||||
return null;
|
||||
}
|
||||
return (additionalConfig) => {
|
||||
const requiredConfig = {
|
||||
params: {
|
||||
classId: ClassAccessors.getActiveId(charClass),
|
||||
classLevel: ClassAccessors.getLevel(charClass),
|
||||
spellListIds: [...globalSpellListIds, ...ClassAccessors.getSpellListIds(charClass)],
|
||||
},
|
||||
};
|
||||
return ApiRequests.getCharacterGameDataAlwaysKnownSpells(merge({}, additionalConfig, requiredConfig)).then((response) => restrictEntityResponseData(response, entityRestrictionData, characterId));
|
||||
};
|
||||
};
|
||||
});
|
||||
export const makeLoadAvailableBackgrounds = createSelector([rulesEngineSelectors.getEntityRestrictionData, characterSelectors.getId], (entityRestrictionData, characterId) => (additionalConfig) => {
|
||||
return ApiRequests.getCharacterGameDataBackgrounds(additionalConfig).then((response) => restrictEntityDefinitionResponseData(response, entityRestrictionData, characterId));
|
||||
});
|
||||
export const makeLoadAvailableOptionalRacialTraits = createSelector([rulesEngineSelectors.getRace], (race) => (additionalConfig) => {
|
||||
const requiredConfig = {
|
||||
params: {
|
||||
entityRaceId: race ? RaceAccessors.getEntityRaceId(race) : -1,
|
||||
entityRaceTypeId: race ? RaceAccessors.getEntityRaceTypeId(race) : -1,
|
||||
},
|
||||
};
|
||||
return ApiRequests.getCharacterGameDataRacialTraits(merge({}, additionalConfig, requiredConfig));
|
||||
});
|
||||
export const makeLoadAvailableOptionalClassFeatures = createSelector([rulesEngineSelectors.getClasses], (classes) => {
|
||||
return (charClass) => {
|
||||
return (additionalConfig) => {
|
||||
const requiredConfig = {
|
||||
params: {
|
||||
classId: ClassAccessors.getActiveId(charClass),
|
||||
},
|
||||
};
|
||||
return ApiRequests.getCharacterGameDataClassFeatures(merge({}, additionalConfig, requiredConfig));
|
||||
};
|
||||
};
|
||||
});
|
||||
//----------------------------
|
||||
// BELOW LIES GFS
|
||||
//----------------------------
|
||||
// TODO: restrictEntityDefinitionResponseData is filtering by homebrew and sources categories based on preferences
|
||||
// so maybe that should just be part of the api.
|
||||
// if you change it during game you would have to make the api call again.
|
||||
export const makeLoadAvailableFeatures = createSelector([rulesEngineSelectors.getEntityRestrictionData, characterSelectors.getId], (entityRestrictionData, characterId) => (additionalConfig) => {
|
||||
return ApiRequests.getCharacterGameDataFeatures(additionalConfig).then((response) =>
|
||||
// restrictEntityDefinitionResponseData(response, entityRestrictionData, characterId)
|
||||
response);
|
||||
});
|
||||
@@ -0,0 +1,8 @@
|
||||
import * as apiCreatorCreators from './creators';
|
||||
import * as apiCreatorTypings from './typings';
|
||||
export * from './creators';
|
||||
export * from './typings';
|
||||
export default {
|
||||
apiCreatorCreators,
|
||||
apiCreatorTypings,
|
||||
};
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1 @@
|
||||
export const getFeatureFlagInfo = (state) => state.featureFlagInfo;
|
||||
@@ -0,0 +1,16 @@
|
||||
import * as character from './character';
|
||||
import * as characterEnv from './characterEnv';
|
||||
import * as apiCreator from './composite/apiCreator';
|
||||
import * as rulesEngine from './composite/engine';
|
||||
import * as featureFlagInfo from './featureFlagInfo';
|
||||
import * as ruleData from './ruleData';
|
||||
import * as serviceData from './serviceData';
|
||||
import * as syncTransaction from './syncTransaction';
|
||||
export const characterSelectors = character;
|
||||
export const ruleDataSelectors = ruleData;
|
||||
export const characterEnvSelectors = characterEnv;
|
||||
export const featureFlagInfoSelectors = featureFlagInfo;
|
||||
export const serviceDataSelectors = serviceData;
|
||||
export const syncTransactionSelectors = syncTransaction;
|
||||
export const rulesEngineSelectors = rulesEngine;
|
||||
export const apiCreatorSelectors = apiCreator;
|
||||
@@ -0,0 +1,79 @@
|
||||
export const getAllData = (state) => state.ruleData;
|
||||
export const getAbilityScoreDisplayTypes = (state) => state.ruleData.abilityScoreDisplayTypes;
|
||||
export const getAbilitySkills = (state) => state.ruleData.abilitySkills;
|
||||
export const getActivationTypes = (state) => state.ruleData.activationTypes;
|
||||
export const getAdditionalLevelTypes = (state) => state.ruleData.additionalLevelTypes;
|
||||
export const getAdjustmentDataTypes = (state) => state.ruleData.adjustmentDataTypes;
|
||||
export const getAdjustmentTypes = (state) => state.ruleData.adjustmentTypes;
|
||||
export const getAlignments = (state) => state.ruleData.alignments;
|
||||
export const getAoeTypes = (state) => state.ruleData.aoeTypes;
|
||||
export const getArmor = (state) => state.ruleData.armor;
|
||||
export const getBasicActions = (state) => state.ruleData.basicActions;
|
||||
export const getBaseWeaponReach = (state) => state.ruleData.baseWeaponReach;
|
||||
export const getBasicMaxStatScore = (state) => state.ruleData.basicMaxStatScore;
|
||||
export const getChallengeRatings = (state) => state.ruleData.challengeRatings;
|
||||
export const getConditionTypes = (state) => state.ruleData.conditionTypes;
|
||||
export const getConditions = (state) => state.ruleData.conditions;
|
||||
export const getCreatureGroupCategories = (state) => state.ruleData.creatureGroupCategories;
|
||||
export const getCreatureGroupFlags = (state) => state.ruleData.creatureGroupFlags;
|
||||
export const getCreatureGroups = (state) => state.ruleData.creatureGroups;
|
||||
export const getCreatureSizes = (state) => state.ruleData.creatureSizes;
|
||||
export const getCurrencyData = (state) => state.ruleData.currencyData;
|
||||
export const getDamageAdjustments = (state) => state.ruleData.damageAdjustments;
|
||||
export const getDamageTypes = (state) => state.ruleData.damageTypes;
|
||||
export const getDefaultArmorImageUrl = (state) => state.ruleData.defaultArmorImageUrl;
|
||||
export const getDefaultAttunedItemCountMax = (state) => state.ruleData.defaultAttunedItemCountMax;
|
||||
export const getDefaultGearImageUrl = (state) => state.ruleData.defaultGearImageUrl;
|
||||
export const getDefaultRacePortraitUrl = (state) => state.ruleData.defaultRacePortraitUrl;
|
||||
export const getDefaultWeaponImageUrl = (state) => state.ruleData.defaultWeaponImageUrl;
|
||||
export const getDiceValues = (state) => state.ruleData.diceValues;
|
||||
export const getEnvironments = (state) => state.ruleData.environments;
|
||||
export const getInitiativeScore = (state) => state.ruleData.initiativeScore;
|
||||
export const getLanguageTypeId = (state) => state.ruleData.languageTypeId;
|
||||
export const getLanguages = (state) => state.ruleData.languages;
|
||||
export const getLevelExperiencePoints = (state) => state.ruleData.levelExperiencePoints;
|
||||
export const getLevelProficiencyBonuses = (state) => state.ruleData.levelProficiencyBonuses;
|
||||
export const getLifestyles = (state) => state.ruleData.lifestyles;
|
||||
export const getLimitedUseResetTypes = (state) => state.ruleData.limitedUseResetTypes;
|
||||
export const getLongRestMinimumHitDiceUsedRecovered = (state) => state.ruleData.longRestMinimumHitDiceUsedRecovered;
|
||||
export const getMaxAttunedItemCountMax = (state) => state.ruleData.maxAttunedItemCountMax;
|
||||
export const getMaxCharacterLevel = (state) => state.ruleData.maxCharacterLevel;
|
||||
export const getMaxDeathsavesFail = (state) => state.ruleData.maxDeathsavesFail;
|
||||
export const getMaxDeathsavesSuccess = (state) => state.ruleData.maxDeathsavesSuccess;
|
||||
export const getMaxSpellLevel = (state) => state.ruleData.maxSpellLevel;
|
||||
export const getMaxStatScore = (state) => state.ruleData.maxStatScore;
|
||||
export const getMinAttunedItemCountMax = (state) => state.ruleData.minAttunedItemCountMax;
|
||||
export const getMinStatScore = (state) => state.ruleData.minStatScore;
|
||||
export const getMinimumHpTotal = (state) => state.ruleData.minimumHpTotal;
|
||||
export const getMinimumLimitedUseMaxUse = (state) => state.ruleData.minimumLimitedUseMaxUse;
|
||||
export const getMonsterSubTypes = (state) => state.ruleData.monsterSubTypes;
|
||||
export const getMonsterTypes = (state) => state.ruleData.monsterTypes;
|
||||
export const getMovements = (state) => state.ruleData.movements;
|
||||
export const getMultiClassSpellSlots = (state) => state.ruleData.multiClassSpellSlots;
|
||||
export const getNaturalActions = (state) => state.ruleData.naturalActions;
|
||||
export const getNoArmorAcAmount = (state) => state.ruleData.noArmorAcAmount;
|
||||
export const getPactMagicMultiClassSpellSlots = (state) => state.ruleData.pactMagicMultiClassSpellSlots;
|
||||
export const getPrivacyTypes = (state) => state.ruleData.privacyTypes;
|
||||
export const getProficiencyGroups = (state) => state.ruleData.proficiencyGroups;
|
||||
export const getRaceGroups = (state) => state.ruleData.raceGroups;
|
||||
export const getRangeTypes = (state) => state.ruleData.rangeTypes;
|
||||
export const getRitualCastingTimeMinuteAddition = (state) => state.ruleData.ritualCastingTimeMinuteAddition;
|
||||
export const getRules = (state) => state.ruleData.rules;
|
||||
export const getSenses = (state) => state.ruleData.senses;
|
||||
export const getSharingTypes = (state) => state.ruleData.sharingTypes;
|
||||
export const getSourceCategories = (state) => state.ruleData.sourceCategories;
|
||||
export const getSources = (state) => state.ruleData.sources;
|
||||
export const getSpellComponents = (state) => state.ruleData.spellComponents;
|
||||
export const getSpellConditionTypes = (state) => state.ruleData.spellConditionTypes;
|
||||
export const getSpellRangeTypes = (state) => state.ruleData.spellRangeTypes;
|
||||
export const getStatModifiers = (state) => state.ruleData.statModifiers;
|
||||
export const getStats = (state) => state.ruleData.stats;
|
||||
export const getStealthCheckTypes = (state) => state.ruleData.stealthCheckTypes;
|
||||
export const getStringMartialArts = (state) => state.ruleData.stringMartialArts;
|
||||
export const getStringPactMagic = (state) => state.ruleData.stringPactMagic;
|
||||
export const getStringSpellCasting = (state) => state.ruleData.stringSpellCasting;
|
||||
export const getStringSpellEldritchBlast = (state) => state.ruleData.stringSpellEldritchBlast;
|
||||
export const getWeapons = (state) => state.ruleData.weapons;
|
||||
export const getWeaponCategories = (state) => state.ruleData.weaponCategories;
|
||||
export const getWeaponProperties = (state) => state.ruleData.weaponProperties;
|
||||
export const getWeaponPropertyReachDistance = (state) => state.ruleData.weaponPropertyReachDistance;
|
||||
@@ -0,0 +1,10 @@
|
||||
export const getClassAlwaysKnownSpells = (state) => state.serviceData.classAlwaysKnownSpells;
|
||||
export const getClassAlwaysPreparedSpells = (state) => state.serviceData.classAlwaysPreparedSpells;
|
||||
export const getDefinitionPool = (state) => state.serviceData.definitionPool;
|
||||
export const getKnownInfusionsMappings = (state) => state.serviceData.knownInfusionsMappings;
|
||||
export const getInfusionsMappings = (state) => state.serviceData.infusionsMappings;
|
||||
export const getRuleDataPool = (state) => state.serviceData.ruleDataPool;
|
||||
export const getVehicleComponentMappings = (state) => state.serviceData.vehicleComponentMappings;
|
||||
export const getVehicleMappings = (state) => state.serviceData.vehicleMappings;
|
||||
export const getPartyInfo = (state) => state.serviceData.partyInfo;
|
||||
export const getCampaignSettings = (state) => state.serviceData.campaignSettings;
|
||||
@@ -0,0 +1,2 @@
|
||||
export const getActive = (state) => state.syncTransaction.active;
|
||||
export const getInitiator = (state) => state.syncTransaction.initiator;
|
||||
Reference in New Issue
Block a user