@adeficior/data-modifier-loot 2.0.0-rc.20260816171656 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/emitter.d.ts CHANGED
@@ -8,7 +8,7 @@ type LootTableTest = Readonly<{
8
8
  id?: CommonFilter<NormalizedId>;
9
9
  output?: IngredientFilter;
10
10
  }>;
11
- export interface LootRules {
11
+ export type LootEmitter = {
12
12
  replaceOutput(from: IngredientFilter, to: LootItemInput, additionalTests?: LootTableTest): void;
13
13
  removeOutput(from: IngredientFilter, additionalTests?: LootTableTest): void;
14
14
  add(id: IdInput, value: LootTable): void;
@@ -16,8 +16,8 @@ export interface LootRules {
16
16
  block(id: IdInput): void;
17
17
  addModifier<T extends LootModifier>(id: IdInput, value: T): void;
18
18
  disabledModifier(id: IdInput): void;
19
- }
20
- export declare class LootTableEmitter implements LootRules, ClearableEmitter {
19
+ };
20
+ export declare class LootEmitterImpl implements LootEmitter, ClearableEmitter {
21
21
  private readonly packFormat;
22
22
  private readonly lootTables;
23
23
  private readonly lookup;
package/dist/emitter.js CHANGED
@@ -11,7 +11,7 @@ export const EMPTY_LOOT_TABLE = {
11
11
  export const EMPTY_LOOT_MODIFIER = {
12
12
  type: "noop",
13
13
  };
14
- export class LootTableEmitter {
14
+ export class LootEmitterImpl {
15
15
  packFormat;
16
16
  lootTables;
17
17
  lookup;
@@ -1 +1 @@
1
- {"version":3,"file":"emitter.js","sourceRoot":"","sources":["../src/emitter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"emitter.js","sourceRoot":"","sources":["../src/emitter.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- export { EMPTY_LOOT_MODIFIER, EMPTY_LOOT_TABLE, type LootRules, } from "./emitter";
1
+ export { EMPTY_LOOT_MODIFIER, EMPTY_LOOT_TABLE, type LootEmitter, } from "./emitter";
2
2
  export type * from "./helper";
3
3
  export type * from "./loader";
4
4
  export { default } from "./module";
package/dist/module.d.ts CHANGED
@@ -1,11 +1,11 @@
1
- import type { LootRules } from "./emitter";
1
+ import type { LootEmitter } from "./emitter";
2
2
  import { LootTableLoader } from "./loader";
3
3
  declare const _default: import("@adeficior/data-modifier-core").ModuleConfig<{
4
4
  loaders: {
5
5
  loot: LootTableLoader;
6
6
  };
7
7
  emitters: {
8
- loot: LootRules;
8
+ loot: LootEmitter;
9
9
  };
10
10
  }>;
11
11
  export default _default;
package/dist/module.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { defineModule } from "@adeficior/data-modifier-core";
2
2
  import { name } from "../package.json";
3
- import { LootTableEmitter } from "./emitter";
3
+ import { LootEmitterImpl } from "./emitter";
4
4
  import { lootTablePattern } from "./helper";
5
5
  import { LootTableLoader } from "./loader";
6
6
  export default defineModule({
@@ -14,12 +14,13 @@ export default defineModule({
14
14
  loot: "LootTableLoader",
15
15
  },
16
16
  emitters: {
17
- loot: "LootRules",
17
+ loot: "LootEmitter",
18
18
  },
19
19
  },
20
+ promote: [{ key: "loot", service: "emitter:loot" }],
20
21
  setup(pack) {
21
22
  const loader = pack.loader("loot", () => new LootTableLoader(), lootTablePattern(pack.options.packFormat));
22
- pack.emitter("loot", (container) => new LootTableEmitter(pack.options.packFormat, loader(), container.get("registries"), container.get("predicates")));
23
+ pack.emitter("loot", (container) => new LootEmitterImpl(pack.options.packFormat, loader(), container.get("registries"), container.get("predicates")));
23
24
  },
24
25
  });
25
26
  //# sourceMappingURL=module.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"module.js","sourceRoot":"","sources":["../src/module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAE7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAE3C,eAAe,YAAY,CAOxB;IACD,YAAY,EAAE,IAAI;IAClB,YAAY,EAAE;QACZ,sBAAsB;QACtB,+BAA+B,EAAE,UAAU;KAC5C;IACD,KAAK,EAAE;QACL,OAAO,EAAE;YACP,IAAI,EAAE,iBAAiB;SACxB;QACD,QAAQ,EAAE;YACR,IAAI,EAAE,WAAW;SAClB;KACF;IACD,KAAK,CAAC,IAAI;QACR,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CACxB,MAAM,EACN,GAAG,EAAE,CAAC,IAAI,eAAe,EAAE,EAC3B,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAC1C,CAAC;QAEF,IAAI,CAAC,OAAO,CACV,MAAM,EACN,CAAC,SAAS,EAAE,EAAE,CACZ,IAAI,gBAAgB,CAClB,IAAI,CAAC,OAAO,CAAC,UAAU,EACvB,MAAM,EAAE,EACR,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC,EAC3B,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC,CAC5B,CACJ,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"}
1
+ {"version":3,"file":"module.js","sourceRoot":"","sources":["../src/module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAEvC,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAE3C,eAAe,YAAY,CAOxB;IACD,YAAY,EAAE,IAAI;IAClB,YAAY,EAAE;QACZ,sBAAsB;QACtB,+BAA+B,EAAE,UAAU;KAC5C;IACD,KAAK,EAAE;QACL,OAAO,EAAE;YACP,IAAI,EAAE,iBAAiB;SACxB;QACD,QAAQ,EAAE;YACR,IAAI,EAAE,aAAa;SACpB;KACF;IACD,OAAO,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC;IACnD,KAAK,CAAC,IAAI;QACR,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CACxB,MAAM,EACN,GAAG,EAAE,CAAC,IAAI,eAAe,EAAE,EAC3B,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAC1C,CAAC;QAEF,IAAI,CAAC,OAAO,CACV,MAAM,EACN,CAAC,SAAS,EAAE,EAAE,CACZ,IAAI,eAAe,CACjB,IAAI,CAAC,OAAO,CAAC,UAAU,EACvB,MAAM,EAAE,EACR,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC,EAC3B,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC,CAC5B,CACJ,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"}
@@ -1,12 +1,16 @@
1
- import { LootTableEmitter } from "../emitter";
1
+ import type { TestDataOptions } from "@adeficior/testing";
2
+ import { LootEmitterImpl } from "../emitter";
2
3
  import { LootTableLoader } from "../loader";
3
- export declare function setupLootLoader(version: string, mods?: string[]): {
4
+ export type TestLootLoaderOptions = TestDataOptions & {
5
+ mods?: string[];
6
+ };
7
+ export declare function setupLootLoader(version: string, { mods, ...resolverOptions }?: TestLootLoaderOptions): {
4
8
  loader: LootTableLoader;
5
9
  logger: import("@adeficior/pack-resolver/testing").TestLogger;
6
10
  };
7
- export declare function setupLootEmitter(version: string, mods?: string[]): {
11
+ export declare function setupLootEmitter(version: string, options?: TestLootLoaderOptions): {
8
12
  loader: LootTableLoader;
9
- emitter: LootTableEmitter;
13
+ emitter: LootEmitterImpl;
10
14
  resolver: import("@adeficior/pack-resolver").Resolver<import("@adeficior/pack-resolver").Acceptable, import("@adeficior/pack-resolver").BaseContext>;
11
15
  logger: import("@adeficior/pack-resolver/testing").TestLogger;
12
16
  };
@@ -4,16 +4,17 @@ import { setupTagRegistry } from "@adeficior/data-modifier-tags/testing";
4
4
  import { createTestLogger } from "@adeficior/pack-resolver/testing";
5
5
  import { createTestDataResolver, setupLookup } from "@adeficior/testing";
6
6
  import { afterAll, afterEach, beforeAll } from "bun:test";
7
- import { LootTableEmitter } from "../emitter";
7
+ import { LootEmitterImpl } from "../emitter";
8
8
  import { lootTablePattern } from "../helper";
9
9
  import { LootTableLoader } from "../loader";
10
- export function setupLootLoader(version, mods = ["minecraft"]) {
11
- const loader = new LootTableLoader({ mods });
10
+ export function setupLootLoader(version, { mods = [], ...resolverOptions } = {}) {
11
+ const loader = new LootTableLoader({ mods: ["minecraft", ...mods] });
12
12
  const logger = createTestLogger();
13
13
  beforeAll(async () => {
14
14
  const resolver = await createTestDataResolver(version, {
15
15
  include: lootTablePattern(packFormatOf(version)),
16
16
  logger,
17
+ ...resolverOptions,
17
18
  });
18
19
  await resolver.extract(loader);
19
20
  });
@@ -22,12 +23,12 @@ export function setupLootLoader(version, mods = ["minecraft"]) {
22
23
  });
23
24
  return { loader, logger };
24
25
  }
25
- export function setupLootEmitter(version, mods = ["minecraft"]) {
26
+ export function setupLootEmitter(version, options) {
26
27
  const lookup = setupLookup(version);
27
- const { loader } = setupLootLoader(version, mods);
28
- const tags = setupTagRegistry(version);
28
+ const { loader } = setupLootLoader(version, options);
29
+ const tags = setupTagRegistry(version, options);
29
30
  const predicates = setupPredicates(lookup, tags, setupIngredientSerializer(version, lookup));
30
- const emitter = new LootTableEmitter(packFormatOf(version), loader, lookup, predicates);
31
+ const emitter = new LootEmitterImpl(packFormatOf(version), loader, lookup, predicates);
31
32
  const logger = createTestLogger();
32
33
  const resolver = emitter.resolver({ logger });
33
34
  afterEach(() => {
@@ -1 +1 @@
1
- {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/testing/setup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EACL,yBAAyB,EACzB,eAAe,GAChB,MAAM,8CAA8C,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uCAAuC,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAE,sBAAsB,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACzE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAE5C,MAAM,UAAU,eAAe,CAC7B,OAAe,EACf,OAAiB,CAAC,WAAW,CAAC;IAE9B,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;IAC7C,MAAM,MAAM,GAAG,gBAAgB,EAAE,CAAC;IAElC,SAAS,CAAC,KAAK,IAAI,EAAE;QACnB,MAAM,QAAQ,GAAG,MAAM,sBAAsB,CAAC,OAAO,EAAE;YACrD,OAAO,EAAE,gBAAgB,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;YAChD,MAAM;SACP,CAAC,CAAC;QACH,MAAM,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACjC,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,GAAG,EAAE;QACZ,MAAM,CAAC,KAAK,EAAE,CAAC;IACjB,CAAC,CAAC,CAAC;IAEH,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;AAC5B,CAAC;AAED,MAAM,UAAU,gBAAgB,CAC9B,OAAe,EACf,OAAiB,CAAC,WAAW,CAAC;IAE9B,MAAM,MAAM,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;IACpC,MAAM,EAAE,MAAM,EAAE,GAAG,eAAe,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAElD,MAAM,IAAI,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACvC,MAAM,UAAU,GAAG,eAAe,CAChC,MAAM,EACN,IAAI,EACJ,yBAAyB,CAAC,OAAO,EAAE,MAAM,CAAC,CAC3C,CAAC;IAEF,MAAM,OAAO,GAAG,IAAI,gBAAgB,CAClC,YAAY,CAAC,OAAO,CAAC,EACrB,MAAM,EACN,MAAM,EACN,UAAU,CACX,CAAC;IAEF,MAAM,MAAM,GAAG,gBAAgB,EAAE,CAAC;IAClC,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;IAE9C,SAAS,CAAC,GAAG,EAAE;QACb,OAAO,CAAC,KAAK,EAAE,CAAC;QAChB,MAAM,CAAC,KAAK,EAAE,CAAC;IACjB,CAAC,CAAC,CAAC;IAEH,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;AAC/C,CAAC"}
1
+ {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/testing/setup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EACL,yBAAyB,EACzB,eAAe,GAChB,MAAM,8CAA8C,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uCAAuC,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAEpE,OAAO,EAAE,sBAAsB,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACzE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAM5C,MAAM,UAAU,eAAe,CAC7B,OAAe,EACf,EAAE,IAAI,GAAG,EAAE,EAAE,GAAG,eAAe,KAA4B,EAAE;IAE7D,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC;IACrE,MAAM,MAAM,GAAG,gBAAgB,EAAE,CAAC;IAElC,SAAS,CAAC,KAAK,IAAI,EAAE;QACnB,MAAM,QAAQ,GAAG,MAAM,sBAAsB,CAAC,OAAO,EAAE;YACrD,OAAO,EAAE,gBAAgB,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;YAChD,MAAM;YACN,GAAG,eAAe;SACnB,CAAC,CAAC;QACH,MAAM,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACjC,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,GAAG,EAAE;QACZ,MAAM,CAAC,KAAK,EAAE,CAAC;IACjB,CAAC,CAAC,CAAC;IAEH,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;AAC5B,CAAC;AAED,MAAM,UAAU,gBAAgB,CAC9B,OAAe,EACf,OAA+B;IAE/B,MAAM,MAAM,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;IACpC,MAAM,EAAE,MAAM,EAAE,GAAG,eAAe,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAErD,MAAM,IAAI,GAAG,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAChD,MAAM,UAAU,GAAG,eAAe,CAChC,MAAM,EACN,IAAI,EACJ,yBAAyB,CAAC,OAAO,EAAE,MAAM,CAAC,CAC3C,CAAC;IAEF,MAAM,OAAO,GAAG,IAAI,eAAe,CACjC,YAAY,CAAC,OAAO,CAAC,EACrB,MAAM,EACN,MAAM,EACN,UAAU,CACX,CAAC;IAEF,MAAM,MAAM,GAAG,gBAAgB,EAAE,CAAC;IAClC,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;IAE9C,SAAS,CAAC,GAAG,EAAE;QACb,OAAO,CAAC,KAAK,EAAE,CAAC;QAChB,MAAM,CAAC,KAAK,EAAE,CAAC;IACjB,CAAC,CAAC,CAAC;IAEH,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;AAC/C,CAAC"}
package/package.json CHANGED
@@ -1,23 +1,21 @@
1
1
  {
2
2
  "name": "@adeficior/data-modifier-loot",
3
3
  "description": "data-modifier module for loot",
4
- "version": "2.0.0-rc.20260816171656",
4
+ "version": "2.0.0",
5
5
  "exports": { ".": "./dist/index.js", "./testing": "./dist/testing/index.js" },
6
- "types": "./dist/index.d.ts",
7
- "typesVersions": { "*": { "testing": ["./dist/testing/index.d.ts"] } },
8
- "files": ["dist"],
9
6
  "type": "module",
10
- "devDependencies": {
11
- "@adeficior/data-modifier-ingredients": "^2.0.0-rc.20260816171656"
12
- },
7
+ "devDependencies": { "@adeficior/data-modifier-ingredients": "^2.0.0" },
13
8
  "peerDependencies": {
14
- "@adeficior/pack-resolver": "^2.0.0",
9
+ "@adeficior/pack-resolver": "^2.0.1",
15
10
  "typescript": "^5",
16
11
  "zod": "^4.4.3",
17
- "@adeficior/data-modifier-core": "^2.0.0-rc.20260816171656",
18
- "@adeficior/data-modifier-ingredients": "^2.0.0-rc.20260816171656",
19
- "@adeficior/data-modifier-tags": "^2.0.0-rc.20260816171656"
12
+ "@adeficior/data-modifier-core": "^2.0.0",
13
+ "@adeficior/data-modifier-ingredients": "^2.0.0",
14
+ "@adeficior/data-modifier-tags": "^2.0.0"
20
15
  },
16
+ "typesVersions": { "*": { "./testing": ["./dist/testing/index.d.ts"] } },
17
+ "types": "./dist/index.d.ts",
18
+ "files": ["dist"],
21
19
  "bugs": { "url": "https://github.com/Adeficior/DataModifier/issues" },
22
20
  "homepage": "https://github.com/Adeficior/DataModifier#readme",
23
21
  "license": "LGPL-3.0-or-later",