@spyglassmc/java-edition 0.1.1 → 0.1.2

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 (46) hide show
  1. package/lib/binder/index.d.ts +2 -2
  2. package/lib/binder/index.js +2 -2
  3. package/lib/common/index.js +5 -1
  4. package/lib/dependency/common.d.ts +8 -5
  5. package/lib/dependency/common.js +15 -12
  6. package/lib/dependency/index.d.ts +1 -1
  7. package/lib/dependency/index.js +11 -7
  8. package/lib/dependency/mcmeta.d.ts +1 -2
  9. package/lib/dependency/mcmeta.js +27 -70
  10. package/lib/index.js +14 -10
  11. package/lib/json/checker/data/common.d.ts +1 -1
  12. package/lib/json/checker/data/tag.js +1 -1
  13. package/lib/json/checker/util/block_states.js +5 -1
  14. package/lib/json/checker/util/index.js +5 -1
  15. package/lib/json/checker/util/nbt.d.ts +1 -2
  16. package/lib/json/checker/util/version.d.ts +12 -12
  17. package/lib/json/checker/util/version.js +1 -1
  18. package/lib/json/index.js +5 -1
  19. package/lib/mcfunction/checker/index.js +60 -55
  20. package/lib/mcfunction/colorizer/index.js +5 -1
  21. package/lib/mcfunction/common/index.js +5 -1
  22. package/lib/mcfunction/completer/argument.js +10 -6
  23. package/lib/mcfunction/completer/index.js +5 -1
  24. package/lib/mcfunction/index.d.ts +2 -2
  25. package/lib/mcfunction/index.js +12 -20
  26. package/lib/mcfunction/inlayHintProvider.js +5 -1
  27. package/lib/mcfunction/node/argument.js +15 -11
  28. package/lib/mcfunction/node/index.js +5 -1
  29. package/lib/mcfunction/parser/argument.js +11 -7
  30. package/lib/mcfunction/parser/index.js +5 -1
  31. package/lib/mcfunction/signatureHelpProvider.js +5 -1
  32. package/lib/mcfunction/tree/index.d.ts +0 -5
  33. package/lib/mcfunction/tree/index.js +5 -6
  34. package/lib/mcfunction/tree/patch.d.ts +4 -0
  35. package/lib/mcfunction/tree/patch.js +752 -0
  36. package/package.json +7 -7
  37. package/lib/mcfunction/tree/1.15.d.ts +0 -9
  38. package/lib/mcfunction/tree/1.15.js +0 -542
  39. package/lib/mcfunction/tree/1.16.d.ts +0 -10
  40. package/lib/mcfunction/tree/1.16.js +0 -77
  41. package/lib/mcfunction/tree/1.17.d.ts +0 -12
  42. package/lib/mcfunction/tree/1.17.js +0 -166
  43. package/lib/mcfunction/tree/1.18.d.ts +0 -26
  44. package/lib/mcfunction/tree/1.18.js +0 -6
  45. package/lib/mcfunction/tree/1.19.d.ts +0 -26
  46. package/lib/mcfunction/tree/1.19.js +0 -6
@@ -2,8 +2,8 @@ import type { ContextBase, FileCategory, RootUriString, UriBinder } from '@spygl
2
2
  export declare const Categories: Map<string, {
3
3
  category: FileCategory;
4
4
  extname: string;
5
- since?: `1.${bigint}` | undefined;
6
- until?: `1.${bigint}` | undefined;
5
+ since?: `1.${number}` | undefined;
6
+ until?: `1.${number}` | undefined;
7
7
  }>;
8
8
  export declare function getRels(uri: string, rootUris: readonly RootUriString[]): Generator<string, undefined, unknown>;
9
9
  export declare function dissectUri(uri: string, ctx: ContextBase): {
@@ -93,9 +93,9 @@ const uriBinder = (uris, ctx) => {
93
93
  };
94
94
  exports.uriBinder = uriBinder;
95
95
  function matchVersion(target, since, until) {
96
- if (since && dependency_1.MajorVersion.cmp(target, since) < 0)
96
+ if (since && dependency_1.ReleaseVersion.cmp(target, since) < 0)
97
97
  return false;
98
- if (until && dependency_1.MajorVersion.cmp(until, target) < 0)
98
+ if (until && dependency_1.ReleaseVersion.cmp(until, target) < 0)
99
99
  return false;
100
100
  return true;
101
101
  }
@@ -1,7 +1,11 @@
1
1
  "use strict";
2
2
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
3
  if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
5
9
  }) : (function(o, m, k, k2) {
6
10
  if (k2 === undefined) k2 = k;
7
11
  o[k2] = m[k];
@@ -1,20 +1,23 @@
1
- export declare type MajorVersion = `1.${bigint}`;
2
- export declare namespace MajorVersion {
1
+ export declare type ReleaseVersion = `1.${number}`;
2
+ export declare namespace ReleaseVersion {
3
3
  /**
4
4
  * @returns
5
5
  * * `-1` if `a` is older than `b`.
6
6
  * * `0` if `a` is the same as `b`.
7
7
  * * `1` if `a` is newer than `b`.
8
8
  */
9
- function cmp(a: MajorVersion, b: MajorVersion): number;
9
+ function cmp(a: ReleaseVersion, b: ReleaseVersion): number;
10
10
  }
11
11
  export interface VersionInfo {
12
- major: MajorVersion;
12
+ release: ReleaseVersion;
13
13
  id: string;
14
14
  name: string;
15
15
  isLatest: boolean;
16
16
  }
17
- export declare const PackVersionMap: Record<number, MajorVersion | undefined>;
17
+ /**
18
+ * A map from `pack_format` numbers to a RegExp. The latest version whose `release_target` matches the RegExp should be used.
19
+ */
20
+ export declare const PackVersionMap: Record<number, RegExp | undefined>;
18
21
  export interface PackMcmeta {
19
22
  pack: {
20
23
  pack_format: number;
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PackMcmeta = exports.PackVersionMap = exports.MajorVersion = void 0;
4
- var MajorVersion;
5
- (function (MajorVersion) {
3
+ exports.PackMcmeta = exports.PackVersionMap = exports.ReleaseVersion = void 0;
4
+ var ReleaseVersion;
5
+ (function (ReleaseVersion) {
6
6
  /**
7
7
  * @returns
8
8
  * * `-1` if `a` is older than `b`.
@@ -10,18 +10,21 @@ var MajorVersion;
10
10
  * * `1` if `a` is newer than `b`.
11
11
  */
12
12
  function cmp(a, b) {
13
- return Math.sign(Number(a) - Number(b));
13
+ return Math.sign(Number(a.slice(2)) - Number(b.slice(2)));
14
14
  }
15
- MajorVersion.cmp = cmp;
16
- })(MajorVersion = exports.MajorVersion || (exports.MajorVersion = {}));
15
+ ReleaseVersion.cmp = cmp;
16
+ })(ReleaseVersion = exports.ReleaseVersion || (exports.ReleaseVersion = {}));
17
17
  // DOCS: Update here when format_version is changed.
18
+ /**
19
+ * A map from `pack_format` numbers to a RegExp. The latest version whose `release_target` matches the RegExp should be used.
20
+ */
18
21
  exports.PackVersionMap = {
19
- 5: '1.15',
20
- 6: '1.16',
21
- 7: '1.17',
22
- 8: '1.18',
23
- 9: '1.18',
24
- 10: '1.19',
22
+ 5: /^1\.15.*$/,
23
+ 6: /^1\.16.*$/,
24
+ 7: /^1\.17.*$/,
25
+ 8: /^1\.18(\.1)?$/,
26
+ 9: /^1\.18.*$/,
27
+ 10: /^1\.19.*$/,
25
28
  };
26
29
  var PackMcmeta;
27
30
  (function (PackMcmeta) {
@@ -26,5 +26,5 @@ export declare function getMcmetaSummary(downloader: core.Downloader, logger: co
26
26
  * - `startDepth`: The amount of level to skip when unzipping the tarball.
27
27
  * - `uri`: URI to the `.tar.gz` file.
28
28
  */
29
- export declare function getMcNbtdoc(downloader: core.Downloader, version: string, isLatest: boolean): Promise<core.Dependency>;
29
+ export declare function getVanillaMcdoc(downloader: core.Downloader, version: string, isLatest: boolean): Promise<core.Dependency>;
30
30
  //# sourceMappingURL=index.d.ts.map
@@ -1,7 +1,11 @@
1
1
  "use strict";
2
2
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
3
  if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
5
9
  }) : (function(o, m, k, k2) {
6
10
  if (k2 === undefined) k2 = k;
7
11
  o[k2] = m[k];
@@ -22,7 +26,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
22
26
  return result;
23
27
  };
24
28
  Object.defineProperty(exports, "__esModule", { value: true });
25
- exports.getMcNbtdoc = exports.getMcmetaSummary = exports.getVersions = void 0;
29
+ exports.getVanillaMcdoc = exports.getMcmetaSummary = exports.getVersions = void 0;
26
30
  __exportStar(require("./common"), exports);
27
31
  __exportStar(require("./mcmeta"), exports);
28
32
  const core = __importStar(require("@spyglassmc/core"));
@@ -154,19 +158,19 @@ async function downloadGitHubRepo({ defaultBranch, downloader, getTag, repo, isL
154
158
  * - `startDepth`: The amount of level to skip when unzipping the tarball.
155
159
  * - `uri`: URI to the `.tar.gz` file.
156
160
  */
157
- async function getMcNbtdoc(downloader, version, isLatest) {
161
+ async function getVanillaMcdoc(downloader, version, isLatest) {
158
162
  return {
159
163
  info: { startDepth: 1 },
160
164
  uri: await downloadGitHubRepo({
161
- defaultBranch: 'master',
165
+ defaultBranch: 'main',
162
166
  downloader,
163
167
  getTag: v => v,
164
168
  isLatest,
165
- owner: 'Yurihaia',
166
- repo: 'mc-nbtdoc',
169
+ owner: 'SpyglassMC',
170
+ repo: 'vanila-mcdoc',
167
171
  version,
168
172
  }),
169
173
  };
170
174
  }
171
- exports.getMcNbtdoc = getMcNbtdoc;
175
+ exports.getVanillaMcdoc = getVanillaMcdoc;
172
176
  //# sourceMappingURL=index.js.map
@@ -1,6 +1,5 @@
1
1
  import * as core from '@spyglassmc/core';
2
- import type { MajorVersion, PackMcmeta, VersionInfo } from './common';
3
- export declare function getMajorVersion(version: McmetaVersion): MajorVersion;
2
+ import type { PackMcmeta, VersionInfo } from './common';
4
3
  /**
5
4
  * @param inputVersion {@link Config.env.gameVersion}
6
5
  */
@@ -1,7 +1,11 @@
1
1
  "use strict";
2
2
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
3
  if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
5
9
  }) : (function(o, m, k, k2) {
6
10
  if (k2 === undefined) k2 = k;
7
11
  o[k2] = m[k];
@@ -19,14 +23,9 @@ var __importStar = (this && this.__importStar) || function (mod) {
19
23
  return result;
20
24
  };
21
25
  Object.defineProperty(exports, "__esModule", { value: true });
22
- exports.Fluids = exports.symbolRegistrar = exports.getMcmetaSummaryUris = exports.resolveConfiguredVersion = exports.getMajorVersion = void 0;
26
+ exports.Fluids = exports.symbolRegistrar = exports.getMcmetaSummaryUris = exports.resolveConfiguredVersion = void 0;
23
27
  const core = __importStar(require("@spyglassmc/core"));
24
28
  const common_1 = require("./common");
25
- function getMajorVersion(version) {
26
- const dotIndex = version.release_target.indexOf('.', 2);
27
- return (dotIndex > 2 ? version.release_target.slice(0, dotIndex) : version.release_target);
28
- }
29
- exports.getMajorVersion = getMajorVersion;
30
29
  /**
31
30
  * @param inputVersion {@link Config.env.gameVersion}
32
31
  */
@@ -39,7 +38,7 @@ function resolveConfiguredVersion(inputVersion, { packMcmeta, versions }) {
39
38
  return {
40
39
  id: version.id,
41
40
  name: version.name,
42
- major: getMajorVersion(version),
41
+ release: version.release_target,
43
42
  isLatest: index === 0,
44
43
  };
45
44
  }
@@ -50,9 +49,9 @@ function resolveConfiguredVersion(inputVersion, { packMcmeta, versions }) {
50
49
  versions = versions.sort((a, b) => b.data_version - a.data_version);
51
50
  if (inputVersion === 'auto') {
52
51
  if (packMcmeta) {
53
- const major = common_1.PackVersionMap[packMcmeta.pack.pack_format];
54
- if (major) {
55
- return toVersionInfo(versions.findIndex(v => getMajorVersion(v) === major));
52
+ const regex = common_1.PackVersionMap[packMcmeta.pack.pack_format];
53
+ if (regex) {
54
+ return toVersionInfo(versions.findIndex(v => regex.test(v.release_target)));
56
55
  }
57
56
  }
58
57
  return toVersionInfo(0);
@@ -66,12 +65,24 @@ function resolveConfiguredVersion(inputVersion, { packMcmeta, versions }) {
66
65
  return toVersionInfo(versions.findIndex(v => inputVersion === v.id.toLowerCase() || inputVersion === v.name.toLowerCase()));
67
66
  }
68
67
  exports.resolveConfiguredVersion = resolveConfiguredVersion;
68
+ const DataSources = {
69
+ fastly: 'https://fastly.jsdelivr.net/gh/${user}/${repo}@${tag}/${path}',
70
+ github: 'https://raw.githubusercontent.com/${user}/${repo}/${tag}/${path}',
71
+ jsdelivr: 'https://cdn.jsdelivr.net/gh/${user}/${repo}@${tag}/${path}',
72
+ };
69
73
  function getMcmetaSummaryUris(version, isLatest, source) {
70
74
  const tag = isLatest ? 'summary' : `${version}-summary`;
71
75
  function getUri(path) {
72
- return source.toLowerCase() === 'jsdelivr'
73
- ? `https://cdn.jsdelivr.net/gh/misode/mcmeta@${tag}/${path}`
74
- : `https://raw.githubusercontent.com/misode/mcmeta/${tag}/${path}`;
76
+ const template = DataSources[source.toLowerCase()] ?? source;
77
+ const ans = template
78
+ .replace(/\${user}/g, 'misode')
79
+ .replace(/\${repo}/g, 'mcmeta')
80
+ .replace(/\${tag}/g, tag)
81
+ .replace(/\${path}/g, path);
82
+ if (!core.RemoteUriString.is(ans)) {
83
+ throw new Error(`Expected a remote URI from data source template but got ${ans}`);
84
+ }
85
+ return ans;
75
86
  }
76
87
  return {
77
88
  blocks: getUri('blocks/data.json.gz'),
@@ -82,16 +93,13 @@ function getMcmetaSummaryUris(version, isLatest, source) {
82
93
  exports.getMcmetaSummaryUris = getMcmetaSummaryUris;
83
94
  function symbolRegistrar(summary) {
84
95
  const McmetaSummaryUri = 'mcmeta://summary/registries.json';
85
- const SoundsBaseUri = 'https://misode.github.io/sounds/';
86
- const WikiBaseUri = 'https://minecraft.fandom.com/wiki/';
87
- const getWikiPageName = (id) => id === 'empty' ? 'Air' : id.split('_').map(v => `${v.charAt(0).toUpperCase()}${v.slice(1)}`).join('_');
88
96
  /**
89
97
  * Add states of blocks or fluids to the symbol table.
90
98
  */
91
99
  function addStatesSymbols(category, states, symbols) {
92
100
  const capitalizedCategory = `${category[0].toUpperCase()}${category.slice(1)}`;
93
101
  for (const [id, [properties, defaults]] of Object.entries(states)) {
94
- const uri = `${WikiBaseUri}${getWikiPageName(id)}`;
102
+ const uri = McmetaSummaryUri;
95
103
  symbols
96
104
  .query(uri, category, core.ResourceLocation.lengthen(id))
97
105
  .onEach(Object.entries(properties), ([state, values], blockQuery) => {
@@ -127,62 +135,11 @@ function symbolRegistrar(summary) {
127
135
  function isCategory(str) {
128
136
  return (core.FileCategories.includes(str) || core.RegistryCategories.includes(str));
129
137
  }
130
- const getUri = (registryId, entryId) => {
131
- /* istanbul ignore next */
132
- switch (registryId) {
133
- case 'attribute':
134
- return `${WikiBaseUri}Attribute#Attributes`;
135
- case 'block':
136
- case 'enchantment':
137
- case 'entity_type':
138
- case 'fluid':
139
- case 'item':
140
- case 'mob_effect':
141
- return `${WikiBaseUri}${getWikiPageName(entryId)}`;
142
- case 'block_entity_type':
143
- return `${WikiBaseUri}${getWikiPageName(entryId)}#Block_data`;
144
- case 'custom_stat':
145
- return `${WikiBaseUri}Statistics#List_of_custom_statistic_names`;
146
- case 'game_event':
147
- return `${WikiBaseUri}Game_event`;
148
- case 'loot_condition_type':
149
- return `${WikiBaseUri}Predicate#JSON_structure`;
150
- case 'loot_function_type':
151
- return `${WikiBaseUri}Item_modifier#JSON_structure`;
152
- case 'loot_number_provider_type':
153
- case 'loot_score_provider_type':
154
- return `${WikiBaseUri}Loot_table#Number_Providers`;
155
- case 'loot_pool_entry_type':
156
- return `${WikiBaseUri}Loot_table#Tags`;
157
- case 'motive':
158
- return `${WikiBaseUri}Painting#Canvases`;
159
- case 'potion':
160
- return `${WikiBaseUri}Potion#Item_data`;
161
- case 'particle_type':
162
- return `${WikiBaseUri}Java_Edition_data_values#Particles`;
163
- case 'recipe_serializer':
164
- return `${WikiBaseUri}Recipe#${entryId}`;
165
- case 'sound_event':
166
- return `${SoundsBaseUri}?sound=${entryId}`;
167
- case 'stat_type':
168
- return `${WikiBaseUri}Statistics#Statistic_types_and_names`;
169
- case 'villager_profession':
170
- return `${WikiBaseUri}Villager#Villager_profession`;
171
- case 'villager_type':
172
- return `${WikiBaseUri}Villager#Villager_type`;
173
- case 'worldgen/biome_source':
174
- return `${WikiBaseUri}Java_Edition_data_values#Biome_sources`;
175
- case 'worldgen/chunk_generator':
176
- return `${WikiBaseUri}Java_Edition_data_values#Chunk_generators`;
177
- default:
178
- return McmetaSummaryUri;
179
- }
180
- };
181
138
  for (const [registryId, registry] of Object.entries(registries)) {
182
139
  if (isCategory(registryId)) {
183
140
  for (const entryId of registry) {
184
141
  symbols
185
- .query(getUri(registryId, entryId), registryId, core.ResourceLocation.lengthen(entryId))
142
+ .query(McmetaSummaryUri, registryId, core.ResourceLocation.lengthen(entryId))
186
143
  .enter({ usage: { type: 'declaration' } });
187
144
  }
188
145
  }
package/lib/index.js CHANGED
@@ -1,7 +1,11 @@
1
1
  "use strict";
2
2
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
3
  if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
5
9
  }) : (function(o, m, k, k2) {
6
10
  if (k2 === undefined) k2 = k;
7
11
  o[k2] = m[k];
@@ -21,8 +25,8 @@ var __importStar = (this && this.__importStar) || function (mod) {
21
25
  Object.defineProperty(exports, "__esModule", { value: true });
22
26
  exports.initialize = exports.mcf = exports.json = exports.dependency = void 0;
23
27
  const core = __importStar(require("@spyglassmc/core"));
28
+ const mcdoc = __importStar(require("@spyglassmc/mcdoc"));
24
29
  const nbt = __importStar(require("@spyglassmc/nbt"));
25
- const nbtdoc = __importStar(require("@spyglassmc/nbtdoc"));
26
30
  const binder_1 = require("./binder");
27
31
  const dependency_1 = require("./dependency");
28
32
  const jeJson = __importStar(require("./json"));
@@ -55,8 +59,8 @@ const initialize = async (ctx) => {
55
59
  return;
56
60
  }
57
61
  const packMcmeta = await getPackMcmeta();
58
- const { major, id: version, isLatest } = (0, dependency_1.resolveConfiguredVersion)(config.env.gameVersion, { packMcmeta, versions });
59
- meta.registerDependencyProvider('@mc-nbtdoc', () => (0, dependency_1.getMcNbtdoc)(downloader, version, isLatest));
62
+ const { release, id: version, isLatest } = (0, dependency_1.resolveConfiguredVersion)(config.env.gameVersion, { packMcmeta, versions });
63
+ meta.registerDependencyProvider('@vanilla-mcdoc', () => (0, dependency_1.getVanillaMcdoc)(downloader, version, isLatest));
60
64
  const summary = await (0, dependency_1.getMcmetaSummary)(downloader, logger, version, isLatest, config.env.dataSource, config.env.mcmetaSummaryOverrides);
61
65
  if (!summary.blocks || !summary.commands || !summary.fluids || !summary.registries) {
62
66
  ctx.logger.error('[je-initialize] Failed loading mcmeta summaries. Expect everything to be broken.');
@@ -70,18 +74,18 @@ const initialize = async (ctx) => {
70
74
  configValidator: core.linter.configValidator.nameConvention,
71
75
  linter: core.linter.nameConvention('value'),
72
76
  nodePredicate: n => (
73
- // nbt compound keys without nbtdoc definition.
77
+ // nbt compound keys without mcdoc definition.
74
78
  (!n.symbol && n.parent?.parent?.type === 'nbt:compound' && core.PairNode.is(n.parent) && n.type === 'string' && n.parent.key === n) ||
75
- // nbt path keys without nbtdoc definition.
79
+ // nbt path keys without mcdoc definition.
76
80
  (!n.symbol && n.parent?.type === 'nbt:path' && n.type === 'string') ||
77
- // nbtdoc compound key definition outside of `::minecraft` modules.
78
- (nbtdoc.CompoundFieldNode.is(n.parent) && nbtdoc.CompoundFieldKey.is(n) && !n.symbol?.path[0]?.startsWith('::minecraft'))),
81
+ // mcdoc compound key definition outside of `::minecraft` modules.
82
+ (mcdoc.StructFieldNode.is(n.parent) && mcdoc.StructKeyNode.is(n) && !n.symbol?.path[0]?.startsWith('::minecraft'))),
79
83
  });
80
84
  jeJson.initialize(ctx);
81
- jeMcf.initialize(ctx, summary.commands, major);
85
+ jeMcf.initialize(ctx, summary.commands, release);
82
86
  nbt.initialize(ctx);
83
87
  return {
84
- loadedVersion: major,
88
+ loadedVersion: release,
85
89
  };
86
90
  };
87
91
  exports.initialize = initialize;
@@ -13,7 +13,7 @@ export declare const vertical_anchor: JsonChecker;
13
13
  export declare const height_provider: JsonChecker;
14
14
  export declare const floatProvider: (min?: number | undefined, max?: number | undefined) => JsonChecker;
15
15
  export declare const intProvider: (min?: number | undefined, max?: number | undefined) => JsonChecker;
16
- export declare const uniformInt: (min?: number | undefined, max?: number | undefined, maxSpread?: number | undefined) => JsonChecker;
16
+ export declare const uniformInt: (min?: number, max?: number, maxSpread?: number) => JsonChecker;
17
17
  export declare const inclusiveRange: (min?: number | undefined, max?: number | undefined) => JsonChecker;
18
18
  export declare const noise_parameters: JsonChecker;
19
19
  export declare const HeightmapType: string[];
@@ -26,7 +26,7 @@ const tag = (type) => (0, primitives_1.record)({
26
26
  }
27
27
  return [undefined, node];
28
28
  },
29
- report: (node, ctx) => ctx.err.report((0, lib_2.localize)('json.checker.tag-entry.duplicate'), node, 2 /* Warning */),
29
+ report: (node, ctx) => ctx.err.report((0, lib_2.localize)('json.checker.tag-entry.duplicate'), node, 2 /* ErrorSeverity.Warning */),
30
30
  }),
31
31
  });
32
32
  exports.block_tag = tag('block');
@@ -1,7 +1,11 @@
1
1
  "use strict";
2
2
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
3
  if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
5
9
  }) : (function(o, m, k, k2) {
6
10
  if (k2 === undefined) k2 = k;
7
11
  o[k2] = m[k];
@@ -1,7 +1,11 @@
1
1
  "use strict";
2
2
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
3
  if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
5
9
  }) : (function(o, m, k, k2) {
6
10
  if (k2 === undefined) k2 = k;
7
11
  o[k2] = m[k];
@@ -1,10 +1,9 @@
1
1
  import type { JsonChecker } from '@spyglassmc/json/lib/checker/JsonChecker';
2
- import type { ExtendableRootRegistry } from '@spyglassmc/nbtdoc';
3
2
  interface DefinitionOptions {
4
3
  definition: `::${string}::${string}`;
5
4
  }
6
5
  interface RegistryOptions {
7
- registry: ExtendableRootRegistry;
6
+ registry: string;
8
7
  id?: string | undefined;
9
8
  idOrTag?: string | undefined;
10
9
  ids?: readonly string[] | undefined;
@@ -1,17 +1,17 @@
1
1
  import type { JsonChecker, JsonCheckerContext, record } from '@spyglassmc/json/lib/checker';
2
- import { MajorVersion } from '../../../dependency';
2
+ import { ReleaseVersion } from '../../../dependency';
3
3
  declare type CheckerRecord = Parameters<typeof record>[0];
4
- export declare function versioned(ctx: JsonCheckerContext, version: MajorVersion, checker: string[]): string[];
5
- export declare function versioned(ctx: JsonCheckerContext, version: MajorVersion, checker: JsonChecker | undefined): JsonChecker | undefined;
6
- export declare function versioned(ctx: JsonCheckerContext, version: MajorVersion, checker: CheckerRecord | undefined): CheckerRecord | undefined;
7
- export declare function versioned(ctx: JsonCheckerContext, checker: string[], version: MajorVersion): string[];
8
- export declare function versioned(ctx: JsonCheckerContext, checker: JsonChecker | undefined, version: MajorVersion): JsonChecker | undefined;
9
- export declare function versioned(ctx: JsonCheckerContext, checker: CheckerRecord | undefined, version: MajorVersion): CheckerRecord | undefined;
10
- export declare function versioned(ctx: JsonCheckerContext, checker: string[], version: MajorVersion, checker2: string[]): string[];
11
- export declare function versioned(ctx: JsonCheckerContext, checker: JsonChecker, version: MajorVersion, checker2: JsonChecker): JsonChecker;
12
- export declare function versioned(ctx: JsonCheckerContext, checker: CheckerRecord, version: MajorVersion, checker2: CheckerRecord): CheckerRecord;
13
- export declare function renamed(ctx: JsonCheckerContext, from: string, version: MajorVersion, to: string, checker: JsonChecker): CheckerRecord | undefined;
14
- export declare function deprecated(ctx: JsonCheckerContext, version: MajorVersion, checker: JsonChecker | undefined): JsonChecker | {
4
+ export declare function versioned(ctx: JsonCheckerContext, version: ReleaseVersion, checker: string[]): string[];
5
+ export declare function versioned(ctx: JsonCheckerContext, version: ReleaseVersion, checker: JsonChecker | undefined): JsonChecker | undefined;
6
+ export declare function versioned(ctx: JsonCheckerContext, version: ReleaseVersion, checker: CheckerRecord | undefined): CheckerRecord | undefined;
7
+ export declare function versioned(ctx: JsonCheckerContext, checker: string[], version: ReleaseVersion): string[];
8
+ export declare function versioned(ctx: JsonCheckerContext, checker: JsonChecker | undefined, version: ReleaseVersion): JsonChecker | undefined;
9
+ export declare function versioned(ctx: JsonCheckerContext, checker: CheckerRecord | undefined, version: ReleaseVersion): CheckerRecord | undefined;
10
+ export declare function versioned(ctx: JsonCheckerContext, checker: string[], version: ReleaseVersion, checker2: string[]): string[];
11
+ export declare function versioned(ctx: JsonCheckerContext, checker: JsonChecker, version: ReleaseVersion, checker2: JsonChecker): JsonChecker;
12
+ export declare function versioned(ctx: JsonCheckerContext, checker: CheckerRecord, version: ReleaseVersion, checker2: CheckerRecord): CheckerRecord;
13
+ export declare function renamed(ctx: JsonCheckerContext, from: string, version: ReleaseVersion, to: string, checker: JsonChecker): CheckerRecord | undefined;
14
+ export declare function deprecated(ctx: JsonCheckerContext, version: ReleaseVersion, checker: JsonChecker | undefined): JsonChecker | {
15
15
  checker: JsonChecker;
16
16
  opt?: boolean | undefined;
17
17
  def?: (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | any | {
@@ -7,7 +7,7 @@ function getVersion(ctx) {
7
7
  return ctx.project['loadedVersion'];
8
8
  }
9
9
  function cmpVersion(ctx, target) {
10
- return dependency_1.MajorVersion.cmp(getVersion(ctx), target);
10
+ return dependency_1.ReleaseVersion.cmp(getVersion(ctx), target);
11
11
  }
12
12
  function versioned(ctx, arg1, arg2, arg3) {
13
13
  if (typeof arg1 === 'string') {
package/lib/json/index.js CHANGED
@@ -2,7 +2,11 @@
2
2
  /* istanbul ignore file */
3
3
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
4
4
  if (k2 === undefined) k2 = k;
5
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ var desc = Object.getOwnPropertyDescriptor(m, k);
6
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
7
+ desc = { enumerable: true, get: function() { return m[k]; } };
8
+ }
9
+ Object.defineProperty(o, k2, desc);
6
10
  }) : (function(o, m, k, k2) {
7
11
  if (k2 === undefined) k2 = k;
8
12
  o[k2] = m[k];