@adeficior/data-modifier 1.0.0-rc.28 → 1.0.0-rc.30
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/cli/index.js +2 -2
- package/dist/cli/index.js.map +1 -1
- package/dist/context.d.ts +1 -0
- package/dist/context.js +1 -0
- package/dist/context.js.map +1 -0
- package/dist/emit/assets/blockstates.d.ts +2 -1
- package/dist/emit/assets/blockstates.js +3 -1
- package/dist/emit/assets/blockstates.js.map +1 -1
- package/dist/emit/assets/lang.d.ts +2 -1
- package/dist/emit/assets/lang.js +32 -30
- package/dist/emit/assets/lang.js.map +1 -1
- package/dist/emit/assets/models.d.ts +2 -2
- package/dist/emit/assets/models.js +3 -2
- package/dist/emit/assets/models.js.map +1 -1
- package/dist/emit/blacklist.d.ts +2 -2
- package/dist/emit/blacklist.js +17 -15
- package/dist/emit/blacklist.js.map +1 -1
- package/dist/emit/content/blockDefinition.d.ts +2 -1
- package/dist/emit/content/blockDefinition.js +3 -1
- package/dist/emit/content/blockDefinition.js.map +1 -1
- package/dist/emit/content/itemDefinition.d.ts +2 -1
- package/dist/emit/content/itemDefinition.js +3 -1
- package/dist/emit/content/itemDefinition.js.map +1 -1
- package/dist/emit/custom.d.ts +2 -2
- package/dist/emit/custom.js +8 -6
- package/dist/emit/custom.js.map +1 -1
- package/dist/emit/data/loot.d.ts +2 -2
- package/dist/emit/data/loot.js +11 -12
- package/dist/emit/data/loot.js.map +1 -1
- package/dist/emit/data/recipe.d.ts +2 -2
- package/dist/emit/data/recipe.js +21 -12
- package/dist/emit/data/recipe.js.map +1 -1
- package/dist/emit/data/tags.d.ts +2 -2
- package/dist/emit/data/tags.js +14 -12
- package/dist/emit/data/tags.js.map +1 -1
- package/dist/emit/index.d.ts +2 -2
- package/dist/emit/polytoneTabs.d.ts +2 -1
- package/dist/emit/polytoneTabs.js +6 -2
- package/dist/emit/polytoneTabs.js.map +1 -1
- package/dist/emit/rule/lootTable.d.ts +3 -3
- package/dist/emit/rule/lootTable.js +4 -5
- package/dist/emit/rule/lootTable.js.map +1 -1
- package/dist/emit/rule/recipe.d.ts +3 -3
- package/dist/emit/rule/recipe.js +4 -5
- package/dist/emit/rule/recipe.js.map +1 -1
- package/dist/emit/ruled.d.ts +3 -4
- package/dist/emit/ruled.js +24 -22
- package/dist/emit/ruled.js.map +1 -1
- package/dist/error.js +4 -2
- package/dist/error.js.map +1 -1
- package/dist/loader/index.d.ts +2 -2
- package/dist/loader/index.js +3 -4
- package/dist/loader/index.js.map +1 -1
- package/dist/loader/loot.js +2 -2
- package/dist/loader/loot.js.map +1 -1
- package/dist/loader/pack.d.ts +5 -4
- package/dist/loader/pack.js +12 -7
- package/dist/loader/pack.js.map +1 -1
- package/dist/loader/registry/dump.d.ts +2 -4
- package/dist/loader/registry/dump.js +4 -13
- package/dist/loader/registry/dump.js.map +1 -1
- package/dist/packFormat.d.ts +2 -0
- package/dist/packFormat.js +6 -0
- package/dist/packFormat.js.map +1 -1
- package/package.json +2 -3
package/dist/cli/index.js
CHANGED
|
@@ -20,8 +20,8 @@ async function runCodegen(config) {
|
|
|
20
20
|
if (!config.output)
|
|
21
21
|
throw new Error("output not specified");
|
|
22
22
|
if (config.registryDump && existsSync(config.registryDump)) {
|
|
23
|
-
const resolver = createResolver({ from: config.registryDump });
|
|
24
|
-
const registry = new RegistryDumpLoader(
|
|
23
|
+
const resolver = createResolver({ from: config.registryDump, logger });
|
|
24
|
+
const registry = new RegistryDumpLoader();
|
|
25
25
|
await resolver.extract(registry);
|
|
26
26
|
await generateRegistryTypes(registry, config.output);
|
|
27
27
|
logger.info("successfully generated registry entry types");
|
package/dist/cli/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AACxE,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAChC,OAAO,kBAAkB,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EACL,qBAAqB,EACrB,iBAAiB,GAClB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAElD,MAAM,MAAM,GAAG,YAAY,EAAE,CAAC;AAE9B,MAAM,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC,CAAC;AAE5D,KAAK,UAAU,MAAM;IACnB,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;IAEhC,QAAQ,MAAM,CAAC,MAAM,EAAE,CAAC;QACtB,KAAK,MAAM;YACT,OAAO,SAAS,CAAC,MAAM,CAAC,CAAC;QAC3B,KAAK,SAAS;YACZ,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC;QAC5B;YACE,MAAM,IAAI,KAAK,CAAC,mBAAmB,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;IACzD,CAAC;AACH,CAAC;AAED,KAAK,UAAU,UAAU,CAAC,MAAiB;IACzC,IAAI,CAAC,MAAM,CAAC,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;IAE5D,IAAI,MAAM,CAAC,YAAY,IAAI,UAAU,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC;QAC3D,MAAM,QAAQ,GAAG,cAAc,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AACxE,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAChC,OAAO,kBAAkB,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EACL,qBAAqB,EACrB,iBAAiB,GAClB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAElD,MAAM,MAAM,GAAG,YAAY,EAAE,CAAC;AAE9B,MAAM,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC,CAAC;AAE5D,KAAK,UAAU,MAAM;IACnB,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;IAEhC,QAAQ,MAAM,CAAC,MAAM,EAAE,CAAC;QACtB,KAAK,MAAM;YACT,OAAO,SAAS,CAAC,MAAM,CAAC,CAAC;QAC3B,KAAK,SAAS;YACZ,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC;QAC5B;YACE,MAAM,IAAI,KAAK,CAAC,mBAAmB,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;IACzD,CAAC;AACH,CAAC;AAED,KAAK,UAAU,UAAU,CAAC,MAAiB;IACzC,IAAI,CAAC,MAAM,CAAC,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;IAE5D,IAAI,MAAM,CAAC,YAAY,IAAI,UAAU,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC;QAC3D,MAAM,QAAQ,GAAG,cAAc,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,YAAY,EAAE,MAAM,EAAE,CAAC,CAAC;QAEvE,MAAM,QAAQ,GAAG,IAAI,kBAAkB,EAAE,CAAC;QAC1C,MAAM,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAEjC,MAAM,qBAAqB,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;QACrD,MAAM,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAC;IAC7D,CAAC;SAAM,CAAC;QACN,MAAM,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC;QAC5D,MAAM,iBAAiB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACzC,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/dist/context.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.js","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":""}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { BaseContext } from "@adeficior/pack-resolver";
|
|
1
2
|
import type { IdInput } from "../../common/id.js";
|
|
2
3
|
import type { Blockstate } from "../../schema/assets/blockstate.js";
|
|
3
4
|
import type { ClearableEmitter } from "../index.js";
|
|
@@ -10,7 +11,7 @@ export default class BlockstateEmitter implements BlockstateRules, ClearableEmit
|
|
|
10
11
|
private readonly custom;
|
|
11
12
|
private filePath;
|
|
12
13
|
add(id: IdInput, blockstate: Blockstate): void;
|
|
13
|
-
|
|
14
|
+
resolver(context: BaseContext): import("@adeficior/pack-resolver").Resolver<import("@adeficior/pack-resolver").Acceptable, BaseContext>;
|
|
14
15
|
clear(): void;
|
|
15
16
|
basic(id: IdInput, model?: `${string}:${string}`): void;
|
|
16
17
|
cog(id: IdInput, model?: `${string}:${string}`): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blockstates.js","sourceRoot":"","sources":["../../../src/emit/assets/blockstates.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"blockstates.js","sourceRoot":"","sources":["../../../src/emit/assets/blockstates.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5C,OAAO,aAAa,MAAM,cAAc,CAAC;AASzC,MAAM,CAAC,OAAO,OAAO,iBAAiB;IAGnB,MAAM,GAAG,IAAI,aAAa,CAAa,IAAI,CAAC,QAAQ,CAAC,CAAC;IAE/D,QAAQ,CAAC,EAAM;QACrB,OAAO,UAAU,EAAE,CAAC,SAAS,gBAAgB,EAAE,CAAC,IAAI,OAAO,CAAC;IAC9D,CAAC;IAED,GAAG,CAAC,EAAW,EAAE,UAAsB;QACrC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;IAClC,CAAC;IAED,QAAQ,CAAC,OAAoB;QAC3B,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACvC,CAAC;IAED,KAAK;QACH,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,EAAW,EAAE,KAAK,GAAG,MAAM,CAAC,EAAE,EAAE,QAAQ,CAAC;QAC7C,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE;YACX,QAAQ,EAAE;gBACR,EAAE,EAAE;oBACF,KAAK;iBACN;aACF;SACF,CAAC,CAAC;IACL,CAAC;IAED,GAAG,CAAC,EAAW,EAAE,KAAK,GAAG,MAAM,CAAC,EAAE,EAAE,QAAQ,CAAC;QAC3C,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE;YACX,QAAQ,EAAE;gBACR,QAAQ,EAAE;oBACR,KAAK;oBACL,CAAC,EAAE,EAAE;oBACL,CAAC,EAAE,EAAE;iBACN;gBACD,QAAQ,EAAE;oBACR,KAAK;iBACN;gBACD,QAAQ,EAAE;oBACR,KAAK;oBACL,CAAC,EAAE,EAAE;oBACL,CAAC,EAAE,GAAG;iBACP;aACF;SACF,CAAC,CAAC;IACL,CAAC;CACF"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { InferIds, RegistryId } from "@adeficior/data-modifier/generated";
|
|
2
|
+
import { type BaseContext } from "@adeficior/pack-resolver";
|
|
2
3
|
import type { IdInput } from "../../common/id.js";
|
|
3
4
|
import type { LangDefinition } from "../../schema/assets/lang.js";
|
|
4
5
|
import type { ClearableEmitter, RegistryProvider } from "../index.js";
|
|
@@ -22,7 +23,7 @@ export default class LangEmitter implements LangRules, ClearableEmitter {
|
|
|
22
23
|
private custom;
|
|
23
24
|
private rules;
|
|
24
25
|
constructor(registry: RegistryProvider<LangDefinition>);
|
|
25
|
-
|
|
26
|
+
resolver(context: BaseContext): import("@adeficior/pack-resolver").Resolver<import("@adeficior/pack-resolver").Acceptable, BaseContext>;
|
|
26
27
|
clear(): void;
|
|
27
28
|
private langPath;
|
|
28
29
|
replaceValue(match: string | RegExp, value: string, options?: ReplaceOptions): void;
|
package/dist/emit/assets/lang.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { arrayOrSelf, simpleResolver } from "@adeficior/pack-resolver";
|
|
1
|
+
import { arrayOrSelf, simpleResolver, } from "@adeficior/pack-resolver";
|
|
2
2
|
import { mapValues, omitBy } from "lodash-es";
|
|
3
3
|
import { createId, encodeId } from "../../common/id.js";
|
|
4
4
|
import Registry from "../../common/registry.js";
|
|
@@ -10,36 +10,38 @@ export default class LangEmitter {
|
|
|
10
10
|
constructor(registry) {
|
|
11
11
|
this.registry = registry;
|
|
12
12
|
}
|
|
13
|
-
resolver
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
(rule.
|
|
19
|
-
rule.namespaces.
|
|
13
|
+
resolver(context) {
|
|
14
|
+
return simpleResolver(async (acceptor) => {
|
|
15
|
+
const missingCustomFiles = new Set(this.custom.keys());
|
|
16
|
+
await this.registry.forEachAsync(async (lang, id) => {
|
|
17
|
+
const allRules = this.rules.filter((rule) => {
|
|
18
|
+
return ((rule.languages.length === 0 || rule.languages.includes(id.path)) &&
|
|
19
|
+
(rule.namespaces.length === 0 ||
|
|
20
|
+
rule.namespaces.includes(id.namespace)));
|
|
21
|
+
});
|
|
22
|
+
const replaced = omitBy(mapValues(lang, (value, key) => {
|
|
23
|
+
const rules = allRules.filter((rule) => rule.key?.(key) || rule.value?.(value));
|
|
24
|
+
if (rules.length === 0)
|
|
25
|
+
return undefined;
|
|
26
|
+
return rules.reduce((previous, rule) => rule.replacer(previous), value);
|
|
27
|
+
}), (it) => !it);
|
|
28
|
+
const custom = this.custom.get(id) ?? {};
|
|
29
|
+
const output = {
|
|
30
|
+
...replaced,
|
|
31
|
+
...custom,
|
|
32
|
+
};
|
|
33
|
+
if (Object.keys(output).length > 0) {
|
|
34
|
+
missingCustomFiles.delete(encodeId(id));
|
|
35
|
+
const path = this.langPath(id);
|
|
36
|
+
await acceptor(path, toJson(output));
|
|
37
|
+
}
|
|
20
38
|
});
|
|
21
|
-
|
|
22
|
-
const
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
const custom = this.custom.get(id) ?? {};
|
|
28
|
-
const output = {
|
|
29
|
-
...replaced,
|
|
30
|
-
...custom,
|
|
31
|
-
};
|
|
32
|
-
if (Object.keys(output).length > 0) {
|
|
33
|
-
missingCustomFiles.delete(encodeId(id));
|
|
34
|
-
const path = this.langPath(id);
|
|
35
|
-
await acceptor(path, toJson(output));
|
|
36
|
-
}
|
|
37
|
-
});
|
|
38
|
-
await Promise.all(Array.from(missingCustomFiles).map(async (id) => {
|
|
39
|
-
const path = this.langPath(createId(id));
|
|
40
|
-
await acceptor(path, toJson(this.custom.get(id)));
|
|
41
|
-
}));
|
|
42
|
-
});
|
|
39
|
+
await Promise.all(Array.from(missingCustomFiles).map(async (id) => {
|
|
40
|
+
const path = this.langPath(createId(id));
|
|
41
|
+
await acceptor(path, toJson(this.custom.get(id)));
|
|
42
|
+
}));
|
|
43
|
+
}, context);
|
|
44
|
+
}
|
|
43
45
|
clear() {
|
|
44
46
|
this.rules = [];
|
|
45
47
|
this.custom.clear();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lang.js","sourceRoot":"","sources":["../../../src/emit/assets/lang.ts"],"names":[],"mappings":"AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"lang.js","sourceRoot":"","sources":["../../../src/emit/assets/lang.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { BaseContext } from "@adeficior/pack-resolver";
|
|
2
2
|
import type { IdInput, NormalizedId } from "../../common/id.js";
|
|
3
3
|
import type { Model } from "../../schema/assets/model.js";
|
|
4
4
|
import type { ClearableEmitter } from "../index.js";
|
|
@@ -14,9 +14,9 @@ export interface ModelRulesGroup {
|
|
|
14
14
|
}
|
|
15
15
|
export default class ModelEmitter implements ModelRules, ClearableEmitter {
|
|
16
16
|
private readonly custom;
|
|
17
|
-
readonly resolver: Resolver;
|
|
18
17
|
constructor(type: string);
|
|
19
18
|
clear(): void;
|
|
19
|
+
resolver(context: BaseContext): import("@adeficior/pack-resolver").Resolver<import("@adeficior/pack-resolver").Acceptable, BaseContext>;
|
|
20
20
|
add(id: IdInput, model: Model): `${string}:${string}`;
|
|
21
21
|
cubeAll(id: IdInput, texture?: `${string}:${string}`): `${string}:${string}`;
|
|
22
22
|
flat(id: IdInput, texture?: `${string}:${string}`): `${string}:${string}`;
|
|
@@ -2,15 +2,16 @@ import { encodeId, prefix, suffix } from "../../common/id.js";
|
|
|
2
2
|
import CustomEmitter from "../custom.js";
|
|
3
3
|
export default class ModelEmitter {
|
|
4
4
|
custom;
|
|
5
|
-
resolver;
|
|
6
5
|
constructor(type) {
|
|
7
6
|
this.custom = new CustomEmitter((id) => `assets/${id.namespace}/models/${type}/${id.path}.json`);
|
|
8
|
-
this.resolver = this.custom.resolver;
|
|
9
7
|
}
|
|
10
8
|
// TODO helper WrappedEmitter?
|
|
11
9
|
clear() {
|
|
12
10
|
this.custom.clear();
|
|
13
11
|
}
|
|
12
|
+
resolver(context) {
|
|
13
|
+
return this.custom.resolver(context);
|
|
14
|
+
}
|
|
14
15
|
add(id, model) {
|
|
15
16
|
this.custom.add(id, model);
|
|
16
17
|
return encodeId(id);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"models.js","sourceRoot":"","sources":["../../../src/emit/assets/models.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE9D,OAAO,aAAa,MAAM,cAAc,CAAC;AAkBzC,MAAM,CAAC,OAAO,OAAO,YAAY;IACd,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"models.js","sourceRoot":"","sources":["../../../src/emit/assets/models.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE9D,OAAO,aAAa,MAAM,cAAc,CAAC;AAkBzC,MAAM,CAAC,OAAO,OAAO,YAAY;IACd,MAAM,CAAC;IAExB,YAAY,IAAY;QACtB,IAAI,CAAC,MAAM,GAAG,IAAI,aAAa,CAC7B,CAAC,EAAE,EAAE,EAAE,CAAC,UAAU,EAAE,CAAC,SAAS,WAAW,IAAI,IAAI,EAAE,CAAC,IAAI,OAAO,CAChE,CAAC;IACJ,CAAC;IAED,8BAA8B;IAC9B,KAAK;QACH,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IACtB,CAAC;IAED,QAAQ,CAAC,OAAoB;QAC3B,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACvC,CAAC;IAED,GAAG,CAAC,EAAW,EAAE,KAAY;QAC3B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QAC3B,OAAO,QAAQ,CAAC,EAAE,CAAC,CAAC;IACtB,CAAC;IAED,OAAO,CAAC,EAAW,EAAE,OAAO,GAAG,MAAM,CAAC,EAAE,EAAE,QAAQ,CAAC;QACjD,OAAO,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE;YAClB,MAAM,EAAE,0BAA0B;YAClC,QAAQ,EAAE;gBACR,GAAG,EAAE,OAAO;aACb;SACF,CAAC,CAAC;IACL,CAAC;IAED,IAAI,CAAC,EAAW,EAAE,OAAO,GAAG,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC;QAC7C,OAAO,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE;YAClB,MAAM,EAAE,0BAA0B;YAClC,QAAQ,EAAE;gBACR,MAAM,EAAE,OAAO;aAChB;SACF,CAAC,CAAC;IACL,CAAC;IAED,GAAG,CAAC,EAAW,EAAE,KAAc,EAAE,OAAO,GAAG,MAAM,CAAC,EAAE,EAAE,QAAQ,CAAC;QAC7D,MAAM,QAAQ,GAAG,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC;QACpC,MAAM,CAAC,MAAM,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;YACnC,IAAI,KAAK,EAAE,CAAC;gBACV,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE;oBAC9B,MAAM,EAAE,6BAA6B,GAAG,EAAE;oBAC1C,QAAQ,EAAE;wBACR,GAAG,EAAE,OAAO;wBACZ,QAAQ,EAAE,OAAO;qBAClB;iBACF,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE;oBAC9B,MAAM,EAAE,uBAAuB,GAAG,EAAE;oBACpC,QAAQ,EAAE;wBACR,KAAK,EAAE,OAAO;wBACd,QAAQ,EAAE,OAAO;qBAClB;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,OAAO,MAAO,CAAC;IACjB,CAAC;CACF"}
|
package/dist/emit/blacklist.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { InferIds, RegistryId } from "@adeficior/data-modifier/generated";
|
|
2
|
-
import type { Logger } from "@adeficior/pack-resolver";
|
|
2
|
+
import type { BaseContext, Logger } from "@adeficior/pack-resolver";
|
|
3
3
|
import type { IngredientFilter } from "../common/ingredient/filter.js";
|
|
4
4
|
import type { PackContext } from "../loader/context.js";
|
|
5
5
|
import type { ClearableEmitter } from "./index.js";
|
|
@@ -22,7 +22,7 @@ export default class BlacklistEmitter implements BlacklistRules, ClearableEmitte
|
|
|
22
22
|
hideEntry<T extends RegistryId>(type: T, ...entries: RegistryIdInput<T>[]): void;
|
|
23
23
|
private filterItemIds;
|
|
24
24
|
private resolveIds;
|
|
25
|
-
|
|
25
|
+
resolver(context: BaseContext): import("@adeficior/pack-resolver").Resolver<import("@adeficior/pack-resolver").Acceptable, BaseContext>;
|
|
26
26
|
private emitJei;
|
|
27
27
|
private emitPolytone;
|
|
28
28
|
clear(): void;
|
package/dist/emit/blacklist.js
CHANGED
|
@@ -53,23 +53,25 @@ export default class BlacklistEmitter {
|
|
|
53
53
|
];
|
|
54
54
|
return registries.flatMap((registry) => ingredient.idsFor(registry));
|
|
55
55
|
}
|
|
56
|
-
resolver
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
56
|
+
resolver(context) {
|
|
57
|
+
return simpleResolver(async (acceptor) => {
|
|
58
|
+
const hiddenIds = uniq(this.hidden).sort();
|
|
59
|
+
if (hiddenIds.length === 0)
|
|
60
|
+
return;
|
|
61
|
+
const promises = [];
|
|
62
|
+
if (this.hideModes.includes("jei"))
|
|
63
|
+
promises.push(this.emitJei(acceptor, hiddenIds, context));
|
|
64
|
+
if (this.hideModes.includes("polytone"))
|
|
65
|
+
promises.push(this.emitPolytone(acceptor, hiddenIds, context));
|
|
66
|
+
await Promise.all(promises);
|
|
67
|
+
}, context);
|
|
68
|
+
}
|
|
69
|
+
async emitJei(acceptor, hiddenIds, context) {
|
|
68
70
|
const content = hiddenIds.join("\n");
|
|
69
71
|
const path = "jei/blacklist.cfg";
|
|
70
|
-
await acceptor(path, Promise.resolve(content));
|
|
72
|
+
await acceptor(path, Promise.resolve(content), context);
|
|
71
73
|
}
|
|
72
|
-
async emitPolytone(acceptor, hiddenIds) {
|
|
74
|
+
async emitPolytone(acceptor, hiddenIds, context) {
|
|
73
75
|
const tabs = this.context.lookup.keys("minecraft:creative_mode_tab");
|
|
74
76
|
if (!tabs)
|
|
75
77
|
throw new Error("Cannot use polytone output without creative mod tab registry");
|
|
@@ -83,7 +85,7 @@ export default class BlacklistEmitter {
|
|
|
83
85
|
],
|
|
84
86
|
});
|
|
85
87
|
const path = "assets/generated/polytone/creative_tab_modifiers/hidden.json";
|
|
86
|
-
await acceptor(path, content);
|
|
88
|
+
await acceptor(path, content, context);
|
|
87
89
|
}
|
|
88
90
|
clear() {
|
|
89
91
|
this.hidden = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blacklist.js","sourceRoot":"","sources":["../../src/emit/blacklist.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"blacklist.js","sourceRoot":"","sources":["../../src/emit/blacklist.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { BlockId } from "@adeficior/data-modifier/generated";
|
|
2
|
+
import type { BaseContext } from "@adeficior/pack-resolver";
|
|
2
3
|
import type { IdInput } from "../../common/id.js";
|
|
3
4
|
import type { BlockDefinition, BlockProperties } from "../../schema/content/blockDefinition.js";
|
|
4
5
|
import type { BlockstateRules } from "../assets/blockstates.js";
|
|
@@ -51,7 +52,7 @@ export default class BlockDefinitionEmitter extends AbstractBlockDefinitionRules
|
|
|
51
52
|
private readonly custom;
|
|
52
53
|
private filePath;
|
|
53
54
|
add<T extends BlockDefinition>(id: IdInput, definition: T): T;
|
|
54
|
-
|
|
55
|
+
resolver(context: BaseContext): import("@adeficior/pack-resolver").Resolver<import("@adeficior/pack-resolver").Acceptable, BaseContext>;
|
|
55
56
|
clear(): void;
|
|
56
57
|
}
|
|
57
58
|
export {};
|
|
@@ -48,7 +48,9 @@ export default class BlockDefinitionEmitter extends AbstractBlockDefinitionRules
|
|
|
48
48
|
this.custom.add(id, definition);
|
|
49
49
|
return definition;
|
|
50
50
|
}
|
|
51
|
-
resolver
|
|
51
|
+
resolver(context) {
|
|
52
|
+
return this.custom.resolver(context);
|
|
53
|
+
}
|
|
52
54
|
clear() {
|
|
53
55
|
this.custom.clear();
|
|
54
56
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blockDefinition.js","sourceRoot":"","sources":["../../../src/emit/content/blockDefinition.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"blockDefinition.js","sourceRoot":"","sources":["../../../src/emit/content/blockDefinition.ts"],"names":[],"mappings":"AASA,OAAO,aAAa,MAAM,cAAc,CAAC;AAgCzC,SAAS,iBAAiB,CAAC,IAAsB;IAC/C,IAAI,MAAM,IAAI,IAAI;QAAE,OAAO,IAAI,CAAC,IAAI,CAAC;IACrC,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,OAAgB,4BAA4B;IAE7B;IACA;IACA;IAHnB,YACmB,MAAkB,EAClB,WAA4B,EAC5B,IAAe;QAFf,WAAM,GAAN,MAAM,CAAY;QAClB,gBAAW,GAAX,WAAW,CAAiB;QAC5B,SAAI,GAAJ,IAAI,CAAW;IAC/B,CAAC;IAIJ,KAAK,CACH,EAAW,EACX,EAAE,IAAI,EAAE,GAAG,UAAU,EAA2B,EAChD,OAAgC;QAEhC,IAAI,OAAO,EAAE,KAAK,KAAK,KAAK;YAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAEtD,IAAI,OAAO,EAAE,UAAU,KAAK,KAAK;YAAE,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAE9D,IAAI,OAAO,EAAE,IAAI,KAAK,KAAK;YAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAEjD,OAAO,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE;YAClB,IAAI,EAAE,IAAI,IAAI,OAAO;YACrB,UAAU,EAAE,iBAAiB,CAAC,UAAU,CAAC;SAC1C,CAAC,CAAC;IACL,CAAC;IAED,GAAG,CACD,EAAW,EACX,EACE,IAAI,EACJ,KAAK,GAAG,KAAK,EACb,GAAG,UAAU,EACiC,EAChD,OAAgC;QAEhC,IAAI,OAAO,EAAE,KAAK,KAAK,KAAK;YAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QAEzD,IAAI,OAAO,EAAE,UAAU,KAAK,KAAK;YAAE,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAE5D,IAAI,OAAO,EAAE,IAAI,KAAK,KAAK;YAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAEjD,OAAO,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE;YAClB,IAAI,EAAE,IAAI,IAAI,YAAY;YAC1B,KAAK;YACL,UAAU,EAAE,iBAAiB,CAAC,UAAU,CAAC;SAC1C,CAAC,CAAC;IACL,CAAC;CACF;AAED,MAAM,CAAC,OAAO,OAAO,sBACnB,SAAQ,4BAA4B;IAGnB,MAAM,GAAG,IAAI,aAAa,CAAkB,IAAI,CAAC,QAAQ,CAAC,CAAC;IAEpE,QAAQ,CAAC,EAAM;QACrB,OAAO,WAAW,EAAE,CAAC,SAAS,UAAU,EAAE,CAAC,IAAI,OAAO,CAAC;IACzD,CAAC;IAED,GAAG,CAA4B,EAAW,EAAE,UAAa;QACvD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;QAChC,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,QAAQ,CAAC,OAAoB;QAC3B,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACvC,CAAC;IAED,KAAK;QACH,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IACtB,CAAC;CACF"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { BaseContext } from "@adeficior/pack-resolver";
|
|
1
2
|
import type { IdInput } from "../../common/id.js";
|
|
2
3
|
import type { BlockDefinition } from "../../schema/content/blockDefinition.js";
|
|
3
4
|
import type { ItemDefinition, ItemProperties } from "../../schema/content/itemDefinition.js";
|
|
@@ -29,7 +30,7 @@ export default class ItemDefinitionEmitter implements ItemDefinitionRules, Clear
|
|
|
29
30
|
private filePath;
|
|
30
31
|
add<T extends ItemDefinition>(id: IdInput, definition: T): T;
|
|
31
32
|
clear(): void;
|
|
32
|
-
|
|
33
|
+
resolver(context: BaseContext): import("@adeficior/pack-resolver").Resolver<import("@adeficior/pack-resolver").Acceptable, BaseContext>;
|
|
33
34
|
basic(id: IdInput, { type, ...properties }?: ExtendedItemProperties, options?: ItemDefinitionOptions): {
|
|
34
35
|
type: string;
|
|
35
36
|
properties: {
|
|
@@ -21,7 +21,9 @@ export default class ItemDefinitionEmitter {
|
|
|
21
21
|
clear() {
|
|
22
22
|
this.custom.clear();
|
|
23
23
|
}
|
|
24
|
-
resolver
|
|
24
|
+
resolver(context) {
|
|
25
|
+
return this.custom.resolver(context);
|
|
26
|
+
}
|
|
25
27
|
basic(id, { type, ...properties } = {}, options) {
|
|
26
28
|
if (options?.model !== false)
|
|
27
29
|
this.models.items.flat(id);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"itemDefinition.js","sourceRoot":"","sources":["../../../src/emit/content/itemDefinition.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"itemDefinition.js","sourceRoot":"","sources":["../../../src/emit/content/itemDefinition.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAQ5C,OAAO,aAAa,MAAM,cAAc,CAAC;AAIzC,OAAO,iCAAiC,MAAM,2BAA2B,CAAC;AAgC1E,MAAM,CAAC,OAAO,OAAO,qBAAqB;IAMrB;IACA;IACA;IALF,MAAM,GAAG,IAAI,aAAa,CAAiB,IAAI,CAAC,QAAQ,CAAC,CAAC;IAE3E,YACmB,MAAuB,EACvB,WAA4B,EAC5B,IAAe;QAFf,WAAM,GAAN,MAAM,CAAiB;QACvB,gBAAW,GAAX,WAAW,CAAiB;QAC5B,SAAI,GAAJ,IAAI,CAAW;IAC/B,CAAC;IAEI,QAAQ,CAAC,EAAM;QACrB,OAAO,WAAW,EAAE,CAAC,SAAS,SAAS,EAAE,CAAC,IAAI,OAAO,CAAC;IACxD,CAAC;IAED,GAAG,CAA2B,EAAW,EAAE,UAAa;QACtD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;QAChC,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,KAAK;QACH,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IACtB,CAAC;IAED,QAAQ,CAAC,OAAoB;QAC3B,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACvC,CAAC;IAED,KAAK,CACH,EAAW,EACX,EAAE,IAAI,EAAE,GAAG,UAAU,KAA6B,EAAE,EACpD,OAA+B;QAE/B,IAAI,OAAO,EAAE,KAAK,KAAK,KAAK;YAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAEzD,OAAO,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE;YAClB,IAAI,EAAE,IAAI,IAAI,OAAO;YACrB,UAAU;SACX,CAAC,CAAC;IACL,CAAC;IAEO,qBAAqB,CAAC,EAAW,EAAE,KAA2B;QACpE,IAAI,OAAO,KAAK,KAAK,UAAU;YAAE,OAAO,KAAK,CAAC;QAC9C,MAAM,YAAY,GAAG,iCAAiC,CACpD,EAAE,EACF,IAAI,CAAC,MAAM,CAAC,MAAM,EAClB,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,IAAI,CACV,CAAC;QACF,OAAO,KAAK,CAAC,YAAY,CAAC,CAAC;IAC7B,CAAC;IAED,SAAS,CACP,EAAW,EACX,EACE,KAAK,EACL,IAAI,EACJ,GAAG,UAAU,EAGd,EACD,OAA+B;QAE/B,IAAI,OAAO,EAAE,KAAK,KAAK,KAAK,EAAE,CAAC;YAC7B,MAAM,MAAM,GAAG,MAAM,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;YACpC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;QACxC,CAAC;QAED,MAAM,eAAe,GAAG,IAAI,CAAC,qBAAqB,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QAE9D,OAAO,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE;YAClB,IAAI,EAAE,IAAI,IAAI,YAAY;YAC1B,KAAK,EAAE,eAAe;YACtB,UAAU;SACX,CAAC,CAAC;IACL,CAAC;CACF"}
|
package/dist/emit/custom.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type
|
|
1
|
+
import { type BaseContext } from "@adeficior/pack-resolver";
|
|
2
2
|
import type { IdInput } from "../common/id.js";
|
|
3
3
|
import type { ClearableEmitter, PathProvider } from "./index.js";
|
|
4
4
|
export default class CustomEmitter<TEntry> implements ClearableEmitter {
|
|
@@ -10,6 +10,6 @@ export default class CustomEmitter<TEntry> implements ClearableEmitter {
|
|
|
10
10
|
add(id: IdInput, value: TEntry): void;
|
|
11
11
|
merge(id: IdInput, entry: TEntry, merger: (a: TEntry, b: TEntry) => TEntry): void;
|
|
12
12
|
modify(id: IdInput, factory: (existing?: TEntry) => TEntry): void;
|
|
13
|
-
|
|
13
|
+
resolver(context: BaseContext): import("@adeficior/pack-resolver").Resolver<import("@adeficior/pack-resolver").Acceptable, BaseContext>;
|
|
14
14
|
has(id: IdInput): boolean;
|
|
15
15
|
}
|
package/dist/emit/custom.js
CHANGED
|
@@ -30,12 +30,14 @@ export default class CustomEmitter {
|
|
|
30
30
|
else
|
|
31
31
|
this.add(id, factory());
|
|
32
32
|
}
|
|
33
|
-
resolver
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
33
|
+
resolver(context) {
|
|
34
|
+
return simpleResolver(async (acceptor) => {
|
|
35
|
+
await this.customEntries.forEachAsync(async (entry, id) => {
|
|
36
|
+
const path = this.pathProvider(id);
|
|
37
|
+
await acceptor(path, Promise.resolve(this.encoder(entry)));
|
|
38
|
+
});
|
|
39
|
+
}, context);
|
|
40
|
+
}
|
|
39
41
|
has(id) {
|
|
40
42
|
return this.customEntries.has(id);
|
|
41
43
|
}
|
package/dist/emit/custom.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"custom.js","sourceRoot":"","sources":["../../src/emit/custom.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,
|
|
1
|
+
{"version":3,"file":"custom.js","sourceRoot":"","sources":["../../src/emit/custom.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAoB,MAAM,0BAA0B,CAAC;AAE5E,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,QAAQ,MAAM,uBAAuB,CAAC;AAC7C,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAG1C,MAAM,CAAC,OAAO,OAAO,aAAa;IAEb;IACA;IAFnB,YACmB,YAA0B,EAC1B,UAEe,MAAM;QAHrB,iBAAY,GAAZ,YAAY,CAAc;QAC1B,YAAO,GAAP,OAAO,CAEc;IACrC,CAAC;IAEa,aAAa,GAAG,IAAI,QAAQ,EAAU,CAAC;IAExD,KAAK;QACH,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;IAC7B,CAAC;IAED,GAAG,CAAC,EAAW,EAAE,KAAa;QAC5B,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;IAC9C,CAAC;IAED,KAAK,CAAC,EAAW,EAAE,KAAa,EAAE,MAAwC;QACxE,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,QAAQ,EAAE,EAAE;YAC3B,IAAI,QAAQ;gBAAE,OAAO,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;YAC7C,OAAO,KAAK,CAAC;QACf,CAAC,CAAC,CAAC;IACL,CAAC;IAED,MAAM,CAAC,EAAW,EAAE,OAAsC;QACxD,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC5C,IAAI,QAAQ;YAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;;YACzC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;IAC/B,CAAC;IAED,QAAQ,CAAC,OAAoB;QAC3B,OAAO,cAAc,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE;YACvC,MAAM,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE;gBACxD,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;gBACnC,MAAM,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC7D,CAAC,CAAC,CAAC;QACL,CAAC,EAAE,OAAO,CAAC,CAAC;IACd,CAAC;IAED,GAAG,CAAC,EAAW;QACb,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACpC,CAAC;CACF"}
|
package/dist/emit/data/loot.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type
|
|
1
|
+
import { type BaseContext, type Logger } from "@adeficior/pack-resolver";
|
|
2
2
|
import { type CommonFilter, type Predicate } from "../../common/filters.js";
|
|
3
3
|
import type { IdInput, NormalizedId } from "../../common/id.js";
|
|
4
4
|
import type { IngredientFilter } from "../../common/ingredient/filter.js";
|
|
@@ -29,8 +29,8 @@ export default class LootTableEmitter implements LootRules, ClearableEmitter {
|
|
|
29
29
|
private readonly customTables;
|
|
30
30
|
private readonly customModifiers;
|
|
31
31
|
private readonly ruled;
|
|
32
|
-
readonly resolver: Resolver;
|
|
33
32
|
constructor(logger: Logger, lootTables: RegistryProvider<LootTable>, context: PackContext);
|
|
33
|
+
resolver(context: BaseContext): import("@adeficior/pack-resolver").Resolver<import("@adeficior/pack-resolver").Acceptable, BaseContext>;
|
|
34
34
|
private tablePath;
|
|
35
35
|
private modifierPath;
|
|
36
36
|
clear(): void;
|
package/dist/emit/data/loot.js
CHANGED
|
@@ -2,7 +2,7 @@ import { combineResolvers, } from "@adeficior/pack-resolver";
|
|
|
2
2
|
import { resolveIDTest, } from "../../common/filters.js";
|
|
3
3
|
import { encodeId, prefix } from "../../common/id.js";
|
|
4
4
|
import createIngredientPredicate from "../../common/ingredient/filter.js";
|
|
5
|
-
import {
|
|
5
|
+
import { lootTableFolder } from "../../packFormat.js";
|
|
6
6
|
import { createLootEntry, replaceItemInTable } from "../../parser/lootTable.js";
|
|
7
7
|
import { EmptyLootEntry, LootTableSchema } from "../../schema/data/loot.js";
|
|
8
8
|
import CustomEmitter from "../custom.js";
|
|
@@ -22,24 +22,23 @@ export default class LootTableEmitter {
|
|
|
22
22
|
customTables = new CustomEmitter((it) => this.tablePath(it));
|
|
23
23
|
customModifiers = new CustomEmitter((it) => this.modifierPath(it));
|
|
24
24
|
ruled;
|
|
25
|
-
resolver;
|
|
26
25
|
constructor(logger, lootTables, context) {
|
|
27
26
|
this.logger = logger;
|
|
28
27
|
this.lootTables = lootTables;
|
|
29
28
|
this.context = context;
|
|
30
|
-
this.ruled = new RuledEmitter(this.
|
|
29
|
+
this.ruled = new RuledEmitter(this.lootTables, (id) => this.tablePath(id), EMPTY_LOOT_TABLE,
|
|
31
30
|
// TODO also add value object here?
|
|
32
31
|
(it) => it, (id) => this.customTables.has(id));
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
this.
|
|
32
|
+
}
|
|
33
|
+
resolver(context) {
|
|
34
|
+
return combineResolvers([
|
|
35
|
+
this.ruled.resolver(context),
|
|
36
|
+
this.customTables.resolver(context),
|
|
37
|
+
this.customModifiers.resolver(context),
|
|
37
38
|
], { async: true });
|
|
38
39
|
}
|
|
39
40
|
tablePath(id) {
|
|
40
|
-
const folder =
|
|
41
|
-
? "loot_table"
|
|
42
|
-
: "loot_tables";
|
|
41
|
+
const folder = lootTableFolder(this.context.packFormat);
|
|
43
42
|
return `data/${id.namespace}/${folder}/${id.path}.json`;
|
|
44
43
|
}
|
|
45
44
|
modifierPath(id) {
|
|
@@ -67,13 +66,13 @@ export default class LootTableEmitter {
|
|
|
67
66
|
}
|
|
68
67
|
disable(test) {
|
|
69
68
|
const predicates = this.resolveLootTableTest(test);
|
|
70
|
-
this.ruled.addRule(new LootTableRule(
|
|
69
|
+
this.ruled.addRule(new LootTableRule({ operation: "remove", test }, predicates.id, predicates.output, () => null));
|
|
71
70
|
}
|
|
72
71
|
replaceOutput(from, to, additionalTests = {}) {
|
|
73
72
|
const predicates = this.resolveLootTableTest(additionalTests);
|
|
74
73
|
const outputPredicate = this.resolveIngredientTest(from);
|
|
75
74
|
const replacer = replaceItemInTable(outputPredicate, createLootEntry(to, this.context.lookup));
|
|
76
|
-
this.ruled.addRule(new LootTableRule(
|
|
75
|
+
this.ruled.addRule(new LootTableRule({ operation: "replace output", from, to, test: additionalTests }, predicates.id, [outputPredicate, ...predicates.output], replacer));
|
|
77
76
|
}
|
|
78
77
|
removeOutput(from, additionalTests) {
|
|
79
78
|
this.replaceOutput(from, EmptyLootEntry, additionalTests);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loot.js","sourceRoot":"","sources":["../../../src/emit/data/loot.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,GAGjB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,aAAa,GAGd,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAEtD,OAAO,yBAAyB,MAAM,mCAAmC,CAAC;AAG1E,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"loot.js","sourceRoot":"","sources":["../../../src/emit/data/loot.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,GAGjB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,aAAa,GAGd,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAEtD,OAAO,yBAAyB,MAAM,mCAAmC,CAAC;AAG1E,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAEhF,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5E,OAAO,aAAa,MAAM,cAAc,CAAC;AAEzC,OAAO,aAAa,MAAM,sBAAsB,CAAC;AACjD,OAAO,YAAY,MAAM,aAAa,CAAC;AAEvC,MAAM,CAAC,MAAM,gBAAgB,GAAc;IACzC,IAAI,EAAE,iBAAiB;IACvB,KAAK,EAAE,EAAE;CACV,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAiB;IAC/C,IAAI,EAAE,MAAM;CACb,CAAC;AA2BF,MAAM,CAAC,OAAO,OAAO,gBAAgB;IAWhB;IACA;IACA;IAZF,YAAY,GAAG,IAAI,aAAa,CAAY,CAAC,EAAE,EAAE,EAAE,CAClE,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CACnB,CAAC;IACe,eAAe,GAAG,IAAI,aAAa,CAAe,CAAC,EAAE,EAAE,EAAE,CACxE,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,CACtB,CAAC;IAEe,KAAK,CAAyC;IAE/D,YACmB,MAAc,EACd,UAAuC,EACvC,OAAoB;QAFpB,WAAM,GAAN,MAAM,CAAQ;QACd,eAAU,GAAV,UAAU,CAA6B;QACvC,YAAO,GAAP,OAAO,CAAa;QAErC,IAAI,CAAC,KAAK,GAAG,IAAI,YAAY,CAC3B,IAAI,CAAC,UAAU,EACf,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,EAC1B,gBAAgB;QAChB,mCAAmC;QACnC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EACV,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAClC,CAAC;IACJ,CAAC;IAED,QAAQ,CAAC,OAAoB;QAC3B,OAAO,gBAAgB,CACrB;YACE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC;YAC5B,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,OAAO,CAAC;YACnC,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,OAAO,CAAC;SACvC,EACD,EAAE,KAAK,EAAE,IAAI,EAAE,CAChB,CAAC;IACJ,CAAC;IAEO,SAAS,CAAC,EAAM;QACtB,MAAM,MAAM,GAAG,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACxD,OAAO,QAAQ,EAAE,CAAC,SAAS,IAAI,MAAM,IAAI,EAAE,CAAC,IAAI,OAAO,CAAC;IAC1D,CAAC;IAEO,YAAY,CAAC,EAAM;QACzB,OAAO,QAAQ,EAAE,CAAC,SAAS,mBAAmB,EAAE,CAAC,IAAI,OAAO,CAAC;IAC/D,CAAC;IAED,KAAK;QACH,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;QAC1B,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;QAC7B,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;IAED,qBAAqB,CAAC,IAAsB;QAC1C,OAAO,yBAAyB,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACvD,CAAC;IAEO,oBAAoB,CAAC,IAAmB;QAC9C,MAAM,EAAE,GAAoB,EAAE,CAAC;QAC/B,MAAM,MAAM,GAA4B,EAAE,CAAC;QAE3C,IAAI,IAAI,CAAC,EAAE;YAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QAC7C,IAAI,IAAI,CAAC,MAAM;YAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;QAEtE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC;IACxB,CAAC;IAED,GAAG,CAAC,EAAW,EAAE,KAAgB;QAC/B,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,EAAE,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IAC1D,CAAC;IAED,OAAO,CAAC,IAAmB;QACzB,MAAM,UAAU,GAAG,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;QACnD,IAAI,CAAC,KAAK,CAAC,OAAO,CAChB,IAAI,aAAa,CACf,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,EAC7B,UAAU,CAAC,EAAE,EACb,UAAU,CAAC,MAAM,EACjB,GAAG,EAAE,CAAC,IAAI,CACX,CACF,CAAC;IACJ,CAAC;IAED,aAAa,CACX,IAAsB,EACtB,EAAiB,EACjB,kBAAiC,EAAE;QAEnC,MAAM,UAAU,GAAG,IAAI,CAAC,oBAAoB,CAAC,eAAe,CAAC,CAAC;QAC9D,MAAM,eAAe,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;QACzD,MAAM,QAAQ,GAAG,kBAAkB,CACjC,eAAe,EACf,eAAe,CAAC,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CACzC,CAAC;QACF,IAAI,CAAC,KAAK,CAAC,OAAO,CAChB,IAAI,aAAa,CACf,EAAE,SAAS,EAAE,gBAAgB,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,EAChE,UAAU,CAAC,EAAE,EACb,CAAC,eAAe,EAAE,GAAG,UAAU,CAAC,MAAM,CAAC,EACvC,QAAQ,CACT,CACF,CAAC;IACJ,CAAC;IAED,YAAY,CAAC,IAAsB,EAAE,eAA+B;QAClE,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,cAAc,EAAE,eAAe,CAAC,CAAC;IAC5D,CAAC;IAED,KAAK,CAAC,EAAW;QACf,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,CAAC,EAAE;YAC9B,IAAI,EAAE,iBAAiB;YACvB,KAAK,EAAE;gBACL;oBACE,KAAK,EAAE,CAAC;oBACR,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,gBAAgB;4BACtB,IAAI,EAAE,QAAQ,CAAC,EAAE,CAAC;yBACnB;qBACF;oBACD,UAAU,EAAE;wBACV;4BACE,SAAS,EAAE,8BAA8B;yBAC1C;qBACF;iBACF;aACF;SACF,CAAC,CAAC;IACL,CAAC;IAED,gBAAgB,CAAC,EAAW;QAC1B,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,mBAAmB,CAAC,CAAC;IAC5C,CAAC;IAED,WAAW,CAAyB,EAAW,EAAE,KAAQ;QACvD,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;IACtC,CAAC;CACF"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { RecipeSerializerId } from "@adeficior/data-modifier/generated";
|
|
2
|
-
import type {
|
|
2
|
+
import type { BaseContext, Logger } from "@adeficior/pack-resolver";
|
|
3
3
|
import { type CommonFilter } from "../../common/filters.js";
|
|
4
4
|
import type { IdInput, NormalizedId } from "../../common/id.js";
|
|
5
5
|
import type { IngredientFilter } from "../../common/ingredient/filter.js";
|
|
@@ -33,8 +33,8 @@ export default class RecipeEmitter implements RecipeRules, ClearableEmitter {
|
|
|
33
33
|
private readonly serializer;
|
|
34
34
|
private readonly custom;
|
|
35
35
|
private readonly ruled;
|
|
36
|
-
readonly resolver: Resolver;
|
|
37
36
|
constructor(logger: Logger, registry: RegistryProvider<RecipeHolder>, context: PackContext, serializer: RecipeSerializer);
|
|
37
|
+
resolver(context: BaseContext): import("@adeficior/pack-resolver").Resolver<import("@adeficior/pack-resolver").Acceptable, BaseContext>;
|
|
38
38
|
private recipePath;
|
|
39
39
|
private createIngredientPredicate;
|
|
40
40
|
private createResultPredicate;
|