@adeficior/data-modifier 1.0.0-rc.37 → 1.0.0-rc.38

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 (49) hide show
  1. package/dist/common/fields.js +1 -1
  2. package/dist/common/fields.js.map +1 -1
  3. package/dist/common/ingredient/index.d.ts +6 -0
  4. package/dist/common/ingredient/index.js +13 -0
  5. package/dist/common/ingredient/index.js.map +1 -1
  6. package/dist/common/ingredient/serializer.js +7 -2
  7. package/dist/common/ingredient/serializer.js.map +1 -1
  8. package/dist/common/serializer.d.ts +7 -4
  9. package/dist/common/serializer.js +25 -10
  10. package/dist/common/serializer.js.map +1 -1
  11. package/dist/error.js +2 -2
  12. package/dist/error.js.map +1 -1
  13. package/dist/loader/recipe.d.ts +2 -2
  14. package/dist/loader/recipe.js +13 -40
  15. package/dist/loader/recipe.js.map +1 -1
  16. package/dist/parser/recipe/adAstra/spaceStation.js +1 -1
  17. package/dist/parser/recipe/adAstra/spaceStation.js.map +1 -1
  18. package/dist/parser/recipe/botania/apothecary.js +1 -1
  19. package/dist/parser/recipe/botania/apothecary.js.map +1 -1
  20. package/dist/parser/recipe/botania/blocks.js +3 -2
  21. package/dist/parser/recipe/botania/blocks.js.map +1 -1
  22. package/dist/parser/recipe/botania/brew.js +1 -1
  23. package/dist/parser/recipe/botania/brew.js.map +1 -1
  24. package/dist/parser/recipe/botania/elvenTrade.js +2 -2
  25. package/dist/parser/recipe/botania/elvenTrade.js.map +1 -1
  26. package/dist/parser/recipe/botania/runicAltar.js +1 -1
  27. package/dist/parser/recipe/botania/runicAltar.js.map +1 -1
  28. package/dist/parser/recipe/create/assembly.js +1 -1
  29. package/dist/parser/recipe/create/assembly.js.map +1 -1
  30. package/dist/parser/recipe/farmersdelight/cooking.js +3 -6
  31. package/dist/parser/recipe/farmersdelight/cooking.js.map +1 -1
  32. package/dist/parser/recipe/farmersdelight/cutting.js +2 -2
  33. package/dist/parser/recipe/farmersdelight/cutting.js.map +1 -1
  34. package/dist/parser/recipe/manyToMany.js +2 -2
  35. package/dist/parser/recipe/manyToMany.js.map +1 -1
  36. package/dist/parser/recipe/manyToOne.js +1 -1
  37. package/dist/parser/recipe/manyToOne.js.map +1 -1
  38. package/dist/parser/recipe/roots/component.js +1 -1
  39. package/dist/parser/recipe/roots/component.js.map +1 -1
  40. package/dist/parser/recipe/roots/ritual.js +2 -2
  41. package/dist/parser/recipe/roots/ritual.js.map +1 -1
  42. package/dist/parser/recipe/thermal/index.js +7 -5
  43. package/dist/parser/recipe/thermal/index.js.map +1 -1
  44. package/dist/parser/recipe/thermal/ingredient.js +4 -3
  45. package/dist/parser/recipe/thermal/ingredient.js.map +1 -1
  46. package/dist/parser/recipe/vanilla/smithing.d.ts +4 -2
  47. package/dist/parser/recipe/vanilla/smithing.js +12 -7
  48. package/dist/parser/recipe/vanilla/smithing.js.map +1 -1
  49. package/package.json +1 -1
@@ -1,5 +1,5 @@
1
1
  import z from "zod";
2
2
  export const CountSchema = z.codec(z.number().int().positive().optional(), z.number(), { decode: (it) => it ?? 1, encode: (it) => (it === 1 ? undefined : it) });
3
3
  export const AmountSchema = z.number().positive();
4
- export const ChanceSchema = z.number().max(1).positive().optional();
4
+ export const ChanceSchema = z.number().positive().optional();
5
5
  //# sourceMappingURL=fields.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fields.js","sourceRoot":"","sources":["../../src/common/fields.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AAEpB,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAChC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,EACtC,CAAC,CAAC,MAAM,EAAE,EACV,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CACzE,CAAC;AACF,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC;AAClD,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC"}
1
+ {"version":3,"file":"fields.js","sourceRoot":"","sources":["../../src/common/fields.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AAEpB,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAChC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,EACtC,CAAC,CAAC,MAAM,EAAE,EACV,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CACzE,CAAC;AACF,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC;AAClD,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC"}
@@ -61,3 +61,9 @@ export declare class ListIngredient extends Ingredient {
61
61
  export type ItemLikeIngredient = ItemTagIngredient | ItemIngredient;
62
62
  export type FluidLikeIngredient = FluidTagIngredient | FluidIngredient;
63
63
  export type BlockLikeIngredient = BlockTagIngredient | BlockIngredient;
64
+ export declare class ToolActionIngredient extends Ingredient {
65
+ readonly action: string;
66
+ constructor(action: string);
67
+ asResult(): Result;
68
+ idsFor(): never[];
69
+ }
@@ -112,4 +112,17 @@ export class ListIngredient extends Ingredient {
112
112
  throw new Error("union ingredients cannot be transformed into a result");
113
113
  }
114
114
  }
115
+ export class ToolActionIngredient extends Ingredient {
116
+ action;
117
+ constructor(action) {
118
+ super();
119
+ this.action = action;
120
+ }
121
+ asResult() {
122
+ throw new Error("tool action ingredient cannot be transformed into a result");
123
+ }
124
+ idsFor() {
125
+ return [];
126
+ }
127
+ }
115
128
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/common/ingredient/index.ts"],"names":[],"mappings":"AAOA,OAAO,EACL,QAAQ,EACR,KAAK,GAIN,MAAM,OAAO,CAAC;AAEf,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAe,MAAM,WAAW,CAAC;AAC9E,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,MAAM,OAAgB,UAAU;IAC9B,QAAQ,CAAC,CAAiB,IAAS,CAAC;CAKrC;AAED,MAAM,OAAgB,aAAc,SAAQ,UAAU;IAKlC;IAJF,GAAG,CAAQ;IAE3B,YACE,KAAc,EACE,QAAkC;QAElD,KAAK,EAAE,CAAC;QAFQ,aAAQ,GAAR,QAAQ,CAA0B;QAGlD,2CAA2C;QAC3C,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;IAC1B,CAAC;IAEQ,MAAM,CAAC,QAAkC;QAChD,IAAI,IAAI,CAAC,QAAQ,KAAK,QAAQ;YAAE,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAClD,OAAO,EAAE,CAAC;IACZ,CAAC;IAEQ,QAAQ;QACf,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;IACzE,CAAC;CACF;AAED,MAAM,OAAO,iBAAkB,SAAQ,aAAa;IAGhC;IAFlB,YACE,GAAY,EACI,QAAQ,CAAC;QAEzB,KAAK,CAAC,GAAG,EAAE,gBAAgB,CAAC,CAAC;QAFb,UAAK,GAAL,KAAK,CAAI;IAG3B,CAAC;CACF;AAED,MAAM,OAAO,kBAAmB,SAAQ,aAAa;IAGjC;IAFlB,YACE,GAAY,EACI,SAAS,MAAM;QAE/B,KAAK,CAAC,GAAG,EAAE,iBAAiB,CAAC,CAAC;QAFd,WAAM,GAAN,MAAM,CAAS;IAGjC,CAAC;CACF;AAED,MAAM,OAAO,kBAAmB,SAAQ,aAAa;IACnD,YAAY,GAAY;QACtB,KAAK,CAAC,GAAG,EAAE,iBAAiB,CAAC,CAAC;IAChC,CAAC;CACF;AAED,MAAM,OAAgB,uBAEpB,SAAQ,UAAU;IAKA;IAJF,EAAE,CAAkB;IAEpC,YACE,KAAiB,EACD,QAAkC;QAElD,KAAK,EAAE,CAAC;QAFQ,aAAQ,GAAR,QAAQ,CAA0B;QAGlD,IAAI,CAAC,EAAE,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;IAEQ,MAAM,CAAC,QAAkC;QAChD,IAAI,IAAI,CAAC,QAAQ,KAAK,QAAQ;YAAE,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACjD,OAAO,EAAE,CAAC;IACZ,CAAC;CACF;AAED,MAAM,OAAO,cAAe,SAAQ,uBAA+B;IAG/C;IAFlB,YACE,EAAmB,EACH,QAAQ,CAAC;QAEzB,KAAK,CAAC,EAAE,EAAE,gBAAgB,CAAC,CAAC;QAFZ,UAAK,GAAL,KAAK,CAAI;IAG3B,CAAC;IAEQ,QAAQ,CAAC,MAAsB;QACtC,MAAM,CAAC,aAAa,CAAC,gBAAgB,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;IAClD,CAAC;IAEQ,QAAQ;QACf,OAAO,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7C,CAAC;CACF;AAED,MAAM,OAAO,eAAgB,SAAQ,uBAAgC;IAGjD;IACA;IAHlB,YACE,EAAoB,EACJ,SAAS,MAAM,EACf,MAAe;QAE/B,KAAK,CAAC,EAAE,EAAE,iBAAiB,CAAC,CAAC;QAHb,WAAM,GAAN,MAAM,CAAS;QACf,WAAM,GAAN,MAAM,CAAS;IAGjC,CAAC;IAEQ,QAAQ,CAAC,MAAsB;QACtC,MAAM,CAAC,aAAa,CAAC,iBAAiB,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;IACnD,CAAC;IAEQ,QAAQ;QACf,OAAO,IAAI,WAAW,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IAC/C,CAAC;CACF;AAED,MAAM,OAAO,eAAgB,SAAQ,uBAAgC;IAGjD;IAFlB,YACE,EAAoB,EACJ,MAAe;QAE/B,KAAK,CAAC,EAAE,EAAE,iBAAiB,CAAC,CAAC;QAFb,WAAM,GAAN,MAAM,CAAS;IAGjC,CAAC;IAEQ,QAAQ,CAAC,MAAsB;QACtC,MAAM,CAAC,aAAa,CAAC,iBAAiB,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;IACnD,CAAC;IAEQ,QAAQ;QACf,OAAO,IAAI,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAClC,CAAC;CACF;AAED,MAAM,OAAO,cAAe,SAAQ,UAAU;IAChB;IAA5B,YAA4B,OAAqB;QAC/C,KAAK,EAAE,CAAC;QADkB,YAAO,GAAP,OAAO,CAAc;IAEjD,CAAC;IAEQ,QAAQ,CAAC,MAAsB;QACtC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;IACpD,CAAC;IAEQ,MAAM,CAAC,QAAkC;QAChD,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC3D,CAAC;IAEQ,QAAQ;QACf,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;IAC3E,CAAC;CACF"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/common/ingredient/index.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,10 @@
1
1
  import { mapValues } from "lodash-es";
2
2
  import z from "zod";
3
- import { BlockIngredient, BlockTagIngredient, FluidIngredient, FluidTagIngredient, Ingredient, ItemIngredient, ItemTagIngredient, ListIngredient, } from ".";
3
+ import { BlockIngredient, BlockTagIngredient, FluidIngredient, FluidTagIngredient, Ingredient, ItemIngredient, ItemTagIngredient, ListIngredient, ToolActionIngredient, } from ".";
4
4
  import { IngredientMap, } from "../../parser/recipe/ingredientMap";
5
5
  import { AmountSchema, CountSchema } from "../fields";
6
6
  import { IdSchema, stripTag } from "../id";
7
- import { createSerializer, isObjectWith, VersionedSerializer, } from "../serializer";
7
+ import { createSerializer, hasType, isObjectWith, VersionedSerializer, } from "../serializer";
8
8
  const serializer15 = createSerializer((builder) => {
9
9
  builder.deserializer((it) => typeof it === "string", (input) => {
10
10
  if (input.startsWith("#")) {
@@ -14,6 +14,11 @@ const serializer15 = createSerializer((builder) => {
14
14
  });
15
15
  builder.serializer(ListIngredient, (it, serialize) => it.entries.flatMap(serialize));
16
16
  builder.deserializer(Array.isArray, (it, deserialize) => new ListIngredient(it.map(deserialize)));
17
+ const toolActionType = "farmersdelight:tool_action";
18
+ builder.register(ToolActionIngredient, hasType(toolActionType), z.object({
19
+ type: z.literal(toolActionType),
20
+ action: z.string().nonempty(),
21
+ }), (it) => new ToolActionIngredient(it.action), ({ action }) => ({ action, type: toolActionType }));
17
22
  builder.register(ItemTagIngredient, isObjectWith("tag"), z.object({
18
23
  tag: IdSchema,
19
24
  count: CountSchema,
@@ -1 +1 @@
1
- {"version":3,"file":"serializer.js","sourceRoot":"","sources":["../../../src/common/ingredient/serializer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"serializer.js","sourceRoot":"","sources":["../../../src/common/ingredient/serializer.ts"],"names":[],"mappings":"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"}
@@ -21,12 +21,15 @@ export declare abstract class VersionedSerializer<Out extends InputOutput> {
21
21
  private readonly serializer;
22
22
  private readonly typeName;
23
23
  constructor(packFormat: SemVerInput, lookup: RegistryLookup, type: Class<Out>, serializers: Record<string, IOSerializer<Out>>);
24
- serialize(ingredient: Out): unknown;
25
- serializeList(ingredients: Out[]): unknown[];
24
+ serialize(output: Out): unknown;
25
+ serializeList(outputs: Out[]): unknown[];
26
+ serializeOptional(output: Out | undefined): unknown;
26
27
  private deserializeUnvalidated;
27
28
  deserialize(input: unknown): Out;
28
- validated<T extends Out>(ingredient: T): T;
29
- createList(input: unknown[]): Out[];
29
+ deserializeOptional(input: unknown): Out | undefined;
30
+ validated<T extends Out>(output: T): T;
31
+ deserializeList(input: unknown[]): Out[];
30
32
  }
31
33
  export declare function isObjectWith(property: string): (input: unknown) => input is Record<string, unknown>;
34
+ export declare function hasType(type: string): (input: unknown) => input is Record<string, unknown>;
32
35
  export {};
@@ -51,14 +51,19 @@ export class VersionedSerializer {
51
51
  throw new Error(`could not find ${this.typeName} serializer working for ${packFormat}`);
52
52
  this.serializer = match;
53
53
  }
54
- serialize(ingredient) {
55
- const serialized = this.serializer.serialize(ingredient, (it) => this.serialize(it));
54
+ serialize(output) {
55
+ const serialized = this.serializer.serialize(output, (it) => this.serialize(it));
56
56
  if (serialized !== false)
57
57
  return serialized;
58
- throw new IllegalShapeError(`unable to serialize ${this.typeName}`, ingredient);
58
+ throw new IllegalShapeError(`unable to serialize ${this.typeName}`, output);
59
59
  }
60
- serializeList(ingredients) {
61
- return ingredients.map((it) => this.serialize(it));
60
+ serializeList(outputs) {
61
+ return outputs.map((it) => this.serialize(it));
62
+ }
63
+ serializeOptional(output) {
64
+ if (output === undefined)
65
+ return undefined;
66
+ return this.serialize(output);
62
67
  }
63
68
  deserializeUnvalidated(input) {
64
69
  if (input instanceof this.type)
@@ -77,12 +82,16 @@ export class VersionedSerializer {
77
82
  return deserialized;
78
83
  });
79
84
  }
80
- validated(ingredient) {
81
- ingredient.validate(this.lookup);
82
- return ingredient;
85
+ deserializeOptional(input) {
86
+ if (input === undefined)
87
+ return undefined;
88
+ return this.deserialize(input);
89
+ }
90
+ validated(output) {
91
+ output.validate(this.lookup);
92
+ return output;
83
93
  }
84
- // TODO rename deserializeList
85
- createList(input) {
94
+ deserializeList(input) {
86
95
  return input.map((it) => this.deserialize(it));
87
96
  }
88
97
  }
@@ -92,4 +101,10 @@ export function isObjectWith(property) {
92
101
  typeof input === "object" &&
93
102
  property in input;
94
103
  }
104
+ export function hasType(type) {
105
+ const hasType = isObjectWith("type");
106
+ return (input) => {
107
+ return hasType(input) && input.type === type;
108
+ };
109
+ }
95
110
  //# sourceMappingURL=serializer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"serializer.js","sourceRoot":"","sources":["../../src/common/serializer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"serializer.js","sourceRoot":"","sources":["../../src/common/serializer.ts"],"names":[],"mappings":"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"}
package/dist/error.js CHANGED
@@ -47,9 +47,9 @@ export function tryCatching(logger, run) {
47
47
  const transformed = transformError(error);
48
48
  if (transformed instanceof IllegalShapeError) {
49
49
  if (transformed.input)
50
- logger?.trace(transformed.message, { input: transformed.input });
50
+ logger.trace(transformed.message, { input: transformed.input });
51
51
  else
52
- logger?.trace(transformed.message);
52
+ logger.trace(transformed.message);
53
53
  return null;
54
54
  }
55
55
  throw error;
package/dist/error.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"error.js","sourceRoot":"","sources":["../src/error.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC;AAE/B,MAAM,OAAO,iBAAkB,SAAQ,KAAK;IAG/B;IAFX,YACE,OAAe,EACN,KAAe;QAExB,KAAK,CAAC,OAAO,CAAC,CAAC;QAFN,UAAK,GAAL,KAAK,CAAU;IAG1B,CAAC;CACF;AAED,MAAM,OAAO,oBAA2C,SAAQ,KAAK;IAGxD;IACA;IAHX,YACE,OAAe,EACN,QAAW,EACX,EAAe;QAExB,KAAK,CAAC,OAAO,CAAC,CAAC;QAHN,aAAQ,GAAR,QAAQ,CAAG;QACX,OAAE,GAAF,EAAE,CAAa;IAG1B,CAAC;CACF;AAED,MAAM,UAAU,cAAc,CAAC,KAAc;IAC3C,IAAI,KAAK,YAAY,QAAQ,EAAE,CAAC;QAC9B,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM;aACzB,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;YACV,IAAI,EAAE,CAAC,IAAI;gBAAE,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,CAAC;;gBACrD,OAAO,EAAE,CAAC,OAAO,CAAC;QACzB,CAAC,CAAC;aACD,IAAI,CAAC,IAAI,CAAC,CAAC;QACd,OAAO,IAAI,iBAAiB,CAAC,OAAO,CAAC,CAAC;IACxC,CAAC;IAED,IAAI,KAAK,YAAY,KAAK;QAAE,OAAO,KAAK,CAAC;IACzC,OAAO,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;AAC/C,CAAC;AAED,MAAM,UAAU,eAAe,CAAI,GAAY;IAC7C,IAAI,CAAC;QACH,OAAO,GAAG,EAAE,CAAC;IACf,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,cAAc,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC;AACH,CAAC;AAED,MAAM,UAAU,WAAW,CAAI,MAAc,EAAE,GAAY;IACzD,IAAI,CAAC;QACH,OAAO,GAAG,EAAE,CAAC;IACf,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,WAAW,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;QAE1C,IAAI,WAAW,YAAY,iBAAiB,EAAE,CAAC;YAC7C,IAAI,WAAW,CAAC,KAAK;gBACnB,MAAM,EAAE,KAAK,CAAC,WAAW,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC;;gBAC9D,MAAM,EAAE,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YACxC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"error.js","sourceRoot":"","sources":["../src/error.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC;AAE/B,MAAM,OAAO,iBAAkB,SAAQ,KAAK;IAG/B;IAFX,YACE,OAAe,EACN,KAAe;QAExB,KAAK,CAAC,OAAO,CAAC,CAAC;QAFN,UAAK,GAAL,KAAK,CAAU;IAG1B,CAAC;CACF;AAED,MAAM,OAAO,oBAA2C,SAAQ,KAAK;IAGxD;IACA;IAHX,YACE,OAAe,EACN,QAAW,EACX,EAAe;QAExB,KAAK,CAAC,OAAO,CAAC,CAAC;QAHN,aAAQ,GAAR,QAAQ,CAAG;QACX,OAAE,GAAF,EAAE,CAAa;IAG1B,CAAC;CACF;AAED,MAAM,UAAU,cAAc,CAAC,KAAc;IAC3C,IAAI,KAAK,YAAY,QAAQ,EAAE,CAAC;QAC9B,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM;aACzB,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;YACV,IAAI,EAAE,CAAC,IAAI;gBAAE,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,CAAC;;gBACrD,OAAO,EAAE,CAAC,OAAO,CAAC;QACzB,CAAC,CAAC;aACD,IAAI,CAAC,IAAI,CAAC,CAAC;QACd,OAAO,IAAI,iBAAiB,CAAC,OAAO,CAAC,CAAC;IACxC,CAAC;IAED,IAAI,KAAK,YAAY,KAAK;QAAE,OAAO,KAAK,CAAC;IACzC,OAAO,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;AAC/C,CAAC;AAED,MAAM,UAAU,eAAe,CAAI,GAAY;IAC7C,IAAI,CAAC;QACH,OAAO,GAAG,EAAE,CAAC;IACf,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,cAAc,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC;AACH,CAAC;AAED,MAAM,UAAU,WAAW,CAAI,MAAc,EAAE,GAAY;IACzD,IAAI,CAAC;QACH,OAAO,GAAG,EAAE,CAAC;IACf,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,WAAW,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;QAE1C,IAAI,WAAW,YAAY,iBAAiB,EAAE,CAAC;YAC7C,IAAI,WAAW,CAAC,KAAK;gBACnB,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC;;gBAC7D,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YACvC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}
@@ -11,10 +11,10 @@ export interface RecipeLoaderAccessor {
11
11
  export default class RecipeLoader extends JsonLoader<RecipeHolder> implements RecipeLoaderAccessor, RecipeSerializer {
12
12
  private readonly serializers;
13
13
  private readonly recipeParsers;
14
- private readonly ignoredRecipeTypes;
14
+ private readonly ignoredRecipeTypePatterns;
15
15
  private readonly _unknownRecipeTypes;
16
16
  constructor(serializers: Pick<PackContext, "results" | "ingredients">);
17
- ignoreType(recipeType: string): void;
17
+ ignoreType(pattern: string): void;
18
18
  unknownRecipeTypes(): Readonly<{
19
19
  type: import("@adeficior/data-modifier/generated").RecipeSerializerId;
20
20
  conditions?: import("../index.js").ForgeCondition[];
@@ -1,5 +1,7 @@
1
+ import { omit } from "lodash-es";
1
2
  import { encodeId } from "../common/id.js";
2
3
  import { IllegalShapeError } from "../error.js";
4
+ import minimatch from "minimatch";
3
5
  import { FluidConversionRecipeParser, HammeringRecipeParser, InputOutputRecipeParser, NasaWorkbenchRecipeParser, SpaceStationRecipeParser, } from "../parser/adAstra.js";
4
6
  import { ApothecaryRecipeParser, BrewRecipeParser, ElvenTradeRecipeParser, GogWrapperRecipeParser, ManaInfusionRecipeParser, NbtWrapperRecipeParser, OrechidRecipeParser, PureDaisyRecipeParser, RunicAltarRecipeParser, TerraPlateRecipeParser, } from "../parser/botania.js";
5
7
  import { AssemblyRecipeParser, CreateProcessingRecipeParser, } from "../parser/create.js";
@@ -14,7 +16,7 @@ import { JsonLoader } from "./index.js";
14
16
  export default class RecipeLoader extends JsonLoader {
15
17
  serializers;
16
18
  recipeParsers = new Map();
17
- ignoredRecipeTypes = new Set();
19
+ ignoredRecipeTypePatterns = [];
18
20
  _unknownRecipeTypes = new Map();
19
21
  constructor(serializers) {
20
22
  super();
@@ -26,6 +28,8 @@ export default class RecipeLoader extends JsonLoader {
26
28
  this.registerParser("minecraft:blasting", new SmeltingParser());
27
29
  this.registerParser("minecraft:campfire_cooking", new SmeltingParser());
28
30
  this.registerParser("minecraft:smithing", new SmithingParser());
31
+ this.registerParser("minecraft:smithing_trim", new SmithingParser());
32
+ this.registerParser("minecraft:smithing_transform", new SmithingParser());
29
33
  this.registerParser("minecraft:stonecutting", new StonecuttingParser());
30
34
  this.registerParser("create:mixing", new CreateProcessingRecipeParser());
31
35
  this.registerParser("create:pressing", new CreateProcessingRecipeParser());
@@ -102,45 +106,11 @@ export default class RecipeLoader extends JsonLoader {
102
106
  this.registerParser("cofh_core:crafting_shaped_potion", new ShapedParser());
103
107
  this.registerParser("rootsclassic:component", new RootComponentRecipeParser());
104
108
  this.registerParser("rootsclassic:ritual", new RootRitualRecipeParser());
105
- this.ignoreType("jeed:effect_provider");
106
- this.ignoreType("jeed:potion_provider");
107
- this.ignoreType("pipez:copy_nbt");
108
- this.ignoreType("pipez:clear_nbt");
109
- this.ignoreType("refinedstorage:upgrade_with_enchanted_book");
110
- this.ignoreType("forge:ore_shaped");
111
- this.ignoreType("supplementaries:trapped_present");
112
- this.ignoreType("supplementaries:weathered_map");
113
- this.ignoreType("supplementaries:soap_clearing");
114
- this.ignoreType("supplementaries:rope_arrow_create");
115
- this.ignoreType("supplementaries:present_dye");
116
- this.ignoreType("supplementaries:rope_arrow_add");
117
- this.ignoreType("supplementaries:item_lore");
118
- this.ignoreType("supplementaries:flag_from_banner");
119
- this.ignoreType("supplementaries:bubble_blower_charge");
120
- this.ignoreType("supplementaries:bamboo_spikes_tipped");
121
- this.ignoreType("supplementaries:antique_book");
122
- this.ignoreType("supplementaries:cauldron_flag_dye");
123
- this.ignoreType("supplementaries:cauldron_flag_clear");
124
- this.ignoreType("supplementaries:cauldron_blackboard");
125
- this.ignoreType("quark:mixed_exclusion");
126
- this.ignoreType("quark:elytra_duplication");
127
- this.ignoreType("quark:slab_to_block");
128
- // TODO could to in the future
129
- this.ignoreType("ad_astra:lunarian_trade_simple");
130
- this.ignoreType("ad_astra:lunarian_trade_enchanted_item");
131
- this.ignoreType("ad_astra:lunarian_trade_suspicious_stew");
132
- this.ignoreType("ad_astra:lunarian_trade_enchanted_book");
133
- this.ignoreType("ad_astra:lunarian_trade_dyed_item");
134
- this.ignoreType("ad_astra:lunarian_trade_potioned_item");
135
- this.ignoreType("immersiveengineering:cloche");
136
- this.ignoreType("immersiveengineering:crusher");
137
- this.ignoreType("immersiveengineering:fermenter");
138
- this.ignoreType("immersiveengineering:metal_press");
139
- this.ignoreType("immersiveengineering:squeezer");
140
- this.ignoreType("immersiveengineering:mineral_mix");
109
+ this.ignoreType("jeed:*");
110
+ this.ignoreType("immersiveengineering:*");
141
111
  }
142
- ignoreType(recipeType) {
143
- this.ignoredRecipeTypes.add(recipeType);
112
+ ignoreType(pattern) {
113
+ this.ignoredRecipeTypePatterns.push(pattern);
144
114
  }
145
115
  unknownRecipeTypes() {
146
116
  return [...this._unknownRecipeTypes.values()];
@@ -168,9 +138,12 @@ export default class RecipeLoader extends JsonLoader {
168
138
  return new RecipeHolder(definition, parsed);
169
139
  }
170
140
  parse(definition) {
171
- if (this.ignoredRecipeTypes.has(definition.type))
141
+ if (this.ignoredRecipeTypePatterns.some((it) => minimatch(definition.type, it)))
172
142
  return null;
173
143
  // TODO only print unknown recipe types once in the end
144
+ const importantData = omit(definition, "type", "category", "conditions", "fabric:load_conditions", "neoforge:conditions");
145
+ if (Object.keys(importantData).length === 0)
146
+ return null;
174
147
  return this.deserialize(definition);
175
148
  }
176
149
  registerParser(recipeType, parser) {
@@ -1 +1 @@
1
- {"version":3,"file":"recipe.js","sourceRoot":"","sources":["../../src/loader/recipe.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"recipe.js","sourceRoot":"","sources":["../../src/loader/recipe.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAEhD,OAAO,SAAS,MAAM,WAAW,CAAC;AAClC,OAAO,EACL,2BAA2B,EAC3B,qBAAqB,EACrB,uBAAuB,EACvB,yBAAyB,EACzB,wBAAwB,GACzB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,sBAAsB,EACtB,gBAAgB,EAChB,sBAAsB,EACtB,sBAAsB,EACtB,wBAAwB,EACxB,sBAAsB,EACtB,mBAAmB,EACnB,qBAAqB,EACrB,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,oBAAoB,EACpB,4BAA4B,GAC7B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,yBAAyB,EACzB,YAAY,EACZ,eAAe,EACf,cAAc,EACd,cAAc,EACd,kBAAkB,GACnB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,mBAAmB,MAAM,4CAA4C,CAAC;AAC7E,OAAO,mBAAmB,MAAM,4CAA4C,CAAC;AAC7E,OAAO,4BAA4B,MAAM,uCAAuC,CAAC;AAEjF,OAAO,EACL,YAAY,GAGb,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,yBAAyB,EACzB,sBAAsB,GACvB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,2BAA2B,EAC3B,uBAAuB,EACvB,mBAAmB,EACnB,0BAA0B,GAC3B,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAWxC,MAAM,CAAC,OAAO,OAAO,YACnB,SAAQ,UAAwB;IAYb;IATF,aAAa,GAAG,IAAI,GAAG,EAGrC,CAAC;IAEa,yBAAyB,GAAa,EAAE,CAAC;IACzC,mBAAmB,GAAG,IAAI,GAAG,EAA4B,CAAC;IAE3E,YACmB,WAAyD;QAE1E,KAAK,EAAE,CAAC;QAFS,gBAAW,GAAX,WAAW,CAA8C;QAI1E,IAAI,CAAC,cAAc,CAAC,2BAA2B,EAAE,IAAI,YAAY,EAAE,CAAC,CAAC;QACrE,IAAI,CAAC,cAAc,CAAC,8BAA8B,EAAE,IAAI,eAAe,EAAE,CAAC,CAAC;QAC3E,IAAI,CAAC,cAAc,CAAC,oBAAoB,EAAE,IAAI,cAAc,EAAE,CAAC,CAAC;QAChE,IAAI,CAAC,cAAc,CAAC,mBAAmB,EAAE,IAAI,cAAc,EAAE,CAAC,CAAC;QAC/D,IAAI,CAAC,cAAc,CAAC,oBAAoB,EAAE,IAAI,cAAc,EAAE,CAAC,CAAC;QAChE,IAAI,CAAC,cAAc,CAAC,4BAA4B,EAAE,IAAI,cAAc,EAAE,CAAC,CAAC;QACxE,IAAI,CAAC,cAAc,CAAC,oBAAoB,EAAE,IAAI,cAAc,EAAE,CAAC,CAAC;QAChE,IAAI,CAAC,cAAc,CAAC,yBAAyB,EAAE,IAAI,cAAc,EAAE,CAAC,CAAC;QACrE,IAAI,CAAC,cAAc,CAAC,8BAA8B,EAAE,IAAI,cAAc,EAAE,CAAC,CAAC;QAC1E,IAAI,CAAC,cAAc,CAAC,wBAAwB,EAAE,IAAI,kBAAkB,EAAE,CAAC,CAAC;QAExE,IAAI,CAAC,cAAc,CAAC,eAAe,EAAE,IAAI,4BAA4B,EAAE,CAAC,CAAC;QACzE,IAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,IAAI,4BAA4B,EAAE,CAAC,CAAC;QAC3E,IAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,IAAI,4BAA4B,EAAE,CAAC,CAAC;QAC3E,IAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,IAAI,4BAA4B,EAAE,CAAC,CAAC;QAC3E,IAAI,CAAC,cAAc,CAAC,gBAAgB,EAAE,IAAI,4BAA4B,EAAE,CAAC,CAAC;QAC1E,IAAI,CAAC,cAAc,CACjB,mBAAmB,EACnB,IAAI,4BAA4B,EAAE,CACnC,CAAC;QACF,IAAI,CAAC,cAAc,CAAC,gBAAgB,EAAE,IAAI,4BAA4B,EAAE,CAAC,CAAC;QAC1E,IAAI,CAAC,cAAc,CAAC,gBAAgB,EAAE,IAAI,4BAA4B,EAAE,CAAC,CAAC;QAC1E,IAAI,CAAC,cAAc,CACjB,yBAAyB,EACzB,IAAI,4BAA4B,EAAE,CACnC,CAAC;QACF,IAAI,CAAC,cAAc,CACjB,4BAA4B,EAC5B,IAAI,4BAA4B,EAAE,CACnC,CAAC;QACF,IAAI,CAAC,cAAc,CAAC,kBAAkB,EAAE,IAAI,4BAA4B,EAAE,CAAC,CAAC;QAC5E,IAAI,CAAC,cAAc,CAAC,kBAAkB,EAAE,IAAI,4BAA4B,EAAE,CAAC,CAAC;QAC5E,IAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,IAAI,4BAA4B,EAAE,CAAC,CAAC;QAC3E,IAAI,CAAC,cAAc,CAAC,4BAA4B,EAAE,IAAI,YAAY,EAAE,CAAC,CAAC;QACtE,IAAI,CAAC,cAAc,CACjB,2BAA2B,EAC3B,IAAI,oBAAoB,EAAE,CAC3B,CAAC;QAEF,IAAI,CAAC,cAAc,CAAC,wBAAwB,EAAE,IAAI,mBAAmB,EAAE,CAAC,CAAC;QACzE,IAAI,CAAC,cAAc,CAAC,wBAAwB,EAAE,IAAI,mBAAmB,EAAE,CAAC,CAAC;QACzE,IAAI,CAAC,cAAc,CAAC,wBAAwB,EAAE,IAAI,mBAAmB,EAAE,CAAC,CAAC;QAEzE,IAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,IAAI,mBAAmB,EAAE,CAAC,CAAC;QAClE,IAAI,CAAC,cAAc,CAAC,oBAAoB,EAAE,IAAI,mBAAmB,EAAE,CAAC,CAAC;QACrE,IAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,IAAI,mBAAmB,EAAE,CAAC,CAAC;QAClE,IAAI,CAAC,cAAc,CAAC,kBAAkB,EAAE,IAAI,mBAAmB,EAAE,CAAC,CAAC;QACnE,IAAI,CAAC,cAAc,CAAC,sBAAsB,EAAE,IAAI,mBAAmB,EAAE,CAAC,CAAC;QACvE,IAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,IAAI,mBAAmB,EAAE,CAAC,CAAC;QAClE,IAAI,CAAC,cAAc,CAAC,mBAAmB,EAAE,IAAI,mBAAmB,EAAE,CAAC,CAAC;QACpE,IAAI,CAAC,cAAc,CACjB,4BAA4B,EAC5B,IAAI,2BAA2B,EAAE,CAClC,CAAC;QACF,IAAI,CAAC,cAAc,CAAC,eAAe,EAAE,IAAI,mBAAmB,EAAE,CAAC,CAAC;QAChE,IAAI,CAAC,cAAc,CAAC,oBAAoB,EAAE,IAAI,mBAAmB,EAAE,CAAC,CAAC;QACrE,IAAI,CAAC,cAAc,CACjB,4BAA4B,EAC5B,IAAI,mBAAmB,EAAE,CAC1B,CAAC;QACF,IAAI,CAAC,cAAc,CACjB,6BAA6B,EAC7B,IAAI,2BAA2B,EAAE,CAClC,CAAC;QACF,IAAI,CAAC,cAAc,CAAC,mBAAmB,EAAE,IAAI,mBAAmB,EAAE,CAAC,CAAC;QACpE,IAAI,CAAC,cAAc,CAAC,kBAAkB,EAAE,IAAI,mBAAmB,EAAE,CAAC,CAAC;QACnE,IAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,IAAI,mBAAmB,EAAE,CAAC,CAAC;QAClE,IAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,IAAI,mBAAmB,EAAE,CAAC,CAAC;QAClE,IAAI,CAAC,cAAc,CAAC,yBAAyB,EAAE,IAAI,mBAAmB,EAAE,CAAC,CAAC;QAC1E,IAAI,CAAC,cAAc,CACjB,0BAA0B,EAC1B,IAAI,2BAA2B,EAAE,CAClC,CAAC;QACF,IAAI,CAAC,cAAc,CACjB,wBAAwB,EACxB,IAAI,0BAA0B,EAAE,CACjC,CAAC;QACF,IAAI,CAAC,cAAc,CACjB,0BAA0B,EAC1B,IAAI,uBAAuB,EAAE,CAC9B,CAAC;QACF,IAAI,CAAC,cAAc,CAAC,uBAAuB,EAAE,IAAI,uBAAuB,EAAE,CAAC,CAAC;QAC5E,IAAI,CAAC,cAAc,CAAC,uBAAuB,EAAE,IAAI,uBAAuB,EAAE,CAAC,CAAC;QAC5E,IAAI,CAAC,cAAc,CACjB,yBAAyB,EACzB,IAAI,uBAAuB,EAAE,CAC9B,CAAC;QAEF,IAAI,CAAC,cAAc,CACjB,4BAA4B,EAC5B,IAAI,sBAAsB,EAAE,CAC7B,CAAC;QACF,IAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,IAAI,mBAAmB,EAAE,CAAC,CAAC;QAClE,IAAI,CAAC,cAAc,CAAC,uBAAuB,EAAE,IAAI,mBAAmB,EAAE,CAAC,CAAC;QACxE,IAAI,CAAC,cAAc,CAAC,uBAAuB,EAAE,IAAI,mBAAmB,EAAE,CAAC,CAAC;QACxE,IAAI,CAAC,cAAc,CAAC,oBAAoB,EAAE,IAAI,qBAAqB,EAAE,CAAC,CAAC;QACvE,IAAI,CAAC,cAAc,CACjB,kCAAkC,EAClC,IAAI,qBAAqB,EAAE,CAC5B,CAAC;QACF,IAAI,CAAC,cAAc,CAAC,sBAAsB,EAAE,IAAI,YAAY,EAAE,CAAC,CAAC;QAChE,IAAI,CAAC,cAAc,CACjB,sCAAsC,EACtC,IAAI,YAAY,EAAE,CACnB,CAAC;QACF,IAAI,CAAC,cAAc,CAAC,qBAAqB,EAAE,IAAI,sBAAsB,EAAE,CAAC,CAAC;QACzE,IAAI,CAAC,cAAc,CACjB,0BAA0B,EAC1B,IAAI,sBAAsB,EAAE,CAC7B,CAAC;QACF,IAAI,CAAC,cAAc,CAAC,qBAAqB,EAAE,IAAI,sBAAsB,EAAE,CAAC,CAAC;QACzE,IAAI,CAAC,cAAc,CAAC,qBAAqB,EAAE,IAAI,sBAAsB,EAAE,CAAC,CAAC;QACzE,IAAI,CAAC,cAAc,CAAC,cAAc,EAAE,IAAI,gBAAgB,EAAE,CAAC,CAAC;QAC5D,IAAI,CAAC,cAAc,CAAC,mBAAmB,EAAE,IAAI,YAAY,EAAE,CAAC,CAAC;QAC7D,IAAI,CAAC,cAAc,CACjB,uBAAuB,EACvB,IAAI,wBAAwB,EAAE,CAC/B,CAAC;QACF,IAAI,CAAC,cAAc,CACjB,gCAAgC,EAChC,IAAI,eAAe,EAAE,CACtB,CAAC;QACF,IAAI,CAAC,cAAc,CAAC,uBAAuB,EAAE,IAAI,YAAY,EAAE,CAAC,CAAC;QACjE,IAAI,CAAC,cAAc,CACjB,yBAAyB,EACzB,IAAI,sBAAsB,EAAE,CAC7B,CAAC;QACF,IAAI,CAAC,cAAc,CACjB,0BAA0B,EAC1B,IAAI,sBAAsB,EAAE,CAC7B,CAAC;QAEF,IAAI,CAAC,cAAc,CAAC,0BAA0B,EAAE,IAAI,YAAY,EAAE,CAAC,CAAC;QAEpE,IAAI,CAAC,cAAc,CACjB,mBAAmB,EACnB,IAAI,4BAA4B,EAAE,CACnC,CAAC;QAEF,IAAI,CAAC,cAAc,CACjB,gCAAgC,EAChC,IAAI,yBAAyB,EAAE,CAChC,CAAC;QAEF,IAAI,CAAC,cAAc,CAAC,oBAAoB,EAAE,IAAI,qBAAqB,EAAE,CAAC,CAAC;QACvE,IAAI,CAAC,cAAc,CACjB,+BAA+B,EAC/B,IAAI,2BAA2B,EAAE,CAClC,CAAC;QACF,IAAI,CAAC,cAAc,CACjB,0BAA0B,EAC1B,IAAI,2BAA2B,EAAE,CAClC,CAAC;QACF,IAAI,CAAC,cAAc,CACjB,4BAA4B,EAC5B,IAAI,2BAA2B,EAAE,CAClC,CAAC;QACF,IAAI,CAAC,cAAc,CAAC,sBAAsB,EAAE,IAAI,uBAAuB,EAAE,CAAC,CAAC;QAC3E,IAAI,CAAC,cAAc,CACjB,qCAAqC,EACrC,IAAI,YAAY,EAAE,CACnB,CAAC;QACF,IAAI,CAAC,cAAc,CACjB,yBAAyB,EACzB,IAAI,yBAAyB,EAAE,CAChC,CAAC;QACF,IAAI,CAAC,cAAc,CACjB,wBAAwB,EACxB,IAAI,wBAAwB,EAAE,CAC/B,CAAC;QAEF,IAAI,CAAC,cAAc,CACjB,iCAAiC,EACjC,IAAI,eAAe,EAAE,CACtB,CAAC;QAEF,IAAI,CAAC,cAAc,CAAC,kCAAkC,EAAE,IAAI,YAAY,EAAE,CAAC,CAAC;QAE5E,IAAI,CAAC,cAAc,CACjB,wBAAwB,EACxB,IAAI,yBAAyB,EAAE,CAChC,CAAC;QACF,IAAI,CAAC,cAAc,CAAC,qBAAqB,EAAE,IAAI,sBAAsB,EAAE,CAAC,CAAC;QAEzE,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QAC1B,IAAI,CAAC,UAAU,CAAC,wBAAwB,CAAC,CAAC;IAC5C,CAAC;IAED,UAAU,CAAC,OAAe;QACxB,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC/C,CAAC;IAED,kBAAkB;QAChB,OAAO,CAAC,GAAG,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,CAAC,CAAC;IAChD,CAAC;IAEO,kBAAkB;QACxB,OAAO,EAAE,GAAG,IAAI,CAAC,WAAW,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAChD,CAAC;IAED,SAAS,CAAC,MAAoB;QAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC1C,OAAO,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC;IAED,WAAW,CAAC,UAA4B;QACtC,IAAI,CAAC,UAAU,CAAC,IAAI;YAClB,MAAM,IAAI,iBAAiB,CAAC,oBAAoB,EAAE,UAAU,CAAC,CAAC;QAEhE,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;QAEjE,IAAI,CAAC,CAAC,MAAM,IAAI,UAAU,CAAC;YACzB,MAAM,IAAI,iBAAiB,CAAC,qBAAqB,CAAC,CAAC;QAErD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBACnD,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;YAC5D,CAAC;YAED,MAAM,IAAI,iBAAiB,CACzB,yBAAyB,UAAU,CAAC,IAAI,GAAG,EAC3C,UAAU,CACX,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,UAAU,EAAE,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC;QAEzE,OAAO,IAAI,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;IAC9C,CAAC;IAEQ,KAAK,CAAC,UAA4B;QACzC,IACE,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CACzC,SAAS,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC,CAC/B;YAED,OAAO,IAAI,CAAC;QAEd,uDAAuD;QAEvD,MAAM,aAAa,GAAG,IAAI,CACxB,UAAU,EACV,MAAM,EACN,UAAU,EACV,YAAY,EACZ,wBAAwB,EACxB,qBAAqB,CACtB,CAAC;QAEF,IAAI,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QAEzD,OAAO,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IACtC,CAAC;IAED,cAAc,CACZ,UAAkB,EAClB,MAA8C;QAE9C,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;IAC7C,CAAC;IAED,KAAK;QACH,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,CAAC;IACnC,CAAC;CACF"}
@@ -37,7 +37,7 @@ export class SpaceStationRecipe extends Recipe {
37
37
  }
38
38
  export class SpaceStationRecipeParser extends RecipeParser {
39
39
  deserialize(definition, context) {
40
- const ingredients = context.ingredients.createList(definition.ingredients
40
+ const ingredients = context.ingredients.deserializeList(definition.ingredients
41
41
  .map((it) => WrappedIngredientSchema.parse(it))
42
42
  .map((it) => ({ ...it.ingredient, count: it.count })));
43
43
  return new SpaceStationRecipe(ingredients);
@@ -1 +1 @@
1
- {"version":3,"file":"spaceStation.js","sourceRoot":"","sources":["../../../../src/parser/recipe/adAstra/spaceStation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,CAAC,MAAM,KAAK,CAAC;AACpB,OAAO,EACL,cAAc,EACd,iBAAiB,GAElB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAGtD,OAAO,YAAY,EAAE,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAEnD,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IACvC,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;IAC7C,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC7B,CAAC,CAAC;AASH,MAAM,OAAO,kBAAmB,SAAQ,MAAM;IACf;IAA7B,YAA6B,WAAyB;QACpD,KAAK,EAAE,CAAC;QADmB,gBAAW,GAAX,WAAW,CAAc;IAEtD,CAAC;IAED,cAAc;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,UAAU;QACR,OAAO,EAAE,CAAC;IACZ,CAAC;IAEQ,MAAM,CAAC,QAAwB;QACtC,OAAO,IAAI,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;IAC3E,CAAC;IAED,SAAS,CACP,OAA2B;QAE3B,OAAO;YACL,WAAW,EAAE,OAAO,CAAC,WAAW;iBAC7B,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC;iBAC/B,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;gBACV,IAAI,EAAE,YAAY,cAAc,IAAI,EAAE,YAAY,iBAAiB,EAAE,CAAC;oBACpE,OAAO,EAAE,UAAU,EAAE,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC;gBAC5D,CAAC;gBAED,MAAM,IAAI,iBAAiB,CACzB,qDAAqD,EACrD,EAAE,CACH,CAAC;YACJ,CAAC,CAAC;SACL,CAAC;IACJ,CAAC;CACF;AAED,MAAM,OAAO,wBAAyB,SAAQ,YAG7C;IACC,WAAW,CACT,UAAwC,EACxC,OAA2B;QAE3B,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,UAAU,CAChD,UAAU,CAAC,WAAW;aACnB,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,uBAAuB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;aAC9C,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,UAAU,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC,CACxD,CAAC;QAEF,OAAO,IAAI,kBAAkB,CAAC,WAAW,CAAC,CAAC;IAC7C,CAAC;CACF"}
1
+ {"version":3,"file":"spaceStation.js","sourceRoot":"","sources":["../../../../src/parser/recipe/adAstra/spaceStation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,CAAC,MAAM,KAAK,CAAC;AACpB,OAAO,EACL,cAAc,EACd,iBAAiB,GAElB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAGtD,OAAO,YAAY,EAAE,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAEnD,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IACvC,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;IAC7C,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC7B,CAAC,CAAC;AASH,MAAM,OAAO,kBAAmB,SAAQ,MAAM;IACf;IAA7B,YAA6B,WAAyB;QACpD,KAAK,EAAE,CAAC;QADmB,gBAAW,GAAX,WAAW,CAAc;IAEtD,CAAC;IAED,cAAc;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,UAAU;QACR,OAAO,EAAE,CAAC;IACZ,CAAC;IAEQ,MAAM,CAAC,QAAwB;QACtC,OAAO,IAAI,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;IAC3E,CAAC;IAED,SAAS,CACP,OAA2B;QAE3B,OAAO;YACL,WAAW,EAAE,OAAO,CAAC,WAAW;iBAC7B,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC;iBAC/B,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;gBACV,IAAI,EAAE,YAAY,cAAc,IAAI,EAAE,YAAY,iBAAiB,EAAE,CAAC;oBACpE,OAAO,EAAE,UAAU,EAAE,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC;gBAC5D,CAAC;gBAED,MAAM,IAAI,iBAAiB,CACzB,qDAAqD,EACrD,EAAE,CACH,CAAC;YACJ,CAAC,CAAC;SACL,CAAC;IACJ,CAAC;CACF;AAED,MAAM,OAAO,wBAAyB,SAAQ,YAG7C;IACC,WAAW,CACT,UAAwC,EACxC,OAA2B;QAE3B,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,eAAe,CACrD,UAAU,CAAC,WAAW;aACnB,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,uBAAuB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;aAC9C,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,UAAU,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC,CACxD,CAAC;QAEF,OAAO,IAAI,kBAAkB,CAAC,WAAW,CAAC,CAAC;IAC7C,CAAC;CACF"}
@@ -28,7 +28,7 @@ export class ApothecaryRecipe extends Recipe {
28
28
  }
29
29
  export class ApothecaryRecipeParser extends RecipeParser {
30
30
  deserialize(definition, context) {
31
- const ingredients = context.ingredients.createList(definition.ingredients);
31
+ const ingredients = context.ingredients.deserializeList(definition.ingredients);
32
32
  const result = context.results.deserialize(definition.output);
33
33
  const reagent = context.ingredients.deserialize(definition.ingredients);
34
34
  return new ApothecaryRecipe(ingredients, result, reagent);
@@ -1 +1 @@
1
- {"version":3,"file":"apothecary.js","sourceRoot":"","sources":["../../../../src/parser/recipe/botania/apothecary.ts"],"names":[],"mappings":"AAGA,OAAO,YAAY,EAAE,EACnB,MAAM,GAGP,MAAM,aAAa,CAAC;AASrB,MAAM,OAAO,gBAAiB,SAAQ,MAAM;IAErB;IACA;IACA;IAHrB,YACqB,WAAyB,EACzB,MAAc,EACd,OAAmB;QAEtC,KAAK,EAAE,CAAC;QAJW,gBAAW,GAAX,WAAW,CAAc;QACzB,WAAM,GAAN,MAAM,CAAQ;QACd,YAAO,GAAP,OAAO,CAAY;IAGxC,CAAC;IAEQ,cAAc;QACrB,OAAO,CAAC,GAAG,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAC7C,CAAC;IAEQ,UAAU;QACjB,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACvB,CAAC;IAEQ,MAAM,CAAC,QAAwB;QACtC,OAAO,IAAI,gBAAgB,CACzB,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,EACzC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAC5B,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAClC,CAAC;IACJ,CAAC;IAEQ,SAAS,CAChB,OAA2B;QAE3B,OAAO;YACL,WAAW,EAAE,OAAO,CAAC,WAAW,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC;YAChE,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC;YAC9C,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC;SACrD,CAAC;IACJ,CAAC;CACF;AAED,MAAM,OAAO,sBAAuB,SAAQ,YAG3C;IACC,WAAW,CACT,UAAsC,EACtC,OAA2B;QAE3B,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAC3E,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAC9D,MAAM,OAAO,GAAG,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QACxE,OAAO,IAAI,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAC5D,CAAC;CACF"}
1
+ {"version":3,"file":"apothecary.js","sourceRoot":"","sources":["../../../../src/parser/recipe/botania/apothecary.ts"],"names":[],"mappings":"AAGA,OAAO,YAAY,EAAE,EACnB,MAAM,GAGP,MAAM,aAAa,CAAC;AASrB,MAAM,OAAO,gBAAiB,SAAQ,MAAM;IAErB;IACA;IACA;IAHrB,YACqB,WAAyB,EACzB,MAAc,EACd,OAAmB;QAEtC,KAAK,EAAE,CAAC;QAJW,gBAAW,GAAX,WAAW,CAAc;QACzB,WAAM,GAAN,MAAM,CAAQ;QACd,YAAO,GAAP,OAAO,CAAY;IAGxC,CAAC;IAEQ,cAAc;QACrB,OAAO,CAAC,GAAG,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAC7C,CAAC;IAEQ,UAAU;QACjB,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACvB,CAAC;IAEQ,MAAM,CAAC,QAAwB;QACtC,OAAO,IAAI,gBAAgB,CACzB,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,EACzC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAC5B,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAClC,CAAC;IACJ,CAAC;IAEQ,SAAS,CAChB,OAA2B;QAE3B,OAAO;YACL,WAAW,EAAE,OAAO,CAAC,WAAW,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC;YAChE,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC;YAC9C,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC;SACrD,CAAC;IACJ,CAAC;CACF;AAED,MAAM,OAAO,sBAAuB,SAAQ,YAG3C;IACC,WAAW,CACT,UAAsC,EACtC,OAA2B;QAE3B,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,eAAe,CACrD,UAAU,CAAC,WAAW,CACvB,CAAC;QACF,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAC9D,MAAM,OAAO,GAAG,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QACxE,OAAO,IAAI,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAC5D,CAAC;CACF"}
@@ -7,7 +7,8 @@ import RecipeParser, {} from "../index.js";
7
7
  import { OneToOneRecipe } from "../oneToOne.js";
8
8
  const BlockOutputSchema = z
9
9
  .object({
10
- name: IdSchema,
10
+ type: z.literal("block"),
11
+ block: IdSchema,
11
12
  })
12
13
  .or(IdSchema);
13
14
  const BlockInputSchema = z
@@ -56,7 +57,7 @@ export function deserializeBlockInput(ingredients, input) {
56
57
  }
57
58
  export function deserializeBlockOutput(results, output) {
58
59
  const parsed = BlockOutputSchema.parse(output);
59
- const id = typeof parsed === "string" ? parsed : parsed.name;
60
+ const id = typeof parsed === "string" ? parsed : parsed.block;
60
61
  return results.deserialize(new BlockResult(id));
61
62
  }
62
63
  export class BotaniaBlockRecipe extends OneToOneRecipe {
@@ -1 +1 @@
1
- {"version":3,"file":"blocks.js","sourceRoot":"","sources":["../../../../src/parser/recipe/botania/blocks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"blocks.js","sourceRoot":"","sources":["../../../../src/parser/recipe/botania/blocks.ts"],"names":[],"mappings":"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"}
@@ -22,7 +22,7 @@ export class BrewRecipe extends Recipe {
22
22
  }
23
23
  export class BrewRecipeParser extends RecipeParser {
24
24
  deserialize(definition, context) {
25
- const ingredients = context.ingredients.createList(definition.ingredients);
25
+ const ingredients = context.ingredients.deserializeList(definition.ingredients);
26
26
  return new BrewRecipe(ingredients);
27
27
  }
28
28
  }
@@ -1 +1 @@
1
- {"version":3,"file":"brew.js","sourceRoot":"","sources":["../../../../src/parser/recipe/botania/brew.ts"],"names":[],"mappings":"AAGA,OAAO,YAAY,EAAE,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAQnD,MAAM,OAAO,UAAW,SAAQ,MAAM;IACP;IAA7B,YAA6B,WAAyB;QACpD,KAAK,EAAE,CAAC;QADmB,gBAAW,GAAX,WAAW,CAAc;IAEtD,CAAC;IAED,cAAc;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,UAAU;QACR,OAAO,EAAE,CAAC;IACZ,CAAC;IAEQ,MAAM,CAAC,QAAwB;QACtC,OAAO,IAAI,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;IACnE,CAAC;IAEQ,SAAS,CAChB,OAA2B;QAE3B,OAAO;YACL,WAAW,EAAE,OAAO,CAAC,WAAW,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC;SACjE,CAAC;IACJ,CAAC;CACF;AAED,MAAM,OAAO,gBAAiB,SAAQ,YAGrC;IACC,WAAW,CACT,UAAgC,EAChC,OAA2B;QAE3B,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAC3E,OAAO,IAAI,UAAU,CAAC,WAAW,CAAC,CAAC;IACrC,CAAC;CACF"}
1
+ {"version":3,"file":"brew.js","sourceRoot":"","sources":["../../../../src/parser/recipe/botania/brew.ts"],"names":[],"mappings":"AAGA,OAAO,YAAY,EAAE,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAQnD,MAAM,OAAO,UAAW,SAAQ,MAAM;IACP;IAA7B,YAA6B,WAAyB;QACpD,KAAK,EAAE,CAAC;QADmB,gBAAW,GAAX,WAAW,CAAc;IAEtD,CAAC;IAED,cAAc;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,UAAU;QACR,OAAO,EAAE,CAAC;IACZ,CAAC;IAEQ,MAAM,CAAC,QAAwB;QACtC,OAAO,IAAI,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;IACnE,CAAC;IAEQ,SAAS,CAChB,OAA2B;QAE3B,OAAO;YACL,WAAW,EAAE,OAAO,CAAC,WAAW,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC;SACjE,CAAC;IACJ,CAAC;CACF;AAED,MAAM,OAAO,gBAAiB,SAAQ,YAGrC;IACC,WAAW,CACT,UAAgC,EAChC,OAA2B;QAE3B,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,eAAe,CACrD,UAAU,CAAC,WAAW,CACvB,CAAC;QACF,OAAO,IAAI,UAAU,CAAC,WAAW,CAAC,CAAC;IACrC,CAAC;CACF"}
@@ -8,8 +8,8 @@ export class ElvenTradeRecipe extends ManyToManyRecipe {
8
8
  }
9
9
  export class ElvenTradeRecipeParser extends RecipeParser {
10
10
  deserialize(definition, context) {
11
- const ingredients = context.ingredients.createList(definition.ingredients);
12
- const results = context.results.createList(definition.output);
11
+ const ingredients = context.ingredients.deserializeList(definition.ingredients);
12
+ const results = context.results.deserializeList(definition.output);
13
13
  return new ElvenTradeRecipe(ingredients, results);
14
14
  }
15
15
  }
@@ -1 +1 @@
1
- {"version":3,"file":"elvenTrade.js","sourceRoot":"","sources":["../../../../src/parser/recipe/botania/elvenTrade.ts"],"names":[],"mappings":"AACA,OAAO,YAAY,EAAE,EAA2B,MAAM,aAAa,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AASpD,MAAM,OAAO,gBAAiB,SAAQ,gBAAgB;IAC3C,SAAS,CAChB,OAA2B;QAE3B,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACtD,OAAO,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;IACtC,CAAC;CACF;AAED,MAAM,OAAO,sBAAuB,SAAQ,YAG3C;IACC,WAAW,CACT,UAAsC,EACtC,OAA2B;QAE3B,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAC3E,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAC9D,OAAO,IAAI,gBAAgB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IACpD,CAAC;CACF"}
1
+ {"version":3,"file":"elvenTrade.js","sourceRoot":"","sources":["../../../../src/parser/recipe/botania/elvenTrade.ts"],"names":[],"mappings":"AACA,OAAO,YAAY,EAAE,EAA2B,MAAM,aAAa,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AASpD,MAAM,OAAO,gBAAiB,SAAQ,gBAAgB;IAC3C,SAAS,CAChB,OAA2B;QAE3B,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACtD,OAAO,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;IACtC,CAAC;CACF;AAED,MAAM,OAAO,sBAAuB,SAAQ,YAG3C;IACC,WAAW,CACT,UAAsC,EACtC,OAA2B;QAE3B,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,eAAe,CACrD,UAAU,CAAC,WAAW,CACvB,CAAC;QACF,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QACnE,OAAO,IAAI,gBAAgB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IACpD,CAAC;CACF"}
@@ -8,7 +8,7 @@ export class RunicAltarRecipe extends ManyToOneRecipe {
8
8
  }
9
9
  export class RunicAltarRecipeParser extends RecipeParser {
10
10
  deserialize(definition, context) {
11
- const ingredients = context.ingredients.createList(definition.ingredients);
11
+ const ingredients = context.ingredients.deserializeList(definition.ingredients);
12
12
  const result = context.results.deserialize(definition.output);
13
13
  return new RunicAltarRecipe(ingredients, result);
14
14
  }
@@ -1 +1 @@
1
- {"version":3,"file":"runicAltar.js","sourceRoot":"","sources":["../../../../src/parser/recipe/botania/runicAltar.ts"],"names":[],"mappings":"AACA,OAAO,YAAY,EAAE,EAA2B,MAAM,aAAa,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AASlD,MAAM,OAAO,gBAAiB,SAAQ,eAAe;IAC1C,SAAS,CAChB,OAA2B;QAE3B,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACrD,OAAO,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;IACrC,CAAC;CACF;AAED,MAAM,OAAO,sBAAuB,SAAQ,YAG3C;IACC,WAAW,CACT,UAAsC,EACtC,OAA2B;QAE3B,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAC3E,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAC9D,OAAO,IAAI,gBAAgB,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IACnD,CAAC;CACF"}
1
+ {"version":3,"file":"runicAltar.js","sourceRoot":"","sources":["../../../../src/parser/recipe/botania/runicAltar.ts"],"names":[],"mappings":"AACA,OAAO,YAAY,EAAE,EAA2B,MAAM,aAAa,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AASlD,MAAM,OAAO,gBAAiB,SAAQ,eAAe;IAC1C,SAAS,CAChB,OAA2B;QAE3B,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACrD,OAAO,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;IACrC,CAAC;CACF;AAED,MAAM,OAAO,sBAAuB,SAAQ,YAG3C;IACC,WAAW,CACT,UAAsC,EACtC,OAA2B;QAE3B,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,eAAe,CACrD,UAAU,CAAC,WAAW,CACvB,CAAC;QACF,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAC9D,OAAO,IAAI,gBAAgB,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IACnD,CAAC;CACF"}
@@ -37,7 +37,7 @@ export class AssemblyRecipeParser extends RecipeParser {
37
37
  deserialize(definition, context) {
38
38
  const ingredient = context.ingredients.deserialize(definition.ingredient);
39
39
  const transitionalItem = context.ingredients.deserialize(definition.transitionalItem);
40
- const results = context.results.createList(definition.results);
40
+ const results = context.results.deserializeList(definition.results);
41
41
  const sequence = definition.sequence.map((it) => context.recipes.deserialize(it));
42
42
  return new AssemblyRecipe(ingredient, transitionalItem, results, sequence);
43
43
  }
@@ -1 +1 @@
1
- {"version":3,"file":"assembly.js","sourceRoot":"","sources":["../../../../src/parser/recipe/create/assembly.ts"],"names":[],"mappings":"AAQA,OAAO,YAAY,EAAE,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAWnD,MAAM,OAAO,cAAe,SAAQ,MAAM;IAErB;IACA;IACA;IACA;IAJnB,YACmB,UAAsB,EACtB,gBAA4B,EAC5B,OAAiB,EACjB,QAAwB;QAEzC,KAAK,EAAE,CAAC;QALS,eAAU,GAAV,UAAU,CAAY;QACtB,qBAAgB,GAAhB,gBAAgB,CAAY;QAC5B,YAAO,GAAP,OAAO,CAAU;QACjB,aAAQ,GAAR,QAAQ,CAAgB;IAG3C,CAAC;IAED,cAAc;QACZ,OAAO;YACL,IAAI,CAAC,UAAU;YACf,IAAI,CAAC,gBAAgB;YACrB,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,cAAc,EAAE,CAAC;SACtD,CAAC;IACJ,CAAC;IAED,UAAU;QACR,OAAO,CAAC,GAAG,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;IAC9E,CAAC;IAEQ,MAAM,CAAC,QAAwB;QACtC,OAAO,IAAI,cAAc,CACvB,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,EACpC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAC1C,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,EACjC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAC/C,CAAC;IACJ,CAAC;IAEQ,SAAS,CAChB,OAA2B;QAE3B,OAAO;YACL,UAAU,EAAE,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC;YAC1D,gBAAgB,EAAE,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,gBAAgB,CAAC;YACtE,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC;YACpD,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;SACnE,CAAC;IACJ,CAAC;CACF;AAED,MAAM,OAAO,oBAAqB,SAAQ,YAGzC;IACC,WAAW,CACT,UAAoC,EACpC,OAA2B;QAE3B,MAAM,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;QAC1E,MAAM,gBAAgB,GAAG,OAAO,CAAC,WAAW,CAAC,WAAW,CACtD,UAAU,CAAC,gBAAgB,CAC5B,CAAC;QACF,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAC/D,MAAM,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAC9C,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC,CAChC,CAAC;QACF,OAAO,IAAI,cAAc,CAAC,UAAU,EAAE,gBAAgB,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC7E,CAAC;CACF"}
1
+ {"version":3,"file":"assembly.js","sourceRoot":"","sources":["../../../../src/parser/recipe/create/assembly.ts"],"names":[],"mappings":"AAQA,OAAO,YAAY,EAAE,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAWnD,MAAM,OAAO,cAAe,SAAQ,MAAM;IAErB;IACA;IACA;IACA;IAJnB,YACmB,UAAsB,EACtB,gBAA4B,EAC5B,OAAiB,EACjB,QAAwB;QAEzC,KAAK,EAAE,CAAC;QALS,eAAU,GAAV,UAAU,CAAY;QACtB,qBAAgB,GAAhB,gBAAgB,CAAY;QAC5B,YAAO,GAAP,OAAO,CAAU;QACjB,aAAQ,GAAR,QAAQ,CAAgB;IAG3C,CAAC;IAED,cAAc;QACZ,OAAO;YACL,IAAI,CAAC,UAAU;YACf,IAAI,CAAC,gBAAgB;YACrB,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,cAAc,EAAE,CAAC;SACtD,CAAC;IACJ,CAAC;IAED,UAAU;QACR,OAAO,CAAC,GAAG,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;IAC9E,CAAC;IAEQ,MAAM,CAAC,QAAwB;QACtC,OAAO,IAAI,cAAc,CACvB,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,EACpC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAC1C,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,EACjC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAC/C,CAAC;IACJ,CAAC;IAEQ,SAAS,CAChB,OAA2B;QAE3B,OAAO;YACL,UAAU,EAAE,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC;YAC1D,gBAAgB,EAAE,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,gBAAgB,CAAC;YACtE,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC;YACpD,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;SACnE,CAAC;IACJ,CAAC;CACF;AAED,MAAM,OAAO,oBAAqB,SAAQ,YAGzC;IACC,WAAW,CACT,UAAoC,EACpC,OAA2B;QAE3B,MAAM,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;QAC1E,MAAM,gBAAgB,GAAG,OAAO,CAAC,WAAW,CAAC,WAAW,CACtD,UAAU,CAAC,gBAAgB,CAC5B,CAAC;QACF,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACpE,MAAM,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAC9C,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC,CAChC,CAAC;QACF,OAAO,IAAI,cAAc,CAAC,UAAU,EAAE,gBAAgB,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC7E,CAAC;CACF"}
@@ -23,18 +23,15 @@ export class CookingRecipe extends Recipe {
23
23
  return {
24
24
  ingredients: context.ingredients.serializeList(this.ingredients),
25
25
  result: context.results.serialize(this.result),
26
- container: this.container && context.ingredients.serialize(this.container),
26
+ container: context.ingredients.serializeOptional(this.container),
27
27
  };
28
28
  }
29
29
  }
30
30
  export default class CookingRecipeParser extends RecipeParser {
31
31
  deserialize(definition, context) {
32
- const ingredients = context.ingredients.createList(definition.ingredients);
32
+ const ingredients = context.ingredients.deserializeList(definition.ingredients);
33
33
  const result = context.results.deserialize(definition.result);
34
- // TODO optional serialize & deserialize?
35
- const container = definition.container === undefined
36
- ? undefined
37
- : context.ingredients.deserialize(definition.container);
34
+ const container = context.ingredients.deserializeOptional(definition.container);
38
35
  return new CookingRecipe(ingredients, result, container);
39
36
  }
40
37
  }
@@ -1 +1 @@
1
- {"version":3,"file":"cooking.js","sourceRoot":"","sources":["../../../../src/parser/recipe/farmersdelight/cooking.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAKlD,OAAO,YAAY,EAAE,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAYnD,MAAM,OAAO,aAAc,SAAQ,MAAM;IAEpB;IACA;IACA;IAHnB,YACmB,WAAyB,EACzB,MAAc,EACd,SAAsB;QAEvC,KAAK,EAAE,CAAC;QAJS,gBAAW,GAAX,WAAW,CAAc;QACzB,WAAM,GAAN,MAAM,CAAQ;QACd,cAAS,GAAT,SAAS,CAAa;IAGzC,CAAC;IAED,cAAc;QACZ,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC9D,CAAC;IAED,UAAU;QACR,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACvB,CAAC;IAEQ,MAAM,CAAC,QAAwB;QACtC,OAAO,IAAI,aAAa,CACtB,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,EACzC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAC5B,IAAI,CAAC,SAAS,IAAI,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CACtD,CAAC;IACJ,CAAC;IAEQ,SAAS,CAChB,OAA2B;QAE3B,OAAO;YACL,WAAW,EAAE,OAAO,CAAC,WAAW,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC;YAChE,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC;YAC9C,SAAS,EACP,IAAI,CAAC,SAAS,IAAI,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC;SAClE,CAAC;IACJ,CAAC;CACF;AAED,MAAM,CAAC,OAAO,OAAO,mBAAoB,SAAQ,YAGhD;IACC,WAAW,CACT,UAAmC,EACnC,OAA2B;QAE3B,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAC3E,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAC9D,yCAAyC;QACzC,MAAM,SAAS,GACb,UAAU,CAAC,SAAS,KAAK,SAAS;YAChC,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QAC5D,OAAO,IAAI,aAAa,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;IAC3D,CAAC;CACF"}
1
+ {"version":3,"file":"cooking.js","sourceRoot":"","sources":["../../../../src/parser/recipe/farmersdelight/cooking.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAKlD,OAAO,YAAY,EAAE,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAYnD,MAAM,OAAO,aAAc,SAAQ,MAAM;IAEpB;IACA;IACA;IAHnB,YACmB,WAAyB,EACzB,MAAc,EACd,SAAsB;QAEvC,KAAK,EAAE,CAAC;QAJS,gBAAW,GAAX,WAAW,CAAc;QACzB,WAAM,GAAN,MAAM,CAAQ;QACd,cAAS,GAAT,SAAS,CAAa;IAGzC,CAAC;IAED,cAAc;QACZ,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC9D,CAAC;IAED,UAAU;QACR,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACvB,CAAC;IAEQ,MAAM,CAAC,QAAwB;QACtC,OAAO,IAAI,aAAa,CACtB,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,EACzC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAC5B,IAAI,CAAC,SAAS,IAAI,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CACtD,CAAC;IACJ,CAAC;IAEQ,SAAS,CAChB,OAA2B;QAE3B,OAAO;YACL,WAAW,EAAE,OAAO,CAAC,WAAW,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC;YAChE,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC;YAC9C,SAAS,EAAE,OAAO,CAAC,WAAW,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC;SACjE,CAAC;IACJ,CAAC;CACF;AAED,MAAM,CAAC,OAAO,OAAO,mBAAoB,SAAQ,YAGhD;IACC,WAAW,CACT,UAAmC,EACnC,OAA2B;QAE3B,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,eAAe,CACrD,UAAU,CAAC,WAAW,CACvB,CAAC;QACF,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAC9D,MAAM,SAAS,GAAG,OAAO,CAAC,WAAW,CAAC,mBAAmB,CACvD,UAAU,CAAC,SAAS,CACrB,CAAC;QACF,OAAO,IAAI,aAAa,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;IAC3D,CAAC;CACF"}
@@ -32,8 +32,8 @@ export class CuttingRecipe extends ManyToManyRecipe {
32
32
  }
33
33
  export default class CuttingRecipeParser extends RecipeParser {
34
34
  deserialize(definition, context) {
35
- const ingredients = context.ingredients.createList(definition.ingredients);
36
- const result = context.results.createList(definition.result);
35
+ const ingredients = context.ingredients.deserializeList(definition.ingredients);
36
+ const result = context.results.deserializeList(definition.result);
37
37
  const tool = context.ingredients.deserialize(definition.tool);
38
38
  return new CuttingRecipe(ingredients, result, tool);
39
39
  }
@@ -1 +1 @@
1
- {"version":3,"file":"cutting.js","sourceRoot":"","sources":["../../../../src/parser/recipe/farmersdelight/cutting.ts"],"names":[],"mappings":"AAEA,OAAO,YAAY,EAAE,EAGpB,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,gBAAgB,GAEjB,MAAM,kBAAkB,CAAC;AAgB1B,2BAA2B;AAC3B,sEAAsE;AACtE,aAAa;AACb,iBAAiB;AACjB,mCAAmC;AACnC,yBAAyB;AACzB,kDAAkD;AAClD,OAAO;AACP,IAAI;AAEJ,MAAM,OAAO,aAAc,SAAQ,gBAAgB;IAI9B;IAHnB,YACE,WAAyB,EACzB,OAAiB,EACA,IAAgB;QAEjC,KAAK,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QAFX,SAAI,GAAJ,IAAI,CAAY;IAGnC,CAAC;IAEQ,cAAc;QACrB,OAAO,CAAC,GAAG,KAAK,CAAC,cAAc,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IAChD,CAAC;IAEQ,MAAM,CAAC,QAAwB;QACtC,OAAO,IAAI,aAAa,CACtB,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,EACzC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,EACjC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAC/B,CAAC;IACJ,CAAC;IAEQ,SAAS,CAChB,OAA2B;QAE3B,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACtD,OAAO;YACL,GAAG,IAAI;YACP,MAAM,EAAE,OAAO;YACf,IAAI,EAAE,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;SAC/C,CAAC;IACJ,CAAC;CACF;AAED,MAAM,CAAC,OAAO,OAAO,mBAAoB,SAAQ,YAGhD;IACC,WAAW,CACT,UAAmC,EACnC,OAA2B;QAE3B,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAC3E,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAC7D,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAC9D,OAAO,IAAI,aAAa,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IACtD,CAAC;CACF"}
1
+ {"version":3,"file":"cutting.js","sourceRoot":"","sources":["../../../../src/parser/recipe/farmersdelight/cutting.ts"],"names":[],"mappings":"AAEA,OAAO,YAAY,EAAE,EAGpB,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,gBAAgB,GAEjB,MAAM,kBAAkB,CAAC;AAgB1B,2BAA2B;AAC3B,sEAAsE;AACtE,aAAa;AACb,iBAAiB;AACjB,mCAAmC;AACnC,yBAAyB;AACzB,kDAAkD;AAClD,OAAO;AACP,IAAI;AAEJ,MAAM,OAAO,aAAc,SAAQ,gBAAgB;IAI9B;IAHnB,YACE,WAAyB,EACzB,OAAiB,EACA,IAAgB;QAEjC,KAAK,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QAFX,SAAI,GAAJ,IAAI,CAAY;IAGnC,CAAC;IAEQ,cAAc;QACrB,OAAO,CAAC,GAAG,KAAK,CAAC,cAAc,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IAChD,CAAC;IAEQ,MAAM,CAAC,QAAwB;QACtC,OAAO,IAAI,aAAa,CACtB,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,EACzC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,EACjC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAC/B,CAAC;IACJ,CAAC;IAEQ,SAAS,CAChB,OAA2B;QAE3B,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACtD,OAAO;YACL,GAAG,IAAI;YACP,MAAM,EAAE,OAAO;YACf,IAAI,EAAE,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;SAC/C,CAAC;IACJ,CAAC;CACF;AAED,MAAM,CAAC,OAAO,OAAO,mBAAoB,SAAQ,YAGhD;IACC,WAAW,CACT,UAAmC,EACnC,OAA2B;QAE3B,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,eAAe,CACrD,UAAU,CAAC,WAAW,CACvB,CAAC;QACF,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAClE,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAC9D,OAAO,IAAI,aAAa,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IACtD,CAAC;CACF"}
@@ -25,8 +25,8 @@ export class ManyToManyRecipe extends Recipe {
25
25
  }
26
26
  export class ManyToManyRecipeParser extends RecipeParser {
27
27
  deserialize(definition, context) {
28
- const ingredients = context.ingredients.createList(definition.ingredients);
29
- const results = context.results.createList(definition.results);
28
+ const ingredients = context.ingredients.deserializeList(definition.ingredients);
29
+ const results = context.results.deserializeList(definition.results);
30
30
  return new ManyToManyRecipe(ingredients, results);
31
31
  }
32
32
  }
@@ -1 +1 @@
1
- {"version":3,"file":"manyToMany.js","sourceRoot":"","sources":["../../../src/parser/recipe/manyToMany.ts"],"names":[],"mappings":"AAGA,OAAO,YAAY,EAAE,EACnB,MAAM,GAGP,MAAM,YAAY,CAAC;AAQpB,MAAM,OAAO,gBAAiB,SAAQ,MAAM;IAErB;IACA;IAFrB,YACqB,WAAyB,EACzB,OAAiB;QAEpC,KAAK,EAAE,CAAC;QAHW,gBAAW,GAAX,WAAW,CAAc;QACzB,YAAO,GAAP,OAAO,CAAU;IAGtC,CAAC;IAED,cAAc;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAEQ,MAAM,CAAC,QAAwB;QACtC,OAAO,IAAI,gBAAgB,CACzB,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,EACzC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAClC,CAAC;IACJ,CAAC;IAEQ,SAAS,CAChB,OAA2B;QAE3B,OAAO;YACL,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC;YACpD,WAAW,EAAE,OAAO,CAAC,WAAW,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC;SACjE,CAAC;IACJ,CAAC;CACF;AAED,MAAM,OAAO,sBAEX,SAAQ,YAA2C;IACnD,WAAW,CACT,UAAuB,EACvB,OAA2B;QAE3B,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAC3E,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAC/D,OAAO,IAAI,gBAAgB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IACpD,CAAC;CACF"}
1
+ {"version":3,"file":"manyToMany.js","sourceRoot":"","sources":["../../../src/parser/recipe/manyToMany.ts"],"names":[],"mappings":"AAGA,OAAO,YAAY,EAAE,EACnB,MAAM,GAGP,MAAM,YAAY,CAAC;AAQpB,MAAM,OAAO,gBAAiB,SAAQ,MAAM;IAErB;IACA;IAFrB,YACqB,WAAyB,EACzB,OAAiB;QAEpC,KAAK,EAAE,CAAC;QAHW,gBAAW,GAAX,WAAW,CAAc;QACzB,YAAO,GAAP,OAAO,CAAU;IAGtC,CAAC;IAED,cAAc;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAEQ,MAAM,CAAC,QAAwB;QACtC,OAAO,IAAI,gBAAgB,CACzB,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,EACzC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAClC,CAAC;IACJ,CAAC;IAEQ,SAAS,CAChB,OAA2B;QAE3B,OAAO;YACL,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC;YACpD,WAAW,EAAE,OAAO,CAAC,WAAW,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC;SACjE,CAAC;IACJ,CAAC;CACF;AAED,MAAM,OAAO,sBAEX,SAAQ,YAA2C;IACnD,WAAW,CACT,UAAuB,EACvB,OAA2B;QAE3B,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,eAAe,CACrD,UAAU,CAAC,WAAW,CACvB,CAAC;QACF,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACpE,OAAO,IAAI,gBAAgB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IACpD,CAAC;CACF"}
@@ -25,7 +25,7 @@ export class ManyToOneRecipe extends Recipe {
25
25
  }
26
26
  export class ManyToOneRecipeParser extends RecipeParser {
27
27
  deserialize(definition, context) {
28
- const ingredients = context.ingredients.createList(definition.ingredients);
28
+ const ingredients = context.ingredients.deserializeList(definition.ingredients);
29
29
  const result = context.results.deserialize(definition.result);
30
30
  return new ManyToOneRecipe(ingredients, result);
31
31
  }
@@ -1 +1 @@
1
- {"version":3,"file":"manyToOne.js","sourceRoot":"","sources":["../../../src/parser/recipe/manyToOne.ts"],"names":[],"mappings":"AAGA,OAAO,YAAY,EAAE,EACnB,MAAM,GAGP,MAAM,YAAY,CAAC;AAQpB,MAAM,OAAO,eAAgB,SAAQ,MAAM;IAEpB;IACA;IAFrB,YACqB,WAAyB,EACzB,MAAc;QAEjC,KAAK,EAAE,CAAC;QAHW,gBAAW,GAAX,WAAW,CAAc;QACzB,WAAM,GAAN,MAAM,CAAQ;IAGnC,CAAC;IAED,cAAc;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,UAAU;QACR,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACvB,CAAC;IAEQ,MAAM,CAAC,QAAwB;QACtC,OAAO,IAAI,eAAe,CACxB,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,EACzC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAC7B,CAAC;IACJ,CAAC;IAEQ,SAAS,CAChB,OAA2B;QAE3B,OAAO;YACL,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC;YAC9C,WAAW,EAAE,OAAO,CAAC,WAAW,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC;SACjE,CAAC;IACJ,CAAC;CACF;AAED,MAAM,OAAO,qBAEX,SAAQ,YAA0C;IAClD,WAAW,CACT,UAAuB,EACvB,OAA2B;QAE3B,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAC3E,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAC9D,OAAO,IAAI,eAAe,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IAClD,CAAC;CACF"}
1
+ {"version":3,"file":"manyToOne.js","sourceRoot":"","sources":["../../../src/parser/recipe/manyToOne.ts"],"names":[],"mappings":"AAGA,OAAO,YAAY,EAAE,EACnB,MAAM,GAGP,MAAM,YAAY,CAAC;AAQpB,MAAM,OAAO,eAAgB,SAAQ,MAAM;IAEpB;IACA;IAFrB,YACqB,WAAyB,EACzB,MAAc;QAEjC,KAAK,EAAE,CAAC;QAHW,gBAAW,GAAX,WAAW,CAAc;QACzB,WAAM,GAAN,MAAM,CAAQ;IAGnC,CAAC;IAED,cAAc;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,UAAU;QACR,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACvB,CAAC;IAEQ,MAAM,CAAC,QAAwB;QACtC,OAAO,IAAI,eAAe,CACxB,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,EACzC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAC7B,CAAC;IACJ,CAAC;IAEQ,SAAS,CAChB,OAA2B;QAE3B,OAAO;YACL,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC;YAC9C,WAAW,EAAE,OAAO,CAAC,WAAW,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC;SACjE,CAAC;IACJ,CAAC;CACF;AAED,MAAM,OAAO,qBAEX,SAAQ,YAA0C;IAClD,WAAW,CACT,UAAuB,EACvB,OAA2B;QAE3B,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,eAAe,CACrD,UAAU,CAAC,WAAW,CACvB,CAAC;QACF,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAC9D,OAAO,IAAI,eAAe,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IAClD,CAAC;CACF"}
@@ -22,7 +22,7 @@ export class RootComponentRecipe extends Recipe {
22
22
  }
23
23
  export class RootComponentRecipeParser extends RecipeParser {
24
24
  deserialize(definition, context) {
25
- const ingredients = context.ingredients.createList(definition.ingredients);
25
+ const ingredients = context.ingredients.deserializeList(definition.ingredients);
26
26
  return new RootComponentRecipe(ingredients);
27
27
  }
28
28
  }
@@ -1 +1 @@
1
- {"version":3,"file":"component.js","sourceRoot":"","sources":["../../../../src/parser/recipe/roots/component.ts"],"names":[],"mappings":"AAGA,OAAO,YAAY,EAAE,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAQnD,MAAM,OAAO,mBAAoB,SAAQ,MAAM;IAChB;IAA7B,YAA6B,WAAyB;QACpD,KAAK,EAAE,CAAC;QADmB,gBAAW,GAAX,WAAW,CAAc;IAEtD,CAAC;IAED,cAAc;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,UAAU;QACR,OAAO,EAAE,CAAC;IACZ,CAAC;IAEQ,MAAM,CAAC,QAAwB;QACtC,OAAO,IAAI,mBAAmB,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;IAC5E,CAAC;IAEQ,SAAS,CAChB,OAA2B;QAE3B,OAAO;YACL,WAAW,EAAE,OAAO,CAAC,WAAW,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC;SACjE,CAAC;IACJ,CAAC;CACF;AAED,MAAM,OAAO,yBAA0B,SAAQ,YAG9C;IACC,WAAW,CACT,UAAyC,EACzC,OAA2B;QAE3B,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAC3E,OAAO,IAAI,mBAAmB,CAAC,WAAW,CAAC,CAAC;IAC9C,CAAC;CACF"}
1
+ {"version":3,"file":"component.js","sourceRoot":"","sources":["../../../../src/parser/recipe/roots/component.ts"],"names":[],"mappings":"AAGA,OAAO,YAAY,EAAE,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAQnD,MAAM,OAAO,mBAAoB,SAAQ,MAAM;IAChB;IAA7B,YAA6B,WAAyB;QACpD,KAAK,EAAE,CAAC;QADmB,gBAAW,GAAX,WAAW,CAAc;IAEtD,CAAC;IAED,cAAc;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,UAAU;QACR,OAAO,EAAE,CAAC;IACZ,CAAC;IAEQ,MAAM,CAAC,QAAwB;QACtC,OAAO,IAAI,mBAAmB,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;IAC5E,CAAC;IAEQ,SAAS,CAChB,OAA2B;QAE3B,OAAO;YACL,WAAW,EAAE,OAAO,CAAC,WAAW,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC;SACjE,CAAC;IACJ,CAAC;CACF;AAED,MAAM,OAAO,yBAA0B,SAAQ,YAG9C;IACC,WAAW,CACT,UAAyC,EACzC,OAA2B;QAE3B,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,eAAe,CACrD,UAAU,CAAC,WAAW,CACvB,CAAC;QACF,OAAO,IAAI,mBAAmB,CAAC,WAAW,CAAC,CAAC;IAC9C,CAAC;CACF"}
@@ -15,10 +15,10 @@ export class RootRitualRecipe extends ManyToOneRecipe {
15
15
  }
16
16
  export class RootRitualRecipeParser extends RecipeParser {
17
17
  deserialize(definition, context) {
18
- const ingredients = context.ingredients.createList(definition.ingredients);
18
+ const ingredients = context.ingredients.deserializeList(definition.ingredients);
19
19
  const result = context.results.deserialize(definition.result);
20
20
  const incenses = definition.incenses &&
21
- context.ingredients.createList(definition.incenses);
21
+ context.ingredients.deserializeList(definition.incenses);
22
22
  return new RootRitualRecipe(ingredients, result, incenses);
23
23
  }
24
24
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ritual.js","sourceRoot":"","sources":["../../../../src/parser/recipe/roots/ritual.ts"],"names":[],"mappings":"AAGA,OAAO,YAAY,MAAM,aAAa,CAAC;AACvC,OAAO,EACL,eAAe,GAEhB,MAAM,iBAAiB,CAAC;AAUzB,MAAM,OAAO,gBAAiB,SAAQ,eAAe;IAIhC;IAHnB,YACE,WAAyB,EACzB,MAAc,EACG,WAAyB,EAAE;QAE5C,KAAK,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QAFV,aAAQ,GAAR,QAAQ,CAAmB;IAG9C,CAAC;IAEQ,cAAc;QACrB,OAAO,CAAC,GAAG,KAAK,CAAC,cAAc,EAAE,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;IACvD,CAAC;IAEQ,MAAM,CAAC,QAAwB;QACtC,OAAO,IAAI,gBAAgB,CACzB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,EACtC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAC5B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,CACvC,CAAC;IACJ,CAAC;CACF;AAED,MAAM,OAAO,sBAAuB,SAAQ,YAG3C;IACC,WAAW,CACT,UAAsC,EACtC,OAA2B;QAE3B,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAC3E,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAC9D,MAAM,QAAQ,GACZ,UAAU,CAAC,QAAQ;YACnB,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QACtD,OAAO,IAAI,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC7D,CAAC;CACF"}
1
+ {"version":3,"file":"ritual.js","sourceRoot":"","sources":["../../../../src/parser/recipe/roots/ritual.ts"],"names":[],"mappings":"AAGA,OAAO,YAAY,MAAM,aAAa,CAAC;AACvC,OAAO,EACL,eAAe,GAEhB,MAAM,iBAAiB,CAAC;AAUzB,MAAM,OAAO,gBAAiB,SAAQ,eAAe;IAIhC;IAHnB,YACE,WAAyB,EACzB,MAAc,EACG,WAAyB,EAAE;QAE5C,KAAK,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QAFV,aAAQ,GAAR,QAAQ,CAAmB;IAG9C,CAAC;IAEQ,cAAc;QACrB,OAAO,CAAC,GAAG,KAAK,CAAC,cAAc,EAAE,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;IACvD,CAAC;IAEQ,MAAM,CAAC,QAAwB;QACtC,OAAO,IAAI,gBAAgB,CACzB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,EACtC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAC5B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,CACvC,CAAC;IACJ,CAAC;CACF;AAED,MAAM,OAAO,sBAAuB,SAAQ,YAG3C;IACC,WAAW,CACT,UAAsC,EACtC,OAA2B;QAE3B,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,eAAe,CACrD,UAAU,CAAC,WAAW,CACvB,CAAC;QACF,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAC9D,MAAM,QAAQ,GACZ,UAAU,CAAC,QAAQ;YACnB,OAAO,CAAC,WAAW,CAAC,eAAe,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QAC3D,OAAO,IAAI,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC7D,CAAC;CACF"}
@@ -1,5 +1,6 @@
1
1
  import { IllegalShapeError } from "../../../error.js";
2
2
  import RecipeParser, { Recipe } from "../index.js";
3
+ import { createThermalIngredients } from "./ingredient.js";
3
4
  export class ThermalRecipe extends Recipe {
4
5
  ingredients;
5
6
  results;
@@ -33,13 +34,14 @@ export class ThermalRecipe extends Recipe {
33
34
  export class ThermalRecipeParser extends RecipeParser {
34
35
  deserialize(definition, context) {
35
36
  // TODO map from and to thermals shape
36
- const ingredients = definition.ingredient
37
- ? [context.ingredients.deserialize(definition.ingredient)]
38
- : context.ingredients.createList(definition.ingredients ?? []);
39
- if (ingredients.length === 0)
37
+ const rawIngredients = definition.ingredient
38
+ ? [definition.ingredient]
39
+ : (definition.ingredients ?? []);
40
+ if (rawIngredients.length === 0)
40
41
  throw new IllegalShapeError("ingredients missing or empty", definition);
42
+ const ingredients = rawIngredients.flatMap((it) => createThermalIngredients(context.ingredients, it));
41
43
  const results = Array.isArray(definition.result)
42
- ? context.results.createList(definition.result)
44
+ ? context.results.deserializeList(definition.result)
43
45
  : [context.results.deserialize(definition.result)];
44
46
  return new ThermalRecipe(ingredients, results);
45
47
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/parser/recipe/thermal/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAGtD,OAAO,YAAY,EAAE,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAenD,MAAM,OAAO,aAAc,SAAQ,MAAM;IAEpB;IACA;IAFnB,YACmB,WAAyB,EACzB,OAAiB;QAElC,KAAK,EAAE,CAAC;QAHS,gBAAW,GAAX,WAAW,CAAc;QACzB,YAAO,GAAP,OAAO,CAAU;IAGpC,CAAC;IAED,cAAc;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAEQ,MAAM,CAAC,QAAwB;QACtC,OAAO,IAAI,aAAa,CACtB,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,EACzC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAClC,CAAC;IACJ,CAAC;IAEQ,SAAS,CAChB,OAA2B;QAE3B,MAAM,UAAU,GAAgD;YAC9D,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC;SACpD,CAAC;QAEF,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAClC,UAAU,CAAC,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC,SAAS,CACnD,IAAI,CAAC,WAAW,CAAC,CAAC,CAAE,CACrB,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,UAAU,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,aAAa,CACxD,IAAI,CAAC,WAAW,CACjB,CAAC;QACJ,CAAC;QAED,OAAO,UAAU,CAAC;IACpB,CAAC;CACF;AAED,MAAM,OAAO,mBAAoB,SAAQ,YAGxC;IACC,WAAW,CACT,UAAmC,EACnC,OAA2B;QAE3B,sCAAsC;QAEtC,MAAM,WAAW,GAAG,UAAU,CAAC,UAAU;YACvC,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;YAC1D,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,UAAU,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;QAEjE,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC;YAC1B,MAAM,IAAI,iBAAiB,CAAC,8BAA8B,EAAE,UAAU,CAAC,CAAC;QAE1E,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC;YAC9C,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC;YAC/C,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;QAErD,OAAO,IAAI,aAAa,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IACjD,CAAC;CACF"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/parser/recipe/thermal/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAGtD,OAAO,YAAY,EAAE,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAe3D,MAAM,OAAO,aAAc,SAAQ,MAAM;IAEpB;IACA;IAFnB,YACmB,WAAyB,EACzB,OAAiB;QAElC,KAAK,EAAE,CAAC;QAHS,gBAAW,GAAX,WAAW,CAAc;QACzB,YAAO,GAAP,OAAO,CAAU;IAGpC,CAAC;IAED,cAAc;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAEQ,MAAM,CAAC,QAAwB;QACtC,OAAO,IAAI,aAAa,CACtB,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,EACzC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAClC,CAAC;IACJ,CAAC;IAEQ,SAAS,CAChB,OAA2B;QAE3B,MAAM,UAAU,GAAgD;YAC9D,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC;SACpD,CAAC;QAEF,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAClC,UAAU,CAAC,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC,SAAS,CACnD,IAAI,CAAC,WAAW,CAAC,CAAC,CAAE,CACrB,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,UAAU,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,aAAa,CACxD,IAAI,CAAC,WAAW,CACjB,CAAC;QACJ,CAAC;QAED,OAAO,UAAU,CAAC;IACpB,CAAC;CACF;AAED,MAAM,OAAO,mBAAoB,SAAQ,YAGxC;IACC,WAAW,CACT,UAAmC,EACnC,OAA2B;QAE3B,sCAAsC;QAEtC,MAAM,cAAc,GAAG,UAAU,CAAC,UAAU;YAC1C,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC;YACzB,CAAC,CAAC,CAAC,UAAU,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;QAEnC,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC;YAC7B,MAAM,IAAI,iBAAiB,CAAC,8BAA8B,EAAE,UAAU,CAAC,CAAC;QAE1E,MAAM,WAAW,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,CAChD,wBAAwB,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAClD,CAAC;QAEF,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC;YAC9C,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,UAAU,CAAC,MAAM,CAAC;YACpD,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;QAErD,OAAO,IAAI,aAAa,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IACjD,CAAC;CACF"}
@@ -1,10 +1,11 @@
1
1
  import z from "zod";
2
+ import { AmountSchema, CountSchema } from "../../../common/fields.js";
2
3
  import { encodeId, IdSchema } from "../../../common/id.js";
3
4
  import { FluidTagIngredient, ItemIngredient, ItemTagIngredient, } from "../../../common/ingredient/index.js";
4
5
  import { IllegalShapeError } from "../../../error.js";
5
6
  const ThermalFluidTagSchema = z.object({
6
- fluid_tag: z.string(),
7
- amount: z.number(),
7
+ fluid_tag: IdSchema,
8
+ amount: AmountSchema,
8
9
  });
9
10
  const ThermalItemEntry = z.object({
10
11
  item: IdSchema,
@@ -15,7 +16,7 @@ const ThermalTagEntry = z.object({
15
16
  const ThermalIngredientEntry = ThermalItemEntry.or(ThermalTagEntry);
16
17
  const ThermalIngredientList = z.object({
17
18
  value: z.array(ThermalIngredientEntry),
18
- count: z.number(),
19
+ count: CountSchema,
19
20
  });
20
21
  // TODO serialize this?
21
22
  // type ThermalItemList = z.infer<typeof ThermalIngredientList>;
@@ -1 +1 @@
1
- {"version":3,"file":"ingredient.js","sourceRoot":"","sources":["../../../../src/parser/recipe/thermal/ingredient.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AACpB,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EACL,kBAAkB,EAClB,cAAc,EACd,iBAAiB,GAElB,MAAM,qCAAqC,CAAC;AAE7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAEtD,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;CACnB,CAAC,CAAC;AAEH,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChC,IAAI,EAAE,QAAQ;CACf,CAAC,CAAC;AAEH,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/B,GAAG,EAAE,QAAQ;CACd,CAAC,CAAC;AAEH,MAAM,sBAAsB,GAAG,gBAAgB,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC;AACpE,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,sBAAsB,CAAC;IACtC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;CAClB,CAAC,CAAC;AAIH,uBAAuB;AACvB,gEAAgE;AAEhE,MAAM,UAAU,wBAAwB,CACtC,WAAiC,EACjC,KAAc;IAEd,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACvC,IAAI,OAAO,IAAI,KAAK,EAAE,CAAC;YACrB,MAAM,MAAM,GAAG,qBAAqB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAClD,OAAO,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;gBAC7B,IAAI,MAAM,IAAI,EAAE;oBAAE,OAAO,IAAI,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;gBACnE,IAAI,KAAK,IAAI,EAAE;oBAAE,OAAO,IAAI,iBAAiB,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;gBACpE,MAAM,IAAI,iBAAiB,CAAC,qCAAqC,EAAE,EAAE,CAAC,CAAC;YACzE,CAAC,CAAC,CAAC;QACL,CAAC;QAED,IAAI,WAAW,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,MAAM,GAAG,qBAAqB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAClD,OAAO,CAAC,IAAI,kBAAkB,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;QACnE,CAAC;IACH,CAAC;IAED,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;AAC1C,CAAC;AAED,MAAM,UAAU,0BAA0B,CACxC,WAAiC,EACjC,UAAsB;IAEtB,IAAI,UAAU,YAAY,kBAAkB,EAAE,CAAC;QAC7C,OAAO;YACL,SAAS,EAAE,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC;YACnC,MAAM,EAAE,UAAU,CAAC,MAAM;SACA,CAAC;IAC9B,CAAC;IAED,OAAO,WAAW,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;AAC3C,CAAC"}
1
+ {"version":3,"file":"ingredient.js","sourceRoot":"","sources":["../../../../src/parser/recipe/thermal/ingredient.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AACpB,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EACL,kBAAkB,EAClB,cAAc,EACd,iBAAiB,GAElB,MAAM,qCAAqC,CAAC;AAE7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAEtD,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,SAAS,EAAE,QAAQ;IACnB,MAAM,EAAE,YAAY;CACrB,CAAC,CAAC;AAEH,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChC,IAAI,EAAE,QAAQ;CACf,CAAC,CAAC;AAEH,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/B,GAAG,EAAE,QAAQ;CACd,CAAC,CAAC;AAEH,MAAM,sBAAsB,GAAG,gBAAgB,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC;AACpE,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,sBAAsB,CAAC;IACtC,KAAK,EAAE,WAAW;CACnB,CAAC,CAAC;AAIH,uBAAuB;AACvB,gEAAgE;AAEhE,MAAM,UAAU,wBAAwB,CACtC,WAAiC,EACjC,KAAc;IAEd,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACvC,IAAI,OAAO,IAAI,KAAK,EAAE,CAAC;YACrB,MAAM,MAAM,GAAG,qBAAqB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAClD,OAAO,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;gBAC7B,IAAI,MAAM,IAAI,EAAE;oBAAE,OAAO,IAAI,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;gBACnE,IAAI,KAAK,IAAI,EAAE;oBAAE,OAAO,IAAI,iBAAiB,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;gBACpE,MAAM,IAAI,iBAAiB,CAAC,qCAAqC,EAAE,EAAE,CAAC,CAAC;YACzE,CAAC,CAAC,CAAC;QACL,CAAC;QAED,IAAI,WAAW,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,MAAM,GAAG,qBAAqB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAClD,OAAO,CAAC,IAAI,kBAAkB,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;QACnE,CAAC;IACH,CAAC;IAED,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;AAC1C,CAAC;AAED,MAAM,UAAU,0BAA0B,CACxC,WAAiC,EACjC,UAAsB;IAEtB,IAAI,UAAU,YAAY,kBAAkB,EAAE,CAAC;QAC7C,OAAO;YACL,SAAS,EAAE,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC;YACnC,MAAM,EAAE,UAAU,CAAC,MAAM;SACA,CAAC;IAC9B,CAAC;IAED,OAAO,WAAW,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;AAC3C,CAAC"}
@@ -6,13 +6,15 @@ import RecipeParser, { Recipe } from "../index.js";
6
6
  export type SmithingRecipeDefinition = RecipeDefinition & Readonly<{
7
7
  base: unknown;
8
8
  addition: unknown;
9
- result: unknown;
9
+ result?: unknown;
10
+ template?: unknown;
10
11
  }>;
11
12
  export declare class SmithingRecipe extends Recipe {
12
13
  private readonly base;
13
14
  private readonly addition;
14
15
  private readonly result;
15
- constructor(base: Ingredient, addition: Ingredient, result: Result);
16
+ private readonly template;
17
+ constructor(base: Ingredient, addition: Ingredient, result: Result | undefined, template: Ingredient | undefined);
16
18
  getIngredients(): Ingredient[];
17
19
  getResults(): Result[];
18
20
  modify(modifier: RecipeModifier): SmithingRecipe;
@@ -1,28 +1,32 @@
1
+ import { exists } from "@adeficior/pack-resolver";
1
2
  import RecipeParser, { Recipe } from "../index.js";
2
3
  export class SmithingRecipe extends Recipe {
3
4
  base;
4
5
  addition;
5
6
  result;
6
- constructor(base, addition, result) {
7
+ template;
8
+ constructor(base, addition, result, template) {
7
9
  super();
8
10
  this.base = base;
9
11
  this.addition = addition;
10
12
  this.result = result;
13
+ this.template = template;
11
14
  }
12
15
  getIngredients() {
13
- return [this.base, this.addition];
16
+ return [this.base, this.addition, this.template].filter(exists);
14
17
  }
15
18
  getResults() {
16
- return [this.result];
19
+ return [this.result].filter(exists);
17
20
  }
18
21
  modify(modifier) {
19
- return new SmithingRecipe(modifier.ingredient(this.base), modifier.ingredient(this.addition), modifier.result(this.result));
22
+ return new SmithingRecipe(modifier.ingredient(this.base), modifier.ingredient(this.addition), this.result && modifier.result(this.result), this.template && modifier.ingredient(this.template));
20
23
  }
21
24
  serialize(context) {
22
25
  return {
23
26
  base: context.ingredients.serialize(this.base),
24
27
  addition: context.ingredients.serialize(this.addition),
25
- result: context.results.serialize(this.result),
28
+ result: context.results.serializeOptional(this.result),
29
+ template: context.ingredients.serializeOptional(this.template),
26
30
  };
27
31
  }
28
32
  }
@@ -30,8 +34,9 @@ export class SmithingParser extends RecipeParser {
30
34
  deserialize(definition, context) {
31
35
  const base = context.ingredients.deserialize(definition.base);
32
36
  const addition = context.ingredients.deserialize(definition.addition);
33
- const result = context.results.deserialize(definition.result);
34
- return new SmithingRecipe(base, addition, result);
37
+ const result = context.results.deserializeOptional(definition.result);
38
+ const template = context.ingredients.deserializeOptional(definition.addition);
39
+ return new SmithingRecipe(base, addition, result, template);
35
40
  }
36
41
  }
37
42
  //# sourceMappingURL=smithing.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"smithing.js","sourceRoot":"","sources":["../../../../src/parser/recipe/vanilla/smithing.ts"],"names":[],"mappings":"AAIA,OAAO,YAAY,EAAE,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AASnD,MAAM,OAAO,cAAe,SAAQ,MAAM;IAErB;IACA;IACA;IAHnB,YACmB,IAAgB,EAChB,QAAoB,EACpB,MAAc;QAE/B,KAAK,EAAE,CAAC;QAJS,SAAI,GAAJ,IAAI,CAAY;QAChB,aAAQ,GAAR,QAAQ,CAAY;QACpB,WAAM,GAAN,MAAM,CAAQ;IAGjC,CAAC;IAED,cAAc;QACZ,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IACpC,CAAC;IAED,UAAU;QACR,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACvB,CAAC;IAEQ,MAAM,CAAC,QAAwB;QACtC,OAAO,IAAI,cAAc,CACvB,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAC9B,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,EAClC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAC7B,CAAC;IACJ,CAAC;IAEQ,SAAS,CAChB,OAA2B;QAE3B,OAAO;YACL,IAAI,EAAE,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;YAC9C,QAAQ,EAAE,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC;YACtD,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC;SAC/C,CAAC;IACJ,CAAC;CACF;AAED,MAAM,OAAO,cAAe,SAAQ,YAGnC;IACC,WAAW,CACT,UAAoC,EACpC,OAA2B;QAE3B,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAC9D,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QACtE,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAC9D,OAAO,IAAI,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;IACpD,CAAC;CACF"}
1
+ {"version":3,"file":"smithing.js","sourceRoot":"","sources":["../../../../src/parser/recipe/vanilla/smithing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAKlD,OAAO,YAAY,EAAE,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAUnD,MAAM,OAAO,cAAe,SAAQ,MAAM;IAErB;IACA;IACA;IACA;IAJnB,YACmB,IAAgB,EAChB,QAAoB,EACpB,MAA0B,EAC1B,QAAgC;QAEjD,KAAK,EAAE,CAAC;QALS,SAAI,GAAJ,IAAI,CAAY;QAChB,aAAQ,GAAR,QAAQ,CAAY;QACpB,WAAM,GAAN,MAAM,CAAoB;QAC1B,aAAQ,GAAR,QAAQ,CAAwB;IAGnD,CAAC;IAED,cAAc;QACZ,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAClE,CAAC;IAED,UAAU;QACR,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACtC,CAAC;IAEQ,MAAM,CAAC,QAAwB;QACtC,OAAO,IAAI,cAAc,CACvB,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAC9B,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,EAClC,IAAI,CAAC,MAAM,IAAI,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAC3C,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CACpD,CAAC;IACJ,CAAC;IAEQ,SAAS,CAChB,OAA2B;QAE3B,OAAO;YACL,IAAI,EAAE,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;YAC9C,QAAQ,EAAE,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC;YACtD,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC;YACtD,QAAQ,EAAE,OAAO,CAAC,WAAW,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC;SAC/D,CAAC;IACJ,CAAC;CACF;AAED,MAAM,OAAO,cAAe,SAAQ,YAGnC;IACC,WAAW,CACT,UAAoC,EACpC,OAA2B;QAE3B,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAC9D,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QACtE,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,mBAAmB,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QACtE,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,CAAC,mBAAmB,CACtD,UAAU,CAAC,QAAQ,CACpB,CAAC;QACF,OAAO,IAAI,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC9D,CAAC;CACF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adeficior/data-modifier",
3
- "version": "1.0.0-rc.37",
3
+ "version": "1.0.0-rc.38",
4
4
  "description": "Data Modifier",
5
5
  "main": "dist/index.js",
6
6
  "bin": {