fiverunner 1.5.0 → 1.5.2

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.
@@ -5,7 +5,7 @@
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1" />
6
6
  <title>FiveRunner</title>
7
7
  <link rel="icon" type="image/svg+xml" href="/__fiverunner/logo.svg" />
8
- <script type="module" crossorigin src="/__fiverunner/assets/index-BEO79shi.js"></script>
8
+ <script type="module" crossorigin src="/__fiverunner/assets/index-Ct7JhrFH.js"></script>
9
9
  <link rel="modulepreload" crossorigin href="/__fiverunner/assets/routes-DFIWFSAi.js">
10
10
  <link rel="stylesheet" crossorigin href="/__fiverunner/assets/index-BrojKg9W.css">
11
11
  </head>
@@ -6,7 +6,7 @@ import { basename, dirname, isAbsolute, join, relative, resolve, sep } from "nod
6
6
  import { createServer } from "node:http";
7
7
  var package_default = {
8
8
  name: "fiverunner",
9
- version: "1.5.0",
9
+ version: "1.5.2",
10
10
  description: "Run FiveM resources (Lua, JavaScript and NUI) in your browser and in CI. No GTA V, no server, no restarts.",
11
11
  keywords: [
12
12
  "fivem",
@@ -268,11 +268,12 @@ function bitLength(value) {
268
268
  * orders keys as _stricmp orders their strings.
269
269
  */
270
270
  function stricmpKey(text) {
271
- return lowerAscii$1(text.split("\0", 1)[0]);
271
+ const end = text.indexOf("\0");
272
+ return lowerAscii$1(end === -1 ? text : text.slice(0, end));
272
273
  }
273
274
  /** A string lowercased as C's tolower lowercases characters, which is only ASCII letters. */
274
275
  function lowerAscii$1(text) {
275
- return text.replace(/[A-Z]+/g, (letters) => letters.toLowerCase());
276
+ return /[A-Z]/.test(text) ? text.replace(/[A-Z]+/g, (letters) => letters.toLowerCase()) : text;
276
277
  }
277
278
  /** Orders strings as C++ orders their UTF-8 bytes, which is by code point. */
278
279
  function compareUtf8(a, b) {
@@ -69513,6 +69514,8 @@ var Variables = class {
69513
69514
  suppressReadOnlyWarning = false;
69514
69515
  /** The entries, ordered by name as _stricmp orders names. */
69515
69516
  #entries = [];
69517
+ /** The entries by their keys, one for each, as registering a name drops the entry of its key. */
69518
+ #byKey = /* @__PURE__ */ new Map();
69516
69519
  #firstListener;
69517
69520
  #nextToken = 0;
69518
69521
  #nextCookie = 0;
@@ -69552,14 +69555,17 @@ var Variables = class {
69552
69555
  const token = this.#nextToken++;
69553
69556
  const key = stricmpKey(name);
69554
69557
  let index = this.#entries.length;
69555
- while (index > 0 && compareUtf8(key, stricmpKey(this.#entries[index - 1].name)) < 0) index--;
69556
- this.#entries.splice(index, 0, {
69558
+ while (index > 0 && compareUtf8(key, this.#entries[index - 1].key) < 0) index--;
69559
+ const entry = {
69557
69560
  name,
69561
+ key,
69558
69562
  flags,
69559
69563
  defaultFlags: flags,
69560
69564
  variable,
69561
69565
  token
69562
- });
69566
+ };
69567
+ this.#entries.splice(index, 0, entry);
69568
+ this.#byKey.set(key, entry);
69563
69569
  return token;
69564
69570
  }
69565
69571
  unregister(token) {
@@ -69666,8 +69672,7 @@ var Variables = class {
69666
69672
  }
69667
69673
  }
69668
69674
  #find(name) {
69669
- const key = stricmpKey(name);
69670
- return this.#entries.find((entry) => stricmpKey(entry.name) === key);
69675
+ return this.#byKey.get(stricmpKey(name));
69671
69676
  }
69672
69677
  /**
69673
69678
  * Takes an entry out, and with it the commands of its variable, unless
@@ -69676,6 +69681,7 @@ var Variables = class {
69676
69681
  */
69677
69682
  #drop(entry, kept) {
69678
69683
  this.#entries.splice(this.#entries.indexOf(entry), 1);
69684
+ this.#byKey.delete(entry.key);
69679
69685
  if (entry.variable !== kept) entry.variable.dispose();
69680
69686
  }
69681
69687
  /** What set and its siblings do, which add `flags` to the variable they set. */
@@ -103767,9 +103773,9 @@ function kindOf(source, path) {
103767
103773
  var USAGE$1 = `Usage: fiverunner mcp
103768
103774
 
103769
103775
  Serves the Model Context Protocol on stdin and stdout, for AI assistants
103770
- such as Claude Code, Cursor and VS Code: its tools run the FiveM project in
103771
- the directory that the assistant starts it in, with no GTA V. It runs until
103772
- stdin ends.
103776
+ such as Claude Code, Codex, Cursor and VS Code: its tools run the FiveM
103777
+ project in the directory that the assistant starts it in, with no GTA V.
103778
+ It runs until stdin ends.
103773
103779
 
103774
103780
  Options:
103775
103781
  -h, --help Show this help
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "fiverunner",
3
- "version": "1.5.0",
3
+ "version": "1.5.2",
4
4
  "description": "Run FiveM resources (Lua, JavaScript and NUI) in your browser and in CI. No GTA V, no server, no restarts.",
5
5
  "keywords": [
6
6
  "fivem",