hackmud-script-manager 0.21.1-93e7bef → 0.21.1-979c2a3
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/bin/hsm.js +2 -2
- package/env.d.ts +6 -6
- package/package.json +1 -1
- package/processScript/preprocess.js +3 -15
- package/watch.js +13 -4
package/bin/hsm.js
CHANGED
@@ -64,7 +64,7 @@ if (process.version.startsWith("v21.")) {
|
|
64
64
|
)
|
65
65
|
}
|
66
66
|
if ("v" == commands[0] || "version" == commands[0] || popOption("version", "v")?.value) {
|
67
|
-
console.log("0.21.1-
|
67
|
+
console.log("0.21.1-979c2a3")
|
68
68
|
process.exit()
|
69
69
|
}
|
70
70
|
let warnedDeprecatedEmitDtsAlias = !1
|
@@ -412,7 +412,7 @@ function logHelp() {
|
|
412
412
|
default:
|
413
413
|
console.log(
|
414
414
|
colourS(
|
415
|
-
`${colourJ("Hackmud Script Manager")}\n${colourN("Version") + colourS(": ") + colourV("0.21.1-
|
415
|
+
`${colourJ("Hackmud Script Manager")}\n${colourN("Version") + colourS(": ") + colourV("0.21.1-979c2a3")}\n\n${colourA("Commands:")}\n${colourL("push")}\n ${pushCommandDescription}\n${colourL("minify")}\n Minify a script file on the spot\n${colourL("emit-dts")}\n Generate a type declaration file for a directory of scripts\n${colourL("sync-macros")}\n Sync macros across all hackmud users\n${colourL("pull")}\n Pull a script a from a hackmud user's script directory\n\n${colourA("Options:")}\n${colourN("--help")}\n Can be used on any command e.g. ${colourC("hsm")} ${colourL("push")} ${colourN("--help")} to show helpful information`
|
416
416
|
)
|
417
417
|
)
|
418
418
|
}
|
package/env.d.ts
CHANGED
@@ -710,7 +710,7 @@ type MongoTypeStringsToTypes = {
|
|
710
710
|
string: string
|
711
711
|
object: MongoObject
|
712
712
|
array: MongoValue[]
|
713
|
-
objectId:
|
713
|
+
objectId: ObjectId
|
714
714
|
bool: boolean
|
715
715
|
date: Date
|
716
716
|
null: null
|
@@ -720,8 +720,8 @@ type MongoTypeStringsToTypes = {
|
|
720
720
|
|
721
721
|
type MongoTypeString = keyof MongoTypeStringsToTypes
|
722
722
|
type MongoTypeNumber = -1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 16 | 17 | 18 | 19 | 127
|
723
|
-
type MongoId = Exclude<MongoPrimitive, null | false> |
|
724
|
-
type MongoQueryId = Exclude<MongoPrimitive, null | false> |
|
723
|
+
type MongoId = Exclude<MongoPrimitive, null | false> | ObjectId | MongoObject
|
724
|
+
type MongoQueryId = Exclude<MongoPrimitive, null | false> | ObjectId | MongoQueryObject
|
725
725
|
type MongoDocument = MongoObject & { _id?: MongoId }
|
726
726
|
|
727
727
|
type MongoQueryType<TQuery extends MongoQueryObject> = {
|
@@ -886,9 +886,9 @@ declare global {
|
|
886
886
|
type ScriptSuccess<T = unknown> = { ok: true } & T
|
887
887
|
type ScriptFailure = { ok: false, msg?: string }
|
888
888
|
type ScriptResponse<T = unknown> = ScriptSuccess<T> | ScriptFailure
|
889
|
-
type Scriptor<TArgs = any> = { name: string, call: (args: TArgs) => unknown }
|
889
|
+
type Scriptor<TArgs extends any[] = any[]> = { name: string, call: (...args: TArgs) => unknown }
|
890
890
|
type Context = CliContext | SubscriptContext | ScriptorContext | BrainContext
|
891
|
-
type
|
891
|
+
type ObjectId = { $oid: string }
|
892
892
|
|
893
893
|
interface PlayerFullsec {}
|
894
894
|
interface PlayerHighsec {}
|
@@ -979,7 +979,7 @@ declare global {
|
|
979
979
|
us: <T extends MongoDocument>(query: MongoQuery<T> | MongoQuery<T>[], command: MongoUpdateCommand<T>) =>
|
980
980
|
{ n: number, ok: 0 | 1, opTime: { t: number }, nModified: number }[]
|
981
981
|
|
982
|
-
ObjectId: () =>
|
982
|
+
ObjectId: () => ObjectId
|
983
983
|
}
|
984
984
|
|
985
985
|
/** Debug Log.
|
package/package.json
CHANGED
@@ -4,23 +4,11 @@ import babelTraverse from "@babel/traverse"
|
|
4
4
|
import t from "@babel/types"
|
5
5
|
import { assert } from "@samual/lib/assert"
|
6
6
|
import { spliceString } from "@samual/lib/spliceString"
|
7
|
-
import { tokenizer, tokTypes } from "acorn"
|
8
7
|
import { resolve } from "import-meta-resolve"
|
9
8
|
const { default: traverse } = babelTraverse,
|
10
|
-
{ default: generate } = babelGenerator
|
11
|
-
SUBSCRIPT_PREFIXES = ["s", "fs", "4s", "hs", "3s", "ms", "2s", "ls", "1s", "ns", "0s"]
|
9
|
+
{ default: generate } = babelGenerator
|
12
10
|
async function preprocess(code, { uniqueId = "00000000000" } = {}) {
|
13
|
-
assert(/^\w{11}$/.test(uniqueId), "src/processScript/preprocess.ts:
|
14
|
-
const tokensIterable = tokenizer(code, { ecmaVersion: "latest" })
|
15
|
-
for (const token of tokensIterable) {
|
16
|
-
assert("value" in token, "src/processScript/preprocess.ts:31:28")
|
17
|
-
if (token.type != tokTypes.privateId) continue
|
18
|
-
assert("string" == typeof token.value, "src/processScript/preprocess.ts:36:42")
|
19
|
-
if (!SUBSCRIPT_PREFIXES.includes(token.value)) continue
|
20
|
-
const nextToken = tokensIterable.getToken()
|
21
|
-
if (nextToken.type != tokTypes._in && nextToken.type != tokTypes.dot)
|
22
|
-
throw SyntaxError("Subscripts must be in the form of #fs.foo.bar")
|
23
|
-
}
|
11
|
+
assert(/^\w{11}$/.test(uniqueId), "src/processScript/preprocess.ts:23:36")
|
24
12
|
const sourceCode = code
|
25
13
|
let lengthBefore, file, program
|
26
14
|
do {
|
@@ -59,7 +47,7 @@ async function preprocess(code, { uniqueId = "00000000000" } = {}) {
|
|
59
47
|
})
|
60
48
|
break
|
61
49
|
} catch (error_) {
|
62
|
-
assert(error_ instanceof SyntaxError, "src/processScript/preprocess.ts:
|
50
|
+
assert(error_ instanceof SyntaxError, "src/processScript/preprocess.ts:67:42")
|
63
51
|
error = error_
|
64
52
|
}
|
65
53
|
if ("BABEL_PARSER_SYNTAX_ERROR" != error.code || "PrivateInExpectedIn" != error.reasonCode) {
|
package/watch.js
CHANGED
@@ -133,10 +133,19 @@ async function watch(
|
|
133
133
|
try {
|
134
134
|
;({ script: minifiedCode, warnings } = await processScript(
|
135
135
|
await readFile(filePath, { encoding: "utf8" }),
|
136
|
-
{
|
136
|
+
{
|
137
|
+
minify,
|
138
|
+
scriptUser: !0,
|
139
|
+
scriptName,
|
140
|
+
uniqueId,
|
141
|
+
filePath,
|
142
|
+
mangleNames,
|
143
|
+
forceQuineCheats,
|
144
|
+
rootFolderPath
|
145
|
+
}
|
137
146
|
))
|
138
147
|
} catch (error) {
|
139
|
-
assert(error instanceof Error, "src/watch.ts:
|
148
|
+
assert(error instanceof Error, "src/watch.ts:160:36")
|
140
149
|
onPush?.({ path, users: [], characterCount: 0, error, warnings: [] })
|
141
150
|
return
|
142
151
|
}
|
@@ -184,7 +193,7 @@ async function watch(
|
|
184
193
|
rootFolderPath
|
185
194
|
}))
|
186
195
|
} catch (error) {
|
187
|
-
assert(error instanceof Error, "src/watch.ts:
|
196
|
+
assert(error instanceof Error, "src/watch.ts:207:35")
|
188
197
|
onPush?.({ path, users: [], characterCount: 0, error, warnings: [] })
|
189
198
|
return
|
190
199
|
}
|
@@ -199,7 +208,7 @@ async function watch(
|
|
199
208
|
try {
|
200
209
|
await writeFile(typeDeclarationPath, typeDeclaration)
|
201
210
|
} catch (error) {
|
202
|
-
assert(error instanceof Error, "src/watch.ts:
|
211
|
+
assert(error instanceof Error, "src/watch.ts:240:35")
|
203
212
|
if ("EISDIR" != error.code) throw error
|
204
213
|
typeDeclarationPath = resolve(typeDeclarationPath, "player.d.ts")
|
205
214
|
await writeFile(typeDeclarationPath, typeDeclaration)
|