@akaanakbaik/pterodactyl-gateway 0.9.0 → 1.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/README.md +4 -4
- package/dist/meta.d.ts.map +1 -1
- package/dist/meta.js +13 -9
- package/dist/meta.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -8,7 +8,7 @@ Package ini cocok untuk bot reseller panel, dashboard custom, automation server,
|
|
|
8
8
|
|
|
9
9
|
## Status
|
|
10
10
|
|
|
11
|
-
Versi saat ini: `0.
|
|
11
|
+
Versi saat ini: `1.0.0`
|
|
12
12
|
|
|
13
13
|
- npm package: `@akaanakbaik/pterodactyl-gateway`
|
|
14
14
|
- CLI utama: `ptero-gateway` dan `ptg`
|
|
@@ -373,15 +373,15 @@ npm run verify
|
|
|
373
373
|
```bash
|
|
374
374
|
npm run verify
|
|
375
375
|
npm publish --access public
|
|
376
|
-
npm view @akaanakbaik/pterodactyl-gateway@0.
|
|
377
|
-
npm i -g @akaanakbaik/pterodactyl-gateway@0.
|
|
376
|
+
npm view @akaanakbaik/pterodactyl-gateway@1.0.0 version --prefer-online --registry=https://registry.npmjs.org/
|
|
377
|
+
npm i -g @akaanakbaik/pterodactyl-gateway@1.0.0 --force --prefer-online --registry=https://registry.npmjs.org/
|
|
378
378
|
ptero-gateway self-check
|
|
379
379
|
ptero-gateway release-check
|
|
380
380
|
```
|
|
381
381
|
|
|
382
382
|
## Menuju 1.0.0
|
|
383
383
|
|
|
384
|
-
`0.9.
|
|
384
|
+
`0.9.1` adalah hardening patch release sebelum stabil. Fokus berikutnya untuk `1.0.0` adalah stabilisasi API, dokumentasi final, dan kompatibilitas panel/fork yang lebih luas.
|
|
385
385
|
|
|
386
386
|
## Lisensi
|
|
387
387
|
|
package/dist/meta.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"meta.d.ts","sourceRoot":"","sources":["../src/meta.ts"],"names":[],"mappings":"AAQA,wBAAgB,cAAc,CAAC,QAAQ,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"meta.d.ts","sourceRoot":"","sources":["../src/meta.ts"],"names":[],"mappings":"AAQA,wBAAgB,cAAc,CAAC,QAAQ,EAAE,OAAO,QAW/C;AAED,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,OAAO,QAuBjD;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,OAAO,QAwBpD"}
|
package/dist/meta.js
CHANGED
|
@@ -10,7 +10,8 @@ export function versionCommand(jsonMode) {
|
|
|
10
10
|
name: pkg.name,
|
|
11
11
|
version: pkg.version,
|
|
12
12
|
node: process.version,
|
|
13
|
-
bin: pkg.bin ?? {}
|
|
13
|
+
bin: pkg.bin ?? {},
|
|
14
|
+
installRoot: ROOT_DIR
|
|
14
15
|
};
|
|
15
16
|
if (jsonMode)
|
|
16
17
|
console.log(JSON.stringify(result, null, 2));
|
|
@@ -22,33 +23,35 @@ export function selfCheckCommand(jsonMode) {
|
|
|
22
23
|
const lock = existsSync(PACKAGE_LOCK) ? readJson(PACKAGE_LOCK) : undefined;
|
|
23
24
|
const checks = [
|
|
24
25
|
check("package.json", existsSync(PACKAGE_JSON), PACKAGE_JSON),
|
|
25
|
-
check("package-lock.json",
|
|
26
|
+
lock ? check("package-lock.json", true, PACKAGE_LOCK) : check("package-lock.json", true, "not included in installed npm package; source-only check skipped"),
|
|
26
27
|
check("name", pkg.name === "@akaanakbaik/pterodactyl-gateway", String(pkg.name)),
|
|
27
28
|
check("version", Boolean(pkg.version), String(pkg.version ?? "")),
|
|
28
|
-
check("lock version", !lock || lock.version === pkg.version, lock ? String(lock.version) : "
|
|
29
|
-
check("root lock version", !lock || lock.packages?.[""]?.version === pkg.version, lock ? String(lock.packages?.[""]?.version) : "
|
|
29
|
+
check("lock version", !lock || lock.version === pkg.version, lock ? String(lock.version) : "skipped"),
|
|
30
|
+
check("root lock version", !lock || lock.packages?.[""]?.version === pkg.version, lock ? String(lock.packages?.[""]?.version) : "skipped"),
|
|
30
31
|
check("bin ptero-gateway", Boolean(pkg.bin?.["ptero-gateway"]), String(pkg.bin?.["ptero-gateway"] ?? "")),
|
|
31
32
|
check("bin ptg", Boolean(pkg.bin?.ptg), String(pkg.bin?.ptg ?? "")),
|
|
32
33
|
check("bin ptero-wizard", Boolean(pkg.bin?.["ptero-wizard"]), String(pkg.bin?.["ptero-wizard"] ?? "")),
|
|
33
34
|
check("prepublishOnly", String(pkg.scripts?.prepublishOnly ?? "").includes("verify"), String(pkg.scripts?.prepublishOnly ?? "")),
|
|
34
35
|
check("node >=18", nodeMajor() >= 18, process.version)
|
|
35
36
|
];
|
|
36
|
-
const result = { ok: checks.every(item => item.ok), checks };
|
|
37
|
+
const result = { ok: checks.every(item => item.ok), mode: lock ? "source" : "installed", checks };
|
|
37
38
|
if (jsonMode)
|
|
38
39
|
console.log(JSON.stringify(result, null, 2));
|
|
39
40
|
else {
|
|
40
41
|
console.log(`Self-check: ${result.ok ? "OK" : "FAILED"}`);
|
|
42
|
+
console.log(`Mode: ${result.mode}`);
|
|
41
43
|
for (const item of checks)
|
|
42
44
|
console.log(`${item.ok ? "✓" : "✗"} ${item.name}: ${item.detail}`);
|
|
43
45
|
}
|
|
44
46
|
}
|
|
45
47
|
export function releaseCheckCommand(jsonMode) {
|
|
46
48
|
const pkg = readJson(PACKAGE_JSON);
|
|
47
|
-
const lock = readJson(PACKAGE_LOCK);
|
|
49
|
+
const lock = existsSync(PACKAGE_LOCK) ? readJson(PACKAGE_LOCK) : undefined;
|
|
50
|
+
const sourceMode = Boolean(lock);
|
|
48
51
|
const checks = [
|
|
49
52
|
check("version set", Boolean(pkg.version), String(pkg.version ?? "")),
|
|
50
|
-
check("lock version matches", lock.version === pkg.version, `${lock.version} / ${pkg.version}`),
|
|
51
|
-
check("lock root version matches", lock.packages?.[""]?.version === pkg.version, `${lock.packages?.[""]?.version} / ${pkg.version}`),
|
|
53
|
+
sourceMode ? check("lock version matches", lock.version === pkg.version, `${lock.version} / ${pkg.version}`) : check("lock version matches", true, "skipped outside source checkout"),
|
|
54
|
+
sourceMode ? check("lock root version matches", lock.packages?.[""]?.version === pkg.version, `${lock.packages?.[""]?.version} / ${pkg.version}`) : check("lock root version matches", true, "skipped outside source checkout"),
|
|
52
55
|
check("dist included", Array.isArray(pkg.files) && pkg.files.includes("dist"), JSON.stringify(pkg.files ?? [])),
|
|
53
56
|
check("README included", Array.isArray(pkg.files) && pkg.files.includes("README.md"), JSON.stringify(pkg.files ?? [])),
|
|
54
57
|
check("license MIT", pkg.license === "MIT", String(pkg.license ?? "")),
|
|
@@ -56,11 +59,12 @@ export function releaseCheckCommand(jsonMode) {
|
|
|
56
59
|
check("test:release exists", Boolean(pkg.scripts?.["test:release"]), String(pkg.scripts?.["test:release"] ?? "")),
|
|
57
60
|
check("no node admin help string", true, "checked by CLI grep in manual smoke test")
|
|
58
61
|
];
|
|
59
|
-
const result = { ok: checks.every(item => item.ok), package: `${pkg.name}@${pkg.version}`, checks };
|
|
62
|
+
const result = { ok: checks.every(item => item.ok), mode: sourceMode ? "source" : "installed", package: `${pkg.name}@${pkg.version}`, checks };
|
|
60
63
|
if (jsonMode)
|
|
61
64
|
console.log(JSON.stringify(result, null, 2));
|
|
62
65
|
else {
|
|
63
66
|
console.log(`Release-check: ${result.ok ? "OK" : "FAILED"}`);
|
|
67
|
+
console.log(`Mode: ${result.mode}`);
|
|
64
68
|
console.log(`Package: ${result.package}`);
|
|
65
69
|
for (const item of checks)
|
|
66
70
|
console.log(`${item.ok ? "✓" : "✗"} ${item.name}: ${item.detail}`);
|
package/dist/meta.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"meta.js","sourceRoot":"","sources":["../src/meta.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AAClE,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;AACpD,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,EAAE,mBAAmB,CAAC,CAAC;AAEzD,MAAM,UAAU,cAAc,CAAC,QAAiB;IAC9C,MAAM,GAAG,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC;IACnC,MAAM,MAAM,GAAG;QACb,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,IAAI,EAAE,OAAO,CAAC,OAAO;QACrB,GAAG,EAAE,GAAG,CAAC,GAAG,IAAI,EAAE;
|
|
1
|
+
{"version":3,"file":"meta.js","sourceRoot":"","sources":["../src/meta.ts"],"names":[],"mappings":"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"}
|