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)
         
     |