hackmud-script-manager 0.20.4-6a2a079 → 0.20.4-7480302
Sign up to get free protection for your applications and to get access to all the features.
- package/README.md +4 -0
- package/bin/hsm.js +1 -1
- package/env.d.ts +1 -7
- package/package.json +1 -1
- package/processScript/index.js +2 -2
- package/watch.js +5 -4
package/README.md
CHANGED
@@ -20,6 +20,10 @@ You can read about how HSM works [in my blog post](https://samual.uk/blog/js-cod
|
|
20
20
|
> ```
|
21
21
|
> You will need to run `Set-ExecutionPolicy -ExecutionPolicy Unrestricted -Scope CurrentUser` in PowerShell as an administrator. For more information, see [Microsoft's page about Execution Policies](https://learn.microsoft.com/en-gb/powershell/module/microsoft.powershell.core/about/about_execution_policies?view=powershell-7.4).
|
22
22
|
|
23
|
+
![image](https://github.com/samualtnorman/hackmud-script-manager/assets/18307063/69a371fe-f8c8-43fe-b3c7-39f3735ce6fb)
|
24
|
+
![image](https://github.com/samualtnorman/hackmud-script-manager/assets/18307063/08103f9e-74fa-4a56-a739-94858ba8c139)
|
25
|
+
![image](https://github.com/samualtnorman/hackmud-script-manager/assets/18307063/25ccb86d-1fe3-4632-b703-ac47f5b32c9c)
|
26
|
+
|
23
27
|
## Features
|
24
28
|
- Minification
|
25
29
|
- This includes auto quine cheating.
|
package/bin/hsm.js
CHANGED
@@ -13,7 +13,7 @@ import { syncMacros } from "../syncMacros.js"
|
|
13
13
|
import "@samual/lib/readDirectoryWithStats"
|
14
14
|
import "path/posix"
|
15
15
|
import "@samual/lib/copyFilePersistent"
|
16
|
-
const version = "0.20.4-
|
16
|
+
const version = "0.20.4-7480302",
|
17
17
|
formatOption = name => colourN(`-${1 == name.length ? "" : "-"}${name}`),
|
18
18
|
options = new Map(),
|
19
19
|
commands = [],
|
package/env.d.ts
CHANGED
@@ -3,13 +3,7 @@ type ScriptSuccess<T = object> = { ok: true } & T
|
|
3
3
|
type ScriptFailure = { ok: false, msg?: string }
|
4
4
|
type ScriptResponse<T = object> = ScriptSuccess<T> | ScriptFailure
|
5
5
|
type ErrorScripts = Record<string, () => ScriptFailure>
|
6
|
-
|
7
|
-
type AllOptional<T> = { [K in keyof T]-?: {} extends Pick<T, K> ? true : false }[keyof T]
|
8
|
-
|
9
|
-
type Scriptor<Args = unknown, Ret = unknown> = {
|
10
|
-
name: string
|
11
|
-
call: AllOptional<Args> extends true ? (args?: Args) => Ret : (args: Args) => Ret
|
12
|
-
}
|
6
|
+
type Scriptor<TArgs extends any[] = any[]> = { name: string, call: (...args: TArgs) => unknown }
|
13
7
|
|
14
8
|
type Subscripts = Record<string, Record<string, (...args: any) => any>> & {
|
15
9
|
accts: ErrorScripts
|
package/package.json
CHANGED
package/processScript/index.js
CHANGED
@@ -204,6 +204,7 @@ async function processScript(
|
|
204
204
|
const bundle = await rollup({
|
205
205
|
input: filePathResolved,
|
206
206
|
plugins: [
|
207
|
+
rollupPluginJSON({ preferConst: !0 }),
|
207
208
|
{
|
208
209
|
name: "hackmud-script-manager",
|
209
210
|
async transform(code, id) {
|
@@ -227,8 +228,7 @@ async function processScript(
|
|
227
228
|
},
|
228
229
|
babel({ babelHelpers: "bundled", plugins, configFile: !1, extensions: supportedExtensions }),
|
229
230
|
rollupPluginCommonJS(),
|
230
|
-
rollupPluginNodeResolve({ extensions: supportedExtensions })
|
231
|
-
rollupPluginJSON()
|
231
|
+
rollupPluginNodeResolve({ extensions: supportedExtensions })
|
232
232
|
],
|
233
233
|
treeshake: { moduleSideEffects: !1 }
|
234
234
|
}),
|
package/watch.js
CHANGED
@@ -4,7 +4,7 @@ import { countHackmudCharacters } from "@samual/lib/countHackmudCharacters"
|
|
4
4
|
import { readDirectoryWithStats } from "@samual/lib/readDirectoryWithStats"
|
5
5
|
import { writeFilePersistent } from "@samual/lib/writeFilePersistent"
|
6
6
|
import { watch as watch$1 } from "chokidar"
|
7
|
-
import { readFile, writeFile } from "fs/promises"
|
7
|
+
import { stat, readFile, writeFile } from "fs/promises"
|
8
8
|
import { extname, basename, resolve } from "path"
|
9
9
|
import { supportedExtensions } from "./constants.js"
|
10
10
|
import { generateTypeDeclaration } from "./generateTypeDeclaration.js"
|
@@ -59,6 +59,7 @@ async function watch(
|
|
59
59
|
} = {}
|
60
60
|
) {
|
61
61
|
if (!scripts.length) throw Error("scripts option was an empty array")
|
62
|
+
if (!(await stat(sourceDirectory)).isDirectory()) throw Error("Target folder must be a folder")
|
62
63
|
const scriptNamesToUsers = new Cache(_scriptName => new Set()),
|
63
64
|
wildScriptUsers = new Set(),
|
64
65
|
wildUserScripts = new Set()
|
@@ -136,7 +137,7 @@ async function watch(
|
|
136
137
|
forceQuineCheats
|
137
138
|
}))
|
138
139
|
} catch (error) {
|
139
|
-
assert(error instanceof Error, "src/watch.ts:
|
140
|
+
assert(error instanceof Error, "src/watch.ts:146:36")
|
140
141
|
onPush?.({ path, users: [], characterCount: 0, error })
|
141
142
|
return
|
142
143
|
}
|
@@ -181,7 +182,7 @@ async function watch(
|
|
181
182
|
forceQuineCheats
|
182
183
|
}))
|
183
184
|
} catch (error) {
|
184
|
-
assert(error instanceof Error, "src/watch.ts:
|
185
|
+
assert(error instanceof Error, "src/watch.ts:182:35")
|
185
186
|
onPush?.({ path, users: [], characterCount: 0, error })
|
186
187
|
return
|
187
188
|
}
|
@@ -196,7 +197,7 @@ async function watch(
|
|
196
197
|
try {
|
197
198
|
await writeFile(typeDeclarationPath, typeDeclaration)
|
198
199
|
} catch (error) {
|
199
|
-
assert(error instanceof Error, "src/watch.ts:
|
200
|
+
assert(error instanceof Error, "src/watch.ts:215:35")
|
200
201
|
if ("EISDIR" != error.code) throw error
|
201
202
|
typeDeclarationPath = resolve(typeDeclarationPath, "player.d.ts")
|
202
203
|
await writeFile(typeDeclarationPath, typeDeclaration)
|