@minecraft/api-docs-generator 1.2.6 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. package/CHANGELOG.json +38 -0
  2. package/CHANGELOG.md +21 -1
  3. package/lib/MinecraftRelease.d.ts +2 -0
  4. package/lib/MinecraftRelease.js +6 -1
  5. package/lib/MinecraftRelease.js.map +1 -1
  6. package/lib/filters/CommonFilters.js +52 -9
  7. package/lib/filters/CommonFilters.js.map +1 -1
  8. package/lib/filters/TypeScriptFilters.js +3 -2
  9. package/lib/filters/TypeScriptFilters.js.map +1 -1
  10. package/lib/generator.js +28 -1
  11. package/lib/generator.js.map +1 -1
  12. package/lib/modules/IMinecraftModule.d.ts +4 -4
  13. package/lib/modules/IMinecraftModule.js +1 -1
  14. package/lib/modules/IMinecraftModule.js.map +1 -1
  15. package/lib/modules/MinecraftAfterEventsOrderModule.d.ts +2 -2
  16. package/lib/modules/MinecraftBlockModule.d.ts +1 -1
  17. package/lib/modules/MinecraftCommandModule.d.ts +1 -1
  18. package/lib/modules/MinecraftDimensionsModule.d.ts +1 -1
  19. package/lib/modules/MinecraftEffectsModule.d.ts +1 -1
  20. package/lib/modules/MinecraftEnchantmentsModule.d.ts +1 -1
  21. package/lib/modules/MinecraftEntitiesModule.d.ts +1 -1
  22. package/lib/modules/MinecraftItemsModule.d.ts +1 -1
  23. package/lib/modules/MinecraftMolangModule.d.ts +54 -0
  24. package/lib/modules/MinecraftMolangModule.js +37 -0
  25. package/lib/modules/MinecraftMolangModule.js.map +1 -0
  26. package/lib/modules/MinecraftScriptModule.d.ts +183 -30
  27. package/lib/modules/MinecraftScriptModule.js +17 -4
  28. package/lib/modules/MinecraftScriptModule.js.map +1 -1
  29. package/lib/modules/index.d.ts +1 -0
  30. package/lib/modules/index.js +1 -0
  31. package/lib/modules/index.js.map +1 -1
  32. package/package.json +2 -2
package/CHANGELOG.json CHANGED
@@ -1,6 +1,44 @@
1
1
  {
2
2
  "name": "@minecraft/api-docs-generator",
3
3
  "entries": [
4
+ {
5
+ "date": "Fri, 16 Jan 2026 21:45:14 GMT",
6
+ "version": "1.4.0",
7
+ "tag": "@minecraft/api-docs-generator_v1.4.0",
8
+ "comments": {
9
+ "minor": [
10
+ {
11
+ "author": "rlanda@microsoft.com",
12
+ "package": "@minecraft/api-docs-generator",
13
+ "commit": "fe7f075b782bfde4b1a64cacaf9a7c8de6b90519",
14
+ "comment": "Allow docs generator to handle molang metadata"
15
+ }
16
+ ]
17
+ }
18
+ },
19
+ {
20
+ "date": "Tue, 13 Jan 2026 21:57:53 GMT",
21
+ "version": "1.3.0",
22
+ "tag": "@minecraft/api-docs-generator_v1.3.0",
23
+ "comments": {
24
+ "patch": [
25
+ {
26
+ "author": "mc-npm@microsoft.com",
27
+ "package": "@minecraft/api-docs-generator",
28
+ "commit": "e88bbe1ca158509f1ec32b2e86d48a0b1819b7e6",
29
+ "comment": "build(dependabot): bump terminal-kit from 2.11.7 to 3.1.2"
30
+ }
31
+ ],
32
+ "minor": [
33
+ {
34
+ "author": "agriffin@microsoft.com",
35
+ "package": "@minecraft/api-docs-generator",
36
+ "commit": "e88bbe1ca158509f1ec32b2e86d48a0b1819b7e6",
37
+ "comment": "Added closure execution privileges for properties, returns, and parameters. Also renamed privileges."
38
+ }
39
+ ]
40
+ }
41
+ },
4
42
  {
5
43
  "date": "Thu, 04 Sep 2025 23:12:17 GMT",
6
44
  "version": "1.2.4",
package/CHANGELOG.md CHANGED
@@ -1,9 +1,29 @@
1
1
  # Change Log - @minecraft/api-docs-generator
2
2
 
3
- <!-- This log was last generated on Thu, 04 Sep 2025 23:12:17 GMT and should not be manually modified. -->
3
+ <!-- This log was last generated on Fri, 16 Jan 2026 21:45:14 GMT and should not be manually modified. -->
4
4
 
5
5
  <!-- Start content -->
6
6
 
7
+ ## 1.4.0
8
+
9
+ Fri, 16 Jan 2026 21:45:14 GMT
10
+
11
+ ### Minor changes
12
+
13
+ - Allow docs generator to handle molang metadata (rlanda@microsoft.com)
14
+
15
+ ## 1.3.0
16
+
17
+ Tue, 13 Jan 2026 21:57:53 GMT
18
+
19
+ ### Minor changes
20
+
21
+ - Added closure execution privileges for properties, returns, and parameters. Also renamed privileges. (agriffin@microsoft.com)
22
+
23
+ ### Patches
24
+
25
+ - build(dependabot): bump terminal-kit from 2.11.7 to 3.1.2 (mc-npm@microsoft.com)
26
+
7
27
  ## 1.2.4
8
28
 
9
29
  Thu, 04 Sep 2025 23:12:17 GMT
@@ -2,6 +2,7 @@ import { IMinecraftModule, RuntimeDataModule } from './modules/IMinecraftModule'
2
2
  import { MinecraftBlockModule } from './modules/MinecraftBlockModule';
3
3
  import { MinecraftCommandModule } from './modules/MinecraftCommandModule';
4
4
  import { MinecraftEngineDataModule } from './modules/MinecraftEngineDataModules';
5
+ import { MinecraftMolangModule } from './modules/MinecraftMolangModule';
5
6
  import { MinecraftScriptModule } from './modules/MinecraftScriptModule';
6
7
  import { MinecraftVanillaDataModule } from './modules/MinecraftVanillaDataModules';
7
8
  import { MinecraftJsonSchemaMap } from './modules/MinecraftSchemaObject';
@@ -18,6 +19,7 @@ export declare class MinecraftRelease {
18
19
  block_modules: RuntimeDataModule<MinecraftBlockModule>[];
19
20
  vanilla_data_modules: RuntimeDataModule<MinecraftVanillaDataModule>[];
20
21
  engine_data_modules: RuntimeDataModule<MinecraftEngineDataModule>[];
22
+ molang_modules: RuntimeDataModule<MinecraftMolangModule>[];
21
23
  json_schemas: MinecraftJsonSchemaMap;
22
24
  constructor(minecraft_version: string);
23
25
  copy(): MinecraftRelease;
@@ -70,6 +70,7 @@ class MinecraftRelease {
70
70
  block_modules = [];
71
71
  vanilla_data_modules = [];
72
72
  engine_data_modules = [];
73
+ molang_modules = [];
73
74
  json_schemas = {};
74
75
  constructor(minecraft_version) {
75
76
  this.minecraft_version = minecraft_version;
@@ -91,6 +92,9 @@ class MinecraftRelease {
91
92
  for (const module of this.engine_data_modules) {
92
93
  result.engine_data_modules.push(JSON.parse(JSON.stringify(module)));
93
94
  }
95
+ for (const module of this.molang_modules) {
96
+ result.molang_modules.push(JSON.parse(JSON.stringify(module)));
97
+ }
94
98
  result.json_schemas = JSON.parse(JSON.stringify(this.json_schemas));
95
99
  return result;
96
100
  }
@@ -101,7 +105,8 @@ class MinecraftRelease {
101
105
  .concat(this.command_modules)
102
106
  .concat(this.block_modules)
103
107
  .concat(this.vanilla_data_modules)
104
- .concat(this.engine_data_modules);
108
+ .concat(this.engine_data_modules)
109
+ .concat(this.molang_modules);
105
110
  return result;
106
111
  }
107
112
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"MinecraftRelease.js","sourceRoot":"","sources":["../src/MinecraftRelease.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MinecraftRelease.js","sourceRoot":"","sources":["../src/MinecraftRelease.ts"],"names":[],"mappings":"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"}
@@ -2407,6 +2407,27 @@ function populateFromModuleData(releases) {
2407
2407
  }
2408
2408
  }
2409
2409
  function addPrivilegeFlags(releases) {
2410
+ const tryGetClosurePrivilegeFromType = (type) => {
2411
+ if (type === undefined) {
2412
+ return undefined;
2413
+ }
2414
+ else if (type.optional_type) {
2415
+ return tryGetClosurePrivilegeFromType(type.optional_type);
2416
+ }
2417
+ else if (type.closure_type && type.closure_type.call_privilege) {
2418
+ // convert to friendly names for documentation
2419
+ if (MinecraftScriptModule_1.PrivilegeTypes.Default === type.closure_type.call_privilege.name) {
2420
+ return undefined; // dont document default privileges
2421
+ }
2422
+ else if (MinecraftScriptModule_1.PrivilegeTypes.EarlyExec === type.closure_type.call_privilege.name) {
2423
+ return 'early-execution';
2424
+ }
2425
+ else if (MinecraftScriptModule_1.PrivilegeTypes.RestrictedExec === type.closure_type.call_privilege.name) {
2426
+ return 'restricted-execution';
2427
+ }
2428
+ }
2429
+ return undefined;
2430
+ };
2410
2431
  const contains = (search, priv) => {
2411
2432
  if (priv === undefined) {
2412
2433
  return false;
@@ -2420,19 +2441,41 @@ function addPrivilegeFlags(releases) {
2420
2441
  };
2421
2442
  const checkPropertyPrivileges = (prop) => {
2422
2443
  if (!prop.is_read_only) {
2423
- prop.set_disallowed_in_read_only = !contains('read_only', prop.set_privilege);
2424
- prop.get_disallowed_in_read_only = !contains('read_only', prop.get_privilege);
2425
- prop.has_privilege_comments = prop.set_disallowed_in_read_only || prop.get_disallowed_in_read_only;
2444
+ prop.set_disallowed_in_restricted_execution = !contains(MinecraftScriptModule_1.PrivilegeTypes.RestrictedExec, prop.set_privilege);
2445
+ prop.get_disallowed_in_restricted_execution = !contains(MinecraftScriptModule_1.PrivilegeTypes.RestrictedExec, prop.get_privilege);
2426
2446
  }
2427
- prop.set_allowed_in_early_execution = contains('early_execution', prop.set_privilege);
2428
- prop.get_allowed_in_early_execution = contains('early_execution', prop.get_privilege);
2447
+ prop.set_allowed_in_early_execution = contains(MinecraftScriptModule_1.PrivilegeTypes.EarlyExec, prop.set_privilege);
2448
+ prop.get_allowed_in_early_execution = contains(MinecraftScriptModule_1.PrivilegeTypes.EarlyExec, prop.get_privilege);
2429
2449
  prop.has_privilege_comments =
2430
- prop.set_allowed_in_early_execution || prop.get_allowed_in_early_execution || prop.has_privilege_comments;
2450
+ prop.set_allowed_in_early_execution ||
2451
+ prop.get_allowed_in_early_execution ||
2452
+ prop.set_disallowed_in_restricted_execution ||
2453
+ prop.get_disallowed_in_restricted_execution;
2454
+ const closurePrivilegeName = tryGetClosurePrivilegeFromType(prop.type);
2455
+ if (closurePrivilegeName !== undefined) {
2456
+ prop.has_closure_privilege_type_comments = true;
2457
+ prop.closure_privilege_type_name = closurePrivilegeName;
2458
+ }
2431
2459
  };
2432
2460
  const checkFunctionPrivileges = (func) => {
2433
- func.call_disallowed_in_read_only = !contains('read_only', func.call_privilege);
2434
- func.call_allowed_in_early_execution = contains('early_execution', func.call_privilege);
2435
- func.has_privilege_comments = func.call_disallowed_in_read_only || func.call_allowed_in_early_execution;
2461
+ func.call_disallowed_in_restricted_execution = !contains(MinecraftScriptModule_1.PrivilegeTypes.RestrictedExec, func.call_privilege);
2462
+ func.call_allowed_in_early_execution = contains(MinecraftScriptModule_1.PrivilegeTypes.EarlyExec, func.call_privilege);
2463
+ func.has_privilege_comments =
2464
+ func.call_disallowed_in_restricted_execution || func.call_allowed_in_early_execution;
2465
+ for (const argument of func.arguments) {
2466
+ const priv = tryGetClosurePrivilegeFromType(argument.type);
2467
+ if (priv !== undefined) {
2468
+ func.has_comments = true;
2469
+ argument.has_closure_privilege_type_comments = true;
2470
+ argument.closure_privilege_type_name = priv;
2471
+ }
2472
+ }
2473
+ const retPriv = tryGetClosurePrivilegeFromType(func.return_type);
2474
+ if (retPriv !== undefined) {
2475
+ func.has_comments = true;
2476
+ func.return_type_has_closure_privilege_type_comments = true;
2477
+ func.return_type_closure_privilege_type_name = retPriv;
2478
+ }
2436
2479
  };
2437
2480
  for (const release of releases ?? []) {
2438
2481
  for (const scriptModule of release.script_modules ?? []) {