@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.
- package/CHANGELOG.json +38 -0
- package/CHANGELOG.md +21 -1
- package/lib/MinecraftRelease.d.ts +2 -0
- package/lib/MinecraftRelease.js +6 -1
- package/lib/MinecraftRelease.js.map +1 -1
- package/lib/filters/CommonFilters.js +52 -9
- package/lib/filters/CommonFilters.js.map +1 -1
- package/lib/filters/TypeScriptFilters.js +3 -2
- package/lib/filters/TypeScriptFilters.js.map +1 -1
- package/lib/generator.js +28 -1
- package/lib/generator.js.map +1 -1
- package/lib/modules/IMinecraftModule.d.ts +4 -4
- package/lib/modules/IMinecraftModule.js +1 -1
- package/lib/modules/IMinecraftModule.js.map +1 -1
- package/lib/modules/MinecraftAfterEventsOrderModule.d.ts +2 -2
- package/lib/modules/MinecraftBlockModule.d.ts +1 -1
- package/lib/modules/MinecraftCommandModule.d.ts +1 -1
- package/lib/modules/MinecraftDimensionsModule.d.ts +1 -1
- package/lib/modules/MinecraftEffectsModule.d.ts +1 -1
- package/lib/modules/MinecraftEnchantmentsModule.d.ts +1 -1
- package/lib/modules/MinecraftEntitiesModule.d.ts +1 -1
- package/lib/modules/MinecraftItemsModule.d.ts +1 -1
- package/lib/modules/MinecraftMolangModule.d.ts +54 -0
- package/lib/modules/MinecraftMolangModule.js +37 -0
- package/lib/modules/MinecraftMolangModule.js.map +1 -0
- package/lib/modules/MinecraftScriptModule.d.ts +183 -30
- package/lib/modules/MinecraftScriptModule.js +17 -4
- package/lib/modules/MinecraftScriptModule.js.map +1 -1
- package/lib/modules/index.d.ts +1 -0
- package/lib/modules/index.js +1 -0
- package/lib/modules/index.js.map +1 -1
- 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
|
|
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;
|
package/lib/MinecraftRelease.js
CHANGED
|
@@ -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":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
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.
|
|
2424
|
-
prop.
|
|
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(
|
|
2428
|
-
prop.get_allowed_in_early_execution = contains(
|
|
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 ||
|
|
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.
|
|
2434
|
-
func.call_allowed_in_early_execution = contains(
|
|
2435
|
-
func.has_privilege_comments =
|
|
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 ?? []) {
|