@archivist-gg/dnd5e 0.3.19 → 0.3.26

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 (441) hide show
  1. package/LICENSE +48 -21
  2. package/README.md +26 -48
  3. package/dist/armor/armor.codec.d.ts +0 -7
  4. package/dist/armor/armor.codec.js +1 -9
  5. package/dist/armor/armor.parser.js +1 -8
  6. package/dist/armor/armor.schema.js +1 -7
  7. package/dist/armor/armor.types.d.ts +0 -3
  8. package/dist/background/background.codec.d.ts +0 -6
  9. package/dist/background/background.codec.js +1 -12
  10. package/dist/background/background.parser.js +1 -11
  11. package/dist/background/background.schema.js +1 -12
  12. package/dist/background/background.types.d.ts +0 -5
  13. package/dist/chunk-2EOGK6R6.js +1 -0
  14. package/dist/chunk-2HRRH3WL.js +1 -0
  15. package/dist/chunk-2NUDWOFG.js +1 -0
  16. package/dist/chunk-3LWOVRLA.js +1 -0
  17. package/dist/chunk-3QQOATV3.js +1 -0
  18. package/dist/chunk-4E2GIWJE.js +1 -0
  19. package/dist/chunk-4GN3GYMP.js +1 -0
  20. package/dist/chunk-4IAMSRHD.js +1 -0
  21. package/dist/chunk-4JEF3CET.js +1 -0
  22. package/dist/chunk-4KVVAENP.js +1 -0
  23. package/dist/chunk-4SYAKWY4.js +1 -0
  24. package/dist/chunk-56JK6VCL.js +1 -0
  25. package/dist/chunk-5XDCM6YK.js +1 -0
  26. package/dist/chunk-63YJPWTM.js +1 -0
  27. package/dist/chunk-6R46KYGU.js +1 -0
  28. package/dist/chunk-6W253VHH.js +1 -0
  29. package/dist/chunk-72PRMZRD.js +1 -0
  30. package/dist/chunk-757KM22B.js +1 -0
  31. package/dist/chunk-7EL3GWWJ.js +1 -0
  32. package/dist/chunk-7FPQJDFD.js +1 -0
  33. package/dist/chunk-AINRPPLH.js +1 -0
  34. package/dist/chunk-BC52J4LA.js +1 -0
  35. package/dist/chunk-BCXGB4HP.js +1 -0
  36. package/dist/chunk-BREHZNTL.js +1 -0
  37. package/dist/chunk-BZ6BGGZS.js +1 -0
  38. package/dist/chunk-CAPYNIGK.js +1 -0
  39. package/dist/chunk-CCAVZANF.js +1 -0
  40. package/dist/chunk-CCFIINBA.js +1 -0
  41. package/dist/chunk-CEHL7PPC.js +1 -0
  42. package/dist/chunk-CMIEZQL4.js +1 -0
  43. package/dist/chunk-CNMHADNV.js +1 -0
  44. package/dist/chunk-CSTAQQGX.js +1 -0
  45. package/dist/chunk-DTB7YBMZ.js +1 -0
  46. package/dist/chunk-DVUXUIPV.js +1 -0
  47. package/dist/chunk-DZITM5AG.js +1 -0
  48. package/dist/chunk-E3MS4M3N.js +1 -0
  49. package/dist/chunk-E7KFJLDR.js +1 -0
  50. package/dist/chunk-EAARMPCW.js +1 -0
  51. package/dist/chunk-EPA24PVZ.js +1 -0
  52. package/dist/chunk-ETDMOGFO.js +1 -0
  53. package/dist/chunk-EVT7MGAC.js +1 -0
  54. package/dist/chunk-FOLHTMSC.js +1 -0
  55. package/dist/chunk-GCYUCIDN.js +1 -0
  56. package/dist/chunk-GD7WRCNH.js +1 -0
  57. package/dist/chunk-GGQDQSIF.js +1 -0
  58. package/dist/chunk-GIQLIBC7.js +1 -0
  59. package/dist/chunk-HX7WBOKR.js +1 -0
  60. package/dist/chunk-I26FHSI6.js +1 -0
  61. package/dist/chunk-IHPLT2ZT.js +1 -0
  62. package/dist/chunk-J3RP5C7L.js +1 -0
  63. package/dist/chunk-J5GL6FLP.js +1 -0
  64. package/dist/chunk-JXDX2DKF.js +1 -0
  65. package/dist/chunk-KEXSF3CH.js +1 -0
  66. package/dist/chunk-KM75CC6Q.js +1 -0
  67. package/dist/chunk-L2DXF7YS.js +1 -0
  68. package/dist/chunk-LHH5XSEA.js +1 -0
  69. package/dist/chunk-LJNT3PJP.js +1 -0
  70. package/dist/chunk-LR6UMA5V.js +1 -0
  71. package/dist/chunk-M6RPOLKS.js +1 -0
  72. package/dist/chunk-MGGKZGLG.js +1 -0
  73. package/dist/chunk-NEMX7QGG.js +1 -0
  74. package/dist/chunk-NIWLD33X.js +1 -0
  75. package/dist/chunk-NU2Z7MTS.js +1 -0
  76. package/dist/chunk-NYPH7RQN.js +1 -0
  77. package/dist/chunk-NYTR6NJS.js +1 -0
  78. package/dist/chunk-O2QZ73GA.js +1 -0
  79. package/dist/chunk-O776WL7O.js +1 -0
  80. package/dist/chunk-ONCXJMJM.js +1 -0
  81. package/dist/chunk-OTRH62HY.js +1 -0
  82. package/dist/chunk-PFQPP77Q.js +1 -0
  83. package/dist/chunk-PKIMOVQG.js +1 -0
  84. package/dist/chunk-PZ3ZZ5H5.js +1 -0
  85. package/dist/chunk-PZ4L2EEG.js +1 -0
  86. package/dist/chunk-QMEKQTUT.js +1 -0
  87. package/dist/chunk-QVWT67WA.js +1 -0
  88. package/dist/chunk-RE5Z5RNK.js +1 -0
  89. package/dist/chunk-RHIEOYDX.js +1 -0
  90. package/dist/chunk-RQZCGXUZ.js +1 -0
  91. package/dist/chunk-S5UCI27C.js +1 -0
  92. package/dist/chunk-SEOASDO4.js +1 -0
  93. package/dist/chunk-SFK57JAA.js +1 -0
  94. package/dist/chunk-SU4MEZ5P.js +1 -0
  95. package/dist/chunk-T55DELVL.js +1 -0
  96. package/dist/chunk-TKIEPC6F.js +1 -0
  97. package/dist/chunk-UBUKCRZ3.js +1 -0
  98. package/dist/chunk-VA3ZWV7C.js +1 -0
  99. package/dist/chunk-VIP3FH2O.js +1 -0
  100. package/dist/chunk-VTQ4RWEG.js +1 -0
  101. package/dist/chunk-VVJXZZ4Z.js +1 -0
  102. package/dist/chunk-WAUNLUFQ.js +1 -0
  103. package/dist/chunk-X22SISGM.js +1 -0
  104. package/dist/chunk-XKJXT2PN.js +1 -0
  105. package/dist/chunk-XPF53K54.js +1 -0
  106. package/dist/chunk-YGH7S5ZF.js +1 -0
  107. package/dist/chunk-ZE46ADXS.js +1 -0
  108. package/dist/chunk-ZI3FEUX3.js +1 -0
  109. package/dist/chunk-ZS5BMNXC.js +1 -0
  110. package/dist/chunk-ZVL5FXXO.js +1 -0
  111. package/dist/class/class.codec.d.ts +0 -7
  112. package/dist/class/class.codec.js +1 -18
  113. package/dist/class/class.parser.js +1 -17
  114. package/dist/class/class.schema.d.ts +4 -3
  115. package/dist/class/class.schema.js +1 -15
  116. package/dist/class/class.slug.d.ts +0 -11
  117. package/dist/class/class.slug.js +1 -8
  118. package/dist/class/class.standard-array.d.ts +0 -7
  119. package/dist/class/class.standard-array.js +1 -20
  120. package/dist/class/class.types.d.ts +0 -20
  121. package/dist/condition/condition.codec.d.ts +0 -6
  122. package/dist/condition/condition.parser.d.ts +0 -10
  123. package/dist/condition/condition.parser.js +1 -7
  124. package/dist/condition/condition.schema.d.ts +0 -16
  125. package/dist/condition/condition.types.d.ts +0 -3
  126. package/dist/data-srd/index.generated.js +1 -146
  127. package/dist/dnd/amount-text.d.ts +3 -30
  128. package/dist/dnd/amount-text.js +1 -15
  129. package/dist/dnd/constants.d.ts +0 -18
  130. package/dist/dnd/constants.js +1 -42
  131. package/dist/dnd/formula-tags.d.ts +0 -2
  132. package/dist/dnd/formula-tags.js +1 -119
  133. package/dist/dnd/math.d.ts +0 -26
  134. package/dist/dnd/math.js +1 -45
  135. package/dist/dnd/prose-tags.d.ts +1 -15
  136. package/dist/dnd/prose-tags.js +1 -18
  137. package/dist/dnd/resource-die.d.ts +0 -4
  138. package/dist/dnd/resource-die.js +1 -17
  139. package/dist/dnd/resource-formula.d.ts +0 -43
  140. package/dist/dnd/resource-formula.js +1 -14
  141. package/dist/dnd/resource-words.d.ts +0 -2
  142. package/dist/dnd/resource-words.js +1 -30
  143. package/dist/dnd/srd-tag-converter.d.ts +0 -21
  144. package/dist/dnd/srd-tag-converter.js +1 -12
  145. package/dist/dnd/tag-grammar.js +1 -12
  146. package/dist/dnd/warn-once.js +1 -8
  147. package/dist/encounter/encounter.ai-schema.js +1 -8
  148. package/dist/entities/base-item-resolver.d.ts +0 -26
  149. package/dist/entities/base-item-resolver.js +1 -11
  150. package/dist/entities/registry-revision.d.ts +0 -15
  151. package/dist/entities/registry-revision.js +1 -10
  152. package/dist/entities/slug.d.ts +1 -31
  153. package/dist/entities/slug.js +1 -12
  154. package/dist/entities/wikilink-display.d.ts +0 -2
  155. package/dist/entities/wikilink-display.js +1 -10
  156. package/dist/feat/feat.category-codes.d.ts +1 -26
  157. package/dist/feat/feat.category-codes.js +1 -14
  158. package/dist/feat/feat.codec.d.ts +0 -6
  159. package/dist/feat/feat.codec.js +1 -12
  160. package/dist/feat/feat.parser.js +1 -11
  161. package/dist/feat/feat.schema.d.ts +46 -4
  162. package/dist/feat/feat.schema.js +1 -10
  163. package/dist/feat/feat.types.d.ts +0 -6
  164. package/dist/index.js +45 -141495
  165. package/dist/inline-tag-parser.js +1 -6
  166. package/dist/item/item.actions-map.d.ts +4 -63
  167. package/dist/item/item.actions-map.js +1 -10
  168. package/dist/item/item.ai-schema.js +1 -6
  169. package/dist/item/item.attunement.d.ts +0 -14
  170. package/dist/item/item.attunement.js +1 -6
  171. package/dist/item/item.bonuses.js +1 -10
  172. package/dist/item/item.codec.js +1 -9
  173. package/dist/item/item.conditions.d.ts +0 -7
  174. package/dist/item/item.conditions.js +1 -11
  175. package/dist/item/item.conditions.types.d.ts +0 -2
  176. package/dist/item/item.cost.js +1 -29
  177. package/dist/item/item.enrichment.js +1 -9
  178. package/dist/item/item.icon.d.ts +0 -8
  179. package/dist/item/item.icon.js +1 -211
  180. package/dist/item/item.parser.js +1 -8
  181. package/dist/item/item.schema.d.ts +5 -0
  182. package/dist/item/item.schema.js +1 -11
  183. package/dist/item/item.types.d.ts +5 -28
  184. package/dist/monster/monster.ai-schema.js +1 -6
  185. package/dist/monster/monster.codec.d.ts +0 -10
  186. package/dist/monster/monster.enrichment.js +1 -19
  187. package/dist/monster/monster.format.d.ts +0 -69
  188. package/dist/monster/monster.format.js +1 -78
  189. package/dist/monster/monster.parser.d.ts +0 -4
  190. package/dist/monster/monster.parser.js +1 -15
  191. package/dist/monster/monster.resolve.d.ts +0 -4
  192. package/dist/monster/monster.schema.d.ts +0 -9
  193. package/dist/monster/monster.schema.js +1 -34
  194. package/dist/monster/monster.types.d.ts +0 -3
  195. package/dist/monster/monster.types.js +1 -1
  196. package/dist/optional-feature/optional-feature.codec.d.ts +0 -11
  197. package/dist/optional-feature/optional-feature.codec.js +1 -13
  198. package/dist/optional-feature/optional-feature.parser.js +1 -12
  199. package/dist/optional-feature/optional-feature.schema.d.ts +44 -3
  200. package/dist/optional-feature/optional-feature.schema.js +1 -15
  201. package/dist/pack.d.ts +0 -9
  202. package/dist/pc/conditions.constants.js +1 -6
  203. package/dist/pc/decision-recognizer.js +1 -8
  204. package/dist/pc/pc.additional-spells.d.ts +0 -24
  205. package/dist/pc/pc.additional-spells.js +1 -26
  206. package/dist/pc/pc.amount-bindings.d.ts +3 -28
  207. package/dist/pc/pc.amount-bindings.js +1 -28
  208. package/dist/pc/pc.asi-flatten.d.ts +0 -59
  209. package/dist/pc/pc.asi-flatten.js +1 -16
  210. package/dist/pc/pc.conditions.d.ts +1 -0
  211. package/dist/pc/pc.conditions.js +1 -6
  212. package/dist/pc/pc.containment.d.ts +0 -5
  213. package/dist/pc/pc.containment.js +1 -24
  214. package/dist/pc/pc.decision-engine.d.ts +6 -145
  215. package/dist/pc/pc.decision-engine.js +1 -55
  216. package/dist/pc/pc.defense-normalize.d.ts +0 -10
  217. package/dist/pc/pc.defense-normalize.js +1 -6
  218. package/dist/pc/pc.entry-overrides.d.ts +19 -58
  219. package/dist/pc/pc.entry-overrides.js +1 -41
  220. package/dist/pc/pc.equipment.d.ts +2 -22
  221. package/dist/pc/pc.equipment.js +1 -34
  222. package/dist/pc/pc.feature-effects.d.ts +27 -281
  223. package/dist/pc/pc.feature-effects.js +1 -39
  224. package/dist/pc/pc.formula-context.js +1 -11
  225. package/dist/pc/pc.infusions.d.ts +0 -65
  226. package/dist/pc/pc.infusions.js +1 -65
  227. package/dist/pc/pc.item-effects.d.ts +19 -0
  228. package/dist/pc/pc.item-effects.js +1 -0
  229. package/dist/pc/pc.member-choices.d.ts +3 -66
  230. package/dist/pc/pc.member-choices.js +1 -39
  231. package/dist/pc/pc.parser.js +1 -58
  232. package/dist/pc/pc.pools.d.ts +7 -10
  233. package/dist/pc/pc.pools.js +1 -27
  234. package/dist/pc/pc.proficiencies.d.ts +0 -40
  235. package/dist/pc/pc.proficiencies.js +1 -156
  236. package/dist/pc/pc.proficiency-grants.d.ts +3 -27
  237. package/dist/pc/pc.proficiency-normalize.d.ts +0 -35
  238. package/dist/pc/pc.proficiency-normalize.js +1 -18
  239. package/dist/pc/pc.proficiency-query.d.ts +0 -13
  240. package/dist/pc/pc.proficiency-query.js +1 -27
  241. package/dist/pc/pc.recalc.d.ts +8 -131
  242. package/dist/pc/pc.recalc.js +1 -1042
  243. package/dist/pc/pc.resolver.d.ts +9 -107
  244. package/dist/pc/pc.resolver.js +1 -60
  245. package/dist/pc/pc.resource-seed.d.ts +0 -8
  246. package/dist/pc/pc.resource-seed.js +1 -42
  247. package/dist/pc/pc.resources.d.ts +1 -59
  248. package/dist/pc/pc.resources.js +1 -23
  249. package/dist/pc/pc.rest.d.ts +1 -20
  250. package/dist/pc/pc.rest.js +1 -231
  251. package/dist/pc/pc.schema.d.ts +20 -2
  252. package/dist/pc/pc.schema.js +1 -9
  253. package/dist/pc/pc.slotting.d.ts +0 -29
  254. package/dist/pc/pc.slotting.js +1 -28
  255. package/dist/pc/pc.speeds.d.ts +36 -0
  256. package/dist/pc/pc.spell-scope.d.ts +0 -16
  257. package/dist/pc/pc.spellcasting.d.ts +0 -70
  258. package/dist/pc/pc.spellcasting.js +1 -28
  259. package/dist/pc/pc.table-column.d.ts +3 -22
  260. package/dist/pc/pc.table-column.js +1 -18
  261. package/dist/pc/pc.tool-picks.d.ts +0 -27
  262. package/dist/pc/pc.tool-picks.js +1 -18
  263. package/dist/pc/pc.types.d.ts +59 -374
  264. package/dist/pc/pc.weapon-grant.d.ts +0 -6
  265. package/dist/pc/pool-layout.d.ts +0 -39
  266. package/dist/pc/pool-layout.js +1 -18
  267. package/dist/pc/resource-equivalents.d.ts +2 -40
  268. package/dist/pc/roll-scope.js +1 -8
  269. package/dist/pc/roll-tag-labels.d.ts +0 -32
  270. package/dist/pc/roll-tag-labels.js +1 -17
  271. package/dist/pc/spell-source.d.ts +0 -11
  272. package/dist/pc/spell-source.js +1 -8
  273. package/dist/race/race.codec.d.ts +0 -6
  274. package/dist/race/race.codec.js +1 -15
  275. package/dist/race/race.parser.js +1 -14
  276. package/dist/race/race.schema.d.ts +0 -8
  277. package/dist/race/race.schema.js +1 -14
  278. package/dist/race/race.structural.d.ts +0 -6
  279. package/dist/race/race.structural.js +1 -6
  280. package/dist/race/race.types.d.ts +0 -8
  281. package/dist/schemas/attack-schema.d.ts +5 -0
  282. package/dist/schemas/caster-type-schema.d.ts +1 -6
  283. package/dist/schemas/caster-type-schema.js +1 -6
  284. package/dist/schemas/choice-schema.js +1 -7
  285. package/dist/schemas/duration-schema.d.ts +0 -2
  286. package/dist/schemas/duration-schema.js +1 -6
  287. package/dist/schemas/entity-extras-schema.d.ts +0 -30
  288. package/dist/schemas/entity-extras-schema.js +1 -10
  289. package/dist/schemas/equipment-grant-schema.d.ts +0 -2
  290. package/dist/schemas/equipment-grant-schema.js +1 -12
  291. package/dist/schemas/feature-alias.d.ts +0 -27
  292. package/dist/schemas/feature-effect-schema.d.ts +44 -3
  293. package/dist/schemas/feature-effect-schema.js +1 -6
  294. package/dist/schemas/feature-schema.d.ts +0 -6
  295. package/dist/schemas/feature-schema.js +1 -12
  296. package/dist/schemas/resource-schema.d.ts +1 -34
  297. package/dist/schemas/resource-schema.js +1 -12
  298. package/dist/schemas/selection-pool-schema.js +1 -10
  299. package/dist/spell/casting-time.d.ts +0 -15
  300. package/dist/spell/casting-time.js +1 -6
  301. package/dist/spell/spell.access.d.ts +0 -6
  302. package/dist/spell/spell.access.js +1 -45
  303. package/dist/spell/spell.ai-schema.js +1 -6
  304. package/dist/spell/spell.codec.js +1 -9
  305. package/dist/spell/spell.enrichment.js +1 -9
  306. package/dist/spell/spell.filter.d.ts +0 -5
  307. package/dist/spell/spell.filter.js +1 -75
  308. package/dist/spell/spell.parser.d.ts +0 -31
  309. package/dist/spell/spell.parser.js +1 -16
  310. package/dist/spell/spell.scaling.d.ts +0 -46
  311. package/dist/spell/spell.scaling.js +1 -79
  312. package/dist/spell/spell.schema.js +1 -7
  313. package/dist/spell/spell.types.d.ts +0 -7
  314. package/dist/srd/retired-items.d.ts +0 -4
  315. package/dist/srd/retired-items.js +1 -11
  316. package/dist/srd-store.d.ts +0 -33
  317. package/dist/subclass/subclass.codec.d.ts +0 -8
  318. package/dist/subclass/subclass.codec.js +1 -17
  319. package/dist/subclass/subclass.parser.js +1 -16
  320. package/dist/subclass/subclass.schema.d.ts +2 -1
  321. package/dist/subclass/subclass.schema.js +1 -14
  322. package/dist/subclass/subclass.types.d.ts +0 -3
  323. package/dist/types/attack.d.ts +2 -0
  324. package/dist/types/casting-option.d.ts +0 -4
  325. package/dist/types/choice.d.ts +1 -72
  326. package/dist/types/choice.js +1 -24
  327. package/dist/types/edition.d.ts +0 -3
  328. package/dist/types/equipment-grant.d.ts +1 -27
  329. package/dist/types/equipment-grant.js +1 -12
  330. package/dist/types/feature-effect.d.ts +11 -23
  331. package/dist/types/feature.d.ts +0 -22
  332. package/dist/types/optional-feature.types.d.ts +1 -31
  333. package/dist/types/resource.d.ts +1 -21
  334. package/dist/types/selection-pool.d.ts +0 -24
  335. package/dist/weapon/weapon-mastery.d.ts +0 -1
  336. package/dist/weapon/weapon.classify.d.ts +0 -11
  337. package/dist/weapon/weapon.classify.js +1 -7
  338. package/dist/weapon/weapon.codec.d.ts +0 -9
  339. package/dist/weapon/weapon.codec.js +1 -9
  340. package/dist/weapon/weapon.parser.js +1 -8
  341. package/dist/weapon/weapon.schema.js +1 -7
  342. package/dist/weapon/weapon.types.d.ts +0 -3
  343. package/package.json +3 -3
  344. package/src/data-srd/ATTRIBUTION.md +1 -1
  345. package/dist/chunk-2FRUSVZS.js +0 -489
  346. package/dist/chunk-2LULMQTF.js +0 -14
  347. package/dist/chunk-3LWMFYKS.js +0 -57
  348. package/dist/chunk-3SFGWFVQ.js +0 -19
  349. package/dist/chunk-3SIUAFDQ.js +0 -18
  350. package/dist/chunk-3TM34RSJ.js +0 -23
  351. package/dist/chunk-4J6DS3EJ.js +0 -30
  352. package/dist/chunk-4U55VNC7.js +0 -22
  353. package/dist/chunk-5GKJAUMX.js +0 -59
  354. package/dist/chunk-5JXFJ5AU.js +0 -26
  355. package/dist/chunk-64VNLMSG.js +0 -375
  356. package/dist/chunk-656QCX4U.js +0 -22
  357. package/dist/chunk-6GNXYAYP.js +0 -25
  358. package/dist/chunk-6PXTNCBP.js +0 -133
  359. package/dist/chunk-6X2NV665.js +0 -33
  360. package/dist/chunk-7Q2VPKCD.js +0 -181
  361. package/dist/chunk-7XJHI5H5.js +0 -709
  362. package/dist/chunk-A54HHCWW.js +0 -67
  363. package/dist/chunk-B2QHP6UF.js +0 -159
  364. package/dist/chunk-B3DP42OM.js +0 -55
  365. package/dist/chunk-BJGOSM76.js +0 -18
  366. package/dist/chunk-BJWSOQUC.js +0 -133
  367. package/dist/chunk-CJYCVNW2.js +0 -7
  368. package/dist/chunk-CM5CWO4K.js +0 -735
  369. package/dist/chunk-DEEHHLAP.js +0 -271
  370. package/dist/chunk-DPUJDOKV.js +0 -365
  371. package/dist/chunk-EJD47JHL.js +0 -1838
  372. package/dist/chunk-EJP263OP.js +0 -186
  373. package/dist/chunk-EVMUJYUD.js +0 -195
  374. package/dist/chunk-EYX4JMAU.js +0 -101
  375. package/dist/chunk-FC4IGH5Y.js +0 -18
  376. package/dist/chunk-FJYBLXV7.js +0 -89
  377. package/dist/chunk-FMUD3LDV.js +0 -19
  378. package/dist/chunk-FMYWORTP.js +0 -93
  379. package/dist/chunk-FVXLP7P3.js +0 -18
  380. package/dist/chunk-G6MHJDVT.js +0 -41
  381. package/dist/chunk-GVWEFECG.js +0 -18
  382. package/dist/chunk-HHBD4SQ6.js +0 -24
  383. package/dist/chunk-HS6FIOLP.js +0 -52
  384. package/dist/chunk-HY2SRSVM.js +0 -23
  385. package/dist/chunk-IHE6KVC3.js +0 -13
  386. package/dist/chunk-IN4M4X7P.js +0 -34
  387. package/dist/chunk-IUAAXXNO.js +0 -58
  388. package/dist/chunk-JXWNXIIZ.js +0 -219
  389. package/dist/chunk-K5NJBTE2.js +0 -18
  390. package/dist/chunk-KR6JF3BF.js +0 -14
  391. package/dist/chunk-KSTV7J2U.js +0 -112
  392. package/dist/chunk-KU3YLF6D.js +0 -106
  393. package/dist/chunk-LBEXLN6I.js +0 -91
  394. package/dist/chunk-LHZXYFBU.js +0 -94
  395. package/dist/chunk-LICYHPI3.js +0 -237
  396. package/dist/chunk-LNT64X7C.js +0 -81
  397. package/dist/chunk-LSLSG67V.js +0 -31
  398. package/dist/chunk-LVQLWRCU.js +0 -15
  399. package/dist/chunk-MYY2C5MB.js +0 -233
  400. package/dist/chunk-NKZMQV2C.js +0 -19
  401. package/dist/chunk-NTU2DXNG.js +0 -355
  402. package/dist/chunk-NXUY5XQN.js +0 -1062
  403. package/dist/chunk-NZO7M5GV.js +0 -18
  404. package/dist/chunk-OOL4KMG2.js +0 -71
  405. package/dist/chunk-OOSRUJBI.js +0 -19
  406. package/dist/chunk-PDJSUH24.js +0 -110
  407. package/dist/chunk-PTXBIDG7.js +0 -63
  408. package/dist/chunk-PVCEA4HZ.js +0 -6
  409. package/dist/chunk-QA3YCOML.js +0 -101
  410. package/dist/chunk-QFWQKS3M.js +0 -110
  411. package/dist/chunk-QS5L5YTJ.js +0 -24
  412. package/dist/chunk-QYZV2MQA.js +0 -97
  413. package/dist/chunk-RD2MID3M.js +0 -292
  414. package/dist/chunk-S3YUXDSC.js +0 -278
  415. package/dist/chunk-S7REMWW4.js +0 -21
  416. package/dist/chunk-TOM66P2P.js +0 -38
  417. package/dist/chunk-TRBGC4ZG.js +0 -112
  418. package/dist/chunk-UA5KS2PL.js +0 -26
  419. package/dist/chunk-UJCK5IW4.js +0 -187
  420. package/dist/chunk-UNYR5GLI.js +0 -23
  421. package/dist/chunk-UZXG6QSY.js +0 -58
  422. package/dist/chunk-VN5DLURA.js +0 -158
  423. package/dist/chunk-VP5TIXDK.js +0 -178
  424. package/dist/chunk-VPYBK2MG.js +0 -18
  425. package/dist/chunk-VTTA2ALZ.js +0 -16
  426. package/dist/chunk-W6GC6OKK.js +0 -16
  427. package/dist/chunk-WELIKLZF.js +0 -256
  428. package/dist/chunk-WOHX7YTH.js +0 -165
  429. package/dist/chunk-WSVMLNTO.js +0 -31
  430. package/dist/chunk-WYGD2UGN.js +0 -14
  431. package/dist/chunk-XCFC7LGF.js +0 -122
  432. package/dist/chunk-XJ2F2WO6.js +0 -8
  433. package/dist/chunk-XTEFPUSN.js +0 -23
  434. package/dist/chunk-YBLDE5CG.js +0 -42
  435. package/dist/chunk-YDGMBMYI.js +0 -25
  436. package/dist/chunk-YHYTW5QA.js +0 -20
  437. package/dist/chunk-ZCTUYGNV.js +0 -26
  438. package/dist/chunk-ZDAEGJH4.js +0 -102
  439. package/dist/chunk-ZJXSXVFP.js +0 -58
  440. package/dist/chunk-ZOWKWMD2.js +0 -18
  441. package/dist/chunk-ZUQW5VBZ.js +0 -89
@@ -1,30 +1,4 @@
1
1
  import type { EntityRegistry, RegisteredEntity } from "@archivist-gg/core";
2
- /**
3
- * Convert a vault-path target (e.g. `SRD 5e/Weapons/Longsword`) to a
4
- * registry-compatible slug (`srd-5e_weapon_longsword`). The middle Type folder
5
- * (`segments[length-2]`) supplies the entity-type token so the slug matches
6
- * the now type-namespaced registry key. For a bare basename without any `/`,
7
- * returns the slugified basename - which lets legacy wikilinks like
8
- * `[[longsword]]` continue to resolve when registered under that bare slug.
9
- */
10
2
  export declare function vaultPathToSlug(target: string): string;
11
- /**
12
- * Public: take a `base_item` string (vault-path wikilink, alias-form
13
- * wikilink, bare-slug wikilink, or bare slug) and return the matching
14
- * `RegisteredEntity` or null.
15
- *
16
- * - Empty / null / non-string input -> null
17
- * - String that doesn't unwrap to a slug -> null
18
- * - Slug not present in the registry -> null
19
- *
20
- * The lookup is type-agnostic: callers that need to narrow to a specific
21
- * `entityType` (e.g. "weapon" only) should branch on the result's
22
- * `entityType`. A type-narrowed convenience wrapper is also exported for the
23
- * common weapon/armor cases.
24
- */
25
3
  export declare function resolveBaseItem(baseItem: string | null | undefined, registry: EntityRegistry): RegisteredEntity | null;
26
- /**
27
- * Convenience: resolve and require a specific entityType. Returns null if
28
- * the entry resolves but is the wrong type.
29
- */
30
4
  export declare function resolveBaseItemOfType(baseItem: string | null | undefined, entityType: string, registry: EntityRegistry): RegisteredEntity | null;
@@ -1,11 +1 @@
1
- import {
2
- resolveBaseItem,
3
- resolveBaseItemOfType,
4
- vaultPathToSlug
5
- } from "../chunk-CM5CWO4K.js";
6
- import "../chunk-ZCTUYGNV.js";
7
- export {
8
- resolveBaseItem,
9
- resolveBaseItemOfType,
10
- vaultPathToSlug
11
- };
1
+ import{resolveBaseItem,resolveBaseItemOfType,vaultPathToSlug}from"../chunk-PZ4L2EEG.js";import"../chunk-63YJPWTM.js";export{resolveBaseItem,resolveBaseItemOfType,vaultPathToSlug};
@@ -1,25 +1,10 @@
1
- /**
2
- * A registry's change generation (PERF, Edgar 2026-09-28): a number that moves on every register, unregister and clear.
3
- * Core's `EntityRegistry` carries none; the plugin's registry does (`RevisionedEntityRegistry`). Registry-derived data
4
- * that does not depend on the character (an item index, a sorted bucket) is memoised per (registry, revision), so a
5
- * write that changes only the character reads the registry zero times.
6
- *
7
- * The rule is strict: a registry WITHOUT a numeric `revision` is never cached, so a mock, a plain core registry or any
8
- * other host always computes afresh and can never read stale data. (The older `registry.count()` memos in
9
- * `pc.spellcasting.ts` and `spell.access.ts` carry a known gap, an in-place re-registration; this key has none.)
10
- */
11
1
  export declare function registryRevision(registry: unknown): number | undefined;
12
- /** `compute()` once per (registry, revision), kept in `cache`; every call when the registry has no revision. */
13
2
  export declare function memoByRevision<T>(cache: WeakMap<object, {
14
3
  revision: number;
15
4
  value: T;
16
5
  }>, registry: object, compute: () => T): T;
17
- /** The registry surface a bucket read needs (structurally core's `EntityRegistry` and every narrower registry type). */
18
6
  interface BucketSource<T> {
19
7
  search(query: string, entityType: string, limit: number): T[];
20
8
  }
21
- /** `registry.search("", type, Infinity)`, the whole bucket in the registry's own order, read ONCE per registry state
22
- * (every call when the registry has no revision). The array is SHARED by every caller until the revision moves: read
23
- * it, never sort or splice it in place. */
24
9
  export declare function bucketOf<T>(registry: BucketSource<T>, type: string): readonly T[];
25
10
  export {};
@@ -1,10 +1 @@
1
- import {
2
- bucketOf,
3
- memoByRevision,
4
- registryRevision
5
- } from "../chunk-4J6DS3EJ.js";
6
- export {
7
- bucketOf,
8
- memoByRevision,
9
- registryRevision
10
- };
1
+ import{bucketOf,memoByRevision,registryRevision}from"../chunk-QMEKQTUT.js";export{bucketOf,memoByRevision,registryRevision};
@@ -1,35 +1,5 @@
1
- /**
2
- * Converts a display name to a URL/file-safe kebab-case slug.
3
- * "Ancient Red Dragon" -> "ancient-red-dragon"
4
- */
5
1
  export declare function slugify(name: string): string;
6
- /** "srd-2024_fighter" → "fighter", "srd-2024_background_acolyte" → "acolyte".
7
- * Arity-robust: strips a `<prefix>_<type>_<name>` (3-part) or legacy `<prefix>_<name>`
8
- * (2-part) slug down to the bare NAME, and passes a bare slug through unchanged.
9
- * Name-slugs never contain `_`, so for a 3-part-or-longer slug the name is
10
- * `parts.slice(2).join("_")`. Tolerates a nullish slug (degrades to "") so a
11
- * malformed entity can't hard-crash the builder; the resolver backfills real slugs. */
12
2
  export declare function bareEntitySlug(slug: string | null | undefined): string;
13
- /** Whether a link tail is a stored registry slug (`me_feat_wish-magic`) rather than a human name
14
- * ("Wish Magic", "Magic Initiate (Cleric)"). The ONE slug-form rule: `wikilinkTailSlug` reads a tail by it,
15
- * and a registry-free display surface uses it to name a slug-form link instead of printing the raw slug. */
16
3
  export declare function isStoredSlug(tail: string): boolean;
17
- /** A link's BARE name slug, the key `bareEntitySlug` gives an owner: "[[SRD 2024/Classes/Fighter]]" and
18
- * "[[srd-2024_class_fighter]]" both give "fighter".
19
- *
20
- * A link names an entity one of two ways, and the tail is read by its shape:
21
- * - a human NAME tail (a path's file name, or a bare `[[fighter]]`) goes through the SAME `slugify` that mints
22
- * registry slugs, so an apostrophe is DELETED rather than hyphenated ("Mage's Bane" to "mages-bane", where
23
- * the old hand-rolled regex minted "mage-s-bane" and missed every time);
24
- * - a STORED slug tail (`[[me_class_bard-captain-lugen-compatibility]]`, the form every PC note and the Me
25
- * homebrew notes write) goes through `bareEntitySlug`. slugify DELETES the `_`, so it used to mint
26
- * "meclassbard-captain-lugen-compatibility", no owner's bare slug: a Me subclass linking its class that way
27
- * was never offered under it and the Builder's Class step called it an orphan (2026-09-25, Captain Lugen).
28
- * The answer is the BARE slug, never the full one, so a lookup that needs the exact entity must not route a
29
- * stored slug through here: `pc.decision-engine.ts`'s `resolveEntityRef` strips a `[[wikilink]]` WITHOUT this
30
- * helper and looks the full slug up directly.
31
- *
32
- * MOVED here from `pc.decision-engine.ts` in R4-G5 T1, beside `bareEntitySlug`, so `pc.pools.ts` can use it
33
- * without importing the decision engine: the engine imports `pc.pools` for `strandedPicks`, and the old
34
- * direction would be a cycle. The engine keeps a re-export for its plugin importer and its own test. */
35
4
  export declare function wikilinkTailSlug(link: string): string;
5
+ export declare function twinKey(slug: string | null | undefined): string;
@@ -1,12 +1 @@
1
- import {
2
- bareEntitySlug,
3
- isStoredSlug,
4
- slugify,
5
- wikilinkTailSlug
6
- } from "../chunk-ZCTUYGNV.js";
7
- export {
8
- bareEntitySlug,
9
- isStoredSlug,
10
- slugify,
11
- wikilinkTailSlug
12
- };
1
+ import{bareEntitySlug,isStoredSlug,slugify,twinKey,wikilinkTailSlug}from"../chunk-63YJPWTM.js";export{bareEntitySlug,isStoredSlug,slugify,twinKey,wikilinkTailSlug};
@@ -1,3 +1 @@
1
- /** The human name of a wikilink target: `[[Player's Handbook (2024)/OptionalFeatures/Pact of the Blade]]` →
2
- * "Pact of the Blade"; `[[path|Alias]]` → "Alias". The converter emits vault PATHS with no alias. */
3
1
  export declare function wikilinkDisplayName(link: string): string;
@@ -1,10 +1 @@
1
- // src/entities/wikilink-display.ts
2
- function wikilinkDisplayName(link) {
3
- const inner = link.trim().replace(/^\[\[/, "").replace(/\]\]$/, "");
4
- const afterAlias = inner.includes("|") ? inner.slice(inner.lastIndexOf("|") + 1) : inner;
5
- const afterSlash = afterAlias.includes("/") ? afterAlias.slice(afterAlias.lastIndexOf("/") + 1) : afterAlias;
6
- return afterSlash.trim();
7
- }
8
- export {
9
- wikilinkDisplayName
10
- };
1
+ function wikilinkDisplayName(link){const inner=link.trim().replace(/^\[\[/,"").replace(/\]\]$/,"");const afterAlias=inner.includes("|")?inner.slice(inner.lastIndexOf("|")+1):inner;const afterSlash=afterAlias.includes("/")?afterAlias.slice(afterAlias.lastIndexOf("/")+1):afterAlias;return afterSlash.trim()}export{wikilinkDisplayName};
@@ -1,32 +1,7 @@
1
1
  import type { FeatCategory } from "../types/choice.js";
2
- /** 5etools feat `category` codes, as DATA beside the schema (never a renderer switch). The converter emits the raw
3
- * code on `exclusive-feat-category` and `feat-category` prerequisites (today only "D", on 14 documents; the G7
4
- * handoff asks it for a name). `FS:P` and `FS:R` are the Paladin- and Ranger-scoped fighting-style categories.
5
- * Measured in data/feats.json: G 80, EB 29, O 25, D 13, FS 10, DG 9, FS:P 1, FS:R 1. Unknown codes fall back to
6
- * the code itself. */
7
2
  export declare const FEAT_CATEGORY_CODE_LABELS: Readonly<Record<string, string>>;
8
3
  export declare function featCategoryLabel(code: string): string;
9
- /** 5etools `feat_progression.category` codes to the ENGINE's `FeatCategory` vocabulary (R4-G5 §3.2.5,
10
- * invariant 3): the DATA table the class-side progression reader maps through, beside the label table above.
11
- * MEASURED over the converted corpus 2026-09-07: 18 `feat_progression` rows across 15 documents, codes
12
- * {EB 13, FS 4, FS:P 1, FS:R 1, O 1}. The FS four are Fighter 2024 (level 1), Paladin 2024 and Ranger 2024
13
- * (level 2, each carrying `["FS","FS:P"]` / `["FS","FS:R"]`) and the Champion 2024 SUBCLASS (level 7); the 13
14
- * EB rows are the 12 PHB 2024 classes plus the Eberron Artificer, all at level 19. The single `O` row sits on
15
- * an OPTIONAL FEATURE (Lessons of the First Ones) with a `"*"` progression key, outside the class walk, so `O`
16
- * and `G` have zero live class-side carriers and are declared for completeness. `D` (Dragonmark) and `DG`
17
- * (Dark Gift) map to NOTHING on purpose: they are not player-choosable feat categories in this vocabulary, and
18
- * a row carrying only those emits no decision and warns once at the reader. G7 handoff (spec §11): the
19
- * converter re-emits these codes in engine vocabulary and this table retires. */
20
4
  export declare const FEAT_PROGRESSION_CATEGORY: Readonly<Record<string, FeatCategory>>;
21
- /** The ONE `FeatCategory` to optional-feature `feature_type` pairing (R4-G5 §3.2.5). The shape-B suppression
22
- * reads it to decide that a class carrying a fighting-style `feat_progression` row must NOT also be offered the
23
- * recognizer's `fighting_style` optional-feature synthetic at that level. `Partial<Record<...>>` because three
24
- * of the four categories pair with nothing, which is also what makes the lookup return `string | undefined`
25
- * without an own-property guard. */
5
+ export declare function featCategoryOf(value: string): string;
26
6
  export declare const FEATURE_TYPE_FOR_CATEGORY: Readonly<Partial<Record<FeatCategory, string>>>;
27
- /** Reduce a `feat_progression` entry's `category` ARRAY to ONE engine category: the FIRST code that maps wins, so
28
- * the shipped `["FS","FS:P"]` (Paladin) and `["FS","FS:R"]` (Ranger) each yield exactly ONE decision instead of
29
- * two. OWN-property guarded (invariant 3): the codes come from converter data, so `constructor` would otherwise
30
- * index a FUNCTION through the prototype chain. Returns undefined when nothing maps (an all-`D` row); the
31
- * CALLER warns, because this stays pure. */
32
7
  export declare function featProgressionCategory(codes: readonly string[] | undefined): FeatCategory | undefined;
@@ -1,14 +1 @@
1
- import {
2
- FEATURE_TYPE_FOR_CATEGORY,
3
- FEAT_CATEGORY_CODE_LABELS,
4
- FEAT_PROGRESSION_CATEGORY,
5
- featCategoryLabel,
6
- featProgressionCategory
7
- } from "../chunk-YBLDE5CG.js";
8
- export {
9
- FEATURE_TYPE_FOR_CATEGORY,
10
- FEAT_CATEGORY_CODE_LABELS,
11
- FEAT_PROGRESSION_CATEGORY,
12
- featCategoryLabel,
13
- featProgressionCategory
14
- };
1
+ import{FEATURE_TYPE_FOR_CATEGORY,FEAT_CATEGORY_CODE_LABELS,FEAT_PROGRESSION_CATEGORY,featCategoryLabel,featCategoryOf,featProgressionCategory}from"../chunk-3QQOATV3.js";export{FEATURE_TYPE_FOR_CATEGORY,FEAT_CATEGORY_CODE_LABELS,FEAT_PROGRESSION_CATEGORY,featCategoryLabel,featCategoryOf,featProgressionCategory};
@@ -1,9 +1,3 @@
1
1
  import type { DocCodec } from "@archivist-gg/core";
2
2
  import type { FeatEntity } from "./feat.types.js";
3
- /**
4
- * Normalizing codec (0c.1a). `parse` delegates to `parseFeat`, which seeds the
5
- * `edition: "2014"` default and validates against `featEntitySchema`.
6
- * `serialize` stays `yaml.dump` (the edit-save path uses obsidian's separate
7
- * serializer; gate (d) verifies `yaml.dump` round-trips through `parseFeat`).
8
- */
9
3
  export declare const featCodec: DocCodec<FeatEntity>;
@@ -1,12 +1 @@
1
- import {
2
- featCodec
3
- } from "../chunk-ZOWKWMD2.js";
4
- import "../chunk-3SFGWFVQ.js";
5
- import "../chunk-FMYWORTP.js";
6
- import "../chunk-ZJXSXVFP.js";
7
- import "../chunk-OOL4KMG2.js";
8
- import "../chunk-JXWNXIIZ.js";
9
- import "../chunk-UA5KS2PL.js";
10
- export {
11
- featCodec
12
- };
1
+ import{featCodec}from"../chunk-NU2Z7MTS.js";import"../chunk-OTRH62HY.js";import"../chunk-GIQLIBC7.js";import"../chunk-CCFIINBA.js";import"../chunk-LHH5XSEA.js";import"../chunk-ZVL5FXXO.js";import"../chunk-I26FHSI6.js";export{featCodec};
@@ -1,11 +1 @@
1
- import {
2
- parseFeat
3
- } from "../chunk-3SFGWFVQ.js";
4
- import "../chunk-FMYWORTP.js";
5
- import "../chunk-ZJXSXVFP.js";
6
- import "../chunk-OOL4KMG2.js";
7
- import "../chunk-JXWNXIIZ.js";
8
- import "../chunk-UA5KS2PL.js";
9
- export {
10
- parseFeat
11
- };
1
+ import{parseFeat}from"../chunk-OTRH62HY.js";import"../chunk-GIQLIBC7.js";import"../chunk-CCFIINBA.js";import"../chunk-LHH5XSEA.js";import"../chunk-ZVL5FXXO.js";import"../chunk-I26FHSI6.js";export{parseFeat};
@@ -34,10 +34,10 @@ export declare const featEntitySchema: z.ZodObject<{
34
34
  kind: z.ZodLiteral<"proficiency">;
35
35
  proficiency_type: z.ZodEnum<{
36
36
  weapon: "weapon";
37
+ armor: "armor";
37
38
  skill: "skill";
38
39
  tool: "tool";
39
40
  "saving-throw": "saving-throw";
40
- armor: "armor";
41
41
  }>;
42
42
  value: z.ZodString;
43
43
  }, z.core.$strip>, z.ZodObject<{
@@ -71,7 +71,8 @@ export declare const featEntitySchema: z.ZodObject<{
71
71
  benefits: z.ZodArray<z.ZodString>;
72
72
  effects: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
73
73
  kind: z.ZodLiteral<"initiative-bonus">;
74
- value: z.ZodNumber;
74
+ value: z.ZodOptional<z.ZodNumber>;
75
+ amount: z.ZodOptional<z.ZodString>;
75
76
  condition: z.ZodOptional<z.ZodString>;
76
77
  subject: z.ZodOptional<z.ZodString>;
77
78
  }, z.core.$strip>, z.ZodObject<{
@@ -146,12 +147,29 @@ export declare const featEntitySchema: z.ZodObject<{
146
147
  climb: "climb";
147
148
  burrow: "burrow";
148
149
  }>;
149
- value: z.ZodNumber;
150
+ value: z.ZodOptional<z.ZodNumber>;
151
+ equal_to: z.ZodOptional<z.ZodLiteral<"walk">>;
150
152
  set: z.ZodOptional<z.ZodBoolean>;
151
153
  scales_at: z.ZodOptional<z.ZodArray<z.ZodObject<{
152
154
  level: z.ZodNumber;
153
155
  value: z.ZodNumber;
154
156
  }, z.core.$strip>>>;
157
+ inactive_while: z.ZodOptional<z.ZodUnion<readonly [z.ZodEnum<{
158
+ "heavy-armor": "heavy-armor";
159
+ armor: "armor";
160
+ shield: "shield";
161
+ }>, z.ZodArray<z.ZodEnum<{
162
+ "heavy-armor": "heavy-armor";
163
+ armor: "armor";
164
+ shield: "shield";
165
+ }>>]>>;
166
+ condition: z.ZodOptional<z.ZodString>;
167
+ subject: z.ZodOptional<z.ZodString>;
168
+ }, z.core.$strip>, z.ZodObject<{
169
+ kind: z.ZodLiteral<"speed-rule">;
170
+ flag: z.ZodEnum<{
171
+ "ignore-armor-strength": "ignore-armor-strength";
172
+ }>;
155
173
  condition: z.ZodOptional<z.ZodString>;
156
174
  subject: z.ZodOptional<z.ZodString>;
157
175
  }, z.core.$strip>, z.ZodObject<{
@@ -198,6 +216,8 @@ export declare const featEntitySchema: z.ZodObject<{
198
216
  unarmed: "unarmed";
199
217
  finesse: "finesse";
200
218
  thrown: "thrown";
219
+ heavy: "heavy";
220
+ "pact-weapon": "pact-weapon";
201
221
  }>, z.ZodArray<z.ZodEnum<{
202
222
  weapon: "weapon";
203
223
  melee: "melee";
@@ -205,6 +225,8 @@ export declare const featEntitySchema: z.ZodObject<{
205
225
  unarmed: "unarmed";
206
226
  finesse: "finesse";
207
227
  thrown: "thrown";
228
+ heavy: "heavy";
229
+ "pact-weapon": "pact-weapon";
208
230
  }>>]>>;
209
231
  spell_scope: z.ZodOptional<z.ZodObject<{
210
232
  list: z.ZodOptional<z.ZodString>;
@@ -221,11 +243,11 @@ export declare const featEntitySchema: z.ZodObject<{
221
243
  kind: z.ZodLiteral<"proficiency">;
222
244
  proficiency_type: z.ZodEnum<{
223
245
  weapon: "weapon";
246
+ armor: "armor";
224
247
  skill: "skill";
225
248
  tool: "tool";
226
249
  language: "language";
227
250
  "saving-throw": "saving-throw";
228
- armor: "armor";
229
251
  }>;
230
252
  value: z.ZodString;
231
253
  expertise: z.ZodOptional<z.ZodBoolean>;
@@ -303,6 +325,25 @@ export declare const featEntitySchema: z.ZodObject<{
303
325
  level: z.ZodNumber;
304
326
  count: z.ZodNumber;
305
327
  }, z.core.$strip>>>;
328
+ applies_to: z.ZodOptional<z.ZodUnion<readonly [z.ZodEnum<{
329
+ weapon: "weapon";
330
+ melee: "melee";
331
+ ranged: "ranged";
332
+ unarmed: "unarmed";
333
+ finesse: "finesse";
334
+ thrown: "thrown";
335
+ heavy: "heavy";
336
+ "pact-weapon": "pact-weapon";
337
+ }>, z.ZodArray<z.ZodEnum<{
338
+ weapon: "weapon";
339
+ melee: "melee";
340
+ ranged: "ranged";
341
+ unarmed: "unarmed";
342
+ finesse: "finesse";
343
+ thrown: "thrown";
344
+ heavy: "heavy";
345
+ "pact-weapon": "pact-weapon";
346
+ }>>]>>;
306
347
  condition: z.ZodOptional<z.ZodString>;
307
348
  subject: z.ZodOptional<z.ZodString>;
308
349
  }, z.core.$strip>, z.ZodObject<{
@@ -469,6 +510,7 @@ export declare const featEntitySchema: z.ZodObject<{
469
510
  band: "band";
470
511
  tab: "tab";
471
512
  }>>;
513
+ equivalent_ids: z.ZodOptional<z.ZodArray<z.ZodString>>;
472
514
  recovery: z.ZodOptional<z.ZodArray<z.ZodObject<{
473
515
  id: z.ZodString;
474
516
  name: z.ZodString;
@@ -1,10 +1 @@
1
- import {
2
- featEntitySchema
3
- } from "../chunk-FMYWORTP.js";
4
- import "../chunk-ZJXSXVFP.js";
5
- import "../chunk-OOL4KMG2.js";
6
- import "../chunk-JXWNXIIZ.js";
7
- import "../chunk-UA5KS2PL.js";
8
- export {
9
- featEntitySchema
10
- };
1
+ import{featEntitySchema}from"../chunk-GIQLIBC7.js";import"../chunk-CCFIINBA.js";import"../chunk-LHH5XSEA.js";import"../chunk-ZVL5FXXO.js";import"../chunk-I26FHSI6.js";export{featEntitySchema};
@@ -61,18 +61,12 @@ export interface FeatEntity {
61
61
  repeatable: boolean;
62
62
  choices: Choice[];
63
63
  resources?: Resource[];
64
- /** Converter/bundle extras declared by feat.schema.ts §2.4; all optional, none read today. */
65
64
  rendering_hint?: string;
66
65
  additional_spells?: AdditionalSpellsEntry[];
67
66
  has_fluff?: boolean;
68
67
  has_fluff_images?: boolean;
69
- /** RAW 5etools passthrough: `unknown` mirrors the schema's `z.unknown()`. */
70
68
  trait_tags?: unknown;
71
69
  optionalfeature_progression?: ProgressionEntry[];
72
- /** R-G1b-5: a TOP-LEVEL bundle key on `SRD 2024/Feats/Boon of the Night Spirit.md`.
73
- * MAPPED since R4-G3a §10.2.3: the resolver carries it onto the resolved feature's
74
- * `action`, so the feat note shows an Action line and the row files under that economy. */
75
70
  action_cost?: ActionCost;
76
- /** One wikilink, or an array of them for the multi-fluff-image emit. */
77
71
  image?: string | string[];
78
72
  }