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:
2025-05-28 11:50:03 -07:00
commit 8df9031d27
3592 changed files with 319051 additions and 0 deletions
@@ -0,0 +1,26 @@
import { CreatureSizeEnum, CreatureSizeNameEnum, DB_STRING_VERDAN, INITIAL_ASI_TAG_NAME, } from '../Core';
import { RacialTraitAccessors } from '../RacialTrait';
import { getSize, getSizeId } from './accessors';
//temp hack handles specific race size for granted level size changes - need to set up logic for that
/**
*
* @param race
* @param experienceInfo
*/
export function hack__deriveRaceSize(race, experienceInfo) {
let sizeId = getSizeId(race);
let size = getSize(race);
if (race.baseName === DB_STRING_VERDAN && experienceInfo.currentLevel >= 5 && !race.isHomebrew) {
sizeId = CreatureSizeEnum.MEDIUM;
size = CreatureSizeNameEnum.MEDIUM;
}
return [sizeId, size];
}
export function hack__filterOutAsi(traits, isInitialAsiFromFeat) {
if (!isInitialAsiFromFeat) {
// no changes needed if the initial ASI isn't coming from a Background Feat
return traits;
}
// Keep traits that aren't the initial ASI
return traits.filter((trait) => !RacialTraitAccessors.getCategories(trait).some((cat) => cat.tagName === INITIAL_ASI_TAG_NAME));
}