zen-flow 16.3.1 → 16.4.0

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.
package/dist/zenflow.d.ts CHANGED
@@ -1813,12 +1813,77 @@ declare const removeRitualMeteor: (input: string) => string;
1813
1813
  */
1814
1814
  declare const addRitualHarvest: (output: string) => (input: string) => string;
1815
1815
 
1816
+ declare const ASPECT: {
1817
+ readonly aer: "aer";
1818
+ readonly terra: "terra";
1819
+ readonly ignis: "ignis";
1820
+ readonly aqua: "aqua";
1821
+ readonly ordo: "ordo";
1822
+ readonly perditio: "perditio";
1823
+ readonly vacuos: "vacuos";
1824
+ readonly lux: "lux";
1825
+ readonly tempestas: "tempestas";
1826
+ readonly motus: "motus";
1827
+ readonly gelum: "gelum";
1828
+ readonly vitreus: "vitreus";
1829
+ readonly victus: "victus";
1830
+ readonly venenum: "venenum";
1831
+ readonly potentia: "potentia";
1832
+ readonly permutatio: "permutatio";
1833
+ readonly metallum: "metallum";
1834
+ readonly mortuus: "mortuus";
1835
+ readonly volatus: "volatus";
1836
+ readonly tenebrae: "tenebrae";
1837
+ readonly spiritus: "spiritus";
1838
+ readonly sano: "sano";
1839
+ readonly iter: "iter";
1840
+ readonly alienis: "alienis";
1841
+ readonly praecantatio: "praecantatio";
1842
+ readonly auram: "auram";
1843
+ readonly vitium: "vitium";
1844
+ readonly limus: "limus";
1845
+ readonly herba: "herba";
1846
+ readonly arbor: "arbor";
1847
+ readonly bestia: "bestia";
1848
+ readonly corpus: "corpus";
1849
+ readonly exanimis: "exanimis";
1850
+ readonly cognitio: "cognitio";
1851
+ readonly sensus: "sensus";
1852
+ readonly humanus: "humanus";
1853
+ readonly messis: "messis";
1854
+ readonly perfodio: "perfodio";
1855
+ readonly instrumentum: "instrumentum";
1856
+ readonly meto: "meto";
1857
+ readonly telum: "telum";
1858
+ readonly tutamen: "tutamen";
1859
+ readonly fames: "fames";
1860
+ readonly lucrum: "lucrum";
1861
+ readonly fabrico: "fabrico";
1862
+ readonly pannus: "pannus";
1863
+ readonly machina: "machina";
1864
+ readonly vinculum: "vinculum";
1865
+ readonly luxuria: "luxuria";
1866
+ readonly infernus: "infernus";
1867
+ readonly superbia: "superbia";
1868
+ readonly gula: "gula";
1869
+ readonly invidia: "invidia";
1870
+ readonly desidia: "desidia";
1871
+ readonly ira: "ira";
1872
+ };
1873
+ type AspectShaped = {
1874
+ [ASPECT.aer]: number;
1875
+ [ASPECT.terra]: number;
1876
+ [ASPECT.ignis]: number;
1877
+ [ASPECT.aqua]: number;
1878
+ [ASPECT.ordo]: number;
1879
+ [ASPECT.perditio]: number;
1880
+ };
1816
1881
  type RecipeArcane = {
1817
1882
  input: Shaped | Shapeless;
1818
1883
  output: Ingredient;
1819
1884
  /** Defaults to `"ASPECTS"` as this does not require research */
1820
1885
  research?: string;
1821
- aspects: Stack[];
1886
+ aspects?: Partial<AspectShaped>;
1822
1887
  };
1823
1888
  type RecipeArcaneShaped = RecipeArcane & {
1824
1889
  input: Shaped;
@@ -2159,63 +2224,6 @@ declare const RESEARCH: {
2159
2224
  readonly focusBlink: "FOCUSBLINK";
2160
2225
  };
2161
2226
  };
2162
- declare const ASPECT: {
2163
- readonly aer: "aer";
2164
- readonly terra: "terra";
2165
- readonly ignis: "ignis";
2166
- readonly aqua: "aqua";
2167
- readonly ordo: "ordo";
2168
- readonly perditio: "perditio";
2169
- readonly vacuos: "vacuos";
2170
- readonly lux: "lux";
2171
- readonly tempestas: "tempestas";
2172
- readonly motus: "motus";
2173
- readonly gelum: "gelum";
2174
- readonly vitreus: "vitreus";
2175
- readonly victus: "victus";
2176
- readonly venenum: "venenum";
2177
- readonly potentia: "potentia";
2178
- readonly permutatio: "permutatio";
2179
- readonly metallum: "metallum";
2180
- readonly mortuus: "mortuus";
2181
- readonly volatus: "volatus";
2182
- readonly tenebrae: "tenebrae";
2183
- readonly spiritus: "spiritus";
2184
- readonly sano: "sano";
2185
- readonly iter: "iter";
2186
- readonly alienis: "alienis";
2187
- readonly praecantatio: "praecantatio";
2188
- readonly auram: "auram";
2189
- readonly vitium: "vitium";
2190
- readonly limus: "limus";
2191
- readonly herba: "herba";
2192
- readonly arbor: "arbor";
2193
- readonly bestia: "bestia";
2194
- readonly corpus: "corpus";
2195
- readonly exanimis: "exanimis";
2196
- readonly cognitio: "cognitio";
2197
- readonly sensus: "sensus";
2198
- readonly humanus: "humanus";
2199
- readonly messis: "messis";
2200
- readonly perfodio: "perfodio";
2201
- readonly instrumentum: "instrumentum";
2202
- readonly meto: "meto";
2203
- readonly telum: "telum";
2204
- readonly tutamen: "tutamen";
2205
- readonly fames: "fames";
2206
- readonly lucrum: "lucrum";
2207
- readonly fabrico: "fabrico";
2208
- readonly pannus: "pannus";
2209
- readonly machina: "machina";
2210
- readonly vinculum: "vinculum";
2211
- readonly luxuria: "luxuria";
2212
- readonly infernus: "infernus";
2213
- readonly superbia: "superbia";
2214
- readonly gula: "gula";
2215
- readonly invidia: "invidia";
2216
- readonly desidia: "desidia";
2217
- readonly ira: "ira";
2218
- };
2219
2227
  /**
2220
2228
  * Add shaped [Arcane Worktable](https://ftbwiki.org/Arcane_Worktable_(Thaumcraft_4)) recipe
2221
2229
  *
@@ -2646,4 +2654,4 @@ type RecipeResearchMove = {
2646
2654
  declare const moveResearch: (recipe: RecipeResearchMove) => string;
2647
2655
 
2648
2656
  export { ASPECT, COLOR, ENCHANTMENT, FOCI, HARVESTER_TYPE, MATERIAL, MODIFIER, RESEARCH, RESEARCH_TAB, STYLE, add, addAlchemy, addAltar, addArcane, addArcaneShaped, addArcaneShapeless, addAspectEntity, addAspectItem, addBiomeRubberTree, addBlacklistAutospawner, addBloodOrb, addBloodOrbShaped, addBloodOrbShapeless, addCarpenter, addCastingBasin, addCastingTable, addCentrifuge, addChestLoot, addComposter, addCompressor, addCrucible, addCrucibleAlchemy, addCrucibleFuel, addDryingRack, addExtreme, addFabricator, addFabricatorGlass, addFermenter, addFermenterFuel, addFurnace, addFurnaceFuel, addGrinder, addHammer, addHarvester, addInductionSmelter, addInfusion, addInfusionEnchantment, addInscriber, addInsolator, addLaserFoci, addLaserOre, addLootCommon, addLootRare, addLootUncommon, addMagmaCrucible, addMirror, addMoistener, addOreDict, addPlanter, addPress, addPulverizer, addQED, addRedstoneFurnace, addRepairMaterial, addResearch, addResearchPage, addResearchPageArcane, addResearchPageCrafting, addResearchPageCrucible, addResearchPageEnchantment, addResearchPageInfusion, addResearchRequirement, addResearchSibling, addResearchTab, addRitualBinding, addRitualHarvest, addRitualMeteor, addSawmill, addSeed, addShaped, addShapeless, addSieve, addSludgeBoiler, addSmelteryAlloy, addSmelteryFluid, addSmelteryFuel, addSqueezer, addStill, addTransposerExtract, addTransposerFill, addWarpItem, addWarpResearch, createBlock, createItem, createLiquid, createMaterial, formatResearchPage, hide, joinOreDict, mirrorOreDict, moveResearch, orphanResearch, refreshResearch, remove, removeAlchemy, removeAltar, removeArcane, removeAspectEntity, removeAspectItem, removeBiomeRubberTree, removeBlacklistAutospawner, removeCarpenter, removeCastingBasin, removeCastingTable, removeCentrifuge, removeChestLoot, removeComposter, removeCompressor, removeCrucible, removeCrucibleAlchemy, removeCrucibleFuel, removeDryingRack, removeExtreme, removeFabricator, removeFabricatorGlass, removeFermenter, removeFermenterFuel, removeFurnace, removeFurnaceFuel, removeGrinder, removeHammer, removeInductionSmelter, removeInfusion, removeInfusionEnchantment, removeInsolator, removeLaserFoci, removeLaserOre, removeLootCommon, removeLootRare, removeLootUncommon, removeMagmaCrucible, removeModifier, removeMoistener, removeOreDict, removePressInscriber, removePulverizer, removeQED, removeRedstoneFurnace, removeRepairMaterial, removeResearch, removeResearchRequirement, removeResearchSibling, removeResearchTab, removeRitualBinding, removeRitualMeteor, removeSawmill, removeSeed, removeShaped, removeShapeless, removeSieve, removeSludgeBoiler, removeSmelteryAlloy, removeSmelteryFluid, removeSmelteryFuel, removeSqueezer, removeStill, removeTransposerExtract, removeTransposerFill, removeWarp, removeWarpItem, removeWarpResearch, rename, resetResearch, setArrowAccuracy, setArrowBreakChance, setArrowMass, setArrowStats, setAspectEntity, setAspectItem, setBowMaterialDrawspeed, setBowMaterialDurability, setBowMaterialFlightSpeed, setBowMaterialStats, setLocalisation, setMaterialDamage, setMaterialDurability, setMaterialHandleModifier, setMaterialLevelStonebound, setMaterialMiningLevel, setMaterialName, setMaterialReinforcedLevel, setMaterialSpeed, setMaterialStats, setMaterialStyle, setResearchAspects, setResearchComplexity, setResearchTypeAuto, setResearchTypeHidden, setResearchTypeRound, setResearchTypeSecondary, setResearchTypeSpikey, setResearchTypeStub, setResearchTypeVirtual, show, withEnchantment, withName, withTag, withTooltip, withTooltipShift, withWeight };
2649
- export type { ArrowStats, Bonus, BonusHammer, BowStats, Cast, ChestLoot, Enchantment, Ingredient, Liquid, MaterialStats, RecipeAlchemy, RecipeAltar, RecipeArcane, RecipeArcaneShaped, RecipeArcaneShapeless, RecipeBlock, RecipeCarpenter, RecipeCastingBasin, RecipeCastingTable, RecipeCentrifuge, RecipeComposter, RecipeCompressor, RecipeCrucibleAlchemy, RecipeDryingRack, RecipeFabricator, RecipeFabricatorGlass, RecipeFermenter, RecipeFermenterFuel, RecipeFurnace, RecipeGrinder, RecipeHarvester, RecipeInductionSmelter, RecipeInfusion, RecipeInfusionEnchantment, RecipeInsolator, RecipeItem, RecipeLaser, RecipeLiquid, RecipeMagmaCrucible, RecipeMaterial, RecipeMeteor, RecipeMoistener, RecipePressInscriber, RecipePulverizer, RecipeRedstoneFurnace, RecipeRepairMaterial, RecipeResearch, RecipeResearchMove, RecipeResearchTab, RecipeSawmill, RecipeSmelteryAlloy, RecipeSmelteryFluid, RecipeSmelteryFuel, RecipeSqueezer, RecipeStill, RecipeTransposerExtract, RecipeTransposerFill, Shaped, ShapedExtreme, Shapeless, Stack, Text, TextResearch, TextResearchImage, TextRich, Texture };
2657
+ export type { ArrowStats, AspectShaped, Bonus, BonusHammer, BowStats, Cast, ChestLoot, Enchantment, Ingredient, Liquid, MaterialStats, RecipeAlchemy, RecipeAltar, RecipeArcane, RecipeArcaneShaped, RecipeArcaneShapeless, RecipeBlock, RecipeCarpenter, RecipeCastingBasin, RecipeCastingTable, RecipeCentrifuge, RecipeComposter, RecipeCompressor, RecipeCrucibleAlchemy, RecipeDryingRack, RecipeFabricator, RecipeFabricatorGlass, RecipeFermenter, RecipeFermenterFuel, RecipeFurnace, RecipeGrinder, RecipeHarvester, RecipeInductionSmelter, RecipeInfusion, RecipeInfusionEnchantment, RecipeInsolator, RecipeItem, RecipeLaser, RecipeLiquid, RecipeMagmaCrucible, RecipeMaterial, RecipeMeteor, RecipeMoistener, RecipePressInscriber, RecipePulverizer, RecipeRedstoneFurnace, RecipeRepairMaterial, RecipeResearch, RecipeResearchMove, RecipeResearchTab, RecipeSawmill, RecipeSmelteryAlloy, RecipeSmelteryFluid, RecipeSmelteryFuel, RecipeSqueezer, RecipeStill, RecipeTransposerExtract, RecipeTransposerFill, Shaped, ShapedExtreme, Shapeless, Stack, Text, TextResearch, TextResearchImage, TextRich, Texture };
package/dist/zenflow.js CHANGED
@@ -908,6 +908,67 @@ const addRitualHarvest = (output) => (input) => {
908
908
  return `mods.bloodmagic.HarvestMoon.addHarvestable(${out});`;
909
909
  };
910
910
 
911
+ const ASPECT = {
912
+ aer: "aer",
913
+ terra: "terra",
914
+ ignis: "ignis",
915
+ aqua: "aqua",
916
+ ordo: "ordo",
917
+ perditio: "perditio",
918
+ vacuos: "vacuos",
919
+ lux: "lux",
920
+ tempestas: "tempestas",
921
+ motus: "motus",
922
+ gelum: "gelum",
923
+ vitreus: "vitreus",
924
+ victus: "victus",
925
+ venenum: "venenum",
926
+ potentia: "potentia",
927
+ permutatio: "permutatio",
928
+ metallum: "metallum",
929
+ mortuus: "mortuus",
930
+ volatus: "volatus",
931
+ tenebrae: "tenebrae",
932
+ spiritus: "spiritus",
933
+ sano: "sano",
934
+ iter: "iter",
935
+ alienis: "alienis",
936
+ praecantatio: "praecantatio",
937
+ auram: "auram",
938
+ vitium: "vitium",
939
+ limus: "limus",
940
+ herba: "herba",
941
+ arbor: "arbor",
942
+ bestia: "bestia",
943
+ corpus: "corpus",
944
+ exanimis: "exanimis",
945
+ cognitio: "cognitio",
946
+ sensus: "sensus",
947
+ humanus: "humanus",
948
+ messis: "messis",
949
+ perfodio: "perfodio",
950
+ instrumentum: "instrumentum",
951
+ meto: "meto",
952
+ telum: "telum",
953
+ tutamen: "tutamen",
954
+ fames: "fames",
955
+ lucrum: "lucrum",
956
+ fabrico: "fabrico",
957
+ pannus: "pannus",
958
+ machina: "machina",
959
+ vinculum: "vinculum",
960
+ luxuria: "luxuria",
961
+ infernus: "infernus",
962
+ superbia: "superbia",
963
+ gula: "gula",
964
+ invidia: "invidia",
965
+ desidia: "desidia",
966
+ ira: "ira"
967
+ };
968
+ const aspectShaped = (x) => {
969
+ const aspects = Object.entries(x).map(([id, n]) => aspect({ id, n }));
970
+ return literal(list()(aspects));
971
+ };
911
972
  const RESEARCH_TAB = {
912
973
  basics: "BASICS",
913
974
  thaumaturgy: "THAUMATURGY",
@@ -1244,77 +1305,20 @@ const RESEARCH = {
1244
1305
  focusBlink: "FOCUSBLINK"
1245
1306
  }
1246
1307
  };
1247
- const ASPECT = {
1248
- aer: "aer",
1249
- terra: "terra",
1250
- ignis: "ignis",
1251
- aqua: "aqua",
1252
- ordo: "ordo",
1253
- perditio: "perditio",
1254
- vacuos: "vacuos",
1255
- lux: "lux",
1256
- tempestas: "tempestas",
1257
- motus: "motus",
1258
- gelum: "gelum",
1259
- vitreus: "vitreus",
1260
- victus: "victus",
1261
- venenum: "venenum",
1262
- potentia: "potentia",
1263
- permutatio: "permutatio",
1264
- metallum: "metallum",
1265
- mortuus: "mortuus",
1266
- volatus: "volatus",
1267
- tenebrae: "tenebrae",
1268
- spiritus: "spiritus",
1269
- sano: "sano",
1270
- iter: "iter",
1271
- alienis: "alienis",
1272
- praecantatio: "praecantatio",
1273
- auram: "auram",
1274
- vitium: "vitium",
1275
- limus: "limus",
1276
- herba: "herba",
1277
- arbor: "arbor",
1278
- bestia: "bestia",
1279
- corpus: "corpus",
1280
- exanimis: "exanimis",
1281
- cognitio: "cognitio",
1282
- sensus: "sensus",
1283
- humanus: "humanus",
1284
- messis: "messis",
1285
- perfodio: "perfodio",
1286
- instrumentum: "instrumentum",
1287
- meto: "meto",
1288
- telum: "telum",
1289
- tutamen: "tutamen",
1290
- fames: "fames",
1291
- lucrum: "lucrum",
1292
- fabrico: "fabrico",
1293
- pannus: "pannus",
1294
- machina: "machina",
1295
- vinculum: "vinculum",
1296
- luxuria: "luxuria",
1297
- infernus: "infernus",
1298
- superbia: "superbia",
1299
- gula: "gula",
1300
- invidia: "invidia",
1301
- desidia: "desidia",
1302
- ira: "ira"
1303
- };
1304
1308
  const addArcaneShaped = (recipe$1) => {
1305
1309
  const out = recipe(
1306
1310
  literal(recipe$1.research ?? RESEARCH[RESEARCH_TAB.basics].aspects),
1307
1311
  ingredient(recipe$1.output),
1308
- aspects(recipe$1.aspects),
1312
+ maybe(aspectShaped)(recipe$1.aspects),
1309
1313
  shaped(recipe$1.input)
1310
1314
  );
1311
1315
  return `mods.thaumcraft.Arcane.addShaped(${out});`;
1312
1316
  };
1313
1317
  const addArcaneShapeless = (recipe$1) => {
1314
1318
  const out = recipe(
1315
- literal(recipe$1.research ?? "ASPECTS"),
1319
+ literal(recipe$1.research ?? RESEARCH[RESEARCH_TAB.basics].aspects),
1316
1320
  ingredient(recipe$1.output),
1317
- aspects(recipe$1.aspects),
1321
+ maybe(aspectShaped)(recipe$1.aspects),
1318
1322
  array(3)(recipe$1.input)
1319
1323
  );
1320
1324
  return `mods.thaumcraft.Arcane.addShapeless(${out});`;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "zen-flow",
3
- "version": "16.3.1",
3
+ "version": "16.4.0",
4
4
  "description": "MineTweaker ZenScript made easy.",
5
5
  "type": "module",
6
6
  "exports": {